Version 1.0
Rename to flacfixer
test: clarify test with unknown format
A program to automatically manage the filenames of your music directory.
git clone https://git.sr.ht/~rensoliemans/flacfixer
pip install .
Or, if you'd like to run linters,
pip install .[dev]
Or, if you want an editable install,
pip install -e .
$ flacfixer --help
usage: flacfixer [-h] (-a | -f) [-n] [-r RECURSE_LEVELS] [-v]
Fix filenames in my music dir
options:
-h, --help show this help message and exit
-a, --albums Fixes album names (directories) in PWD
-f, --filenames Fixes filenames in PWD
-n, --dry-run Perform dry run and output what would be changed
-r RECURSE_LEVELS, --recurse-levels RECURSE_LEVELS
Levels to recurse into. Defaults to 0, current level
-v, --verbose Be verbose. Pass multiple times to increase verbosity
This is specific to my music library and preferences:
flacfixer -f
changes the filenames of music files. Only flac
is
currently supported. The target is {tracknumber} - {title}.flac
,
where tracknumber
always has length 2
. tracknumber
and title
are extracted from metadata.
Example: 01 - Rosalyn.flac
flacfixer -a
changes the directory names into the following format:
{album name} [{year}]
. Since a directory itself can't have any
metadata, it attempts to parse the title and year from the current
directory format. See
test_album_fixer.py.
Example: Tripping with Nils Frahm [2020]
This project uses black,
ruff and
pre-commit. They are all installed when you
do pip install -e .[dev]
.
Install pre-commit
hooks with
pre-commit install
make
commands:
make lint
: executes black
and ruff
. This is also more or less
what pre-commit
does.
make analyse
: make lint
and mypy
make test
: unittests
make check
: make analyse
and make test
(everything)
I'm new to mailing lists with git, but please send patches to ~rensoliemans/flacfixer@lists.sr.ht.