diff --git a/picard/ui/forms/ui_passworddialog.py b/picard/ui/forms/ui_passworddialog.py
index 5d8ba241d8..7639ed2831 100644
--- a/picard/ui/forms/ui_passworddialog.py
+++ b/picard/ui/forms/ui_passworddialog.py
@@ -65,6 +65,6 @@ def setupUi(self, PasswordDialog):
QtCore.QMetaObject.connectSlotsByName(PasswordDialog)
def retranslateUi(self, PasswordDialog):
- PasswordDialog.setWindowTitle(_("Authentication required"))
+ PasswordDialog.setWindowTitle(_("Authentication Required"))
self.label.setText(_("Username:"))
self.label_2.setText(_("Password:"))
diff --git a/po/picard.pot b/po/picard.pot
index 6104a1da16..e75e88c5ac 100644
--- a/po/picard.pot
+++ b/po/picard.pot
@@ -6,51 +6,51 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: picard 3.0.0.dev3\n"
+"Project-Id-Version: picard 3.0.0.dev4\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2024-05-06 09:48+0200\n"
+"POT-Creation-Date: 2024-08-15 12:56+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.14.0\n"
+"Generated-By: Babel 2.10.3\n"
-#: picard/album.py:155
+#: picard/album.py:137
msgid "Unmatched Files"
msgstr ""
-#: picard/album.py:521
+#: picard/album.py:499
#, python-format
msgid "Album %(id)s loaded: %(artist)s - %(album)s"
msgstr ""
-#: picard/album.py:578
+#: picard/album.py:556
#, python-format
msgid "Loading album %(id)s …"
msgstr ""
-#: picard/album.py:795
+#: picard/album.py:781
msgid "[loading album information]"
msgstr ""
-#: picard/album.py:797
+#: picard/album.py:783
#, python-format
msgid "[could not load album %s]"
msgstr ""
-#: picard/cluster.py:266
+#: picard/cluster.py:259
#, python-format
msgid "Cluster %(album)s identified!"
msgstr ""
-#: picard/cluster.py:269
+#: picard/cluster.py:262
#, python-format
msgid "No matching releases for cluster %(album)s"
msgstr ""
-#: picard/cluster.py:288
+#: picard/cluster.py:281
#, python-format
msgid "Looking up the metadata for cluster %(album)s…"
msgstr ""
@@ -109,9 +109,9 @@ msgstr ""
msgid "Merge"
msgstr ""
-#: picard/config_upgrade.py:134 picard/ui/metadatabox.py:422
-#: picard/ui/options/interface_toolbar.py:108
-#: picard/ui/ui_options_interface_toolbar.py:86
+#: picard/config_upgrade.py:134
+#: picard/ui/forms/ui_options_interface_toolbar.py:86
+#: picard/ui/metadatabox.py:435 picard/ui/options/interface_toolbar.py:109
msgid "Remove"
msgstr ""
@@ -120,50 +120,72 @@ msgid "Primary file naming script"
msgstr ""
#: picard/debug_opts.py:82
-msgid "Web Service Replies"
+msgid "Plugin Fullpath"
msgstr ""
#: picard/debug_opts.py:82
-msgid "Log content of web service replies"
+msgid "Log plugin full paths"
msgstr ""
#: picard/debug_opts.py:83
-msgid "Plugin Fullpath"
+msgid "Web Service Post Data"
msgstr ""
#: picard/debug_opts.py:83
-msgid "Log plugin full paths"
+msgid "Log data of web service post requests"
+msgstr ""
+
+#: picard/debug_opts.py:84
+msgid "Web Service Replies"
+msgstr ""
+
+#: picard/debug_opts.py:84
+msgid "Log content of web service replies"
msgstr ""
-#: picard/file.py:228
+#: picard/file.py:215
msgid ""
"The file failed to parse, either the file is damaged or has an "
"unsupported file format."
msgstr ""
-#: picard/file.py:869
+#: picard/file.py:865
#, python-format
msgid "No matching tracks above the threshold for file '%(filename)s'"
msgstr ""
-#: picard/file.py:871
+#: picard/file.py:867
#, python-format
msgid "File '%(filename)s' identified!"
msgstr ""
-#: picard/file.py:883
+#: picard/file.py:879
#, python-format
msgid "No matching tracks for file '%(filename)s'"
msgstr ""
-#: picard/file.py:915
+#: picard/file.py:911
#, python-format
msgid "Looking up the metadata for file %(filename)s …"
msgstr ""
+#: picard/item.py:161
+#, python-format
+msgid "%i image"
+msgid_plural "%i images"
+msgstr[0] ""
+msgstr[1] ""
+
+#: picard/item.py:164
+#, python-format
+msgid "%i image not in all tracks"
+msgid_plural "%i different images among tracks"
+msgstr[0] ""
+msgstr[1] ""
+
#: picard/log.py:77 picard/ui/options/renaming.py:252
-#: picard/ui/scripteditor.py:878 picard/ui/scripteditor.py:881
-#: picard/ui/scripteditor.py:1186 picard/ui/scripteditor.py:1414
+#: picard/ui/scripteditor.py:879 picard/ui/scripteditor.py:882
+#: picard/ui/scripteditor.py:1187 picard/ui/scripteditor.py:1415
msgid "Error"
msgstr ""
@@ -171,8 +193,8 @@ msgstr ""
msgid "Warning"
msgstr ""
-#: picard/log.py:79 picard/ui/infodialog.py:157 picard/ui/infodialog.py:369
-#: picard/ui/options/interface_toolbar.py:104
+#: picard/log.py:79 picard/ui/infodialog.py:235 picard/ui/infodialog.py:479
+#: picard/ui/options/interface_toolbar.py:105
msgid "Info"
msgstr ""
@@ -193,484 +215,506 @@ msgstr ""
msgid "Unexpected request error (HTTP code %s)"
msgstr ""
-#: picard/options.py:145
+#: picard/options.py:151
msgid "Tags to ignore for comparison"
msgstr ""
-#: picard/options.py:146
+#: picard/options.py:152
msgid "Completeness check ignore: Data tracks"
msgstr ""
-#: picard/options.py:147
+#: picard/options.py:153
msgid "Completeness check ignore: Pregap tracks"
msgstr ""
-#: picard/options.py:148
+#: picard/options.py:154
msgid "Completeness check ignore: Silent tracks"
msgstr ""
-#: picard/options.py:149
+#: picard/options.py:155
msgid "Completeness check ignore: Video tracks"
msgstr ""
-#: picard/options.py:150 picard/ui/ui_options_advanced.py:149
+#: picard/options.py:156 picard/ui/forms/ui_options_advanced.py:149
msgid "Ignore hidden files"
msgstr ""
-#: picard/options.py:151
+#: picard/options.py:157
msgid "Ignore file paths matching a regular expression"
msgstr ""
-#: picard/options.py:152
+#: picard/options.py:158
msgid "Ignore track duration difference under x seconds"
msgstr ""
-#: picard/options.py:153 picard/ui/ui_options_advanced.py:146
+#: picard/options.py:159 picard/ui/forms/ui_options_advanced.py:146
msgid "Maximum number of entities to return per MusicBrainz query"
msgstr ""
-#: picard/options.py:154 picard/ui/ui_options_advanced.py:148
+#: picard/options.py:160 picard/ui/forms/ui_options_advanced.py:148
msgid "Include sub-folders when adding files from folder"
msgstr ""
-#: picard/options.py:162
+#: picard/options.py:168
msgid "Cover art providers"
msgstr ""
-#: picard/options.py:163
+#: picard/options.py:169
msgid "File name for images"
msgstr ""
-#: picard/options.py:164 picard/ui/ui_options_cover.py:102
+#: picard/options.py:170 picard/ui/forms/ui_options_cover.py:119
msgid "Embed only a single front image"
msgstr ""
-#: picard/options.py:165 picard/ui/ui_options_cover.py:107
+#: picard/options.py:171 picard/ui/forms/ui_options_cover.py:120
+msgid "Never replace cover images with smaller ones"
+msgstr ""
+
+#: picard/options.py:172
+msgid "Never replace cover images of the given types"
+msgstr ""
+
+#: picard/options.py:173
+msgid "Never replace cover images of these types"
+msgstr ""
+
+#: picard/options.py:174
+msgid "Always replace cover images of these types"
+msgstr ""
+
+#: picard/options.py:175 picard/ui/forms/ui_options_cover.py:127
msgid "Always use the primary image type as the file name for non-front images"
msgstr ""
-#: picard/options.py:166
+#: picard/options.py:176
msgid "Overwrite existing image files"
msgstr ""
-#: picard/options.py:167 picard/ui/ui_options_cover.py:103
+#: picard/options.py:177 picard/ui/forms/ui_options_cover.py:123
msgid "Save cover images as separate files"
msgstr ""
-#: picard/options.py:168 picard/ui/ui_options_cover.py:101
+#: picard/options.py:178 picard/ui/forms/ui_options_cover.py:118
msgid "Embed cover images into tags"
msgstr ""
-#: picard/options.py:169 picard/ui/ui_options_cover.py:106
+#: picard/options.py:179 picard/ui/forms/ui_options_cover.py:126
msgid "Save only a single front image as separate file"
msgstr ""
-#: picard/options.py:193 picard/ui/ui_options_general.py:214
+#: picard/options.py:223 picard/ui/forms/ui_options_general.py:214
msgid "Automatically scan all new files"
msgstr ""
-#: picard/options.py:194 picard/ui/ui_options_general.py:218
+#: picard/options.py:224 picard/ui/forms/ui_options_general.py:218
msgid "Check for plugin updates during startup"
msgstr ""
-#: picard/options.py:195 picard/ui/ui_options_general.py:219
+#: picard/options.py:225 picard/ui/forms/ui_options_general.py:219
msgid "Check for program updates during startup"
msgstr ""
-#: picard/options.py:196 picard/ui/ui_options_general.py:215
+#: picard/options.py:226 picard/ui/forms/ui_options_general.py:215
msgid "Automatically cluster all new files"
msgstr ""
-#: picard/options.py:197 picard/ui/ui_options_general.py:216
+#: picard/options.py:227 picard/ui/forms/ui_options_general.py:216
msgid "Ignore MBIDs when loading new files"
msgstr ""
-#: picard/options.py:198
+#: picard/options.py:228
msgid "Server address"
msgstr ""
-#: picard/options.py:199
+#: picard/options.py:229
msgid "Port"
msgstr ""
-#: picard/options.py:200
+#: picard/options.py:230
msgid "Days between update checks"
msgstr ""
-#: picard/options.py:201
+#: picard/options.py:231
msgid "Updates to check"
msgstr ""
-#: picard/options.py:206
+#: picard/options.py:236
msgid "Use album artist genres"
msgstr ""
-#: picard/options.py:207 picard/ui/ui_options_genres.py:128
+#: picard/options.py:237 picard/ui/forms/ui_options_genres.py:128
msgid "Use folksonomy tags as genre"
msgstr ""
-#: picard/options.py:208
+#: picard/options.py:238
msgid "Genres to include or exclude"
msgstr ""
-#: picard/options.py:209
+#: picard/options.py:239
msgid "Join multiple genres with"
msgstr ""
-#: picard/options.py:210
+#: picard/options.py:240
msgid "Maximum number of genres"
msgstr ""
-#: picard/options.py:211
+#: picard/options.py:241
msgid "Minimal genre usage"
msgstr ""
-#: picard/options.py:212 picard/ui/ui_options_genres.py:126
+#: picard/options.py:242 picard/ui/forms/ui_options_genres.py:126
msgid "Use only my genres"
msgstr ""
-#: picard/options.py:213 picard/ui/ui_options_genres.py:125
+#: picard/options.py:243 picard/ui/forms/ui_options_genres.py:125
msgid "Use genres from MusicBrainz"
msgstr ""
-#: picard/options.py:217 picard/ui/ui_options_interface.py:130
+#: picard/options.py:247 picard/ui/forms/ui_options_interface.py:130
msgid "Allow selection of multiple directories"
msgstr ""
-#: picard/options.py:218 picard/ui/ui_options_interface.py:131
+#: picard/options.py:248 picard/ui/forms/ui_options_interface.py:131
msgid "Use builtin search rather than looking in browser"
msgstr ""
-#: picard/options.py:219 picard/ui/ui_options_interface.py:136
+#: picard/options.py:249 picard/ui/forms/ui_options_interface.py:136
msgid "Adjust horizontal position in file browser automatically"
msgstr ""
-#: picard/options.py:220 picard/ui/ui_options_interface.py:135
+#: picard/options.py:250 picard/ui/forms/ui_options_interface.py:135
msgid "Show a confirmation dialog when saving files"
msgstr ""
-#: picard/options.py:222 picard/ui/ui_options_interface.py:134
+#: picard/options.py:252 picard/ui/forms/ui_options_interface.py:134
msgid "Show a quit confirmation dialog for unsaved changes"
msgstr ""
-#: picard/options.py:223 picard/ui/ui_options_interface.py:126
+#: picard/options.py:253 picard/ui/forms/ui_options_interface.py:126
msgid "Show icons in menus"
msgstr ""
-#: picard/options.py:224
+#: picard/options.py:254
msgid "Show a usage warning dialog when Picard starts"
msgstr ""
-#: picard/options.py:225
+#: picard/options.py:255
msgid "Begin browsing in a specific directory"
msgstr ""
-#: picard/options.py:226
+#: picard/options.py:256
msgid "Directory to begin browsing"
msgstr ""
-#: picard/options.py:227 picard/ui/ui_options_interface.py:125
+#: picard/options.py:257 picard/ui/forms/ui_options_interface.py:125
msgid "Show text labels under icons"
msgstr ""
-#: picard/options.py:228
+#: picard/options.py:258
msgid "User interface language"
msgstr ""
-#: picard/options.py:229
+#: picard/options.py:259
msgid "User interface color theme"
msgstr ""
-#: picard/options.py:230
+#: picard/options.py:260
msgid "Use advanced search syntax"
msgstr ""
-#: picard/options.py:234
+#: picard/options.py:264
msgid "Colors to use for light theme"
msgstr ""
-#: picard/options.py:235
+#: picard/options.py:265
msgid "Colors to use for dark theme"
msgstr ""
-#: picard/options.py:250
+#: picard/options.py:280
msgid "Layout of the tool bar"
msgstr ""
-#: picard/options.py:254
+#: picard/options.py:284
msgid "Tags to show at the top"
msgstr ""
-#: picard/options.py:258
+#: picard/options.py:288
msgid "Automatic backup destination directory"
msgstr ""
-#: picard/options.py:262
+#: picard/options.py:292
msgid "Minimal similarity for cluster lookups"
msgstr ""
-#: picard/options.py:263
+#: picard/options.py:293
msgid "Minimal similarity for file lookups"
msgstr ""
-#: picard/options.py:264
+#: picard/options.py:294
msgid "Minimal similarity for matching files to tracks"
msgstr ""
-#: picard/options.py:268
+#: picard/options.py:298
msgid "Translation locales"
msgstr ""
-#: picard/options.py:269 picard/ui/ui_options_metadata.py:142
+#: picard/options.py:299 picard/ui/forms/ui_options_metadata.py:142
msgid "Convert Unicode punctuation characters to ASCII"
msgstr ""
-#: picard/options.py:270 picard/ui/ui_options_metadata.py:145
+#: picard/options.py:300 picard/ui/forms/ui_options_metadata.py:145
msgid "Guess track number and title from filename if empty"
msgstr ""
-#: picard/options.py:271
+#: picard/options.py:301
msgid "Standalone recordings name"
msgstr ""
-#: picard/options.py:272 picard/ui/ui_options_metadata.py:143
+#: picard/options.py:302 picard/ui/forms/ui_options_metadata.py:143
msgid "Use release relationships"
msgstr ""
-#: picard/options.py:273
+#: picard/options.py:303
msgid "Translation script exceptions"
msgstr ""
-#: picard/options.py:274 picard/ui/ui_options_metadata.py:140
+#: picard/options.py:304 picard/ui/forms/ui_options_metadata.py:140
msgid "Use standardized artist names"
msgstr ""
-#: picard/options.py:275 picard/ui/ui_options_metadata.py:141
+#: picard/options.py:305 picard/ui/forms/ui_options_metadata.py:141
msgid "Use standardized instrument and vocal credits"
msgstr ""
-#: picard/options.py:276
+#: picard/options.py:306
msgid "Use track and release relationships"
msgstr ""
-#: picard/options.py:277
+#: picard/options.py:307
msgid "Translate artist names"
msgstr ""
-#: picard/options.py:278
+#: picard/options.py:308
msgid "Translate artist names exception"
msgstr ""
-#: picard/options.py:279
+#: picard/options.py:309
msgid "Various Artists name"
msgstr ""
-#: picard/options.py:283
+#: picard/options.py:313
msgid "Browser integration"
msgstr ""
-#: picard/options.py:284 picard/ui/ui_options_network.py:174
+#: picard/options.py:314 picard/ui/forms/ui_options_network.py:174
msgid "Listen only on localhost"
msgstr ""
-#: picard/options.py:285
+#: picard/options.py:315
msgid "Default listening port"
msgstr ""
-#: picard/options.py:286
+#: picard/options.py:316
msgid "Network cache size in bytes"
msgstr ""
-#: picard/options.py:287
+#: picard/options.py:317
msgid "Request timeout in seconds"
msgstr ""
-#: picard/options.py:288
+#: picard/options.py:318
msgid "Proxy password"
msgstr ""
-#: picard/options.py:289
+#: picard/options.py:319
msgid "Proxy server address"
msgstr ""
-#: picard/options.py:290
+#: picard/options.py:320
msgid "Proxy server port"
msgstr ""
-#: picard/options.py:291
+#: picard/options.py:321
msgid "Type of proxy server"
msgstr ""
-#: picard/options.py:292
+#: picard/options.py:322
msgid "Proxy username"
msgstr ""
-#: picard/options.py:293
+#: picard/options.py:323
msgid "Use a web proxy server"
msgstr ""
-#: picard/options.py:309 picard/ui/ui_options_ratings.py:53
+#: picard/options.py:339 picard/ui/forms/ui_options_ratings.py:53
msgid "Enable track ratings"
msgstr ""
-#: picard/options.py:311
+#: picard/options.py:341
msgid "Email to use when saving ratings"
msgstr ""
-#: picard/options.py:312 picard/ui/ui_options_ratings.py:56
+#: picard/options.py:342 picard/ui/forms/ui_options_ratings.py:56
msgid "Submit ratings to MusicBrainz"
msgstr ""
-#: picard/options.py:316 picard/ui/ui_options_releases.py:117
+#: picard/options.py:346 picard/ui/forms/ui_options_releases.py:117
msgid "Preferred release countries"
msgstr ""
-#: picard/options.py:317 picard/ui/ui_options_releases.py:122
+#: picard/options.py:347 picard/ui/forms/ui_options_releases.py:122
msgid "Preferred medium formats"
msgstr ""
-#: picard/options.py:318 picard/ui/ui_options_releases.py:116
+#: picard/options.py:348 picard/ui/forms/ui_options_releases.py:116
msgid "Preferred release types"
msgstr ""
-#: picard/options.py:322 picard/ui/ui_options_renaming.py:160
+#: picard/options.py:352 picard/ui/forms/ui_options_renaming.py:160
msgid "Delete empty directories"
msgstr ""
-#: picard/options.py:323
+#: picard/options.py:353
msgid "Move additional files"
msgstr ""
-#: picard/options.py:324
+#: picard/options.py:354
msgid "Additional file patterns"
msgstr ""
-#: picard/options.py:325
+#: picard/options.py:355
msgid "Move files"
msgstr ""
-#: picard/options.py:326
+#: picard/options.py:356
msgid "Destination directory"
msgstr ""
-#: picard/options.py:327
+#: picard/options.py:357
msgid "Rename files"
msgstr ""
-#: picard/options.py:331 picard/ui/ui_options_renaming_compat.py:95
+#: picard/options.py:361 picard/ui/forms/ui_options_renaming_compat.py:95
msgid "Replace non-ASCII characters"
msgstr ""
-#: picard/options.py:332
+#: picard/options.py:362
msgid "Replacement character to use for directory separators"
msgstr ""
-#: picard/options.py:333 picard/ui/ui_options_renaming_compat.py:99
+#: picard/options.py:363 picard/ui/forms/ui_options_renaming_compat.py:99
msgid "Replace spaces with underscores"
msgstr ""
-#: picard/options.py:334
+#: picard/options.py:364
msgid "Replacement characters used for Windows compatibility"
msgstr ""
-#: picard/options.py:335 picard/ui/ui_options_renaming_compat.py:96
-#: picard/ui/ui_win_compat_dialog.py:197
+#: picard/options.py:365 picard/ui/forms/ui_options_renaming_compat.py:96
+#: picard/ui/forms/ui_win_compat_dialog.py:197
msgid "Windows compatibility"
msgstr ""
-#: picard/options.py:336 picard/ui/options/renaming_compat.py:120
+#: picard/options.py:366 picard/ui/options/renaming_compat.py:120
msgid "Windows long path support"
msgstr ""
-#: picard/options.py:341
+#: picard/options.py:371
msgid "Enable tagger scripts"
msgstr ""
-#: picard/options.py:342
+#: picard/options.py:372
msgid "Tagger scripts"
msgstr ""
-#: picard/options.py:346 picard/ui/ui_options_tags.py:80
+#: picard/options.py:376 picard/ui/forms/ui_options_tags.py:80
msgid "Clear existing tags"
msgstr ""
-#: picard/options.py:347
+#: picard/options.py:377
msgid "Don't write tags"
msgstr ""
-#: picard/options.py:348 picard/ui/ui_options_tags.py:84
+#: picard/options.py:378 picard/ui/forms/ui_options_tags.py:84
msgid "Fix missing seekpoints for FLAC files"
msgstr ""
-#: picard/options.py:349
+#: picard/options.py:379
msgid "Preserved tags list"
msgstr ""
-#: picard/options.py:350 picard/ui/ui_options_tags.py:81
+#: picard/options.py:380 picard/ui/forms/ui_options_tags.py:81
msgid "Keep embedded images when clearing tags"
msgstr ""
-#: picard/options.py:351 picard/ui/ui_options_tags.py:78
+#: picard/options.py:381 picard/ui/forms/ui_options_tags.py:78
msgid "Preserve timestamps of tagged files"
msgstr ""
-#: picard/options.py:352 picard/ui/ui_options_tags.py:83
+#: picard/options.py:382 picard/ui/forms/ui_options_tags.py:83
msgid "Remove APEv2 tags from MP3 files"
msgstr ""
-#: picard/options.py:353 picard/ui/ui_options_tags.py:82
+#: picard/options.py:383 picard/ui/forms/ui_options_tags.py:82
msgid "Remove ID3 tags from FLAC files"
msgstr ""
-#: picard/options.py:357
+#: picard/options.py:387
msgid "Save APEv2 tags to AAC"
msgstr ""
-#: picard/options.py:358 picard/ui/ui_options_tags_compatibility_aac.py:55
+#: picard/options.py:388
+#: picard/ui/forms/ui_options_tags_compatibility_aac.py:55
msgid "Remove APEv2 tags from AAC files"
msgstr ""
-#: picard/options.py:362
+#: picard/options.py:392
msgid "Save APEv2 tags to AC3"
msgstr ""
-#: picard/options.py:363 picard/ui/ui_options_tags_compatibility_ac3.py:55
+#: picard/options.py:393
+#: picard/ui/forms/ui_options_tags_compatibility_ac3.py:55
msgid "Remove APEv2 tags from AC3 files"
msgstr ""
-#: picard/options.py:367
+#: picard/options.py:397
msgid "ID3v2.3 join character"
msgstr ""
-#: picard/options.py:368 picard/ui/ui_options_tags_compatibility_id3.py:125
+#: picard/options.py:398
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:125
msgid "ID3v2 text encoding"
msgstr ""
-#: picard/options.py:369 picard/ui/ui_options_tags_compatibility_id3.py:131
+#: picard/options.py:399
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:131
msgid "Save iTunes compatible grouping and work"
msgstr ""
-#: picard/options.py:370
+#: picard/options.py:400
msgid "Write ID3v1 tags"
msgstr ""
-#: picard/options.py:371
+#: picard/options.py:401
msgid "ID3v2 version to write"
msgstr ""
-#: picard/options.py:375 picard/ui/ui_options_tags_compatibility_wave.py:65
+#: picard/options.py:405
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:65
msgid "Remove existing RIFF INFO tags from WAVE files"
msgstr ""
-#: picard/options.py:376 picard/ui/ui_options_tags_compatibility_wave.py:66
+#: picard/options.py:406
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:66
msgid "RIFF INFO text encoding"
msgstr ""
-#: picard/options.py:377
+#: picard/options.py:407
msgid "Write RIFF INFO tags to WAVE files"
msgstr ""
-#: picard/options.py:383
+#: picard/options.py:413
msgid "Selected file naming script"
msgstr ""
@@ -696,8 +740,8 @@ msgstr ""
msgid "Plugin \"%(plugin)s\" has an invalid API version string: %(error)s"
msgstr ""
-#: picard/pluginmanager.py:366 picard/ui/options/plugins.py:424
-#: picard/ui/options/plugins.py:436 picard/ui/options/plugins.py:457
+#: picard/pluginmanager.py:366 picard/ui/options/plugins.py:423
+#: picard/ui/options/plugins.py:435 picard/ui/options/plugins.py:456
#, python-format
msgid "Plugin \"%(plugin)s\""
msgstr ""
@@ -712,71 +756,71 @@ msgstr ""
msgid "Error loading plugins list: %(error)s"
msgstr ""
-#: picard/releasegroup.py:57 picard/ui/searchdialog/album.py:149
+#: picard/releasegroup.py:54 picard/ui/searchdialog/album.py:149
msgid "Tracks"
msgstr ""
-#: picard/releasegroup.py:58
+#: picard/releasegroup.py:55
msgid "Year"
msgstr ""
-#: picard/releasegroup.py:59 picard/ui/cdlookup.py:66
+#: picard/releasegroup.py:56 picard/ui/cdlookup.py:66
#: picard/ui/searchdialog/album.py:151 picard/ui/searchdialog/track.py:66
msgid "Country"
msgstr ""
-#: picard/releasegroup.py:60 picard/ui/searchdialog/album.py:148
+#: picard/releasegroup.py:57 picard/ui/searchdialog/album.py:148
msgid "Format"
msgstr ""
-#: picard/releasegroup.py:61
+#: picard/releasegroup.py:58
msgid "Label"
msgstr ""
-#: picard/releasegroup.py:62
+#: picard/releasegroup.py:59
msgid "Cat No"
msgstr ""
-#: picard/releasegroup.py:66
+#: picard/releasegroup.py:63
msgid "Packaging"
msgstr ""
-#: picard/releasegroup.py:67 picard/ui/cdlookup.py:67
-#: picard/ui/itemviews.py:174 picard/ui/searchdialog/album.py:154
+#: picard/releasegroup.py:64 picard/ui/cdlookup.py:67
+#: picard/ui/itemviews/columns.py:214 picard/ui/searchdialog/album.py:154
#: picard/util/tags.py:52
msgid "Barcode"
msgstr ""
-#: picard/releasegroup.py:68 picard/ui/cdlookup.py:68
+#: picard/releasegroup.py:65 picard/ui/cdlookup.py:68
msgid "Disambiguation"
msgstr ""
-#: picard/releasegroup.py:99
+#: picard/releasegroup.py:96
msgid "[no barcode]"
msgstr ""
-#: picard/releasegroup.py:140
+#: picard/releasegroup.py:138
msgid "[no release info]"
msgstr ""
-#: picard/tagger.py:654 picard/ui/ui_options_general.py:210
+#: picard/tagger.py:655 picard/ui/forms/ui_options_general.py:210
msgid "MusicBrainz Account"
msgstr ""
-#: picard/tagger.py:655
+#: picard/tagger.py:656
msgid "Authorization code:"
msgstr ""
-#: picard/tagger.py:1160
+#: picard/tagger.py:1159
#, python-format
msgid "Removing album %(id)s: %(artist)s - %(album)s"
msgstr ""
-#: picard/tagger.py:1178
+#: picard/tagger.py:1177
msgid "CD Lookup Error"
msgstr ""
-#: picard/tagger.py:1179
+#: picard/tagger.py:1178
#, python-format
msgid ""
"Error while reading CD:\n"
@@ -784,39 +828,39 @@ msgid ""
"%s"
msgstr ""
-#: picard/tagger.py:1208
+#: picard/tagger.py:1207
msgid "All supported log files"
msgstr ""
-#: picard/tagger.py:1209
+#: picard/tagger.py:1208
msgid "EAC / XLD / Whipper / fre:ac log files"
msgstr ""
-#: picard/tagger.py:1210
+#: picard/tagger.py:1209
msgid "dBpoweramp log files"
msgstr ""
-#: picard/script/serializer.py:350 picard/tagger.py:1211
-#: picard/ui/coverartbox.py:615 picard/ui/mainwindow/__init__.py:847
-#: picard/ui/options/maintenance.py:211 picard/ui/options/scripting.py:125
+#: picard/script/serializer.py:374 picard/tagger.py:1210
+#: picard/ui/coverartbox.py:615 picard/ui/mainwindow/__init__.py:849
+#: picard/ui/options/maintenance.py:213 picard/ui/options/scripting.py:129
msgid "All files"
msgstr ""
-#: picard/tagger.py:1237
+#: picard/tagger.py:1236
#, python-format
msgid "Failed parsing ripping log \"%s\""
msgstr ""
-#: picard/track.py:122
+#: picard/track.py:128
#, python-format
msgid "Error line %(lineno)d: %(error)s"
msgstr ""
-#: picard/track.py:398
+#: picard/track.py:396
msgid "[loading recording information]"
msgstr ""
-#: picard/track.py:447
+#: picard/track.py:446
#, python-format
msgid "[could not load recording %s]"
msgstr ""
@@ -841,27 +885,27 @@ msgstr ""
msgid "Looking up the fingerprint for file '%(filename)s' …"
msgstr ""
-#: picard/acoustid/manager.py:188
+#: picard/acoustid/manager.py:187
msgid "AcoustID submission finished, but not all fingerprints have been submitted"
msgstr ""
-#: picard/acoustid/manager.py:190
+#: picard/acoustid/manager.py:189
msgid "AcoustID submission finished successfully"
msgstr ""
-#: picard/acoustid/manager.py:201
+#: picard/acoustid/manager.py:200
msgid "AcoustID submission failed permanently, maximum batch size reduced to zero"
msgstr ""
-#: picard/acoustid/manager.py:203
+#: picard/acoustid/manager.py:202
msgid "AcoustID submission failed permanently, probably too many retries"
msgstr ""
-#: picard/acoustid/manager.py:213
+#: picard/acoustid/manager.py:212
msgid "Submitting AcoustIDs …"
msgstr ""
-#: picard/acoustid/manager.py:243
+#: picard/acoustid/manager.py:242
#, python-format
msgid "AcoustID submission failed with error '%(error)s': %(message)s"
msgstr ""
@@ -890,12 +934,12 @@ msgstr ""
msgid "Add file as recording…"
msgstr ""
-#: picard/coverart/__init__.py:102
+#: picard/coverart/__init__.py:96
#, python-format
msgid "Cover art of type '%(type)s' downloaded for %(albumid)s from %(host)s"
msgstr ""
-#: picard/coverart/__init__.py:188
+#: picard/coverart/__init__.py:187
#, python-format
msgid "Downloading cover art of type '%(type)s' for %(albumid)s from %(host)s …"
msgstr ""
@@ -904,27 +948,27 @@ msgstr ""
msgid "Unknown"
msgstr ""
-#: picard/coverart/providers/caa.py:75
+#: picard/coverart/providers/caa.py:73
msgid "250 px"
msgstr ""
-#: picard/coverart/providers/caa.py:76
+#: picard/coverart/providers/caa.py:74
msgid "500 px"
msgstr ""
-#: picard/coverart/providers/caa.py:77
+#: picard/coverart/providers/caa.py:75
msgid "1200 px"
msgstr ""
-#: picard/coverart/providers/caa.py:78
+#: picard/coverart/providers/caa.py:76
msgid "Full size"
msgstr ""
-#: picard/coverart/providers/caa.py:120
+#: picard/coverart/providers/caa.py:118
msgid "Cover Art Archive"
msgstr ""
-#: picard/coverart/providers/caa.py:189
+#: picard/coverart/providers/caa.py:185
msgid "Cover Art Archive: Release"
msgstr ""
@@ -940,79 +984,79 @@ msgstr ""
msgid "Allowed Cover Art URLs"
msgstr ""
-#: picard/script/__init__.py:145
+#: picard/script/__init__.py:179
msgid ""
"This preset example file naming script does not require any special "
"settings, tagging scripts or plugins."
msgstr ""
-#: picard/script/__init__.py:149
+#: picard/script/__init__.py:183
#, python-format
msgid "Preset %(number)d: %(title)s"
msgstr ""
-#: picard/script/__init__.py:156
+#: picard/script/__init__.py:190
msgid "Default file naming script"
msgstr ""
-#: picard/script/__init__.py:168
+#: picard/script/__init__.py:202
msgid "[album artist]/[album]/[track #]. [title]"
msgstr ""
-#: picard/script/__init__.py:182
+#: picard/script/__init__.py:216
msgid "[album artist]/[album]/[disc and track #] [artist] - [title]"
msgstr ""
-#: picard/script/functions.py:191
+#: picard/script/functions.py:72
msgid ""
"`$if(if,then,else)`\n"
"\n"
"If `if` is not empty, it returns `then`, otherwise it returns `else`."
msgstr ""
-#: picard/script/functions.py:204
+#: picard/script/functions.py:85
msgid ""
"`$if2(a1,a2,a3,…)`\n"
"\n"
"Returns first non empty argument."
msgstr ""
-#: picard/script/functions.py:217
+#: picard/script/functions.py:98
msgid ""
"`$noop(…)`\n"
"\n"
"Does nothing (useful for comments or disabling a block of code)."
msgstr ""
-#: picard/script/functions.py:226
+#: picard/script/functions.py:107
msgid ""
"`$left(text,number)`\n"
"\n"
"Returns the first `number` characters from `text`."
msgstr ""
-#: picard/script/functions.py:238
+#: picard/script/functions.py:119
msgid ""
"`$right(text,number)`\n"
"\n"
"Returns the last `number` characters from `text`."
msgstr ""
-#: picard/script/functions.py:250
+#: picard/script/functions.py:131
msgid ""
"`$lower(text)`\n"
"\n"
"Returns `text` in lower case."
msgstr ""
-#: picard/script/functions.py:259
+#: picard/script/functions.py:140
msgid ""
"`$upper(text)`\n"
"\n"
"Returns `text` in upper case."
msgstr ""
-#: picard/script/functions.py:268
+#: picard/script/functions.py:149
msgid ""
"`$pad(text,length,char)`\n"
"\n"
@@ -1021,7 +1065,7 @@ msgid ""
" needed to the **beginning** of the string."
msgstr ""
-#: picard/script/functions.py:281
+#: picard/script/functions.py:162
msgid ""
"`$strip(text)`\n"
"\n"
@@ -1031,7 +1075,7 @@ msgid ""
"other unicode characters."
msgstr ""
-#: picard/script/functions.py:291
+#: picard/script/functions.py:172
msgid ""
"`$replace(text,search,replace)`\n"
"\n"
@@ -1039,7 +1083,7 @@ msgid ""
"returns the resulting string."
msgstr ""
-#: picard/script/functions.py:300
+#: picard/script/functions.py:181
#, python-format
msgid ""
"`$replacemulti(name,search,replace,separator=\"; \")`\n"
@@ -1053,14 +1097,14 @@ msgid ""
" $replacemulti(%genre%,Idm,IDM)\n"
msgstr ""
-#: picard/script/functions.py:325
+#: picard/script/functions.py:206
msgid ""
"`$in(x,y)`\n"
"\n"
"Returns true, if `x` contains `y`."
msgstr ""
-#: picard/script/functions.py:337
+#: picard/script/functions.py:218
#, python-format
msgid ""
"`$inmulti(%x%,y)`\n"
@@ -1071,7 +1115,7 @@ msgid ""
"_Since Picard 1.0_"
msgstr ""
-#: picard/script/functions.py:354
+#: picard/script/functions.py:235
msgid ""
"`$rreplace(text,pattern,replace)`\n"
"\n"
@@ -1079,7 +1123,7 @@ msgid ""
"expression-syntax) replace."
msgstr ""
-#: picard/script/functions.py:366
+#: picard/script/functions.py:247
msgid ""
"`$rsearch(text,pattern)`\n"
"\n"
@@ -1088,14 +1132,14 @@ msgid ""
" This function will return the first matching group."
msgstr ""
-#: picard/script/functions.py:385
+#: picard/script/functions.py:266
msgid ""
"`$num(number,length)`\n"
"\n"
"Returns `number` formatted to `length` digits (maximum 20)."
msgstr ""
-#: picard/script/functions.py:402
+#: picard/script/functions.py:283
msgid ""
"`$unset(name)`\n"
"\n"
@@ -1105,7 +1149,7 @@ msgid ""
"For example `$unset(performer:*)` would unset all performer tags."
msgstr ""
-#: picard/script/functions.py:422
+#: picard/script/functions.py:303
msgid ""
"`$delete(name)`\n"
"\n"
@@ -1119,7 +1163,7 @@ msgid ""
"_Since Picard 2.1_"
msgstr ""
-#: picard/script/functions.py:437
+#: picard/script/functions.py:318
#, python-format
msgid ""
"`$set(name,value)`\n"
@@ -1134,7 +1178,7 @@ msgid ""
" `%_something%` will not."
msgstr ""
-#: picard/script/functions.py:455
+#: picard/script/functions.py:336
#, python-format
msgid ""
"`$setmulti(name,value,separator=\"; \")`\n"
@@ -1154,14 +1198,14 @@ msgid ""
"_Since Picard 1.0_"
msgstr ""
-#: picard/script/functions.py:473
+#: picard/script/functions.py:354
msgid ""
"`$get(name)`\n"
"\n"
"Returns the variable `name` (equivalent to `%name%`)."
msgstr ""
-#: picard/script/functions.py:483
+#: picard/script/functions.py:364
#, python-format
msgid ""
"`$copy(new,old)`\n"
@@ -1173,7 +1217,7 @@ msgid ""
"_Since Picard 0.9_"
msgstr ""
-#: picard/script/functions.py:499
+#: picard/script/functions.py:380
msgid ""
"`$copymerge(new,old[,keep_duplicates])`\n"
"\n"
@@ -1188,7 +1232,7 @@ msgid ""
"_Since Picard 1.0_"
msgstr ""
-#: picard/script/functions.py:519
+#: picard/script/functions.py:400
msgid ""
"`$trim(text[,char])`\n"
"\n"
@@ -1196,7 +1240,7 @@ msgid ""
" The optional second parameter `char` specifies the character to trim."
msgstr ""
-#: picard/script/functions.py:532
+#: picard/script/functions.py:413
msgid ""
"`$add(x,y,…)`\n"
"\n"
@@ -1208,7 +1252,7 @@ msgid ""
" $add(x,y,z) = ((x + y) + z)\n"
msgstr ""
-#: picard/script/functions.py:550
+#: picard/script/functions.py:431
msgid ""
"`$sub(x,y,…)`\n"
"\n"
@@ -1220,7 +1264,7 @@ msgid ""
" $sub(x,y,z) = ((x - y) - z)\n"
msgstr ""
-#: picard/script/functions.py:568
+#: picard/script/functions.py:449
msgid ""
"`$div(x,y,…)`\n"
"\n"
@@ -1232,7 +1276,7 @@ msgid ""
" $div(x,y,z) = ((x / y) / z)\n"
msgstr ""
-#: picard/script/functions.py:588
+#: picard/script/functions.py:469
msgid ""
"`$mod(x,y,…)`\n"
"\n"
@@ -1244,7 +1288,7 @@ msgid ""
" $mod(x,y,z) = ((x % y) % z)\n"
msgstr ""
-#: picard/script/functions.py:606
+#: picard/script/functions.py:487
msgid ""
"`$mul(x,y,…)`\n"
"\n"
@@ -1256,7 +1300,7 @@ msgid ""
" $mul(x,y,z) = ((x * y) * z)\n"
msgstr ""
-#: picard/script/functions.py:624
+#: picard/script/functions.py:505
msgid ""
"`$or(x,y,…)`\n"
"\n"
@@ -1265,7 +1309,7 @@ msgid ""
" The result is true if ANY of the arguments is not empty."
msgstr ""
-#: picard/script/functions.py:638
+#: picard/script/functions.py:519
msgid ""
"`$and(x,y,…)`\n"
"\n"
@@ -1274,28 +1318,28 @@ msgid ""
" The result is true if ALL of the arguments are not empty."
msgstr ""
-#: picard/script/functions.py:652
+#: picard/script/functions.py:533
msgid ""
"`$not(x)`\n"
"\n"
"Returns true if `x` is empty."
msgstr ""
-#: picard/script/functions.py:664
+#: picard/script/functions.py:545
msgid ""
"`$eq(x,y)`\n"
"\n"
"Returns true if `x` equals `y`."
msgstr ""
-#: picard/script/functions.py:676
+#: picard/script/functions.py:557
msgid ""
"`$ne(x,y)`\n"
"\n"
"Returns true if `x` does not equal `y`."
msgstr ""
-#: picard/script/functions.py:721
+#: picard/script/functions.py:602
msgid ""
"`$lt(x,y[,type])`\n"
"\n"
@@ -1314,7 +1358,7 @@ msgid ""
"\"int\", \"float\" and \"text\"."
msgstr ""
-#: picard/script/functions.py:736
+#: picard/script/functions.py:617
msgid ""
"`$lte(x,y[,type])`\n"
"\n"
@@ -1333,7 +1377,7 @@ msgid ""
"\"int\", \"float\" and \"text\"."
msgstr ""
-#: picard/script/functions.py:751
+#: picard/script/functions.py:632
msgid ""
"`$gt(x,y[,type])`\n"
"\n"
@@ -1352,7 +1396,7 @@ msgid ""
"\"int\", \"float\" and \"text\"."
msgstr ""
-#: picard/script/functions.py:766
+#: picard/script/functions.py:647
msgid ""
"`$gte(x,y[,type])`\n"
"\n"
@@ -1371,14 +1415,14 @@ msgid ""
"\"int\", \"float\" and \"text\"."
msgstr ""
-#: picard/script/functions.py:781
+#: picard/script/functions.py:662
msgid ""
"`$len(text)`\n"
"\n"
"Returns the number of characters in `text`."
msgstr ""
-#: picard/script/functions.py:790
+#: picard/script/functions.py:671
msgid ""
"`$lenmulti(name,separator=\"; \")`\n"
"\n"
@@ -1394,7 +1438,7 @@ msgid ""
" $lenmulti(One; Two; Three) = 3\n"
msgstr ""
-#: picard/script/functions.py:807
+#: picard/script/functions.py:688
msgid ""
"`$performer(pattern=\"\",join=\", \")`\n"
"\n"
@@ -1410,7 +1454,7 @@ msgid ""
"_Since Picard 0.10_"
msgstr ""
-#: picard/script/functions.py:831
+#: picard/script/functions.py:712
msgid ""
"`$matchedtracks()`\n"
"\n"
@@ -1420,7 +1464,7 @@ msgid ""
"_Since Picard 0.12_"
msgstr ""
-#: picard/script/functions.py:847
+#: picard/script/functions.py:728
msgid ""
"`$is_complete()`\n"
"\n"
@@ -1428,7 +1472,7 @@ msgid ""
"**Only works in File Naming scripts.**"
msgstr ""
-#: picard/script/functions.py:862
+#: picard/script/functions.py:743
msgid ""
"`$firstalphachar(text,nonalpha=\"#\")`\n"
"\n"
@@ -1440,7 +1484,7 @@ msgid ""
"_Since Picard 0.12_"
msgstr ""
-#: picard/script/functions.py:881
+#: picard/script/functions.py:762
msgid ""
"`$initials(text)`\n"
"\n"
@@ -1450,7 +1494,7 @@ msgid ""
"_Since Picard 0.12_"
msgstr ""
-#: picard/script/functions.py:892
+#: picard/script/functions.py:773
msgid ""
"`$firstwords(text,length)`\n"
"\n"
@@ -1460,7 +1504,7 @@ msgid ""
"_Since Picard 0.12_"
msgstr ""
-#: picard/script/functions.py:915
+#: picard/script/functions.py:796
msgid ""
"`$startswith(text,prefix)`\n"
"\n"
@@ -1469,7 +1513,7 @@ msgid ""
"_Since Picard 1.4_"
msgstr ""
-#: picard/script/functions.py:928
+#: picard/script/functions.py:809
msgid ""
"`$endswith(text,suffix)`\n"
"\n"
@@ -1478,7 +1522,7 @@ msgid ""
"_Since Picard 1.4_"
msgstr ""
-#: picard/script/functions.py:941
+#: picard/script/functions.py:822
msgid ""
"`$truncate(text,length)`\n"
"\n"
@@ -1487,7 +1531,7 @@ msgid ""
"_Since Picard 0.12_"
msgstr ""
-#: picard/script/functions.py:956
+#: picard/script/functions.py:837
msgid ""
"`$swapprefix(text,prefix1,prefix2,…)`\n"
"\n"
@@ -1504,7 +1548,7 @@ msgid ""
"_Since Picard 1.3, previously as a plugin since Picard 0.13_"
msgstr ""
-#: picard/script/functions.py:978
+#: picard/script/functions.py:859
msgid ""
"`$delprefix(text,prefix1,prefix2,…)`\n"
"\n"
@@ -1520,7 +1564,7 @@ msgid ""
"_Since Picard 1.3_"
msgstr ""
-#: picard/script/functions.py:1016
+#: picard/script/functions.py:897
msgid ""
"`$eq_any(x,a1,a2,…)`\n"
"\n"
@@ -1529,7 +1573,7 @@ msgid ""
"Functionally equivalent to the eq2 plugin."
msgstr ""
-#: picard/script/functions.py:1028
+#: picard/script/functions.py:909
msgid ""
"`$ne_all(x,a1,a2,…)`\n"
"\n"
@@ -1538,7 +1582,7 @@ msgid ""
"Functionally equivalent to the ne2 plugin."
msgstr ""
-#: picard/script/functions.py:1040
+#: picard/script/functions.py:921
msgid ""
"`$eq_all(x,a1,a2,…)`\n"
"\n"
@@ -1551,7 +1595,7 @@ msgid ""
"Loaf))\n"
msgstr ""
-#: picard/script/functions.py:1058
+#: picard/script/functions.py:939
#, python-format
msgid ""
"`$ne_any(x,a1,a2,…)`\n"
@@ -1566,7 +1610,7 @@ msgid ""
"\n"
msgstr ""
-#: picard/script/functions.py:1073
+#: picard/script/functions.py:954
msgid ""
"`$title(text)`\n"
"\n"
@@ -1579,7 +1623,7 @@ msgid ""
"_Since Picard 2.1_"
msgstr ""
-#: picard/script/functions.py:1113
+#: picard/script/functions.py:994
msgid ""
"`$is_audio()`\n"
"\n"
@@ -1588,7 +1632,7 @@ msgid ""
"_Since Picard 2.2_"
msgstr ""
-#: picard/script/functions.py:1127
+#: picard/script/functions.py:1008
msgid ""
"`$is_video()`\n"
"\n"
@@ -1597,7 +1641,7 @@ msgid ""
"_Since Picard 2.2_"
msgstr ""
-#: picard/script/functions.py:1141
+#: picard/script/functions.py:1022
msgid ""
"`$find(haystack,needle)`\n"
"\n"
@@ -1611,14 +1655,14 @@ msgid ""
"not found."
msgstr ""
-#: picard/script/functions.py:1158
+#: picard/script/functions.py:1039
msgid ""
"`$reverse(text)`\n"
"\n"
"Returns `text` in reverse order."
msgstr ""
-#: picard/script/functions.py:1167
+#: picard/script/functions.py:1048
msgid ""
"`$substr(text,start[,end])`\n"
"\n"
@@ -1632,7 +1676,7 @@ msgid ""
" the start and end of the string respectively."
msgstr ""
-#: picard/script/functions.py:1188
+#: picard/script/functions.py:1069
msgid ""
"`$getmulti(name,index,separator=\"; \")`\n"
"\n"
@@ -1644,7 +1688,7 @@ msgid ""
" multi-valued tag."
msgstr ""
-#: picard/script/functions.py:1207
+#: picard/script/functions.py:1088
msgid ""
"`$foreach(name,code,separator=\"; \")`\n"
"\n"
@@ -1662,7 +1706,7 @@ msgid ""
" proper multi-valued tag."
msgstr ""
-#: picard/script/functions.py:1229
+#: picard/script/functions.py:1110
msgid ""
"`$while(condition,code)`\n"
"\n"
@@ -1676,7 +1720,7 @@ msgid ""
" safeguard against accidentally creating an infinite loop."
msgstr ""
-#: picard/script/functions.py:1250
+#: picard/script/functions.py:1131
msgid ""
"`$map(name,code,separator=\"; \")`\n"
"\n"
@@ -1699,7 +1743,7 @@ msgid ""
"Result: 1=FIRST:A; 2=SECOND:B\n"
msgstr ""
-#: picard/script/functions.py:1280
+#: picard/script/functions.py:1161
msgid ""
"`$join(name,text,separator=\"; \")`\n"
"\n"
@@ -1707,7 +1751,7 @@ msgid ""
"returns the result as a string."
msgstr ""
-#: picard/script/functions.py:1291
+#: picard/script/functions.py:1172
msgid ""
"`$slice(name,start,end,separator=\"; \")`\n"
"\n"
@@ -1736,7 +1780,7 @@ msgid ""
" $setmulti(supporting_artists,$slice(%artists%,1,-1))\n"
msgstr ""
-#: picard/script/functions.py:1324
+#: picard/script/functions.py:1205
#, python-format
msgid ""
"`$datetime(format=\"%Y-%m-%d %H:%M:%S\")`\n"
@@ -1758,7 +1802,7 @@ msgid ""
" `%3Y`); and hanging '%' at the end of the format string."
msgstr ""
-#: picard/script/functions.py:1353
+#: picard/script/functions.py:1234
msgid ""
"`$sortmulti(name,separator=\"; \")`\n"
"\n"
@@ -1772,7 +1816,7 @@ msgid ""
"Result: A; B; C\n"
msgstr ""
-#: picard/script/functions.py:1370
+#: picard/script/functions.py:1251
msgid ""
"`$reversemulti(name,separator=\"; \")`\n"
"\n"
@@ -1789,7 +1833,7 @@ msgid ""
"Result: C; B; A\n"
msgstr ""
-#: picard/script/functions.py:1389
+#: picard/script/functions.py:1270
#, python-format
msgid ""
"`$unique(name,case_sensitive=\"\",separator=\"; \")`\n"
@@ -1813,7 +1857,7 @@ msgid ""
"Result: A; B; a; b; cd\n"
msgstr ""
-#: picard/script/functions.py:1417
+#: picard/script/functions.py:1298
msgid ""
"`$countryname(country_code,translate=\"\")`\n"
"\n"
@@ -1823,7 +1867,7 @@ msgid ""
" locale language.\n"
msgstr ""
-#: picard/script/functions.py:1456
+#: picard/script/functions.py:1337
msgid ""
"`$year(date,date_order=\"ymd\")`\n"
"\n"
@@ -1835,7 +1879,7 @@ msgid ""
"_Since Picard 2.7_"
msgstr ""
-#: picard/script/functions.py:1468
+#: picard/script/functions.py:1349
msgid ""
"`$month(date,date_order=\"ymd\")`\n"
"\n"
@@ -1847,7 +1891,7 @@ msgid ""
"_Since Picard 2.7_"
msgstr ""
-#: picard/script/functions.py:1480
+#: picard/script/functions.py:1361
msgid ""
"`$day(date,date_order=\"ymd\")`\n"
"\n"
@@ -1859,7 +1903,7 @@ msgid ""
"_Since Picard 2.7_"
msgstr ""
-#: picard/script/functions.py:1492
+#: picard/script/functions.py:1373
#, python-format
msgid ""
"`$dateformat(date,format=\"%Y-%m-%d\",date_order=\"ymd\")`\n"
@@ -1888,7 +1932,7 @@ msgid ""
"_Since Picard 2.7_"
msgstr ""
-#: picard/script/functions.py:1525
+#: picard/script/functions.py:1406
msgid ""
"`$is_multi(name)`\n"
"\n"
@@ -1904,7 +1948,7 @@ msgid ""
"_Since Picard 2.7_"
msgstr ""
-#: picard/script/functions.py:1543
+#: picard/script/functions.py:1424
msgid ""
"`$cleanmulti(name)`\n"
"\n"
@@ -1920,7 +1964,7 @@ msgid ""
"_Since Picard 2.8_"
msgstr ""
-#: picard/script/functions.py:1613
+#: picard/script/functions.py:1494
msgid ""
"`$min(type,x,…)`\n"
"\n"
@@ -1945,7 +1989,7 @@ msgid ""
"_Since Picard 2.9_"
msgstr ""
-#: picard/script/functions.py:1634
+#: picard/script/functions.py:1515
msgid ""
"`$max(type,x,…)`\n"
"\n"
@@ -1970,73 +2014,73 @@ msgid ""
"_Since Picard 2.9_"
msgstr ""
-#: picard/script/serializer.py:204
+#: picard/script/serializer.py:218
#, python-format
msgid "Error exporting file \"%(filename)s\": %(error)s."
msgstr ""
-#: picard/script/serializer.py:211
+#: picard/script/serializer.py:225
msgid "Export Script File"
msgstr ""
-#: picard/script/serializer.py:232
+#: picard/script/serializer.py:251
msgid "Export Script"
msgstr ""
-#: picard/script/serializer.py:233
+#: picard/script/serializer.py:252
#, python-format
msgid "Script successfully exported to %s"
msgstr ""
-#: picard/script/serializer.py:244
+#: picard/script/serializer.py:263
#, python-format
msgid "Error importing \"%(filename)s\": %(error)s"
msgstr ""
-#: picard/script/serializer.py:245
+#: picard/script/serializer.py:264
#, python-format
msgid "Error decoding \"%(filename)s\": %(error)s"
msgstr ""
-#: picard/script/serializer.py:247
+#: picard/script/serializer.py:266
msgid "Import Script File"
msgstr ""
-#: picard/script/serializer.py:260
+#: picard/script/serializer.py:284
msgid "The file was empty"
msgstr ""
-#: picard/script/serializer.py:268
+#: picard/script/serializer.py:292
#, python-format
msgid "Imported from %s"
msgstr ""
-#: picard/script/serializer.py:286
+#: picard/script/serializer.py:310
msgid "Argument is not a dictionary"
msgstr ""
-#: picard/script/serializer.py:288 picard/script/serializer.py:332
+#: picard/script/serializer.py:312 picard/script/serializer.py:356
msgid "Invalid script package"
msgstr ""
-#: picard/script/serializer.py:299
+#: picard/script/serializer.py:323
#, python-format
msgid "%s (Copy)"
msgstr ""
-#: picard/script/serializer.py:330
+#: picard/script/serializer.py:354
msgid "File content not a dictionary"
msgstr ""
-#: picard/script/serializer.py:340 picard/ui/options/scripting.py:187
+#: picard/script/serializer.py:364 picard/ui/options/scripting.py:194
msgid "Unnamed Script"
msgstr ""
-#: picard/script/serializer.py:351 picard/ui/options/scripting.py:126
+#: picard/script/serializer.py:375 picard/ui/options/scripting.py:130
msgid "Picard script files"
msgstr ""
-#: picard/script/serializer.py:352
+#: picard/script/serializer.py:376
msgid "Picard script package"
msgstr ""
@@ -2099,25 +2143,25 @@ msgstr ""
msgid "Official website"
msgstr ""
-#: picard/ui/caa_types_selector.py:179
+#: picard/ui/caa_types_selector.py:188
msgid "Cover art types"
msgstr ""
-#: picard/ui/caa_types_selector.py:199
+#: picard/ui/caa_types_selector.py:209
msgid ""
"Please select the contents of the image type 'Include' and 'Exclude' "
"lists."
msgstr ""
-#: picard/ui/caa_types_selector.py:220
+#: picard/ui/caa_types_selector.py:231
msgid "Include types list"
msgstr ""
-#: picard/ui/caa_types_selector.py:234
+#: picard/ui/caa_types_selector.py:245
msgid "Exclude types list"
msgstr ""
-#: picard/ui/caa_types_selector.py:242
+#: picard/ui/caa_types_selector.py:254
msgid ""
"CAA images with an image type found in the 'Include' list will be "
"downloaded and used UNLESS they also have an image type found in the "
@@ -2127,35 +2171,35 @@ msgid ""
"use a CAA image.\n"
msgstr ""
-#: picard/ui/caa_types_selector.py:263
+#: picard/ui/caa_types_selector.py:276
msgid "I&nclude all"
msgstr ""
-#: picard/ui/caa_types_selector.py:264
+#: picard/ui/caa_types_selector.py:277
msgid "E&xclude all"
msgstr ""
-#: picard/ui/caa_types_selector.py:265
+#: picard/ui/caa_types_selector.py:278
msgid "C&lear all"
msgstr ""
-#: picard/ui/caa_types_selector.py:266 picard/ui/options/dialog.py:185
+#: picard/ui/caa_types_selector.py:279 picard/ui/options/dialog.py:188
#: picard/ui/options/renaming_compat.py:176
msgid "Restore &Defaults"
msgstr ""
-#: picard/ui/cdlookup.py:66 picard/ui/itemviews.py:169
-#: picard/ui/mainwindow/__init__.py:739 picard/util/tags.py:45
+#: picard/ui/cdlookup.py:66 picard/ui/itemviews/columns.py:209
+#: picard/ui/mainwindow/__init__.py:741 picard/util/tags.py:45
msgid "Album"
msgstr ""
-#: picard/ui/cdlookup.py:66 picard/ui/itemviews.py:166
-#: picard/ui/mainwindow/__init__.py:740 picard/ui/searchdialog/album.py:147
+#: picard/ui/cdlookup.py:66 picard/ui/itemviews/columns.py:206
+#: picard/ui/mainwindow/__init__.py:742 picard/ui/searchdialog/album.py:147
#: picard/ui/searchdialog/track.py:63 picard/util/tags.py:48
msgid "Artist"
msgstr ""
-#: picard/ui/cdlookup.py:66 picard/ui/itemviews.py:179
+#: picard/ui/cdlookup.py:66 picard/ui/itemviews/columns.py:219
#: picard/ui/searchdialog/album.py:150 picard/ui/searchdialog/track.py:65
#: picard/util/tags.py:61
msgid "Date"
@@ -2180,79 +2224,143 @@ msgid_plural "%(name)s (%(count)i releases)"
msgstr[0] ""
msgstr[1] ""
-#: picard/ui/colors.py:41
+#: picard/ui/colors.py:47
msgid "Errored entity"
msgstr ""
-#: picard/ui/colors.py:42
+#: picard/ui/colors.py:47 picard/ui/colors.py:48 picard/ui/colors.py:49
+msgid "Entities"
+msgstr ""
+
+#: picard/ui/colors.py:48
msgid "Pending entity"
msgstr ""
-#: picard/ui/colors.py:43
+#: picard/ui/colors.py:49
msgid "Saved entity"
msgstr ""
-#: picard/ui/colors.py:44
+#: picard/ui/colors.py:50
+msgid "First cover art"
+msgstr ""
+
+#: picard/ui/colors.py:50 picard/ui/colors.py:57
+msgid "Others"
+msgstr ""
+
+#: picard/ui/colors.py:51
msgid "Log view text (debug)"
msgstr ""
-#: picard/ui/colors.py:45
+#: picard/ui/colors.py:51 picard/ui/colors.py:52 picard/ui/colors.py:53
+#: picard/ui/colors.py:54
+msgid "Logging"
+msgstr ""
+
+#: picard/ui/colors.py:52
msgid "Log view text (error)"
msgstr ""
-#: picard/ui/colors.py:46
+#: picard/ui/colors.py:53
msgid "Log view text (info)"
msgstr ""
-#: picard/ui/colors.py:47
+#: picard/ui/colors.py:54
msgid "Log view text (warning)"
msgstr ""
-#: picard/ui/colors.py:48
+#: picard/ui/colors.py:55
msgid "Profile highlight background"
msgstr ""
-#: picard/ui/colors.py:49
+#: picard/ui/colors.py:55 picard/ui/colors.py:56
+msgid "Profiles"
+msgstr ""
+
+#: picard/ui/colors.py:56
msgid "Profile highlight foreground"
msgstr ""
-#: picard/ui/colors.py:50
+#: picard/ui/colors.py:57
+msgid "Row Highlight"
+msgstr ""
+
+#: picard/ui/colors.py:58
msgid "Tag added"
msgstr ""
-#: picard/ui/colors.py:51
+#: picard/ui/colors.py:58 picard/ui/colors.py:59 picard/ui/colors.py:60
+#: picard/ui/options/tags.py:43
+msgid "Tags"
+msgstr ""
+
+#: picard/ui/colors.py:59
msgid "Tag changed"
msgstr ""
-#: picard/ui/colors.py:52
+#: picard/ui/colors.py:60
msgid "Tag removed"
msgstr ""
-#: picard/ui/coverartbox.py:332
+#: picard/ui/colors.py:61
+msgid "Error syntax highlight"
+msgstr ""
+
+#: picard/ui/colors.py:61 picard/ui/colors.py:62 picard/ui/colors.py:63
+#: picard/ui/colors.py:64 picard/ui/colors.py:65 picard/ui/colors.py:66
+#: picard/ui/colors.py:67
+msgid "Syntax Highlighting"
+msgstr ""
+
+#: picard/ui/colors.py:62
+msgid "Escape syntax highlight"
+msgstr ""
+
+#: picard/ui/colors.py:63
+msgid "Function syntax highlight"
+msgstr ""
+
+#: picard/ui/colors.py:64
+msgid "Noop syntax highlight"
+msgstr ""
+
+#: picard/ui/colors.py:65
+msgid "Special syntax highlight"
+msgstr ""
+
+#: picard/ui/colors.py:66
+msgid "Unicode syntax highlight"
+msgstr ""
+
+#: picard/ui/colors.py:67
+msgid "Variable syntax highlight"
+msgstr ""
+
+#: picard/ui/coverartbox.py:335
msgid "View release on MusicBrainz"
msgstr ""
-#: picard/ui/coverartbox.py:338
+#: picard/ui/coverartbox.py:341
msgid "Common images on all tracks"
msgstr ""
-#: picard/ui/coverartbox.py:340
+#: picard/ui/coverartbox.py:343
msgid "Tracks contain different images"
msgstr ""
-#: picard/ui/coverartbox.py:396
+#: picard/ui/coverartbox.py:399
msgid "Show more details"
msgstr ""
-#: picard/ui/coverartbox.py:397
+#: picard/ui/coverartbox.py:400
msgid "Ctrl+Shift+I"
msgstr ""
-#: picard/ui/coverartbox.py:434
+#: picard/ui/coverartbox.py:437
msgid "New Cover Art"
msgstr ""
-#: picard/ui/coverartbox.py:435
+#: picard/ui/coverartbox.py:438
msgid "Original Cover Art"
msgstr ""
@@ -2276,7 +2384,7 @@ msgstr ""
msgid "Replace front cover art"
msgstr ""
-#: picard/ui/coverartbox.py:664
+#: picard/ui/coverartbox.py:663
msgid "Append front cover art"
msgstr ""
@@ -2304,122 +2412,133 @@ msgstr ""
msgid "&Set as starting directory"
msgstr ""
-#: picard/ui/infodialog.py:108
-msgid "Existing Cover"
+#: picard/ui/infodialog.py:144 picard/ui/infodialog.py:160
+#: picard/ui/infodialog.py:177 picard/ui/searchdialog/album.py:156
+#: picard/ui/searchdialog/artist.py:47 picard/ui/searchdialog/track.py:67
+msgid "Type"
msgstr ""
-#: picard/ui/infodialog.py:108 picard/ui/infodialog.py:113
-#: picard/ui/searchdialog/album.py:156 picard/ui/searchdialog/artist.py:47
-#: picard/ui/searchdialog/track.py:67
-msgid "Type"
+#: picard/ui/infodialog.py:144 picard/ui/infodialog.py:177
+msgid "New Embedded"
msgstr ""
-#: picard/ui/infodialog.py:109
-msgid "New Cover"
+#: picard/ui/infodialog.py:144 picard/ui/infodialog.py:177
+msgid "New Exported"
msgstr ""
-#: picard/ui/infodialog.py:113 picard/ui/itemviews.py:182
-#: picard/ui/searchdialog/album.py:158
-msgid "Cover"
+#: picard/ui/infodialog.py:146 picard/ui/infodialog.py:180
+msgid "New cover art embedded into tags"
msgstr ""
-#: picard/ui/infodialog.py:212
-#, python-format
-msgid ""
-"Double-click to open in external viewer\n"
-"Temporary file: %(tempfile)s\n"
-"Source: %(sourcefile)s"
+#: picard/ui/infodialog.py:147 picard/ui/infodialog.py:181
+msgid "New cover art saved as a separate file"
+msgstr ""
+
+#: picard/ui/infodialog.py:160 picard/ui/infodialog.py:177
+msgid "Existing Cover"
+msgstr ""
+
+#: picard/ui/infodialog.py:162 picard/ui/infodialog.py:179
+msgid "Existing cover art already embedded into tags"
msgstr ""
-#: picard/ui/infodialog.py:222
+#: picard/ui/infodialog.py:270
#, python-format
msgid ""
-"Missing temporary file: %(tempfile)s\n"
-"Source: %(sourcefile)s"
+"%(message)s
Temporary file: "
+"%(tempfile)s
Source: %(sourcefile)s"
msgstr ""
-#: picard/ui/infodialog.py:289
+#: picard/ui/infodialog.py:305
+msgid "Double-click to open in external viewer"
+msgstr ""
+
+#: picard/ui/infodialog.py:310
+msgid "Missing temporary file"
+msgstr ""
+
+#: picard/ui/infodialog.py:399
msgid "Filename:"
msgstr ""
-#: picard/ui/infodialog.py:291
+#: picard/ui/infodialog.py:401
msgid "Format:"
msgstr ""
-#: picard/ui/infodialog.py:297 picard/util/checkupdate.py:162
+#: picard/ui/infodialog.py:407 picard/util/checkupdate.py:159
msgid "unknown"
msgstr ""
-#: picard/ui/infodialog.py:298
+#: picard/ui/infodialog.py:408
msgid "Size:"
msgstr ""
-#: picard/ui/infodialog.py:300
+#: picard/ui/infodialog.py:410
msgid "Length:"
msgstr ""
-#: picard/ui/infodialog.py:302
+#: picard/ui/infodialog.py:412
msgid "Bitrate:"
msgstr ""
-#: picard/ui/infodialog.py:304
+#: picard/ui/infodialog.py:414
msgid "Sample rate:"
msgstr ""
-#: picard/ui/infodialog.py:306
+#: picard/ui/infodialog.py:416
msgid "Bits per sample:"
msgstr ""
-#: picard/ui/infodialog.py:310
+#: picard/ui/infodialog.py:420
msgid "Mono"
msgstr ""
-#: picard/ui/infodialog.py:312
+#: picard/ui/infodialog.py:422
msgid "Stereo"
msgstr ""
-#: picard/ui/infodialog.py:313
+#: picard/ui/infodialog.py:423
msgid "Channels:"
msgstr ""
-#: picard/ui/infodialog.py:320
+#: picard/ui/infodialog.py:430
msgid "Album:"
msgstr ""
-#: picard/ui/infodialog.py:321
+#: picard/ui/infodialog.py:431
msgid "Artist:"
msgstr ""
-#: picard/ui/infodialog.py:351
+#: picard/ui/infodialog.py:461
#, python-format
msgid "Disc %d"
msgstr ""
-#: picard/ui/infodialog.py:353
+#: picard/ui/infodialog.py:463
msgid "Tracklist:"
msgstr ""
-#: picard/ui/infodialog.py:381
+#: picard/ui/infodialog.py:491
msgid "Album Info"
msgstr ""
-#: picard/ui/infodialog.py:395
+#: picard/ui/infodialog.py:505
msgid "Track Info"
msgstr ""
-#: picard/ui/infodialog.py:403 picard/ui/infodialog.py:407
-#: picard/ui/infodialog.py:425 picard/ui/ui_infodialog.py:87
+#: picard/ui/forms/ui_infodialog.py:87 picard/ui/infodialog.py:513
+#: picard/ui/infodialog.py:517 picard/ui/infodialog.py:535
msgid "&Info"
msgstr ""
-#: picard/ui/infodialog.py:408
+#: picard/ui/infodialog.py:518
#, python-format
msgid "%i file in this track"
msgid_plural "%i files in this track"
msgstr[0] ""
msgstr[1] ""
-#: picard/ui/infodialog.py:419
+#: picard/ui/infodialog.py:529
msgid "Cluster Info"
msgstr ""
@@ -2427,7 +2546,7 @@ msgstr ""
msgid "Estimated Time"
msgstr ""
-#: picard/ui/infostatus.py:72 picard/ui/options/plugins.py:625
+#: picard/ui/infostatus.py:72 picard/ui/options/plugins.py:624
msgid "Files"
msgstr ""
@@ -2443,398 +2562,161 @@ msgstr ""
msgid "Pending requests"
msgstr ""
-#: picard/ui/item.py:141
-#, python-format
-msgid "%i image"
-msgid_plural "%i images"
-msgstr[0] ""
-msgstr[1] ""
-
-#: picard/ui/item.py:144
-#, python-format
-msgid "%i image not in all tracks"
-msgid_plural "%i different images among tracks"
-msgstr[0] ""
-msgstr[1] ""
-
-#: picard/ui/itemviews.py:164 picard/util/tags.py:129
-msgid "Title"
+#: picard/ui/logview.py:182
+msgid "Log"
msgstr ""
-#: picard/ui/itemviews.py:165 picard/ui/searchdialog/track.py:62
-#: picard/util/tags.py:77
-msgid "Length"
+#: picard/ui/logview.py:193 picard/ui/logview.py:354
+msgid "Verbosity"
msgstr ""
-#: picard/ui/itemviews.py:167 picard/util/tags.py:43
-msgid "Album Artist"
+#: picard/ui/logview.py:200 picard/ui/logview.py:201
+msgid "Debug Options"
msgstr ""
-#: picard/ui/itemviews.py:168 picard/util/tags.py:57
-msgid "Composer"
+#: picard/ui/logview.py:211
+msgid "String to highlight"
msgstr ""
-#: picard/ui/itemviews.py:170 picard/util/tags.py:65
-msgid "Disc Subtitle"
+#: picard/ui/logview.py:216
+msgid "Highlight"
msgstr ""
-#: picard/ui/itemviews.py:171
-msgid "Track No."
+#: picard/ui/logview.py:225
+msgid "Clear Highlight"
msgstr ""
-#: picard/ui/itemviews.py:172
-msgid "Disc No."
+#: picard/ui/logview.py:231 picard/ui/logview.py:317
+msgid "Clear Log"
msgstr ""
-#: picard/ui/itemviews.py:173
-msgid "Catalog No."
+#: picard/ui/logview.py:236
+msgid "Save As…"
msgstr ""
-#: picard/ui/itemviews.py:175 picard/util/tags.py:81
-msgid "Media"
+#: picard/ui/logview.py:281 picard/ui/logview.py:288
+msgid "Save Log View to File"
msgstr ""
-#: picard/ui/itemviews.py:176
-msgid "Size"
+#: picard/ui/logview.py:289
+msgid "File already exists, do you really want to save to this file?"
msgstr ""
-#: picard/ui/itemviews.py:177 picard/util/tags.py:71
-msgid "Genre"
+#: picard/ui/logview.py:301
+msgid "Failed to save Log View to file"
msgstr ""
-#: picard/ui/itemviews.py:178
-msgid "Fingerprint status"
+#: picard/ui/logview.py:302
+#, python-format
+msgid "Something prevented data to be written to '%s'"
msgstr ""
-#: picard/ui/itemviews.py:180 picard/util/tags.py:101
-msgid "Original Release Date"
+#: picard/ui/logview.py:318
+msgid "Are you sure you want to clear the log?"
msgstr ""
-#: picard/ui/itemviews.py:181 picard/util/tags.py:112
-msgid "Release Date"
+#: picard/ui/logview.py:362
+msgid "Activity History"
msgstr ""
-#: picard/ui/itemviews.py:286
-msgid "Bad match"
-msgstr ""
+#: picard/ui/metadatabox.py:116
+#, python-format
+msgid "(different across %d item)"
+msgid_plural "(different across %d items)"
+msgstr[0] ""
+msgstr[1] ""
-#: picard/ui/itemviews.py:287
-msgid "Poor match"
-msgstr ""
+#: picard/ui/metadatabox.py:125
+#, python-format
+msgid "(missing from %d item)"
+msgid_plural "(missing from %d items)"
+msgstr[0] ""
+msgstr[1] ""
-#: picard/ui/itemviews.py:288
-msgid "Ok match"
+#: picard/ui/metadatabox.py:238
+msgid "metadata view"
msgstr ""
-#: picard/ui/itemviews.py:289
-msgid "Good match"
+#: picard/ui/metadatabox.py:239
+msgid "Displays original and new tags for the selected files"
msgstr ""
-#: picard/ui/itemviews.py:290
-msgid "Great match"
+#: picard/ui/metadatabox.py:241
+msgid "Tag"
msgstr ""
-#: picard/ui/itemviews.py:291
-msgid "Excellent match"
+#: picard/ui/metadatabox.py:241
+msgid "Original Value"
msgstr ""
-#: picard/ui/itemviews.py:405
-msgid "Restore default columns"
+#: picard/ui/metadatabox.py:241
+msgid "New Value"
msgstr ""
-#: picard/ui/itemviews.py:410
-msgid "Lock columns"
+#: picard/ui/metadatabox.py:262
+msgid "Add New Tag…"
msgstr ""
-#: picard/ui/itemviews.py:463
-msgid "&Expand all"
+#: picard/ui/metadatabox.py:264
+msgid "Show Changes First"
msgstr ""
-#: picard/ui/itemviews.py:465
-msgid "&Collapse all"
+#: picard/ui/metadatabox.py:269
+msgid "Alt+Shift+A"
msgstr ""
-#: picard/ui/itemviews.py:467
-msgid "Select &all"
+#: picard/ui/metadatabox.py:272
+msgid "Alt+Shift+E"
msgstr ""
-#: picard/ui/itemviews.py:469
-msgid "Ctrl+A"
+#: picard/ui/metadatabox.py:274
+msgid "Alt+Shift+R"
msgstr ""
-#: picard/ui/itemviews.py:555
-msgid "&Other versions"
+#: picard/ui/metadatabox.py:382
+msgid "Edit…"
msgstr ""
-#: picard/ui/itemviews.py:561
-msgid "Loading…"
+#: picard/ui/metadatabox.py:388
+msgid "Add to 'Preserve Tags' List"
msgstr ""
-#: picard/ui/itemviews.py:563
-msgid "Show &more details…"
+#: picard/ui/metadatabox.py:393
+msgid "Remove from 'Preserve Tags' List"
msgstr ""
-#: picard/ui/itemviews.py:617
-#, python-format
-msgid "&Other versions (%d)"
+#: picard/ui/mainwindow/actions.py:218 picard/ui/metadatabox.py:409
+msgid "Lookup in &Browser"
msgstr ""
-#: picard/ui/itemviews.py:644
-msgid "Collections"
-msgstr ""
+#: picard/ui/metadatabox.py:441
+msgid "Use Original Value"
+msgid_plural "Use Original Values"
+msgstr[0] ""
+msgstr[1] ""
-#: picard/ui/itemviews.py:650
-msgid "P&lugins"
+#: picard/ui/metadatabox.py:448
+msgid "&Copy"
msgstr ""
-#: picard/ui/itemviews.py:669
-msgid "&Run scripts"
+#: picard/ui/mainwindow/actions.py:102 picard/ui/metadatabox.py:452
+msgid "&Paste"
msgstr ""
-#: picard/ui/itemviews.py:874
-msgid "file view"
+#: picard/ui/newuserdialog.py:37
+msgid ""
+"Changes made by Picard are not "
+"reversible.
Picard is a very flexible music tagging tool "
+"which can rename your files and overwrite the tags. We strongly "
+"recommend that you:
- read the User Guide (also available from the Help "
+"menu)
- test with copies of your music and work in small "
+"batches
Picard is open source software written by volunteers."
+" It is provided as-is and with no warranty.
"
msgstr ""
-#: picard/ui/itemviews.py:875
-msgid "Contains unmatched files and clusters"
-msgstr ""
-
-#: picard/ui/itemviews.py:895
-msgid "Clusters"
-msgstr ""
-
-#: picard/ui/itemviews.py:905
-msgid "album view"
-msgstr ""
-
-#: picard/ui/itemviews.py:906
-msgid "Contains albums and matched files"
-msgstr ""
-
-#: picard/ui/itemviews.py:1058
-msgid "Processing error(s): See the Errors tab in the Album Info dialog"
-msgstr ""
-
-#: picard/ui/itemviews.py:1062
-msgid "Album modified and complete"
-msgstr ""
-
-#: picard/ui/itemviews.py:1065
-msgid "Album unchanged and complete"
-msgstr ""
-
-#: picard/ui/itemviews.py:1069
-msgid "Album modified"
-msgstr ""
-
-#: picard/ui/itemviews.py:1072
-msgid "Album unchanged"
-msgstr ""
-
-#: picard/ui/itemviews.py:1116
-msgid "There are no files matched to this track"
-msgstr ""
-
-#: picard/ui/itemviews.py:1118
-#, python-format
-msgid "%i matched file"
-msgid_plural "%i matched files"
-msgstr[0] ""
-msgstr[1] ""
-
-#: picard/ui/itemviews.py:1156
-msgid "Processing error(s): See the Errors tab in the Track Info dialog"
-msgstr ""
-
-#: picard/ui/itemviews.py:1198
-msgid "File not found"
-msgstr ""
-
-#: picard/ui/itemviews.py:1201
-msgid "File permission error"
-msgstr ""
-
-#: picard/ui/itemviews.py:1204
-msgid "Processing error(s): See the Errors tab in the File Info dialog"
-msgstr ""
-
-#: picard/ui/itemviews.py:1208
-msgid "Track saved"
-msgstr ""
-
-#: picard/ui/itemviews.py:1212 picard/ui/itemviews.py:1219
-msgid "Pending"
-msgstr ""
-
-#: picard/ui/itemviews.py:1233
-msgid "Fingerprint has already been submitted"
-msgstr ""
-
-#: picard/ui/itemviews.py:1236
-msgid "Unsubmitted fingerprint"
-msgstr ""
-
-#: picard/ui/itemviews.py:1239
-msgid ""
-"No fingerprint was calculated for this file, use \"Scan\" or \"Generate "
-"AcoustID Fingerprints\" to calculate the fingerprint."
-msgstr ""
-
-#: picard/ui/logview.py:181
-msgid "Log"
-msgstr ""
-
-#: picard/ui/logview.py:192 picard/ui/logview.py:353
-msgid "Verbosity"
-msgstr ""
-
-#: picard/ui/logview.py:199 picard/ui/logview.py:200
-msgid "Debug Options"
-msgstr ""
-
-#: picard/ui/logview.py:210
-msgid "String to highlight"
-msgstr ""
-
-#: picard/ui/logview.py:215
-msgid "Highlight"
-msgstr ""
-
-#: picard/ui/logview.py:224
-msgid "Clear Highlight"
-msgstr ""
-
-#: picard/ui/logview.py:230 picard/ui/logview.py:316
-msgid "Clear Log"
-msgstr ""
-
-#: picard/ui/logview.py:235
-msgid "Save As…"
-msgstr ""
-
-#: picard/ui/logview.py:280 picard/ui/logview.py:287
-msgid "Save Log View to File"
-msgstr ""
-
-#: picard/ui/logview.py:288
-msgid "File already exists, do you really want to save to this file?"
-msgstr ""
-
-#: picard/ui/logview.py:300
-msgid "Failed to save Log View to file"
-msgstr ""
-
-#: picard/ui/logview.py:301
-#, python-format
-msgid "Something prevented data to be written to '%s'"
-msgstr ""
-
-#: picard/ui/logview.py:317
-msgid "Are you sure you want to clear the log?"
-msgstr ""
-
-#: picard/ui/logview.py:361
-msgid "Activity History"
-msgstr ""
-
-#: picard/ui/metadatabox.py:112
-#, python-format
-msgid "(different across %d item)"
-msgid_plural "(different across %d items)"
-msgstr[0] ""
-msgstr[1] ""
-
-#: picard/ui/metadatabox.py:120
-#, python-format
-msgid "(missing from %d item)"
-msgid_plural "(missing from %d items)"
-msgstr[0] ""
-msgstr[1] ""
-
-#: picard/ui/metadatabox.py:214
-msgid "metadata view"
-msgstr ""
-
-#: picard/ui/metadatabox.py:215
-msgid "Displays original and new tags for the selected files"
-msgstr ""
-
-#: picard/ui/metadatabox.py:217
-msgid "Tag"
-msgstr ""
-
-#: picard/ui/metadatabox.py:217
-msgid "Original Value"
-msgstr ""
-
-#: picard/ui/metadatabox.py:217
-msgid "New Value"
-msgstr ""
-
-#: picard/ui/metadatabox.py:237
-msgid "Add New Tag…"
-msgstr ""
-
-#: picard/ui/metadatabox.py:239
-msgid "Show Changes First"
-msgstr ""
-
-#: picard/ui/metadatabox.py:244
-msgid "Alt+Shift+A"
-msgstr ""
-
-#: picard/ui/metadatabox.py:247
-msgid "Alt+Shift+E"
-msgstr ""
-
-#: picard/ui/metadatabox.py:249
-msgid "Alt+Shift+R"
-msgstr ""
-
-#: picard/ui/metadatabox.py:369
-msgid "Edit…"
-msgstr ""
-
-#: picard/ui/metadatabox.py:375
-msgid "Add to 'Preserve Tags' List"
-msgstr ""
-
-#: picard/ui/metadatabox.py:380
-msgid "Remove from 'Preserve Tags' List"
-msgstr ""
-
-#: picard/ui/mainwindow/actions.py:218 picard/ui/metadatabox.py:396
-msgid "Lookup in &Browser"
-msgstr ""
-
-#: picard/ui/metadatabox.py:428
-msgid "Use Original Value"
-msgid_plural "Use Original Values"
-msgstr[0] ""
-msgstr[1] ""
-
-#: picard/ui/metadatabox.py:435
-msgid "&Copy"
-msgstr ""
-
-#: picard/ui/mainwindow/actions.py:102 picard/ui/metadatabox.py:439
-msgid "&Paste"
-msgstr ""
-
-#: picard/ui/newuserdialog.py:37
-msgid ""
-"Changes made by Picard are not "
-"reversible.
Picard is a very flexible music tagging tool "
-"which can rename your files and overwrite the tags. We strongly "
-"recommend that you:
- read the User Guide (also available from the Help "
-"menu)
- test with copies of your music and work in small "
-"batches
Picard is open source software written by volunteers."
-" It is provided as-is and with no warranty.
"
-msgstr ""
-
-#: picard/ui/newuserdialog.py:52
-msgid "Show this message again the next time you start Picard."
+#: picard/ui/newuserdialog.py:52
+msgid "Show this message again the next time you start Picard."
msgstr ""
#: picard/ui/newuserdialog.py:57
@@ -2855,64 +2737,64 @@ msgid ""
"password."
msgstr ""
-#: picard/ui/playertoolbar.py:194
+#: picard/ui/playertoolbar.py:200
msgid "Internal player: The format of a media resource isn't (fully) supported"
msgstr ""
-#: picard/ui/playertoolbar.py:196
+#: picard/ui/playertoolbar.py:202
msgid ""
"Internal player: There are not the appropriate permissions to play a "
"media resource"
msgstr ""
-#: picard/ui/playertoolbar.py:198
+#: picard/ui/playertoolbar.py:204
#, python-format
msgid "Internal player: %(error)s, %(message)s"
msgstr ""
-#: picard/ui/playertoolbar.py:207
+#: picard/ui/playertoolbar.py:213
msgid "Player"
msgstr ""
-#: picard/ui/playertoolbar.py:215
+#: picard/ui/playertoolbar.py:222
msgid "Play"
msgstr ""
-#: picard/ui/playertoolbar.py:216
+#: picard/ui/playertoolbar.py:223
msgid "Play selected files"
msgstr ""
-#: picard/ui/playertoolbar.py:222
+#: picard/ui/playertoolbar.py:229
msgid "Pause"
msgstr ""
-#: picard/ui/playertoolbar.py:223
+#: picard/ui/playertoolbar.py:230
msgid "Pause or resume current playback"
msgstr ""
-#: picard/ui/playertoolbar.py:365
+#: picard/ui/playertoolbar.py:374
#, python-format
msgid "%1.1f ×"
msgstr ""
-#: picard/ui/playertoolbar.py:371
+#: picard/ui/playertoolbar.py:380
msgid "Change playback speed"
msgstr ""
-#: picard/ui/playertoolbar.py:378
+#: picard/ui/playertoolbar.py:387
msgid "Playback speed"
msgstr ""
-#: picard/ui/playertoolbar.py:421
+#: picard/ui/playertoolbar.py:430
#, python-format
msgid "%d%%"
msgstr ""
-#: picard/ui/playertoolbar.py:427
+#: picard/ui/playertoolbar.py:436
msgid "Change audio volume"
msgstr ""
-#: picard/ui/playertoolbar.py:433
+#: picard/ui/playertoolbar.py:442
msgid "Audio volume"
msgstr ""
@@ -2997,11 +2879,11 @@ msgstr ""
msgid "File Save Warning"
msgstr ""
-#: picard/ui/scripteditor.py:147
+#: picard/ui/scripteditor.py:148
msgid "Renaming options are disabled"
msgstr ""
-#: picard/ui/scripteditor.py:220
+#: picard/ui/scripteditor.py:221
#, python-format
msgid ""
"If you select files from the Cluster pane or Album pane prior to opening "
@@ -3010,155 +2892,155 @@ msgid ""
"then some default examples will be provided."
msgstr ""
-#: picard/ui/scripteditor.py:232
+#: picard/ui/scripteditor.py:233
#, python-format
msgid ""
"Reload up to %u items chosen at random from files selected in the main "
"window"
msgstr ""
-#: picard/ui/scripteditor.py:352 picard/ui/scripteditor.py:1247
+#: picard/ui/scripteditor.py:353 picard/ui/scripteditor.py:1248
msgid "Confirm"
msgstr ""
-#: picard/ui/scripteditor.py:426
+#: picard/ui/scripteditor.py:427
msgid "File naming script editor"
msgstr ""
-#: picard/ui/scripteditor.py:481
+#: picard/ui/scripteditor.py:482
msgid "Reset"
msgstr ""
-#: picard/ui/options/dialog.py:189 picard/ui/scripteditor.py:486
+#: picard/ui/options/dialog.py:192 picard/ui/scripteditor.py:487
msgid "Make It So!"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:579 picard/ui/scripteditor.py:555
+#: picard/ui/mainwindow/__init__.py:581 picard/ui/scripteditor.py:556
msgid "&File"
msgstr ""
-#: picard/ui/scripteditor.py:558
+#: picard/ui/scripteditor.py:559
msgid "&Import a script file"
msgstr ""
-#: picard/ui/scripteditor.py:559
+#: picard/ui/scripteditor.py:560
msgid "Import a file as a new script"
msgstr ""
-#: picard/ui/scripteditor.py:564
+#: picard/ui/scripteditor.py:565
msgid "&Export a script file"
msgstr ""
-#: picard/ui/scripteditor.py:565
+#: picard/ui/scripteditor.py:566
msgid "Export the script to a file"
msgstr ""
-#: picard/ui/scripteditor.py:570
+#: picard/ui/scripteditor.py:571
msgid "&Reset all scripts"
msgstr ""
-#: picard/ui/scripteditor.py:571
+#: picard/ui/scripteditor.py:572
msgid "Reset all scripts to the saved values"
msgstr ""
-#: picard/ui/scripteditor.py:576
+#: picard/ui/scripteditor.py:577
msgid "&Save and exit"
msgstr ""
-#: picard/ui/scripteditor.py:577
+#: picard/ui/scripteditor.py:578
msgid "Save changes to the script settings and exit"
msgstr ""
-#: picard/ui/scripteditor.py:582
+#: picard/ui/scripteditor.py:583
msgid "E&xit without saving"
msgstr ""
-#: picard/ui/scripteditor.py:583
+#: picard/ui/scripteditor.py:584
msgid "Close the script editor without saving changes"
msgstr ""
-#: picard/ui/scripteditor.py:588
+#: picard/ui/scripteditor.py:589
msgid "&Script"
msgstr ""
-#: picard/ui/scripteditor.py:591
+#: picard/ui/scripteditor.py:592
msgid "View/Edit Script &Metadata"
msgstr ""
-#: picard/ui/scripteditor.py:592
+#: picard/ui/scripteditor.py:593
msgid "Display the details for the script"
msgstr ""
-#: picard/ui/scripteditor.py:594
+#: picard/ui/scripteditor.py:595
msgid "Ctrl+M"
msgstr ""
-#: picard/ui/scripteditor.py:597
+#: picard/ui/scripteditor.py:598
msgid "Add a &new script"
msgstr ""
-#: picard/ui/scripteditor.py:602
+#: picard/ui/scripteditor.py:603
msgid "&Copy the current script"
msgstr ""
-#: picard/ui/scripteditor.py:603
+#: picard/ui/scripteditor.py:604
msgid "Save a copy of the script as a new script"
msgstr ""
-#: picard/ui/scripteditor.py:608
+#: picard/ui/scripteditor.py:609
msgid "&Delete the current script"
msgstr ""
-#: picard/ui/scripteditor.py:609
+#: picard/ui/scripteditor.py:610
msgid "Delete the script"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:603 picard/ui/scripteditor.py:615
+#: picard/ui/mainwindow/__init__.py:605 picard/ui/scripteditor.py:616
msgid "&View"
msgstr ""
-#: picard/ui/scripteditor.py:618
+#: picard/ui/scripteditor.py:619
msgid "&Reload random example files"
msgstr ""
-#: picard/ui/scripteditor.py:627
+#: picard/ui/scripteditor.py:628
msgid "&Show documentation"
msgstr ""
-#: picard/ui/scripteditor.py:628
+#: picard/ui/scripteditor.py:629
msgid "View the scripting documentation in a sidebar"
msgstr ""
-#: picard/ui/mainwindow/actions.py:497 picard/ui/scripteditor.py:630
+#: picard/ui/mainwindow/actions.py:497 picard/ui/scripteditor.py:631
msgid "Ctrl+H"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:653 picard/ui/scripteditor.py:636
-#: picard/ui/util.py:60
+#: picard/ui/mainwindow/__init__.py:655 picard/ui/scripteditor.py:637
+#: picard/ui/util.py:61
msgid "&Help"
msgstr ""
-#: picard/ui/mainwindow/actions.py:111 picard/ui/scripteditor.py:639
+#: picard/ui/mainwindow/actions.py:111 picard/ui/scripteditor.py:640
msgid "&Help…"
msgstr ""
-#: picard/ui/scripteditor.py:644
+#: picard/ui/scripteditor.py:645
msgid "&Scripting documentation…"
msgstr ""
-#: picard/ui/scripteditor.py:645
+#: picard/ui/scripteditor.py:646
msgid "Open the scripting documentation in your browser"
msgstr ""
-#: picard/ui/scripteditor.py:663
+#: picard/ui/scripteditor.py:664
msgid "Empty / blank script"
msgstr ""
-#: picard/ui/scripteditor.py:663
+#: picard/ui/scripteditor.py:664
msgid "New Script"
msgstr ""
-#: picard/ui/scripteditor.py:756
+#: picard/ui/scripteditor.py:757
msgid ""
"At least one unsaved script has been attached to an option profile.\n"
"\n"
@@ -3173,20 +3055,20 @@ msgid ""
"Are you sure that you want to continue?"
msgstr ""
-#: picard/ui/scripteditor.py:878
+#: picard/ui/scripteditor.py:879
msgid "There is already a script with that title."
msgstr ""
-#: picard/ui/scripteditor.py:881 picard/ui/scripteditor.py:1186
-#: picard/ui/scripteditor.py:1415
+#: picard/ui/scripteditor.py:882 picard/ui/scripteditor.py:1187
+#: picard/ui/scripteditor.py:1416
msgid "The script title must not be empty."
msgstr ""
-#: picard/ui/scripteditor.py:1132
+#: picard/ui/scripteditor.py:1133
msgid "Error Deleting Script"
msgstr ""
-#: picard/ui/scripteditor.py:1133
+#: picard/ui/scripteditor.py:1134
#, python-format
msgid ""
"The script could not be deleted because it is used in one of the user "
@@ -3195,45 +3077,45 @@ msgid ""
"Profile: %s"
msgstr ""
-#: picard/ui/scripteditor.py:1143
+#: picard/ui/scripteditor.py:1144
msgid "Are you sure that you want to delete the script?"
msgstr ""
-#: picard/ui/options/scripting.py:160 picard/ui/scripteditor.py:1228
+#: picard/ui/options/scripting.py:164 picard/ui/scripteditor.py:1229
msgid "File Error"
msgstr ""
-#: picard/ui/scripteditor.py:1249
+#: picard/ui/scripteditor.py:1250
msgid ""
"A script named \"{script_name}\" already exists.\n"
"\n"
"Do you want to overwrite it, add as a copy or cancel?"
msgstr ""
-#: picard/ui/scripteditor.py:1256
+#: picard/ui/scripteditor.py:1257
msgid "Overwrite"
msgstr ""
-#: picard/ui/options/profiles.py:116 picard/ui/scripteditor.py:1258
+#: picard/ui/options/profiles.py:117 picard/ui/scripteditor.py:1259
msgid "Copy"
msgstr ""
-#: picard/ui/options/renaming.py:262 picard/ui/scripteditor.py:1304
+#: picard/ui/options/renaming.py:262 picard/ui/scripteditor.py:1305
msgid "The file naming format must not be empty."
msgstr ""
-#: picard/ui/scripteditor.py:1341
+#: picard/ui/scripteditor.py:1342
msgid "Script Details"
msgstr ""
-#: picard/ui/scripteditor.py:1394
+#: picard/ui/scripteditor.py:1395
msgid ""
"There are unsaved changes to the current metadata.\n"
"\n"
"Do you want to continue and lose these changes?"
msgstr ""
-#: picard/ui/scriptsmenu.py:63
+#: picard/ui/scriptsmenu.py:61
#, python-format
msgid "Script error in \"%(script)s\": %(message)s"
msgstr ""
@@ -3242,586 +3124,720 @@ msgstr ""
msgid "File Name"
msgstr ""
-#: picard/ui/ui_aboutdialog.py:89
+#: picard/ui/util.py:59
+msgid "&Ok"
+msgstr ""
+
+#: picard/ui/forms/ui_cdlookup.py:97 picard/ui/util.py:60
+msgid "&Cancel"
+msgstr ""
+
+#: picard/ui/util.py:62
+msgid "Clos&e"
+msgstr ""
+
+#: picard/ui/util.py:86
+#, python-format
+msgid "%s - %s"
+msgstr ""
+
+#: picard/ui/util.py:108
+msgid "Select a file or a directory"
+msgstr ""
+
+#: picard/ui/util.py:114
+msgid "Select a target file"
+msgstr ""
+
+#: picard/ui/util.py:123
+msgid "Select a file"
+msgstr ""
+
+#: picard/ui/util.py:132
+msgid "Select one or more files"
+msgstr ""
+
+#: picard/ui/util.py:141
+msgid "Select a directory"
+msgstr ""
+
+#: picard/ui/util.py:154
+msgid "Select one or more directories"
+msgstr ""
+
+#: picard/ui/util.py:204
+msgid "You have to restart Picard for the changes to take effect."
+msgstr ""
+
+#: picard/ui/util.py:207
+msgid "Changes only applied on restart"
+msgstr ""
+
+#: picard/ui/forms/ui_aboutdialog.py:89
msgid "About Picard"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:201 picard/ui/ui_aboutdialog.py:90
+#: picard/ui/forms/ui_aboutdialog.py:90 picard/ui/mainwindow/__init__.py:201
msgid "MusicBrainz Picard"
msgstr ""
-#: picard/ui/options/cdlookup.py:49 picard/ui/ui_cdlookup.py:91
-#: picard/ui/ui_options_cdlookup.py:46
-#: picard/ui/ui_options_cdlookup_select.py:53
+#: picard/ui/forms/ui_cdlookup.py:91 picard/ui/forms/ui_options_cdlookup.py:46
+#: picard/ui/forms/ui_options_cdlookup_select.py:53
+#: picard/ui/options/cdlookup.py:49
msgid "CD Lookup"
msgstr ""
-#: picard/ui/ui_cdlookup.py:92
+#: picard/ui/forms/ui_cdlookup.py:92
msgid "The following releases on MusicBrainz match the CD:"
msgstr ""
-#: picard/ui/ui_cdlookup.py:93
+#: picard/ui/forms/ui_cdlookup.py:93
msgid "No matching releases found for this disc."
msgstr ""
-#: picard/ui/ui_cdlookup.py:94
+#: picard/ui/forms/ui_cdlookup.py:94
msgid "Submit disc ID"
msgstr ""
-#: picard/ui/ui_cdlookup.py:95
+#: picard/ui/forms/ui_cdlookup.py:95
msgid "&Load into Picard"
msgstr ""
-#: picard/ui/ui_cdlookup.py:96
+#: picard/ui/forms/ui_cdlookup.py:96
msgid "&Submit disc ID"
msgstr ""
-#: picard/ui/ui_cdlookup.py:97 picard/ui/util.py:59
-msgid "&Cancel"
-msgstr ""
-
-#: picard/ui/ui_edittagdialog.py:121
+#: picard/ui/forms/ui_edittagdialog.py:121
msgid "Edit Tag"
msgstr ""
-#: picard/ui/ui_edittagdialog.py:122
+#: picard/ui/forms/ui_edittagdialog.py:122
msgid "Edit value"
msgstr ""
-#: picard/ui/ui_edittagdialog.py:123
+#: picard/ui/forms/ui_edittagdialog.py:123
msgid "Add value"
msgstr ""
-#: picard/ui/ui_edittagdialog.py:124
+#: picard/ui/forms/ui_edittagdialog.py:124
msgid "Remove value"
msgstr ""
-#: picard/ui/ui_edittagdialog.py:125 picard/ui/ui_edittagdialog.py:126
+#: picard/ui/forms/ui_edittagdialog.py:125
+#: picard/ui/forms/ui_edittagdialog.py:126
msgid "Move selected value up"
msgstr ""
-#: picard/ui/ui_edittagdialog.py:127 picard/ui/ui_edittagdialog.py:128
+#: picard/ui/forms/ui_edittagdialog.py:127
+#: picard/ui/forms/ui_edittagdialog.py:128
msgid "Move selected value down"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:111
+#: picard/ui/forms/ui_exception_script_selector.py:111
msgid "Exception Language Script Selector"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:112
+#: picard/ui/forms/ui_exception_script_selector.py:112
msgid "Selected Scripts"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:113
+#: picard/ui/forms/ui_exception_script_selector.py:113
msgid "Selected language script match threshold:"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:114
+#: picard/ui/forms/ui_exception_script_selector.py:114
msgid "Move selected language script up"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:115
+#: picard/ui/forms/ui_exception_script_selector.py:115
msgid "Add to selected language scripts"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:116
+#: picard/ui/forms/ui_exception_script_selector.py:116
msgid "Remove selected language script"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:117
+#: picard/ui/forms/ui_exception_script_selector.py:117
msgid "Move selected language script down"
msgstr ""
-#: picard/ui/ui_exception_script_selector.py:118
+#: picard/ui/forms/ui_exception_script_selector.py:118
msgid "Available Language Scripts"
msgstr ""
-#: picard/ui/ui_infodialog.py:88
+#: picard/ui/forms/ui_infodialog.py:88
msgid "&Error"
msgstr ""
-#: picard/ui/ui_infodialog.py:89
+#: picard/ui/forms/ui_infodialog.py:89
msgid "A&rtwork"
msgstr ""
-#: picard/ui/ui_infostatus.py:112 picard/ui/ui_provider_options_caa.py:74
-#: picard/ui/ui_provider_options_local.py:58
-#: picard/ui/ui_widget_taglisteditor.py:74
+#: picard/ui/forms/ui_infostatus.py:112
+#: picard/ui/forms/ui_options_cover_processing.py:276
+#: picard/ui/forms/ui_provider_options_caa.py:74
+#: picard/ui/forms/ui_provider_options_local.py:58
+#: picard/ui/forms/ui_widget_taglisteditor.py:74
msgid "Form"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:91
+#: picard/ui/forms/ui_multi_locale_selector.py:91
msgid "Locale Selector"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:92
+#: picard/ui/forms/ui_multi_locale_selector.py:92
msgid "Selected Locales"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:93
+#: picard/ui/forms/ui_multi_locale_selector.py:93
msgid "Move selected locale up"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:94
+#: picard/ui/forms/ui_multi_locale_selector.py:94
msgid "Add to selected locales"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:95
+#: picard/ui/forms/ui_multi_locale_selector.py:95
msgid "Remove selected locale"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:96
+#: picard/ui/forms/ui_multi_locale_selector.py:96
msgid "Move selected locale down"
msgstr ""
-#: picard/ui/ui_multi_locale_selector.py:97
+#: picard/ui/forms/ui_multi_locale_selector.py:97
msgid "Available Locales"
msgstr ""
-#: picard/ui/ui_options.py:56
+#: picard/ui/forms/ui_options.py:56
msgid "Options"
msgstr ""
-#: picard/ui/ui_options_advanced.py:144
+#: picard/ui/forms/ui_options_advanced.py:144
msgid "Advanced options"
msgstr ""
-#: picard/ui/ui_options_advanced.py:145
+#: picard/ui/forms/ui_options_advanced.py:145
msgid "Ignore file paths matching the following regular expression:"
msgstr ""
-#: picard/ui/ui_options_advanced.py:147
+#: picard/ui/forms/ui_options_advanced.py:147
msgid "Ignore track duration difference under this number of seconds"
msgstr ""
-#: picard/ui/ui_options_advanced.py:150
+#: picard/ui/forms/ui_options_advanced.py:150
msgid "Ignore the following tracks when determining whether a release is complete"
msgstr ""
-#: picard/ui/ui_options_advanced.py:151
+#: picard/ui/forms/ui_options_advanced.py:151
msgid "Video tracks"
msgstr ""
-#: picard/ui/ui_options_advanced.py:152
+#: picard/ui/forms/ui_options_advanced.py:152
msgid "Data tracks"
msgstr ""
-#: picard/ui/ui_options_advanced.py:153
+#: picard/ui/forms/ui_options_advanced.py:153
msgid "Pregap tracks"
msgstr ""
-#: picard/ui/ui_options_advanced.py:154
+#: picard/ui/forms/ui_options_advanced.py:154
msgid "Silent tracks"
msgstr ""
-#: picard/ui/ui_options_advanced.py:155
+#: picard/ui/forms/ui_options_advanced.py:155
msgid "Tags to ignore for comparison:"
msgstr ""
-#: picard/ui/options/dialog.py:284 picard/ui/ui_options_attached_profiles.py:40
+#: picard/ui/forms/ui_options_attached_profiles.py:40
+#: picard/ui/options/dialog.py:287
msgid "Profiles Attached to Options"
msgstr ""
-#: picard/ui/ui_options_cdlookup.py:47
+#: picard/ui/forms/ui_options_cdlookup.py:47
msgid "CD-ROM device to use for lookups:"
msgstr ""
-#: picard/ui/ui_options_cdlookup_select.py:54
+#: picard/ui/forms/ui_options_cdlookup_select.py:54
msgid "Default CD-ROM drive to use for lookups:"
msgstr ""
-#: picard/ui/ui_options_cover.py:104
+#: picard/ui/forms/ui_options_cover.py:121
+msgid "Never replace cover images matching selected types"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover.py:122
+msgid "Select Types..."
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover.py:124
msgid "Use the following file name for images:"
msgstr ""
-#: picard/ui/ui_options_cover.py:105
+#: picard/ui/forms/ui_options_cover.py:125
msgid "Overwrite the file if it already exists"
msgstr ""
-#: picard/ui/ui_options_cover.py:108
+#: picard/ui/forms/ui_options_cover.py:128
msgid "Cover Art Providers"
msgstr ""
-#: picard/ui/ui_options_cover.py:109
+#: picard/ui/forms/ui_options_cover.py:129
msgid "Reorder Priority:"
msgstr ""
-#: picard/ui/ui_options_cover.py:110
-#: picard/ui/ui_options_interface_toolbar.py:83
+#: picard/ui/forms/ui_options_cover.py:130
+#: picard/ui/forms/ui_options_interface_toolbar.py:83
msgid "Move selected item up"
msgstr ""
-#: picard/ui/ui_options_cover.py:111
-#: picard/ui/ui_options_interface_toolbar.py:84
+#: picard/ui/forms/ui_options_cover.py:131
+#: picard/ui/forms/ui_options_interface_toolbar.py:84
msgid "Move selected item down"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:103
+#: picard/ui/forms/ui_options_cover_processing.py:277
+msgid "Discard images if below the given size"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:278
+msgid "Minimum width:"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:279
+#: picard/ui/forms/ui_options_cover_processing.py:281
+#: picard/ui/forms/ui_options_cover_processing.py:285
+#: picard/ui/forms/ui_options_cover_processing.py:287
+#: picard/ui/forms/ui_options_cover_processing.py:291
+#: picard/ui/forms/ui_options_cover_processing.py:293
+msgid "px"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:280
+msgid "Minimum height:"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:282
+msgid "Resize images to the given size"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:283
+msgid "Resize images saved to tags "
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:284
+#: picard/ui/forms/ui_options_cover_processing.py:290
+msgid "Maximum width:"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:286
+#: picard/ui/forms/ui_options_cover_processing.py:292
+msgid "Maximum height:"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:288
+#: picard/ui/forms/ui_options_cover_processing.py:294
+msgid "Enlarge"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:289
+msgid "Resize images saved to files"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:295
+msgid "Convert images to the given format"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:296
+msgid "Convert images saved to tags"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:297
+#: picard/ui/forms/ui_options_cover_processing.py:299
+msgid "New format:"
+msgstr ""
+
+#: picard/ui/forms/ui_options_cover_processing.py:298
+msgid "Convert images saved to files"
+msgstr ""
+
+#: picard/ui/forms/ui_options_fingerprinting.py:103
msgid "Audio Fingerprinting"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:104
+#: picard/ui/forms/ui_options_fingerprinting.py:104
msgid "Do not use audio fingerprinting"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:105
+#: picard/ui/forms/ui_options_fingerprinting.py:105
msgid "Use AcoustID"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:106
+#: picard/ui/forms/ui_options_fingerprinting.py:106
msgid "AcoustID Settings"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:107
+#: picard/ui/forms/ui_options_fingerprinting.py:107
msgid "Ignore existing AcoustID fingerprints"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:108
+#: picard/ui/forms/ui_options_fingerprinting.py:108
msgid "Save AcoustID fingerprints to file tags"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:109
+#: picard/ui/forms/ui_options_fingerprinting.py:109
msgid "Maximum threads to use for calculator:"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:110
+#: picard/ui/forms/ui_options_fingerprinting.py:110
msgid "Fingerprint calculator:"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:111
-#: picard/ui/ui_options_interface.py:138
-#: picard/ui/ui_options_maintenance.py:146 picard/ui/ui_options_renaming.py:158
+#: picard/ui/forms/ui_options_fingerprinting.py:111
+#: picard/ui/forms/ui_options_interface.py:138
+#: picard/ui/forms/ui_options_maintenance.py:146
+#: picard/ui/forms/ui_options_renaming.py:158
msgid "Browse…"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:112
+#: picard/ui/forms/ui_options_fingerprinting.py:112
msgid "Download…"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:113
+#: picard/ui/forms/ui_options_fingerprinting.py:113
msgid "API key:"
msgstr ""
-#: picard/ui/ui_options_fingerprinting.py:114
+#: picard/ui/forms/ui_options_fingerprinting.py:114
msgid "Get API key…"
msgstr ""
-#: picard/ui/ui_options_general.py:205
+#: picard/ui/forms/ui_options_general.py:205
msgid "MusicBrainz Server"
msgstr ""
-#: picard/ui/ui_options_general.py:206
+#: picard/ui/forms/ui_options_general.py:206
msgid ""
"You have configured an unofficial MusicBrainz server. By default "
"submissions of releases, recordings and disc IDs will go to the primary "
"database on musicbrainz.org."
msgstr ""
-#: picard/ui/ui_options_general.py:207
+#: picard/ui/forms/ui_options_general.py:207
msgid "Submit data to the configured server"
msgstr ""
-#: picard/ui/ui_options_general.py:208 picard/ui/ui_options_network.py:166
+#: picard/ui/forms/ui_options_general.py:208
+#: picard/ui/forms/ui_options_network.py:166
msgid "Port:"
msgstr ""
-#: picard/ui/ui_options_general.py:209 picard/ui/ui_options_network.py:168
+#: picard/ui/forms/ui_options_general.py:209
+#: picard/ui/forms/ui_options_network.py:168
msgid "Server address:"
msgstr ""
-#: picard/ui/ui_options_general.py:211
+#: picard/ui/forms/ui_options_general.py:211
msgid "Log in"
msgstr ""
-#: picard/ui/ui_options_general.py:212
+#: picard/ui/forms/ui_options_general.py:212
msgid "Log out"
msgstr ""
-#: picard/ui/options/general.py:59 picard/ui/ui_options_general.py:213
+#: picard/ui/forms/ui_options_general.py:213 picard/ui/options/general.py:57
msgid "General"
msgstr ""
-#: picard/ui/ui_options_general.py:217
+#: picard/ui/forms/ui_options_general.py:217
msgid "Update Checking"
msgstr ""
-#: picard/ui/ui_options_general.py:220
+#: picard/ui/forms/ui_options_general.py:220
msgid "Days between checks:"
msgstr ""
-#: picard/ui/ui_options_general.py:221
+#: picard/ui/forms/ui_options_general.py:221
msgid "Updates to check:"
msgstr ""
-#: picard/ui/ui_options_genres.py:127
+#: picard/ui/forms/ui_options_genres.py:127
msgid ""
"Fall back on album's artists genres if no genres are found for the "
"release or release group"
msgstr ""
-#: picard/ui/ui_options_genres.py:129
+#: picard/ui/forms/ui_options_genres.py:129
msgid "Minimal genre usage:"
msgstr ""
-#: picard/ui/ui_options_genres.py:130 picard/ui/ui_options_matching.py:79
-#: picard/ui/ui_options_matching.py:80 picard/ui/ui_options_matching.py:81
+#: picard/ui/forms/ui_options_genres.py:130
+#: picard/ui/forms/ui_options_matching.py:79
+#: picard/ui/forms/ui_options_matching.py:80
+#: picard/ui/forms/ui_options_matching.py:81
msgid " %"
msgstr ""
-#: picard/ui/ui_options_genres.py:131
+#: picard/ui/forms/ui_options_genres.py:131
msgid "Maximum number of genres:"
msgstr ""
-#: picard/ui/ui_options_genres.py:132
+#: picard/ui/forms/ui_options_genres.py:132
msgid "Join multiple genres with:"
msgstr ""
-#: picard/ui/ui_options_genres.py:133
+#: picard/ui/forms/ui_options_genres.py:133
msgid " / "
msgstr ""
-#: picard/ui/ui_options_genres.py:134
+#: picard/ui/forms/ui_options_genres.py:134
msgid ", "
msgstr ""
-#: picard/ui/ui_options_genres.py:135
+#: picard/ui/forms/ui_options_genres.py:135
msgid "Genres or folksonomy tags to include or exclude, one per line:"
msgstr ""
-#: picard/ui/ui_options_genres.py:136
+#: picard/ui/forms/ui_options_genres.py:136
msgid "Playground for genres or folksonomy tags filters (cleared on exit):"
msgstr ""
-#: picard/ui/ui_options_interface.py:124
+#: picard/ui/forms/ui_options_interface.py:124
msgid "Appearance"
msgstr ""
-#: picard/ui/ui_options_interface.py:127
+#: picard/ui/forms/ui_options_interface.py:127
msgid "User interface language:"
msgstr ""
-#: picard/ui/ui_options_interface.py:128
+#: picard/ui/forms/ui_options_interface.py:128
msgid "User interface color theme:"
msgstr ""
-#: picard/ui/ui_options_interface.py:129
+#: picard/ui/forms/ui_options_interface.py:129
msgid "Miscellaneous"
msgstr ""
-#: picard/ui/searchdialog/__init__.py:96 picard/ui/ui_options_interface.py:132
+#: picard/ui/forms/ui_options_interface.py:132
+#: picard/ui/searchdialog/__init__.py:96
msgid "Use advanced query syntax"
msgstr ""
-#: picard/ui/ui_options_interface.py:133
+#: picard/ui/forms/ui_options_interface.py:133
msgid "Show the new user dialog when starting Picard"
msgstr ""
-#: picard/ui/ui_options_interface.py:137
+#: picard/ui/forms/ui_options_interface.py:137
msgid "Begin browsing in the following directory:"
msgstr ""
-#: picard/ui/options/interface_colors.py:93
-#: picard/ui/ui_options_interface_colors.py:55
+#: picard/ui/forms/ui_options_interface_colors.py:55
+#: picard/ui/options/interface_colors.py:99
msgid "Colors"
msgstr ""
-#: picard/ui/ui_options_interface_toolbar.py:78
+#: picard/ui/forms/ui_options_interface_toolbar.py:78
msgid "Customize Action Toolbar"
msgstr ""
-#: picard/ui/ui_options_interface_toolbar.py:79
+#: picard/ui/forms/ui_options_interface_toolbar.py:79
msgid "Add a new button to Toolbar"
msgstr ""
-#: picard/ui/ui_options_interface_toolbar.py:80
+#: picard/ui/forms/ui_options_interface_toolbar.py:80
msgid "Add Action"
msgstr ""
-#: picard/ui/ui_options_interface_toolbar.py:81
+#: picard/ui/forms/ui_options_interface_toolbar.py:81
msgid "Insert a separator"
msgstr ""
-#: picard/ui/ui_options_interface_toolbar.py:82
+#: picard/ui/forms/ui_options_interface_toolbar.py:82
msgid "Add Separator"
msgstr ""
-#: picard/ui/ui_options_interface_toolbar.py:85
+#: picard/ui/forms/ui_options_interface_toolbar.py:85
msgid "Remove button from toolbar"
msgstr ""
-#: picard/ui/ui_options_interface_top_tags.py:43
+#: picard/ui/forms/ui_options_interface_top_tags.py:43
msgid "Show the below tags above all other tags in the metadata view"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:143
+#: picard/ui/forms/ui_options_maintenance.py:143
msgid "Configuration file:"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:144
+#: picard/ui/forms/ui_options_maintenance.py:144
msgid "Open folder…"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:145
+#: picard/ui/forms/ui_options_maintenance.py:145
msgid "Automatic configuration backups directory:"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:147
+#: picard/ui/forms/ui_options_maintenance.py:147
msgid "Load backup…"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:148
+#: picard/ui/forms/ui_options_maintenance.py:148
msgid "Save backup…"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:149
+#: picard/ui/forms/ui_options_maintenance.py:149
msgid "Select all"
msgstr ""
-#: picard/ui/ui_options_maintenance.py:150
+#: picard/ui/forms/ui_options_maintenance.py:150
msgid "Remove selected options"
msgstr ""
-#: picard/ui/ui_options_matching.py:77
+#: picard/ui/forms/ui_options_matching.py:77
msgid "Thresholds"
msgstr ""
-#: picard/ui/ui_options_matching.py:78
+#: picard/ui/forms/ui_options_matching.py:78
msgid "Minimal similarity for matching files to tracks:"
msgstr ""
-#: picard/ui/ui_options_matching.py:82
+#: picard/ui/forms/ui_options_matching.py:82
msgid "Minimal similarity for file lookups:"
msgstr ""
-#: picard/ui/ui_options_matching.py:83
+#: picard/ui/forms/ui_options_matching.py:83
msgid "Minimal similarity for cluster lookups:"
msgstr ""
-#: picard/ui/options/metadata.py:82 picard/ui/ui_options_metadata.py:135
+#: picard/ui/forms/ui_options_metadata.py:135 picard/ui/options/metadata.py:82
msgid "Metadata"
msgstr ""
-#: picard/ui/ui_options_metadata.py:136
+#: picard/ui/forms/ui_options_metadata.py:136
msgid "Translate artist names to these locales where possible:"
msgstr ""
-#: picard/ui/ui_options_metadata.py:137 picard/ui/ui_options_metadata.py:139
+#: picard/ui/forms/ui_options_metadata.py:137
+#: picard/ui/forms/ui_options_metadata.py:139
msgid "Select…"
msgstr ""
-#: picard/ui/ui_options_metadata.py:138
+#: picard/ui/forms/ui_options_metadata.py:138
msgid "Ignore artist name translation for these language scripts:"
msgstr ""
-#: picard/ui/ui_options_metadata.py:144
+#: picard/ui/forms/ui_options_metadata.py:144
msgid "Use track relationships"
msgstr ""
-#: picard/ui/ui_options_metadata.py:146
+#: picard/ui/forms/ui_options_metadata.py:146
msgid "Custom Fields"
msgstr ""
-#: picard/ui/ui_options_metadata.py:147
+#: picard/ui/forms/ui_options_metadata.py:147
msgid "Various artists:"
msgstr ""
-#: picard/ui/ui_options_metadata.py:148
+#: picard/ui/forms/ui_options_metadata.py:148
msgid "Standalone recordings:"
msgstr ""
-#: picard/ui/options/interface.py:73 picard/ui/ui_options_metadata.py:149
-#: picard/ui/ui_options_metadata.py:150
-#: picard/ui/ui_provider_options_local.py:60
+#: picard/ui/forms/ui_options_metadata.py:149
+#: picard/ui/forms/ui_options_metadata.py:150
+#: picard/ui/forms/ui_provider_options_local.py:60
+#: picard/ui/options/interface.py:74
msgid "Default"
msgstr ""
-#: picard/ui/ui_options_network.py:162
+#: picard/ui/forms/ui_options_network.py:162
msgid "Web Proxy"
msgstr ""
-#: picard/ui/ui_options_network.py:163
+#: picard/ui/forms/ui_options_network.py:163
msgid "HTTP"
msgstr ""
-#: picard/ui/ui_options_network.py:164
+#: picard/ui/forms/ui_options_network.py:164
msgid "SOCKS"
msgstr ""
-#: picard/ui/ui_options_network.py:165 picard/ui/ui_passworddialog.py:69
+#: picard/ui/forms/ui_options_network.py:165
+#: picard/ui/forms/ui_passworddialog.py:69
msgid "Username:"
msgstr ""
-#: picard/ui/ui_options_network.py:167 picard/ui/ui_passworddialog.py:70
+#: picard/ui/forms/ui_options_network.py:167
+#: picard/ui/forms/ui_passworddialog.py:70
msgid "Password:"
msgstr ""
-#: picard/ui/ui_options_network.py:169
+#: picard/ui/forms/ui_options_network.py:169
msgid "Network options"
msgstr ""
-#: picard/ui/ui_options_network.py:170
+#: picard/ui/forms/ui_options_network.py:170
msgid "Request timeout in seconds:"
msgstr ""
-#: picard/ui/ui_options_network.py:171
+#: picard/ui/forms/ui_options_network.py:171
msgid "Cache size (MB):"
msgstr ""
-#: picard/ui/ui_options_network.py:172
+#: picard/ui/forms/ui_options_network.py:172
msgid "Browser Integration"
msgstr ""
-#: picard/ui/ui_options_network.py:173
+#: picard/ui/forms/ui_options_network.py:173
msgid "Default listening port:"
msgstr ""
-#: picard/ui/options/plugins.py:226 picard/ui/ui_options_plugins.py:137
+#: picard/ui/forms/ui_options_plugins.py:137 picard/ui/options/plugins.py:225
msgid "Plugins"
msgstr ""
-#: picard/ui/options/plugins.py:622 picard/ui/searchdialog/album.py:146
-#: picard/ui/searchdialog/artist.py:46 picard/ui/searchdialog/track.py:61
-#: picard/ui/ui_options_plugins.py:138
+#: picard/ui/forms/ui_options_plugins.py:138 picard/ui/options/plugins.py:621
+#: picard/ui/searchdialog/album.py:146 picard/ui/searchdialog/artist.py:46
+#: picard/ui/searchdialog/track.py:61
msgid "Name"
msgstr ""
-#: picard/ui/ui_options_plugins.py:139
+#: picard/ui/forms/ui_options_plugins.py:139
msgid "Version"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:688 picard/ui/ui_options_plugins.py:140
+#: picard/ui/forms/ui_options_plugins.py:140
+#: picard/ui/mainwindow/__init__.py:690
msgid "Actions"
msgstr ""
-#: picard/ui/ui_options_plugins.py:141
+#: picard/ui/forms/ui_options_plugins.py:141
msgid "Install plugin…"
msgstr ""
-#: picard/ui/ui_options_plugins.py:142
+#: picard/ui/forms/ui_options_plugins.py:142
msgid "Open plugin folder"
msgstr ""
-#: picard/ui/ui_options_plugins.py:143
+#: picard/ui/forms/ui_options_plugins.py:143
msgid "Reload List of Plugins"
msgstr ""
-#: picard/ui/ui_options_plugins.py:144
+#: picard/ui/forms/ui_options_plugins.py:144
msgid "Details"
msgstr ""
-#: picard/ui/ui_options_profiles.py:81
+#: picard/ui/forms/ui_options_profiles.py:81
msgid "Option Profile(s)"
msgstr ""
-#: picard/ui/ui_options_profiles.py:82
+#: picard/ui/forms/ui_options_profiles.py:82
msgid "Move profile up"
msgstr ""
-#: picard/ui/ui_options_profiles.py:83
+#: picard/ui/forms/ui_options_profiles.py:83
msgid "Move profile down"
msgstr ""
-#: picard/ui/ui_options_ratings.py:54
+#: picard/ui/forms/ui_options_ratings.py:54
msgid ""
"Picard saves the ratings together with an e-mail address identifying the "
"user who did the rating. That way different ratings for different users "
@@ -3829,143 +3845,152 @@ msgid ""
"save your ratings."
msgstr ""
-#: picard/ui/ui_options_ratings.py:55
+#: picard/ui/forms/ui_options_ratings.py:55
msgid "E-mail:"
msgstr ""
-#: picard/ui/ui_options_releases.py:118 picard/ui/ui_options_releases.py:119
+#: picard/ui/forms/ui_options_releases.py:118
+#: picard/ui/forms/ui_options_releases.py:119
msgid "Add to preferred release countries"
msgstr ""
-#: picard/ui/ui_options_releases.py:120 picard/ui/ui_options_releases.py:121
+#: picard/ui/forms/ui_options_releases.py:120
+#: picard/ui/forms/ui_options_releases.py:121
msgid "Remove from preferred release countries"
msgstr ""
-#: picard/ui/ui_options_releases.py:123 picard/ui/ui_options_releases.py:124
+#: picard/ui/forms/ui_options_releases.py:123
+#: picard/ui/forms/ui_options_releases.py:124
msgid "Add to preferred release formats"
msgstr ""
-#: picard/ui/ui_options_releases.py:125 picard/ui/ui_options_releases.py:126
+#: picard/ui/forms/ui_options_releases.py:125
+#: picard/ui/forms/ui_options_releases.py:126
msgid "Remove from preferred release formats"
msgstr ""
-#: picard/ui/ui_options_renaming.py:156
+#: picard/ui/forms/ui_options_renaming.py:156
msgid "Move files when saving"
msgstr ""
-#: picard/ui/ui_options_renaming.py:157
+#: picard/ui/forms/ui_options_renaming.py:157
msgid "Destination directory:"
msgstr ""
-#: picard/ui/ui_options_renaming.py:159
+#: picard/ui/forms/ui_options_renaming.py:159
msgid "Move additional files (case insensitive):"
msgstr ""
-#: picard/ui/ui_options_renaming.py:161
+#: picard/ui/forms/ui_options_renaming.py:161
msgid "Rename files when saving"
msgstr ""
-#: picard/ui/ui_options_renaming.py:162 picard/ui/ui_scripteditor.py:214
+#: picard/ui/forms/ui_options_renaming.py:162
+#: picard/ui/forms/ui_scripteditor.py:214
msgid "Selected file naming script:"
msgstr ""
-#: picard/ui/ui_options_renaming.py:163
+#: picard/ui/forms/ui_options_renaming.py:163
msgid "Edit file naming script…"
msgstr ""
-#: picard/ui/ui_options_renaming.py:164 picard/ui/ui_scripteditor.py:217
+#: picard/ui/forms/ui_options_renaming.py:164
+#: picard/ui/forms/ui_scripteditor.py:217
msgid "Files will be named like this:"
msgstr ""
-#: picard/ui/ui_options_renaming.py:165 picard/ui/ui_scripteditor.py:218
+#: picard/ui/forms/ui_options_renaming.py:165
+#: picard/ui/forms/ui_scripteditor.py:218
msgid "Before"
msgstr ""
-#: picard/ui/ui_options_renaming.py:166 picard/ui/ui_scripteditor.py:219
+#: picard/ui/forms/ui_options_renaming.py:166
+#: picard/ui/forms/ui_scripteditor.py:219
msgid "After"
msgstr ""
-#: picard/ui/ui_options_renaming.py:167
+#: picard/ui/forms/ui_options_renaming.py:167
msgid "Reload examples"
msgstr ""
-#: picard/ui/ui_options_renaming_compat.py:97
+#: picard/ui/forms/ui_options_renaming_compat.py:97
msgid "Customize…"
msgstr ""
-#: picard/ui/ui_options_renaming_compat.py:98
+#: picard/ui/forms/ui_options_renaming_compat.py:98
msgid "Allow paths longer than 259 characters"
msgstr ""
-#: picard/ui/ui_options_renaming_compat.py:100
+#: picard/ui/forms/ui_options_renaming_compat.py:100
msgid "Replace directory separators with:"
msgstr ""
-#: picard/ui/ui_options_script.py:125
+#: picard/ui/forms/ui_options_script.py:125
msgid "Enable Tagger Script(s)"
msgstr ""
-#: picard/ui/ui_options_script.py:126
+#: picard/ui/forms/ui_options_script.py:126
msgid ""
"Tagger scripts that have been activated below will be executed "
"automatically for each track of a release loaded from MusicBrainz."
msgstr ""
-#: picard/ui/ui_options_script.py:127
+#: picard/ui/forms/ui_options_script.py:127
msgid "Enter your tagger script here."
msgstr ""
-#: picard/ui/ui_options_script.py:128
+#: picard/ui/forms/ui_options_script.py:128
msgid "Move tagger script up"
msgstr ""
-#: picard/ui/ui_options_script.py:129
+#: picard/ui/forms/ui_options_script.py:129
msgid "Move tagger script down"
msgstr ""
-#: picard/ui/ui_options_script.py:130 picard/ui/ui_options_script.py:131
+#: picard/ui/forms/ui_options_script.py:130
+#: picard/ui/forms/ui_options_script.py:131
msgid "Add new tagger script"
msgstr ""
-#: picard/ui/ui_options_script.py:132
+#: picard/ui/forms/ui_options_script.py:132
msgid "Remove the selected tagger script"
msgstr ""
-#: picard/ui/ui_options_script.py:133
+#: picard/ui/forms/ui_options_script.py:133
msgid "Remove tagger script"
msgstr ""
-#: picard/ui/ui_options_script.py:134
+#: picard/ui/forms/ui_options_script.py:134
msgid "Import"
msgstr ""
-#: picard/ui/ui_options_script.py:135
+#: picard/ui/forms/ui_options_script.py:135
msgid "Export"
msgstr ""
-#: picard/ui/ui_options_script.py:136
+#: picard/ui/forms/ui_options_script.py:136
msgid "Documentation"
msgstr ""
-#: picard/ui/ui_options_tags.py:77
+#: picard/ui/forms/ui_options_tags.py:77
msgid "Write tags to files"
msgstr ""
-#: picard/ui/ui_options_tags.py:79
+#: picard/ui/forms/ui_options_tags.py:79
msgid "Before Tagging"
msgstr ""
-#: picard/ui/ui_options_tags.py:85
+#: picard/ui/forms/ui_options_tags.py:85
msgid ""
"Preserve these tags from being cleared or overwritten with MusicBrainz "
"data:"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_aac.py:51
+#: picard/ui/forms/ui_options_tags_compatibility_aac.py:51
msgid "AAC files"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_aac.py:52
+#: picard/ui/forms/ui_options_tags_compatibility_aac.py:52
msgid ""
"Picard can save APEv2 tags to pure AAC files, which by default do not "
"support tagging. APEv2 tags in AAC are supported by some players, but "
@@ -3974,21 +3999,21 @@ msgid ""
" tags to those files."
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_aac.py:53
-#: picard/ui/ui_options_tags_compatibility_ac3.py:53
+#: picard/ui/forms/ui_options_tags_compatibility_aac.py:53
+#: picard/ui/forms/ui_options_tags_compatibility_ac3.py:53
msgid "Save APEv2 tags"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_aac.py:54
-#: picard/ui/ui_options_tags_compatibility_ac3.py:54
+#: picard/ui/forms/ui_options_tags_compatibility_aac.py:54
+#: picard/ui/forms/ui_options_tags_compatibility_ac3.py:54
msgid "Do not save tags"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_ac3.py:51
+#: picard/ui/forms/ui_options_tags_compatibility_ac3.py:51
msgid "AC3 files"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_ac3.py:52
+#: picard/ui/forms/ui_options_tags_compatibility_ac3.py:52
msgid ""
"Picard can save APEv2 tags to pure AC3 files, which by default do not "
"support tagging. APEv2 tags in AC3 are supported by some players, but "
@@ -3997,56 +4022,56 @@ msgid ""
" tags to those files."
msgstr ""
-#: picard/ui/options/tags_compatibility_id3.py:41
-#: picard/ui/ui_options_tags_compatibility_id3.py:121
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:121
+#: picard/ui/options/tags_compatibility_id3.py:39
msgid "ID3"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:122
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:122
msgid "ID3v2 Version"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:123
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:123
msgid "2.4"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:124
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:124
msgid "2.3"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:126
-#: picard/ui/ui_options_tags_compatibility_wave.py:68
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:126
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:68
msgid "UTF-8"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:127
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:127
msgid "UTF-16"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:128
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:128
msgid "ISO-8859-1"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:129
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:129
msgid "Join multiple ID3v2.3 tags with:"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:130
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:130
msgid ""
"Default is '/' to maintain compatibility with "
"previous Picard releases.
New alternatives are ';_' or '_/_' or "
"type your own.
"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_id3.py:132
+#: picard/ui/forms/ui_options_tags_compatibility_id3.py:132
msgid "Also include ID3v1 tags in the files"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_wave.py:62
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:62
msgid "WAVE files"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_wave.py:63
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:63
msgid ""
"Picard will tag WAVE files using ID3v2 tags. This is not supported by all"
" software. For compatibility with software which does not support ID3v2 "
@@ -4054,164 +4079,381 @@ msgid ""
" RIFF INFO has only limited support for tags and character encodings."
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_wave.py:64
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:64
msgid "Also include RIFF INFO tags in the files"
msgstr ""
-#: picard/ui/ui_options_tags_compatibility_wave.py:67
+#: picard/ui/forms/ui_options_tags_compatibility_wave.py:67
msgid "Windows-1252"
msgstr ""
-#: picard/ui/ui_passworddialog.py:68
-msgid "Authentication required"
+#: picard/ui/forms/ui_passworddialog.py:68
+#: picard/ui/mainwindow/__init__.py:1317
+msgid "Authentication Required"
msgstr ""
-#: picard/ui/ui_provider_options_caa.py:75
+#: picard/ui/forms/ui_provider_options_caa.py:75
msgid "Download only cover art images matching selected types"
msgstr ""
-#: picard/ui/ui_provider_options_caa.py:76
+#: picard/ui/forms/ui_provider_options_caa.py:76
msgid "Select types…"
msgstr ""
-#: picard/ui/ui_provider_options_caa.py:77
-msgid "Only use images of the following size:"
+#: picard/ui/forms/ui_provider_options_caa.py:77
+msgid "Only use images of at most the following size:"
msgstr ""
-#: picard/ui/ui_provider_options_caa.py:78
+#: picard/ui/forms/ui_provider_options_caa.py:78
msgid "Download only approved images"
msgstr ""
-#: picard/ui/ui_provider_options_local.py:59
+#: picard/ui/forms/ui_provider_options_local.py:59
msgid "Local cover art files match the following regular expression:"
msgstr ""
-#: picard/ui/ui_provider_options_local.py:61
+#: picard/ui/forms/ui_provider_options_local.py:61
msgid ""
"First group in the regular expression, if any, will be used as type, ie. "
"cover-back-spine.jpg will be set as types Back + Spine. If no type is "
"found, it will default to Front type."
msgstr ""
-#: picard/ui/ui_scripteditor.py:215
+#: picard/ui/forms/ui_scripteditor.py:215
msgid "Select the file naming script to load into the editor"
msgstr ""
-#: picard/ui/ui_scripteditor.py:216 picard/ui/ui_scripteditor_details.py:105
+#: picard/ui/forms/ui_scripteditor.py:216
+#: picard/ui/forms/ui_scripteditor_details.py:105
msgid "Title:"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:97
+#: picard/ui/forms/ui_scripteditor_details.py:97
msgid "File Naming Script Metadata"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:98
+#: picard/ui/forms/ui_scripteditor_details.py:98
msgid "Version number of the file naming script."
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:99
+#: picard/ui/forms/ui_scripteditor_details.py:99
msgid "Last Updated:"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:100
+#: picard/ui/forms/ui_scripteditor_details.py:100
msgid "Date and time the file naming script was last updated (UTC)."
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:101
+#: picard/ui/forms/ui_scripteditor_details.py:101
msgid "Now"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:102
+#: picard/ui/forms/ui_scripteditor_details.py:102
msgid "Author:"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:103
+#: picard/ui/forms/ui_scripteditor_details.py:103
msgid "Version:"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:104
+#: picard/ui/forms/ui_scripteditor_details.py:104
msgid "License:"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:106
+#: picard/ui/forms/ui_scripteditor_details.py:106
msgid "License under which the file naming script is available."
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:107
+#: picard/ui/forms/ui_scripteditor_details.py:107
msgid "Description:"
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:108
+#: picard/ui/forms/ui_scripteditor_details.py:108
msgid ""
"Brief description of the file naming script, including any required "
"plugins."
msgstr ""
-#: picard/ui/ui_scripteditor_details.py:109
+#: picard/ui/forms/ui_scripteditor_details.py:109
msgid "The author of the file naming script."
msgstr ""
-#: picard/ui/ui_scripting_documentation_dialog.py:42
+#: picard/ui/forms/ui_scripting_documentation_dialog.py:42
msgid "Scripting Documentation"
msgstr ""
-#: picard/ui/ui_tagsfromfilenames.py:59
+#: picard/ui/forms/ui_tagsfromfilenames.py:59
msgid "Convert File Names to Tags"
msgstr ""
-#: picard/ui/ui_tagsfromfilenames.py:60
+#: picard/ui/forms/ui_tagsfromfilenames.py:60
msgid "Replace underscores with spaces"
msgstr ""
-#: picard/ui/ui_tagsfromfilenames.py:61
+#: picard/ui/forms/ui_tagsfromfilenames.py:61
msgid "&Preview"
msgstr ""
-#: picard/ui/ui_widget_taglisteditor.py:75
+#: picard/ui/forms/ui_widget_taglisteditor.py:75
msgid "Add new tag"
msgstr ""
-#: picard/ui/ui_widget_taglisteditor.py:76
-#: picard/ui/ui_widget_taglisteditor.py:77
+#: picard/ui/forms/ui_widget_taglisteditor.py:76
+#: picard/ui/forms/ui_widget_taglisteditor.py:77
msgid "Move tag up"
msgstr ""
-#: picard/ui/ui_widget_taglisteditor.py:78
-#: picard/ui/ui_widget_taglisteditor.py:79
+#: picard/ui/forms/ui_widget_taglisteditor.py:78
+#: picard/ui/forms/ui_widget_taglisteditor.py:79
msgid "Move tag down"
msgstr ""
-#: picard/ui/ui_widget_taglisteditor.py:80
-#: picard/ui/ui_widget_taglisteditor.py:81
+#: picard/ui/forms/ui_widget_taglisteditor.py:80
+#: picard/ui/forms/ui_widget_taglisteditor.py:81
msgid "Remove selected tags"
msgstr ""
-#: picard/ui/ui_widget_taglisteditor.py:82
+#: picard/ui/forms/ui_widget_taglisteditor.py:82
msgid "Remove tags"
msgstr ""
-#: picard/ui/ui_win_compat_dialog.py:198
+#: picard/ui/forms/ui_win_compat_dialog.py:198
msgid "Character"
msgstr ""
-#: picard/ui/ui_win_compat_dialog.py:199
+#: picard/ui/forms/ui_win_compat_dialog.py:199
msgid "Replacement"
msgstr ""
-#: picard/ui/util.py:58
-msgid "&Ok"
+#: picard/ui/itemviews/__init__.py:178
+msgid "Bad match"
msgstr ""
-#: picard/ui/util.py:61
-msgid "Clos&e"
+#: picard/ui/itemviews/__init__.py:179
+msgid "Poor match"
msgstr ""
-#: picard/ui/util.py:139
-msgid "You have to restart Picard for the changes to take effect."
+#: picard/ui/itemviews/__init__.py:180
+msgid "Ok match"
msgstr ""
-#: picard/ui/util.py:142
-msgid "Changes only applied on restart"
+#: picard/ui/itemviews/__init__.py:181
+msgid "Good match"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:182
+msgid "Great match"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:183
+msgid "Excellent match"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:236
+msgid "file view"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:237
+msgid "Contains unmatched files and clusters"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:263
+msgid "Clusters"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:272
+msgid "album view"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:273
+msgid "Contains albums and matched files"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:445
+msgid "Processing error(s): See the Errors tab in the Album Info dialog"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:449
+msgid "Album modified and complete"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:452
+msgid "Album unchanged and complete"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:456
+msgid "Album modified"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:459
+msgid "Album unchanged"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:503
+msgid "There are no files matched to this track"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:505
+#, python-format
+msgid "%i matched file"
+msgid_plural "%i matched files"
+msgstr[0] ""
+msgstr[1] ""
+
+#: picard/ui/itemviews/__init__.py:541
+msgid "Processing error(s): See the Errors tab in the Track Info dialog"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:580
+msgid "File not found"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:583
+msgid "File permission error"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:586
+msgid "Processing error(s): See the Errors tab in the File Info dialog"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:590
+msgid "Track saved"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:594 picard/ui/itemviews/__init__.py:601
+msgid "Pending"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:615
+msgid "Fingerprint has already been submitted"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:618
+msgid "Unsubmitted fingerprint"
+msgstr ""
+
+#: picard/ui/itemviews/__init__.py:621
+msgid ""
+"No fingerprint was calculated for this file, use \"Scan\" or \"Generate "
+"AcoustID Fingerprints\" to calculate the fingerprint."
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:144
+msgid "Restore default columns"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:149
+msgid "Lock columns"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:242
+#, python-format
+msgid "&Other versions (%d)"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:269
+msgid "&Expand all"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:271
+msgid "&Collapse all"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:273
+msgid "Select &all"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:275
+msgid "Ctrl+A"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:364
+msgid "&Other versions"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:371
+msgid "Show &more details…"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:376
+msgid "Loading…"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:404
+msgid "Collections"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:408
+msgid "P&lugins"
+msgstr ""
+
+#: picard/ui/itemviews/basetreeview.py:428
+msgid "&Run scripts"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:198
+msgid "Fingerprint status"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:204 picard/util/tags.py:129
+msgid "Title"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:205 picard/ui/searchdialog/track.py:62
+#: picard/util/tags.py:77
+msgid "Length"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:207 picard/util/tags.py:43
+msgid "Album Artist"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:208 picard/util/tags.py:57
+msgid "Composer"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:210 picard/util/tags.py:65
+msgid "Disc Subtitle"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:211
+msgid "Track No."
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:212
+msgid "Disc No."
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:213
+msgid "Catalog No."
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:215 picard/util/tags.py:81
+msgid "Media"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:216
+msgid "Size"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:217 picard/util/tags.py:71
+msgid "Genre"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:220 picard/util/tags.py:101
+msgid "Original Release Date"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:221 picard/util/tags.py:112
+msgid "Release Date"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:222 picard/ui/searchdialog/album.py:158
+msgid "Cover"
+msgstr ""
+
+#: picard/ui/itemviews/columns.py:223
+msgid "Cover Dimensions"
msgstr ""
#: picard/ui/mainwindow/__init__.py:330
@@ -4244,139 +4486,135 @@ msgid ""
"button on the web page loads the release into Picard."
msgstr ""
-#: picard/ui/mainwindow/__init__.py:407
+#: picard/ui/mainwindow/__init__.py:409
#, python-format
msgid "Listening on port %(port)d"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:464
+#: picard/ui/mainwindow/__init__.py:466
msgid "AcoustID submission not configured"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:465
+#: picard/ui/mainwindow/__init__.py:467
msgid ""
"You need to configure your AcoustID API key before you can submit "
"fingerprints."
msgstr ""
-#: picard/ui/mainwindow/__init__.py:468
+#: picard/ui/mainwindow/__init__.py:470
msgid "Open AcoustID options"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:483 picard/ui/mainwindow/actions.py:359
+#: picard/ui/mainwindow/__init__.py:485 picard/ui/mainwindow/actions.py:359
msgid "Lookup &CD…"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:519
+#: picard/ui/mainwindow/__init__.py:521
msgid "From CD ripper &log file…"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:594
+#: picard/ui/mainwindow/__init__.py:596
msgid "&Edit"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:613
+#: picard/ui/mainwindow/__init__.py:615
msgid "&Select file naming script"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:617
+#: picard/ui/mainwindow/__init__.py:619
msgid "&Enable/disable profiles"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:621
+#: picard/ui/mainwindow/__init__.py:623
msgid "&Options"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:635
+#: picard/ui/mainwindow/__init__.py:637
msgid "&Tools"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:728 picard/ui/mainwindow/actions.py:351
+#: picard/ui/mainwindow/__init__.py:730 picard/ui/mainwindow/actions.py:351
#: picard/ui/searchdialog/__init__.py:49
msgid "Search"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:741
+#: picard/ui/mainwindow/__init__.py:743
msgid "Track"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:758
+#: picard/ui/mainwindow/__init__.py:760
msgid "&Advanced search"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:759
+#: picard/ui/mainwindow/__init__.py:761
msgid "&Builtin search"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:846
+#: picard/ui/mainwindow/__init__.py:848
msgid "All supported formats"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:875
+#: picard/ui/mainwindow/__init__.py:885
#, python-format
msgid "Adding multiple directories from '%(directory)s' …"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:880
+#: picard/ui/mainwindow/__init__.py:890
#, python-format
msgid "Adding directory: '%(directory)s' …"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:992
+#: picard/ui/mainwindow/__init__.py:1002
msgid "Configuration Required"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:993
+#: picard/ui/mainwindow/__init__.py:1003
msgid ""
"Audio fingerprinting is not yet configured. Would you like to configure "
"it now?"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1106
+#: picard/ui/mainwindow/__init__.py:1116
msgid "Browser integration not enabled"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1107
+#: picard/ui/mainwindow/__init__.py:1117
msgid ""
"Submitting releases to MusicBrainz requires the browser integration to be"
" enabled. Do you want to enable the browser integration now?"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1219
+#: picard/ui/mainwindow/__init__.py:1229
#, python-format
msgid "%(filename)s (error: %(error)s)"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1225
+#: picard/ui/mainwindow/__init__.py:1235
#, python-format
msgid "%(filename)s"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1234
+#: picard/ui/mainwindow/__init__.py:1244
#, python-format
msgid "%(filename)s (%(similarity)d%%) (error: %(error)s)"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1241
+#: picard/ui/mainwindow/__init__.py:1251
#, python-format
msgid "%(filename)s (%(similarity)d%%)"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1307
-msgid "Authentication Required"
-msgstr ""
-
-#: picard/ui/mainwindow/__init__.py:1308
+#: picard/ui/mainwindow/__init__.py:1318
msgid ""
"Picard needs authorization to access your personal data on the "
"MusicBrainz server. Would you like to log in now?"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1323
+#: picard/ui/mainwindow/__init__.py:1333
msgid "Authentication failed"
msgstr ""
-#: picard/ui/mainwindow/__init__.py:1324 picard/ui/options/general.py:151
+#: picard/ui/mainwindow/__init__.py:1334 picard/ui/options/general.py:149
#, python-format
msgid "Login failed: %s"
msgstr ""
@@ -4510,7 +4748,7 @@ msgid "Search for similar items…"
msgstr ""
#: picard/ui/mainwindow/actions.py:266
-#: picard/ui/options/interface_toolbar.py:132
+#: picard/ui/options/interface_toolbar.py:133
msgid "Similar items"
msgstr ""
@@ -4602,7 +4840,7 @@ msgid "&Generate AcoustID Fingerprints"
msgstr ""
#: picard/ui/mainwindow/actions.py:382
-#: picard/ui/options/interface_toolbar.py:116
+#: picard/ui/options/interface_toolbar.py:117
msgid "Generate Fingerprints"
msgstr ""
@@ -4677,7 +4915,7 @@ msgid "Tags From &File Names…"
msgstr ""
#: picard/ui/mainwindow/actions.py:466
-#: picard/ui/options/interface_toolbar.py:128
+#: picard/ui/options/interface_toolbar.py:129
msgid "Parse File Names…"
msgstr ""
@@ -4685,7 +4923,7 @@ msgstr ""
msgid "Set tags based on the file names"
msgstr ""
-#: picard/ui/mainwindow/actions.py:468 picard/ui/widgets/scripttextedit.py:334
+#: picard/ui/mainwindow/actions.py:468 picard/ui/widgets/scripttextedit.py:368
msgid "Ctrl+Shift+T"
msgstr ""
@@ -4729,131 +4967,146 @@ msgstr ""
msgid "&Check for Update…"
msgstr ""
-#: picard/ui/options/__init__.py:122
+#: picard/ui/options/__init__.py:121
msgid "Regex Error"
msgstr ""
-#: picard/ui/options/advanced.py:38
+#: picard/ui/options/advanced.py:36
msgid "Advanced"
msgstr ""
-#: picard/ui/options/cover.py:52
+#: picard/ui/options/cover.py:56
msgid "Cover Art"
msgstr ""
-#: picard/ui/options/dialog.py:111
-msgid "This page failed to initialize"
+#: picard/ui/options/cover.py:147
+msgid ""
+"Embedded cover art images with a type found in the 'Include' list will "
+"never be replaced by a newly downloaded image UNLESS they also have an "
+"image type in the 'Exclude' list. Images with types found in the "
+"'Exclude' list will always be replaced by downloaded images of the same "
+"type. Images types not appearing in the 'Include' or 'Exclude' list will "
+"not be considered when determining whether or not to replace an embedded "
+"cover art image.\n"
+msgstr ""
+
+#: picard/ui/options/cover_processing.py:48
+msgid "Processing"
msgstr ""
#: picard/ui/options/dialog.py:114
+msgid "This page failed to initialize"
+msgstr ""
+
+#: picard/ui/options/dialog.py:117
#, python-format
msgid "Error while initializing option page '%s':"
msgstr ""
-#: picard/ui/options/dialog.py:131
+#: picard/ui/options/dialog.py:134
#, python-format
msgid ""
"Please see Troubleshooting documentation and "
"eventually report a bug."
msgstr ""
-#: picard/ui/options/dialog.py:157
+#: picard/ui/options/dialog.py:160
#, python-format
msgid "%s (error)"
msgstr ""
-#: picard/ui/options/dialog.py:183
+#: picard/ui/options/dialog.py:186
msgid "&Restore all Defaults"
msgstr ""
-#: picard/ui/options/dialog.py:184
+#: picard/ui/options/dialog.py:187
msgid "Reset all of Picard's settings"
msgstr ""
-#: picard/ui/options/dialog.py:186
+#: picard/ui/options/dialog.py:189
msgid "Reset all settings for current option page"
msgstr ""
-#: picard/ui/options/dialog.py:202 picard/ui/options/dialog.py:519
-#: picard/ui/options/dialog.py:545
+#: picard/ui/options/dialog.py:205 picard/ui/options/dialog.py:522
+#: picard/ui/options/dialog.py:548
msgid "Attached Profiles"
msgstr ""
-#: picard/ui/options/dialog.py:203
+#: picard/ui/options/dialog.py:206
msgid "Show which profiles are attached to the options on this page"
msgstr ""
-#: picard/ui/options/dialog.py:285
+#: picard/ui/options/dialog.py:288
msgid ""
"The options on this page are not currently available to be managed using "
"profiles."
msgstr ""
-#: picard/ui/options/dialog.py:355
+#: picard/ui/options/dialog.py:358
#, python-format
msgid "This option will be saved to profile: %s"
msgstr ""
-#: picard/ui/options/dialog.py:453
+#: picard/ui/options/dialog.py:456
msgid "Unexpected error"
msgstr ""
-#: picard/ui/options/dialog.py:499
+#: picard/ui/options/dialog.py:502
msgid "You are about to reset your options for this page."
msgstr ""
-#: picard/ui/options/dialog.py:503
+#: picard/ui/options/dialog.py:506
msgid "Warning! This will reset all of your settings."
msgstr ""
-#: picard/ui/options/dialog.py:510
+#: picard/ui/options/dialog.py:513
msgid "Confirm Reset"
msgstr ""
-#: picard/ui/options/dialog.py:511
+#: picard/ui/options/dialog.py:514
msgid "Are you sure?"
msgstr ""
-#: picard/ui/options/dialog.py:545 picard/ui/options/maintenance.py:101
+#: picard/ui/options/dialog.py:548 picard/ui/options/maintenance.py:100
msgid "Option"
msgstr ""
-#: picard/ui/options/dialog.py:548
+#: picard/ui/options/dialog.py:551
#, python-format
msgid "Profiles Attached to Options in %s Section"
msgstr ""
-#: picard/ui/options/dialog.py:562
+#: picard/ui/options/dialog.py:565
msgid " [Enabled]"
msgstr ""
-#: picard/ui/options/dialog.py:563 picard/ui/options/profiles.py:268
+#: picard/ui/options/dialog.py:566 picard/ui/options/profiles.py:269
msgid "None"
msgstr ""
-#: picard/ui/options/fingerprinting.py:61
+#: picard/ui/options/fingerprinting.py:63
msgid "Fingerprinting"
msgstr ""
-#: picard/ui/options/fingerprinting.py:167
-#: picard/ui/options/fingerprinting.py:171
+#: picard/ui/options/fingerprinting.py:172
+#: picard/ui/options/fingerprinting.py:176
msgid "Please select a valid fpcalc executable."
msgstr ""
-#: picard/ui/options/fingerprinting.py:171
+#: picard/ui/options/fingerprinting.py:176
msgid "Invalid fpcalc executable"
msgstr ""
-#: picard/ui/options/general.py:144
+#: picard/ui/options/general.py:142
#, python-format
msgid "Logged in as %s."
msgstr ""
-#: picard/ui/options/general.py:174
+#: picard/ui/options/general.py:172
msgid "Logout error"
msgstr ""
-#: picard/ui/options/general.py:175
+#: picard/ui/options/general.py:173
#, python-format
msgid ""
"A server error occurred while revoking access to the MusicBrainz server: "
@@ -4862,7 +5115,7 @@ msgid ""
"Remove locally stored credentials anyway?"
msgstr ""
-#: picard/ui/options/genres.py:45
+#: picard/ui/options/genres.py:43
msgid ""
"
\n"
"Lines not starting with - or + are ignored.
\n"
@@ -4896,7 +5149,7 @@ msgid ""
""
msgstr ""
-#: picard/ui/options/genres.py:72
+#: picard/ui/options/genres.py:70
msgid ""
"\n"
"You can add genres to test filters against, one per line.
\n"
@@ -4909,66 +5162,66 @@ msgid ""
""
msgstr ""
-#: picard/ui/options/genres.py:86
+#: picard/ui/options/genres.py:84
msgid "Genres"
msgstr ""
-#: picard/ui/options/interface.py:64
+#: picard/ui/options/interface.py:65
msgid "User Interface"
msgstr ""
-#: picard/ui/options/interface.py:74
+#: picard/ui/options/interface.py:75
msgid "The default color scheme based on the operating system display settings"
msgstr ""
-#: picard/ui/options/interface.py:77
+#: picard/ui/options/interface.py:78
msgid "Dark"
msgstr ""
-#: picard/ui/options/interface.py:78
+#: picard/ui/options/interface.py:79
msgid "A dark display theme"
msgstr ""
-#: picard/ui/options/interface.py:81
+#: picard/ui/options/interface.py:82
msgid "Light"
msgstr ""
-#: picard/ui/options/interface.py:82
+#: picard/ui/options/interface.py:83
msgid "A light display theme"
msgstr ""
-#: picard/ui/options/interface.py:85
+#: picard/ui/options/interface.py:86
msgid "System"
msgstr ""
-#: picard/ui/options/interface.py:86
+#: picard/ui/options/interface.py:87
msgid "The Qt6 theme configured in the desktop environment"
msgstr ""
-#: picard/ui/options/interface.py:104
+#: picard/ui/options/interface.py:105
msgid "System default"
msgstr ""
-#: picard/ui/options/interface.py:184
+#: picard/ui/options/interface.py:185
msgid "You have changed the application theme."
msgstr ""
-#: picard/ui/options/interface.py:186
+#: picard/ui/options/interface.py:187
msgid ""
"Please note that using the system theme might cause the user interface to"
" be not shown correctly. If this is the case select the \"Default\" theme"
" option to use Picard's default theme again."
msgstr ""
-#: picard/ui/options/interface.py:193
+#: picard/ui/options/interface.py:194
msgid "You have changed the interface language."
msgstr ""
-#: picard/ui/options/interface.py:213
+#: picard/ui/options/interface.py:217
msgid "Option Setting Warning"
msgstr ""
-#: picard/ui/options/interface.py:214
+#: picard/ui/options/interface.py:218
msgid ""
"When enabling the multiple directories option setting Picard will no "
"longer use the system file picker for selecting directories. This may "
@@ -4977,75 +5230,79 @@ msgid ""
"Are you sure that you want to enable this setting?"
msgstr ""
-#: picard/ui/options/interface_colors.py:68
+#: picard/ui/options/interface_colors.py:74
msgid "Choose a color"
msgstr ""
-#: picard/ui/options/interface_colors.py:143
+#: picard/ui/options/interface_colors.py:156
+msgid "Restore default color"
+msgstr ""
+
+#: picard/ui/options/interface_colors.py:172
msgid "You have changed the interface colors."
msgstr ""
-#: picard/ui/options/interface_toolbar.py:68
+#: picard/ui/options/interface_toolbar.py:69
msgid "Action Toolbar"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:76
+#: picard/ui/options/interface_toolbar.py:77
msgid "Add Folder"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:80
+#: picard/ui/options/interface_toolbar.py:81
msgid "Add Files"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:84
+#: picard/ui/options/interface_toolbar.py:85
msgid "Cluster"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:88
+#: picard/ui/options/interface_toolbar.py:89
msgid "Lookup"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:92
+#: picard/ui/options/interface_toolbar.py:93
msgid "Scan"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:96
+#: picard/ui/options/interface_toolbar.py:97
msgid "Lookup in Browser"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:100
+#: picard/ui/options/interface_toolbar.py:101
msgid "Save"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:112
+#: picard/ui/options/interface_toolbar.py:113
msgid "Submit AcoustIDs"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:120
+#: picard/ui/options/interface_toolbar.py:121
msgid "Open in Player"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:124
+#: picard/ui/options/interface_toolbar.py:125
msgid "Lookup CD…"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:174
+#: picard/ui/options/interface_toolbar.py:178
msgid "Drag and Drop to re-order"
msgstr ""
-#: picard/ui/options/interface_toolbar.py:265
+#: picard/ui/options/interface_toolbar.py:269
msgid "Select an action"
msgstr ""
-#: picard/ui/options/interface_top_tags.py:38
+#: picard/ui/options/interface_top_tags.py:36
msgid "Top Tags"
msgstr ""
-#: picard/ui/options/maintenance.py:75
+#: picard/ui/options/maintenance.py:74
msgid "Maintenance"
msgstr ""
-#: picard/ui/options/maintenance.py:87
+#: picard/ui/options/maintenance.py:86
msgid ""
"Settings that are found in the configuration file that do not appear on "
"any option settings page are listed below. If your configuration file "
@@ -5064,37 +5321,37 @@ msgid ""
"So!\" to save your option settings, the selected items will be removed."
msgstr ""
-#: picard/ui/options/maintenance.py:101
+#: picard/ui/options/maintenance.py:100
msgid "Value"
msgstr ""
-#: picard/ui/options/maintenance.py:137
+#: picard/ui/options/maintenance.py:136
msgid "Configuration File Backup Directory Error"
msgstr ""
-#: picard/ui/options/maintenance.py:138
+#: picard/ui/options/maintenance.py:137
#, python-format
msgid ""
"The path provided isn't a valid directory, reverting to:\n"
"%s\n"
msgstr ""
-#: picard/ui/options/maintenance.py:172
+#: picard/ui/options/maintenance.py:174
#, python-format
msgid ""
"The configuration file currently contains %(totalcount)d option settings "
"(%(unusedcount)d unused)."
msgstr ""
-#: picard/ui/options/maintenance.py:210
+#: picard/ui/options/maintenance.py:212
msgid "Configuration files"
msgstr ""
-#: picard/ui/options/maintenance.py:228
+#: picard/ui/options/maintenance.py:230
msgid "Backup Configuration File Save Error"
msgstr ""
-#: picard/ui/options/maintenance.py:229
+#: picard/ui/options/maintenance.py:231
#, python-format
msgid ""
"Failed to save the configuration file to:\n"
@@ -5103,23 +5360,23 @@ msgid ""
"Please see the logs for more details."
msgstr ""
-#: picard/ui/options/maintenance.py:241 picard/ui/options/maintenance.py:250
+#: picard/ui/options/maintenance.py:243 picard/ui/options/maintenance.py:252
msgid "Backup Configuration File"
msgstr ""
-#: picard/ui/options/maintenance.py:251
+#: picard/ui/options/maintenance.py:253
#, python-format
msgid ""
"Configuration successfully backed up to:\n"
"%s"
msgstr ""
-#: picard/ui/options/maintenance.py:281 picard/ui/options/maintenance.py:296
-#: picard/ui/options/maintenance.py:307
+#: picard/ui/options/maintenance.py:283 picard/ui/options/maintenance.py:298
+#: picard/ui/options/maintenance.py:309
msgid "Load Backup Configuration File"
msgstr ""
-#: picard/ui/options/maintenance.py:282
+#: picard/ui/options/maintenance.py:284
#, python-format
msgid ""
"Loading a backup configuration file will replace the current "
@@ -5131,14 +5388,14 @@ msgid ""
"Do you want to continue?"
msgstr ""
-#: picard/ui/options/maintenance.py:297
+#: picard/ui/options/maintenance.py:299
#, python-format
msgid ""
"Configuration successfully loaded from:\n"
"%s"
msgstr ""
-#: picard/ui/options/maintenance.py:308
+#: picard/ui/options/maintenance.py:310
#, python-format
msgid ""
"There was a problem restoring the configuration file from:\n"
@@ -5147,21 +5404,21 @@ msgid ""
"Please see the logs for more details."
msgstr ""
-#: picard/ui/options/maintenance.py:320
+#: picard/ui/options/maintenance.py:322
msgid "Select Configuration File to Load"
msgstr ""
-#: picard/ui/options/maintenance.py:369
+#: picard/ui/options/maintenance.py:371
#: picard/ui/widgets/profilelistwidget.py:88
-#: picard/ui/widgets/scriptlistwidget.py:94
+#: picard/ui/widgets/scriptlistwidget.py:95
msgid "Confirm Remove"
msgstr ""
-#: picard/ui/options/maintenance.py:370
+#: picard/ui/options/maintenance.py:372
msgid "Are you sure you want to remove the selected option settings?"
msgstr ""
-#: picard/ui/options/matching.py:38
+#: picard/ui/options/matching.py:36
msgid "Matching"
msgstr ""
@@ -5182,36 +5439,36 @@ msgid ""
"the artist name will not be translated."
msgstr ""
-#: picard/ui/options/network.py:39
+#: picard/ui/options/network.py:37
msgid "Network"
msgstr ""
-#: picard/ui/options/plugins.py:145
+#: picard/ui/options/plugins.py:144
msgid "Download and install plugin"
msgstr ""
-#: picard/ui/options/plugins.py:153
+#: picard/ui/options/plugins.py:152
#, python-format
msgid "Download and upgrade plugin to version %s"
msgstr ""
-#: picard/ui/options/plugins.py:159
+#: picard/ui/options/plugins.py:158
msgid "Enabled"
msgstr ""
-#: picard/ui/options/plugins.py:163
+#: picard/ui/options/plugins.py:162
msgid "Disabled"
msgstr ""
-#: picard/ui/options/plugins.py:173
+#: picard/ui/options/plugins.py:172
msgid "Uninstall plugin"
msgstr ""
-#: picard/ui/options/plugins.py:416
+#: picard/ui/options/plugins.py:415
msgid "Reloading list of available plugins…"
msgstr ""
-#: picard/ui/options/plugins.py:425
+#: picard/ui/options/plugins.py:424
#, python-format
msgid ""
"An error occurred while loading the plugin \"%(plugin)s\":\n"
@@ -5219,135 +5476,135 @@ msgid ""
"%(error)s"
msgstr ""
-#: picard/ui/options/plugins.py:437
+#: picard/ui/options/plugins.py:436
#, python-format
msgid "The plugin \"%(plugin)s\" is not compatible with this version of Picard."
msgstr ""
-#: picard/ui/options/plugins.py:458
+#: picard/ui/options/plugins.py:457
#, python-format
msgid ""
"The plugin \"%(plugin)s\" will be upgraded to version %(version)s on next"
" run of Picard."
msgstr ""
-#: picard/ui/options/plugins.py:481
+#: picard/ui/options/plugins.py:480
#, python-format
msgid "Uninstall plugin \"%(plugin)s\"?"
msgstr ""
-#: picard/ui/options/plugins.py:482
+#: picard/ui/options/plugins.py:481
#, python-format
msgid "Do you really want to uninstall the plugin \"%(plugin)s\"?"
msgstr ""
-#: picard/ui/options/plugins.py:614
+#: picard/ui/options/plugins.py:613
msgid "Restart Picard to upgrade to new version"
msgstr ""
-#: picard/ui/options/plugins.py:616
+#: picard/ui/options/plugins.py:615
msgid "New version available"
msgstr ""
-#: picard/ui/options/plugins.py:623
+#: picard/ui/options/plugins.py:622
msgid "Authors"
msgstr ""
-#: picard/ui/options/plugins.py:624 picard/util/tags.py:78
+#: picard/ui/options/plugins.py:623 picard/util/tags.py:78
msgid "License"
msgstr ""
-#: picard/ui/options/plugins.py:626
+#: picard/ui/options/plugins.py:625
msgid "User Guide"
msgstr ""
-#: picard/ui/options/plugins.py:692
+#: picard/ui/options/plugins.py:690
#, python-format
msgid "The plugin \"%(plugin)s\" could not be downloaded."
msgstr ""
-#: picard/ui/options/plugins.py:693
+#: picard/ui/options/plugins.py:691
msgid "Please try again later."
msgstr ""
-#: picard/ui/options/profiles.py:62
+#: picard/ui/options/profiles.py:63
msgid "Option Profiles"
msgstr ""
-#: picard/ui/options/profiles.py:111
+#: picard/ui/options/profiles.py:112
msgid "New"
msgstr ""
-#: picard/ui/options/profiles.py:112
+#: picard/ui/options/profiles.py:113
msgid "Create a new profile"
msgstr ""
-#: picard/ui/options/profiles.py:117
+#: picard/ui/options/profiles.py:118
msgid "Copy to a new profile"
msgstr ""
-#: picard/ui/options/profiles.py:121
+#: picard/ui/options/profiles.py:122
msgid "Delete"
msgstr ""
-#: picard/ui/options/profiles.py:122
+#: picard/ui/options/profiles.py:123
msgid "Delete the profile"
msgstr ""
-#: picard/ui/options/profiles.py:209
+#: picard/ui/options/profiles.py:210
msgid "Settings to include in profile"
msgstr ""
-#: picard/ui/options/profiles.py:214
+#: picard/ui/options/profiles.py:215
msgid "title"
msgstr ""
-#: picard/ui/options/profiles.py:251
+#: picard/ui/options/profiles.py:252
msgid "Unknown script"
msgstr ""
-#: picard/ui/options/profiles.py:256
+#: picard/ui/options/profiles.py:257
msgid "No enabled scripts"
msgstr ""
-#: picard/ui/options/profiles.py:257
+#: picard/ui/options/profiles.py:258
msgid "Enabled scripts:"
msgstr ""
-#: picard/ui/options/profiles.py:262
+#: picard/ui/options/profiles.py:263
msgid "No enabled providers"
msgstr ""
-#: picard/ui/options/profiles.py:263
+#: picard/ui/options/profiles.py:264
msgid "Enabled providers:"
msgstr ""
-#: picard/ui/options/profiles.py:280
+#: picard/ui/options/profiles.py:281
#, python-format
msgid "List of %i items"
msgstr ""
-#: picard/ui/options/profiles.py:281
+#: picard/ui/options/profiles.py:282
msgid "Unknown value format"
msgstr ""
-#: picard/ui/options/profiles.py:357
+#: picard/ui/options/profiles.py:358
msgid "Invalid Title"
msgstr ""
-#: picard/ui/options/profiles.py:358
+#: picard/ui/options/profiles.py:359
msgid "The profile title cannot be blank."
msgstr ""
-#: picard/ui/options/ratings.py:37
+#: picard/ui/options/ratings.py:35
msgid "Ratings"
msgstr ""
-#: picard/ui/options/releases.py:161
+#: picard/ui/options/releases.py:159
msgid "Preferred Releases"
msgstr ""
-#: picard/ui/options/releases.py:192
+#: picard/ui/options/releases.py:190
msgid "Reset all"
msgstr ""
@@ -5371,48 +5628,44 @@ msgid ""
"files."
msgstr ""
-#: picard/ui/options/scripting.py:99
+#: picard/ui/options/scripting.py:103
msgid "Scripting"
msgstr ""
-#: picard/ui/options/scripting.py:117
+#: picard/ui/options/scripting.py:121
msgid "Show scripting documentation in new window."
msgstr ""
-#: picard/ui/options/scripting.py:120
+#: picard/ui/options/scripting.py:124
msgid "Import a script file as a new script."
msgstr ""
-#: picard/ui/options/scripting.py:123
+#: picard/ui/options/scripting.py:127
msgid "Export the current script to a file."
msgstr ""
-#: picard/ui/options/scripting.py:127
+#: picard/ui/options/scripting.py:131
msgid "Picard tagging script package"
msgstr ""
-#: picard/ui/options/scripting.py:172
+#: picard/ui/options/scripting.py:176
#, python-format
msgid "%s (imported)"
msgstr ""
-#: picard/ui/options/scripting.py:239
+#: picard/ui/options/scripting.py:244
msgid "Script Error"
msgstr ""
-#: picard/ui/options/tags.py:45
-msgid "Tags"
-msgstr ""
-
-#: picard/ui/options/tags_compatibility_aac.py:39
+#: picard/ui/options/tags_compatibility_aac.py:37
msgid "AAC"
msgstr ""
-#: picard/ui/options/tags_compatibility_ac3.py:39
+#: picard/ui/options/tags_compatibility_ac3.py:37
msgid "AC3"
msgstr ""
-#: picard/ui/options/tags_compatibility_wave.py:40
+#: picard/ui/options/tags_compatibility_wave.py:38
msgid "WAVE"
msgstr ""
@@ -5527,45 +5780,52 @@ msgstr ""
msgid "Open Scripting Documentation in your browser"
msgstr ""
-#: picard/ui/widgets/scriptlistwidget.py:58
+#: picard/ui/widgets/scriptlistwidget.py:59
msgid "Rename script"
msgstr ""
-#: picard/ui/widgets/scriptlistwidget.py:61
+#: picard/ui/widgets/scriptlistwidget.py:62
msgid "Remove script"
msgstr ""
-#: picard/ui/widgets/scriptlistwidget.py:93
+#: picard/ui/widgets/scriptlistwidget.py:94
msgid "Are you sure you want to remove this script?"
msgstr ""
-#: picard/ui/widgets/scripttextedit.py:322
+#: picard/ui/widgets/scripttextedit.py:283
+#, python-format
+msgid ""
+"Function $%s
does not exist.
Are you missing a "
+"plugin?"
+msgstr ""
+
+#: picard/ui/widgets/scripttextedit.py:356
msgid "&Word wrap script"
msgstr ""
-#: picard/ui/widgets/scripttextedit.py:323
+#: picard/ui/widgets/scripttextedit.py:357
msgid "Word wrap long lines in the editor"
msgstr ""
-#: picard/ui/widgets/scripttextedit.py:325
+#: picard/ui/widgets/scripttextedit.py:359
msgid "Ctrl+Shift+W"
msgstr ""
-#: picard/ui/widgets/scripttextedit.py:331
+#: picard/ui/widgets/scripttextedit.py:365
msgid "Show help &tooltips"
msgstr ""
-#: picard/ui/widgets/scripttextedit.py:332
+#: picard/ui/widgets/scripttextedit.py:366
msgid "Show tooltips for script elements"
msgstr ""
-#: picard/ui/widgets/tristatesortheaderview.py:56
+#: picard/ui/widgets/tristatesortheaderview.py:57
msgid ""
"The table is locked. To enable sorting and column resizing\n"
"unlock the table in the table header's context menu."
msgstr ""
-#: picard/util/__init__.py:383
+#: picard/util/__init__.py:361
msgid "No Title"
msgstr ""
@@ -5624,22 +5884,22 @@ msgstr ""
msgid "%(value)s PiB"
msgstr ""
-#: picard/util/checkupdate.py:107
+#: picard/util/checkupdate.py:104
msgid "Error loading Picard releases list: {error_message}"
msgstr ""
-#: picard/util/checkupdate.py:111 picard/util/checkupdate.py:145
-#: picard/util/checkupdate.py:165
+#: picard/util/checkupdate.py:108 picard/util/checkupdate.py:142
+#: picard/util/checkupdate.py:162
msgid "Picard Update"
msgstr ""
-#: picard/util/checkupdate.py:112
+#: picard/util/checkupdate.py:109
msgid ""
"Unable to retrieve the latest version information from the website.\n"
"({url})"
msgstr ""
-#: picard/util/checkupdate.py:146
+#: picard/util/checkupdate.py:143
msgid ""
"A new version of Picard is available.\n"
"\n"
@@ -5649,7 +5909,7 @@ msgid ""
"Would you like to download the new version?"
msgstr ""
-#: picard/util/checkupdate.py:166
+#: picard/util/checkupdate.py:163
msgid ""
"There is no update currently available for your subscribed update level: "
"{update_level}\n"
diff --git a/ui/passworddialog.ui b/ui/passworddialog.ui
index 92f05c532c..1573e73521 100644
--- a/ui/passworddialog.ui
+++ b/ui/passworddialog.ui
@@ -19,7 +19,7 @@
- Authentication required
+ Authentication Required
-