Objective
Previous discussion at #6576
Goals
I'd like to have a syntax for modify that allows for adding or subtracting of parts of a multi-value fields such as genres, artists, etc.
For example if I have an album where each track has a different set of genres, and there's one that I'd like to add to or remove from all tracks without having to lose or reinstate the other genres manually. e.g.:
Track 1 -> genres="Jazz; Blues; Funk"
Track 2 -> genres="Soul; Funk; Blues"
...
I'd like a command that can scan through the whole album and remove any instances of "Blues" without changing the other genres in each track. It would need to account for surrounding spaces and separators, and automatically add or remove them as appropriate.
Proposed solution
A potential sensible syntax could be genres-="unwanted_genre" and genres+="wanted_genre"
Non-goals
This proposal does not cover bulk-editing multi-value fields across different albums in a single command, or fuzzy matching for removal (e.g., removing "Blues" should not also remove "Blues Rock").
Anti-goals
Currently this would result in the insertion of a new field called genres- or genres+, so the proposed solution would have the side effect of making it impossible to inset new custom fields with names ending in + or -. If that's not acceptable, a separate --add or --remove flag could be used instead.
Objective
Previous discussion at #6576
Goals
I'd like to have a syntax for
modifythat allows for adding or subtracting of parts of a multi-value fields such asgenres,artists, etc.For example if I have an album where each track has a different set of genres, and there's one that I'd like to add to or remove from all tracks without having to lose or reinstate the other genres manually. e.g.:
Track 1 -> genres="Jazz; Blues; Funk"
Track 2 -> genres="Soul; Funk; Blues"
...
I'd like a command that can scan through the whole album and remove any instances of "Blues" without changing the other genres in each track. It would need to account for surrounding spaces and separators, and automatically add or remove them as appropriate.
Proposed solution
A potential sensible syntax could be
genres-="unwanted_genre"andgenres+="wanted_genre"Non-goals
This proposal does not cover bulk-editing multi-value fields across different albums in a single command, or fuzzy matching for removal (e.g., removing "Blues" should not also remove "Blues Rock").
Anti-goals
Currently this would result in the insertion of a new field called
genres-orgenres+, so the proposed solution would have the side effect of making it impossible to inset new custom fields with names ending in+or-. If that's not acceptable, a separate --add or --remove flag could be used instead.