vimv is a terminal-based file rename utility that lets you easily mass-rename files using Vim.
- 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.
- Go to a directory and enter
vimv
with 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.
- If you want to list only a group of files, you can pass them as an argument. eg:
vimv *.mp4
- If you have an
$EDITOR
environment 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/filename
format to move the file elsewhere during renaming. If the path is non-existent, it will be automatically created before moving.
Don't delete or swap the lines while in Vim or things will get ugly.
Tests are written using bats. To run the tests:
git submodule update --init
test/test_vimv.bats