## edmv 📦
[](https://github.com/terror/edmv/releases/latest)
[](https://github.com/terror/edmv/actions/workflows/ci.yaml)
[](https://codecov.io/gh/terror/edmv)
[](https://crates.io/crates/edmv)
[](https://crates.io/crates/edmv)
[](https://deps.rs/repo/github/terror/edmv)
**edmv** is a tool that lets you bulk rename files fast using your preferred
text editor.
## Demo
Below is a short demo showcasing the main functionality of the program:
[](https://asciinema.org/a/33OVZX9m1PZcyqYvdqmtvBRRv)
## Installation
`edmv` should run on any system, including Linux, MacOS, and the BSDs.
The easiest way to install it is by using
[cargo](https://doc.rust-lang.org/cargo/index.html), the Rust package manager:
```bash
cargo install edmv
```
Otherwise, see below for the complete package list:
#### Cross-platform
<table>
<thead>
<tr>
<th>Package Manager</th>
<th>Package</th>
<th>Command</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href=https://www.rust-lang.org>Cargo</a></td>
<td><a href=https://crates.io/crates/edmv>edmv</a></td>
<td><code>cargo install edmv</code></td>
</tr>
<tr>
<td><a href=https://brew.sh>Homebrew</a></td>
<td><a href=https://github.com/terror/homebrew-tap>terror/tap/edmv</a></td>
<td><code>brew install terror/tap/edmv</code></td>
</tr>
</tbody>
</table>
### Pre-built binaries
Pre-built binaries for Linux, MacOS, and Windows can be found on
[the releases page](https://github.com/terror/edmv/releases).
## Usage
Below is the output of `edmv --help`:
```
Bulk rename files using your favorite editor
Usage: edmv [OPTIONS] [sources]...
Arguments:
[sources]... Paths to edit
Options:
--editor <EDITOR> Editor command to use
--force Overwrite existing files
--resolve Resolve conflicting renames
--dry-run Run without making any changes
-h, --help Print help
-V, --version Print version
```
An option of note is the `--resolve` option, this applies to sources an
intermediate rename to either a temporary directory or file - automatically
handling conflicts such as overlapping or circular renames.
## Prior Art
**edmv** is a tested and extended re-implementation of the version
[Casey](https://github.com/casey) wrote in
[Python](https://github.com/casey/edmv), do check it out!