mdref

Crates.iomdref
lib.rsmdref
version0.3.6
created_at2025-09-16 14:14:47.105872+00
updated_at2025-10-13 03:22:50.55121+00
descriptionMarkdown Reference finding and migration tool.
homepage
repositoryhttps://github.com/studentweis/mdref
max_upload_size
id1841779
size76,473
HengYi Wei (StudentWeis)

documentation

README

mdref

crates.io

A fast, Rust-based tool for discovering and migrating Markdown references — it processed 155 directories and 1,561 files in just 0.1 seconds. Support search by file or directory.

[!CAUTION] This project is still in early development, and some features may not be fully functional. Please use it with caution and report any issues you encounter.

Basic Usage

Install & Update

Install prebuilt binaries via shell script:

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/studentweis/mdref/releases/download/0.3.6/mdref-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/studentweis/mdref/releases/download/0.3.6/mdref-installer.ps1 | iex"

Update mdref:

mdref-update

Basic command

  • find 🔍:Find all markdown references in the specified directory.
  • mv 🔥:Move file and update markdown references.
  • rename 🔄:Rename file and update markdown references.
$ mdref find ./examples/main.md

References to ./examples/main.md:
./examples/inner/sub/other.md:3:1 - ../../main.md
./examples/other.md:7:1 - main.md
./examples/inner/other.md:3:1 - ../main.md
./examples/main.md:7:1 - main.md
./examples/inner/sub/main.md:3:1 - ../../main.md
./examples/inner/main.md:3:1 - ../main.md
Links in ./examples/main.md:
./examples/main.md:3:2 - main.jpg
./examples/main.md:5:2 - main.jpg
./examples/main.md:7:1 - main.md
./examples/main.md:7:25 - inner/main.md
./examples/main.md:7:55 - inner/sub/main.md
./examples/main.md:9:1 - other.md
./examples/main.md:9:27 - inner/other.md
./examples/main.md:9:59 - inner/sub/other.md

Todo

  • More tests.
  • Directory path support.
  • Fix the case of link path with space.
  • VSCode extension.
  • Preview mode of mv command.
  • More documentations.
  • Cargo-dist oranda homepage.

Acknowledge

  • clap
  • walkdir
  • pathdiff
  • regex
  • rayon
  • cargo-dist

Contributing

If you want to submit code to this repository, please first refer to CONTRIBUTING.

Thanks for your help!

Commit count: 23

cargo fmt