Vimv
Batch-rename files using Vim
Install / Use
/learn @thameera/VimvREADME
vimv
vimv is a terminal-based file rename utility that lets you easily mass-rename files using Vim.
Installing
- For the current user:
curl https://raw.githubusercontent.com/thameera/vimv/master/vimv > ~/.local/bin/vimv && chmod +755 ~/.local/bin/vimv - For the current system:
sudo PREFIX=/usr/local make install
Or simply copy the vimv file to a location in your $PATH and make it executable.
Usage
- Go to a directory and enter
vimvwith optionally, a list of files to rename. - A Vim window will be opened with names of all files.
- Use Vim's text editing features to edit the names of files. For example, search and replace a particular string, or use visual selection to delete a block.
- Save and exit. Your files should be renamed now.
Other features
- If you want to list only a group of files, you can pass them as an argument. eg:
vimv *.mp4 - If you have an
$EDITORenvironment variable set, vimv will use its value by default. - If you are inside a Git directory, vimv will use
git mv(instead ofmv) to rename the files. - You can use
/some/path/filenameformat to move the file elsewhere during renaming. If the path is non-existent, it will be automatically created before moving. - Cyclic renames are supported (file1 <-> file2)
Screencast

Running tests
Tests are written using bats. To run the tests:
git submodule update --init
./test/bats/bin/bats test/test_vimv.bats
Related Skills
node-connect
338.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
338.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.6kCommit, push, and open a PR
