|
1 | 1 | {
|
2 | 2 | "app.git": "Git Commit",
|
3 | 3 | "app.pre_release": "Pre-Release",
|
| 4 | + "app.title": "{base_title} - Library '{library_dir}'", |
| 5 | + "drop_import.description": "The following files have filenames already exist in the library", |
| 6 | + "drop_import.duplicates_choice.plural": "The following {count} files have filenames that already exist in the library.", |
| 7 | + "drop_import.duplicates_choice.singular": "The following file has a filename that already exists in the library.", |
| 8 | + "drop_import.progress.label.initial": "Importing New Files...", |
| 9 | + "drop_import.progress.label.plural": "Importing New Files...\n{count} Files Imported.{suffix}", |
| 10 | + "drop_import.progress.label.singular": "Importing New Files...\n1 File imported.{suffix}", |
| 11 | + "drop_import.progress.window_title": "Import Files", |
| 12 | + "drop_import.title": "Conflicting File(s)", |
4 | 13 | "edit.tag_manager": "Manage Tags",
|
5 |
| - "entries.duplicate.merge.label": "Merging Duplicate Entries", |
| 14 | + "entries.duplicate.merge.label": "Merging Duplicate Entries...", |
6 | 15 | "entries.duplicate.merge": "Merge Duplicate Entries",
|
7 | 16 | "entries.duplicate.refresh": "Refresh Duplicate Entries",
|
8 | 17 | "entries.duplicates.description": "Duplicate entries are defined as multiple entries which point to the same file on disk. Merging these will combine the tags and metadata from all duplicates into a single consolidated entry. These are not to be confused with \"duplicate files\", which are duplicates of your files themselves outside of TagStudio.",
|
9 |
| - "entries.mirror.confirmation": "Are you sure you want to mirror the following %{len(self.lib.dupe_files)} Entries?", |
10 |
| - "entries.mirror.label": "Mirroring 1/%{count} Entries...", |
| 18 | + "entries.mirror.confirmation": "Are you sure you want to mirror the following {count} Entries?", |
| 19 | + "entries.mirror.label": "Mirroring {idx}/{total} Entries...", |
11 | 20 | "entries.mirror.title": "Mirroring Entries",
|
12 |
| - "entries.mirror": "Mirror", |
| 21 | + "entries.mirror.window_title": "Mirror Entries", |
| 22 | + "entries.mirror": "&Mirror", |
13 | 23 | "entries.tags": "Tags",
|
14 |
| - "entries.unlinked.delete.confirm": "Are you sure you want to delete the following %{len(self.lib.missing_files)} entries?", |
15 |
| - "entries.unlinked.delete.deleting_count": "Deleting %{x[0]+1}/{len(self.lib.missing_files)} Unlinked Entries", |
| 24 | + "entries.unlinked.delete_alt": "De&lete Unlinked Entries", |
| 25 | + "entries.unlinked.delete.confirm": "Are you sure you want to delete the following {count} entries?", |
| 26 | + "entries.unlinked.delete.deleting_count": "Deleting {idx}/{count} Unlinked Entries", |
16 | 27 | "entries.unlinked.delete.deleting": "Deleting Entries",
|
17 | 28 | "entries.unlinked.delete": "Delete Unlinked Entries",
|
18 |
| - "entries.unlinked.description": "Each library entry is linked to a file in one of your directories. If a file linked to an entry is moved or deleted outside of TagStudio, it is then considered unlinked. Unlinked entries may be automatically relinked via searching your directories or deleted if desired.", |
19 |
| - "entries.unlinked.refresh_all": "Refresh All", |
20 |
| - "entries.unlinked.relink.attempting": "Attempting to Relink %{x[0]+1}/%{len(self.lib.missing_files)} Entries, %{self.fixed} Successfully Relinked", |
21 |
| - "entries.unlinked.relink.manual": "Manual Relink", |
| 29 | + "entries.unlinked.description": "Each library entry is linked to a file in one of your directories. If a file linked to an entry is moved or deleted outside of TagStudio, it is then considered unlinked.<br><br>Unlinked entries may be automatically relinked via searching your directories or deleted if desired.", |
| 30 | + "entries.unlinked.missing_count.none": "Unlinked Entries: N/A", |
| 31 | + "entries.unlinked.missing_count.some": "Unlinked Entries: {count}", |
| 32 | + "entries.unlinked.refresh_all": "&Refresh All", |
| 33 | + "entries.unlinked.relink.attempting": "Attempting to Relink {idx}/{missing_count} Entries, {fixed_count} Successfully Relinked", |
| 34 | + "entries.unlinked.relink.manual": "&Manual Relink", |
22 | 35 | "entries.unlinked.relink.title": "Relinking Entries",
|
23 | 36 | "entries.unlinked.scanning": "Scanning Library for Unlinked Entries...",
|
24 |
| - "entries.unlinked.search_and_relink": "Search && Relink", |
| 37 | + "entries.unlinked.search_and_relink": "&Search && Relink", |
25 | 38 | "entries.unlinked.title": "Fix Unlinked Entries",
|
26 | 39 | "field.copy": "Copy Field",
|
27 | 40 | "field.edit": "Edit Field",
|
|
30 | 43 | "file.date_created": "Date Created",
|
31 | 44 | "file.date_modified": "Date Modified",
|
32 | 45 | "file.dimensions": "Dimensions",
|
| 46 | + "file.duplicates.description": "TagStudio supports importing DupeGuru results to manage duplicate files.", |
33 | 47 | "file.duplicates.dupeguru.advice": "After mirroring, you're free to use DupeGuru to delete the unwanted files. Afterwards, use TagStudio's \"Fix Unlinked Entries\" feature in the Tools menu in order to delete the unlinked Entries.",
|
34 | 48 | "file.duplicates.dupeguru.file_extension": "DupeGuru Files (*.dupeguru)",
|
35 |
| - "file.duplicates.dupeguru.load_file": "Load DupeGuru File", |
| 49 | + "file.duplicates.dupeguru.load_file": "&Load DupeGuru File", |
36 | 50 | "file.duplicates.dupeguru.no_file": "No DupeGuru File Selected",
|
37 | 51 | "file.duplicates.dupeguru.open_file": "Open DupeGuru Results File",
|
38 | 52 | "file.duplicates.fix": "Fix Duplicate Files",
|
39 | 53 | "file.duplicates.matches_uninitialized": "Duplicate File Matches: N/A",
|
40 |
| - "file.duplicates.matches": "Duplicate File Matches: %{count}", |
41 |
| - "file.duplicates.mirror_entries": "Mirror Entries", |
| 54 | + "file.duplicates.matches": "Duplicate File Matches: {count}", |
| 55 | + "file.duplicates.mirror_entries": "&Mirror Entries", |
42 | 56 | "file.duplicates.mirror.description": "Mirror the Entry data across each duplicate match set, combining all data while not removing or duplicating fields. This operation will not delete any files or data.",
|
43 | 57 | "file.duration": "Length",
|
44 | 58 | "file.not_found": "File Not Found",
|
45 | 59 | "file.open_file_with": "Open file with",
|
46 | 60 | "file.open_file": "Open file",
|
47 |
| - "file.open_location.generic": "Show file in explorer", |
| 61 | + "file.open_location.generic": "Show file in file explorer", |
48 | 62 | "file.open_location.mac": "Reveal in Finder",
|
49 | 63 | "file.open_location.windows": "Show in File Explorer",
|
50 | 64 | "folders_to_tags.close_all": "Close All",
|
|
53 | 67 | "folders_to_tags.open_all": "Open All",
|
54 | 68 | "folders_to_tags.title": "Create Tags From Folders",
|
55 | 69 | "generic.add": "Add",
|
| 70 | + "generic.apply_alt": "&Apply", |
56 | 71 | "generic.apply": "Apply",
|
| 72 | + "generic.cancel_alt": "&Cancel", |
57 | 73 | "generic.cancel": "Cancel",
|
| 74 | + "generic.close": "Close", |
| 75 | + "generic.continue": "Continue", |
58 | 76 | "generic.copy": "Copy",
|
59 | 77 | "generic.cut": "Cut",
|
| 78 | + "generic.delete_alt": "&Delete", |
60 | 79 | "generic.delete": "Delete",
|
| 80 | + "generic.done_alt": "&Done", |
61 | 81 | "generic.done": "Done",
|
| 82 | + "generic.edit_alt": "&Edit", |
62 | 83 | "generic.edit": "Edit",
|
| 84 | + "generic.filename": "Filename", |
63 | 85 | "generic.navigation.back": "Back",
|
64 | 86 | "generic.navigation.next": "Next",
|
| 87 | + "generic.overwrite_alt": "&Overwrite", |
| 88 | + "generic.overwrite": "Overwrite", |
65 | 89 | "generic.paste": "Paste",
|
66 | 90 | "generic.recent_libraries": "Recent Libraries",
|
| 91 | + "generic.rename_alt": "&Rename", |
| 92 | + "generic.rename": "Rename", |
| 93 | + "generic.save": "Save", |
| 94 | + "generic.skip_alt": "&Skip", |
| 95 | + "generic.skip": "Skip", |
67 | 96 | "help.visit_github": "Visit GitHub Repository",
|
68 | 97 | "home.search_entries": "Search Entries",
|
69 | 98 | "home.search_library": "Search Library",
|
70 | 99 | "home.search_tags": "Search Tags",
|
71 | 100 | "home.search": "Search",
|
| 101 | + "home.thumbnail_size.extra_large": "Extra Large Thumbnails", |
| 102 | + "home.thumbnail_size.large": "Large Thumbnails", |
| 103 | + "home.thumbnail_size.medium": "Medium Thumbnails", |
| 104 | + "home.thumbnail_size.mini": "Mini Thumbnails", |
| 105 | + "home.thumbnail_size.small": "Small Thumbnails", |
72 | 106 | "home.thumbnail_size": "Thumbnail Size",
|
73 |
| - "ignore_list.add_extension": "Add Extension", |
| 107 | + "ignore_list.add_extension": "&Add Extension", |
74 | 108 | "ignore_list.mode.exclude": "Exclude",
|
75 | 109 | "ignore_list.mode.include": "Include",
|
76 |
| - "ignore_list.mode.label": "List Mode", |
| 110 | + "ignore_list.mode.label": "List Mode:", |
77 | 111 | "ignore_list.title": "File Extensions",
|
| 112 | + "json_migration.checking_for_parity": "Checking for Parity...", |
| 113 | + "json_migration.creating_database_tables": "Creating SQL Database Tables...", |
| 114 | + "json_migration.description": "<br>Start and preview the results of the library migration process. The converted library will <i>not</i> be used unless you click \"Finish Migration\". <br><br>Library data should either have matching values or feature a \"Matched\" label. Values that do not match will be displayed in red and feature a \"<b>(!)</b>\" symbol next to them.<br><center><i>This process may take up to several minutes for larger libraries.</i></center>", |
| 115 | + "json_migration.discrepancies_found.description": "Discrepancies were found between the original and converted library formats. Please review and choose to whether continue with the migration or to cancel.", |
| 116 | + "json_migration.discrepancies_found": "Library Discrepancies Found", |
| 117 | + "json_migration.finish_migration": "Finish Migration", |
| 118 | + "json_migration.heading.aliases": "Aliases:", |
| 119 | + "json_migration.heading.colors": "Colors:", |
| 120 | + "json_migration.heading.differ": "Discrepancy", |
| 121 | + "json_migration.heading.entires": "Entries:", |
| 122 | + "json_migration.heading.extension_list_type": "Extension List Type:", |
| 123 | + "json_migration.heading.fields": "Fields:", |
| 124 | + "json_migration.heading.file_extension_list": "File Extension List:", |
| 125 | + "json_migration.heading.match": "Matched", |
| 126 | + "json_migration.heading.parent_tags": "Parent Tags:", |
| 127 | + "json_migration.heading.paths": "Paths:", |
| 128 | + "json_migration.heading.shorthands": "Shorthands:", |
| 129 | + "json_migration.heading.tags": "Tags:", |
| 130 | + "json_migration.info.description": "Library save files created with TagStudio versions <b>9.4 and below</b> will need to be migrated to the new <b>v9.5+</b> format.<br><h2>What you need to know:</h2><ul><li>Your existing library save file will <b><i>NOT</i></b> be deleted</li><li>Your personal files will <b><i>NOT</i></b> be deleted, moved, or modified</li><li>The new v9.5+ save format can not be opened in earlier versions of TagStudio</li></ul>", |
| 131 | + "json_migration.migrating_files_entries": "Migrating {entries:,d} File Entries...", |
| 132 | + "json_migration.migration_complete_with_discrepancies": "Migration Complete, Discrepancies Found", |
| 133 | + "json_migration.migration_complete": "Migration Complete!", |
| 134 | + "json_migration.start_and_preview": "Start and Preview", |
| 135 | + "json_migration.title.new_lib": "<h2>v9.5+ Library</h2>", |
| 136 | + "json_migration.title.old_lib": "<h2>v9.4 Library</h2>", |
| 137 | + "json_migration.title": "Save Format Migration: \"{path}\"", |
| 138 | + "landing.open_create_library": "Open/Create Library {shortcut}", |
78 | 139 | "library.field.add": "Add Field",
|
79 |
| - "library.field.confirm_remove": "Are you sure you want to remove this \"%{self.lib.get_field_attr(field, \"name\")}\" field?", |
| 140 | + "library.field.confirm_remove": "Are you sure you want to remove this \"{name}\" field?", |
80 | 141 | "library.field.mixed_data": "Mixed Data",
|
81 | 142 | "library.field.remove": "Remove Field",
|
82 | 143 | "library.missing": "Library Location is Missing",
|
83 | 144 | "library.name": "Library",
|
84 | 145 | "library.refresh.scanning_preparing": "Scanning Directories for New Files...\nPreparing...",
|
85 |
| - "library.refresh.scanning": "Scanning Directories for New Files...\n%{x + 1} File%{\"s\" if x + 1 != 1 else \"\"} Searched, %{len(self.lib.files_not_in_library)} New Files Found", |
| 146 | + "library.refresh.scanning.plural": "Scanning Directories for New Files...\n{searched_count} Files Searched, {found_count} New Files Found", |
| 147 | + "library.refresh.scanning.singular": "Scanning Directories for New Files...\n{searched_count} File Searched, {found_count} New Files Found", |
86 | 148 | "library.refresh.title": "Refreshing Directories",
|
87 | 149 | "library.scan_library.title": "Scanning Library",
|
88 |
| - "macros.running.dialog.new_entries": "Running Configured Macros on %{x + 1}/%{len(new_ids)} New Entries", |
| 150 | + "macros.running.dialog.new_entries": "Running Configured Macros on {count}/{total} New Entries", |
89 | 151 | "macros.running.dialog.title": "Running Macros on New Entries",
|
| 152 | + "media_player.autoplay": "Autoplay", |
90 | 153 | "menu.edit.ignore_list": "Ignore Files and Folders",
|
| 154 | + "menu.edit.manage_file_extensions": "Manage File Extensions", |
| 155 | + "menu.edit.manage_tags": "Manage Tags", |
| 156 | + "menu.edit.new_tag": "New &Tag", |
91 | 157 | "menu.edit": "Edit",
|
| 158 | + "menu.file.close_library": "&Close Library", |
92 | 159 | "menu.file.new_library": "New Library",
|
93 |
| - "menu.file.open_create_library": "Open/Create Library", |
| 160 | + "menu.file.open_create_library": "&Open/Create Library", |
94 | 161 | "menu.file.open_library": "Open Library",
|
| 162 | + "menu.file.refresh_directories": "&Refresh Directories", |
| 163 | + "menu.file.save_backup": "&Save Library Backup", |
95 | 164 | "menu.file.save_library": "Save Library",
|
96 |
| - "menu.file": "File", |
97 |
| - "menu.help": "Help", |
98 |
| - "menu.macros": "Macros", |
| 165 | + "menu.file": "&File", |
| 166 | + "menu.help": "&Help", |
| 167 | + "menu.macros.folders_to_tags": "Folders to Tags", |
| 168 | + "menu.macros": "&Macros", |
99 | 169 | "menu.select": "Select",
|
100 |
| - "menu.tools": "Tools", |
101 |
| - "menu.view": "View", |
| 170 | + "menu.tools.fix_duplicate_files": "Fix Duplicate &Files", |
| 171 | + "menu.tools.fix_unlinked_entries": "Fix &Unlinked Entries", |
| 172 | + "menu.tools": "&Tools", |
| 173 | + "menu.view": "&View", |
102 | 174 | "menu.window": "Window",
|
103 | 175 | "preview.no_selection": "No Items Selected",
|
104 | 176 | "select.all": "Select All",
|
105 | 177 | "select.clear": "Clear Selection",
|
106 | 178 | "settings.open_library_on_start": "Open Library on Start",
|
107 | 179 | "settings.show_filenames_in_grid": "Show Filenames in Grid",
|
108 | 180 | "settings.show_recent_libraries": "Show Recent Libraries",
|
109 |
| - "splash.opening_library": "Opening Library", |
110 |
| - "status.library_backup_success": "Library Backup Saved at:", |
| 181 | + "splash.opening_library": "Opening Library \"{library_path}\"...", |
| 182 | + "status.library_backup_in_progress": "Saving Library Backup...", |
| 183 | + "status.library_backup_success": "Library Backup Saved at: \"{path}\" ({time_span})", |
| 184 | + "status.library_closed": "Library Closed ({time_span})", |
| 185 | + "status.library_closing": "Closing Library...", |
111 | 186 | "status.library_save_success": "Library Saved and Closed!",
|
112 |
| - "status.library_search_query": "Searching Library for", |
113 |
| - "status.results_found": "{results.total_count} Results Found", |
| 187 | + "status.library_search_query": "Searching Library...", |
| 188 | + "status.results_found": "{count} Results Found ({time_span})", |
114 | 189 | "status.results": "Results",
|
115 | 190 | "tag_manager.title": "Library Tags",
|
116 | 191 | "tag.add_to_search": "Add to Search",
|
| 192 | + "tag.add.plural": "Add Tags", |
117 | 193 | "tag.add": "Add Tag",
|
118 | 194 | "tag.aliases": "Aliases",
|
119 | 195 | "tag.color": "Color",
|
| 196 | + "tag.confirm_delete": "Are you sure you want to delete the tag \"{tag_name}\"?", |
| 197 | + "tag.create": "Create Tag", |
| 198 | + "tag.edit": "Edit Tag", |
120 | 199 | "tag.name": "Name",
|
121 | 200 | "tag.new": "New Tag",
|
122 | 201 | "tag.parent_tags.add": "Add Parent Tag(s)",
|
123 | 202 | "tag.parent_tags.description": "This tag can be treated as a substitute for any of these Parent Tags in searches.",
|
124 | 203 | "tag.parent_tags": "Parent Tags",
|
| 204 | + "tag.remove": "Remove Tag", |
125 | 205 | "tag.search_for_tag": "Search for Tag",
|
126 | 206 | "tag.shorthand": "Shorthand",
|
| 207 | + "tag.tag_name_required": "Tag Name (Required)", |
127 | 208 | "view.size.0": "Mini",
|
128 | 209 | "view.size.1": "Small",
|
129 | 210 | "view.size.2": "Medium",
|
130 | 211 | "view.size.3": "Large",
|
131 |
| - "view.size.4": "Extra Large" |
| 212 | + "view.size.4": "Extra Large", |
| 213 | + "window.message.error_opening_library": "Error opening library.", |
| 214 | + "window.title.error": "Error", |
| 215 | + "window.title.open_create_library": "Open/Create Library" |
132 | 216 | }
|
0 commit comments