Database: Merge 'Album Artist' entry with 'Artist' entry.

-Link 'Artist' entry to canonicalartist field.
-Convert all possible users of artist field to canonicalartist.
-Tweak 'Same as current -> Artist' menu to also include albumartist field matches.

Change-Id: I52e87cc0bd6ca50f1645447819ca55669df37354
This commit is contained in:
James D. Smith 2021-09-15 17:36:45 -06:00 committed by William Wilgus
parent fcb9c06852
commit fb04b9b5ee

View file

@ -12,12 +12,12 @@
%format "fmt_title" "%s - %02d:%02d" title Lm Ls %format "fmt_title" "%s - %02d:%02d" title Lm Ls
%format "fmt_alphanum_title" "%s - %02d:%02d (%s)" basename Lm Ls filename ? title == "<Untagged>" %format "fmt_alphanum_title" "%s - %02d:%02d (%s)" basename Lm Ls filename ? title == "<Untagged>"
%format "fmt_alphanum_title" "%s - %02d:%02d" title Lm Ls %format "fmt_alphanum_title" "%s - %02d:%02d" title Lm Ls
%format "fmt_mostplayed" "%2d|%3d %s (%s)" playcount autoscore title artist %sort = "inverse" %limit = "100" %format "fmt_mostplayed" "%2d|%3d %s (%s)" playcount autoscore title canonicalartist %sort = "inverse" %limit = "100"
%format "fmt_lastplayed" "%06d%s - %s" lastplayed artist title %sort = "inverse" %limit = "99" %strip = "6" %format "fmt_lastplayed" "%06d%s - %s" lastplayed canonicalartist title %sort = "inverse" %limit = "99" %strip = "6"
%format "fmt_forgotten" "%06d%s - %s" lastplayed artist title %limit = "99" %strip = "6" %format "fmt_forgotten" "%06d%s - %s" lastplayed canonicalartist title %limit = "99" %strip = "6"
%format "fmt_best_tracks" "%02d. %s (%3d)" tracknum title autoscore %format "fmt_best_tracks" "%02d. %s (%3d)" tracknum title autoscore
%format "fmt_score" "(%3d) %s-%s" autoscore title artist %format "fmt_score" "(%3d) %s-%s" autoscore title canonicalartist
%format "fmt_rating" "(%2d) %s-%s" rating title artist %sort = "inverse" %format "fmt_rating" "(%2d) %s-%s" rating title canonicalartist %sort = "inverse"
# Include our custom menu # Include our custom menu
%include "/.rockbox/tagnavi_custom.config" %include "/.rockbox/tagnavi_custom.config"
@ -28,33 +28,33 @@
# Define the A to Z Artist sub menu # Define the A to Z Artist sub menu
%menu_start "custom_artist" "Artist A to Z" %menu_start "custom_artist" "Artist A to Z"
"Numeric" -> artist ? artist < "A" -> album -> title = "fmt_title" "Numeric" -> canonicalartist ? canonicalartist < "A" -> album -> title = "fmt_title"
"A" -> artist ? artist ^ "A" -> album -> title = "fmt_title" "A" -> canonicalartist ? canonicalartist ^ "A" -> album -> title = "fmt_title"
"B" -> artist ? artist ^ "B" -> album -> title = "fmt_title" "B" -> canonicalartist ? canonicalartist ^ "B" -> album -> title = "fmt_title"
"C" -> artist ? artist ^ "C" -> album -> title = "fmt_title" "C" -> canonicalartist ? canonicalartist ^ "C" -> album -> title = "fmt_title"
"D" -> artist ? artist ^ "D" -> album -> title = "fmt_title" "D" -> canonicalartist ? canonicalartist ^ "D" -> album -> title = "fmt_title"
"E" -> artist ? artist ^ "E" -> album -> title = "fmt_title" "E" -> canonicalartist ? canonicalartist ^ "E" -> album -> title = "fmt_title"
"F" -> artist ? artist ^ "F" -> album -> title = "fmt_title" "F" -> canonicalartist ? canonicalartist ^ "F" -> album -> title = "fmt_title"
"G" -> artist ? artist ^ "G" -> album -> title = "fmt_title" "G" -> canonicalartist ? canonicalartist ^ "G" -> album -> title = "fmt_title"
"H" -> artist ? artist ^ "H" -> album -> title = "fmt_title" "H" -> canonicalartist ? canonicalartist ^ "H" -> album -> title = "fmt_title"
"I" -> artist ? artist ^ "I" -> album -> title = "fmt_title" "I" -> canonicalartist ? canonicalartist ^ "I" -> album -> title = "fmt_title"
"J" -> artist ? artist ^ "J" -> album -> title = "fmt_title" "J" -> canonicalartist ? canonicalartist ^ "J" -> album -> title = "fmt_title"
"K" -> artist ? artist ^ "K" -> album -> title = "fmt_title" "K" -> canonicalartist ? canonicalartist ^ "K" -> album -> title = "fmt_title"
"L" -> artist ? artist ^ "L" -> album -> title = "fmt_title" "L" -> canonicalartist ? canonicalartist ^ "L" -> album -> title = "fmt_title"
"M" -> artist ? artist ^ "M" -> album -> title = "fmt_title" "M" -> canonicalartist ? canonicalartist ^ "M" -> album -> title = "fmt_title"
"N" -> artist ? artist ^ "N" -> album -> title = "fmt_title" "N" -> canonicalartist ? canonicalartist ^ "N" -> album -> title = "fmt_title"
"O" -> artist ? artist ^ "O" -> album -> title = "fmt_title" "O" -> canonicalartist ? canonicalartist ^ "O" -> album -> title = "fmt_title"
"P" -> artist ? artist ^ "P" -> album -> title = "fmt_title" "P" -> canonicalartist ? canonicalartist ^ "P" -> album -> title = "fmt_title"
"Q" -> artist ? artist ^ "Q" -> album -> title = "fmt_title" "Q" -> canonicalartist ? canonicalartist ^ "Q" -> album -> title = "fmt_title"
"R" -> artist ? artist ^ "R" -> album -> title = "fmt_title" "R" -> canonicalartist ? canonicalartist ^ "R" -> album -> title = "fmt_title"
"S" -> artist ? artist ^ "S" -> album -> title = "fmt_title" "S" -> canonicalartist ? canonicalartist ^ "S" -> album -> title = "fmt_title"
"T" -> artist ? artist ^ "T" -> album -> title = "fmt_title" "T" -> canonicalartist ? canonicalartist ^ "T" -> album -> title = "fmt_title"
"U" -> artist ? artist ^ "U" -> album -> title = "fmt_title" "U" -> canonicalartist ? canonicalartist ^ "U" -> album -> title = "fmt_title"
"V" -> artist ? artist ^ "V" -> album -> title = "fmt_title" "V" -> canonicalartist ? canonicalartist ^ "V" -> album -> title = "fmt_title"
"W" -> artist ? artist ^ "W" -> album -> title = "fmt_title" "W" -> canonicalartist ? canonicalartist ^ "W" -> album -> title = "fmt_title"
"X" -> artist ? artist ^ "X" -> album -> title = "fmt_title" "X" -> canonicalartist ? canonicalartist ^ "X" -> album -> title = "fmt_title"
"Y" -> artist ? artist ^ "Y" -> album -> title = "fmt_title" "Y" -> canonicalartist ? canonicalartist ^ "Y" -> album -> title = "fmt_title"
"Z" -> artist ? artist ^ "Z" -> album -> title = "fmt_title" "Z" -> canonicalartist ? canonicalartist ^ "Z" -> album -> title = "fmt_title"
# ^ An empy line ends the menu # ^ An empy line ends the menu
@ -130,12 +130,11 @@
# Define the search sub menu # Define the search sub menu
%menu_start "search" "Search by..." %menu_start "search" "Search by..."
"Artist" -> artist ? artist ~ "" -> album -> title = "fmt_title" "Artist" -> canonicalartist ? canonicalartist ~ "" -> album -> title = "fmt_title"
"Album Artist" -> albumartist ? albumartist ~ "" -> album -> title = "fmt_title"
"Album" -> album ? album ~ "" -> title = "fmt_title" "Album" -> album ? album ~ "" -> title = "fmt_title"
"Title" -> title = "fmt_title" ? title ~ "" "Title" -> title = "fmt_title" ? title ~ ""
"Album by year" -> album ? year = "" -> title = "fmt_title" "Album by year" -> album ? year = "" -> title = "fmt_title"
"Artist between years" -> artist ? year >= "" & year <= "" -> album -> title = "fmt_title" "Artist between years" -> canonicalartist ? year >= "" & year <= "" -> album -> title = "fmt_title"
"Album between years" -> album ? year >= "" & year <= "" -> title = "fmt_title" "Album between years" -> album ? year >= "" & year <= "" -> title = "fmt_title"
"Filename" -> filename ? filename ~ "" "Filename" -> filename ? filename ~ ""
"Score" -> title = "fmt_score" ? autoscore > "" "Score" -> title = "fmt_score" ? autoscore > ""
@ -146,7 +145,7 @@
%menu_start "same" "Same as current" %menu_start "same" "Same as current"
"Directory" -> title ? filename ^ "#directory#" "Directory" -> title ? filename ^ "#directory#"
"Title" -> title = "fmt_title" ? title = "#title#" "Title" -> title = "fmt_title" ? title = "#title#"
"Artist" -> album ? artist = "#artist#" -> title = "fmt_title" "Artist" -> album ? artist = "#artist#" | artist = "#albumartist#" | albumartist = "#artist#" | albumartist = "#albumartist#" -> title = "fmt_title"
"Album" -> title = "fmt_title" ? album = "#album#" "Album" -> title = "fmt_title" ? album = "#album#"
"Composer" -> title = "fmt_title" ? composer = "#composer#" "Composer" -> title = "fmt_title" ? composer = "#composer#"
@ -154,11 +153,11 @@
%menu_start "runtime" "Play history" %menu_start "runtime" "Play history"
"Most played (Plays|Score)" -> title = "fmt_mostplayed" ? playcount > "0" "Most played (Plays|Score)" -> title = "fmt_mostplayed" ? playcount > "0"
"Recently played tracks" -> title = "fmt_lastplayed" ? playcount > "0" "Recently played tracks" -> title = "fmt_lastplayed" ? playcount > "0"
"Never played tracks" -> artist ? playcount == "0" -> album -> title = "fmt_title" "Never played tracks" -> canonicalartist ? playcount == "0" -> album -> title = "fmt_title"
"Favourite artists" -> artist ? playcount > "3" & autoscore > "85" -> album -> title = "fmt_best_tracks" "Favourite artists" -> canonicalartist ? playcount > "3" & autoscore > "85" -> album -> title = "fmt_best_tracks"
"Favourite albums" -> album ? playcount > "3" & autoscore > "85" -> title = "fmt_best_tracks" "Favourite albums" -> album ? playcount > "3" & autoscore > "85" -> title = "fmt_best_tracks"
"Recent favourites" -> title = "fmt_lastplayed" ? playcount > "3" & autoscore > "85" "Recent favourites" -> title = "fmt_lastplayed" ? playcount > "3" & autoscore > "85"
"New favourites" -> artist ? playcount <= "3" & autoscore > "85" -> album -> title = "fmt_best_tracks" "New favourites" -> canonicalartist ? playcount <= "3" & autoscore > "85" -> album -> title = "fmt_best_tracks"
"Forgotten favourites" -> title = "fmt_forgotten" ? playcount > "3" & autoscore > "85" "Forgotten favourites" -> title = "fmt_forgotten" ? playcount > "3" & autoscore > "85"
# #
@ -167,13 +166,12 @@
# Define the title of the main menu # Define the title of the main menu
%menu_start "main" "Database" %menu_start "main" "Database"
"Artist" -> artist -> album -> title = "fmt_title" "Artist" -> canonicalartist -> album -> title = "fmt_title"
"Album Artist" -> albumartist -> album -> title = "fmt_title"
"Album" -> album -> title = "fmt_title" "Album" -> album -> title = "fmt_title"
"Genre" -> genre -> artist -> album -> title = "fmt_title" "Genre" -> genre -> canonicalartist -> album -> title = "fmt_title"
"Composer" -> composer -> album -> title = "fmt_title" "Composer" -> composer -> album -> title = "fmt_title"
"Track" -> title = "fmt_alphanum_title" "Track" -> title = "fmt_alphanum_title"
"Year" -> year ? year > "0" -> artist -> album -> title = "fmt_title" "Year" -> year ? year > "0" -> canonicalartist -> album -> title = "fmt_title"
"User Rating" -> rating -> title = "fmt_title" "User Rating" -> rating -> title = "fmt_title"
"Recently Added" -> album ? entryage < "4" & commitid > "0" -> title = "fmt_title" "Recently Added" -> album ? entryage < "4" & commitid > "0" -> title = "fmt_title"
"A to Z..." ==> "a2z" "A to Z..." ==> "a2z"