Improve documentation, also add organization command

This commit is contained in:
Jakob Moser 2025-06-01 10:00:13 +02:00
parent 9fb5b3b05f
commit b731339806
Signed by: jakob
GPG Key ID: 3EF2BA2851B3F53C

View File

@ -3,6 +3,7 @@
Tools to manage an Ultrastar DX song library. Features include:
1. Deduplication
2. Organization
## Setup
@ -14,10 +15,30 @@ pip install -r requirements.txt
## Run
### Deduplication
If your song library is stored at `/path/to/library`, run:
We assume that your song library is stored at `$SONG_LIBRARY`. Replace this placeholder when running the command, or just set the variable, e.g., like this:
```bash
python3 -m karaokatalog.deduplicate /path/to/library
export SONG_LIBRARY=/path/to/library
```
### Deduplication
**Find and delete exactly duplicated songs**, i.e., songs with the same title and artist that also consist of exactly the same files in the directory.
⚠️ This will _irreversibly_ delete all song folders it considers to be exact duplicates.
Deduplication is (mostly) risk-free: As it only deletes exact duplicates, you will not lose any data (given that I've made no programming errors, which is why the operation is only _mostly_ risk-free).
```bash
python3 -m karaokatalog.deduplicate $SONG_LIBRARY
```
### Organization
**Rename/move every song folder to `$SONG_LIBRARY/<artist>/<title>`.** If such a folder already exists, a number is appended to distinguish.
Moving will not overwrite already existing files, the operation is therefore risk-free.
```bash
python3 -m karaokatalog.organize $SONG_LIBRARY
```