diff --git a/CHANGES b/CHANGES index a4c5c90..85fbea2 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,67 @@ +v2.4.255 (1 Mar 2023) +------------------------------------------------------------------------------- + +IMPORTANT INFORMATION +- youtube-dl is now classed as 'not recommended for most users'. Note that, as + of February 2022, youtube-dl can no longer download any YouTube video (but + other video websites might still work) +- Tartube's 'portable' installer (for MS Windows) is not working as intended, + due to an unresolved Python issue. You cannot move the installation folder + from one location to another, after you have used it to install yt-dlp + and/or FFmpeg. As a workaround, you can place multiple copies of the + original 'portable' installer on your filesystem; for each copy, you should + install yt-dlp and FFmpeg separately. (Each copy can still share the same + video download folder.) + +MAJOR NEW FEATURES +- While checking/downloading videos, the Progress tab now shows the average + download speed, total disk space consumed, and the total number of + checked/downloaded videos + +MINOR NEW FEATURES +- In the Progress tab and Classic Mode tab, the width of columns can be + adjusted. For the benefit of users with very large monitors, it's now + possible for Tartube to remember the adjusted widths of some columns which + tend to contain a lot of text (but not those which contain very little + text). To enable the setting, select Edit > System preferences... > + Windows > Main window > In the Progress/Classic Mode tabs, remember the + width of (some) columns (Git 509) +- In the Errors/Warnings tab, in multi-line error messages, empty lines are + now ignored (leaving just the lines that actually contain visible text) +- In the Progress tab, in the bottom half of the window, you can now right- + click a video and select the new 'Show video location' option +- Enlarged and updated the screenshots in the tutorial (Help > + Show tutorial...) so the detail is much easier to see +- Added numerous translator's notes throughout the code; these are visible to + anyone working on a translation (such as users of weblate.org) +- yt-dlp sometimes downloads videos from VK, whose file extension is set to + .unknown_video instead of .mp4. As temporary mitigation for this problem, + you can now auto-convert those videos (Operations > Tidy up files > + convert '.unknown_video' file extensions to .mp4), and then update + Tartube's database (Operations > Refresh database...) (Git #472) + +MAJOR FIXES +- Fixed auto-detection of yt-dlp installation location, when it has been + installed from PyPI. This issue did not affect MS Windows users +- The Classic Mode tab was unable to download videos as .m4a files, fixed + (Git #506) +- In the Progress tab, the column showing the number of videos downloads (e.g. + 5/14) was not working again, due to another change in yt-dlp's behaviour. + Fixed it again (Git #504) +- Fixed problems when looking for livestreams from websites whose metadata + doesn't specify an 'is_live' field +- Fixed failure to load a Tartube config file from v.2.3.110 (Git #510) + +MINOR FIXES +- The tutorial (Help > Show tutorial...) was missing its second page. Restored + it +- Fixed incorrect version format in desktop file (Git #496) +- Fixed rare failure to load database, because of change to its structure in + v2.4.213 (Git #498) +- On MS Windows only, when opening the MSYS2 terminal from Tartube's menu, + the dialogue window, when closed by the user, caused the terminal window + itself to be hidden behind the main window. Fixed + v2.4.221 (9 Jan 2023) ------------------------------------------------------------------------------- diff --git a/README.rst b/README.rst index d81bbdb..466d38c 100644 --- a/README.rst +++ b/README.rst @@ -66,16 +66,16 @@ For a full list of new features and fixes, see `recent changes `__. 3 Downloads =========== -Stable release: **v2.4.221 (9 Jan 2023)** +Stable release: **v2.4.255 (1 Mar 2023)** -Development release: **v2.4.245 (26 Feb 2023)** +Development release: **v2.4.255 (1 Mar 2023)** Official packages (also available from the `Github release page `__): -- `MS Windows (64-bit) installer `__ and `portable edition `__ from Sourceforge +- `MS Windows (64-bit) installer `__ and `portable edition `__ from Sourceforge - Tartube is no longer supported on MS Windows (32-bit) - see `7.23 Doesn't work on 32-bit Windows`_ -- `DEB package (for Debian-based distros, e.g. Ubuntu, Linux Mint) `__ from Sourceforge -- `RPM package (for RHEL-based distros, e.g. Fedora) `__ from Sourceforge +- `DEB package (for Debian-based distros, e.g. Ubuntu, Linux Mint) `__ from Sourceforge +- `RPM package (for RHEL-based distros, e.g. Fedora) `__ from Sourceforge Official 'Strict' packages: @@ -92,7 +92,7 @@ Semi-official packages (Linux): Source code: -- `Source code `__ from Sourceforge +- `Source code `__ from Sourceforge - `Source code `__ and `support `__ from GitHub - In case this Github repository is taken down, there is an official backup `here `__ diff --git a/VERSION b/VERSION index b0a08ec..2cd92cf 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.4.245 +2.4.255 diff --git a/locale/en_US/LC_MESSAGES/base.po b/locale/en_US/LC_MESSAGES/base.po index 06a78f1..9be3d0c 100644 --- a/locale/en_US/LC_MESSAGES/base.po +++ b/locale/en_US/LC_MESSAGES/base.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: 2.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-09 16:20+0000\n" +"POT-Creation-Date: 2023-03-01 09:14+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: A S Lewis \n" "Language-Team: en_US\n" @@ -24,7 +24,7 @@ msgstr "" msgid "Small" msgstr "" -#: .././mainapp.py:308 .././config.py:7079 +#: .././mainapp.py:308 .././config.py:7227 msgid "Medium" msgstr "" @@ -36,7 +36,7 @@ msgstr "" msgid "Enormous" msgstr "" -#: .././mainapp.py:1030 +#: .././mainapp.py:1040 msgid "" "Failed to convert a thumbnail from .webp to .jpg. No more conversions will " "be attempted until you install FFmpeg on your system, or (if FFmpeg is " @@ -45,226 +45,274 @@ msgid "" "conversions" msgstr "" -#: .././mainapp.py:2236 +#: .././mainapp.py:2243 +msgid "" +"TRANSLATOR'S NOTE: Videos in the Videos tab can be displayed in one of " +"several formats" +msgstr "" + +#: .././mainapp.py:2250 msgid "_Basic list" msgstr "" -#: .././mainapp.py:2241 +#: .././mainapp.py:2255 msgid "Basic list with _container names" msgstr "" -#: .././mainapp.py:2246 +#: .././mainapp.py:2260 msgid "_Thumbnails" msgstr "" -#: .././mainapp.py:2251 +#: .././mainapp.py:2265 msgid "Thumbnails and _extra labels" msgstr "" -#: .././mainapp.py:2256 +#: .././mainapp.py:2270 msgid "T_humbnails and container names" msgstr "" -#: .././mainapp.py:2261 +#: .././mainapp.py:2275 msgid "Th_umbnails, container names and extra labels" msgstr "" -#: .././mainapp.py:2266 +#: .././mainapp.py:2280 msgid "_Grid" msgstr "" -#: .././mainapp.py:2271 +#: .././mainapp.py:2285 msgid "G_rid with extra labels" msgstr "" -#: .././mainapp.py:3479 +#: .././mainapp.py:3493 msgid "" "Tartube can't create the folder in which its configuration file is saved" msgstr "" #. Load/save has been disabled. Show the error message in a dialogue #. window, then shut down -#: .././mainapp.py:3526 +#: .././mainapp.py:3540 msgid "Tartube failed to start because:" msgstr "" -#: .././mainapp.py:3534 +#: .././mainapp.py:3548 msgid "If you don't know how to resolve this error, please contact the authors" msgstr "" -#: .././mainapp.py:3764 +#: .././mainapp.py:3778 msgid "Because of an error, file load/save has been disabled" msgstr "" -#: .././mainapp.py:3773 +#: .././mainapp.py:3787 msgid "Because of the error, file load/save has been disabled" msgstr "" -#: .././mainapp.py:3875 +#: .././mainapp.py:3889 +msgid "" +"TRANSLATOR'S NOTE: In Tartube, there is a small set of'operations', each " +"with a unique name. Most operations use a separate Python file. Two or more " +"operations never happen simultaneously. You can choose any name you like for " +"each type of operation; for example, you don't need to translate the Process " +"Operation literally" +msgstr "" + +#: .././mainapp.py:3897 +msgid "" +"TRANSLATOR'S NOTE: Download operations can download videos or fetch a list " +"of downloadable videos (usually called 'checking' the videos)" +msgstr "" + +#: .././mainapp.py:3902 +msgid "TRANSLATOR'S NOTE: Update operations update youtube-dl, FFmpeg, etc" +msgstr "" + +#: .././mainapp.py:3906 +msgid "" +"TRANSLATOR'S NOTE: Refresh operations examine the files in Tartube's data " +"folder, and update the database accordingly" +msgstr "" + +#: .././mainapp.py:3911 +msgid "" +"TRANSLATOR'S NOTE: Info operations fetch a list of available formats/" +"subtitles for a video" +msgstr "" + +#: .././mainapp.py:3915 +msgid "" +"TRANSLATOR'S NOTE: Tidy operations remove or convert files in Tartube's data " +"folder" +msgstr "" + +#: .././mainapp.py:3919 +msgid "" +"TRANSLATOR'S NOTE: Process operations convert videos using FFmpeg or AVConv" +msgstr "" + +#: .././mainapp.py:3924 msgid "There is a download operation in progress." msgstr "" -#: .././mainapp.py:3877 +#: .././mainapp.py:3926 msgid "There is an update operation in progress." msgstr "" -#: .././mainapp.py:3879 +#: .././mainapp.py:3928 msgid "There is a refresh operation in progress." msgstr "" -#: .././mainapp.py:3881 +#: .././mainapp.py:3930 msgid "There is an info operation in progress." msgstr "" -#: .././mainapp.py:3883 +#: .././mainapp.py:3932 msgid "There is a tidy operation in progress." msgstr "" -#: .././mainapp.py:3885 +#: .././mainapp.py:3934 msgid "There is a process operation in progress." msgstr "" -#: .././mainapp.py:3890 +#: .././mainapp.py:3939 msgid "Are you sure you want to quit Tartube?" msgstr "" -#: .././mainapp.py:4125 +#: .././mainapp.py:4174 msgid "Failed to load the Tartube config file (failed sanity check)" msgstr "" -#: .././mainapp.py:4148 +#: .././mainapp.py:4197 msgid "Failed to load the Tartube config file (file is locked)" msgstr "" -#: .././mainapp.py:4178 +#: .././mainapp.py:4227 msgid "Failed to load the Tartube config file (JSON load failure)" msgstr "" -#: .././mainapp.py:4196 +#: .././mainapp.py:4245 msgid "Failed to load the Tartube config file (file is invalid)" msgstr "" -#: .././mainapp.py:4214 +#: .././mainapp.py:4263 msgid "" "Failed to load the Tartube config file (file cannot be read by this version)" msgstr "" -#: .././mainapp.py:4229 +#: .././mainapp.py:4278 msgid "Failed to load the Tartube config file (missing file type)" msgstr "" -#: .././mainapp.py:5406 +#: .././mainapp.py:5486 msgid "Failed to save the Tartube config file (failed sanity check)" msgstr "" -#: .././mainapp.py:5825 +#: .././mainapp.py:5929 msgid "Failed to save the Tartube config file (file is locked)" msgstr "" -#: .././mainapp.py:5827 .././mainapp.py:7891 .././mainapp.py:7954 -#: .././mainapp.py:7960 +#: .././mainapp.py:5931 .././mainapp.py:7996 .././mainapp.py:8059 +#: .././mainapp.py:8065 msgid "File load/save has been disabled" msgstr "" -#: .././mainapp.py:5846 +#: .././mainapp.py:5950 msgid "Failed to save the Tartube config file (file already in use)" msgstr "" -#: .././mainapp.py:5865 +#: .././mainapp.py:5969 msgid "Failed to save the Tartube config file" msgstr "" -#: .././mainapp.py:5975 .././mainapp.py:5990 .././mainapp.py:6023 +#: .././mainapp.py:6079 .././mainapp.py:6094 .././mainapp.py:6127 msgid "Failed to load the Tartube database file" msgstr "" -#: .././mainapp.py:6039 +#: .././mainapp.py:6143 msgid "The Tartube database file is invalid" msgstr "" -#: .././mainapp.py:6056 +#: .././mainapp.py:6160 msgid "Database file can't be read by this version of Tartube" msgstr "" -#: .././mainapp.py:6458 +#: .././mainapp.py:6562 msgid "Tartube is applying an essential database update" msgstr "" -#: .././mainapp.py:6460 +#: .././mainapp.py:6564 msgid "This might take a few minutes, so please be patient" msgstr "" -#: .././mainapp.py:7512 +#: .././mainapp.py:7616 msgid "General (default) download options" msgstr "" -#: .././mainapp.py:7518 +#: .././mainapp.py:7622 msgid "Download options for the Classic Mode tab" msgstr "" -#: .././mainapp.py:7885 .././mainapp.py:7950 .././mainapp.py:7959 +#: .././mainapp.py:7990 .././mainapp.py:8055 .././mainapp.py:8064 msgid "Failed to save the Tartube database file" msgstr "" -#: .././mainapp.py:7888 +#: .././mainapp.py:7993 msgid "(Could not make a backup copy of the existing file)" msgstr "" -#: .././mainapp.py:7930 +#: .././mainapp.py:8035 msgid "Failed to save the Tartube database file (file already in use)" msgstr "" -#: .././mainapp.py:7952 +#: .././mainapp.py:8057 msgid "A backup of the previous file can be found at:" msgstr "" -#: .././mainapp.py:8133 .././mainapp.py:8143 +#: .././mainapp.py:8238 .././mainapp.py:8248 msgid "Database file created" msgstr "" -#: .././mainapp.py:8518 +#: .././mainapp.py:8623 msgid "Tartube's database can't be checked while an operation is in progress" msgstr "" -#: .././mainapp.py:8772 +#: .././mainapp.py:8877 msgid "Database check complete, no inconsistencies found" msgstr "" -#: .././mainapp.py:8807 +#: .././mainapp.py:8912 msgid "Database check complete, problems found:" msgstr "" -#: .././mainapp.py:8810 +#: .././mainapp.py:8915 msgid "" "Do you want to repair these problems? (The database will be fixed, but no " "files will be deleted)" msgstr "" -#: .././mainapp.py:9021 +#: .././mainapp.py:9126 msgid "Database inconsistencies repaired" msgstr "" -#: .././mainapp.py:10376 .././config.py:28185 +#: .././mainapp.py:10517 .././config.py:28963 msgid "Please select Tartube's data folder" msgstr "" -#: .././mainapp.py:10839 +#: .././mainapp.py:10980 msgid "" "A download operation cannot start if one or more configuration windows are " "still open" msgstr "" -#: .././mainapp.py:10863 .././mainapp.py:10888 +#: .././mainapp.py:11004 .././mainapp.py:11029 #, python-brace-format msgid "You only have {0} / {1} Gb remaining on your device" msgstr "" -#: .././mainapp.py:10891 .././mainapp.py:17348 .././mainapp.py:17469 -#: .././mainapp.py:17656 .././mainwin.py:21717 +#: .././mainapp.py:11032 .././mainapp.py:17495 .././mainapp.py:17616 +#: .././mainapp.py:17803 .././mainwin.py:22229 msgid "Are you sure you want to continue?" msgstr "" -#: .././mainapp.py:10983 +#: .././mainapp.py:11124 msgid "" "1. Copy URLs into the box at the top\n" "2. Select a destination and a format\n" @@ -272,608 +320,608 @@ msgid "" "4. Click 'Download all'" msgstr "" -#: .././mainapp.py:10991 +#: .././mainapp.py:11132 msgid "There is nothing to check!" msgstr "" -#: .././mainapp.py:10995 +#: .././mainapp.py:11136 msgid "There is nothing to download!" msgstr "" -#: .././mainapp.py:11284 +#: .././mainapp.py:11428 msgid "Download operation complete" msgstr "" -#: .././mainapp.py:11286 +#: .././mainapp.py:11430 msgid "Download operation halted" msgstr "" -#: .././mainapp.py:11290 +#: .././mainapp.py:11434 msgid "Videos downloaded:" msgstr "" -#: .././mainapp.py:11291 .././config.py:29295 .././config.py:29352 +#: .././mainapp.py:11435 .././config.py:30098 .././config.py:30160 msgid "Videos checked:" msgstr "" -#: .././mainapp.py:11298 +#: .././mainapp.py:11442 msgid "Clips downloaded:" msgstr "" -#: .././mainapp.py:11301 +#: .././mainapp.py:11445 msgid "Video slices removed:" msgstr "" -#: .././mainapp.py:11305 .././mainapp.py:11997 .././mainapp.py:12509 -#: .././mainapp.py:12912 +#: .././mainapp.py:11449 .././mainapp.py:12141 .././mainapp.py:12656 +#: .././mainapp.py:13059 msgid "Time taken:" msgstr "" -#: .././mainapp.py:11497 +#: .././mainapp.py:11641 msgid "" "An update operation cannot start if one or more configuration windows are " "still open" msgstr "" -#: .././mainapp.py:11700 +#: .././mainapp.py:11844 msgid "Installation failed" msgstr "" -#: .././mainapp.py:11702 +#: .././mainapp.py:11846 msgid "Installation complete" msgstr "" -#: .././mainapp.py:11706 +#: .././mainapp.py:11850 msgid "Update operation failed" msgstr "" -#: .././mainapp.py:11708 +#: .././mainapp.py:11852 msgid "Update operation halted" msgstr "" -#: .././mainapp.py:11710 +#: .././mainapp.py:11854 msgid "Update operation complete" msgstr "" -#: .././mainapp.py:11712 +#: .././mainapp.py:11856 msgid "version:" msgstr "" -#: .././mainapp.py:11716 +#: .././mainapp.py:11860 msgid "(unknown)" msgstr "" -#: .././mainapp.py:11818 +#: .././mainapp.py:11962 msgid "" "A refresh operation cannot start if one or more configuration windows are " "still open" msgstr "" -#: .././mainapp.py:11831 +#: .././mainapp.py:11975 msgid "" "During a refresh operation, Tartube analyses its data folder, looking for " "videos that haven't yet been added to its database" msgstr "" -#: .././mainapp.py:11835 +#: .././mainapp.py:11979 msgid "" "You only need to perform a refresh operation if you have manually copied " "videos into Tartube's data folder" msgstr "" -#: .././mainapp.py:11842 +#: .././mainapp.py:11986 msgid "" "Before starting a refresh operation, you should click the 'Check all' button " "in the main window" msgstr "" -#: .././mainapp.py:11849 +#: .././mainapp.py:11993 msgid "" "Before starting a refresh operation, you should right-click the channel and " "select 'Check channel'" msgstr "" -#: .././mainapp.py:11856 +#: .././mainapp.py:12000 msgid "" "Before starting a refresh operation, you should right-click the playlist and " "select 'Check playlist'" msgstr "" -#: .././mainapp.py:11863 +#: .././mainapp.py:12007 msgid "" "Before starting a refresh operation, you should right-click the folder and " "select 'Check folder'" msgstr "" -#: .././mainapp.py:11868 +#: .././mainapp.py:12012 msgid "Are you sure you want to proceed with the refresh operation?" msgstr "" -#: .././mainapp.py:11992 +#: .././mainapp.py:12136 msgid "Refresh operation complete" msgstr "" -#: .././mainapp.py:11994 +#: .././mainapp.py:12138 msgid "Refresh operation halted" msgstr "" -#: .././mainapp.py:12108 +#: .././mainapp.py:12252 msgid "" "An info operation cannot start if one or more configuration windows are " "still open" msgstr "" -#: .././mainapp.py:12233 +#: .././mainapp.py:12377 msgid "Operation failed" msgstr "" -#: .././mainapp.py:12235 .././mainwin.py:31800 .././downloads.py:517 +#: .././mainapp.py:12379 .././mainwin.py:32424 .././downloads.py:517 msgid "Operation complete" msgstr "" -#: .././mainapp.py:12237 +#: .././mainapp.py:12381 msgid "Click the Output tab to see the results" msgstr "" -#: .././mainapp.py:12250 +#: .././mainapp.py:12394 msgid "A new release is available!" msgstr "" -#: .././mainapp.py:12252 +#: .././mainapp.py:12396 msgid "Your installation is up to date!" msgstr "" -#: .././mainapp.py:12254 +#: .././mainapp.py:12398 msgid "Installed version:" msgstr "" -#: .././mainapp.py:12259 +#: .././mainapp.py:12403 msgid "Stable release:" msgstr "" -#: .././mainapp.py:12264 +#: .././mainapp.py:12408 msgid "Stable release: not found" msgstr "" -#: .././mainapp.py:12267 +#: .././mainapp.py:12411 msgid "Development release:" msgstr "" -#: .././mainapp.py:12269 +#: .././mainapp.py:12413 msgid "Development release: not found" msgstr "" -#: .././mainapp.py:12402 +#: .././mainapp.py:12549 msgid "" "A tidy operation cannot start if one or more configuration windows are still " "open" msgstr "" -#: .././mainapp.py:12504 +#: .././mainapp.py:12651 msgid "Tidy operation complete" msgstr "" -#: .././mainapp.py:12506 +#: .././mainapp.py:12653 msgid "Tidy operation halted" msgstr "" -#: .././mainapp.py:12661 .././mainwin.py:22385 .././config.py:14607 +#: .././mainapp.py:12808 .././mainwin.py:22904 .././config.py:14964 msgid "Livestream has started" msgstr "" -#: .././mainapp.py:12901 +#: .././mainapp.py:13048 msgid "Process operation complete" msgstr "" -#: .././mainapp.py:12903 +#: .././mainapp.py:13050 msgid "Process operation halted" msgstr "" -#: .././mainapp.py:12907 +#: .././mainapp.py:13054 msgid "Files processed:" msgstr "" -#: .././mainapp.py:12908 +#: .././mainapp.py:13055 msgid "Errors:" msgstr "" -#: .././mainapp.py:14247 .././mainapp.py:14456 +#: .././mainapp.py:14394 .././mainapp.py:14603 msgid "" "Cannot move the channel/playlist/folder because a container with the same " "name already exists" msgstr "" -#: .././mainapp.py:14269 .././mainapp.py:14477 +#: .././mainapp.py:14416 .././mainapp.py:14624 msgid "Cannot move anything to:" msgstr "" -#: .././mainapp.py:14271 .././mainapp.py:14479 +#: .././mainapp.py:14418 .././mainapp.py:14626 msgid "" "because a file or folder with the same name already exists (although " "Tartube's database doesn't know anything about it)" msgstr "" -#: .././mainapp.py:14275 +#: .././mainapp.py:14422 msgid "" "You probably created that file/folder accidentally, in which case you should " "delete it manually before trying again" msgstr "" -#: .././mainapp.py:14289 .././mainapp.py:14497 +#: .././mainapp.py:14436 .././mainapp.py:14644 msgid "Are you sure you want to move this channel:" msgstr "" -#: .././mainapp.py:14291 .././mainapp.py:14499 +#: .././mainapp.py:14438 .././mainapp.py:14646 msgid "Are you sure you want to move this playlist:" msgstr "" -#: .././mainapp.py:14293 .././mainapp.py:14501 +#: .././mainapp.py:14440 .././mainapp.py:14648 msgid "Are you sure you want to move this folder:" msgstr "" -#: .././mainapp.py:14298 +#: .././mainapp.py:14445 msgid "" "This procedure will move all downloaded files to the top level of Tartube's " "data folder" msgstr "" -#: .././mainapp.py:14336 .././mainapp.py:14556 +#: .././mainapp.py:14483 .././mainapp.py:14703 #, python-brace-format msgid "Could not move '{0}' (filesystem error)" msgstr "" -#: .././mainapp.py:14404 +#: .././mainapp.py:14551 msgid "Channels, playlists and folders can only be dragged into a folder" msgstr "" -#: .././mainapp.py:14417 +#: .././mainapp.py:14564 #, python-brace-format msgid "The fixed folder '{0}' cannot be moved (but it can still be hidden)" msgstr "" -#: .././mainapp.py:14430 +#: .././mainapp.py:14577 #, python-brace-format msgid "The folder '{0}' can only contain videos" msgstr "" -#: .././mainapp.py:14442 +#: .././mainapp.py:14589 #, python-brace-format msgid "The folder '{0}' can only contain other folders and videos" msgstr "" -#: .././mainapp.py:14484 +#: .././mainapp.py:14631 msgid "" "You probably created that file/folder accidentally, in which case, you " "should delete it manually before trying again" msgstr "" -#: .././mainapp.py:14503 +#: .././mainapp.py:14650 msgid "into this folder:" msgstr "" -#: .././mainapp.py:14507 +#: .././mainapp.py:14654 msgid "This procedure will move all downloaded files to the new location" msgstr "" -#: .././mainapp.py:14513 .././mainapp.py:14646 +#: .././mainapp.py:14660 .././mainapp.py:14793 msgid "" "WARNING: The destination folder is marked as temporary, so everything inside " "it will be DELETED when Tartube restarts!" msgstr "" -#: .././mainapp.py:14624 +#: .././mainapp.py:14771 msgid "Videos cannot be dragged into this folder" msgstr "" -#: .././mainapp.py:14634 +#: .././mainapp.py:14781 #, python-brace-format msgid "Are you sure you want to move the video to '{0}'?" msgstr "" -#: .././mainapp.py:14640 +#: .././mainapp.py:14787 #, python-brace-format msgid "Are you sure you want to move '{0}' videos to '{1}'?" msgstr "" #. Show confirmation dialogue -#: .././mainapp.py:14781 +#: .././mainapp.py:14928 msgid "Videos moved" msgstr "" -#: .././mainapp.py:14782 +#: .././mainapp.py:14929 msgid "Videos not moved" msgstr "" -#: .././mainapp.py:15180 +#: .././mainapp.py:15327 msgid "" "Are you SURE you want to delete files? This procedure cannot be reversed!" msgstr "" -#: .././mainapp.py:15197 +#: .././mainapp.py:15344 msgid "" "Are you SURE you want to remove these items from your database? This " "procedure cannot be reversed!" msgstr "" -#: .././mainapp.py:17332 .././mainapp.py:17453 .././mainapp.py:17640 +#: .././mainapp.py:17479 .././mainapp.py:17600 .././mainapp.py:17787 #, python-brace-format msgid "The channel contains {0} item(s), so this action may take a while" msgstr "" -#: .././mainapp.py:17338 .././mainapp.py:17459 .././mainapp.py:17646 +#: .././mainapp.py:17485 .././mainapp.py:17606 .././mainapp.py:17793 #, python-brace-format msgid "The playlist contains {0} item(s), so this action may take a while" msgstr "" -#: .././mainapp.py:17344 .././mainapp.py:17465 .././mainapp.py:17652 +#: .././mainapp.py:17491 .././mainapp.py:17612 .././mainapp.py:17799 #, python-brace-format msgid "The folder contains {0} item(s), so this action may take a while" msgstr "" -#: .././mainapp.py:17718 +#: .././mainapp.py:17865 msgid "You did not give the folder a new name" msgstr "" -#: .././mainapp.py:17729 .././mainapp.py:23589 .././mainapp.py:23732 -#: .././mainapp.py:23868 .././config.py:27490 +#: .././mainapp.py:17876 .././mainapp.py:23736 .././mainapp.py:23879 +#: .././mainapp.py:24015 .././config.py:28248 #, python-brace-format msgid "The name '{0}' is not allowed" msgstr "" -#: .././mainapp.py:17746 .././mainapp.py:23618 .././mainapp.py:23748 -#: .././mainapp.py:23897 +#: .././mainapp.py:17893 .././mainapp.py:23765 .././mainapp.py:23895 +#: .././mainapp.py:24044 msgid "That name is not permitted on your system" msgstr "" -#: .././mainapp.py:17777 +#: .././mainapp.py:17924 #, python-brace-format msgid "Failed to rename '{0}'" msgstr "" #. Confirm the result -#: .././mainapp.py:17979 +#: .././mainapp.py:18126 msgid "Search/replace complete" msgstr "" -#: .././mainapp.py:17980 +#: .././mainapp.py:18127 #, python-brace-format msgid "Updated URLs: {0}" msgstr "" -#: .././mainapp.py:17981 +#: .././mainapp.py:18128 #, python-brace-format msgid "Errors: {0}" msgstr "" -#: .././mainapp.py:18256 +#: .././mainapp.py:18403 msgid "Select where to save the database export" msgstr "" -#: .././mainapp.py:18386 +#: .././mainapp.py:18533 msgid "There is nothing to export!" msgstr "" -#: .././mainapp.py:18428 .././mainapp.py:18475 .././mainapp.py:18530 -#: .././config.py:29138 +#: .././mainapp.py:18575 .././mainapp.py:18622 .././mainapp.py:18677 +#: .././config.py:29936 msgid "Failed to save the database export file:" msgstr "" -#: .././mainapp.py:18540 .././config.py:29128 +#: .././mainapp.py:18687 .././config.py:29926 msgid "Database export file saved to:" msgstr "" -#: .././mainapp.py:18805 +#: .././mainapp.py:18952 msgid "Select the database export" msgstr "" -#: .././mainapp.py:18823 .././mainapp.py:18836 .././mainapp.py:18874 +#: .././mainapp.py:18970 .././mainapp.py:18983 .././mainapp.py:19021 msgid "Failed to load the database export file" msgstr "" -#: .././mainapp.py:18855 +#: .././mainapp.py:19002 msgid "The database export file is invalid" msgstr "" -#: .././mainapp.py:18890 +#: .././mainapp.py:19037 msgid "The database export file is invalid (or empty)" msgstr "" -#: .././mainapp.py:18937 +#: .././mainapp.py:19084 msgid "Nothing was imported from the database export file" msgstr "" #. Show a confirmation -#: .././mainapp.py:18951 +#: .././mainapp.py:19098 msgid "Imported into database" msgstr "" -#: .././mainapp.py:18952 .././mainwin.py:1850 .././config.py:697 -#: .././config.py:1065 .././config.py:17750 .././config.py:21251 +#: .././mainapp.py:19099 .././mainwin.py:1881 .././config.py:697 +#: .././config.py:1065 .././config.py:18198 .././config.py:21800 msgid "Videos" msgstr "" -#: .././mainapp.py:18953 .././config.py:700 .././config.py:17783 -#: .././config.py:21284 +#: .././mainapp.py:19100 .././config.py:700 .././config.py:18231 +#: .././config.py:21833 msgid "Channels" msgstr "" -#: .././mainapp.py:18954 .././config.py:703 .././config.py:17794 -#: .././config.py:21295 +#: .././mainapp.py:19101 .././config.py:703 .././config.py:18242 +#: .././config.py:21844 msgid "Playlists" msgstr "" -#: .././mainapp.py:18955 .././config.py:706 +#: .././mainapp.py:19102 .././config.py:706 msgid "Folders" msgstr "" -#: .././mainapp.py:19727 +#: .././mainapp.py:19874 msgid "" "The video file is missing from Tartube's data folder (try downloading the " "video again!)" msgstr "" -#: .././mainapp.py:20082 +#: .././mainapp.py:20229 msgid "Select where to save the custom download export" msgstr "" -#: .././mainapp.py:20139 +#: .././mainapp.py:20286 msgid "Failed to save the custom download export file:" msgstr "" -#: .././mainapp.py:20149 +#: .././mainapp.py:20296 msgid "Custom download exported to:" msgstr "" -#: .././mainapp.py:20177 +#: .././mainapp.py:20324 msgid "Select the custom download export file" msgstr "" -#: .././mainapp.py:20196 +#: .././mainapp.py:20343 msgid "Failed to load the custom download export file" msgstr "" -#: .././mainapp.py:20215 +#: .././mainapp.py:20362 msgid "The custom download export file is invalid" msgstr "" -#: .././mainapp.py:20228 +#: .././mainapp.py:20375 msgid "The custom download export file is invalid (or empty)" msgstr "" -#: .././mainapp.py:20875 .././mainapp.py:21244 +#: .././mainapp.py:21022 .././mainapp.py:21391 msgid "Select where to save the options export" msgstr "" -#: .././mainapp.py:20923 .././mainapp.py:21292 +#: .././mainapp.py:21070 .././mainapp.py:21439 msgid "Failed to save the options export file:" msgstr "" -#: .././mainapp.py:20933 +#: .././mainapp.py:21080 msgid "Download options exported to to:" msgstr "" -#: .././mainapp.py:20961 .././mainapp.py:21330 +#: .././mainapp.py:21108 .././mainapp.py:21477 msgid "Select the options export file" msgstr "" -#: .././mainapp.py:20980 .././mainapp.py:21349 +#: .././mainapp.py:21127 .././mainapp.py:21496 msgid "Failed to load the options export file" msgstr "" -#: .././mainapp.py:20999 .././mainapp.py:21368 +#: .././mainapp.py:21146 .././mainapp.py:21515 msgid "The options export file is invalid" msgstr "" -#: .././mainapp.py:21012 .././mainapp.py:21381 +#: .././mainapp.py:21159 .././mainapp.py:21528 msgid "The options export file is invalid (or empty)" msgstr "" -#: .././mainapp.py:21302 +#: .././mainapp.py:21449 msgid "FFmpeg options exported to to:" msgstr "" -#: .././mainapp.py:22328 +#: .././mainapp.py:22475 msgid "Please select a destination folder" msgstr "" #. Prompt for confirmation -#: .././mainapp.py:22394 +#: .././mainapp.py:22541 msgid "Are you sure you want to clear this list?" msgstr "" #. Prompt for confirmation -#: .././mainapp.py:22438 +#: .././mainapp.py:22585 msgid "Are you sure you want to clear downloaded videos?" msgstr "" -#: .././mainapp.py:22506 .././mainwin.py:18139 +#: .././mainapp.py:22653 .././mainwin.py:18591 msgid "Only checked/downloaded videos can be processed by FFmpeg" msgstr "" -#: .././mainapp.py:22613 +#: .././mainapp.py:22760 msgid "No destination(s) to show" msgstr "" -#: .././mainapp.py:22660 +#: .././mainapp.py:22807 msgid "No video(s) have been downloaded" msgstr "" #. Prompt for confirmation -#: .././mainapp.py:22787 +#: .././mainapp.py:22934 msgid "Are you sure you want to remove the selected item(s)?" msgstr "" -#: .././mainapp.py:23579 +#: .././mainapp.py:23726 msgid "You must give the channel a name" msgstr "" -#: .././mainapp.py:23599 .././mainapp.py:23878 +#: .././mainapp.py:23746 .././mainapp.py:24025 msgid "You must enter a valid URL" msgstr "" -#: .././mainapp.py:23722 +#: .././mainapp.py:23869 msgid "You must give the folder a name" msgstr "" -#: .././mainapp.py:23858 +#: .././mainapp.py:24005 msgid "You must give the playlist a name" msgstr "" -#: .././mainapp.py:24066 .././mainapp.py:24393 +#: .././mainapp.py:24213 .././mainapp.py:24540 msgid "No channels, playlists or folders are marked for download" msgstr "" -#: .././mainapp.py:24080 .././mainapp.py:24407 +#: .././mainapp.py:24227 .././mainapp.py:24554 #, python-brace-format msgid "The maximum number of profiles permitted is {0}" msgstr "" -#: .././mainapp.py:24105 .././mainapp.py:24432 +#: .././mainapp.py:24252 .././mainapp.py:24579 #, python-brace-format msgid "A profile called '{0}' already exists" msgstr "" -#: .././mainapp.py:24123 .././mainapp.py:24450 +#: .././mainapp.py:24270 .././mainapp.py:24597 #, python-brace-format msgid "Created the profile '{0}'" msgstr "" -#: .././mainapp.py:24183 +#: .././mainapp.py:24330 msgid "There were no livestream alerts to cancel" msgstr "" -#: .././mainapp.py:24185 +#: .././mainapp.py:24332 msgid "Livestream alerts for 1 video were cancelled" msgstr "Livestream alerts for 1 video were canceled" -#: .././mainapp.py:24188 +#: .././mainapp.py:24335 #, python-brace-format msgid "Livestream alerts for {0} videos were cancelled" msgstr "Livestream alerts for {0} videos were canceled" -#: .././mainapp.py:24244 +#: .././mainapp.py:24391 msgid "Restart Tartube to see the new theme!" msgstr "" -#: .././mainapp.py:24245 +#: .././mainapp.py:24392 msgid "Tartube failed to set the new theme" msgstr "" -#: .././mainapp.py:24775 +#: .././mainapp.py:24922 msgid "" "Before trying to reset channel/playlist names, you must check or download at " "one least one video from each!" msgstr "" -#: .././mainapp.py:24852 +#: .././mainapp.py:24999 msgid "All Tartube data has been saved" msgstr "" -#: .././mainapp.py:24879 +#: .././mainapp.py:25026 msgid "Database saved" msgstr "" -#: .././mainapp.py:25177 .././mainwin.py:16879 +#: .././mainapp.py:25326 .././mainwin.py:17325 msgid "" "Files cannot be recovered, after being deleted. Are you sure you want to " "continue?" @@ -882,350 +930,358 @@ msgstr "" #. Because livestream operations run silently in the background, when #. the user goes to the trouble of clicking a menu item in the #. main window's menu, tell them why nothing is happening -#: .././mainapp.py:25248 +#: .././mainapp.py:25397 msgid "Cannot update existing livestreams because" msgstr "" -#: .././mainapp.py:25250 +#: .././mainapp.py:25399 msgid "there is another operation running" msgstr "" -#: .././mainapp.py:25252 +#: .././mainapp.py:25401 msgid "they are currently being updated" msgstr "" -#: .././mainapp.py:25254 +#: .././mainapp.py:25403 msgid "one or more configuration windows are open" msgstr "" -#: .././mainapp.py:25256 +#: .././mainapp.py:25405 msgid "there are no livestreams to update" msgstr "" -#: .././mainapp.py:25328 +#: .././mainapp.py:25477 msgid "There is already a channel with that name" msgstr "" -#: .././mainapp.py:25330 +#: .././mainapp.py:25479 msgid "There is already a playlist with that name" msgstr "" -#: .././mainapp.py:25332 +#: .././mainapp.py:25481 msgid "There is already a folder with that name" msgstr "" -#: .././mainapp.py:25337 +#: .././mainapp.py:25486 msgid "The folder already contains a channel with that name" msgstr "" -#: .././mainapp.py:25341 +#: .././mainapp.py:25490 msgid "The folder already contains a playlist with that name" msgstr "" -#: .././mainapp.py:25346 +#: .././mainapp.py:25495 msgid "The folder already contains another folder with that name" msgstr "" -#: .././mainapp.py:25350 +#: .././mainapp.py:25499 msgid "(so please choose a different name)" msgstr "" -#: .././mainwin.py:1032 +#: .././mainwin.py:1052 msgid "Tartube cannot start because it cannot find its icons folder" msgstr "" +#: .././mainwin.py:1327 +msgid "TRANSLATOR'S NOTE: Main window menu starts here" +msgstr "" + #. File column -#: .././mainwin.py:1310 .././config.py:10764 +#: .././mainwin.py:1334 .././config.py:11060 msgid "_File" msgstr "" -#: .././mainwin.py:1317 +#: .././mainwin.py:1341 msgid "_Database preferences..." msgstr "" -#: .././mainwin.py:1323 +#: .././mainwin.py:1347 msgid "_Check database integrity" msgstr "" -#: .././mainwin.py:1332 +#: .././mainwin.py:1356 msgid "_Save database" msgstr "" -#: .././mainwin.py:1338 +#: .././mainwin.py:1362 msgid "Save _all" msgstr "" -#: .././mainwin.py:1347 +#: .././mainwin.py:1371 msgid "Close to _tray" msgstr "" #. Quit -#: .././mainwin.py:1352 .././mainwin.py:27423 +#: .././mainwin.py:1376 .././mainwin.py:27942 msgid "_Quit" msgstr "" #. Edit column -#: .././mainwin.py:1357 +#: .././mainwin.py:1381 msgid "_Edit" msgstr "" -#: .././mainwin.py:1364 +#: .././mainwin.py:1388 msgid "_System preferences..." msgstr "" -#: .././mainwin.py:1370 +#: .././mainwin.py:1394 msgid "_General download options..." msgstr "" -#: .././mainwin.py:1378 +#: .././mainwin.py:1402 msgid "_System" msgstr "" -#: .././mainwin.py:1385 +#: .././mainwin.py:1409 msgid "Open _MSYS2 terminal..." msgstr "" -#: .././mainwin.py:1394 +#: .././mainwin.py:1418 msgid "Show Tartube _install folder" msgstr "" -#: .././mainwin.py:1402 +#: .././mainwin.py:1426 msgid "Show Tartube _script folder" msgstr "" -#: .././mainwin.py:1411 +#: .././mainwin.py:1435 msgid "_Change theme..." msgstr "" #. Media column -#: .././mainwin.py:1419 .././config.py:18691 +#: .././mainwin.py:1443 .././config.py:19171 msgid "_Media" msgstr "" -#: .././mainwin.py:1426 +#: .././mainwin.py:1450 msgid "Add _videos..." msgstr "" -#: .././mainwin.py:1432 +#: .././mainwin.py:1456 msgid "Add _channel..." msgstr "" -#: .././mainwin.py:1438 +#: .././mainwin.py:1462 msgid "Add _playlist..." msgstr "" -#: .././mainwin.py:1444 +#: .././mainwin.py:1468 msgid "Add _folder..." msgstr "" -#: .././mainwin.py:1453 +#: .././mainwin.py:1477 msgid "_Add many channels/playlists..." msgstr "" -#: .././mainwin.py:1459 +#: .././mainwin.py:1483 msgid "_Reset channel/playlist names..." msgstr "" -#: .././mainwin.py:1472 +#: .././mainwin.py:1496 msgid "_Export from database..." msgstr "" -#: .././mainwin.py:1478 +#: .././mainwin.py:1502 msgid "_Import into database..." msgstr "" -#: .././mainwin.py:1484 +#: .././mainwin.py:1511 msgid "Import _YouTube subscriptions..." msgstr "" -#: .././mainwin.py:1492 +#: .././mainwin.py:1519 msgid "_Export/import" msgstr "" -#: .././mainwin.py:1525 +#: .././mainwin.py:1552 msgid "_Switch between views" msgstr "" -#: .././mainwin.py:1535 +#: .././mainwin.py:1562 msgid "_Hide (most) system folders" msgstr "" -#: .././mainwin.py:1544 +#: .././mainwin.py:1571 msgid "_Show hidden folders" msgstr "" -#: .././mainwin.py:1550 +#: .././mainwin.py:1577 msgid "S_how/hide" msgstr "" -#: .././mainwin.py:1557 +#: .././mainwin.py:1584 msgid "_Switch profile" msgstr "" -#: .././mainwin.py:1565 +#: .././mainwin.py:1592 msgid "_Remember last profile" msgstr "" -#: .././mainwin.py:1579 +#: .././mainwin.py:1606 msgid "_Create profile" msgstr "" -#: .././mainwin.py:1587 +#: .././mainwin.py:1614 msgid "_Delete profile" msgstr "" -#: .././mainwin.py:1599 +#: .././mainwin.py:1626 msgid "_Mark all for download" msgstr "" -#: .././mainwin.py:1608 +#: .././mainwin.py:1635 msgid "_Unmark all for download" msgstr "" -#: .././mainwin.py:1616 +#: .././mainwin.py:1643 msgid "Pr_ofiles" msgstr "" -#: .././mainwin.py:1629 +#: .././mainwin.py:1656 msgid "Ad_d test media" msgstr "" -#: .././mainwin.py:1637 +#: .././mainwin.py:1664 msgid "Run _test code" msgstr "" #. Operations column #. Add this tab... -#: .././mainwin.py:1643 .././config.py:22789 +#: .././mainwin.py:1670 .././config.py:23422 msgid "_Operations" msgstr "" #. Check all -#: .././mainwin.py:1650 .././mainwin.py:27394 +#: .././mainwin.py:1677 .././mainwin.py:27913 msgid "_Check all" msgstr "" #. Download all -#: .././mainwin.py:1656 .././mainwin.py:27401 +#: .././mainwin.py:1683 .././mainwin.py:27920 msgid "_Download all" msgstr "" -#: .././mainwin.py:1661 +#: .././mainwin.py:1688 msgid "C_ustom download all" msgstr "" -#: .././mainwin.py:1671 +#: .././mainwin.py:1698 msgid "_Refresh database..." msgstr "" -#: .././mainwin.py:1681 +#: .././mainwin.py:1708 msgid "U_pdate" msgstr "" -#: .././mainwin.py:1687 .././mainwin.py:5565 +#: .././mainwin.py:1714 .././mainwin.py:5706 msgid "_Test" msgstr "" -#: .././mainwin.py:1698 +#: .././mainwin.py:1725 msgid "Install _FFmpeg..." msgstr "" -#: .././mainwin.py:1706 +#: .././mainwin.py:1733 msgid "Install _matplotlib..." msgstr "" -#: .././mainwin.py:1714 +#: .././mainwin.py:1741 msgid "Install _streamlink..." msgstr "" -#: .././mainwin.py:1725 +#: .././mainwin.py:1752 msgid "Tidy up _files..." msgstr "" -#: .././mainwin.py:1736 .././mainwin.py:27412 +#: .././mainwin.py:1763 .././mainwin.py:27931 msgid "_Stop current operation" msgstr "" -#: .././mainwin.py:1744 +#: .././mainwin.py:1771 msgid "Stop _after current videos" msgstr "" #. Livestreams column -#: .././mainwin.py:1752 +#: .././mainwin.py:1779 msgid "_Livestreams" msgstr "" -#: .././mainwin.py:1759 +#: .././mainwin.py:1786 msgid "_Livestream preferences..." msgstr "" -#: .././mainwin.py:1768 +#: .././mainwin.py:1795 msgid "_Update existing livestreams" msgstr "" -#: .././mainwin.py:1773 +#: .././mainwin.py:1800 msgid "_Cancel all livestream alerts" msgstr "" #. Help column -#: .././mainwin.py:1778 +#: .././mainwin.py:1805 msgid "_Help" msgstr "" -#: .././mainwin.py:1784 +#: .././mainwin.py:1811 msgid "_About..." msgstr "" -#: .././mainwin.py:1792 +#: .././mainwin.py:1819 msgid "Show _tutorial..." msgstr "" -#: .././mainwin.py:1801 +#: .././mainwin.py:1828 msgid "Check for _updates" msgstr "" -#: .././mainwin.py:1807 +#: .././mainwin.py:1834 msgid "Go to _website" msgstr "" -#: .././mainwin.py:1816 +#: .././mainwin.py:1843 msgid "Send _feedback" msgstr "" -#: .././mainwin.py:1860 +#: .././mainwin.py:1859 +msgid "TRANSLATOR'S NOTE: Main window toolbar starts here" +msgstr "" + +#: .././mainwin.py:1891 msgid "Add new videos" msgstr "" -#: .././mainwin.py:1869 .././mainwin.py:25751 .././media.py:104 +#: .././mainwin.py:1900 .././mainwin.py:26270 .././media.py:104 msgid "Channel" msgstr "" -#: .././mainwin.py:1879 +#: .././mainwin.py:1910 msgid "Add a new channel" msgstr "" -#: .././mainwin.py:1890 .././mainwin.py:25753 .././media.py:106 +#: .././mainwin.py:1921 .././mainwin.py:26272 .././media.py:106 msgid "Playlist" msgstr "" -#: .././mainwin.py:1900 +#: .././mainwin.py:1931 msgid "Add a new playlist" msgstr "" -#: .././mainwin.py:1911 .././mainwin.py:25755 .././media.py:108 +#: .././mainwin.py:1942 .././mainwin.py:26274 .././media.py:108 msgid "Folder" msgstr "" -#: .././mainwin.py:1921 +#: .././mainwin.py:1952 msgid "Add a new folder" msgstr "" -#: .././mainwin.py:1935 .././config.py:22599 +#: .././mainwin.py:1966 .././mainwin.py:12600 .././config.py:23224 msgid "Check" msgstr "" -#: .././mainwin.py:1946 .././mainwin.py:2231 .././mainwin.py:4411 -#: .././mainwin.py:4725 .././mainwin.py:5711 +#: .././mainwin.py:1977 .././mainwin.py:2270 .././mainwin.py:4524 +#: .././mainwin.py:4842 .././mainwin.py:5860 msgid "Check all videos, channels, playlists and folders" msgstr "" @@ -1235,339 +1291,357 @@ msgstr "" #. then use a Glib timer to restore it (after some small fraction of a #. second) #. Link not clickable -#: .././mainwin.py:1956 .././mainwin.py:23617 .././mainwin.py:23629 -#: .././mainwin.py:23634 .././mainwin.py:23642 .././mainwin.py:23928 -#: .././mainwin.py:23940 .././mainwin.py:24624 .././mainwin.py:25934 -#: .././mainwin.py:25946 .././mainwin.py:25972 .././config.py:22475 -#: .././config.py:22601 +#: .././mainwin.py:1987 .././mainwin.py:24136 .././mainwin.py:24148 +#: .././mainwin.py:24153 .././mainwin.py:24161 .././mainwin.py:24447 +#: .././mainwin.py:24459 .././mainwin.py:25143 .././mainwin.py:26453 +#: .././mainwin.py:26465 .././mainwin.py:26491 .././config.py:23100 +#: .././config.py:23226 msgid "Download" msgstr "" -#: .././mainwin.py:1967 .././mainwin.py:2239 .././mainwin.py:4425 -#: .././mainwin.py:4741 +#: .././mainwin.py:1998 .././mainwin.py:2278 .././mainwin.py:4538 +#: .././mainwin.py:4858 msgid "Download all videos, channels, playlists and folders" msgstr "" -#: .././mainwin.py:1982 .././config.py:11449 .././config.py:11634 -#: .././config.py:12089 .././config.py:12296 .././config.py:14802 -#: .././config.py:14983 +#: .././mainwin.py:2013 .././config.py:11751 .././config.py:11936 +#: .././config.py:12399 .././config.py:12610 .././config.py:15167 +#: .././config.py:15352 msgid "Stop" msgstr "" -#: .././mainwin.py:1994 +#: .././mainwin.py:2025 msgid "Stop the current operation" msgstr "" -#: .././mainwin.py:2018 .././config.py:19363 +#: .././mainwin.py:2049 .././config.py:19856 msgid "System preferences" msgstr "" -#: .././mainwin.py:2032 .././config.py:4890 .././config.py:4899 +#: .././mainwin.py:2063 .././config.py:4953 .././config.py:4962 msgid "General download options" msgstr "" -#: .././mainwin.py:2044 +#: .././mainwin.py:2075 msgid "Switch" msgstr "" -#: .././mainwin.py:2055 +#: .././mainwin.py:2086 msgid "Switch between simple and complex views" msgstr "" -#: .././mainwin.py:2068 .././mainwin.py:5604 +#: .././mainwin.py:2099 .././mainwin.py:5749 msgid "Hide" msgstr "" -#: .././mainwin.py:2070 .././mainwin.py:5611 +#: .././mainwin.py:2101 .././mainwin.py:5756 msgid "Show" msgstr "" -#: .././mainwin.py:2082 .././mainwin.py:5606 +#: .././mainwin.py:2113 .././mainwin.py:5751 msgid "Hide (most) system folders" msgstr "" -#: .././mainwin.py:2086 .././mainwin.py:5613 +#: .././mainwin.py:2117 .././mainwin.py:5758 msgid "Show all system folders" msgstr "" -#: .././mainwin.py:2101 +#: .././mainwin.py:2132 msgid "Quit" msgstr "" -#: .././mainwin.py:2111 +#: .././mainwin.py:2142 msgid "Close Tartube" msgstr "" -#: .././mainwin.py:2130 .././config.py:4947 .././config.py:12510 -#: .././config.py:20499 .././config.py:21673 +#: .././mainwin.py:2155 +msgid "TRANSLATOR'S NOTE: Main window tabs are defined here" +msgstr "" + +#: .././mainwin.py:2165 .././config.py:5014 .././config.py:12828 +#: .././config.py:21028 .././config.py:22249 msgid "_Videos" msgstr "" -#: .././mainwin.py:2138 +#: .././mainwin.py:2173 msgid "_Progress" msgstr "" -#: .././mainwin.py:2146 +#: .././mainwin.py:2181 msgid "_Classic Mode" msgstr "" -#: .././mainwin.py:2155 +#: .././mainwin.py:2190 msgid "_Drag and Drop" msgstr "" -#: .././mainwin.py:2164 +#: .././mainwin.py:2199 msgid "_Output" msgstr "" -#: .././mainwin.py:2173 .././config.py:15754 .././config.py:17032 +#: .././mainwin.py:2208 .././config.py:16131 .././config.py:17452 msgid "_Errors / Warnings" msgstr "" -#: .././mainwin.py:2229 .././mainwin.py:4409 .././mainwin.py:4723 -#: .././mainwin.py:5709 +#: .././mainwin.py:2224 .././mainwin.py:4487 .././mainwin.py:4750 +#: .././mainwin.py:5244 .././mainwin.py:5459 .././mainwin.py:5574 +#: .././mainwin.py:5849 +msgid "TRANSLATOR'S NOTE: Main window's Videos tab" +msgstr "" + +#: .././mainwin.py:2268 .././mainwin.py:4522 .././mainwin.py:4840 +#: .././mainwin.py:5858 msgid "Check all" msgstr "" -#: .././mainwin.py:2237 .././mainwin.py:3753 .././mainwin.py:4423 -#: .././mainwin.py:20117 +#: .././mainwin.py:2276 .././mainwin.py:3850 .././mainwin.py:4536 +#: .././mainwin.py:20615 msgid "Download all" msgstr "" -#: .././mainwin.py:2252 .././mainwin.py:3757 .././mainwin.py:4444 -#: .././mainwin.py:20108 +#: .././mainwin.py:2291 .././mainwin.py:3854 .././mainwin.py:4557 +#: .././mainwin.py:20606 msgid "Custom download all" msgstr "" -#: .././mainwin.py:2255 .././mainwin.py:4447 .././mainwin.py:4766 +#: .././mainwin.py:2294 .././mainwin.py:4560 .././mainwin.py:4883 msgid "" "Perform a custom download of all videos, channels, playlists and folders" msgstr "" -#: .././mainwin.py:2314 +#: .././mainwin.py:2353 msgid "Page" msgstr "" -#: .././mainwin.py:2325 +#: .././mainwin.py:2364 msgid "Set visible page" msgstr "" -#: .././mainwin.py:2355 .././mainwin.py:2896 .././mainwin.py:2982 -#: .././mainwin.py:3538 +#: .././mainwin.py:2394 .././mainwin.py:2939 .././mainwin.py:3039 +#: .././mainwin.py:3617 .././mainwin.py:12609 msgid "Size" msgstr "" -#: .././mainwin.py:2365 +#: .././mainwin.py:2404 msgid "Set page size" msgstr "" -#: .././mainwin.py:2388 +#: .././mainwin.py:2427 msgid "Go to first page" msgstr "" -#: .././mainwin.py:2403 +#: .././mainwin.py:2442 msgid "Go to previous page" msgstr "" -#: .././mainwin.py:2420 +#: .././mainwin.py:2459 msgid "Go to next page" msgstr "" -#: .././mainwin.py:2435 +#: .././mainwin.py:2474 msgid "Go to last page" msgstr "" -#: .././mainwin.py:2450 +#: .././mainwin.py:2489 msgid "Scroll to top" msgstr "" -#: .././mainwin.py:2466 +#: .././mainwin.py:2505 msgid "Scroll to bottom" msgstr "" -#: .././mainwin.py:2486 .././mainwin.py:5348 +#: .././mainwin.py:2525 .././mainwin.py:5477 msgid "Show more settings" msgstr "" -#: .././mainwin.py:2499 +#: .././mainwin.py:2538 msgid "Sort" msgstr "" -#: .././mainwin.py:2505 .././config.py:14529 +#: .././mainwin.py:2544 .././config.py:14882 msgid "Upload time" msgstr "" -#: .././mainwin.py:2506 .././mainwin.py:27806 .././mainwin.py:30691 -#: .././mainwin.py:32074 .././config.py:3112 .././config.py:12534 -#: .././config.py:20985 .././config.py:22475 .././config.py:23522 -#: .././config.py:25600 .././config.py:25875 +#: .././mainwin.py:2545 .././mainwin.py:28331 .././mainwin.py:31271 +#: .././mainwin.py:32704 .././config.py:3122 .././config.py:12852 +#: .././config.py:21526 .././config.py:23100 .././config.py:24175 +#: .././config.py:26323 .././config.py:26606 msgid "Name" msgstr "" -#: .././mainwin.py:2507 +#: .././mainwin.py:2546 msgid "Download time" msgstr "" -#: .././mainwin.py:2508 +#: .././mainwin.py:2547 msgid "Database ID" msgstr "" -#: .././mainwin.py:2536 .././mainwin.py:5458 +#: .././mainwin.py:2575 .././mainwin.py:5591 msgid "Reverse sort" msgstr "" -#: .././mainwin.py:2550 .././mainwin.py:5475 +#: .././mainwin.py:2589 .././mainwin.py:5608 msgid "Undo reverse sort" msgstr "" -#: .././mainwin.py:2569 +#: .././mainwin.py:2608 msgid "Resort videos" msgstr "" -#: .././mainwin.py:2583 +#: .././mainwin.py:2622 msgid "Find date" msgstr "" -#: .././mainwin.py:2596 +#: .././mainwin.py:2635 msgid "Find videos by date" msgstr "" -#: .././mainwin.py:2613 +#: .././mainwin.py:2652 msgid "Cancel find videos by date" msgstr "" -#: .././mainwin.py:2627 +#: .././mainwin.py:2666 msgid "Thumbnail size" msgstr "" -#: .././mainwin.py:2656 .././mainwin.py:4127 .././config.py:15228 +#: .././mainwin.py:2695 .././mainwin.py:4236 .././config.py:15601 msgid "Filter" msgstr "" -#: .././mainwin.py:2664 .././mainwin.py:4133 .././config.py:15238 +#: .././mainwin.py:2703 .././mainwin.py:4242 .././config.py:15611 msgid "Enter search text" msgstr "" -#: .././mainwin.py:2669 .././mainwin.py:4135 .././config.py:15241 +#: .././mainwin.py:2708 .././mainwin.py:4244 .././config.py:15614 msgid "Regex" msgstr "" -#: .././mainwin.py:2677 .././mainwin.py:4138 +#: .././mainwin.py:2716 .././mainwin.py:4247 msgid "Select if search text is a regex" msgstr "" -#: .././mainwin.py:2693 +#: .././mainwin.py:2732 msgid "Names" msgstr "" -#: .././mainwin.py:2707 +#: .././mainwin.py:2746 msgid "Descriptions" msgstr "" -#: .././mainwin.py:2721 .././config.py:15141 +#: .././mainwin.py:2760 .././config.py:15514 msgid "Comments" msgstr "" -#: .././mainwin.py:2741 +#: .././mainwin.py:2780 msgid "Filter videos" msgstr "" -#: .././mainwin.py:2758 .././mainwin.py:4192 +#: .././mainwin.py:2797 .././mainwin.py:4301 msgid "Cancel filter" msgstr "" -#: .././mainwin.py:2774 +#: .././mainwin.py:2813 msgid "Draw frames" msgstr "" -#: .././mainwin.py:2788 +#: .././mainwin.py:2827 msgid "Draw icons" msgstr "" -#: .././mainwin.py:2802 +#: .././mainwin.py:2841 msgid "Show downloaded" msgstr "" -#: .././mainwin.py:2817 +#: .././mainwin.py:2856 msgid "Show undownloaded" msgstr "" -#: .././mainwin.py:2832 +#: .././mainwin.py:2871 msgid "Show blocked" msgstr "" -#: .././mainwin.py:2889 +#: .././mainwin.py:2892 .././mainwin.py:5398 +msgid "TRANSLATOR'S NOTE: Main window's Progress tab" +msgstr "" + +#: .././mainwin.py:2932 msgid "TRANSLATOR'S NOTE: Ext is short for a file extension, e.g. .EXE" msgstr "" -#: .././mainwin.py:2894 .././mainwin.py:3536 .././config.py:10906 +#: .././mainwin.py:2937 .././mainwin.py:3615 .././config.py:11208 msgid "Source" msgstr "" -#: .././mainwin.py:2894 .././mainwin.py:3536 +#: .././mainwin.py:2937 .././mainwin.py:3615 msgid "Status" msgstr "" -#: .././mainwin.py:2895 .././mainwin.py:3537 +#: .././mainwin.py:2938 .././mainwin.py:3616 msgid "Incoming file" msgstr "" -#: .././mainwin.py:2895 .././mainwin.py:3537 +#: .././mainwin.py:2938 .././mainwin.py:3616 msgid "Ext" msgstr "" -#: .././mainwin.py:2895 .././mainwin.py:3537 +#: .././mainwin.py:2938 .././mainwin.py:3616 .././mainwin.py:12611 msgid "Speed" msgstr "" -#: .././mainwin.py:2895 .././mainwin.py:3537 +#: .././mainwin.py:2938 .././mainwin.py:3616 msgid "ETA" msgstr "" -#: .././mainwin.py:2982 .././config.py:16733 +#: .././mainwin.py:3039 .././config.py:17136 msgid "New videos" msgstr "" -#: .././mainwin.py:2982 .././config.py:440 .././config.py:14499 +#: .././mainwin.py:3039 .././config.py:440 .././config.py:14852 msgid "Duration" msgstr "" -#: .././mainwin.py:2983 +#: .././mainwin.py:3040 msgid "Date" msgstr "" -#: .././mainwin.py:2983 .././config.py:14323 +#: .././mainwin.py:3040 .././config.py:14676 msgid "File" msgstr "" -#: .././mainwin.py:2983 +#: .././mainwin.py:3040 msgid "Downloaded to" msgstr "" -#: .././mainwin.py:3044 +#: .././mainwin.py:3108 msgid "Max downloads" msgstr "" -#: .././mainwin.py:3067 +#: .././mainwin.py:3131 msgid "D/L speed (KiB/s)" msgstr "" -#: .././mainwin.py:3091 .././mainwin.py:5293 +#: .././mainwin.py:3161 .././mainwin.py:5418 msgid "Alternative limits do not currently apply" msgstr "" -#: .././mainwin.py:3102 .././config.py:5408 +#: .././mainwin.py:3172 .././config.py:5511 msgid "Video resolution" msgstr "" -#: .././mainwin.py:3137 +#: .././mainwin.py:3207 msgid "Hide rows when they are finished" msgstr "" -#: .././mainwin.py:3150 -msgid "Add newest videos to the top of the list" +#: .././mainwin.py:3220 +msgid "Add newest videos to the top" msgstr "" -#: .././mainwin.py:3235 +#: .././mainwin.py:3243 .././mainwin.py:5643 +msgid "TRANSLATOR'S NOTE: Main window's Classic Mode tab" +msgstr "" + +#: .././mainwin.py:3314 msgid "Open the Classic Mode menu" msgstr "" @@ -1575,7 +1649,7 @@ msgstr "" #. enabled, URLs are automatically copied into this textview #. -------------------------------------------------------------------- #. Initial widgets -#: .././mainwin.py:3242 .././mainwin.py:27692 +#: .././mainwin.py:3321 .././mainwin.py:28217 msgid "Enter URLs below" msgstr "" @@ -1585,1057 +1659,1144 @@ msgstr "" #. the specified destination and format #. -------------------------------------------------------------------- #. Destination directory -#: .././mainwin.py:3292 +#: .././mainwin.py:3371 msgid "Destination:" msgstr "" -#: .././mainwin.py:3329 +#: .././mainwin.py:3408 msgid "Add a new destination folder" msgstr "" -#: .././mainwin.py:3348 +#: .././mainwin.py:3427 msgid "Open the destination folder" msgstr "" #. Video/audio format -#: .././mainwin.py:3353 +#: .././mainwin.py:3432 msgid "Format:" msgstr "" #. (Dummy items in the combo) -#: .././mainwin.py:3357 .././mainwin.py:19894 .././config.py:23522 +#: .././mainwin.py:3436 .././mainwin.py:20387 .././config.py:24175 msgid "Default" msgstr "" -#: .././mainwin.py:3357 .././mainwin.py:19895 +#: .././mainwin.py:3436 .././mainwin.py:20388 msgid "Video:" msgstr "" -#: .././mainwin.py:3361 .././mainwin.py:19896 +#: .././mainwin.py:3440 .././mainwin.py:20389 msgid "Audio:" msgstr "" #. Video resolution -#. (Dummy items in the combo) -#: .././mainwin.py:3390 .././mainwin.py:20404 +#: .././mainwin.py:3469 .././mainwin.py:20906 msgid "Highest" msgstr "" #. (Update the IV) -#: .././mainwin.py:3420 .././mainwin.py:13138 .././mainwin.py:19841 +#: .././mainwin.py:3499 .././mainwin.py:13534 .././mainwin.py:20330 msgid "Convert to this format" msgstr "" -#: .././mainwin.py:3421 +#: .././mainwin.py:3500 msgid "Download in this format" msgstr "" -#: .././mainwin.py:3447 .././config.py:5370 +#: .././mainwin.py:3526 .././config.py:5473 msgid "Is a livestream" msgstr "" -#: .././mainwin.py:3472 +#: .././mainwin.py:3551 msgid "Add URLs" msgstr "" -#: .././mainwin.py:3478 +#: .././mainwin.py:3557 msgid "Add these URLs" msgstr "" -#: .././mainwin.py:3591 +#: .././mainwin.py:3688 msgid "Play video" msgstr "" -#: .././mainwin.py:3614 +#: .././mainwin.py:3711 msgid "Open destination(s)" msgstr "" -#: .././mainwin.py:3632 +#: .././mainwin.py:3729 msgid "Stop download" msgstr "" -#: .././mainwin.py:3653 +#: .././mainwin.py:3750 msgid "Re-download" msgstr "" -#: .././mainwin.py:3666 +#: .././mainwin.py:3763 msgid "" "Allow downloader to create an archive file (enable this only when " "downloading channels and playlists)" msgstr "" -#: .././mainwin.py:3696 +#: .././mainwin.py:3793 msgid "Process with FFmpeg" msgstr "" #. (Signal connect appears below) -#: .././mainwin.py:3712 .././config.py:6738 .././config.py:20282 -#: .././config.py:22540 +#: .././mainwin.py:3809 .././config.py:6878 .././config.py:20803 +#: .././config.py:23165 msgid "Move up" msgstr "" #. (Signal connect appears below) -#: .././mainwin.py:3733 .././config.py:6742 .././config.py:20291 -#: .././config.py:22549 +#: .././mainwin.py:3830 .././config.py:6882 .././config.py:20812 +#: .././config.py:23174 msgid "Move down" msgstr "" -#: .././mainwin.py:3749 +#: .././mainwin.py:3846 msgid "Remove from list" msgstr "" -#: .././mainwin.py:3765 .././mainwin.py:20120 +#: .././mainwin.py:3862 .././mainwin.py:20618 msgid "Download the URLs above" msgstr "" -#: .././mainwin.py:3769 .././mainwin.py:20111 +#: .././mainwin.py:3866 .././mainwin.py:20609 msgid "Perform a custom download on the URLs above" msgstr "" -#: .././mainwin.py:3773 +#: .././mainwin.py:3870 msgid "Clear all" msgstr "" -#: .././mainwin.py:3785 .././mainwin.py:3796 +#: .././mainwin.py:3882 .././mainwin.py:3893 msgid "Clear the URLs above" msgstr "" -#: .././mainwin.py:3789 +#: .././mainwin.py:3886 msgid "Clear downloaded" msgstr "" -#: .././mainwin.py:3842 +#: .././mainwin.py:3905 +msgid "TRANSLATOR'S NOTE: Main window's Drag and Drop tab" +msgstr "" + +#: .././mainwin.py:3943 msgid "When you drag a video here, it is added to the Classic Mode tab" msgstr "" -#: .././mainwin.py:3851 +#: .././mainwin.py:3952 msgid "Each zone represents a set of download options" msgstr "" -#: .././mainwin.py:3861 +#: .././mainwin.py:3962 msgid "Warning: Drag and drop does not work well on MS Windows" msgstr "" -#: .././mainwin.py:3882 +#: .././mainwin.py:3983 msgid "Add a new dropzone" msgstr "" -#: .././mainwin.py:3935 +#: .././mainwin.py:4010 +msgid "TRANSLATOR'S NOTE: Main window's Output tab" +msgstr "" + +#: .././mainwin.py:4040 msgid "Maximum page size" msgstr "" -#: .././mainwin.py:3991 .././config.py:22232 +#: .././mainwin.py:4077 +msgid "TRANSLATOR'S NOTE: Main window's Errors / Warnings tab" +msgstr "" + +#: .././mainwin.py:4100 .././config.py:22845 msgid "Show Tartube errors" msgstr "" -#: .././mainwin.py:4004 .././config.py:22240 +#: .././mainwin.py:4113 .././config.py:22853 msgid "Show Tartube warnings" msgstr "" -#: .././mainwin.py:4017 .././config.py:22248 +#: .././mainwin.py:4126 .././config.py:22861 msgid "Show operation errors" msgstr "" -#: .././mainwin.py:4035 .././config.py:22259 +#: .././mainwin.py:4144 .././config.py:22872 msgid "Show operation warnings" msgstr "" -#: .././mainwin.py:4058 .././config.py:22270 +#: .././mainwin.py:4167 .././config.py:22883 msgid "Show dates" msgstr "" -#: .././mainwin.py:4076 .././config.py:22281 +#: .././mainwin.py:4185 .././config.py:22894 msgid "Show channel/playlist/folder names" msgstr "" -#: .././mainwin.py:4094 .././config.py:22292 +#: .././mainwin.py:4203 .././config.py:22905 msgid "Show video names" msgstr "" -#: .././mainwin.py:4112 .././config.py:22303 +#: .././mainwin.py:4221 .././config.py:22916 msgid "Show full messages" msgstr "" -#: .././mainwin.py:4175 +#: .././mainwin.py:4284 msgid "Filter messages" msgstr "" -#: .././mainwin.py:4197 .././config.py:11546 .././config.py:11750 -#: .././config.py:12186 .././config.py:12413 .././config.py:14890 -#: .././config.py:15082 .././config.py:16861 .././config.py:18821 +#: .././mainwin.py:4306 .././config.py:11848 .././config.py:12052 +#: .././config.py:12496 .././config.py:12727 .././config.py:15255 +#: .././config.py:15451 .././config.py:17269 .././config.py:19301 msgid "Clear list" msgstr "" -#: .././mainwin.py:4414 .././mainwin.py:4728 .././mainwin.py:5714 +#: .././mainwin.py:4527 .././mainwin.py:4845 .././mainwin.py:5863 msgid "Check marked items" msgstr "" -#: .././mainwin.py:4416 .././mainwin.py:4731 .././mainwin.py:5716 +#: .././mainwin.py:4529 .././mainwin.py:4848 .././mainwin.py:5865 msgid "Check marked videos, channels, playlists and folders" msgstr "" -#: .././mainwin.py:4428 +#: .././mainwin.py:4541 msgid "Download marked items" msgstr "" -#: .././mainwin.py:4430 .././mainwin.py:4747 +#: .././mainwin.py:4543 .././mainwin.py:4864 msgid "Download marked videos, channels, playlists and folders" msgstr "" -#: .././mainwin.py:4453 +#: .././mainwin.py:4566 msgid "Custom download marked items" msgstr "" -#: .././mainwin.py:4457 +#: .././mainwin.py:4570 msgid "" "Perform a custom download of marked videos, channels, playlists and folders" msgstr "" -#: .././mainwin.py:4694 +#: .././mainwin.py:4811 msgid "Installing FFmpeg" msgstr "" -#: .././mainwin.py:4696 +#: .././mainwin.py:4813 msgid "Installing matplotlib" msgstr "" -#: .././mainwin.py:4698 +#: .././mainwin.py:4815 msgid "Installing streamlink" msgstr "" -#: .././mainwin.py:4700 +#: .././mainwin.py:4817 msgid "Updating downloader" msgstr "" -#: .././mainwin.py:4702 +#: .././mainwin.py:4819 msgid "Fetching formats" msgstr "" -#: .././mainwin.py:4704 +#: .././mainwin.py:4821 msgid "Fetching subtitles" msgstr "" -#: .././mainwin.py:4706 +#: .././mainwin.py:4823 msgid "Testing downloader" msgstr "" -#: .././mainwin.py:4708 +#: .././mainwin.py:4825 msgid "Contacting website" msgstr "" -#: .././mainwin.py:4776 +#: .././mainwin.py:4893 msgid "" "Perform a custom download of marked videos, channels, playlists and folders" msgstr "" -#: .././mainwin.py:5167 +#: .././mainwin.py:5288 msgid "Checking..." msgstr "" -#: .././mainwin.py:5169 .././mainwin.py:5732 .././formats.py:1200 +#: .././mainwin.py:5290 .././mainwin.py:5881 .././formats.py:1201 msgid "Checking" msgstr "" -#: .././mainwin.py:5172 +#: .././mainwin.py:5293 msgid "Downloading..." msgstr "" -#: .././mainwin.py:5174 .././mainwin.py:5734 .././formats.py:1197 +#: .././mainwin.py:5295 .././mainwin.py:5883 .././formats.py:1198 msgid "Downloading" msgstr "" -#: .././mainwin.py:5177 +#: .././mainwin.py:5298 msgid "Refreshing..." msgstr "" -#: .././mainwin.py:5180 +#: .././mainwin.py:5301 msgid "Tidying..." msgstr "" -#: .././mainwin.py:5183 +#: .././mainwin.py:5304 msgid "FFmpeg processing..." msgstr "" -#: .././mainwin.py:5283 +#: .././mainwin.py:5408 msgid "Alternative limits currently apply" msgstr "" -#: .././mainwin.py:5378 +#: .././mainwin.py:5507 msgid "Show fewer settings" msgstr "" -#: .././mainwin.py:5517 +#: .././mainwin.py:5654 msgid "This tab emulates the classic youtube-dl-gui interface" msgstr "" -#: .././mainwin.py:5522 +#: .././mainwin.py:5659 msgid "Videos downloaded here are not added to Tartube's database" msgstr "" -#: .././mainwin.py:5534 .././config.py:6672 +#: .././mainwin.py:5671 .././config.py:6812 msgid "If your preferred formats are not available, the download will fail!" msgstr "" -#: .././mainwin.py:5540 +#: .././mainwin.py:5677 msgid "" "If you want a specific format, install FFMpeg and select 'Convert to this " "format'!" msgstr "" -#: .././mainwin.py:5918 +#: .././mainwin.py:5694 +msgid "TRANSLATOR'S NOTE: Main window menu" +msgstr "" + +#: .././mainwin.py:5743 +msgid "TRANSLATOR'S NOTE: Main window toolbar" +msgstr "" + +#: .././mainwin.py:6052 +msgid "" +"TRANSLATOR'S NOTE: Video Index popup menu starts here. In the Videos tab, " +"right-click any channel/playlist/folder" +msgstr "" + +#: .././mainwin.py:6072 msgid "_Check channel" msgstr "" -#: .././mainwin.py:5920 +#: .././mainwin.py:6074 msgid "_Check playlist" msgstr "" -#: .././mainwin.py:5922 +#: .././mainwin.py:6076 msgid "_Check folder" msgstr "" -#: .././mainwin.py:5948 +#: .././mainwin.py:6102 msgid "_Download channel" msgstr "" -#: .././mainwin.py:5950 +#: .././mainwin.py:6104 msgid "_Download playlist" msgstr "" -#: .././mainwin.py:5952 +#: .././mainwin.py:6106 msgid "_Download folder" msgstr "" -#: .././mainwin.py:5978 +#: .././mainwin.py:6132 msgid "C_ustom download channel" msgstr "" -#: .././mainwin.py:5980 +#: .././mainwin.py:6134 msgid "C_ustom download playlist" msgstr "" -#: .././mainwin.py:5982 +#: .././mainwin.py:6136 msgid "C_ustom download folder" msgstr "" -#: .././mainwin.py:6039 +#: .././mainwin.py:6193 msgid "_Empty folder" msgstr "" -#: .././mainwin.py:6051 +#: .././mainwin.py:6205 msgid "_All contents" msgstr "" -#: .././mainwin.py:6069 +#: .././mainwin.py:6223 msgid "_Remove videos" msgstr "" -#: .././mainwin.py:6081 +#: .././mainwin.py:6235 msgid "_Just folder videos" msgstr "" -#: .././mainwin.py:6087 +#: .././mainwin.py:6241 msgid "Channel c_ontents" msgstr "" -#: .././mainwin.py:6089 +#: .././mainwin.py:6243 msgid "Playlist c_ontents" msgstr "" -#: .././mainwin.py:6091 +#: .././mainwin.py:6245 msgid "Folder c_ontents" msgstr "" -#: .././mainwin.py:6103 +#: .././mainwin.py:6257 msgid "_Move to top level" msgstr "" -#: .././mainwin.py:6122 +#: .././mainwin.py:6276 msgid "_Hide folder" msgstr "" -#: .././mainwin.py:6132 +#: .././mainwin.py:6286 msgid "_Rename channel..." msgstr "" -#: .././mainwin.py:6134 +#: .././mainwin.py:6288 msgid "_Rename playlist..." msgstr "" -#: .././mainwin.py:6136 +#: .././mainwin.py:6290 msgid "_Rename folder..." msgstr "" -#: .././mainwin.py:6153 +#: .././mainwin.py:6307 msgid "Set _nickname..." msgstr "" -#: .././mainwin.py:6168 +#: .././mainwin.py:6322 msgid "Set _URL..." msgstr "" -#: .././mainwin.py:6185 +#: .././mainwin.py:6339 msgid "_Insert videos..." msgstr "" -#: .././mainwin.py:6200 +#: .././mainwin.py:6354 msgid "_Export channel..." msgstr "" -#: .././mainwin.py:6202 +#: .././mainwin.py:6356 msgid "_Export playlist..." msgstr "" -#: .././mainwin.py:6204 +#: .././mainwin.py:6358 msgid "_Export folder..." msgstr "" -#: .././mainwin.py:6217 +#: .././mainwin.py:6371 msgid "Re_fresh channel" msgstr "" -#: .././mainwin.py:6219 +#: .././mainwin.py:6373 msgid "Re_fresh playlist" msgstr "" -#: .././mainwin.py:6221 +#: .././mainwin.py:6375 msgid "Re_fresh folder" msgstr "" -#: .././mainwin.py:6238 +#: .././mainwin.py:6392 msgid "_Tidy up channel" msgstr "" -#: .././mainwin.py:6240 +#: .././mainwin.py:6394 msgid "_Tidy up playlist" msgstr "" -#: .././mainwin.py:6242 +#: .././mainwin.py:6396 msgid "_Tidy up folder" msgstr "" -#: .././mainwin.py:6263 +#: .././mainwin.py:6417 msgid "_Convert to playlist" msgstr "" -#: .././mainwin.py:6265 +#: .././mainwin.py:6419 msgid "_Convert to channel" msgstr "" -#: .././mainwin.py:6283 .././mainwin.py:6962 .././mainwin.py:7628 -#: .././mainwin.py:8230 +#: .././mainwin.py:6437 .././mainwin.py:7121 .././mainwin.py:7793 +#: .././mainwin.py:8417 msgid "Add to C_lassic Mode tab" msgstr "" -#: .././mainwin.py:6297 +#: .././mainwin.py:6451 msgid "Channel _actions" msgstr "" -#: .././mainwin.py:6299 +#: .././mainwin.py:6453 msgid "Playlist _actions" msgstr "" -#: .././mainwin.py:6301 +#: .././mainwin.py:6455 msgid "Folder _actions" msgstr "" -#: .././mainwin.py:6321 .././mainwin.py:7161 +#: .././mainwin.py:6475 .././mainwin.py:7320 msgid "_Apply download options..." msgstr "" -#: .././mainwin.py:6339 .././mainwin.py:7175 +#: .././mainwin.py:6493 .././mainwin.py:7334 msgid "_Remove download options" msgstr "" -#: .././mainwin.py:6355 .././mainwin.py:7187 +#: .././mainwin.py:6509 .././mainwin.py:7346 msgid "_Edit download options..." msgstr "" -#: .././mainwin.py:6371 +#: .././mainwin.py:6525 msgid "Add to _scheduled download..." msgstr "" -#: .././mainwin.py:6381 +#: .././mainwin.py:6535 msgid "Set _download destination..." msgstr "" -#: .././mainwin.py:6396 +#: .././mainwin.py:6550 msgid "Show system _command..." msgstr "" -#: .././mainwin.py:6415 +#: .././mainwin.py:6569 msgid "Set _removal time..." msgstr "" -#: .././mainwin.py:6428 +#: .././mainwin.py:6582 msgid "_Mark for checking/downloading" msgstr "" -#: .././mainwin.py:6446 +#: .././mainwin.py:6600 msgid "_Don't add videos to Tartube's database" msgstr "" -#: .././mainwin.py:6458 +#: .././mainwin.py:6612 msgid "D_isable checking/downloading" msgstr "" -#: .././mainwin.py:6470 +#: .././mainwin.py:6624 msgid "_Just disable downloading" msgstr "" -#: .././mainwin.py:6491 +#: .././mainwin.py:6645 msgid "Down_loads" msgstr "" -#: .././mainwin.py:6502 +#: .././mainwin.py:6656 msgid "Channel _properties..." msgstr "" -#: .././mainwin.py:6504 +#: .././mainwin.py:6658 msgid "Playlist _properties..." msgstr "" -#: .././mainwin.py:6506 +#: .././mainwin.py:6660 msgid "Folder _properties..." msgstr "" -#: .././mainwin.py:6522 +#: .././mainwin.py:6676 msgid "_Default location" msgstr "" -#: .././mainwin.py:6535 +#: .././mainwin.py:6689 msgid "_Actual location" msgstr "" -#: .././mainwin.py:6549 +#: .././mainwin.py:6703 msgid "_Show" msgstr "" -#: .././mainwin.py:6558 +#: .././mainwin.py:6712 msgid "D_elete channel" msgstr "" -#: .././mainwin.py:6560 +#: .././mainwin.py:6714 msgid "D_elete playlist" msgstr "" -#: .././mainwin.py:6562 +#: .././mainwin.py:6716 msgid "D_elete folder" msgstr "" -#: .././mainwin.py:6659 +#: .././mainwin.py:6754 +msgid "" +"TRANSLATOR'S NOTE: Video Catalogue popup menu starts here. In the Videos " +"tab, right-click any video" +msgstr "" + +#: .././mainwin.py:6818 msgid "_Check video" msgstr "" -#: .././mainwin.py:6683 +#: .././mainwin.py:6842 msgid "_Download video" msgstr "" -#: .././mainwin.py:6706 +#: .././mainwin.py:6865 msgid "Re-_download this video" msgstr "" -#: .././mainwin.py:6722 +#: .././mainwin.py:6881 msgid "C_ustom download video" msgstr "" -#: .././mainwin.py:6751 .././mainwin.py:7123 .././mainwin.py:7701 -#: .././mainwin.py:8299 +#: .././mainwin.py:6910 .././mainwin.py:7282 .././mainwin.py:7866 +#: .././mainwin.py:8486 msgid "Download and _watch" msgstr "" -#: .././mainwin.py:6771 .././mainwin.py:8717 +#: .././mainwin.py:6930 .././mainwin.py:8921 msgid "Watch in _player" msgstr "" -#: .././mainwin.py:6789 .././mainwin.py:6810 .././mainwin.py:8748 +#: .././mainwin.py:6948 .././mainwin.py:6969 .././mainwin.py:8952 msgid "_Watch on website" msgstr "" -#: .././mainwin.py:6799 .././mainwin.py:6823 .././mainwin.py:8091 -#: .././mainwin.py:8761 +#: .././mainwin.py:6958 .././mainwin.py:6982 .././mainwin.py:8262 +#: .././mainwin.py:8965 #, python-brace-format msgid "_Watch on {0}" msgstr "" -#: .././mainwin.py:6837 .././mainwin.py:8775 +#: .././mainwin.py:6996 .././mainwin.py:8979 msgid "_YouTube" msgstr "" -#: .././mainwin.py:6847 .././mainwin.py:8785 +#: .././mainwin.py:7006 .././mainwin.py:8989 msgid "_HookTube" msgstr "" -#: .././mainwin.py:6857 .././mainwin.py:8795 +#: .././mainwin.py:7016 .././mainwin.py:8999 msgid "_Invidious" msgstr "" -#: .././mainwin.py:6867 .././mainwin.py:8805 +#: .././mainwin.py:7026 .././mainwin.py:9009 msgid "TRANSLATOR'S NOTE: Watch on YouTube, Watch on HookTube, etc" msgstr "" -#: .././mainwin.py:6872 .././mainwin.py:8810 +#: .././mainwin.py:7031 .././mainwin.py:9014 msgid "W_atch on" msgstr "" -#: .././mainwin.py:6886 +#: .././mainwin.py:7045 msgid "_Create video clip..." msgstr "" -#: .././mainwin.py:6892 +#: .././mainwin.py:7051 msgid "Download video clip..." msgstr "" -#: .././mainwin.py:6908 +#: .././mainwin.py:7067 msgid "_Remove video slices..." msgstr "" -#: .././mainwin.py:6923 .././mainwin.py:7590 .././mainwin.py:8217 +#: .././mainwin.py:7082 .././mainwin.py:7755 .././mainwin.py:8404 msgid "_Process with FFmpeg..." msgstr "" -#: .././mainwin.py:6940 .././mainwin.py:7606 +#: .././mainwin.py:7099 .././mainwin.py:7771 msgid "_Reload metadata" msgstr "" -#: .././mainwin.py:6952 .././mainwin.py:7618 +#: .././mainwin.py:7111 .././mainwin.py:7783 msgid "_Special" msgstr "" -#: .././mainwin.py:6983 +#: .././mainwin.py:7142 msgid "Auto _notify" msgstr "" -#: .././mainwin.py:6999 +#: .././mainwin.py:7158 msgid "Auto _sound alarm" msgstr "" -#: .././mainwin.py:7014 +#: .././mainwin.py:7173 msgid "Auto _open" msgstr "" -#: .././mainwin.py:7027 +#: .././mainwin.py:7186 msgid "_Download on start" msgstr "" -#: .././mainwin.py:7042 +#: .././mainwin.py:7201 msgid "Download on _stop" msgstr "" -#: .././mainwin.py:7060 +#: .././mainwin.py:7219 msgid "Not a _livestream" msgstr "" -#: .././mainwin.py:7070 +#: .././mainwin.py:7229 msgid "_Finalise livestream" msgstr "" -#: .././mainwin.py:7089 .././mainwin.py:7668 .././mainwin.py:8265 +#: .././mainwin.py:7248 .././mainwin.py:7833 .././mainwin.py:8452 msgid "_Livestream" msgstr "" -#: .././mainwin.py:7102 .././mainwin.py:7679 .././mainwin.py:8277 +#: .././mainwin.py:7261 .././mainwin.py:7844 .././mainwin.py:8464 msgid "_Mark for download" msgstr "" -#: .././mainwin.py:7113 .././mainwin.py:7691 .././mainwin.py:8289 +#: .././mainwin.py:7272 .././mainwin.py:7856 .././mainwin.py:8476 msgid "_Download" msgstr "" -#: .././mainwin.py:7133 .././mainwin.py:7712 .././mainwin.py:8310 -#: .././config.py:21175 +#: .././mainwin.py:7292 .././mainwin.py:7877 .././mainwin.py:8497 +#: .././config.py:21720 msgid "_Temporary" msgstr "" -#: .././mainwin.py:7203 +#: .././mainwin.py:7362 msgid "_Show system command" msgstr "" -#: .././mainwin.py:7213 +#: .././mainwin.py:7372 msgid "_Test system command" msgstr "" -#: .././mainwin.py:7228 +#: .././mainwin.py:7387 msgid "_Disable downloads" msgstr "" -#: .././mainwin.py:7246 +#: .././mainwin.py:7405 msgid "D_ownloads" msgstr "" -#: .././mainwin.py:7261 +#: .././mainwin.py:7420 msgid "Video is _archived" msgstr "" -#: .././mainwin.py:7274 +#: .././mainwin.py:7433 msgid "Video is _bookmarked" msgstr "" -#: .././mainwin.py:7285 +#: .././mainwin.py:7444 msgid "Video is _favourite" msgstr "" -#: .././mainwin.py:7296 +#: .././mainwin.py:7455 msgid "Video is _missing" msgstr "" -#: .././mainwin.py:7312 +#: .././mainwin.py:7471 msgid "Video is _new" msgstr "" -#: .././mainwin.py:7325 +#: .././mainwin.py:7484 msgid "Video is in _waiting list" msgstr "" -#: .././mainwin.py:7336 +#: .././mainwin.py:7495 msgid "_Mark video" msgstr "" -#: .././mainwin.py:7347 +#: .././mainwin.py:7506 msgid "_Location" msgstr "" -#: .././mainwin.py:7359 +#: .././mainwin.py:7518 msgid "_Properties..." msgstr "" -#: .././mainwin.py:7371 +#: .././mainwin.py:7530 msgid "S_how video" msgstr "" -#: .././mainwin.py:7380 +#: .././mainwin.py:7539 msgid "Available _formats" msgstr "" -#: .././mainwin.py:7390 +#: .././mainwin.py:7549 msgid "Available _subtitles" msgstr "" -#: .././mainwin.py:7400 +#: .././mainwin.py:7559 msgid "_Fetch" msgstr "" #. Delete video -#: .././mainwin.py:7411 +#: .././mainwin.py:7570 msgid "D_elete video" msgstr "" +#: .././mainwin.py:7603 +msgid "" +"TRANSLATOR'S NOTE: Video Catalogue popup menu starts here. In the Videos " +"tab, select two or more videos, then righ-click them" +msgstr "" + #. Check/download videos -#: .././mainwin.py:7517 +#: .././mainwin.py:7682 msgid "_Check videos" msgstr "" -#: .././mainwin.py:7537 +#: .././mainwin.py:7702 msgid "_Download videos" msgstr "" -#: .././mainwin.py:7560 +#: .././mainwin.py:7725 msgid "C_ustom download videos" msgstr "" -#: .././mainwin.py:7648 .././mainwin.py:8245 +#: .././mainwin.py:7813 .././mainwin.py:8432 msgid "Mark as _not livestreams" msgstr "" -#: .././mainwin.py:7658 .././mainwin.py:8255 +#: .././mainwin.py:7823 .././mainwin.py:8442 msgid "_Finalise livestreams" msgstr "" -#: .././mainwin.py:7733 +#: .././mainwin.py:7898 msgid "_Archived" msgstr "" -#: .././mainwin.py:7744 +#: .././mainwin.py:7909 msgid "Not a_rchived" msgstr "" -#: .././mainwin.py:7758 +#: .././mainwin.py:7923 msgid "_Bookmarked" msgstr "" -#: .././mainwin.py:7769 +#: .././mainwin.py:7934 msgid "Not b_ookmarked" msgstr "" -#: .././mainwin.py:7783 +#: .././mainwin.py:7948 msgid "_Favourite" msgstr "_Favorite" -#: .././mainwin.py:7794 +#: .././mainwin.py:7959 msgid "Not fa_vourite" msgstr "Not fa_vorite" -#: .././mainwin.py:7808 +#: .././mainwin.py:7973 msgid "_Missing" msgstr "" -#: .././mainwin.py:7821 +#: .././mainwin.py:7986 msgid "Not m_issing" msgstr "" -#: .././mainwin.py:7837 +#: .././mainwin.py:8002 msgid "_New" msgstr "" -#: .././mainwin.py:7848 +#: .././mainwin.py:8013 msgid "Not n_ew" msgstr "" -#: .././mainwin.py:7862 +#: .././mainwin.py:8027 msgid "In _waiting list" msgstr "" -#: .././mainwin.py:7873 +#: .././mainwin.py:8038 msgid "Not in w_aiting list" msgstr "" -#: .././mainwin.py:7884 +#: .././mainwin.py:8049 msgid "_Mark videos" msgstr "" -#: .././mainwin.py:7893 +#: .././mainwin.py:8058 msgid "Show p_roperties..." msgstr "" #. Delete videos -#: .././mainwin.py:7908 +#: .././mainwin.py:8073 msgid "D_elete videos" msgstr "" +#: .././mainwin.py:8107 +msgid "" +"TRANSLATOR'S NOTE: Progress List popup menu starts here. In the Progress " +"tab, in the list in the top half of the tab, right-click any row" +msgstr "" + #. Stop check/download -#: .././mainwin.py:7987 +#: .././mainwin.py:8158 msgid "_Stop now" msgstr "" -#: .././mainwin.py:8004 +#: .././mainwin.py:8175 msgid "Stop checking _videos" msgstr "" -#: .././mainwin.py:8006 +#: .././mainwin.py:8177 msgid "Completely stop after this _video" msgstr "" -#: .././mainwin.py:8008 +#: .././mainwin.py:8179 msgid "Stop after this _video" msgstr "" -#: .././mainwin.py:8027 +#: .././mainwin.py:8198 msgid "Completely stop after these v_ideos" msgstr "" -#: .././mainwin.py:8042 +#: .././mainwin.py:8213 msgid "Download _next" msgstr "" -#: .././mainwin.py:8054 +#: .././mainwin.py:8225 msgid "Download _last" msgstr "" -#: .././mainwin.py:8078 +#: .././mainwin.py:8249 msgid "_Watch on Website" msgstr "" -#: .././mainwin.py:8103 +#: .././mainwin.py:8274 msgid "_Watch on YouTube" msgstr "" -#: .././mainwin.py:8113 +#: .././mainwin.py:8284 msgid "Watch on _HookTube" msgstr "" -#: .././mainwin.py:8123 +#: .././mainwin.py:8294 msgid "Watch on _Invidious" msgstr "" -#: .././mainwin.py:8328 +#: .././mainwin.py:8327 +msgid "" +"TRANSLATOR'S NOTE: Results List popup menu starts here. In the Progress tab, " +"in the list in the bottom half of the tab, right-click any row" +msgstr "" + +#: .././mainwin.py:8390 .././mainwin.py:8722 +msgid "_Open destination(s)" +msgstr "" + +#: .././mainwin.py:8515 msgid "_Delete video(s)" msgstr "" -#: .././mainwin.py:8357 +#: .././mainwin.py:8540 +msgid "" +"TRANSLATOR'S NOTE: Classic Mode popup menu starts here. In the Classic Mode " +"tab, click the button in the top-right corner" +msgstr "" + +#: .././mainwin.py:8550 msgid "_Enable automatic copy/paste" msgstr "" -#: .././mainwin.py:8369 +#: .././mainwin.py:8562 msgid "E_nable one-click downloads" msgstr "" -#: .././mainwin.py:8381 +#: .././mainwin.py:8574 msgid "_Remember un-downloaded URLs" msgstr "" -#: .././mainwin.py:8396 +#: .././mainwin.py:8589 msgid "_Set download options..." msgstr "" -#: .././mainwin.py:8407 +#: .././mainwin.py:8600 msgid "Use _default download options" msgstr "" -#: .././mainwin.py:8419 +#: .././mainwin.py:8612 msgid "Edit download _options..." msgstr "" -#: .././mainwin.py:8433 +#: .././mainwin.py:8626 msgid "Enable _custom downloads" msgstr "" -#: .././mainwin.py:8446 +#: .././mainwin.py:8639 msgid "Custom downloads _preferences..." msgstr "" -#: .././mainwin.py:8461 .././config.py:20816 +#: .././mainwin.py:8654 .././config.py:21353 msgid "_Update" msgstr "" -#: .././mainwin.py:8511 -msgid "_Play video" +#: .././mainwin.py:8693 +msgid "" +"TRANSLATOR'S NOTE: Classic Progress List popup menu starts here. In the " +"Classic Mode tab, in the list in the bottom half of the tab, right-click any " +"row" msgstr "" -#: .././mainwin.py:8523 -msgid "_Open destination(s)" +#: .././mainwin.py:8710 +msgid "_Play video" msgstr "" -#: .././mainwin.py:8538 +#: .././mainwin.py:8737 msgid "_Re-download" msgstr "" -#: .././mainwin.py:8550 +#: .././mainwin.py:8749 msgid "_Stop download" msgstr "" -#: .././mainwin.py:8564 +#: .././mainwin.py:8763 msgid "Process with _FFmpeg" msgstr "" -#: .././mainwin.py:8581 +#: .././mainwin.py:8780 msgid "_Copy file path" msgstr "" #. Copy URL -#: .././mainwin.py:8593 +#: .././mainwin.py:8792 msgid "Copy UR_L" msgstr "" -#: .././mainwin.py:8605 +#: .././mainwin.py:8804 msgid "Copy s_ystem command" msgstr "" -#: .././mainwin.py:8621 +#: .././mainwin.py:8820 msgid "Move _up" msgstr "" -#: .././mainwin.py:8633 +#: .././mainwin.py:8832 msgid "Move _down" msgstr "" -#: .././mainwin.py:8648 +#: .././mainwin.py:8847 msgid "Re_move from list" msgstr "" -#: .././mainwin.py:8697 +#: .././mainwin.py:8893 +msgid "" +"TRANSLATOR'S NOTE: Extra items for the popup menu in the Video Catalogue. In " +"the videos tab, right-click any video" +msgstr "" + +#: .././mainwin.py:8901 msgid "D_ownload and watch" msgstr "" -#: .././mainwin.py:8729 +#: .././mainwin.py:8933 msgid "Watch on _website" msgstr "" -#: .././mainwin.py:8870 +#: .././mainwin.py:9070 +msgid "" +"TRANSLATOR'S NOTE: Popup menu for the 'Custom download all' button in the " +"Videos tab (not always visible)" +msgstr "" + +#: .././mainwin.py:9079 msgid "Choose a custom download:" msgstr "" -#: .././mainwin.py:8950 .././mainwin.py:8994 +#: .././mainwin.py:9155 +msgid "" +"TRANSLATOR'S NOTE: Extra items for the main window menu, can be found in " +"Media > Profiles > Delete profile > ..." +msgstr "" + +#: .././mainwin.py:9164 .././mainwin.py:9208 msgid "Choose a profile:" msgstr "" -#: .././mainwin.py:9041 +#: .././mainwin.py:9255 +msgid "" +"TRANSLATOR'S NOTE: Extra items for the Video Index popup menu. In the Videos " +"tab, right-click any channel/playlist/folder" +msgstr "" + +#: .././mainwin.py:9260 msgid "Mark as _archived" msgstr "" -#: .././mainwin.py:9052 +#: .././mainwin.py:9271 msgid "Mark as not a_rchived" msgstr "" -#: .././mainwin.py:9066 +#: .././mainwin.py:9285 msgid "Mark as _bookmarked" msgstr "" -#: .././mainwin.py:9078 +#: .././mainwin.py:9297 msgid "Mark as not b_ookmarked" msgstr "" -#: .././mainwin.py:9091 +#: .././mainwin.py:9310 msgid "Mark as _favourite" msgstr "Mark as _favorite" -#: .././mainwin.py:9104 +#: .././mainwin.py:9323 msgid "Mark as not fa_vourite" msgstr "Mark as not fa_vorite" -#: .././mainwin.py:9118 +#: .././mainwin.py:9337 msgid "Mark as _missing" msgstr "" -#: .././mainwin.py:9131 +#: .././mainwin.py:9350 msgid "Mark as not m_issing" msgstr "" -#: .././mainwin.py:9148 +#: .././mainwin.py:9367 msgid "Mark as _new" msgstr "" -#: .././mainwin.py:9160 +#: .././mainwin.py:9379 msgid "Mark as not n_ew" msgstr "" -#: .././mainwin.py:9174 +#: .././mainwin.py:9393 msgid "Mark as in _waiting list" msgstr "" -#: .././mainwin.py:9186 +#: .././mainwin.py:9405 msgid "Mark as not in waiting _list" msgstr "" -#: .././mainwin.py:10011 +#: .././mainwin.py:10230 msgid "" "TRANSLATOR'S NOTE: V = number of videos B = (number of videos) bookmarked D " "= downloaded F = favourite L = live/livestream M = missing N = new W = in " -"waiting list E = (number of) errors W = warnings" +"waiting list E = (number of) errors W = warnings. Choose any abbreviation " +"you like." msgstr "" -#: .././mainwin.py:10018 +#: .././mainwin.py:10238 msgid "V:" msgstr "" -#: .././mainwin.py:10019 +#: .././mainwin.py:10239 msgid "B:" msgstr "" -#: .././mainwin.py:10020 +#: .././mainwin.py:10240 msgid "D:" msgstr "" -#: .././mainwin.py:10021 +#: .././mainwin.py:10241 msgid "F:" msgstr "" -#: .././mainwin.py:10022 +#: .././mainwin.py:10242 msgid "L:" msgstr "" -#: .././mainwin.py:10023 +#: .././mainwin.py:10243 msgid "M:" msgstr "" -#: .././mainwin.py:10024 +#: .././mainwin.py:10244 msgid "N:" msgstr "" -#: .././mainwin.py:10025 .././mainwin.py:10036 +#: .././mainwin.py:10245 .././mainwin.py:10256 msgid "W:" msgstr "" -#: .././mainwin.py:10035 +#: .././mainwin.py:10255 msgid "E:" msgstr "" @@ -2643,210 +2804,290 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:12123 .././mainwin.py:12962 .././mainwin.py:24031 -#: .././mainwin.py:24035 .././mainwin.py:24570 .././mainwin.py:26097 -#: .././mainwin.py:26101 .././mainwin.py:26322 +#: .././mainwin.py:12343 .././mainwin.py:13358 .././mainwin.py:24550 +#: .././mainwin.py:24554 .././mainwin.py:25089 .././mainwin.py:26616 +#: .././mainwin.py:26620 .././mainwin.py:26841 msgid "Waiting" msgstr "" -#: .././mainwin.py:13964 +#: .././mainwin.py:12594 +msgid "TRANSLATOR'S NOTE: D/L = download" +msgstr "" + +#: .././mainwin.py:12602 +msgid "D/L" +msgstr "" + +#. Because of an unexplained Gtk problem, there is usually a crash after +#. this function returns. Workaround is to make the label unclickable, +#. then use a Glib timer to restore it (after some small fraction of a +#. second) +#: .././mainwin.py:12606 .././mainwin.py:24291 .././mainwin.py:25360 +#: .././config.py:18220 .././config.py:21822 +msgid "Other" +msgstr "" + +#: .././mainwin.py:14392 msgid "" -"TRANSLATOR'S NOTE: Thread means a computer processor thread. If you're not " +"TRANSLATOR'S NOTE: 'Thread' means a computer processor thread. If you're not " "sure how to translate it, just use 'Page #', as in Page #1, Page #2, etc" msgstr "" -#: .././mainwin.py:13971 +#: .././mainwin.py:14399 msgid "Thread" msgstr "" -#: .././mainwin.py:13974 +#: .././mainwin.py:14402 msgid "_Summary" msgstr "" -#: .././mainwin.py:14413 .././config.py:15357 .././config.py:22475 +#: .././mainwin.py:14786 +msgid "TRANSLATOR'S NOTE: Extra items for the Errors/Warnings tab" +msgstr "" + +#: .././mainwin.py:14845 .././config.py:15730 .././config.py:23100 msgid "Time" msgstr "" -#: .././mainwin.py:14413 +#: .././mainwin.py:14845 msgid "Container" msgstr "" -#: .././mainwin.py:14413 .././config.py:12534 .././downloads.py:7104 +#: .././mainwin.py:14845 .././config.py:12852 .././downloads.py:7108 #: .././media.py:110 msgid "Video" msgstr "" -#: .././mainwin.py:14413 .././mainwin.py:14414 +#: .././mainwin.py:14845 .././mainwin.py:14846 msgid "Message" msgstr "" -#: .././mainwin.py:14664 +#: .././mainwin.py:15096 msgid "Tartube error" msgstr "" -#: .././mainwin.py:14668 +#: .././mainwin.py:15100 msgid "Tartube warning" msgstr "" -#: .././mainwin.py:14905 +#: .././mainwin.py:15337 msgid "_Errors" msgstr "" -#: .././mainwin.py:14909 +#: .././mainwin.py:15341 msgid "Warnings" msgstr "" -#: .././mainwin.py:15026 +#: .././mainwin.py:15449 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by a popup menu. In the Videos " +"tab, right-click a channel and select Downloads > Add to scheduled " +"download..." +msgstr "" + +#: .././mainwin.py:15464 msgid "" "There are no scheduled downloads that don't already contain the channel/" "playlist/folder" msgstr "" -#: .././mainwin.py:16592 +#: .././mainwin.py:16983 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by a popup menu. In the Videos " +"tab, right-click a channel and select Downloads > Set download destination..." +msgstr "" + +#: .././mainwin.py:17036 msgid "The external folder is not available" msgstr "" -#: .././mainwin.py:16594 +#: .././mainwin.py:17038 msgid "The external directory is not available" msgstr "" -#: .././mainwin.py:16694 +#: .././mainwin.py:17138 msgid "The URL is not valid" msgstr "" -#: .././mainwin.py:18034 .././config.py:12938 .././config.py:15962 +#: .././mainwin.py:18480 .././config.py:13266 .././config.py:16349 msgid "Invalid timestamp(s)" msgstr "" -#: .././mainwin.py:18207 .././mainwin.py:18216 .././config.py:12785 -#: .././config.py:12795 .././config.py:15854 .././config.py:15864 +#: .././mainwin.py:18570 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by a popup menu. In the Videos " +"tab, right-click a video and select Special > Process with FFmpeg..." +msgstr "" + +#: .././mainwin.py:18659 .././mainwin.py:18668 .././config.py:13108 +#: .././config.py:13118 .././config.py:16236 .././config.py:16246 msgid "Invalid start/stop times" msgstr "" -#: .././mainwin.py:18398 .././mainwin.py:18462 +#: .././mainwin.py:18810 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by a popup menu. In the Videos " +"tab, right-click a video and select Special > Reload metadata..." +msgstr "" + +#: .././mainwin.py:18856 .././mainwin.py:18920 #, python-brace-format msgid "Files reloaded: {0}, not reloaded: {1}" msgstr "" -#: .././mainwin.py:20617 +#: .././mainwin.py:20378 +msgid "" +"TRANSLATOR'S NOTE: Extra items for the 'Format' drop-down box in the Classic " +"Mode tab" +msgstr "" + +#: .././mainwin.py:20592 +msgid "" +"TRANSLATOR'S NOTE: Extra items for the buttons at the bottom of the Classic " +"Mode tab" +msgstr "" + +#: .././mainwin.py:20903 +msgid "TRANSLATOR'S NOTE: Highest video resolution" +msgstr "" + +#: .././mainwin.py:21117 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by main window menu, Media > " +"Profiles > Delete profile" +msgstr "" + +#: .././mainwin.py:21124 #, python-brace-format msgid "Are you sure you want to delete the profile '{0}'" msgstr "" -#: .././mainwin.py:21472 +#: .././mainwin.py:21980 +msgid "" +"TRANSLATOR'S NOTE: Duplicate URLs dragged into the main window's Videos tab" +msgstr "" + +#: .././mainwin.py:21984 msgid "The following items are duplicates:" msgstr "" -#: .././mainwin.py:21699 +#: .././mainwin.py:22211 #, python-brace-format msgid "The channel contains {0} items, so this action may take a while" msgstr "" -#: .././mainwin.py:21706 +#: .././mainwin.py:22218 #, python-brace-format msgid "The playlist contains {0} items, so this action may take a while" msgstr "" -#: .././mainwin.py:21713 +#: .././mainwin.py:22225 #, python-brace-format msgid "The folder contains {0} items, so this action may take a while" msgstr "" -#: .././mainwin.py:22342 .././mainwin.py:23384 +#: .././mainwin.py:22436 +msgid "" +"TRANSLATOR'S NOTE: This section specifies text used to display videos in the " +"Videos tab. Videos are displayed in several different formats. To switch " +"format, in the main menu click Media > Switch between views" +msgstr "" + +#: .././mainwin.py:22861 .././mainwin.py:23903 msgid "Originally from:" msgstr "" -#: .././mainwin.py:22355 .././mainwin.py:23398 +#: .././mainwin.py:22874 .././mainwin.py:23917 msgid "From channel" msgstr "" -#: .././mainwin.py:22357 .././mainwin.py:23400 +#: .././mainwin.py:22876 .././mainwin.py:23919 msgid "From playlist" msgstr "" -#: .././mainwin.py:22359 .././mainwin.py:23402 +#: .././mainwin.py:22878 .././mainwin.py:23921 msgid "From folder" msgstr "" -#: .././mainwin.py:22387 +#: .././mainwin.py:22906 msgid "Livestream has not started yet" msgstr "" -#: .././mainwin.py:22394 +#: .././mainwin.py:22913 msgid "Debut has started" msgstr "" -#: .././mainwin.py:22396 +#: .././mainwin.py:22915 msgid "Debut has not started yet" msgstr "" -#: .././mainwin.py:22403 .././mainwin.py:22409 .././mainwin.py:23449 -#: .././mainwin.py:23456 +#: .././mainwin.py:22922 .././mainwin.py:22928 .././mainwin.py:23968 +#: .././mainwin.py:23975 msgid "Duration:" msgstr "" -#: .././mainwin.py:22409 .././mainwin.py:22415 .././mainwin.py:22426 -#: .././mainwin.py:23456 .././mainwin.py:23463 .././mainwin.py:23479 -#: .././mainwin.py:25804 .././mainwin.py:25810 .././mainwin.py:25821 +#: .././mainwin.py:22928 .././mainwin.py:22934 .././mainwin.py:22945 +#: .././mainwin.py:23975 .././mainwin.py:23982 .././mainwin.py:23998 +#: .././mainwin.py:26323 .././mainwin.py:26329 .././mainwin.py:26340 #: .././media.py:644 .././media.py:654 .././media.py:2250 .././media.py:2256 #: .././media.py:2266 msgid "unknown" msgstr "" -#: .././mainwin.py:22413 .././mainwin.py:22415 .././mainwin.py:23460 -#: .././mainwin.py:23462 +#: .././mainwin.py:22932 .././mainwin.py:22934 .././mainwin.py:23979 +#: .././mainwin.py:23981 msgid "Size:" msgstr "" -#: .././mainwin.py:22424 .././mainwin.py:22426 .././mainwin.py:23474 +#: .././mainwin.py:22943 .././mainwin.py:22945 .././mainwin.py:23993 msgid "Date:" msgstr "" -#: .././mainwin.py:22765 +#: .././mainwin.py:23284 msgid "Watch:" msgstr "" -#: .././mainwin.py:22834 +#: .././mainwin.py:23353 msgid "Temporary:" msgstr "" -#: .././mainwin.py:22877 +#: .././mainwin.py:23396 msgid "Marked:" msgstr "" -#: .././mainwin.py:23356 .././mainwin.py:23419 +#: .././mainwin.py:23875 .././mainwin.py:23938 msgid "Show the full description" msgstr "" -#: .././mainwin.py:23357 .././mainwin.py:23420 +#: .././mainwin.py:23876 .././mainwin.py:23939 msgid "More" msgstr "" -#: .././mainwin.py:23369 .././mainwin.py:23428 +#: .././mainwin.py:23888 .././mainwin.py:23947 msgid "Show the short description" msgstr "" -#: .././mainwin.py:23370 .././mainwin.py:23429 +#: .././mainwin.py:23889 .././mainwin.py:23948 msgid "Less" msgstr "" -#: .././mainwin.py:23469 +#: .././mainwin.py:23988 msgid "Received:" msgstr "" -#: .././mainwin.py:23498 +#: .././mainwin.py:24017 msgid "Live now:" msgstr "" -#: .././mainwin.py:23500 .././mainwin.py:25954 +#: .././mainwin.py:24019 .././mainwin.py:26473 msgid "Live soon:" msgstr "" -#: .././mainwin.py:23509 +#: .././mainwin.py:24028 msgid "Debut now:" msgstr "" -#: .././mainwin.py:23511 .././mainwin.py:25956 +#: .././mainwin.py:24030 .././mainwin.py:26475 msgid "Debut soon:" msgstr "" @@ -2854,14 +3095,14 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23518 .././mainwin.py:23520 .././mainwin.py:23524 -#: .././mainwin.py:23817 .././mainwin.py:23819 .././mainwin.py:23823 -#: .././mainwin.py:24295 .././mainwin.py:25835 .././mainwin.py:25837 -#: .././mainwin.py:25841 +#: .././mainwin.py:24037 .././mainwin.py:24039 .././mainwin.py:24043 +#: .././mainwin.py:24336 .././mainwin.py:24338 .././mainwin.py:24342 +#: .././mainwin.py:24814 .././mainwin.py:26354 .././mainwin.py:26356 +#: .././mainwin.py:26360 msgid "Notify" msgstr "" -#: .././mainwin.py:23528 .././mainwin.py:23827 .././mainwin.py:25845 +#: .././mainwin.py:24047 .././mainwin.py:24346 .././mainwin.py:26364 msgid "When the livestream starts, notify the user" msgstr "" @@ -2869,13 +3110,13 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23539 .././mainwin.py:23541 .././mainwin.py:23833 -#: .././mainwin.py:23835 .././mainwin.py:23838 .././mainwin.py:24186 -#: .././mainwin.py:25856 .././mainwin.py:25858 +#: .././mainwin.py:24058 .././mainwin.py:24060 .././mainwin.py:24352 +#: .././mainwin.py:24354 .././mainwin.py:24357 .././mainwin.py:24705 +#: .././mainwin.py:26375 .././mainwin.py:26377 msgid "Alarm" msgstr "" -#: .././mainwin.py:23545 .././mainwin.py:23842 .././mainwin.py:25862 +#: .././mainwin.py:24064 .././mainwin.py:24361 .././mainwin.py:26381 msgid "When the livestream starts, sound an alarm" msgstr "" @@ -2883,13 +3124,13 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23550 .././mainwin.py:23552 .././mainwin.py:23848 -#: .././mainwin.py:23850 .././mainwin.py:23853 .././mainwin.py:24332 -#: .././mainwin.py:25867 .././mainwin.py:25869 +#: .././mainwin.py:24069 .././mainwin.py:24071 .././mainwin.py:24367 +#: .././mainwin.py:24369 .././mainwin.py:24372 .././mainwin.py:24851 +#: .././mainwin.py:26386 .././mainwin.py:26388 msgid "Open" msgstr "" -#: .././mainwin.py:23556 .././mainwin.py:23857 .././mainwin.py:25873 +#: .././mainwin.py:24075 .././mainwin.py:24376 .././mainwin.py:26392 msgid "When the livestream starts, open it" msgstr "" @@ -2899,14 +3140,14 @@ msgstr "" #. then use a Glib timer to restore it (after some small fraction of a #. second) #. (Livestream already broadcasting) -#: .././mainwin.py:23564 .././mainwin.py:23569 .././mainwin.py:23571 -#: .././mainwin.py:23863 .././mainwin.py:23865 .././mainwin.py:23868 -#: .././mainwin.py:24222 .././mainwin.py:25881 .././mainwin.py:25886 -#: .././mainwin.py:25888 +#: .././mainwin.py:24083 .././mainwin.py:24088 .././mainwin.py:24090 +#: .././mainwin.py:24382 .././mainwin.py:24384 .././mainwin.py:24387 +#: .././mainwin.py:24741 .././mainwin.py:26400 .././mainwin.py:26405 +#: .././mainwin.py:26407 msgid "D/L on start" msgstr "" -#: .././mainwin.py:23575 .././mainwin.py:23872 .././mainwin.py:25892 +#: .././mainwin.py:24094 .././mainwin.py:24391 .././mainwin.py:26411 msgid "When the livestream starts, download it" msgstr "" @@ -2914,18 +3155,18 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23581 .././mainwin.py:23586 .././mainwin.py:23588 -#: .././mainwin.py:23878 .././mainwin.py:23880 .././mainwin.py:23883 -#: .././mainwin.py:24259 .././mainwin.py:25898 .././mainwin.py:25903 -#: .././mainwin.py:25905 +#: .././mainwin.py:24100 .././mainwin.py:24105 .././mainwin.py:24107 +#: .././mainwin.py:24397 .././mainwin.py:24399 .././mainwin.py:24402 +#: .././mainwin.py:24778 .././mainwin.py:26417 .././mainwin.py:26422 +#: .././mainwin.py:26424 msgid "D/L on stop" msgstr "" -#: .././mainwin.py:23592 .././mainwin.py:23887 .././mainwin.py:25909 +#: .././mainwin.py:24111 .././mainwin.py:24406 .././mainwin.py:26428 msgid "When the livestream stops, download it" msgstr "" -#: .././mainwin.py:23608 .././mainwin.py:25925 +#: .././mainwin.py:24127 .././mainwin.py:26444 msgid "Watch in your media player" msgstr "" @@ -2933,54 +3174,54 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23609 .././mainwin.py:24942 .././mainwin.py:25926 +#: .././mainwin.py:24128 .././mainwin.py:25461 .././mainwin.py:26445 msgid "Player" msgstr "" -#: .././mainwin.py:23641 .././mainwin.py:25971 +#: .././mainwin.py:24160 .././mainwin.py:26490 msgid "Download this video" msgstr "" -#: .././mainwin.py:23656 .././mainwin.py:25986 +#: .././mainwin.py:24175 .././mainwin.py:26505 msgid "" "TRANSLATOR'S NOTE: If you want to use &, use & - if you want to use a " "different word (e.g. French et), then just use that word" msgstr "" -#: .././mainwin.py:23664 .././mainwin.py:25994 +#: .././mainwin.py:24183 .././mainwin.py:26513 msgid "Download and watch in your media player" msgstr "" -#: .././mainwin.py:23665 +#: .././mainwin.py:24184 msgid "Download & watch" msgstr "" -#: .././mainwin.py:23672 +#: .././mainwin.py:24191 msgid "Not downloaded" msgstr "" -#: .././mainwin.py:23696 +#: .././mainwin.py:24215 msgid "Watch on website" msgstr "" -#: .././mainwin.py:23697 .././mainwin.py:24985 +#: .././mainwin.py:24216 .././mainwin.py:25504 msgid "Website" msgstr "" -#: .././mainwin.py:23712 +#: .././mainwin.py:24231 #, python-brace-format msgid "Watch on {0}" msgstr "" -#: .././mainwin.py:23726 +#: .././mainwin.py:24245 msgid "Watch on YouTube" msgstr "" -#: .././mainwin.py:23727 +#: .././mainwin.py:24246 msgid "YouTube" msgstr "" -#: .././mainwin.py:23739 +#: .././mainwin.py:24258 msgid "Watch on HookTube" msgstr "" @@ -2988,11 +3229,11 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23740 .././mainwin.py:24758 +#: .././mainwin.py:24259 .././mainwin.py:25277 msgid "HookTube" msgstr "" -#: .././mainwin.py:23752 +#: .././mainwin.py:24271 msgid "Watch on Invidious" msgstr "" @@ -3000,25 +3241,16 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23753 .././mainwin.py:24799 +#: .././mainwin.py:24272 .././mainwin.py:25318 msgid "Invidious" msgstr "" -#. Because of an unexplained Gtk problem, there is usually a crash after -#. this function returns. Workaround is to make the label unclickable, -#. then use a Glib timer to restore it (after some small fraction of a -#. second) -#: .././mainwin.py:23772 .././mainwin.py:24841 .././config.py:17772 -#: .././config.py:21273 -msgid "Other" -msgstr "" - #. Links not clickable -#: .././mainwin.py:23790 +#: .././mainwin.py:24309 msgid "No link" msgstr "" -#: .././mainwin.py:23921 +#: .././mainwin.py:24440 msgid "Download to a temporary folder later" msgstr "" @@ -3026,19 +3258,19 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23922 .././mainwin.py:23939 .././mainwin.py:24717 +#: .././mainwin.py:24441 .././mainwin.py:24458 .././mainwin.py:25236 msgid "Mark for download" msgstr "" -#: .././mainwin.py:23927 +#: .././mainwin.py:24446 msgid "Download to a temporary folder" msgstr "" -#: .././mainwin.py:23933 +#: .././mainwin.py:24452 msgid "Download to a temporary folder, then watch" msgstr "" -#: .././mainwin.py:23934 .././mainwin.py:25995 +#: .././mainwin.py:24453 .././mainwin.py:26514 msgid "D/L & watch" msgstr "" @@ -3046,12 +3278,12 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23941 .././mainwin.py:24676 +#: .././mainwin.py:24460 .././mainwin.py:25195 msgid "D/L and watch" msgstr "" #. Archived/not archived -#: .././mainwin.py:23962 .././mainwin.py:26030 +#: .././mainwin.py:24481 .././mainwin.py:26549 msgid "Prevent automatic deletion of the video" msgstr "" @@ -3059,13 +3291,13 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23966 .././mainwin.py:23970 .././mainwin.py:24367 -#: .././mainwin.py:26034 .././mainwin.py:26038 .././mainwin.py:26238 +#: .././mainwin.py:24485 .././mainwin.py:24489 .././mainwin.py:24886 +#: .././mainwin.py:26553 .././mainwin.py:26557 .././mainwin.py:26757 msgid "Archived" msgstr "" #. Bookmarked/not bookmarked -#: .././mainwin.py:23975 .././mainwin.py:26043 +#: .././mainwin.py:24494 .././mainwin.py:26562 msgid "Show video in Bookmarks folder" msgstr "" @@ -3075,13 +3307,13 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23980 .././mainwin.py:23985 .././mainwin.py:26047 -#: .././mainwin.py:26051 .././mainwin.py:26280 +#: .././mainwin.py:24499 .././mainwin.py:24504 .././mainwin.py:26566 +#: .././mainwin.py:26570 .././mainwin.py:26799 msgid "B/mark" msgstr "" #. Favourite/not favourite -#: .././mainwin.py:23990 .././mainwin.py:26056 +#: .././mainwin.py:24509 .././mainwin.py:26575 msgid "Show in Favourite Videos folder" msgstr "Show in Favorite Videos folder" @@ -3089,13 +3321,13 @@ msgstr "Show in Favorite Videos folder" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:23994 .././mainwin.py:23998 .././mainwin.py:24451 -#: .././mainwin.py:26060 .././mainwin.py:26064 .././config.py:15358 +#: .././mainwin.py:24513 .././mainwin.py:24517 .././mainwin.py:24970 +#: .././mainwin.py:26579 .././mainwin.py:26583 .././config.py:15731 msgid "Favourite" msgstr "Favorite" #. Missing/not missing -#: .././mainwin.py:24002 .././mainwin.py:26068 +#: .././mainwin.py:24521 .././mainwin.py:26587 msgid "Mark video as removed by creator" msgstr "" @@ -3103,13 +3335,13 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:24006 .././mainwin.py:24010 .././mainwin.py:24493 -#: .././mainwin.py:26072 .././mainwin.py:26076 +#: .././mainwin.py:24525 .././mainwin.py:24529 .././mainwin.py:25012 +#: .././mainwin.py:26591 .././mainwin.py:26595 msgid "Missing" msgstr "" #. New/not new -#: .././mainwin.py:24015 .././mainwin.py:26081 +#: .././mainwin.py:24534 .././mainwin.py:26600 msgid "Mark video as never watched" msgstr "" @@ -3117,13 +3349,13 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:24019 .././mainwin.py:24023 .././mainwin.py:24528 -#: .././mainwin.py:26085 .././mainwin.py:26089 +#: .././mainwin.py:24538 .././mainwin.py:24542 .././mainwin.py:25047 +#: .././mainwin.py:26604 .././mainwin.py:26608 msgid "New" msgstr "" #. In waiting list/not in waiting list -#: .././mainwin.py:24028 .././mainwin.py:26094 +#: .././mainwin.py:24547 .././mainwin.py:26613 msgid "Show in Waiting Videos folder" msgstr "" @@ -3131,1177 +3363,1406 @@ msgstr "" #. this function returns. Workaround is to make the label unclickable, #. then use a Glib timer to restore it (after some small fraction of a #. second) -#: .././mainwin.py:24409 +#: .././mainwin.py:24928 msgid "Bookmarked" msgstr "" -#: .././mainwin.py:25778 +#: .././mainwin.py:26297 msgid "Click to open" msgstr "" -#: .././mainwin.py:25966 +#: .././mainwin.py:26485 msgid "TRANSLATOR'S NOTE: D/L means download" msgstr "" -#: .././mainwin.py:26002 +#: .././mainwin.py:26521 msgid "Can't D/L" msgstr "" -#: .././mainwin.py:26023 +#: .././mainwin.py:26542 msgid "" "TRANSLATOR'S NOTE: This section contains shortened labels: Archive = " "Archived, B/Mark = Bookmarked, Waiting: In waiting list" msgstr "" -#: .././mainwin.py:27182 +#: .././mainwin.py:27701 msgid "Invalid URL" msgstr "" -#: .././mainwin.py:27193 +#: .././mainwin.py:27712 msgid "Duplicate URL" msgstr "" -#: .././mainwin.py:27199 +#: .././mainwin.py:27718 msgid "Failed to add URL" msgstr "" -#: .././mainwin.py:27669 +#: .././mainwin.py:28144 +msgid "" +"TRANSLATOR'S NOTE: 'Add many channels/playlists' dialogue starts here. In " +"the main window menu, click Media > Add many channels/playlists..." +msgstr "" + +#: .././mainwin.py:28194 msgid "Add many channels/playlists" msgstr "" -#: .././mainwin.py:27698 .././mainwin.py:28518 .././mainwin.py:29383 -#: .././mainwin.py:29917 .././mainwin.py:32490 +#: .././mainwin.py:28223 .././mainwin.py:29048 .././mainwin.py:29928 +#: .././mainwin.py:30473 .././mainwin.py:33126 msgid "Enable automatic copy/paste" msgstr "" #. Buttons to add URLs as channels/playlists -#: .././mainwin.py:27753 +#: .././mainwin.py:28278 msgid "Add channels" msgstr "" -#: .././mainwin.py:27757 +#: .././mainwin.py:28282 msgid "Add playlists" msgstr "" -#: .././mainwin.py:27770 +#: .././mainwin.py:28295 msgid "Double-click the names/URLs to customise them" msgstr "" -#: .././mainwin.py:27778 +#: .././mainwin.py:28303 msgid "" "HINT: You can also click Media > Reset channel/playlist names..." msgstr "" -#: .././mainwin.py:27806 .././mainwin.py:30683 .././mainwin.py:32066 -#: .././mainwin.py:34260 .././config.py:3444 .././config.py:5573 -#: .././config.py:5704 +#: .././mainwin.py:28331 .././mainwin.py:31263 .././mainwin.py:32696 +#: .././mainwin.py:34950 .././config.py:3466 .././config.py:5681 +#: .././config.py:5816 msgid "Type" msgstr "" -#: .././mainwin.py:27806 .././config.py:20985 +#: .././mainwin.py:28331 .././config.py:21526 msgid "URL" msgstr "" #. Add more buttons -#: .././mainwin.py:27848 +#: .././mainwin.py:28373 msgid "Toggle channel/playlist" msgstr "" -#: .././mainwin.py:27852 +#: .././mainwin.py:28377 msgid "Delete selected lines" msgstr "" -#: .././mainwin.py:27892 +#: .././mainwin.py:28417 msgid "Add to this folder:" msgstr "" -#: .././mainwin.py:27901 .././mainwin.py:28468 .././mainwin.py:29115 -#: .././mainwin.py:29333 .././mainwin.py:29859 +#: .././mainwin.py:28426 .././mainwin.py:28998 .././mainwin.py:29655 +#: .././mainwin.py:29878 .././mainwin.py:30415 msgid "No parent folder" msgstr "" -#: .././mainwin.py:28336 +#: .././mainwin.py:28828 +msgid "" +"TRANSLATOR'S NOTE: 'Add channel' dialogue starts here. In the main window " +"toolbar, click the Channel button" +msgstr "" + +#: .././mainwin.py:28866 msgid "Add channel" msgstr "" -#: .././mainwin.py:28355 +#: .././mainwin.py:28885 msgid "Enter the channel name" msgstr "" -#: .././mainwin.py:28360 +#: .././mainwin.py:28890 msgid "(Use the channel's real name or a customised name)" msgstr "(Use the channel's real name or a customized name)" -#: .././mainwin.py:28368 +#: .././mainwin.py:28898 msgid "Copy and paste a link to the channel" msgstr "" -#: .././mainwin.py:28392 +#: .././mainwin.py:28922 msgid "" "Before adding the URL for a YouTube channel, first click the Videos tab in " "your browser!" msgstr "" -#: .././mainwin.py:28459 +#: .././mainwin.py:28989 msgid "(Optional) Add this channel inside a folder" msgstr "" -#: .././mainwin.py:28501 +#: .././mainwin.py:29031 msgid "Enable video downloads for this channel" msgstr "" -#: .././mainwin.py:28508 .././mainwin.py:29154 .././mainwin.py:29373 -#: .././mainwin.py:29908 +#: .././mainwin.py:29038 .././mainwin.py:29694 .././mainwin.py:29918 +#: .././mainwin.py:30464 msgid "Don't download the videos, just check them" msgstr "" -#: .././mainwin.py:28715 +#: .././mainwin.py:29221 +msgid "" +"TRANSLATOR'S NOTE: 'Add dropzone dialogue starts here. In the Drag and Drop " +"tab, click the button in the top-right corner" +msgstr "" + +#: .././mainwin.py:29250 msgid "Add dropzone" msgstr "" -#: .././mainwin.py:28737 +#: .././mainwin.py:29272 msgid "Create new download options called" msgstr "" -#: .././mainwin.py:28749 .././mainwin.py:30116 +#: .././mainwin.py:29284 .././mainwin.py:30678 msgid "Use these download options" msgstr "" -#: .././mainwin.py:28786 .././mainwin.py:30150 +#: .././mainwin.py:29321 .././mainwin.py:30712 msgid "Clone these download options" msgstr "" -#: .././mainwin.py:29045 +#: .././mainwin.py:29554 +msgid "" +"TRANSLATOR'S NOTE: 'Add folder' dialogue starts here. In the main window " +"toolbar, click the Folder button" +msgstr "" + +#: .././mainwin.py:29585 msgid "Add folder" msgstr "" -#: .././mainwin.py:29064 +#: .././mainwin.py:29604 msgid "Enter the folder name" msgstr "" -#: .././mainwin.py:29105 +#: .././mainwin.py:29645 msgid "(Optional) Add this folder inside another folder" msgstr "" -#: .././mainwin.py:29148 +#: .././mainwin.py:29688 msgid "Enable video downloads for this folder" msgstr "" -#: .././mainwin.py:29243 +#: .././mainwin.py:29752 +msgid "" +"TRANSLATOR'S NOTE: 'Add playlist' dialogue starts here. In the main window " +"toolbar, click the Playlist button" +msgstr "" + +#: .././mainwin.py:29788 msgid "Add playlist" msgstr "" -#: .././mainwin.py:29262 +#: .././mainwin.py:29807 msgid "Enter the playlist name" msgstr "" -#: .././mainwin.py:29267 +#: .././mainwin.py:29812 msgid "(Use the playlist's real name or a customised name)" msgstr "(Use the playlist's real name or a customized name)" -#: .././mainwin.py:29275 +#: .././mainwin.py:29820 msgid "Copy and paste a link to the playlist" msgstr "" -#: .././mainwin.py:29324 +#: .././mainwin.py:29869 msgid "(Optional) Add this playlist inside a folder" msgstr "" -#: .././mainwin.py:29366 +#: .././mainwin.py:29911 msgid "Enable video downloads for this playlist" msgstr "" -#: .././mainwin.py:29545 +#: .././mainwin.py:30066 +msgid "" +"TRANSLATOR'S NOTE: 'Reset timestamps' dialogue starts here. In the Videos " +"tab, right-click a video and select Show Video > Properties... > Timestamps " +"> Reset list using copied text" +msgstr "" + +#: .././mainwin.py:30096 msgid "Reset timestamps" msgstr "" -#: .././mainwin.py:29567 +#: .././mainwin.py:30118 msgid "Copy timestamps below, e.g." msgstr "" -#: .././mainwin.py:29568 +#: .././mainwin.py:30119 msgid "Introduction" msgstr "" -#: .././mainwin.py:29717 +#: .././mainwin.py:30236 +msgid "" +"TRANSLATOR'S NOTE: 'Add video' dialogue starts here. In the main window " +"toolbar, click the Video button" +msgstr "" + +#: .././mainwin.py:30273 msgid "Add videos" msgstr "" -#: .././mainwin.py:29736 .././mainwin.py:32377 +#: .././mainwin.py:30292 .././mainwin.py:33013 msgid "Copy and paste the links to one or more videos" msgstr "" -#: .././mainwin.py:29742 .././mainwin.py:32383 +#: .././mainwin.py:30298 .././mainwin.py:33019 msgid "Links containing multiple videos will be converted to a channel" msgstr "" -#: .././mainwin.py:29749 .././mainwin.py:32390 +#: .././mainwin.py:30305 .././mainwin.py:33026 msgid "Links containing multiple videos will be converted to a playlist" msgstr "" -#: .././mainwin.py:29756 .././mainwin.py:32397 +#: .././mainwin.py:30312 .././mainwin.py:33033 msgid "Links containing multiple videos will be downloaded separately" msgstr "" -#: .././mainwin.py:29763 .././mainwin.py:32404 +#: .././mainwin.py:30319 .././mainwin.py:33040 msgid "Links containing multiple videos will not be downloaded at all" msgstr "" -#: .././mainwin.py:29850 +#: .././mainwin.py:30406 msgid "Add the videos to this folder" msgstr "" -#: .././mainwin.py:29902 +#: .././mainwin.py:30458 msgid "I want to download these videos" msgstr "" -#: .././mainwin.py:30084 .././config.py:2259 +#: .././mainwin.py:30617 +msgid "" +"TRANSLATOR'S NOTE: 'Apply download options' dialogue starts here. In the " +"Videos tab, right-click a channel, playlist or folder and select Downloads > " +"Apply download options..." +msgstr "" + +#: .././mainwin.py:30646 .././config.py:2259 msgid "Apply download options" msgstr "" -#: .././mainwin.py:30106 +#: .././mainwin.py:30668 msgid "Create new download options" msgstr "" -#: .././mainwin.py:30364 +#: .././mainwin.py:30912 +msgid "" +"TRANSLATOR'S NOTE: 'Select a date' dialogue starts here. In the toolbar at " +"the bottom of the Videos tab, click the 'Find date' button" +msgstr "" + +#: .././mainwin.py:30932 msgid "Select a date" msgstr "" -#: .././mainwin.py:30449 +#: .././mainwin.py:30991 +msgid "" +"TRANSLATOR'S NOTE: 'Change window theme' dialogue starts here. In the main " +"window menu, click System > Change theme. Available on MS Windows only" +msgstr "" + +#: .././mainwin.py:31023 msgid "Change window theme" msgstr "" -#: .././mainwin.py:30472 +#: .././mainwin.py:31046 msgid "Choose a new window theme for Tartube" msgstr "" -#: .././mainwin.py:30502 +#: .././mainwin.py:31076 msgid "Hint: choose 'default' for the normal MS Windows theme" msgstr "" -#: .././mainwin.py:30643 +#: .././mainwin.py:31201 +msgid "" +"TRANSLATOR'S NOTE: 'Create profile' dialogue starts here. In the main window " +"menu, click Media > Profiles > Create profile..." +msgstr "" + +#: .././mainwin.py:31223 msgid "Create profile" msgstr "" -#: .././mainwin.py:30664 +#: .././mainwin.py:31244 msgid "Items currently marked:" msgstr "" -#: .././mainwin.py:30714 +#: .././mainwin.py:31294 msgid "Remember these items with a profile named:" msgstr "" -#: .././mainwin.py:30815 +#: .././mainwin.py:31356 +msgid "" +"TRANSLATOR'S NOTE: 'Delete channel' dialogue starts here. In the Videos tab, " +"right-click a channel and select Delete channel" +msgstr "" + +#: .././mainwin.py:31401 msgid "Delete channel" msgstr "" -#: .././mainwin.py:30817 +#: .././mainwin.py:31403 msgid "Delete playlist" msgstr "" -#: .././mainwin.py:30819 +#: .././mainwin.py:31405 msgid "Delete folder" msgstr "" -#: .././mainwin.py:30822 +#: .././mainwin.py:31408 msgid "Empty channel" msgstr "" -#: .././mainwin.py:30824 +#: .././mainwin.py:31410 msgid "Empty playlist" msgstr "" -#: .././mainwin.py:30826 +#: .././mainwin.py:31412 msgid "Empty folder" msgstr "" -#: .././mainwin.py:30860 +#: .././mainwin.py:31446 msgid "This channel does not contain any videos" msgstr "" -#: .././mainwin.py:30862 +#: .././mainwin.py:31448 msgid "This playlist does not contain any videos" msgstr "" -#: .././mainwin.py:30864 +#: .././mainwin.py:31450 msgid "This folder doesn't contain anything" msgstr "" -#: .././mainwin.py:30870 +#: .././mainwin.py:31456 msgid "(but there might be some files in Tartube's data folder)" msgstr "" -#: .././mainwin.py:30883 +#: .././mainwin.py:31469 msgid "This channel contains:" msgstr "" -#: .././mainwin.py:30885 +#: .././mainwin.py:31471 msgid "This playlist contains:" msgstr "" -#: .././mainwin.py:30887 .././config.py:17745 +#: .././mainwin.py:31473 .././config.py:18193 msgid "This folder contains:" msgstr "" -#: .././mainwin.py:30894 +#: .././mainwin.py:31480 msgid "1 folder" msgstr "" -#: .././mainwin.py:30896 +#: .././mainwin.py:31482 #, python-brace-format msgid "{0} folders" msgstr "" -#: .././mainwin.py:30903 +#: .././mainwin.py:31489 msgid "1 channel" msgstr "" -#: .././mainwin.py:30905 +#: .././mainwin.py:31491 #, python-brace-format msgid "{0} channels" msgstr "" -#: .././mainwin.py:30912 +#: .././mainwin.py:31498 msgid "1 playlist" msgstr "" -#: .././mainwin.py:30914 +#: .././mainwin.py:31500 #, python-brace-format msgid "{0} playlists" msgstr "" -#: .././mainwin.py:30921 .././mainwin.py:32139 +#: .././mainwin.py:31507 .././mainwin.py:32769 msgid "1 video" msgstr "" -#: .././mainwin.py:30923 .././mainwin.py:32142 +#: .././mainwin.py:31509 .././mainwin.py:32772 #, python-brace-format msgid "{0} videos" msgstr "" -#: .././mainwin.py:30936 +#: .././mainwin.py:31522 msgid "" "Do you want to remove the channel from your filesystem, or do you just want " "to remove the channel from this list?" msgstr "" -#: .././mainwin.py:30940 +#: .././mainwin.py:31526 msgid "Just remove the channel from this list" msgstr "" -#: .././mainwin.py:30944 +#: .././mainwin.py:31530 msgid "" "Do you want to remove the playlist from your filesystem, or do you just " "want to remove the playlist from this list?" msgstr "" -#: .././mainwin.py:30948 +#: .././mainwin.py:31534 msgid "Just remove the playlist from this list" msgstr "" -#: .././mainwin.py:30952 +#: .././mainwin.py:31538 msgid "" "Do you want to remove the folder from your filesystem, or do you just want " "to remove the folder from this list?" msgstr "" -#: .././mainwin.py:30956 +#: .././mainwin.py:31542 msgid "Just remove the folder from this list" msgstr "" -#: .././mainwin.py:30962 +#: .././mainwin.py:31548 msgid "" "Do you want to empty the channel on your filesystem, or do you just want to " "empty the channel in this list?" msgstr "" -#: .././mainwin.py:30966 +#: .././mainwin.py:31552 msgid "Just empty the channel in this list" msgstr "" -#: .././mainwin.py:30970 +#: .././mainwin.py:31556 msgid "" "Do you want to empty the playlist on your filesystem, or do you just want to " "empty the playlist in this list?" msgstr "" -#: .././mainwin.py:30974 +#: .././mainwin.py:31560 msgid "Just empty the playlist in this list" msgstr "" -#: .././mainwin.py:30978 +#: .././mainwin.py:31564 msgid "" "Do you want to empty the folder on your filesystem, or do you just want to " "empty the folder in this list?" msgstr "" -#: .././mainwin.py:30982 +#: .././mainwin.py:31568 msgid "Just empty the folder in this list" msgstr "" -#: .././mainwin.py:30998 .././mainwin.py:31281 +#: .././mainwin.py:31584 .././mainwin.py:31878 msgid "Delete files on your computer" msgstr "" -#: .././mainwin.py:31006 .././mainwin.py:31289 .././mainwin.py:32971 -#: .././mainwin.py:33175 +#: .././mainwin.py:31592 .././mainwin.py:31886 .././mainwin.py:33619 +#: .././mainwin.py:33829 msgid "Always show this window" msgstr "" -#: .././mainwin.py:31061 +#: .././mainwin.py:31625 +msgid "" +"TRANSLATOR'S NOTE: 'Delete dropzone' dialogue starts here. In the Drag and " +"Drop tab, click a delete button in the bottom-right corner of any dropzone" +msgstr "" + +#: .././mainwin.py:31653 msgid "Delete dropzone" msgstr "" -#: .././mainwin.py:31079 +#: .././mainwin.py:31671 msgid "Just delete the dropzone" msgstr "" -#: .././mainwin.py:31084 +#: .././mainwin.py:31676 msgid "Also delete download options" msgstr "" -#: .././mainwin.py:31208 +#: .././mainwin.py:31750 +msgid "" +"TRANSLATOR'S NOTE: 'Delete videos' dialogue starts here. In the Videos tab, " +"right-click a video and select Delete video" +msgstr "" + +#: .././mainwin.py:31805 msgid "Delete videos" msgstr "" -#: .././mainwin.py:31233 +#: .././mainwin.py:31830 msgid "1 selected video" msgstr "" -#: .././mainwin.py:31236 +#: .././mainwin.py:31833 #, python-brace-format msgid "{0} selected videos" msgstr "" -#: .././mainwin.py:31248 +#: .././mainwin.py:31845 msgid "" "Do you want to remove the video(s) from your filesystem, or do you just want " "to remove them from this channel?" msgstr "" -#: .././mainwin.py:31251 +#: .././mainwin.py:31848 msgid "Just remove the video(s) from this channel" msgstr "" -#: .././mainwin.py:31255 +#: .././mainwin.py:31852 msgid "" "Do you want to remove the video(s) from your filesystem, or do you just want " "to remove them from this playlist?" msgstr "" -#: .././mainwin.py:31258 +#: .././mainwin.py:31855 msgid "Just remove the video(s) from this playlist" msgstr "" -#: .././mainwin.py:31262 +#: .././mainwin.py:31859 msgid "" "Do you want to remove the video(s) from your filesystem, or do you just want " "to remove them from this folder?" msgstr "" -#: .././mainwin.py:31265 +#: .././mainwin.py:31862 msgid "Just remove the video(s) from this folder" msgstr "" -#: .././mainwin.py:31341 +#: .././mainwin.py:31918 +msgid "" +"TRANSLATOR'S NOTE: 'Duplicate URLs' dialogue starts here. In the main window " +"toolbar, click the Video button. In the top half of the first dialogue " +"window, add duplicate URLs and then click the OK button" +msgstr "" + +#: .././mainwin.py:31945 msgid "Duplicate URLs" msgstr "" -#: .././mainwin.py:31364 +#: .././mainwin.py:31968 msgid "The following URLs are duplicates:" msgstr "" -#: .././mainwin.py:31439 +#: .././mainwin.py:32016 +msgid "" +"TRANSLATOR'S NOTE: 'Export from database' dialogue starts here. In the main " +"window menu, click Media > Export/Import > Export from database..." +msgstr "" + +#: .././mainwin.py:32049 msgid "Export from database" msgstr "" -#: .././mainwin.py:31465 +#: .././mainwin.py:32075 msgid "" "Tartube is ready to export a partial summary of its database, containing a " "list of videos, channels, playlists and/or folders (but not including the " "videos themselves)" msgstr "" -#: .././mainwin.py:31472 +#: .././mainwin.py:32082 msgid "" "Tartube is ready to export a summary of its database, containing a list of " "videos, channels, playlists and/or folders (but not including the videos " "themselves)" msgstr "" -#: .././mainwin.py:31488 +#: .././mainwin.py:32098 msgid "Choose what should be included:" msgstr "" -#: .././mainwin.py:31496 +#: .././mainwin.py:32106 msgid "Include lists of videos" msgstr "" -#: .././mainwin.py:31501 +#: .././mainwin.py:32111 msgid "Include channels" msgstr "" -#: .././mainwin.py:31506 +#: .././mainwin.py:32116 msgid "Include playlists" msgstr "" -#: .././mainwin.py:31511 +#: .././mainwin.py:32121 msgid "Preserve folder structure" msgstr "" -#: .././mainwin.py:31519 +#: .././mainwin.py:32129 msgid "Export as JSON" msgstr "" -#: .././mainwin.py:31525 +#: .././mainwin.py:32135 msgid "Export as CSV using separator" msgstr "" -#: .././mainwin.py:31552 +#: .././mainwin.py:32162 msgid "Export as plain text" msgstr "" -#: .././mainwin.py:31648 +#: .././mainwin.py:32238 +msgid "" +"TRANSLATOR'S NOTE: 'Type extractor code' dialogue starts here. In the main " +"window menu, click Edit > General download Options... > Formats > Preferred, " +"then click the small button next to the 'Add format' button" +msgstr "" + +#: .././mainwin.py:32265 msgid "Type extractor code" msgstr "" -#: .././mainwin.py:31685 +#: .././mainwin.py:32302 #, python-brace-format msgid "Type an extractor code in the range {0}-{1}" msgstr "" -#: .././mainwin.py:31688 +#: .././mainwin.py:32305 msgid "(mp3, mp4 etc are also acceptable)" msgstr "" -#: .././mainwin.py:31694 +#: .././mainwin.py:32311 msgid "e.g. 136 for mp4 720p" msgstr "" -#: .././mainwin.py:31819 +#: .././mainwin.py:32393 +msgid "" +"TRANSLATOR'S NOTE: Confirmation dialogue for fetching formats/subtitles. In " +"the Videos tab, right-click a video and select Fetch > Available formats... " +"or Fetch > Available subtitles" +msgstr "" + +#: .././mainwin.py:32443 msgid "Click the Output tab to see available formats" msgstr "" -#: .././mainwin.py:31821 +#: .././mainwin.py:32445 msgid "Click the Output tab to see available subtitles" msgstr "" -#: .././mainwin.py:31830 +#: .././mainwin.py:32454 msgid "Update general download options" msgstr "" -#: .././mainwin.py:31838 +#: .././mainwin.py:32462 msgid "Apply download options to this video only" msgstr "" -#: .././mainwin.py:31846 +#: .././mainwin.py:32470 msgid "Update this video's download options" msgstr "" -#: .././mainwin.py:32013 +#: .././mainwin.py:32613 +msgid "" +"TRANSLATOR'S NOTE: 'Import into database' dialogue starts here. In the main " +"window menu, click Media > Export/Import > Import into database..." +msgstr "" + +#: .././mainwin.py:32643 msgid "Import into database" msgstr "" -#: .././mainwin.py:32037 +#: .././mainwin.py:32667 msgid "Choose which items to import" msgstr "" -#: .././mainwin.py:32058 .././config.py:23572 .././config.py:25652 -#: .././config.py:25925 +#: .././mainwin.py:32688 .././config.py:24225 .././config.py:26375 +#: .././config.py:26656 msgid "Import" msgstr "" -#: .././mainwin.py:32094 +#: .././mainwin.py:32724 msgid "Import videos" msgstr "" -#: .././mainwin.py:32099 +#: .././mainwin.py:32729 msgid "Merge channels/playlists/folders" msgstr "" #. Strip of widgets at the bottom #. Bottom strip -#: .././mainwin.py:32102 .././mainwin.py:34326 .././mainwin.py:35795 +#: .././mainwin.py:32732 .././mainwin.py:35016 .././mainwin.py:36535 msgid "Select all" msgstr "" -#: .././mainwin.py:32107 .././mainwin.py:34331 +#: .././mainwin.py:32737 .././mainwin.py:35021 msgid "Unselect all" msgstr "" -#: .././mainwin.py:32358 +#: .././mainwin.py:32960 +msgid "" +"TRANSLATOR'S NOTE: 'Insert videos' dialogue starts here. In the Videos tab, " +"right-click a channel and select Channel actions > Insert videos..." +msgstr "" + +#: .././mainwin.py:32994 msgid "Insert videos" msgstr "" -#: .././mainwin.py:32459 +#: .././mainwin.py:33095 msgid "Insert the videos into this channel:" msgstr "" -#: .././mainwin.py:32462 +#: .././mainwin.py:33098 msgid "Insert the videos into this playlist:" msgstr "" -#: .././mainwin.py:32465 +#: .././mainwin.py:33101 msgid "Insert the videos into this folder:" msgstr "" -#: .././mainwin.py:32649 +#: .././mainwin.py:33258 +msgid "" +"TRANSLATOR'S NOTE: 'Mount drive' dialogue starts here. Visible on startup, " +"if Tartube's data folder does not exist" +msgstr "" + +#: .././mainwin.py:33291 msgid "Mount drive" msgstr "" -#: .././mainwin.py:32674 +#: .././mainwin.py:33316 msgid "The Tartube data folder is set to:" msgstr "" -#: .././mainwin.py:32687 +#: .././mainwin.py:33329 msgid "...but this folder doesn't exist" msgstr "" -#: .././mainwin.py:32690 +#: .././mainwin.py:33332 msgid "...but Tartube cannot write to this folder" msgstr "" -#: .././mainwin.py:32700 +#: .././mainwin.py:33342 msgid "I have mounted the drive, please try again" msgstr "" -#: .././mainwin.py:32706 +#: .././mainwin.py:33348 msgid "Use this data folder:" msgstr "" -#: .././mainwin.py:32733 +#: .././mainwin.py:33375 msgid "Select a different data folder" msgstr "" -#: .././mainwin.py:32739 +#: .././mainwin.py:33381 msgid "Use the default data folder" msgstr "" -#: .././mainwin.py:32745 +#: .././mainwin.py:33387 msgid "Shut down Tartube" msgstr "" #. 'Cancel' button -#: .././mainwin.py:32752 .././config.py:1221 +#: .././mainwin.py:33394 .././config.py:1221 msgid "Cancel" msgstr "" #. 'OK' button -#: .././mainwin.py:32756 .././config.py:1212 .././config.py:2441 -#: .././config.py:13562 .././config.py:13928 +#: .././mainwin.py:33398 .././config.py:1212 .././config.py:2441 +#: .././config.py:13905 .././config.py:14271 msgid "OK" msgstr "" -#: .././mainwin.py:32787 +#: .././mainwin.py:33429 msgid "The folder still doesn't exist. Please try a different option" msgstr "" -#: .././mainwin.py:32928 +#: .././mainwin.py:33550 +msgid "" +"TRANSLATOR'S NOTE: 'MSYS2 terminal' dialogue starts here. In the main window " +"menu, click System > Open MSYS2 terminal (MS Windows only)" +msgstr "" + +#: .././mainwin.py:33576 msgid "MSYS2 terminal" msgstr "" -#: .././mainwin.py:32952 +#: .././mainwin.py:33600 msgid "On MS Windows, Tartube runs in the MSYS2 environment." msgstr "" -#: .././mainwin.py:32960 +#: .././mainwin.py:33608 msgid "" "Advanced users can use the MSYS2 terminal to make changes to the\n" "environment (for example, to tweak youtube-dl or FFmpeg)" msgstr "" -#: .././mainwin.py:33050 .././config.py:437 +#: .././mainwin.py:33672 +msgid "" +"TRANSLATOR'S NOTE: Download failure dialogue starts here. Visible when the " +"user tries to check/download videos, but no videos are checked/downloaded" +msgstr "" + +#: .././mainwin.py:33704 .././config.py:437 msgid "Downloads" msgstr "" -#: .././mainwin.py:33080 +#: .././mainwin.py:33734 msgid "Nothing happened?" msgstr "" -#: .././mainwin.py:33096 +#: .././mainwin.py:33750 msgid "Check the requested format is actually available" msgstr "" -#: .././mainwin.py:33101 +#: .././mainwin.py:33755 msgid "(Try converting instead of a direct download)" msgstr "" -#: .././mainwin.py:33114 +#: .././mainwin.py:33768 msgid "Check the downloader is installed and updated" msgstr "" -#: .././mainwin.py:33119 .././mainwin.py:35376 +#: .././mainwin.py:33773 .././mainwin.py:36096 msgid "Update" msgstr "" -#: .././mainwin.py:33125 +#: .././mainwin.py:33779 msgid "Tell Tartube where to find the downloader" msgstr "" -#: .././mainwin.py:33130 +#: .././mainwin.py:33784 msgid "Set the downloader's file path" msgstr "" -#: .././mainwin.py:33136 +#: .././mainwin.py:33790 msgid "Try a different downloader" msgstr "" -#: .././mainwin.py:33142 +#: .././mainwin.py:33796 msgid "Find more help" msgstr "" -#: .././mainwin.py:33147 +#: .././mainwin.py:33801 msgid "Read the FAQ" msgstr "" -#: .././mainwin.py:33153 +#: .././mainwin.py:33807 msgid "Ask for help" msgstr "" -#: .././mainwin.py:33165 +#: .././mainwin.py:33819 msgid "" "Don't forget to check the Output tab and the\n" "Errors/Warnings tab for error messages!" msgstr "" -#: .././mainwin.py:33333 +#: .././mainwin.py:33961 +msgid "" +"TRANSLATOR'S NOTE: 'Download/create video clip' dialogue starts here. In the " +"Videos tab, right-click a video and select Special > Download video clip..." +msgstr "" + +#: .././mainwin.py:33993 msgid "Download video clip" msgstr "" -#: .././mainwin.py:33335 +#: .././mainwin.py:33995 msgid "Create video clip" msgstr "" -#: .././mainwin.py:33362 .././config.py:11472 .././config.py:12112 -#: .././config.py:14821 +#: .././mainwin.py:34022 .././config.py:11774 .././config.py:12422 +#: .././config.py:15186 msgid "Start timestamp (e.g. 15:29)" msgstr "" -#: .././mainwin.py:33372 .././config.py:11492 .././config.py:12132 -#: .././config.py:14834 +#: .././mainwin.py:34032 .././config.py:11794 .././config.py:12442 +#: .././config.py:15199 msgid "Stop timestamp (optional)" msgstr "" -#: .././mainwin.py:33381 .././config.py:11507 .././config.py:12147 -#: .././config.py:14847 +#: .././mainwin.py:34041 .././config.py:11809 .././config.py:12457 +#: .././config.py:15212 msgid "Clip title (optional)" msgstr "" -#: .././mainwin.py:33389 +#: .././mainwin.py:34049 msgid "Download this clip" msgstr "" -#: .././mainwin.py:33391 +#: .././mainwin.py:34051 msgid "Create this clip" msgstr "" -#: .././mainwin.py:33400 +#: .././mainwin.py:34060 msgid "Download all clips" msgstr "" -#: .././mainwin.py:33402 +#: .././mainwin.py:34062 msgid "Create all clips" msgstr "" -#: .././mainwin.py:33569 +#: .././mainwin.py:34203 +msgid "" +"TRANSLATOR'S NOTE: 'Download/create sliced video' dialogue starts here. In " +"the Videos tab, right-click a video and select Special > Remove video " +"slices..." +msgstr "" + +#: .././mainwin.py:34235 msgid "Download sliced video" msgstr "" -#: .././mainwin.py:33571 +#: .././mainwin.py:34237 msgid "Create sliced video" msgstr "" -#: .././mainwin.py:33598 .././config.py:11692 .././config.py:12354 -#: .././config.py:15026 +#: .././mainwin.py:34264 .././config.py:11994 .././config.py:12668 +#: .././config.py:15395 msgid "Start (timestamp or seconds)" msgstr "" -#: .././mainwin.py:33608 .././config.py:11705 .././config.py:12367 -#: .././config.py:15038 +#: .././mainwin.py:34274 .././config.py:12007 .././config.py:12681 +#: .././config.py:15407 msgid "Stop (optional)" msgstr "" -#: .././mainwin.py:33616 +#: .././mainwin.py:34282 msgid "Download and remove this slice" msgstr "" -#: .././mainwin.py:33618 +#: .././mainwin.py:34284 msgid "Create this sliced video" msgstr "" -#: .././mainwin.py:33633 +#: .././mainwin.py:34299 msgid "Download and remove everything but this slice" msgstr "" -#: .././mainwin.py:33641 +#: .././mainwin.py:34307 msgid "Download video with all slices removed" msgstr "" -#: .././mainwin.py:33643 +#: .././mainwin.py:34309 msgid "Create video with all slices removed" msgstr "" -#: .././mainwin.py:33800 +#: .././mainwin.py:34449 +msgid "" +"TRANSLATOR'S NOTE: 'Set removal time' dialogue starts here. In the Videos " +"tab, right-click the 'Recent Videos' folder and select Downloads > Set " +"removal time..." +msgstr "" + +#: .././mainwin.py:34472 msgid "Set removal time" msgstr "" -#: .././mainwin.py:33823 +#: .././mainwin.py:34495 msgid "" "When videos are checked/downloaded, older videos\n" "are removed from the Recent Videos folder." msgstr "" -#: .././mainwin.py:33834 .././config.py:17950 +#: .././mainwin.py:34506 .././config.py:18407 msgid "Empty the whole folder" msgstr "" -#: .././mainwin.py:33841 .././config.py:17959 +#: .././mainwin.py:34513 .././config.py:18416 msgid "Remove videos after days" msgstr "" -#: .././mainwin.py:33929 +#: .././mainwin.py:34585 +msgid "" +"TRANSLATOR'S NOTE: 'Stale lockfile' dialogue starts here. Visible on startup " +"if the Tartube database file is protected bu a lockfile" +msgstr "" + +#: .././mainwin.py:34607 msgid "Stale lockfile" msgstr "" -#: .././mainwin.py:33966 +#: .././mainwin.py:34644 msgid "" "Failed to load the Tartube database file, because another copy of Tartube " "seems to be using it" msgstr "" -#: .././mainwin.py:33973 +#: .././mainwin.py:34651 msgid "Do you want to load it anyway?" msgstr "" -#: .././mainwin.py:33979 +#: .././mainwin.py:34657 msgid "" "(Only click 'Yes' if you are sure that other copies of Tartube are not using " "the database right now)" msgstr "" -#: .././mainwin.py:33991 +#: .././mainwin.py:34669 msgid "Yes, load the file" msgstr "" -#: .././mainwin.py:33998 +#: .././mainwin.py:34676 msgid "No, just shut down Tartube" msgstr "" -#: .././mainwin.py:34000 +#: .././mainwin.py:34678 msgid "No, don't load the file" msgstr "" -#: .././mainwin.py:34086 +#: .././mainwin.py:34749 +msgid "" +"TRANSLATOR'S NOTE: 'Rename container' dialogue starts here. In the Videos " +"tab, right-click a channel and select Channel actions > Rename channel..." +msgstr "" + +#: .././mainwin.py:34770 msgid "Rename channel" msgstr "" -#: .././mainwin.py:34088 +#: .././mainwin.py:34772 msgid "Rename playlist" msgstr "" -#: .././mainwin.py:34090 +#: .././mainwin.py:34774 msgid "Rename folder" msgstr "" -#: .././mainwin.py:34114 +#: .././mainwin.py:34798 msgid "Set the new name for the channel:" msgstr "" -#: .././mainwin.py:34116 +#: .././mainwin.py:34800 msgid "Set the new name for the playlist:" msgstr "" -#: .././mainwin.py:34118 +#: .././mainwin.py:34802 msgid "Set the new name for the folder:" msgstr "" -#: .././mainwin.py:34124 +#: .././mainwin.py:34808 msgid "N.B. This procedure will modify your filesystem!\n" msgstr "" -#: .././mainwin.py:34194 +#: .././mainwin.py:34844 +msgid "" +"TRANSLATOR'S NOTE: 'Create profile' dialogue starts here. In the main window " +"menu, click Media > Reset channel//playlist names..." +msgstr "" + +#: .././mainwin.py:34884 msgid "Reset channel/playlist names" msgstr "" -#: .././mainwin.py:34220 +#: .././mainwin.py:34910 msgid "This list is updated whenever channels/playlists are checked/downloaded" msgstr "" -#: .././mainwin.py:34228 +#: .././mainwin.py:34918 msgid "Select which names should be reset to the names on the original website" msgstr "" #. 'Reset' button #. (Signal connect appears below) -#: .././mainwin.py:34252 .././config.py:1194 .././config.py:5430 -#: .././config.py:6046 .././config.py:6200 .././config.py:23798 -#: .././config.py:24757 .././config.py:24785 .././config.py:25401 -#: .././config.py:25442 .././config.py:25509 +#: .././mainwin.py:34942 .././config.py:1194 .././config.py:5533 +#: .././config.py:6166 .././config.py:6320 .././config.py:24455 +#: .././config.py:25438 .././config.py:25466 .././config.py:26107 +#: .././config.py:26148 .././config.py:26223 msgid "Reset" msgstr "" -#: .././mainwin.py:34268 +#: .././mainwin.py:34958 msgid "Database name" msgstr "" -#: .././mainwin.py:34276 +#: .././mainwin.py:34966 msgid "Original name" msgstr "" -#: .././mainwin.py:34499 +#: .././mainwin.py:35172 +msgid "" +"TRANSLATOR'S NOTE: 'Add to scheduled download' dialogue starts here. In the " +"Videos tab, right-click a channel and select Downloads > Add to scheduled " +"download..." +msgstr "" + +#: .././mainwin.py:35195 msgid "Add to scheduled download" msgstr "" -#: .././mainwin.py:34522 +#: .././mainwin.py:35218 msgid "Add the channel to this scheduled download:" msgstr "" -#: .././mainwin.py:34524 +#: .././mainwin.py:35220 msgid "Add the playlist to this scheduled download:" msgstr "" -#: .././mainwin.py:34526 +#: .././mainwin.py:35222 msgid "Add the folder to this scheduled download:" msgstr "" -#: .././mainwin.py:34622 +#: .././mainwin.py:35293 +msgid "" +"TRANSLATOR'S NOTE: 'Set download destination' dialogue starts here. In the " +"Videos tab, right-click a channel and select Downloads > Set download " +"destination..." +msgstr "" + +#: .././mainwin.py:35324 msgid "Set download destination" msgstr "" -#: .././mainwin.py:34668 +#: .././mainwin.py:35370 msgid "This channel normally downloads videos into its own folder" msgstr "" -#: .././mainwin.py:34673 +#: .././mainwin.py:35375 msgid "This playlist normally downloads videos into its own folder" msgstr "" -#: .././mainwin.py:34678 +#: .././mainwin.py:35380 msgid "This folder normally downloads videos into itself" msgstr "" -#: .././mainwin.py:34684 +#: .././mainwin.py:35386 msgid "This channel normally downloads videos into its own directory" msgstr "" -#: .././mainwin.py:34689 +#: .././mainwin.py:35391 msgid "This playlist normally downloads videos into its own directory" msgstr "" -#: .././mainwin.py:34694 +#: .././mainwin.py:35396 msgid "This folder normally downloads videos into its own directory" msgstr "" -#: .././mainwin.py:34704 +#: .././mainwin.py:35406 msgid "Use this location" msgstr "" -#: .././mainwin.py:34712 +#: .././mainwin.py:35414 msgid "Choose a different location if:" msgstr "" -#: .././mainwin.py:34715 +#: .././mainwin.py:35417 msgid "" "You want to add a channel and its playlists, without downloading the same " "video twice" msgstr "" -#: .././mainwin.py:34721 +#: .././mainwin.py:35423 msgid "" "A video creator has channels on both YouTube and BitChute, and you want to " "add both without downloading the same video twice" msgstr "" -#: .././mainwin.py:34819 +#: .././mainwin.py:35521 msgid "" "Using an external folder is not recommended, in general. Choose an external " "folder if:" msgstr "" -#: .././mainwin.py:34824 +#: .././mainwin.py:35526 msgid "" "Using an external directory is not recommended, in general. Choose an " "external directory if:" msgstr "" -#: .././mainwin.py:34830 +#: .././mainwin.py:35532 msgid "" "You want a different application to process the downloaded videos (other " "applications should not modify Tartube's main data folder)" msgstr "" -#: .././mainwin.py:34836 +#: .././mainwin.py:35538 msgid "" "You want a different application to process the downloaded videos (other " "applications should not modify Tartube's main data directory)" msgstr "" #. (Signal connect appears below) -#: .././mainwin.py:34853 .././config.py:5750 .././config.py:6042 -#: .././config.py:6196 .././config.py:8329 .././config.py:8350 -#: .././config.py:8371 .././config.py:23794 .././config.py:25285 -#: .././config.py:25397 .././config.py:25438 .././config.py:25505 +#: .././mainwin.py:35555 .././config.py:5862 .././config.py:6162 +#: .././config.py:6316 .././config.py:8537 .././config.py:8558 +#: .././config.py:8579 .././config.py:24451 .././config.py:25986 +#: .././config.py:26103 .././config.py:26144 .././config.py:26219 msgid "Set" msgstr "" -#: .././mainwin.py:34934 +#: .././mainwin.py:35636 msgid "Select an external folder" msgstr "" -#: .././mainwin.py:34936 +#: .././mainwin.py:35638 msgid "Select an external directory" msgstr "" -#: .././mainwin.py:34956 +#: .././mainwin.py:35658 msgid "An external folder must not be inside Tartube's own data folder" msgstr "" -#: .././mainwin.py:34962 +#: .././mainwin.py:35664 msgid "An external directory must not be inside Tartube's own data directory" msgstr "" -#: .././mainwin.py:35146 +#: .././mainwin.py:35833 +msgid "" +"TRANSLATOR'S NOTE: 'Set nickname' dialogue starts here. In the Videos tab, " +"right-click a channel and select Channel actions > Set nickname..." +msgstr "" + +#: .././mainwin.py:35854 msgid "Set nickname" msgstr "" -#: .././mainwin.py:35171 +#: .././mainwin.py:35879 #, python-brace-format msgid "" "Set a nickname for the channel '{0}' (or leave it blank to reset the " "nickname)" msgstr "" -#: .././mainwin.py:35176 +#: .././mainwin.py:35884 #, python-brace-format msgid "" "Set a nickname for the playlist '{0}' (or leave it blank to reset the " "nickname)" msgstr "" -#: .././mainwin.py:35181 +#: .././mainwin.py:35889 #, python-brace-format msgid "" "Set a nickname for the folder '{0}' (or leave it blank to reset the nickname)" msgstr "" -#: .././mainwin.py:35241 +#: .././mainwin.py:35934 +msgid "" +"TRANSLATOR'S NOTE: 'Set URL' dialogue starts here. In the Videos tab, right-" +"click a channel and select Channel actions > Set URL..." +msgstr "" + +#: .././mainwin.py:35955 msgid "Set URL" msgstr "" -#: .././mainwin.py:35266 +#: .././mainwin.py:35980 #, python-brace-format msgid "Update the URL for the channel '{0}'" msgstr "" -#: .././mainwin.py:35270 +#: .././mainwin.py:35984 #, python-brace-format msgid "Update the URL for the playlist '{0}'" msgstr "" -#: .././mainwin.py:35331 +#: .././mainwin.py:36030 +msgid "" +"TRANSLATOR'S NOTE: 'Show system command' dialogue starts here. In the Videos " +"tab, right-click a channel and select Downloads > Show system command..." +msgstr "" + +#: .././mainwin.py:36051 msgid "Show system command" msgstr "" -#: .././mainwin.py:35385 +#: .././mainwin.py:36105 msgid "Copy to clipboard" msgstr "" -#: .././mainwin.py:35547 .././config.py:24244 +#: .././mainwin.py:36251 +msgid "" +"TRANSLATOR'S NOTE: 'Test youtube-dl' dialogue starts here. In the main " +"window menu, click Operations > Test youtube-dl" +msgstr "" + +#: .././mainwin.py:36272 .././config.py:24909 msgid "Test" msgstr "" -#: .././mainwin.py:35567 +#: .././mainwin.py:36292 msgid "URL of the video to download (optional)" msgstr "" -#: .././mainwin.py:35578 +#: .././mainwin.py:36303 msgid "Command line options (optional)" msgstr "" -#: .././mainwin.py:35659 +#: .././mainwin.py:36355 +msgid "" +"TRANSLATOR'S NOTE: 'Tidy up' dialogue starts here. In the main window menu, " +"click Operations > Tidy up files..." +msgstr "" + +#: .././mainwin.py:36390 msgid "Tidy up files" msgstr "" -#: .././mainwin.py:35661 +#: .././mainwin.py:36392 msgid "Tidy up channel" msgstr "" -#: .././mainwin.py:35663 +#: .././mainwin.py:36394 msgid "Tidy up playlist" msgstr "" -#: .././mainwin.py:35665 +#: .././mainwin.py:36396 msgid "Tidy up folder" msgstr "" -#: .././mainwin.py:35694 +#: .././mainwin.py:36425 msgid "Check that videos are not corrupted" msgstr "" -#: .././mainwin.py:35699 +#: .././mainwin.py:36430 msgid "Delete corrupted video files" msgstr "" -#: .././mainwin.py:35709 +#: .././mainwin.py:36440 msgid "Check that videos do/don't exist" msgstr "" -#: .././mainwin.py:35716 +#: .././mainwin.py:36447 msgid "" "Delete downloaded video files (doesn't remove videos from Tartube's database)" msgstr "" -#: .././mainwin.py:35728 +#: .././mainwin.py:36459 msgid "Also delete all video/audio files with the same name" msgstr "" -#: .././mainwin.py:35736 +#: .././mainwin.py:36467 msgid "Remove no-URL videos from database" msgstr "" -#: .././mainwin.py:35740 +#: .././mainwin.py:36471 msgid "Remove duplicate videos from database" msgstr "" -#: .././mainwin.py:35745 +#: .././mainwin.py:36476 msgid "Delete all archive files" msgstr "" -#: .././mainwin.py:35749 +#: .././mainwin.py:36480 msgid "Move thumbnails into own folder" msgstr "" -#: .././mainwin.py:35754 +#: .././mainwin.py:36485 msgid "Delete all thumbnail files" msgstr "" -#: .././mainwin.py:35759 +#: .././mainwin.py:36490 msgid "Delete all .webp thumbnails" msgstr "" -#: .././mainwin.py:35766 +#: .././mainwin.py:36497 msgid "Convert .webp thumbnails to .jpg using FFmpeg" msgstr "" -#: .././mainwin.py:35775 +#: .././mainwin.py:36506 msgid "Move other metadata files into own folder" msgstr "" -#: .././mainwin.py:35783 +#: .././mainwin.py:36514 msgid "Delete all description files" msgstr "" -#: .././mainwin.py:35787 +#: .././mainwin.py:36518 msgid "Delete all metadata (JSON) files" msgstr "" -#: .././mainwin.py:35791 +#: .././mainwin.py:36522 msgid "Delete all annotation files" msgstr "" +#: .././mainwin.py:36529 +msgid "EXPERIMENTAL: convert '.unknown_video' file extensions to .mp4" +msgstr "" + #. (Signal connect appears below) -#: .././mainwin.py:35800 +#: .././mainwin.py:36540 msgid "Select none" msgstr "" @@ -4309,7 +4770,7 @@ msgstr "" msgid "Uploads" msgstr "" -#: .././config.py:439 .././config.py:14515 +#: .././config.py:439 .././config.py:14868 msgid "File size" msgstr "" @@ -4361,7 +4822,7 @@ msgstr "" msgid "Days" msgstr "" -#: .././config.py:540 .././config.py:18438 +#: .././config.py:540 .././config.py:18910 msgid "Hours" msgstr "" @@ -4402,7 +4863,7 @@ msgstr "" msgid "Apply changes without closing the window" msgstr "" -#: .././config.py:1215 .././config.py:13565 .././config.py:13931 +#: .././config.py:1215 .././config.py:13908 .././config.py:14274 msgid "Apply changes" msgstr "" @@ -4434,15 +4895,15 @@ msgstr "" msgid "Playlist URL" msgstr "" -#: .././config.py:2218 .././config.py:5366 +#: .././config.py:2218 .././config.py:5469 msgid "Video URL" msgstr "" -#: .././config.py:2241 .././config.py:7385 +#: .././config.py:2241 .././config.py:7553 msgid "_Options" msgstr "" -#: .././config.py:2255 .././config.py:4324 +#: .././config.py:2255 .././config.py:4373 msgid "Download options" msgstr "" @@ -4458,1670 +4919,1927 @@ msgstr "" msgid "Close this window" msgstr "" -#: .././config.py:2852 +#: .././config.py:2853 +msgid "" +"TRANSLATOR'S NOTE: Custom downloads window starts here. In the menu, click " +"Edit > System preferences... > Operations > Custom > Edit" +msgstr "" + +#: .././config.py:2858 msgid "Custom download settings" msgstr "" -#: .././config.py:3108 .././config.py:4664 .././config.py:10660 +#: .././config.py:3115 +msgid "TRANSLATOR'S NOTE: Custom downloads > Name" +msgstr "" + +#: .././config.py:3118 .././config.py:4717 .././config.py:10952 msgid "_Name" msgstr "" -#: .././config.py:3130 +#: .././config.py:3140 msgid "Usage" msgstr "" -#: .././config.py:3142 +#: .././config.py:3152 msgid "Applies everywhere except the Classic Mode tab" msgstr "" -#: .././config.py:3145 +#: .././config.py:3155 msgid "Applies to the Classic Mode tab" msgstr "" -#: .././config.py:3147 +#: .././config.py:3157 msgid "Applies when selected" msgstr "" -#: .././config.py:3173 .././config.py:3213 +#: .././config.py:3183 .././config.py:3223 msgid "HINT" msgstr "" -#: .././config.py:3173 +#: .././config.py:3183 msgid "Enable these settings first!" msgstr "" -#: .././config.py:3178 +#: .././config.py:3188 msgid "Download each video independently of its channel or playlist" msgstr "" -#: .././config.py:3186 +#: .././config.py:3196 msgid "" "Check channels/playlists/folders before each custom download (recommended)" msgstr "" -#: .././config.py:3214 +#: .././config.py:3224 msgid "" "The Check all and Download all buttons will not start a custom " "download!" msgstr "" -#: .././config.py:3221 +#: .././config.py:3231 msgid "Use the main menu, or right-click a video, channel, playlist or folder!" msgstr "" -#: .././config.py:3236 +#: .././config.py:3246 msgid "Import settings from the general custom download into this window" msgstr "" -#: .././config.py:3253 +#: .././config.py:3263 msgid "Completely reset all settings to their default values" msgstr "" +#: .././config.py:3277 +msgid "TRANSLATOR'S NOTE: Custom downloads > Subtitles" +msgstr "" + #. Add this tab... -#: .././config.py:3266 .././config.py:7363 +#: .././config.py:3280 .././config.py:7527 msgid "_Subtitles" msgstr "" -#: .././config.py:3279 +#: .././config.py:3293 msgid "Subtitles settings" msgstr "" -#: .././config.py:3285 +#: .././config.py:3299 msgid "" "Note: this tab downloads videos. To download subtitles, use the download " "options windows" msgstr "" -#: .././config.py:3292 +#: .././config.py:3306 msgid "Only download videos with available subtitles" msgstr "" -#: .././config.py:3302 +#: .././config.py:3316 msgid "" "During the custom download, don't add videos without subtitles to the " "database at all" msgstr "" -#: .././config.py:3314 +#: .././config.py:3328 msgid "" "Require subtitles in these languages (leave empty to download videos with " "any subtitles):" msgstr "" -#: .././config.py:3329 .././config.py:7459 +#: .././config.py:3343 .././config.py:7627 msgid "Add language" msgstr "" -#: .././config.py:3341 .././config.py:7477 +#: .././config.py:3355 .././config.py:7645 msgid "Remove language" msgstr "" -#: .././config.py:3379 .././config.py:12020 +#: .././config.py:3394 +msgid "TRANSLATOR'S NOTE: Custom downloads > Clips" +msgstr "" + +#: .././config.py:3397 .././config.py:12330 msgid "_Clips" msgstr "" -#: .././config.py:3383 +#: .././config.py:3401 msgid "Clip settings" msgstr "" -#: .././config.py:3389 +#: .././config.py:3407 msgid "Split videos into video clips using timestamps (requires FFmpeg)" msgstr "" -#: .././config.py:3407 +#: .././config.py:3426 +msgid "TRANSLATOR'S NOTE: Custom downloads > Slices" +msgstr "" + +#: .././config.py:3429 msgid "S_lices" msgstr "" -#: .././config.py:3412 +#: .././config.py:3434 msgid "Slice settings" msgstr "" -#: .././config.py:3418 +#: .././config.py:3440 msgid "Remove slices from the video using SponsorBlock data (requires FFmpeg)" msgstr "" -#: .././config.py:3444 .././config.py:18475 .././config.py:18812 +#: .././config.py:3466 .././config.py:18947 .././config.py:19292 msgid "Remove" msgstr "" -#: .././config.py:3473 +#: .././config.py:3495 msgid "Types of video slice to remove:" msgstr "" -#: .././config.py:3488 +#: .././config.py:3510 msgid "Toggle" msgstr "" -#: .././config.py:3498 +#: .././config.py:3520 msgid "Remove all" msgstr "" -#: .././config.py:3504 +#: .././config.py:3526 msgid "Remove none" msgstr "" -#: .././config.py:3548 +#: .././config.py:3571 +msgid "TRANSLATOR'S NOTE: Custom downloads > Delay" +msgstr "" + +#: .././config.py:3574 msgid "_Delays" msgstr "" -#: .././config.py:3553 +#: .././config.py:3579 msgid "Download delay settings" msgstr "" -#: .././config.py:3558 +#: .././config.py:3584 msgid "Apply a delay after each video/channel/playlist is downloaded" msgstr "" -#: .././config.py:3565 +#: .././config.py:3591 msgid "Maximum delay to apply (in minutes)" msgstr "" -#: .././config.py:3581 +#: .././config.py:3607 msgid "Minimum delay to apply (in minutes; randomises the actual delay)" msgstr "Minimum delay to apply (in minutes; randomizes the actual delay)" -#: .././config.py:3604 .././config.py:24731 +#: .././config.py:3631 +msgid "TRANSLATOR'S NOTE: Custom downloads > Mirrors" +msgstr "" + +#: .././config.py:3634 .././config.py:25412 msgid "_Mirrors" msgstr "" -#: .././config.py:3609 +#: .././config.py:3639 msgid "Mirror settings" msgstr "" -#: .././config.py:3615 +#: .././config.py:3645 msgid "Obtain a YouTube video from the original website" msgstr "" -#: .././config.py:3623 +#: .././config.py:3653 msgid "Obtain the video from HookTube rather than YouTube" msgstr "" -#: .././config.py:3633 +#: .././config.py:3663 msgid "Obtain the video from Invidious rather than YouTube" msgstr "" -#: .././config.py:3643 +#: .././config.py:3673 msgid "Obtain the video from this YouTube front-end:" msgstr "" -#: .././config.py:3659 .././config.py:24763 +#: .././config.py:3689 .././config.py:25444 msgid "Type the exact text that replaces www.youtube.com e.g." msgstr "" -#: .././config.py:3682 +#: .././config.py:3713 +msgid "TRANSLATOR'S NOTE: Custom downloads > Livestreams" +msgstr "" + +#: .././config.py:3716 msgid "L_ivestreams" msgstr "" -#: .././config.py:3686 +#: .././config.py:3720 msgid "Livestream settings" msgstr "" -#: .././config.py:3691 +#: .././config.py:3725 msgid "Don't download broadcasting livestreams" msgstr "" -#: .././config.py:3700 +#: .././config.py:3734 msgid "Don't download finished livestreams" msgstr "" -#: .././config.py:3709 +#: .././config.py:3743 msgid "Only download broadcasting livestreams" msgstr "" -#: .././config.py:3718 +#: .././config.py:3752 msgid "Only download finished livestreams" msgstr "" -#: .././config.py:3781 .././config.py:4163 .././config.py:8780 -#: .././config.py:9699 .././config.py:13075 .././config.py:13471 +#: .././config.py:3814 .././config.py:4201 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Custom downloads > Name" +msgstr "" + +#: .././config.py:3820 .././config.py:4207 .././config.py:9017 +#: .././config.py:9971 .././config.py:13408 .././config.py:13809 msgid "This procedure cannot be reversed. Are you sure you want to continue?" msgstr "" -#: .././config.py:4668 +#: .././config.py:4369 +msgid "" +"TRANSLATOR'S NOTE: Download options window starts here. In the menu, click " +"Edit > General download options..." +msgstr "" + +#: .././config.py:4714 +msgid "TRANSLATOR'S NOTE: Download options > Name" +msgstr "" + +#: .././config.py:4721 msgid "Name for these download options" msgstr "" -#: .././config.py:4687 +#: .././config.py:4740 msgid "Description" msgstr "" -#: .././config.py:4698 +#: .././config.py:4751 msgid "Download options applied to" msgstr "" -#: .././config.py:4709 +#: .././config.py:4762 msgid "All channels, playlists and folders" msgstr "" -#: .././config.py:4711 +#: .././config.py:4764 msgid "Downloads in the Classic Mode tab" msgstr "" -#: .././config.py:4715 +#: .././config.py:4768 msgid "These options are not applied to anything" msgstr "" -#: .././config.py:4721 +#: .././config.py:4774 msgid "" "Additional download options, e.g. --write-subs (do not use -o or --output)" msgstr "" -#: .././config.py:4730 +#: .././config.py:4783 msgid "Additional download options" msgstr "" -#: .././config.py:4738 +#: .././config.py:4791 msgid "Use ONLY these options (Tartube adds the output folder)" msgstr "" -#: .././config.py:4749 +#: .././config.py:4802 msgid "Use ONLY these options (Tartube adds the output directory)" msgstr "" -#: .././config.py:4760 +#: .././config.py:4813 msgid "If URLs are specified below, use only those URLs" msgstr "" -#: .././config.py:4800 +#: .././config.py:4853 msgid "Hide advanced download options" msgstr "" -#: .././config.py:4802 +#: .././config.py:4855 msgid "Show advanced download options" msgstr "" -#: .././config.py:4813 +#: .././config.py:4866 msgid "Import general download options into this window" msgstr "" -#: .././config.py:4829 +#: .././config.py:4882 msgid "Completely reset all download options to their default values" msgstr "" +#: .././config.py:4897 +msgid "TRANSLATOR'S NOTE: Download options > Downloads" +msgstr "" + #. Add this tab... -#: .././config.py:4846 .././config.py:4857 .././config.py:23142 +#: .././config.py:4903 .././config.py:4914 .././config.py:23787 msgid "_Downloads" msgstr "" -#: .././config.py:4905 +#: .././config.py:4944 +msgid "" +"TRANSLATOR'S NOTE: Download options > Downloads > General (to make hidden " +"tabs visible, click the 'Show advanced download options' button in the Name " +"tab)" +msgstr "" + +#: .././config.py:4968 msgid "Number of fragments of a DASH/HLS video to download concurrently" msgstr "" -#: .././config.py:4920 +#: .././config.py:4983 msgid "Minimum download rate (bytes/sec) below which throttling is assumed" msgstr "" -#: .././config.py:4954 +#: .././config.py:5010 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Videos" +msgstr "" + +#: .././config.py:5021 msgid "Video selection options" msgstr "" -#: .././config.py:4959 +#: .././config.py:5026 msgid "Stop download process when encountering a file in the archive" msgstr "" -#: .././config.py:4967 +#: .././config.py:5034 msgid "" "Stop download process when encountering a file that has been filtered out" msgstr "" -#: .././config.py:4976 +#: .././config.py:5043 msgid "Number of failures allowed before rest of playlist is skipped" msgstr "" -#: .././config.py:4989 +#: .././config.py:5056 msgid "Verbosity and simulation options" msgstr "" -#: .././config.py:4996 +#: .././config.py:5063 msgid "" "Ignore 'No video formats' error (useful for extracting metadata from " "unavailable videos)" msgstr "" -#: .././config.py:5006 +#: .././config.py:5073 msgid "Force download archive entries to be written as long as no errors occur" msgstr "" -#: .././config.py:5028 .././config.py:14584 +#: .././config.py:5095 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Live" +msgstr "" + +#: .././config.py:5099 .././config.py:14941 msgid "_Live" msgstr "" -#: .././config.py:5035 +#: .././config.py:5106 msgid "Livestream options" msgstr "" -#: .././config.py:5040 +#: .././config.py:5111 msgid "Download livestreams from start (experimental, YouTube only)" msgstr "" -#: .././config.py:5047 +#: .././config.py:5118 msgid "Minimum seconds to wait for scheduled streams" msgstr "" -#: .././config.py:5072 +#: .././config.py:5143 .././config.py:8760 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Playlists" +msgstr "" + +#: .././config.py:5147 msgid "_Playlists" msgstr "" -#: .././config.py:5092 +#: .././config.py:5167 .././config.py:8487 .././config.py:8515 +#: .././config.py:8856 .././config.py:8911 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Limits" +msgstr "" + +#: .././config.py:5171 msgid "L_imits" msgstr "" -#: .././config.py:5115 +#: .././config.py:5194 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Merge" +msgstr "" + +#: .././config.py:5198 msgid "_Merge" msgstr "" -#: .././config.py:5121 +#: .././config.py:5204 msgid "Video/audio merge options" msgstr "" -#: .././config.py:5127 +#: .././config.py:5210 msgid "Allow multiple video streams to be merged into a single file" msgstr "" -#: .././config.py:5134 +#: .././config.py:5217 msgid "Allow multiple audio streams to be merged into a single file" msgstr "" -#: .././config.py:5154 +#: .././config.py:5237 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Extractor" +msgstr "" + +#: .././config.py:5241 msgid "_Extractor" msgstr "" -#: .././config.py:5161 +#: .././config.py:5248 msgid "Extractor options" msgstr "" -#: .././config.py:5183 +#: .././config.py:5270 msgid "Do not process dynamic DASH manifests" msgstr "" -#: .././config.py:5191 +#: .././config.py:5278 msgid "" "Split HLS playlists to different formats at discontinuities such as ad breaks" msgstr "" -#: .././config.py:5201 +#: .././config.py:5288 msgid "Extractor arguments" msgstr "" -#: .././config.py:5206 +#: .././config.py:5293 msgid "One argument per line, e.g." msgstr "" -#: .././config.py:5231 +#: .././config.py:5318 .././config.py:8645 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > Filtering" +msgstr "" + +#: .././config.py:5322 msgid "_Filtering" msgstr "" -#: .././config.py:5250 +#: .././config.py:5342 .././config.py:8597 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > External" +msgstr "" + +#: .././config.py:5345 msgid "E_xternal" msgstr "" +#: .././config.py:5358 +msgid "TRANSLATOR'S NOTE: Download options > Files" +msgstr "" + #. Add this tab... -#: .././config.py:5263 .././config.py:19948 +#: .././config.py:5362 .././config.py:20457 msgid "_Files" msgstr "" -#: .././config.py:5294 +#: .././config.py:5393 +msgid "TRANSLATOR'S NOTE: Download options > Files > File names" +msgstr "" + +#: .././config.py:5397 msgid "File _names" msgstr "" -#: .././config.py:5301 +#: .././config.py:5404 msgid "File name options" msgstr "" -#: .././config.py:5306 +#: .././config.py:5409 msgid "Format for video file names" msgstr "" -#: .././config.py:5333 +#: .././config.py:5436 msgid "File output template" msgstr "" -#: .././config.py:5355 +#: .././config.py:5458 msgid "Add to template:" msgstr "" -#: .././config.py:5360 .././config.py:14152 +#: .././config.py:5463 .././config.py:14501 msgid "Video properties" msgstr "" -#: .././config.py:5362 .././config.py:14485 +#: .././config.py:5465 .././config.py:14838 msgid "Video ID" msgstr "" -#: .././config.py:5363 +#: .././config.py:5466 msgid "Video title" msgstr "" -#: .././config.py:5364 +#: .././config.py:5467 msgid "Alternative video ID" msgstr "" -#: .././config.py:5365 +#: .././config.py:5468 msgid "Secondary video title" msgstr "" -#: .././config.py:5367 +#: .././config.py:5470 msgid "Video filename extension" msgstr "" -#: .././config.py:5368 +#: .././config.py:5471 msgid "Video licence" msgstr "Video license" -#: .././config.py:5369 +#: .././config.py:5472 msgid "Age restriction (years)" msgstr "" -#: .././config.py:5371 +#: .././config.py:5474 msgid "Autonumber videos" msgstr "" -#: .././config.py:5373 +#: .././config.py:5476 msgid "Autonumber videos (playlists)" msgstr "" -#: .././config.py:5375 +#: .././config.py:5478 msgid "Creator/uploader" msgstr "" -#: .././config.py:5377 +#: .././config.py:5480 msgid "Full name of video uploader" msgstr "" -#: .././config.py:5378 +#: .././config.py:5481 msgid "Uploader ID" msgstr "" -#: .././config.py:5379 +#: .././config.py:5482 msgid "Nickname/ID of video uploader" msgstr "" -#: .././config.py:5380 +#: .././config.py:5483 msgid "Channel name" msgstr "" -#: .././config.py:5381 +#: .././config.py:5484 msgid "Channel ID" msgstr "" -#: .././config.py:5382 +#: .././config.py:5485 msgid "Playlist name" msgstr "" -#: .././config.py:5383 .././config.py:16811 +#: .././config.py:5486 .././config.py:17219 msgid "Playlist ID" msgstr "" -#: .././config.py:5384 +#: .././config.py:5487 msgid "Video index in playlist" msgstr "" -#: .././config.py:5386 .././config.py:5491 +#: .././config.py:5489 .././config.py:5594 msgid "Date/time/location" msgstr "" -#: .././config.py:5388 +#: .././config.py:5491 msgid "Release date (YYYYMMDD)" msgstr "" -#: .././config.py:5390 +#: .././config.py:5493 msgid "Release date (custom format)" msgstr "" -#: .././config.py:5391 +#: .././config.py:5494 msgid "Release time (UNIX timestamp)" msgstr "" -#: .././config.py:5392 +#: .././config.py:5495 msgid "Release time (custom format)" msgstr "" -#: .././config.py:5393 +#: .././config.py:5496 msgid "Upload date (YYYYMMDD)" msgstr "" -#: .././config.py:5395 +#: .././config.py:5498 msgid "Upload date (custom format)" msgstr "" -#: .././config.py:5396 +#: .././config.py:5499 msgid "Video length (seconds)" msgstr "" -#: .././config.py:5397 +#: .././config.py:5500 msgid "Video length (custom format)" msgstr "" -#: .././config.py:5398 +#: .././config.py:5501 msgid "Filming location" msgstr "" -#: .././config.py:5400 .././config.py:5447 +#: .././config.py:5503 .././config.py:5550 msgid "Time format" msgstr "" -#: .././config.py:5402 .././config.py:5404 +#: .././config.py:5505 .././config.py:5507 msgid "Video format" msgstr "" -#: .././config.py:5405 +#: .././config.py:5508 msgid "Video format code" msgstr "" -#: .././config.py:5406 +#: .././config.py:5509 msgid "Video width" msgstr "" -#: .././config.py:5407 +#: .././config.py:5510 msgid "Video height" msgstr "" -#: .././config.py:5409 +#: .././config.py:5512 msgid "Video frame rate" msgstr "" -#: .././config.py:5410 +#: .././config.py:5513 msgid "Average video/audio bitrate (KiB/s)" msgstr "" -#: .././config.py:5411 +#: .././config.py:5514 msgid "Average video bitrate (KiB/s)" msgstr "" -#: .././config.py:5412 +#: .././config.py:5515 msgid "Average audio bitrate (KiB/s)" msgstr "" -#: .././config.py:5414 +#: .././config.py:5517 msgid "Ratings/comments" msgstr "" -#: .././config.py:5416 +#: .././config.py:5519 msgid "Number of views" msgstr "" -#: .././config.py:5417 +#: .././config.py:5520 msgid "Number of positive ratings" msgstr "" -#: .././config.py:5418 +#: .././config.py:5521 msgid "Number of negative ratings" msgstr "" -#: .././config.py:5419 +#: .././config.py:5522 msgid "Average rating" msgstr "" -#: .././config.py:5420 +#: .././config.py:5523 msgid "Number of reposts" msgstr "" -#: .././config.py:5421 +#: .././config.py:5524 msgid "Number of comments" msgstr "" -#: .././config.py:5477 .././config.py:5616 .././config.py:5759 -#: .././config.py:18469 .././config.py:18802 .././config.py:22522 -#: .././config.py:23563 .././config.py:25643 .././config.py:25916 +#: .././config.py:5580 .././config.py:5724 .././config.py:5871 +#: .././config.py:18941 .././config.py:19282 .././config.py:23147 +#: .././config.py:24216 .././config.py:26366 .././config.py:26647 msgid "Add" msgstr "" -#: .././config.py:5540 +#: .././config.py:5643 +msgid "TRANSLATOR'S NOTE: Download options > Files > Override" +msgstr "" + +#: .././config.py:5648 msgid "_Override" msgstr "" -#: .././config.py:5547 +#: .././config.py:5655 msgid "List of output filename templates" msgstr "" -#: .././config.py:5554 +#: .././config.py:5662 msgid "Overrides the output template in the 'File names' tab" msgstr "" -#: .././config.py:5573 +#: .././config.py:5681 msgid "Template" msgstr "" -#: .././config.py:5592 .././config.py:5723 +#: .././config.py:5700 .././config.py:5835 msgid "Output type" msgstr "" -#: .././config.py:5605 +#: .././config.py:5713 msgid "Output template" msgstr "" -#: .././config.py:5627 .././config.py:5770 .././config.py:22558 -#: .././config.py:23621 .././config.py:25701 .././config.py:25974 +#: .././config.py:5735 .././config.py:5882 .././config.py:23183 +#: .././config.py:24274 .././config.py:26424 .././config.py:26705 msgid "Delete" msgstr "" -#: .././config.py:5636 .././config.py:5779 .././config.py:21097 -#: .././config.py:23637 .././config.py:25719 .././config.py:25990 +#: .././config.py:5744 .././config.py:5891 .././config.py:21638 +#: .././config.py:24290 .././config.py:26442 .././config.py:26721 msgid "Refresh list" msgstr "" -#: .././config.py:5679 +#: .././config.py:5787 +msgid "TRANSLATOR'S NOTE: Download options > Files > Paths" +msgstr "" + +#: .././config.py:5791 msgid "_Paths" msgstr "" -#: .././config.py:5686 +#: .././config.py:5798 msgid "List of output paths" msgstr "" -#: .././config.py:5704 +#: .././config.py:5816 msgid "Path" msgstr "" -#: .././config.py:5738 +#: .././config.py:5850 msgid "Output path" msgstr "" -#: .././config.py:5822 +#: .././config.py:5934 +msgid "TRANSLATOR'S NOTE: Download options > Files > Filesystem" +msgstr "" + +#: .././config.py:5938 msgid "_Filesystem" msgstr "" -#: .././config.py:5829 .././config.py:5934 +#: .././config.py:5945 .././config.py:6050 msgid "Filesystem options" msgstr "" -#: .././config.py:5834 +#: .././config.py:5950 msgid "Restrict filenames to ASCII characters" msgstr "" -#: .././config.py:5843 +#: .././config.py:5959 msgid "Don't use the server's file modification time" msgstr "" -#: .././config.py:5850 +#: .././config.py:5966 msgid "Download all videos into this folder" msgstr "" -#: .././config.py:5939 +#: .././config.py:6055 msgid "Force filenames to be MS Windows compatible" msgstr "" -#: .././config.py:5947 +#: .././config.py:6063 msgid "Limit filename length (excluding extension) to this many characters" msgstr "" -#: .././config.py:5962 +#: .././config.py:6078 msgid "WARNING: The filename length includes the length of the folder name!" msgstr "" -#: .././config.py:5967 +#: .././config.py:6083 msgid "WARNING: The filename length includes the length of the directory nam!e" msgstr "" -#: .././config.py:5979 +#: .././config.py:6095 msgid "Do not overwrite any files" msgstr "" -#: .././config.py:5987 +#: .././config.py:6103 msgid "Overwrite all video and metadata files (includes '--no-continue')" msgstr "" -#: .././config.py:5996 +#: .././config.py:6112 msgid "Write playlist metadata in addition to video metadata" msgstr "" -#: .././config.py:6004 +#: .././config.py:6120 msgid "Write all fields, including private fields, to the .info.json file" msgstr "" -#: .././config.py:6026 +#: .././config.py:6142 +msgid "TRANSLATOR'S NOTE: Download options > Files > Cookies" +msgstr "" + +#: .././config.py:6146 msgid "_Cookies" msgstr "" -#: .././config.py:6033 +#: .././config.py:6153 msgid "Cookies options" msgstr "" -#: .././config.py:6038 +#: .././config.py:6158 msgid "Path to the downloader's cookie jar file" msgstr "" -#: .././config.py:6093 +#: .././config.py:6213 msgid "Cookie options" msgstr "" -#: .././config.py:6098 +#: .././config.py:6218 msgid "Do not read/dump cookies from/to the cookiejar file" msgstr "" -#: .././config.py:6105 +#: .././config.py:6225 msgid "Do not load cookies from browser" msgstr "" -#: .././config.py:6116 +#: .././config.py:6236 msgid "Retrieve cookies from browser" msgstr "" -#: .././config.py:6134 +#: .././config.py:6254 msgid "Browser" msgstr "" -#: .././config.py:6152 +#: .././config.py:6272 msgid "Chromium keyring" msgstr "" -#: .././config.py:6171 +#: .././config.py:6291 msgid "Browser profile name (optional)" msgstr "" -#: .././config.py:6184 +#: .././config.py:6304 msgid "Browser profile path (optional)" msgstr "" -#: .././config.py:6376 +#: .././config.py:6496 +msgid "TRANSLATOR'S NOTE: Download options > Files > Shortcuts" +msgstr "" + +#: .././config.py:6500 msgid "_Shortcuts" msgstr "" -#: .././config.py:6382 +#: .././config.py:6506 msgid "Internet shortcut options" msgstr "" -#: .././config.py:6388 +#: .././config.py:6512 msgid "Write an internet shortcut file (.url, .webloc or .desktop)" msgstr "" -#: .././config.py:6395 +#: .././config.py:6519 msgid "Write a Windows internet shortcut file (.url)" msgstr "" -#: .././config.py:6402 +#: .././config.py:6526 msgid "Write a macOS inernet shortcut file (.webloc)" msgstr "" -#: .././config.py:6409 +#: .././config.py:6533 msgid "Write a Linux internet shortcut file (.desktop)" msgstr "" -#: .././config.py:6429 +#: .././config.py:6553 +msgid "TRANSLATOR'S NOTE: Download options > Files > Write/move" +msgstr "" + +#: .././config.py:6557 msgid "_Write/move" msgstr "" -#: .././config.py:6436 +#: .././config.py:6564 msgid "File write options" msgstr "" -#: .././config.py:6441 +#: .././config.py:6569 msgid "Write video's description to a .description file" msgstr "" -#: .././config.py:6448 +#: .././config.py:6576 msgid "Write video's metadata to an .info.json file" msgstr "" -#: .././config.py:6456 +#: .././config.py:6584 msgid "Write video's annotations to an .annotations.xml file" msgstr "" -#: .././config.py:6465 +#: .././config.py:6593 msgid "" "Annotations are not downloaded when checking videos/channels/playlists/" "folders" msgstr "" -#: .././config.py:6472 +#: .././config.py:6600 msgid "Write the video's thumbnail to the same folder" msgstr "" -#: .././config.py:6480 +#: .././config.py:6608 msgid "File move options" msgstr "" -#: .././config.py:6485 +#: .././config.py:6613 msgid "Move video's description file into a sub-folder" msgstr "" -#: .././config.py:6491 +#: .././config.py:6619 msgid "Write video's metadata file into a sub-folder" msgstr "" -#: .././config.py:6497 +#: .././config.py:6625 msgid "Write video's annotations file into a sub-folder" msgstr "" -#: .././config.py:6503 +#: .././config.py:6631 msgid "Write the video's thumbnail into a sub-folder" msgstr "" -#: .././config.py:6522 +#: .././config.py:6650 +msgid "TRANSLATOR'S NOTE: Download options > Files > Keep" +msgstr "" + +#: .././config.py:6654 msgid "_Keep" msgstr "" -#: .././config.py:6528 +#: .././config.py:6660 msgid "Options during real (not simulated) downloads" msgstr "" -#: .././config.py:6534 .././config.py:6565 +#: .././config.py:6666 .././config.py:6697 msgid "Keep the description file after the download has finished" msgstr "" -#: .././config.py:6540 .././config.py:6571 +#: .././config.py:6672 .././config.py:6703 msgid "Keep the metadata file after the download has finished" msgstr "" -#: .././config.py:6546 .././config.py:6577 +#: .././config.py:6678 .././config.py:6709 msgid "Keep the annotations file after the download has finished" msgstr "" -#: .././config.py:6552 .././config.py:6583 +#: .././config.py:6684 .././config.py:6715 msgid "Keep the thumbnail file after the download has finished" msgstr "" -#: .././config.py:6559 +#: .././config.py:6691 msgid "Options during simulated (not real) downloads" msgstr "" +#: .././config.py:6729 +msgid "TRANSLATOR'S NOTE: Download options > Formats" +msgstr "" + #. Add this tab... -#: .././config.py:6597 +#: .././config.py:6733 msgid "F_ormats" msgstr "" -#: .././config.py:6634 +#: .././config.py:6765 +msgid "TRANSLATOR'S NOTE: Download options > Formats > Preferred" +msgstr "" + +#: .././config.py:6774 msgid "Preferred format options" msgstr "" -#: .././config.py:6681 +#: .././config.py:6821 msgid "If you want a specific format, install FFmpeg and use the Convert tab!" msgstr "" -#: .././config.py:6688 +#: .././config.py:6828 msgid "Recognised video/audio formats" msgstr "Recognized video/audio formats" -#: .././config.py:6703 +#: .././config.py:6843 msgid "Add format" msgstr "" -#: .././config.py:6716 +#: .././config.py:6856 msgid "Type extractor code directly" msgstr "" -#: .././config.py:6721 +#: .././config.py:6861 msgid "List of preferred formats" msgstr "" -#: .././config.py:6734 +#: .././config.py:6874 msgid "Remove format" msgstr "" -#: .././config.py:6801 +#: .././config.py:6941 msgid "If a merge is required after post-processing, output to this format:" msgstr "" -#: .././config.py:6834 +#: .././config.py:6974 msgid "_Preferred" msgstr "" +#: .././config.py:6994 +msgid "TRANSLATOR'S NOTE: Download options > Formats > Advanced" +msgstr "" + #. Add this tab... -#: .././config.py:6854 .././config.py:7598 +#: .././config.py:6998 .././config.py:7774 msgid "_Advanced" msgstr "" -#: .././config.py:6862 +#: .././config.py:7006 msgid "Multiple format options" msgstr "" -#: .././config.py:6871 +#: .././config.py:7015 msgid "" "Multiple formats will not be downloaded, because an archive file will be " "created" msgstr "" -#: .././config.py:6874 +#: .././config.py:7018 msgid "The archive file can be disabled in the System Preferences window" msgstr "" -#: .././config.py:6883 +#: .././config.py:7027 msgid "" "For each video, download the first available format from the preferred list" msgstr "" -#: .././config.py:6897 +#: .././config.py:7041 msgid "" "From the preferred list, download the first format that's available for all " "videos" msgstr "" -#: .././config.py:6911 +#: .././config.py:7055 msgid "For each video, download all available formats from the preferred list" msgstr "" -#: .././config.py:6924 +#: .././config.py:7068 msgid "Download all available formats for all videos" msgstr "" -#: .././config.py:6957 .././config.py:6977 +#: .././config.py:7101 .././config.py:7121 msgid "Other format options" msgstr "" -#: .././config.py:6962 +#: .././config.py:7106 msgid "Prefer free video formats, unless one is specified above" msgstr "" -#: .././config.py:6969 +#: .././config.py:7113 msgid "Do not download DASH-related data for YouTube videos" msgstr "" -#: .././config.py:6984 +#: .././config.py:7128 msgid "Check formats selected are actually downloadable (Experimental)" msgstr "" -#: .././config.py:6994 +#: .././config.py:7138 msgid "" "Allow unplayable formats to be listed and downloaded (also disables post-" "processing)" msgstr "" -#: .././config.py:7010 +#: .././config.py:7155 +msgid "TRANSLATOR'S NOTE: Download options > Convert" +msgstr "" + +#: .././config.py:7158 msgid "_Convert" msgstr "" -#: .././config.py:7015 +#: .././config.py:7163 msgid "Convert to video" msgstr "" -#: .././config.py:7020 +#: .././config.py:7168 msgid "Convert downloaded video to another format" msgstr "" -#: .././config.py:7034 +#: .././config.py:7182 msgid "Convert to audio" msgstr "" -#: .././config.py:7040 +#: .././config.py:7188 msgid "" "Download each video, extract the sound, and then discard the original video" msgstr "" -#: .././config.py:7045 +#: .././config.py:7193 msgid "(requires that FFmpeg or AVConv is installed on your system)" msgstr "" -#: .././config.py:7056 +#: .././config.py:7204 msgid "Use this audio format:" msgstr "" -#: .././config.py:7072 +#: .././config.py:7220 msgid "Use this audio quality:" msgstr "" -#: .././config.py:7078 +#: .././config.py:7226 msgid "High" msgstr "" -#: .././config.py:7080 +#: .././config.py:7228 msgid "Low" msgstr "" +#: .././config.py:7248 +msgid "TRANSLATOR'S NOTE: Download options > Post-processing" +msgstr "" + #. Add this tab... -#: .././config.py:7100 +#: .././config.py:7252 msgid "_Post-processing" msgstr "" +#: .././config.py:7270 +msgid "TRANSLATOR'S NOTE: Download options > Post-processing > General" +msgstr "" + #. Add this tab... -#: .././config.py:7118 .././config.py:14309 .././config.py:16651 -#: .././config.py:17637 .././config.py:18257 .././config.py:19678 +#: .././config.py:7274 .././config.py:14662 .././config.py:17054 +#: .././config.py:18081 .././config.py:18725 .././config.py:20175 msgid "_General" msgstr "" -#: .././config.py:7126 .././config.py:7291 .././config.py:7566 +#: .././config.py:7282 .././config.py:7451 .././config.py:7738 msgid "Post-processing options" msgstr "" -#: .././config.py:7132 +#: .././config.py:7288 msgid "Post-process video files to convert them to audio-only files" msgstr "" -#: .././config.py:7140 +#: .././config.py:7296 msgid "Prefer AVConv over FFmpeg" msgstr "" -#: .././config.py:7149 +#: .././config.py:7305 msgid "Prefer FFmpeg over AVConv (default)" msgstr "" -#: .././config.py:7158 +#: .././config.py:7314 msgid "Audio format of the post-processed file" msgstr "" -#: .././config.py:7172 +#: .././config.py:7328 msgid "Audio quality of the post-processed file" msgstr "" -#: .././config.py:7177 +#: .././config.py:7333 msgid "High VBR" msgstr "" -#: .././config.py:7178 +#: .././config.py:7334 msgid "Medium VBR" msgstr "" -#: .././config.py:7179 +#: .././config.py:7335 msgid "Low VBR" msgstr "" -#: .././config.py:7180 +#: .././config.py:7336 msgid "320 kb/s" msgstr "" -#: .././config.py:7181 +#: .././config.py:7337 msgid "256 kb/s" msgstr "" -#: .././config.py:7182 +#: .././config.py:7338 msgid "192 kb/s" msgstr "" -#: .././config.py:7183 +#: .././config.py:7339 msgid "128 kb/s" msgstr "" -#: .././config.py:7184 +#: .././config.py:7340 msgid "96 kb/s" msgstr "" -#: .././config.py:7195 +#: .././config.py:7351 msgid "Encode video to another format, if necessary" msgstr "" -#: .././config.py:7208 +#: .././config.py:7364 msgid "Arguments to pass to post-processor" msgstr "" -#: .././config.py:7219 +#: .././config.py:7375 msgid "Keep original file after processing it" msgstr "" -#: .././config.py:7227 +#: .././config.py:7383 msgid "Merge subtitles file with video (.mp4 only)" msgstr "" -#: .././config.py:7239 +#: .././config.py:7395 msgid "Embed thumbnail in audio file as cover art" msgstr "" -#: .././config.py:7246 +#: .././config.py:7402 msgid "Write metadata to the video file" msgstr "" -#: .././config.py:7253 +#: .././config.py:7409 msgid "Automatically correct known faults of the file" msgstr "" -#: .././config.py:7259 +#: .././config.py:7415 msgid "Do nothing" msgstr "" -#: .././config.py:7260 +#: .././config.py:7416 msgid "Warn, but do nothing" msgstr "" -#: .././config.py:7261 +#: .././config.py:7417 msgid "Fix if possible, otherwise warn" msgstr "" -#: .././config.py:7284 +#: .././config.py:7440 +msgid "TRANSLATOR'S NOTE: Download options > Post-processing > yt-dlp" +msgstr "" + +#: .././config.py:7444 msgid "_yt-dlp" msgstr "" -#: .././config.py:7296 +#: .././config.py:7456 msgid "Remux video into another container if necessary" msgstr "" -#: .././config.py:7315 +#: .././config.py:7475 msgid "Embed metadata including chapter markers (if supported by format)" msgstr "" -#: .././config.py:7324 +#: .././config.py:7484 msgid "Convert thumbnails to another format" msgstr "" -#: .././config.py:7339 +#: .././config.py:7499 msgid "Split video into multiple files based on internal chapters" msgstr "" -#: .././config.py:7348 +#: .././config.py:7508 msgid "N.B. The 'chapter' prefix can be used in the 'Output' and 'Paths' tabs" msgstr "" -#: .././config.py:7389 +#: .././config.py:7523 +msgid "TRANSLATOR'S NOTE: Download options > Subtitles" +msgstr "" + +#: .././config.py:7550 +msgid "TRANSLATOR'S NOTE: Download options > Subtitles > Options" +msgstr "" + +#: .././config.py:7557 msgid "Subtitles options" msgstr "" -#: .././config.py:7395 +#: .././config.py:7563 msgid "Don't download the subtitles file" msgstr "" -#: .././config.py:7406 +#: .././config.py:7574 msgid "Download the automatic subtitles file (YouTube only)" msgstr "" -#: .././config.py:7419 +#: .././config.py:7587 msgid "Download all available subtitle files" msgstr "" -#: .././config.py:7432 +#: .././config.py:7600 msgid "Download subtitle file for these languages:" msgstr "" -#: .././config.py:7540 +#: .././config.py:7708 +msgid "TRANSLATOR'S NOTE: Download options > Subtitles > More options" +msgstr "" + +#: .././config.py:7712 msgid "_More options" msgstr "" -#: .././config.py:7546 +#: .././config.py:7718 msgid "Subtitle format options" msgstr "" -#: .././config.py:7552 +#: .././config.py:7724 msgid "Preferred subtitle format(s), e.g. 'srt', 'vtt', 'srt/ass/vtt/lrc/best'" msgstr "" -#: .././config.py:7571 +#: .././config.py:7743 msgid "Applies to .mp4 videos only; requires FFmpeg/AVConv" msgstr "" -#: .././config.py:7578 +#: .././config.py:7750 msgid "During post-processing, merge subtitles file with video" msgstr "" -#: .././config.py:7625 +#: .././config.py:7770 +msgid "TRANSLATOR'S NOTE: Download options > Advanced" +msgstr "" + +#: .././config.py:7801 +msgid "TRANSLATOR'S NOTE: Download options > Advanced > Configurations" +msgstr "" + +#: .././config.py:7805 msgid "_Configurations" msgstr "" -#: .././config.py:7632 +#: .././config.py:7812 msgid "Configuration file options" msgstr "" -#: .././config.py:7637 +#: .././config.py:7817 msgid "Use the downloader's configuration file" msgstr "" -#: .././config.py:7648 .././config.py:7834 +#: .././config.py:7828 .././config.py:8022 msgid "File loaded from:" msgstr "" -#: .././config.py:7659 .././config.py:7845 +#: .././config.py:7839 .././config.py:8033 msgid "Save file" msgstr "" -#: .././config.py:7705 +#: .././config.py:7885 +msgid "TRANSLATOR'S NOTE: Download options > Advanced > Authentication" +msgstr "" + +#: .././config.py:7889 msgid "_Authentication" msgstr "" -#: .././config.py:7712 +#: .././config.py:7896 msgid "Authentication options" msgstr "" -#: .././config.py:7717 +#: .././config.py:7901 msgid "Username with which to log in" msgstr "" -#: .././config.py:7728 +#: .././config.py:7912 msgid "Password with which to log in" msgstr "" -#: .././config.py:7739 +#: .././config.py:7923 msgid "Password required for this URL" msgstr "" -#: .././config.py:7750 +#: .././config.py:7934 msgid "Two-factor authentication code" msgstr "" -#: .././config.py:7762 +#: .././config.py:7946 msgid "Adobe Pass multiple-system operator (TV provider) identifier" msgstr "" -#: .././config.py:7775 +#: .././config.py:7959 msgid " Adobe Pass multiple-system operator account login" msgstr "" -#: .././config.py:7786 +#: .././config.py:7970 msgid "Adobe Pass multiple-system operator account password" msgstr "" -#: .././config.py:7810 +#: .././config.py:7994 +msgid "TRANSLATOR'S NOTE: Download options > Advanced > .netrc" +msgstr "" + +#: .././config.py:7998 msgid "._netrc" msgstr "" -#: .././config.py:7817 +#: .././config.py:8005 msgid ".netrc options" msgstr "" -#: .././config.py:7822 +#: .././config.py:8010 msgid "Use .netrc authentication data" msgstr "" -#: .././config.py:7894 +#: .././config.py:8083 +msgid "TRANSLATOR'S NOTE: Download options > Advanced > Network" +msgstr "" + +#: .././config.py:8086 msgid "N_etwork" msgstr "" -#: .././config.py:7899 +#: .././config.py:8091 msgid "Network options" msgstr "" -#: .././config.py:7905 +#: .././config.py:8097 msgid "" "Use this HTTP/HTTPS proxy (if set, overrides the proxies in Tartube's " "preferences window" msgstr "" -#: .././config.py:7918 +#: .././config.py:8110 msgid "Time to wait for socket connection, before giving up" msgstr "" -#: .././config.py:7929 +#: .././config.py:8121 msgid "Bind with this Client-side IP address" msgstr "" -#: .././config.py:7940 +#: .././config.py:8132 msgid "Connect using IPv4 only" msgstr "" -#: .././config.py:7947 +#: .././config.py:8139 msgid "Connect using IPv6 only" msgstr "" -#: .././config.py:7967 +#: .././config.py:8159 +msgid "TRANSLATOR'S NOTE: Download options > Advanced > Geo-restriction" +msgstr "" + +#: .././config.py:8163 msgid "_Geo-restriction" msgstr "" -#: .././config.py:7974 +#: .././config.py:8170 msgid "Geo-restriction options" msgstr "" -#: .././config.py:7979 +#: .././config.py:8175 msgid "Use this proxy to verify IP address" msgstr "" -#: .././config.py:7990 +#: .././config.py:8186 msgid "Bypass using fake X-Forwarded-For HTTP header" msgstr "" -#: .././config.py:7997 +#: .././config.py:8193 msgid "Don't bypass using fake HTTP header" msgstr "" -#: .././config.py:8004 +#: .././config.py:8200 msgid "Bypass geo-restriction with ISO 3166-2 country code" msgstr "" -#: .././config.py:8015 +#: .././config.py:8211 msgid "Bypass with explicit IP block in CIDR notation" msgstr "" -#: .././config.py:8043 .././config.py:8133 +#: .././config.py:8235 +msgid "TRANSLATOR'S NOTE: Download options > Advanced > Workaround" +msgstr "" + +#: .././config.py:8243 .././config.py:8333 msgid "Workaround options" msgstr "" -#: .././config.py:8048 +#: .././config.py:8248 msgid "Custom user agent" msgstr "" -#: .././config.py:8059 +#: .././config.py:8259 msgid "Custom referer if video access has restricted domain" msgstr "" -#: .././config.py:8070 +#: .././config.py:8270 msgid "Minimum seconds to sleep before each download" msgstr "" -#: .././config.py:8083 +#: .././config.py:8283 msgid "Maximum seconds to sleep before each download" msgstr "" -#: .././config.py:8104 +#: .././config.py:8304 msgid "Force this encoding (experimental)" msgstr "" -#: .././config.py:8115 +#: .././config.py:8315 msgid "Suppress HTTPS certificate validation" msgstr "" -#: .././config.py:8123 +#: .././config.py:8323 msgid "" "Use an unencrypted connection to retrieve information about videos (YouTube " "only)" msgstr "" -#: .././config.py:8139 +#: .././config.py:8339 msgid "Number of seconds to sleep between requests during data extraction" msgstr "" -#: .././config.py:8154 +#: .././config.py:8354 msgid "Number of seconds to sleep before each download (or minimum time)" msgstr "" -#: .././config.py:8288 +#: .././config.py:8492 msgid "Video age options" msgstr "" -#: .././config.py:8293 +#: .././config.py:8497 msgid "Download videos suitable for this age" msgstr "" -#: .././config.py:8314 +#: .././config.py:8522 msgid "Video date options" msgstr "" -#: .././config.py:8319 +#: .././config.py:8527 msgid "Only videos uploaded on this date" msgstr "" -#: .././config.py:8340 +#: .././config.py:8548 msgid "Only videos uploaded before this date" msgstr "" -#: .././config.py:8361 +#: .././config.py:8569 msgid "Only videos uploaded after this date" msgstr "" -#: .././config.py:8392 +#: .././config.py:8604 msgid "External downloader options" msgstr "" -#: .././config.py:8397 +#: .././config.py:8609 msgid "Use this external downloader" msgstr "" -#: .././config.py:8415 +#: .././config.py:8627 msgid "Arguments to pass to external downloader" msgstr "" -#: .././config.py:8436 +#: .././config.py:8652 msgid "Video filtering options" msgstr "" -#: .././config.py:8441 +#: .././config.py:8657 msgid "Download only matching titles (regex or caseless substring)" msgstr "" -#: .././config.py:8453 +#: .././config.py:8669 msgid "Don't download only matching titles (regex or caseless substring)" msgstr "" -#: .././config.py:8466 +#: .././config.py:8682 msgid "Generic video filter, for example:" msgstr "" -#: .././config.py:8486 +#: .././config.py:8700 +msgid "TRANSLATOR'S NOTE: Download options > Downloads > General" +msgstr "" + +#: .././config.py:8706 msgid "Prefer HLS (HTTP Live Streaming)" msgstr "" -#: .././config.py:8493 +#: .././config.py:8713 msgid "Prefer FFMpeg over native HLS downloader" msgstr "" -#: .././config.py:8500 +#: .././config.py:8720 msgid "Include advertisements (experimental feature)" msgstr "" -#: .././config.py:8507 +#: .././config.py:8727 msgid "Ignore errors and continue the download operation" msgstr "" -#: .././config.py:8514 +#: .././config.py:8734 msgid "Abort video download if fragments are unavailable" msgstr "" -#: .././config.py:8521 +#: .././config.py:8741 msgid "Number of retries" msgstr "" -#: .././config.py:8543 +#: .././config.py:8767 msgid "Playlist options" msgstr "" -#: .././config.py:8549 +#: .././config.py:8773 msgid "" "Channels and playlists are handled in the same way, so these options can be " "used with both" msgstr "" -#: .././config.py:8556 +#: .././config.py:8780 msgid "Start downloading playlist from index" msgstr "" -#: .././config.py:8568 +#: .././config.py:8792 msgid "Stop downloading playlist at index" msgstr "" -#: .././config.py:8580 +#: .././config.py:8804 msgid "Download playlist range, in form START:STOP:STEP" msgstr "" -#: .././config.py:8592 +#: .././config.py:8816 msgid "Abort operation after downloading this many videos" msgstr "" -#: .././config.py:8604 +#: .././config.py:8828 msgid "Abort downloading the playlist if an error occurs" msgstr "" -#: .././config.py:8611 +#: .././config.py:8835 msgid "Download playlist in reverse order" msgstr "" -#: .././config.py:8618 +#: .././config.py:8842 msgid "Download playlist in random order" msgstr "" -#: .././config.py:8635 +#: .././config.py:8863 msgid "Video size limit options" msgstr "" -#: .././config.py:8640 +#: .././config.py:8868 msgid "Minimum file size for video downloads" msgstr "" -#: .././config.py:8658 +#: .././config.py:8886 msgid "Maximum file size for video downloads" msgstr "" -#: .././config.py:8686 +#: .././config.py:8918 msgid "Video views options" msgstr "" -#: .././config.py:8691 +#: .././config.py:8923 msgid "Minimum number of views" msgstr "" -#: .././config.py:8703 +#: .././config.py:8935 msgid "Maximum number of views" msgstr "" -#: .././config.py:8807 +#: .././config.py:9011 .././config.py:9965 .././config.py:9996 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Download options > Name" +msgstr "" + +#: .././config.py:9043 .././config.py:9179 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Download options > Files > " +"Cookies" +msgstr "" + +#: .././config.py:9049 msgid "Select the cookie jar file" msgstr "" -#: .././config.py:8938 +#: .././config.py:9185 msgid "Select the browser profile" msgstr "" -#: .././config.py:9058 +#: .././config.py:9285 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Download options > " +"Advanced > Configurations" +msgstr "" + +#: .././config.py:9310 msgid "Could not save the downloader's configuration file" msgstr "" -#: .././config.py:9069 +#: .././config.py:9321 msgid "Downloader's configuration file saved" msgstr "" -#: .././config.py:9407 +#: .././config.py:9645 .././config.py:9788 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Download options > Formats " +"> Preferred" +msgstr "" + +#: .././config.py:9664 msgid "" "This option won't work unless the format is also added to the list of " "preferred formats above" msgstr "" -#: .././config.py:9545 +#: .././config.py:9807 msgid "Unrecognised extractor code" msgstr "" -#: .././config.py:9663 +#: .././config.py:9905 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Download options > " +"Advanced > .netrc" +msgstr "" + +#: .././config.py:9930 msgid "Could not save the .netrc file" msgstr "" -#: .././config.py:9680 +#: .././config.py:9947 msgid ".netrc file saved" msgstr "" -#: .././config.py:9738 +#: .././config.py:10015 msgid "" "Fewer download options will be visible when you click the 'Apply' or 'Reset' " "buttons (or when you close and then re-open the window)" msgstr "" -#: .././config.py:9748 +#: .././config.py:10025 msgid "Show advanced download options (when window re-opens)" msgstr "" -#: .././config.py:9761 +#: .././config.py:10038 msgid "" "More download options will be visible when you click the 'Apply' or 'Reset' " "buttons (or when you close and then re-open the window)" msgstr "" -#: .././config.py:9771 +#: .././config.py:10048 msgid "Hide advanced download options (when window re-opens)" msgstr "" -#: .././config.py:10241 +#: .././config.py:10517 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Download options > Files > " +"Paths" +msgstr "" + +#: .././config.py:10523 msgid "Select the output folder" msgstr "" -#: .././config.py:10243 +#: .././config.py:10525 msgid "Select the output directory" msgstr "" -#: .././config.py:10293 +#: .././config.py:10576 +msgid "" +"TRANSLATOR'S NOTE: FFmpeg options window starts here. In the main window, in " +"the Videos tab, right-click a video and select Special > Process with " +"FFmpeg..." +msgstr "" + +#: .././config.py:10581 msgid "FFmpeg options" msgstr "" #. Replace the 'OK' button with a 'Process files' button -#: .././config.py:10646 .././config.py:13876 +#: .././config.py:10934 .././config.py:14219 msgid "Process files" msgstr "" -#: .././config.py:10648 .././config.py:13878 +#: .././config.py:10936 .././config.py:14221 msgid "Process the files with FFmpeg" msgstr "" -#: .././config.py:10664 +#: .././config.py:10949 +msgid "TRANSLATOR'S NOTE: FFmpeg options > Name" +msgstr "" + +#: .././config.py:10956 msgid "Name for these FFmpeg options" msgstr "" -#: .././config.py:10682 +#: .././config.py:10974 msgid "Extra command line options (e.g. --help)" msgstr "" -#: .././config.py:10693 +#: .././config.py:10985 msgid "System command, based on all FFmpeg options in this window:" msgstr "" -#: .././config.py:10724 +#: .././config.py:11016 msgid "Show fewer FFmpeg options" msgstr "" -#: .././config.py:10726 +#: .././config.py:11018 msgid "Show more FFmpeg options" msgstr "" -#: .././config.py:10736 +#: .././config.py:11028 msgid "Import current FFmpeg options into this window" msgstr "" -#: .././config.py:10751 +#: .././config.py:11043 msgid "Completely reset all FFmpeg options to their default values" msgstr "" -#: .././config.py:10767 +#: .././config.py:11057 +msgid "TRANSLATOR'S NOTE: FFmpeg options > File" +msgstr "" + +#: .././config.py:11063 msgid "Add to end of filename:" msgstr "" -#: .././config.py:10777 +#: .././config.py:11073 msgid "If regex matches filename:" msgstr "" -#: .././config.py:10791 +#: .././config.py:11087 msgid "...then apply substitution:" msgstr "" -#: .././config.py:10804 +#: .././config.py:11100 msgid "" "If the video/audio file is renamed, also rename the thumbnail (but not vice-" "versa)" msgstr "" -#: .././config.py:10815 +#: .././config.py:11111 msgid "Change file extension:" msgstr "" -#: .././config.py:10829 +#: .././config.py:11125 msgid "After changing the file extension, delete the original file" msgstr "" -#: .././config.py:10900 +#: .././config.py:11197 +msgid "" +"TRANSLATOR'S NOTE: FFmpeg options > Settings (to make hidden tabs visible, " +"click the 'Show more FFmpeg options' button in the Name tab" +msgstr "" + +#: .././config.py:11202 msgid "_Settings" msgstr "" -#: .././config.py:10913 +#: .././config.py:11215 msgid "Downloaded video/audio" msgstr "" -#: .././config.py:10922 +#: .././config.py:11224 msgid "with audio" msgstr "" -#: .././config.py:10935 .././config.py:11012 .././config.py:12534 +#: .././config.py:11237 .././config.py:11314 .././config.py:12852 msgid "Thumbnail" msgstr "" -#: .././config.py:10947 +#: .././config.py:11249 msgid "Output" msgstr "" -#: .././config.py:10976 +#: .././config.py:11278 msgid "Video clip" msgstr "" -#: .././config.py:10988 +#: .././config.py:11290 msgid "Video slice" msgstr "" -#: .././config.py:11000 +#: .././config.py:11302 msgid "Merge video/audio" msgstr "" -#: .././config.py:11110 +#: .././config.py:11412 msgid "Audio bitrate" msgstr "" -#: .././config.py:11124 +#: .././config.py:11426 msgid "How to set the quality" msgstr "" -#: .././config.py:11129 +#: .././config.py:11431 msgid "" "FFmpeg always encodes according to a Rate Factor that specifies the quality " "of the result." msgstr "" -#: .././config.py:11132 +#: .././config.py:11434 msgid "" "Instead of directly specifying the Rate Factor, an average bit rate can be " "specified. FFmpeg will then determine the optimal Rate Factor in a first " "pass." msgstr "" -#: .././config.py:11136 +#: .././config.py:11438 msgid "" "In fact the first pass is only used for determining the Rate Factor, no " "other data is carried over into the second pass." msgstr "" -#: .././config.py:11139 +#: .././config.py:11441 msgid "" "Specifying an average bitrate but running only one pass is possible, but not " "recommended. FFmpeg would then encode the beginning of the video with a " @@ -6129,2808 +6847,3308 @@ msgid "" "eventually reach the target bitrate." msgstr "" -#: .././config.py:11152 +#: .././config.py:11454 msgid "Manual rate factor" msgstr "" -#: .././config.py:11161 +#: .././config.py:11463 msgid "Determine from target bitrate (2-Pass)" msgstr "" -#: .././config.py:11171 +#: .././config.py:11473 msgid "Rate factor" msgstr "" -#: .././config.py:11180 +#: .././config.py:11482 msgid "Lossless" msgstr "" -#: .././config.py:11180 +#: .././config.py:11482 msgid "Large file" msgstr "" -#: .././config.py:11202 +#: .././config.py:11504 msgid "Bad quality" msgstr "" -#: .././config.py:11202 +#: .././config.py:11504 msgid "Small file" msgstr "" -#: .././config.py:11209 +#: .././config.py:11511 msgid "Name of dummy file" msgstr "" -#: .././config.py:11213 +#: .././config.py:11515 msgid "A dummy file is created during the first pass." msgstr "" -#: .././config.py:11217 +#: .././config.py:11519 msgid "Use the output file" msgstr "" -#: .././config.py:11218 +#: .././config.py:11520 msgid "Dummy" msgstr "" -#: .././config.py:11219 +#: .././config.py:11521 msgid "/dev/null (Linux)" msgstr "" -#: .././config.py:11220 +#: .././config.py:11522 msgid "NUL (MS Windows)" msgstr "" -#: .././config.py:11232 +#: .././config.py:11534 msgid "Patience preset" msgstr "" -#: .././config.py:11237 +#: .././config.py:11539 msgid "Ultra fast" msgstr "" -#: .././config.py:11238 +#: .././config.py:11540 msgid "Super fast" msgstr "" -#: .././config.py:11239 +#: .././config.py:11541 msgid "Very fast" msgstr "" -#: .././config.py:11240 .././config.py:11338 +#: .././config.py:11542 .././config.py:11640 msgid "Faster" msgstr "" -#: .././config.py:11241 +#: .././config.py:11543 msgid "Fast" msgstr "" -#: .././config.py:11242 +#: .././config.py:11544 msgid "Medium (default)" msgstr "" -#: .././config.py:11243 +#: .././config.py:11545 #, python-format msgid "Slow (file about 5-10% smaller than medium)" msgstr "" -#: .././config.py:11244 +#: .././config.py:11546 #, python-format msgid "Slower (file about 15% smaller than medium)" msgstr "" -#: .././config.py:11245 +#: .././config.py:11547 #, python-format msgid "Very slow (file about 17% smaller than medium)" msgstr "" -#: .././config.py:11256 +#: .././config.py:11558 msgid "GPU encoding" msgstr "" -#: .././config.py:11272 +#: .././config.py:11574 msgid "Hardware acceleration" msgstr "" -#: .././config.py:11332 +#: .././config.py:11634 msgid "Palette:" msgstr "" -#: .././config.py:11339 +#: .././config.py:11641 msgid "Uses dithering to a standard palette provided by FFmpeg" msgstr "" -#: .././config.py:11340 +#: .././config.py:11642 msgid "Can cause dithering artefacts and slight banding" msgstr "" -#: .././config.py:11349 +#: .././config.py:11651 msgid "Better" msgstr "" -#: .././config.py:11350 +#: .././config.py:11652 msgid "Determines an optimized palette for the video" msgstr "" -#: .././config.py:11351 +#: .././config.py:11653 msgid "Uses two passes and a temporary file for the palette" msgstr "" -#: .././config.py:11406 .././config.py:12042 +#: .././config.py:11708 .././config.py:12352 msgid "Split videos using their own timestamps" msgstr "" -#: .././config.py:11415 .././config.py:12053 +#: .././config.py:11717 .././config.py:12363 msgid "Split videos using these timestamps" msgstr "" -#: .././config.py:11449 .././config.py:11634 .././config.py:12089 -#: .././config.py:12296 .././config.py:14802 .././config.py:14983 +#: .././config.py:11751 .././config.py:11936 .././config.py:12399 +#: .././config.py:12610 .././config.py:15167 .././config.py:15352 msgid "Start" msgstr "" -#: .././config.py:11449 .././config.py:12089 .././config.py:14802 +#: .././config.py:11751 .././config.py:12399 .././config.py:15167 msgid "Clip title" msgstr "" -#: .././config.py:11520 .././config.py:12160 .././config.py:14862 +#: .././config.py:11822 .././config.py:12470 .././config.py:15227 msgid "Add timestamp" msgstr "" -#: .././config.py:11529 .././config.py:12169 .././config.py:14873 +#: .././config.py:11831 .././config.py:12479 .././config.py:15238 msgid "Delete timestamp" msgstr "" -#: .././config.py:11539 .././config.py:12179 .././config.py:14882 +#: .././config.py:11841 .././config.py:12489 .././config.py:15247 msgid "Clip preferences" msgstr "" -#: .././config.py:11591 .././config.py:12249 +#: .././config.py:11893 .././config.py:12563 msgid "Use the videos' own slice data" msgstr "" -#: .././config.py:11600 .././config.py:12260 +#: .././config.py:11902 .././config.py:12574 msgid "Use this slice data" msgstr "" -#: .././config.py:11634 .././config.py:11657 .././config.py:12296 -#: .././config.py:12319 .././config.py:14983 .././config.py:15002 +#: .././config.py:11936 .././config.py:11959 .././config.py:12610 +#: .././config.py:12633 .././config.py:15352 .././config.py:15371 msgid "Category" msgstr "" -#: .././config.py:11634 .././config.py:11677 .././config.py:12296 -#: .././config.py:12339 .././config.py:14983 .././config.py:15014 +#: .././config.py:11936 .././config.py:11979 .././config.py:12610 +#: .././config.py:12653 .././config.py:15352 .././config.py:15383 msgid "Action Type" msgstr "" -#: .././config.py:11721 .././config.py:12383 .././config.py:15053 +#: .././config.py:12023 .././config.py:12697 .././config.py:15422 msgid "Add slice" msgstr "" -#: .././config.py:11731 +#: .././config.py:12033 msgid "Delete sliuce" msgstr "" -#: .././config.py:11742 .././config.py:12405 .././config.py:15074 +#: .././config.py:12044 .././config.py:12719 .././config.py:15443 msgid "SponsorBlock settings" msgstr "" -#: .././config.py:11845 +#: .././config.py:12147 msgid "" "This merges a video and audio file with the same name into a single video " "file,\n" "using the extension specified in the File tab" msgstr "" -#: .././config.py:11886 +#: .././config.py:12188 msgid "The thumbnail's format can be changed in the File tab" msgstr "" -#: .././config.py:11901 +#: .././config.py:12204 +msgid "TRANSLATOR'S NOTE: FFmpeg options > Optimisations" +msgstr "" + +#: .././config.py:12207 msgid "_Optimisations" msgstr "" -#: .././config.py:11906 +#: .././config.py:12212 msgid "" "Optimise for fast seeking (shorter keyframe interval, about 10% larger file)" msgstr "" "Optimize for fast seeking (shorter keyframe interval, about 10% larger file)" -#: .././config.py:11914 +#: .././config.py:12220 msgid "Input video is a high-quality movie" msgstr "" -#: .././config.py:11920 +#: .././config.py:12226 msgid "Input video is an animated movie" msgstr "" -#: .././config.py:11926 +#: .././config.py:12232 msgid "Input video contains film grain" msgstr "" -#: .././config.py:11932 +#: .././config.py:12238 msgid "Input video is an image slideshow" msgstr "" -#: .././config.py:11938 +#: .././config.py:12244 msgid "Optimise for really weak CPU playback devices" msgstr "Optimize for really weak CPU playback devices" -#: .././config.py:11945 +#: .././config.py:12251 msgid "Optimise for really old devices (requires rate factor above 0)" msgstr "Optimize for really old devices (requires rate factor above 0)" -#: .././config.py:11956 +#: .././config.py:12262 msgid "" "Move headers to beginning of file (so it can play while still downloading)" msgstr "" -#: .././config.py:11964 +#: .././config.py:12270 msgid "Fast encoding and low latency streaming" msgstr "" -#: .././config.py:11970 +#: .././config.py:12276 msgid "Limit bitrate (Mbit/s)" msgstr "" -#: .././config.py:11987 +#: .././config.py:12293 msgid "Assuming a receiving buffer (seconds)" msgstr "" -#: .././config.py:12032 +#: .././config.py:12327 +msgid "TRANSLATOR'S NOTE: FFmpeg options > Clips" +msgstr "" + +#: .././config.py:12342 msgid "Split the video(s) to create video clips" msgstr "" -#: .././config.py:12232 .././config.py:14951 +#: .././config.py:12543 +msgid "TRANSLATOR'S NOTE: FFmpeg options > Slices" +msgstr "" + +#: .././config.py:12546 .././config.py:15320 msgid "_Slices" msgstr "" -#: .././config.py:12239 +#: .././config.py:12553 msgid "Remove slices from the video(s)" msgstr "" -#: .././config.py:12393 .././config.py:15065 +#: .././config.py:12707 .././config.py:15434 msgid "Delete slice" msgstr "" -#: .././config.py:12515 +#: .././config.py:12825 +msgid "TRANSLATOR'S NOTE: FFmpeg options > Videos" +msgstr "" + +#: .././config.py:12833 msgid "List of videos to be processed" msgstr "" -#: .././config.py:12577 +#: .././config.py:12895 msgid "Show video properties and timestamps" msgstr "" -#: .././config.py:12586 +#: .././config.py:12904 msgid "Remove video from list" msgstr "" -#: .././config.py:13515 +#: .././config.py:13048 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: FFmpeg options > Slices" +msgstr "" + +#: .././config.py:13175 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: FFmpeg options > Clips" +msgstr "" + +#: .././config.py:13402 .././config.py:13803 .././config.py:13834 +msgid "TRANSLATOR'S NOTE: Dialogue window, generated by: FFmpeg options > Name" +msgstr "" + +#: .././config.py:13858 msgid "" "Fewer FFmpeg options will be visible when you click the 'Apply' or 'Reset' " "buttons (or when you close and then re-open the window)" msgstr "" -#: .././config.py:13525 +#: .././config.py:13868 msgid "Show more FFmpeg options (when window re-opens)" msgstr "" -#: .././config.py:13542 +#: .././config.py:13885 msgid "" "More FFmpeg options will be visible when you click the 'Apply' or 'Reset' " "buttons (or when you close and then re-open the window)" msgstr "" -#: .././config.py:13552 +#: .././config.py:13895 msgid "Show fewer FFmpeg options (when window re-opens)" msgstr "" -#: .././config.py:14314 .././config.py:16655 .././config.py:17641 -#: .././config.py:18262 +#: .././config.py:14496 +msgid "" +"TRANSLATOR'S NOTE: Video properties window starts here. In the main window, " +"in the Videos tab, right-click a video and select Show video > Properties..." +msgstr "" + +#: .././config.py:14659 +msgid "TRANSLATOR'S NOTE: Video properties > General" +msgstr "" + +#: .././config.py:14667 .././config.py:17058 .././config.py:18085 +#: .././config.py:18730 msgid "General properties" msgstr "" -#: .././config.py:14364 +#: .././config.py:14717 msgid "Set the file (if this is the wrong one)" msgstr "" -#: .././config.py:14372 +#: .././config.py:14725 msgid "Metadata file" msgstr "" -#: .././config.py:14411 +#: .././config.py:14764 msgid "Update database using the video's metadata file" msgstr "" -#: .././config.py:14422 +#: .././config.py:14775 msgid "Video downloaded" msgstr "" -#: .././config.py:14429 +#: .././config.py:14782 msgid "Video unwatched" msgstr "" -#: .././config.py:14436 +#: .././config.py:14789 msgid "Video has been split from an original" msgstr "" -#: .././config.py:14443 +#: .././config.py:14796 msgid "Video is archived" msgstr "" -#: .././config.py:14450 +#: .././config.py:14803 msgid "Video is bookmarked" msgstr "" -#: .././config.py:14457 +#: .././config.py:14810 msgid "Video is favourite" msgstr "Video is favorite" -#: .././config.py:14464 +#: .././config.py:14817 msgid "Video is in waiting list" msgstr "" -#: .././config.py:14471 +#: .././config.py:14824 msgid "Video is blocked/censored/age-restricted" msgstr "" -#: .././config.py:14478 +#: .././config.py:14831 msgid "Always simulate download of this video" msgstr "" -#: .././config.py:14543 +#: .././config.py:14896 msgid "Receive time" msgstr "" -#: .././config.py:14557 +#: .././config.py:14910 msgid "Subtitles" msgstr "" -#: .././config.py:14589 +#: .././config.py:14938 +msgid "TRANSLATOR'S NOTE: Video properties > Live" +msgstr "" + +#: .././config.py:14946 msgid "Livestream properties" msgstr "" -#: .././config.py:14594 +#: .././config.py:14951 msgid "Livestream status" msgstr "" -#: .././config.py:14605 +#: .././config.py:14962 msgid "Waiting to start" msgstr "" -#: .././config.py:14609 +#: .././config.py:14966 msgid "Livestream has finished" msgstr "" -#: .././config.py:14611 +#: .././config.py:14968 msgid "Not a livestream" msgstr "" -#: .././config.py:14614 +#: .././config.py:14971 msgid "Livestream message" msgstr "" -#: .././config.py:14629 +#: .././config.py:14986 msgid "Video is pre-recorded" msgstr "" -#: .././config.py:14641 +#: .././config.py:14998 msgid "Livestream actions" msgstr "" -#: .././config.py:14648 +#: .././config.py:15005 msgid "When the livestream starts, show a desktop notification" msgstr "" -#: .././config.py:14657 +#: .././config.py:15014 msgid "When the livestream starts, play an alarm" msgstr "" -#: .././config.py:14667 +#: .././config.py:15024 msgid "When the livestream starts, open it in the system's web browser" msgstr "" -#: .././config.py:14679 +#: .././config.py:15036 msgid "When the livestream starts, begin downloading it immediately" msgstr "" -#: .././config.py:14690 .././config.py:24277 +#: .././config.py:15047 .././config.py:24942 msgid "When a livestream stops, download it (overwriting any earlier file)" msgstr "" -#: .././config.py:14706 +#: .././config.py:15064 +msgid "TRANSLATOR'S NOTE: Video properties > Description" +msgstr "" + +#: .././config.py:15067 msgid "_Description" msgstr "" -#: .././config.py:14711 +#: .././config.py:15072 msgid "Video description" msgstr "" -#: .././config.py:14724 +#: .././config.py:15085 msgid "Update from the description file, and set the line length to:" msgstr "" -#: .././config.py:14744 +#: .././config.py:15105 msgid "Clear the description (does not modify the file)" msgstr "" -#: .././config.py:14771 +#: .././config.py:15133 +msgid "TRANSLATOR'S NOTE: Video properties > Timestamps" +msgstr "" + +#: .././config.py:15136 msgid "_Timestamps" msgstr "" -#: .././config.py:14776 +#: .././config.py:15141 msgid "Timestamps" msgstr "" -#: .././config.py:14782 +#: .././config.py:15147 msgid "Timestamps can be used to download or create video clips" msgstr "" -#: .././config.py:14898 +#: .././config.py:15263 msgid "Reset list using copied text" msgstr "" -#: .././config.py:14906 +#: .././config.py:15271 msgid "Reset list using video description" msgstr "" -#: .././config.py:14956 +#: .././config.py:15317 +msgid "TRANSLATOR'S NOTE: Video properties > Slices" +msgstr "" + +#: .././config.py:15325 msgid "Video slices" msgstr "" -#: .././config.py:14962 +#: .././config.py:15331 msgid "SponsorBlock provides a list of slices that can be removed from a video" msgstr "" -#: .././config.py:15136 +#: .././config.py:15506 +msgid "TRANSLATOR'S NOTE: Video properties > Comments" +msgstr "" + +#: .././config.py:15509 msgid "_Comments" msgstr "" -#: .././config.py:15147 +#: .././config.py:15520 msgid "Total comments:" msgstr "" -#: .././config.py:15186 +#: .././config.py:15559 msgid "Show formatted list" msgstr "" -#: .././config.py:15197 +#: .././config.py:15570 msgid "Show comment times as text" msgstr "" -#: .././config.py:15207 +#: .././config.py:15580 msgid "Show comment timestamps" msgstr "" -#: .././config.py:15245 .././config.py:15357 +#: .././config.py:15618 .././config.py:15730 msgid "Author" msgstr "" -#: .././config.py:15252 .././config.py:15357 +#: .././config.py:15625 .././config.py:15730 msgid "Comment" msgstr "" -#: .././config.py:15260 .././config.py:15358 +#: .././config.py:15633 .././config.py:15731 msgid "Uploader" msgstr "" -#: .././config.py:15306 +#: .././config.py:15679 msgid "Update from the metadata file" msgstr "" -#: .././config.py:15328 +#: .././config.py:15701 msgid "Clear comments (does not modify the file)" msgstr "" -#: .././config.py:15357 +#: .././config.py:15730 msgid "Likes" msgstr "" -#: .././config.py:15758 .././config.py:17036 -msgid "Errors / Warnings" +#: .././config.py:16128 +msgid "TRANSLATOR'S NOTE: Video properties > Errors / Warnings" msgstr "" -#: .././config.py:15764 +#: .././config.py:16135 .././config.py:17456 +msgid "Errors / Warnings" +msgstr "" + +#: .././config.py:16141 msgid "Error messages produced the last time this video was checked/downloaded" msgstr "" -#: .././config.py:15780 +#: .././config.py:16157 msgid "" "Warning messages produced the last time this video was checked/downloaded" msgstr "" -#: .././config.py:16295 +#: .././config.py:16202 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Video properties > Slices" +msgstr "" + +#: .././config.py:16292 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Video properties > " +"Timestamps" +msgstr "" + +#: .././config.py:16681 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Video properties > General" +msgstr "" + +#: .././config.py:16687 msgid "Select the correct video/audio file" msgstr "" -#: .././config.py:16321 +#: .././config.py:16713 msgid "" "The replacement video/audio file must be in the same channel, playlist or " "folder" msgstr "" -#: .././config.py:16339 +#: .././config.py:16731 msgid "You must select a valid video/audio file" msgstr "" -#: .././config.py:16525 +#: .././config.py:16916 +msgid "" +"TRANSLATOR'S NOTE: Channel/playlist properties window starts here. In the " +"main window, in the Videos tab, right-click a channel or playlist and select " +"Show > Channel properties... of Show > Playlist properties..." +msgstr "" + +#: .././config.py:16924 msgid "Channel properties" msgstr "" -#: .././config.py:16528 +#: .././config.py:16927 msgid "Playlist properties" msgstr "" -#: .././config.py:16670 +#: .././config.py:17051 +msgid "TRANSLATOR'S NOTE: Channel properties > General" +msgstr "" + +#: .././config.py:17073 msgid "Don't add videos in this channel to Tartube's database" msgstr "" -#: .././config.py:16674 +#: .././config.py:17077 msgid "Don't add videos in this playlist to Tartube's database" msgstr "" -#: .././config.py:16685 +#: .././config.py:17088 msgid "Always simulate download of videos in this channel" msgstr "" -#: .././config.py:16687 +#: .././config.py:17090 msgid "Always simulate download of videos in this playlist" msgstr "" -#: .././config.py:16697 +#: .././config.py:17100 msgid "Disable checking/downloading for this channel" msgstr "" -#: .././config.py:16699 +#: .././config.py:17102 msgid "Disable checking/downloading for this playlist" msgstr "" -#: .././config.py:16709 +#: .././config.py:17112 msgid "This channel is marked as a favourite" msgstr "This channel is marked as a favorite" -#: .././config.py:16711 +#: .././config.py:17114 msgid "This playlist is marked as a favourite" msgstr "This playlist is marked as a favorite" -#: .././config.py:16721 +#: .././config.py:17124 msgid "Total videos" msgstr "" -#: .././config.py:16745 +#: .././config.py:17148 msgid "Favourite videos" msgstr "Favorite videos" -#: .././config.py:16757 +#: .././config.py:17160 msgid "Downloaded videos" msgstr "" -#: .././config.py:16779 +#: .././config.py:17183 +msgid "" +"TRANSLATOR'S NOTE: Channel properties > Associated playlists. Only visible " +"for the compatible websites (e.g. YouTube)" +msgstr "" + +#: .././config.py:17187 msgid "Associated _Playlists" msgstr "" -#: .././config.py:16784 +#: .././config.py:17192 msgid "Associated playlists" msgstr "" -#: .././config.py:16790 +#: .././config.py:17198 msgid "" "When a video is associated with a playlist, the playlist's ID is stored here" msgstr "" -#: .././config.py:16811 +#: .././config.py:17219 msgid "Playlist Title" msgstr "" -#: .././config.py:16830 +#: .././config.py:17238 msgid "Set the channel as the download destination" msgstr "" -#: .././config.py:16837 +#: .././config.py:17245 msgid "Add selected playlist" msgstr "" -#: .././config.py:16846 +#: .././config.py:17254 msgid "Add all playlists" msgstr "" -#: .././config.py:16854 +#: .././config.py:17262 msgid "Download preferences" msgstr "" #. (This button works even if mainapp.TartubeApp.store_playlist_id_flag #. is False) -#: .././config.py:16870 +#: .././config.py:17278 msgid "Reset list using metadata file" msgstr "" -#: .././config.py:16901 +#: .././config.py:17309 msgid "Unnamed playlist" msgstr "" -#: .././config.py:16917 .././config.py:17884 .././config.py:21410 +#: .././config.py:17326 +msgid "TRANSLATOR'S NOTE: Channel properties > History" +msgstr "" + +#: .././config.py:17329 .././config.py:18336 .././config.py:21963 msgid "_History" msgstr "" -#: .././config.py:16922 .././config.py:17889 .././config.py:21417 +#: .././config.py:17334 .././config.py:18341 .././config.py:21970 msgid "Download history" msgstr "" -#: .././config.py:16936 .././config.py:17903 .././config.py:21431 +#: .././config.py:17348 .././config.py:18355 .././config.py:21984 msgid "Draw" msgstr "" -#: .././config.py:16964 +#: .././config.py:17377 .././config.py:17877 +msgid "TRANSLATOR'S NOTE: Channel properties > RSS feed" +msgstr "" + +#: .././config.py:17380 msgid "_RSS feed" msgstr "" -#: .././config.py:16969 +#: .././config.py:17385 msgid "RSS feed (used to detect livestreams)" msgstr "" -#: .././config.py:16975 +#: .././config.py:17391 msgid "" "If Tartube cannot detect the channel's RSS feed, you can enter the URL here" msgstr "" -#: .././config.py:16980 +#: .././config.py:17396 msgid "" "If Tartube cannot detect the playlist's RSS feed, you can enter the URL here" msgstr "" -#: .././config.py:16999 +#: .././config.py:17415 msgid "Open in web browser" msgstr "" -#: .././config.py:17004 +#: .././config.py:17420 msgid "Set to default feed" msgstr "" -#: .././config.py:17011 +#: .././config.py:17427 msgid "Reset feed" msgstr "" -#: .././config.py:17018 +#: .././config.py:17434 msgid "" "N.B. The Set to default feed button won't work if the RSS feed was " "obtained from video metadata" msgstr "" -#: .././config.py:17042 +#: .././config.py:17449 +msgid "TRANSLATOR'S NOTE: Channel properties > Errors / Warnings" +msgstr "" + +#: .././config.py:17462 msgid "" "Error messages produced the last time this channel was checked/downloaded" msgstr "" -#: .././config.py:17047 +#: .././config.py:17467 msgid "" "Error messages produced the last time this playlist was checked/downloaded" msgstr "" -#: .././config.py:17066 +#: .././config.py:17486 msgid "" "Warning messages produced the last time this channel was checked/downloaded" msgstr "" -#: .././config.py:17071 +#: .././config.py:17491 msgid "" "Warning messages produced the last time this playlist was checked/downloaded" msgstr "" -#: .././config.py:17143 +#: .././config.py:17541 .././config.py:17672 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: Channel properties > " +"Associated playlists" +msgstr "" + +#: .././config.py:17568 #, python-brace-format msgid "The name '{0}' is already in use" msgstr "" -#: .././config.py:17162 +#: .././config.py:17587 msgid "Unable to extrapolate the URL for this playlist" msgstr "" -#: .././config.py:17177 +#: .././config.py:17602 msgid "The playlist is already in Tartube's database" msgstr "" -#: .././config.py:17200 +#: .././config.py:17625 msgid "Unable to create new playlist" msgstr "" -#: .././config.py:17221 +#: .././config.py:17646 #, python-brace-format msgid "Added playlist '{0}' to Tartube's database" msgstr "" #. Show confirmation -#: .././config.py:17327 +#: .././config.py:17757 #, python-brace-format msgid "Playlists added: {0}" msgstr "" -#: .././config.py:17328 +#: .././config.py:17758 #, python-brace-format msgid "Playlists not added: {0}" msgstr "" -#: .././config.py:17465 +#: .././config.py:17899 msgid "Could not set the RSS feed" msgstr "" -#: .././config.py:17518 +#: .././config.py:17953 +msgid "" +"TRANSLATOR'S NOTE: Folder properties window starts here. In the main window, " +"in the Videos tab, right-click a folder and select Show > Folder " +"properties..." +msgstr "" + +#: .././config.py:17958 msgid "Folder properties" msgstr "" -#: .././config.py:17654 +#: .././config.py:18078 +msgid "TRANSLATOR'S NOTE: Folder properties > General" +msgstr "" + +#: .././config.py:18098 msgid "Don't add videos to Tartube's database" msgstr "" -#: .././config.py:17661 +#: .././config.py:18105 msgid "Always simulate download of videos" msgstr "" -#: .././config.py:17668 +#: .././config.py:18112 msgid "Disable checking/downloading" msgstr "" -#: .././config.py:17675 +#: .././config.py:18119 msgid "This folder is marked as a favourite" msgstr "This folder is marked as a favorite" -#: .././config.py:17682 +#: .././config.py:18126 msgid "This folder is hidden" msgstr "" -#: .././config.py:17689 +#: .././config.py:18133 msgid "This folder can't be deleted by the user" msgstr "" -#: .././config.py:17696 +#: .././config.py:18140 msgid "This is a system-controlled folder" msgstr "" -#: .././config.py:17703 +#: .././config.py:18147 msgid "All contents deleted when Tartube shuts down" msgstr "" -#: .././config.py:17710 +#: .././config.py:18154 msgid "Restrictions:" msgstr "" -#: .././config.py:17721 +#: .././config.py:18165 msgid "Can only contain videos" msgstr "" -#: .././config.py:17723 +#: .././config.py:18167 msgid "Can contain folders and videos" msgstr "" -#: .././config.py:17725 +#: .././config.py:18169 msgid "Can contain anything" msgstr "" -#: .././config.py:17735 .././config.py:21234 +#: .././config.py:18180 +msgid "TRANSLATOR'S NOTE: Folder properties > Statistics" +msgstr "" + +#: .././config.py:18183 .././config.py:21783 msgid "_Statistics" msgstr "" -#: .././config.py:17740 .././config.py:21241 +#: .././config.py:18188 .././config.py:21790 msgid "Statistics" msgstr "" -#: .././config.py:17761 .././config.py:21262 +#: .././config.py:18209 .././config.py:21811 msgid "Downloaded" msgstr "" -#: .././config.py:17805 +#: .././config.py:18253 msgid "Sub-folders" msgstr "" -#: .././config.py:17827 +#: .././config.py:18275 msgid "Recalculate" msgstr "" -#: .././config.py:17931 +#: .././config.py:18333 +msgid "TRANSLATOR'S NOTE: Folder properties > History" +msgstr "" + +#: .././config.py:18384 +msgid "" +"TRANSLATOR'S NOTE: Folder properties > Recent videos. Only visible for the " +"'Recent videos' folder" +msgstr "" + +#: .././config.py:18388 msgid "_Recent Videos" msgstr "" -#: .././config.py:17936 +#: .././config.py:18393 msgid "Recent videos" msgstr "" -#: .././config.py:17942 +#: .././config.py:18399 msgid "" "When videos are checked/downloaded, older videos are removed from this folder" msgstr "" -#: .././config.py:18113 +#: .././config.py:18571 +msgid "" +"TRANSLATOR'S NOTE: Scheduled downloads window starts here. In the menu, " +"click Edit > System preferences... Scheduling > Start. In the 'Scheduled " +"download name' box, add a name. Then click the Add button" +msgstr "" + +#: .././config.py:18577 msgid "Scheduled download" msgstr "" -#: .././config.py:18267 .././config.py:22509 +#: .././config.py:18722 +msgid "TRANSLATOR'S NOTE: Scheduled downloads > General" +msgstr "" + +#: .././config.py:18735 .././config.py:23134 msgid "Scheduled download name" msgstr "" -#: .././config.py:18279 +#: .././config.py:18747 msgid "Download mode" msgstr "" -#: .././config.py:18284 +#: .././config.py:18752 msgid "Check channels, playlist and folders" msgstr "" -#: .././config.py:18285 +#: .././config.py:18753 msgid "Download channels, playlists and folders" msgstr "" -#: .././config.py:18286 +#: .././config.py:18754 msgid "Perform a custom download" msgstr "" -#: .././config.py:18298 +#: .././config.py:18766 msgid "Custom download name" msgstr "" -#: .././config.py:18355 .././config.py:22450 +#: .././config.py:18824 +msgid "TRANSLATOR'S NOTE: Scheduled downloads > Start" +msgstr "" + +#: .././config.py:18827 .././config.py:23075 msgid "_Start" msgstr "" -#: .././config.py:18360 +#: .././config.py:18832 msgid "Start conditions" msgstr "" -#: .././config.py:18365 .././config.py:22475 +#: .././config.py:18837 .././config.py:23100 msgid "Start mode" msgstr "" -#: .././config.py:18370 +#: .././config.py:18842 msgid "Perform this download at regular intervals" msgstr "" -#: .././config.py:18371 +#: .././config.py:18843 msgid "Perform this download when Tartube starts" msgstr "" -#: .././config.py:18373 +#: .././config.py:18845 msgid "Perform this download some time after Tartube starts" msgstr "" -#: .././config.py:18376 +#: .././config.py:18848 msgid "Perform this download at specified times" msgstr "" -#: .././config.py:18377 +#: .././config.py:18849 msgid "Disable this scheduled download" msgstr "" -#: .././config.py:18451 +#: .././config.py:18923 msgid "Minutes" msgstr "" -#: .././config.py:18578 +#: .././config.py:19050 msgid "Interval time" msgstr "" -#: .././config.py:18588 +#: .././config.py:19060 msgid "Start times" msgstr "" -#: .././config.py:18629 +#: .././config.py:19102 +msgid "TRANSLATOR'S NOTE: Scheduled downloads > Conflicts" +msgstr "" + +#: .././config.py:19105 msgid "_Conflicts" msgstr "" -#: .././config.py:18633 +#: .././config.py:19109 msgid "Conflict settings" msgstr "" -#: .././config.py:18638 +#: .././config.py:19114 msgid "If another scheduled download is running:" msgstr "" -#: .././config.py:18645 +#: .././config.py:19121 msgid "Add channels, playlists and folders to the end of the queue" msgstr "" -#: .././config.py:18651 +#: .././config.py:19127 msgid "Add channels, playlists and folders to the beginning of the queue" msgstr "" -#: .././config.py:18658 +#: .././config.py:19134 msgid "Do nothing, just wait until the next scheduled download time" msgstr "" -#: .././config.py:18673 +#: .././config.py:19149 msgid "This scheduled download takes priority over others" msgstr "" -#: .././config.py:18676 +#: .././config.py:19152 msgid "Other scheduled downloads won't start until this one is finished" msgstr "" -#: .././config.py:18696 +#: .././config.py:19168 +msgid "TRANSLATOR'S NOTE: Scheduled downloads > Media" +msgstr "" + +#: .././config.py:19176 msgid "Media to download" msgstr "" -#: .././config.py:18702 +#: .././config.py:19182 msgid "Check/download everything" msgstr "" -#: .././config.py:18710 +#: .././config.py:19190 msgid "Only check/download the media below" msgstr "" -#: .././config.py:18724 +#: .././config.py:19204 msgid "" "Hint: you can drag and drop channels, playlists and your own folders here" msgstr "" -#: .././config.py:18863 .././config.py:22824 +#: .././config.py:19344 +msgid "TRANSLATOR'S NOTE: Scheduled downloads > Limits" +msgstr "" + +#: .././config.py:19347 .././config.py:23461 msgid "_Limits" msgstr "" -#: .././config.py:18868 .././config.py:22831 +#: .././config.py:19352 .././config.py:23468 msgid "Performance limits" msgstr "" -#: .././config.py:18873 .././config.py:22836 +#: .././config.py:19357 .././config.py:23473 msgid "Limits are applied when you start downloading a video/channel/playlist" msgstr "" -#: .././config.py:18879 +#: .././config.py:19363 msgid "" "These limits override the default and alternative limits specified elsewhere" msgstr "" -#: .././config.py:18885 .././config.py:22842 .././config.py:22913 +#: .././config.py:19369 .././config.py:23479 .././config.py:23550 msgid "Limit simultaneous downloads to" msgstr "" -#: .././config.py:18900 .././config.py:22860 .././config.py:22935 +#: .././config.py:19384 .././config.py:23497 .././config.py:23572 msgid "Limit download speed to" msgstr "" -#: .././config.py:18927 +#: .././config.py:19412 +msgid "TRANSLATOR'S NOTE: Scheduled downloads > Other" +msgstr "" + +#: .././config.py:19415 msgid "_Other" msgstr "" -#: .././config.py:18931 +#: .././config.py:19419 msgid "Other settings" msgstr "" -#: .././config.py:18937 +#: .././config.py:19425 msgid "" "Ignore time-saving preferences, and check/download the whole channel/" "playlist/folder" msgstr "" -#: .././config.py:18945 +#: .././config.py:19433 msgid "Shut down Tartube when this scheduled download has finished" msgstr "" -#: .././config.py:19704 +#: .././config.py:19852 +msgid "" +"TRANSLATOR'S NOTE: System preferences window starts here. In the menu, click " +"Edit > System preferences..." +msgstr "" + +#: .././config.py:20171 +msgid "TRANSLATOR'S NOTE: System preferences > General" +msgstr "" + +#: .././config.py:20198 +msgid "TRANSLATOR'S NOTE: System preferences > General > Application" +msgstr "" + +#: .././config.py:20205 msgid "_Application" msgstr "" -#: .././config.py:19711 +#: .././config.py:20212 msgid "Application details" msgstr "" -#: .././config.py:19716 +#: .././config.py:20217 msgid "Version" msgstr "" -#: .././config.py:19734 +#: .././config.py:20235 msgid "Locale override" msgstr "" -#: .././config.py:19743 +#: .././config.py:20244 msgid "Use your system locale" msgstr "" -#: .././config.py:19751 +#: .././config.py:20252 msgid "Current locale" msgstr "" -#: .././config.py:19760 +#: .././config.py:20261 msgid "Unrecognised locale" msgstr "" -#: .././config.py:19837 +#: .././config.py:20339 +msgid "TRANSLATOR'S NOTE: System preferences > General > Modules" +msgstr "" + +#: .././config.py:20342 msgid "_Modules" msgstr "" -#: .././config.py:19842 +#: .././config.py:20347 msgid "Module availability" msgstr "" -#: .././config.py:19848 +#: .././config.py:20353 msgid "feedparser module is available (required for detecting livestreams)" msgstr "" -#: .././config.py:19857 +#: .././config.py:20362 msgid "matplotlib module is available (draws graphs)" msgstr "" -#: .././config.py:19865 +#: .././config.py:20370 msgid "moviepy module is available (finds the length of videos, if unknown)" msgstr "" -#: .././config.py:19875 +#: .././config.py:20380 msgid "playsound module is available (sound an alarm when a livestream starts)" msgstr "" -#: .././config.py:19885 +#: .././config.py:20390 msgid "" "XDG module is available (saves the config file in the standard location)" msgstr "" -#: .././config.py:19895 +#: .././config.py:20400 msgid "" "Notify module is available (shows desktop notifications; Linux/*BSD only)" msgstr "" -#: .././config.py:19905 +#: .././config.py:20410 msgid "Module preferences" msgstr "" -#: .././config.py:19911 +#: .././config.py:20416 msgid "" "Use 'moviepy' module to get a video's duration, if not known (may be slow)" msgstr "" -#: .././config.py:19923 +#: .././config.py:20428 msgid "Timeout applied when moviepy checks a video file" msgstr "" -#: .././config.py:19980 +#: .././config.py:20453 +msgid "TRANSLATOR'S NOTE: System preferences > Files > xxx" +msgstr "" + +#: .././config.py:20490 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Device" +msgstr "" + +#: .././config.py:20493 msgid "_Device" msgstr "" -#: .././config.py:19985 +#: .././config.py:20498 msgid "Device preferences" msgstr "" -#: .././config.py:19990 +#: .././config.py:20503 msgid "Size of device" msgstr "" -#: .././config.py:20007 +#: .././config.py:20520 msgid "Free space on device" msgstr "" -#: .././config.py:20025 +#: .././config.py:20538 msgid "" "Before checking/downloading videos, warn user if disk space is less than" msgstr "" -#: .././config.py:20050 +#: .././config.py:20563 msgid "Halt downloads if disk space is less than" msgstr "" -#: .././config.py:20105 +#: .././config.py:20619 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Config" +msgstr "" + +#: .././config.py:20622 msgid "_Config" msgstr "" -#: .././config.py:20109 +#: .././config.py:20626 msgid "Configuration preferences" msgstr "" -#: .././config.py:20114 +#: .././config.py:20631 msgid "Tartube configuration file loaded from" msgstr "" -#: .././config.py:20126 +#: .././config.py:20643 msgid "Default location for Tartube configuration" msgstr "" -#: .././config.py:20138 +#: .././config.py:20655 msgid "Alternative location for Tartube configuration" msgstr "" -#: .././config.py:20162 +#: .././config.py:20680 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Database" +msgstr "" + +#: .././config.py:20683 msgid "D_atabase" msgstr "" -#: .././config.py:20167 +#: .././config.py:20688 msgid "Database preferences" msgstr "" -#: .././config.py:20172 +#: .././config.py:20693 msgid "Current data folder" msgstr "" -#: .././config.py:20185 +#: .././config.py:20706 msgid "Current database" msgstr "" -#: .././config.py:20202 +#: .././config.py:20723 msgid "Recent data folders" msgstr "" -#: .././config.py:20218 +#: .././config.py:20739 msgid "Add new database" msgstr "" -#: .././config.py:20220 +#: .././config.py:20741 msgid "Change to a different data folder" msgstr "" -#: .././config.py:20227 +#: .././config.py:20748 msgid "Check and repair database" msgstr "" -#: .././config.py:20230 +#: .././config.py:20751 msgid "Check for inconsistencies, and repair them" msgstr "" -#: .././config.py:20235 +#: .././config.py:20756 msgid "Dump database to JSON" msgstr "" -#: .././config.py:20238 +#: .././config.py:20759 msgid "Convert databases to JSON, even when Tartube can't load them" msgstr "" -#: .././config.py:20243 +#: .././config.py:20764 msgid "Switch to this database" msgstr "" -#: .././config.py:20245 +#: .././config.py:20766 msgid "Switch to the selected data folder" msgstr "" -#: .././config.py:20255 +#: .././config.py:20776 msgid "Forget" msgstr "" -#: .././config.py:20258 +#: .././config.py:20779 msgid "Remove the selected data folder from the list" msgstr "" -#: .././config.py:20268 +#: .././config.py:20789 msgid "Forget all" msgstr "" -#: .././config.py:20271 +#: .././config.py:20792 msgid "Forget every folder in this list (except the current one)" msgstr "" -#: .././config.py:20285 +#: .././config.py:20806 msgid "Move the selected folder up the list" msgstr "" -#: .././config.py:20294 +#: .././config.py:20815 msgid "Move the selected folder down the list" msgstr "" -#: .././config.py:20322 +#: .././config.py:20843 msgid "" "On startup, load the first database on the list (not the most recently-use " "one)" msgstr "" -#: .././config.py:20332 +#: .././config.py:20853 msgid "If one database is in use, try to load others" msgstr "" -#: .././config.py:20340 +#: .././config.py:20861 msgid "New databases are added to this list" msgstr "" -#: .././config.py:20385 +#: .././config.py:20907 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Backups" +msgstr "" + +#: .././config.py:20910 msgid "_Backups" msgstr "" -#: .././config.py:20390 +#: .././config.py:20915 msgid "Backup preferences" msgstr "" -#: .././config.py:20395 +#: .././config.py:20920 msgid "" "When saving the database, Tartube makes a backup copy of its database file" msgstr "" -#: .././config.py:20403 +#: .././config.py:20928 msgid "Delete the backup as soon as the database has been saved" msgstr "" -#: .././config.py:20410 +#: .././config.py:20935 msgid "Keep the backup file, replacing any previous backup file" msgstr "" -#: .././config.py:20419 +#: .././config.py:20944 msgid "Make a new backup file once per day" msgstr "" -#: .././config.py:20428 +#: .././config.py:20953 msgid "Make a new backup file every time the database is saved" msgstr "" -#: .././config.py:20459 +#: .././config.py:20984 msgid "Export preferences" msgstr "" -#: .././config.py:20464 +#: .././config.py:20989 msgid "Separator used in CSV exports" msgstr "" -#: .././config.py:20506 +#: .././config.py:21024 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Videos" +msgstr "" + +#: .././config.py:21035 msgid "Video matching preferences" msgstr "" -#: .././config.py:20511 +#: .././config.py:21040 msgid "When matching videos on the filesystem:" msgstr "" -#: .././config.py:20517 +#: .././config.py:21046 msgid "The video names must match exactly" msgstr "" -#: .././config.py:20524 +#: .././config.py:21053 msgid "The first # characters must match exactly" msgstr "" -#: .././config.py:20538 +#: .././config.py:21067 msgid "Ignore the last # characters; the remaining name must match exactly" msgstr "" -#: .././config.py:20576 +#: .././config.py:21105 msgid "Video matching recommended preferences" msgstr "" -#: .././config.py:20582 +#: .././config.py:21111 msgid "Check the video's original name and the downloaded file name" msgstr "" -#: .././config.py:20594 +#: .././config.py:21123 msgid "" "N.B. If disabled, custom file templates will interfere with video matching" msgstr "" -#: .././config.py:20614 +#: .././config.py:21143 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Delete" +msgstr "" + +#: .././config.py:21147 msgid "D_elete" msgstr "" -#: .././config.py:20621 +#: .././config.py:21154 msgid "Automatic video deletion/removal preferences" msgstr "" -#: .././config.py:20627 +#: .././config.py:21160 msgid "" "Deleted videos are re-downloaded without an archive file. See the Operations " "> Archive tab" msgstr "" -#: .././config.py:20634 +#: .././config.py:21167 msgid "Automatically delete downloaded videos" msgstr "" -#: .././config.py:20650 .././config.py:20674 .././formats.py:449 +#: .././config.py:21183 .././config.py:21207 .././formats.py:450 msgid "days" msgstr "" -#: .././config.py:20656 +#: .././config.py:21189 msgid "Remove downloaded videos from the database (but don't delete files)" msgstr "" -#: .././config.py:20679 +#: .././config.py:21212 msgid "Only delete/remove videos which have been watched" msgstr "" -#: .././config.py:20691 +#: .././config.py:21224 msgid "Delete/remove files:" msgstr "" -#: .././config.py:20697 +#: .././config.py:21230 msgid "When the database is loaded" msgstr "" -#: .././config.py:20704 +#: .././config.py:21237 msgid "After every download operation" msgstr "" -#: .././config.py:20748 +#: .././config.py:21281 msgid "Manual video deletion/removal preferences" msgstr "" -#: .././config.py:20753 +#: .././config.py:21286 msgid "Show dialogue window before removing video(s)" msgstr "" -#: .././config.py:20764 +#: .././config.py:21297 msgid "When removing videos, remove all files from the filesystem" msgstr "" -#: .././config.py:20776 +#: .././config.py:21309 msgid "Show dialogue window before removing channels/playlists/folders" msgstr "" -#: .././config.py:20790 +#: .././config.py:21323 msgid "When removing containers, remove all files from the filesystem" msgstr "" -#: .././config.py:20823 +#: .././config.py:21349 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Update" +msgstr "" + +#: .././config.py:21360 msgid "Update video descriptions" msgstr "" -#: .././config.py:20830 +#: .././config.py:21367 msgid "These procedures might take a long time on a large database" msgstr "" -#: .././config.py:20837 +#: .././config.py:21374 msgid "Update from description files, and set the line lengths to:" msgstr "" -#: .././config.py:20856 +#: .././config.py:21393 msgid "Clear descriptions (does not modify the description files)" msgstr "" -#: .././config.py:20879 +#: .././config.py:21416 msgid "Video timestamps" msgstr "" -#: .././config.py:20883 +#: .././config.py:21420 msgid "Extract timestamps for all videos" msgstr "" -#: .././config.py:20891 +#: .././config.py:21428 msgid "Remove timestamps from all videos" msgstr "" -#: .././config.py:20901 .././config.py:24659 +#: .././config.py:21438 .././config.py:25336 msgid "Video comments" msgstr "" -#: .././config.py:20905 +#: .././config.py:21442 msgid "Extract comments for all videos" msgstr "" -#: .././config.py:20913 +#: .././config.py:21450 msgid "Remove comments from all videos" msgstr "" -#: .././config.py:20923 +#: .././config.py:21460 msgid "" "Comments are extracted from each video's metadata file, so this procedure " "may take a long time" msgstr "" -#: .././config.py:20943 +#: .././config.py:21480 +msgid "TRANSLATOR'S NOTE: System preferences > Files > URLs" +msgstr "" + +#: .././config.py:21484 msgid "U_RLs" msgstr "" -#: .././config.py:20950 +#: .././config.py:21491 msgid "Update channel/playlist URLs" msgstr "" -#: .././config.py:20955 +#: .././config.py:21496 msgid "Confirm every change" msgstr "" -#: .././config.py:21038 +#: .././config.py:21579 msgid "Pattern" msgstr "" -#: .././config.py:21049 +#: .././config.py:21590 msgid "Substitution" msgstr "" -#: .././config.py:21060 +#: .././config.py:21601 msgid "This pattern is a regex" msgstr "" -#: .././config.py:21072 +#: .././config.py:21613 msgid "Search and replace text in the selected URLs" msgstr "" -#: .././config.py:21087 +#: .././config.py:21628 msgid "Open URLs" msgstr "" -#: .././config.py:21181 +#: .././config.py:21716 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Temporary" +msgstr "" + +#: .././config.py:21726 msgid "Temporary folder preferences" msgstr "" -#: .././config.py:21186 +#: .././config.py:21731 msgid "Empty temporary folders when Tartube shuts down" msgstr "" -#: .././config.py:21195 +#: .././config.py:21740 msgid "(N.B. Temporary folders are always emptied when Tartube starts up)" msgstr "" -#: .././config.py:21203 +#: .././config.py:21748 msgid "Open temporary folders (on the desktop) when Tartube shuts down" msgstr "" -#: .././config.py:21246 +#: .././config.py:21779 +msgid "TRANSLATOR'S NOTE: System preferences > Files > Statistics" +msgstr "" + +#: .././config.py:21795 msgid "The Tartube database contains:" msgstr "" -#: .././config.py:21306 +#: .././config.py:21855 msgid "Custom folders" msgstr "" -#: .././config.py:21329 +#: .././config.py:21878 msgid "Calculate" msgstr "" +#: .././config.py:21959 +msgid "TRANSLATOR'S NOTE: System preferences > Files > History" +msgstr "" + +#: .././config.py:22013 +msgid "TRANSLATOR'S NOTE: System preferences > Windows" +msgstr "" + #. Add this tab... -#: .././config.py:21460 +#: .././config.py:22017 msgid "_Windows" msgstr "" -#: .././config.py:21489 +#: .././config.py:22046 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Main Window" +msgstr "" + +#: .././config.py:22050 msgid "_Main window" msgstr "" -#: .././config.py:21496 +#: .././config.py:22057 msgid "Main window preferences" msgstr "" -#: .././config.py:21501 +#: .././config.py:22062 msgid "Remember size of the main window" msgstr "" -#: .././config.py:21509 +#: .././config.py:22070 msgid "Remember slider positions" msgstr "" -#: .././config.py:21518 +#: .././config.py:22079 msgid "Reset both" msgstr "" -#: .././config.py:21534 +#: .././config.py:22095 msgid "Don't show the main window toolbar" msgstr "" -#: .././config.py:21542 +#: .././config.py:22103 msgid "Don't show labels in the main window toolbar" msgstr "" -#: .././config.py:21560 +#: .././config.py:22121 msgid "" "Replace stock icons with custom icons (in case stock icons are not visible)" msgstr "" -#: .././config.py:21570 +#: .././config.py:22131 msgid "Show tooltips for videos, channels, playlists and folders" msgstr "" -#: .././config.py:21578 +#: .././config.py:22139 msgid "Show errors/warnings in tooltips (but not in the Videos tab)" msgstr "" -#: .././config.py:21596 +#: .././config.py:22157 msgid "Disable the download buttons in the toolbar and the Videos tab" msgstr "" -#: .././config.py:21606 +#: .././config.py:22167 msgid "In the Progress tab, hide finished downloads" msgstr "" -#: .././config.py:21615 +#: .././config.py:22176 msgid "Show downloads in reverse order" msgstr "" -#: .././config.py:21623 +#: .././config.py:22185 +msgid "In the Progress/Classic Mode tabs, remember the width of (some) columns" +msgstr "" + +#: .././config.py:22195 msgid "When Tartube starts, automatically open the Classic Mode tab" msgstr "" -#: .././config.py:21637 +#: .././config.py:22209 msgid "" "In the Classic Mode tab, when adding URLs, remove duplicates rather than " "retaining them" msgstr "" -#: .././config.py:21651 +#: .././config.py:22223 msgid "" "In the Errors/Warnings tab, don't reset the tab title when it is clicked" msgstr "" -#: .././config.py:21678 +#: .././config.py:22246 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Videos" +msgstr "" + +#: .././config.py:22254 msgid "Video Index (left side of the Videos tab)" msgstr "" -#: .././config.py:21683 +#: .././config.py:22259 msgid "Show a 'Custom download all' button" msgstr "" -#: .././config.py:21691 +#: .././config.py:22267 msgid "While checking/downloading videos, show free disk space" msgstr "" -#: .././config.py:21699 +#: .././config.py:22275 msgid "Allow each row to be marked for checking/downloading" msgstr "" -#: .././config.py:21707 +#: .././config.py:22283 msgid "Show smaller icons" msgstr "" -#: .././config.py:21716 +#: .././config.py:22292 msgid "" "Show detailed statistics about the videos in each channel / playlist / folder" msgstr "" -#: .././config.py:21727 +#: .././config.py:22303 msgid "" "After clicking on a folder, automatically expand/collapse the tree around it" msgstr "" -#: .././config.py:21738 +#: .././config.py:22314 msgid "Expand the whole tree, not just the level beneath the clicked folder" msgstr "" -#: .././config.py:21759 +#: .././config.py:22335 msgid "Video Catalogue (right side of the Videos tab)" msgstr "" -#: .././config.py:21765 +#: .././config.py:22341 msgid "Show 'today' and 'yesterday' as the date, when possible" msgstr "" -#: .././config.py:21773 +#: .././config.py:22349 msgid "Show livestreams with a different background colour" msgstr "Show livestreams with a different background color" -#: .././config.py:21781 +#: .././config.py:22357 msgid "Use same background colours for livestream and debut videos" msgstr "Use same background colors for livestream and debut videos" -#: .././config.py:21802 +#: .././config.py:22378 msgid "Channel and playlist names are clickable (grid mode only)" msgstr "" -#: .././config.py:21810 +#: .././config.py:22386 msgid "Show nicknames (not video file names)" msgstr "" -#: .././config.py:21830 +#: .././config.py:22407 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Drag" +msgstr "" + +#: .././config.py:22410 msgid "_Drag" msgstr "" -#: .././config.py:21834 +#: .././config.py:22414 msgid "Drag and drop preferences" msgstr "" -#: .././config.py:21840 +#: .././config.py:22420 msgid "When dragging and dropping videos to an external application..." msgstr "" -#: .././config.py:21846 +#: .././config.py:22426 msgid "Transfer the video's full file path" msgstr "" -#: .././config.py:21854 +#: .././config.py:22434 msgid "Transfer the video's source URL" msgstr "" -#: .././config.py:21862 +#: .././config.py:22442 msgid "Transfer the video's name" msgstr "" -#: .././config.py:21870 +#: .././config.py:22450 msgid "Transfer the thumbnail's full file path" msgstr "" -#: .././config.py:21891 +#: .././config.py:22471 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Tray" +msgstr "" + +#: .././config.py:22475 msgid "_Tray" msgstr "" -#: .././config.py:21897 +#: .././config.py:22481 msgid "System tray preferences" msgstr "" -#: .././config.py:21902 +#: .././config.py:22486 msgid "Show Tartube in the system tray" msgstr "" -#: .././config.py:21911 +#: .././config.py:22495 msgid "Start Tartube in the system tray" msgstr "" -#: .././config.py:21922 +#: .././config.py:22506 msgid "Close to the tray, rather than closing the application" msgstr "" -#: .././config.py:21934 +#: .././config.py:22518 msgid "" "After closing to the tray, restore the window's position (does not work on " "Wayland)" msgstr "" -#: .././config.py:21977 +#: .././config.py:22561 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Dialogues" +msgstr "" + +#: .././config.py:22565 msgid "D_ialogues" msgstr "" -#: .././config.py:21983 +#: .././config.py:22571 msgid "Dialogue window preferences" msgstr "" -#: .././config.py:21988 +#: .././config.py:22576 msgid "When adding channels/playlists, keep the dialogue window open" msgstr "" -#: .././config.py:21998 +#: .././config.py:22586 msgid "When the dialogue window opens, add URLs from the system clipboard" msgstr "" -#: .././config.py:22019 +#: .././config.py:22607 msgid "When adding YouTube channels, remind the user to copy the correct URL" msgstr "" -#: .././config.py:22031 +#: .././config.py:22619 msgid "Debugging preferences" msgstr "" -#: .././config.py:22037 +#: .././config.py:22625 msgid "" "Temporarily disable message dialogue windows (display messages in terminal " "instead)" msgstr "" -#: .././config.py:22061 +#: .././config.py:22637 +msgid "" +"N.B. Tartube shows a dialogue window after checking or downloading videos" +msgstr "" + +#: .././config.py:22645 +msgid "That dialogue window can be disabled in the Operations > Actions tab" +msgstr "" + +#: .././config.py:22665 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Colours" +msgstr "" + +#: .././config.py:22669 msgid "_Colours" msgstr "" -#: .././config.py:22068 +#: .././config.py:22676 msgid "Video catalogue colour preferences" msgstr "" -#: .././config.py:22076 +#: .././config.py:22684 msgid "Waiting livestreams" msgstr "" -#: .././config.py:22082 +#: .././config.py:22690 msgid "Broadcasting livestreams" msgstr "" -#: .././config.py:22088 +#: .././config.py:22696 msgid "Waiting debut videos" msgstr "" -#: .././config.py:22094 +#: .././config.py:22702 msgid "Broadcasting debut videos" msgstr "" -#: .././config.py:22100 +#: .././config.py:22708 msgid "Selected videos" msgstr "" -#: .././config.py:22106 +#: .././config.py:22714 msgid "Selected waiting videos" msgstr "" -#: .././config.py:22112 +#: .././config.py:22720 msgid "Selected broadcasting videos" msgstr "" -#: .././config.py:22118 +#: .././config.py:22726 msgid "Drag and Drop notification" msgstr "" -#: .././config.py:22124 +#: .././config.py:22732 msgid "Drag and Drop background 1" msgstr "" -#: .././config.py:22130 +#: .././config.py:22738 msgid "Drag and Drop background 2" msgstr "" -#: .././config.py:22161 +#: .././config.py:22769 msgid "Custom colour:" msgstr "" -#: .././config.py:22184 +#: .././config.py:22792 msgid "Default colour:" msgstr "" -#: .././config.py:22221 +#: .././config.py:22829 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Errors/Warnings" +msgstr "" + +#: .././config.py:22834 msgid "_Errors/Warnings" msgstr "" -#: .././config.py:22227 +#: .././config.py:22840 msgid "Errors/Warnings tab preferences" msgstr "" -#: .././config.py:22327 +#: .././config.py:22940 +msgid "TRANSLATOR'S NOTE: System preferences > Windows > Websites" +msgstr "" + +#: .././config.py:22944 msgid "_Websites" msgstr "" -#: .././config.py:22334 +#: .././config.py:22951 msgid "YouTube error/warning preferences" msgstr "" -#: .././config.py:22339 +#: .././config.py:22956 msgid "Ignore YouTube copyright errors" msgstr "" -#: .././config.py:22347 +#: .././config.py:22964 msgid "Ignore YouTube age-restriction errors" msgstr "" -#: .././config.py:22355 +#: .././config.py:22972 msgid "Ignore YouTube deletion by uploader errors" msgstr "" -#: .././config.py:22363 +#: .././config.py:22980 msgid "Ignore YouTube payment errors" msgstr "" -#: .././config.py:22372 +#: .././config.py:22989 msgid "General preferences" msgstr "" -#: .././config.py:22378 +#: .././config.py:22995 msgid "" "Ignore any errors/warnings which match lines in this list (applies to all " "websites)" msgstr "" -#: .././config.py:22392 +#: .././config.py:23009 msgid "These are ordinary strings" msgstr "" -#: .././config.py:22399 +#: .././config.py:23016 msgid "These are regular expressions (regexes)" msgstr "" +#: .././config.py:23045 +msgid "TRANSLATOR'S NOTE: System preferences > Scheduling" +msgstr "" + #. Add this tab... -#: .././config.py:22428 +#: .././config.py:23049 msgid "_Scheduling" msgstr "" -#: .././config.py:22455 +#: .././config.py:23072 +msgid "TRANSLATOR'S NOTE: System preferences > Scheduling > Start" +msgstr "" + +#: .././config.py:23080 msgid "Scheduled download preferences" msgstr "" -#: .././config.py:22476 +#: .././config.py:23101 msgid "Priority" msgstr "" -#: .././config.py:22476 +#: .././config.py:23101 msgid "Whole" msgstr "" -#: .././config.py:22476 +#: .././config.py:23101 msgid "Shutdown" msgstr "" -#: .././config.py:22476 +#: .././config.py:23101 msgid "D/L All" msgstr "" -#: .././config.py:22477 +#: .././config.py:23102 msgid "Join mode" msgstr "" -#: .././config.py:22531 .././config.py:23585 .././config.py:25665 -#: .././config.py:25938 +#: .././config.py:23156 .././config.py:24238 .././config.py:26388 +#: .././config.py:26669 msgid "Edit" msgstr "" -#: .././config.py:22603 .././formats.py:1226 +#: .././config.py:23228 .././formats.py:1227 msgid "Custom" msgstr "" -#: .././config.py:22646 +#: .././config.py:23272 +msgid "TRANSLATOR'S NOTE: System preferences > Scheduling > Stop" +msgstr "" + +#: .././config.py:23275 msgid "S_top" msgstr "" -#: .././config.py:22651 +#: .././config.py:23280 msgid "Scheduled stop preferences" msgstr "" -#: .././config.py:22656 +#: .././config.py:23285 msgid "Stop all download operations after this much time" msgstr "" -#: .././config.py:22704 +#: .././config.py:23333 msgid "Stop all download operations after this many videos" msgstr "" -#: .././config.py:22731 +#: .././config.py:23360 msgid "Stop all download operations after this much disk space" msgstr "" -#: .././config.py:22774 +#: .././config.py:23403 msgid "" "N.B. Disk space is estimated. This setting does not apply to simulated " "downloads" msgstr "" -#: .././config.py:22886 +#: .././config.py:23418 +msgid "TRANSLATOR'S NOTE: System preferences > Operations" +msgstr "" + +#: .././config.py:23457 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Limits" +msgstr "" + +#: .././config.py:23523 msgid "Overriding video format options, limit video resolution to" msgstr "" -#: .././config.py:22908 +#: .././config.py:23545 msgid "Alternative performance limits" msgstr "" -#: .././config.py:22966 +#: .././config.py:23603 msgid "Alternative limits apply between" msgstr "" -#: .././config.py:23006 +#: .././config.py:23643 msgid "and" msgstr "" -#: .././config.py:23034 +#: .././config.py:23671 msgid "On days" msgstr "" -#: .././config.py:23067 +#: .././config.py:23704 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Stop" +msgstr "" + +#: .././config.py:23708 msgid "_Stop" msgstr "" -#: .././config.py:23074 +#: .././config.py:23715 msgid "Time-saving settings" msgstr "" -#: .././config.py:23080 +#: .././config.py:23721 msgid "" "Stop checking/downloading a channel/playlist when it finds videos you " "already have" msgstr "" -#: .././config.py:23091 +#: .././config.py:23732 msgid "Stop after this many videos (when checking)" msgstr "" -#: .././config.py:23106 +#: .././config.py:23747 msgid "Stop after this many videos (when downloading)" msgstr "" -#: .././config.py:23149 +#: .././config.py:23783 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Downloads" +msgstr "" + +#: .././config.py:23794 msgid "Download operation preferences" msgstr "" -#: .././config.py:23155 +#: .././config.py:23800 msgid "Automatically update downloader before every download operation" msgstr "" -#: .././config.py:23167 +#: .././config.py:23812 msgid "Automatically save files at the end of all operations" msgstr "" -#: .././config.py:23177 +#: .././config.py:23822 msgid "For simulated downloads, don't check a video in a folder more than once" msgstr "" -#: .././config.py:23188 +#: .././config.py:23833 msgid "If a download stalls, restart it after this many minutes" msgstr "" -#: .././config.py:23210 +#: .././config.py:23855 msgid "Maximum restarts after a stalled download (0 for no maximum)" msgstr "" -#: .././config.py:23243 +#: .././config.py:23888 msgid "Apply a timeout (in minutes) when checking a video" msgstr "" -#: .././config.py:23255 +#: .././config.py:23900 msgid "Without comments" msgstr "" -#: .././config.py:23271 +#: .././config.py:23916 msgid "With comments" msgstr "" -#: .././config.py:23304 +#: .././config.py:23949 msgid "Assign anonymous error/warning messages to the most probable video" msgstr "" -#: .././config.py:23315 +#: .././config.py:23960 msgid "Add censored, age-restricted and other blocked videos to the database" msgstr "" -#: .././config.py:23326 +#: .././config.py:23971 msgid "" "Extract playlist IDs from each video, and store them in the parent channel/" "playlist" msgstr "" -#: .././config.py:23337 +#: .././config.py:23982 msgid "" "Convert .webp thumbnails into .jpg thumbnails (using FFmpeg) after " "downloading them" msgstr "" -#: .././config.py:23348 +#: .././config.py:23993 msgid "" "...but don't delete the original thumbnails (enable before embedding " "thumbnails in videos)" msgstr "" -#: .././config.py:23380 +#: .././config.py:24025 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Ignore" +msgstr "" + +#: .././config.py:24029 msgid "_Ignore" msgstr "" -#: .././config.py:23387 +#: .././config.py:24036 msgid "Ignore downloader errors/warnings" msgstr "" -#: .././config.py:23392 +#: .././config.py:24041 msgid "TRANSLATOR'S NOTE: These error messages are always in English" msgstr "" -#: .././config.py:23396 +#: .././config.py:24045 msgid "Ignore 'Child process exited with non-zero code' errors" msgstr "" -#: .././config.py:23405 +#: .././config.py:24054 msgid "" "Ignore 'Unable to download video data' and 'Unable to extract video data' " "errors" msgstr "" -#: .././config.py:23415 +#: .././config.py:24064 msgid "Ignore 'Did not get any data blocks' errors" msgstr "" -#: .././config.py:23424 +#: .././config.py:24073 msgid "Ignore 'Requested formats are incompatible for merge' warnings" msgstr "" -#: .././config.py:23433 +#: .././config.py:24082 msgid "Ignore 'No video formats found' errors" msgstr "" -#: .././config.py:23441 +#: .././config.py:24090 msgid "Ignore 'There are no annotations to write' warnings" msgstr "" -#: .././config.py:23449 +#: .././config.py:24098 msgid "Ignore 'Video doesn't have subtitles' warnings" msgstr "" -#: .././config.py:23457 +#: .././config.py:24106 msgid "Ignore 'A channel/user page was given' warnings" msgstr "" -#: .././config.py:23465 +#: .././config.py:24114 msgid "Ignore 'There's no playlist description to write' warnings" msgstr "" -#: .././config.py:23474 +#: .././config.py:24123 msgid "" "Ignore 'Unable to download video thumbnail: HTTP Error 404: Not Fuund' " "warnings" msgstr "" -#: .././config.py:23496 +#: .././config.py:24146 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Custom" +msgstr "" + +#: .././config.py:24149 msgid "_Custom" msgstr "" -#: .././config.py:23501 +#: .././config.py:24154 msgid "Custom downloads" msgstr "" -#: .././config.py:23522 .././config.py:25600 +#: .././config.py:24175 .././config.py:26323 msgid "Classic Mode" msgstr "" -#: .././config.py:23594 .././config.py:25674 .././config.py:25947 +#: .././config.py:24247 .././config.py:26397 .././config.py:26678 msgid "Export" msgstr "" -#: .././config.py:23603 .././config.py:25683 .././config.py:25956 +#: .././config.py:24256 .././config.py:26406 .././config.py:26687 msgid "Clone" msgstr "" -#: .././config.py:23612 .././config.py:25692 +#: .././config.py:24265 .././config.py:26415 msgid "Use in Classic Mode tab" msgstr "" -#: .././config.py:23715 +#: .././config.py:24368 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Archive" +msgstr "" + +#: .././config.py:24372 msgid "_Archive" msgstr "" -#: .././config.py:23723 +#: .././config.py:24380 msgid "Archive file preferences" msgstr "" -#: .././config.py:23729 +#: .././config.py:24386 msgid "" "Allow downloader to create its own archive file (so deleted videos are not " "re-downloaded)" msgstr "" -#: .././config.py:23748 +#: .././config.py:24405 msgid "Store the archive file in the same location as the video" msgstr "" -#: .././config.py:23756 +#: .././config.py:24413 msgid "" "N.B. Archive files are never stored in system folders like 'Unsorted Videos'" msgstr "" -#: .././config.py:23765 +#: .././config.py:24422 msgid "Store the archive file in Tartube's data directory" msgstr "" -#: .././config.py:23776 +#: .././config.py:24433 msgid "Store the archive file at this location:" msgstr "" -#: .././config.py:23856 +#: .././config.py:24513 msgid "Classic Mode tab preferences" msgstr "" -#: .././config.py:23862 +#: .././config.py:24519 msgid "Create an archive file when downloading from the Classic Mode tab" msgstr "" -#: .././config.py:23873 +#: .././config.py:24530 msgid "" "This setting should only be enabled when downloading channels and playlists" msgstr "" -#: .././config.py:23893 +#: .././config.py:24550 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Livestreams" +msgstr "" + +#: .././config.py:24554 msgid "Li_vestreams" msgstr "" -#: .././config.py:23901 +#: .././config.py:24562 msgid "Livestream preferences (compatible websites only)" msgstr "" -#: .././config.py:23907 +#: .././config.py:24568 msgid "Do not check/download any livestream [yt-dlp only]" msgstr "" -#: .././config.py:23918 +#: .././config.py:24579 msgid "Detect livestreams announced within this many days" msgstr "" -#: .././config.py:23933 +#: .././config.py:24594 msgid "How often to check the status of livestreams (in minutes)" msgstr "" -#: .././config.py:23952 +#: .././config.py:24613 msgid "Check more frequently when a livestream is due to start" msgstr "" -#: .././config.py:23995 +#: .././config.py:24656 msgid "Broadcasting livestream preferences (compatible websites only)" msgstr "" -#: .././config.py:24003 +#: .././config.py:24664 msgid "" "These settings apply when downloading videos individually, for example with " "a custom download" msgstr "" -#: .././config.py:24014 +#: .././config.py:24675 msgid "Download using:" msgstr "" -#: .././config.py:24029 +#: .././config.py:24690 msgid ".m3u manifest" msgstr "" -#: .././config.py:24057 +#: .././config.py:24718 msgid "Replace a partially-downloaded livestream" msgstr "" -#: .././config.py:24064 +#: .././config.py:24725 msgid "Resume a partially-downloaded livestream" msgstr "" -#: .././config.py:24098 +#: .././config.py:24759 msgid "" "Bypass usual limits on simultaneous downloads, so that all livestreams can " "be downloaded" msgstr "" -#: .././config.py:24111 +#: .././config.py:24772 msgid "Timeout after this many minutes of inactivity" msgstr "" -#: .././config.py:24127 +#: .././config.py:24788 msgid "" "When the livestream download is stopped manually, mark the video as " "downloaded" msgstr "" -#: .././config.py:24141 +#: .././config.py:24802 msgid "" "Check a video before the livestream download (ensures metadata is downloaded)" msgstr "" -#: .././config.py:24155 +#: .././config.py:24816 msgid "N.B. This setting is ignored in the Classic Mode tab" msgstr "" -#: .././config.py:24172 +#: .././config.py:24833 msgid "not recommended" msgstr "" -#: .././config.py:24189 +#: .././config.py:24850 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Actions" +msgstr "" + +#: .././config.py:24854 msgid "Ac_tions" msgstr "" -#: .././config.py:24197 +#: .././config.py:24862 msgid "Livestream actions (can be toggled for individual videos)" msgstr "" -#: .././config.py:24204 +#: .././config.py:24869 msgid "(currently disabled on MS Windows)" msgstr "" -#: .././config.py:24209 +#: .././config.py:24874 msgid "When a livestream starts, show a desktop notification" msgstr "" -#: .././config.py:24223 +#: .././config.py:24888 msgid "When a livestream starts, sound an alarm" msgstr "" -#: .././config.py:24246 +#: .././config.py:24911 msgid "Plays the selected sound effect" msgstr "" -#: .././config.py:24253 +#: .././config.py:24918 msgid "When a livestream starts, open it in the system's web browser" msgstr "" -#: .././config.py:24265 +#: .././config.py:24930 msgid "When a livestream starts, begin downloading it immediately" msgstr "" -#: .././config.py:24291 +#: .././config.py:24956 msgid "Desktop notification preferences" msgstr "" -#: .././config.py:24297 +#: .././config.py:24962 msgid "Show a dialogue window at the end of an operation" msgstr "" -#: .././config.py:24320 +#: .././config.py:24985 msgid "Don't notify the user at the end of an operation" msgstr "" -#: .././config.py:24358 +#: .././config.py:25023 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Clips" +msgstr "" + +#: .././config.py:25027 msgid "Cli_ps" msgstr "" -#: .././config.py:24365 +#: .././config.py:25034 msgid "Video clips (requires FFmpeg)" msgstr "" -#: .././config.py:24371 +#: .././config.py:25040 msgid "" "When a video is checked/downloaded, automatically extract timestamps from " "its metadata file" msgstr "" -#: .././config.py:24382 +#: .././config.py:25051 msgid "" "When a video is checked/downloaded, automatically extract timestamps from " "its description" msgstr "" -#: .././config.py:24392 +#: .././config.py:25061 msgid "If timestamps have already been extracted, replace them" msgstr "" -#: .././config.py:24404 +#: .././config.py:25073 msgid "" "If no timestamps have been extracted, try again before splitting a video" msgstr "" -#: .././config.py:24417 +#: .././config.py:25086 msgid "Format of video clip filenames" msgstr "" -#: .././config.py:24422 +#: .././config.py:25091 msgid "Number" msgstr "" -#: .././config.py:24423 +#: .././config.py:25092 msgid "Clip Title" msgstr "" -#: .././config.py:24424 +#: .././config.py:25093 msgid "Number + Clip Title" msgstr "" -#: .././config.py:24425 +#: .././config.py:25094 msgid "Clip Title + Number" msgstr "" -#: .././config.py:24426 +#: .././config.py:25095 msgid "Original Title" msgstr "" -#: .././config.py:24427 +#: .././config.py:25096 msgid "Original Title + Number" msgstr "" -#: .././config.py:24428 +#: .././config.py:25097 msgid "Original Title + Clip Title" msgstr "" -#: .././config.py:24429 +#: .././config.py:25098 msgid "Original Title + Number + Clip Title" msgstr "" -#: .././config.py:24430 +#: .././config.py:25099 msgid "Original Title + Clip Title + Number" msgstr "" -#: .././config.py:24457 +#: .././config.py:25126 msgid "Generic title for video clips" msgstr "" -#: .././config.py:24474 +#: .././config.py:25143 msgid "Move clips to the Video Clips folder" msgstr "" -#: .././config.py:24481 +#: .././config.py:25150 msgid "Keep clips with their original video" msgstr "" -#: .././config.py:24494 +#: .././config.py:25163 msgid "...but place new files inside a sub-directory" msgstr "" -#: .././config.py:24505 +#: .././config.py:25174 msgid "Add new files to Tartube's database" msgstr "" -#: .././config.py:24516 +#: .././config.py:25185 msgid "Use the original video's thumbnail" msgstr "" -#: .././config.py:24524 +#: .././config.py:25193 msgid "After splitting a video, open the destination folder" msgstr "" -#: .././config.py:24526 +#: .././config.py:25195 msgid "After splitting a video, open the destination directory" msgstr "" -#: .././config.py:24538 +#: .././config.py:25207 msgid "" "After splitting a video, delete the original (ignored for videos in channels/" "playlists)" msgstr "" -#: .././config.py:24561 +#: .././config.py:25230 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Slices" +msgstr "" + +#: .././config.py:25234 msgid "Slic_es" msgstr "" -#: .././config.py:24568 +#: .././config.py:25241 msgid "Video slices (requires FFmpeg)" msgstr "" -#: .././config.py:24574 +#: .././config.py:25247 msgid "" "While checking/downloading videos, check each video against the SponsorBlock " "server" msgstr "" -#: .././config.py:24585 +#: .././config.py:25258 msgid "When contacting the server, obfuscate each video's ID (recommended)" msgstr "" -#: .././config.py:24599 +#: .././config.py:25272 msgid "If slices have already been extracted, replace the old list" msgstr "" -#: .././config.py:24612 +#: .././config.py:25285 msgid "" "If slices have been extracted, contact the server again before removing more " "slices from the video" msgstr "" -#: .././config.py:24626 +#: .././config.py:25299 msgid "" "After removing slices from a video, reset all timestamp and slice data " "(recommended)" msgstr "" -#: .././config.py:24652 +#: .././config.py:25325 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Comments" +msgstr "" + +#: .././config.py:25329 msgid "C_omments" msgstr "" -#: .././config.py:24664 +#: .././config.py:25341 msgid "When checking videos, store comments in the metadata file" msgstr "" -#: .././config.py:24672 +#: .././config.py:25349 msgid "When downloading videos, store comments in the metadata file" msgstr "" -#: .././config.py:24680 +#: .././config.py:25357 msgid "" "Warning: fetching comments will increase the download time, perhaps by a lot!" msgstr "" -#: .././config.py:24686 +#: .././config.py:25363 msgid "Also store comments in the Tartube database" msgstr "" -#: .././config.py:24711 +#: .././config.py:25388 msgid "" "Warning: storing comments will increase the size of Tartube's datbase, " "perhaps by a lot!" msgstr "" -#: .././config.py:24738 +#: .././config.py:25408 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Mirrors" +msgstr "" + +#: .././config.py:25419 msgid "Invidious mirror" msgstr "" -#: .././config.py:24744 +#: .././config.py:25425 msgid "To find an updated list of Invidious mirrors, use any search engine!" msgstr "" -#: .././config.py:24759 +#: .././config.py:25440 msgid "Use the default Invidious mirror" msgstr "" -#: .././config.py:24774 +#: .././config.py:25455 msgid "SponsorBlock API mirror" msgstr "" -#: .././config.py:24787 +#: .././config.py:25468 msgid "Use the default SponsorBlock URL" msgstr "" -#: .././config.py:24804 +#: .././config.py:25485 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Proxies" +msgstr "" + +#: .././config.py:25489 msgid "P_roxies" msgstr "" -#: .././config.py:24810 +#: .././config.py:25495 msgid "Proxies" msgstr "" -#: .././config.py:24817 +#: .././config.py:25502 msgid "" "During a download operation, Tartube will cycle betwween the proxies in this " "list" msgstr "" -#: .././config.py:24843 +#: .././config.py:25528 +msgid "TRANSLATOR'S NOTE: System preferences > Operations > Preferences" +msgstr "" + +#: .././config.py:25532 msgid "Pre_ferences" msgstr "" -#: .././config.py:24850 +#: .././config.py:25539 msgid "URL flexibility preferences" msgstr "" -#: .././config.py:24857 +#: .././config.py:25546 msgid "" "If a video's URL represents a channel/playlist, not a video, don't download " "it" msgstr "" -#: .././config.py:24866 +#: .././config.py:25555 msgid "...or, download multiple videos into the containing folder" msgstr "" -#: .././config.py:24876 +#: .././config.py:25565 msgid "...or, create a new channel, and download the videos into that" msgstr "" -#: .././config.py:24887 +#: .././config.py:25576 msgid "...or, create a new playlist, and download the videos into that" msgstr "" -#: .././config.py:24919 +#: .././config.py:25608 msgid "Missing video preferences" msgstr "" -#: .././config.py:24925 +#: .././config.py:25614 msgid "" "Add videos which have been removed from a channel/playlist to the Missing " "Videos folder" msgstr "" -#: .././config.py:24936 +#: .././config.py:25625 msgid "Only add videos that were uploaded within this many days" msgstr "" -#: .././config.py:25010 +#: .././config.py:25674 +msgid "TRANSLATOR'S NOTE: System preferences > Downloaders" +msgstr "" + +#: .././config.py:25703 .././config.py:34501 +msgid "TRANSLATOR'S NOTE: System preferences > Downloaders > Forks" +msgstr "" + +#: .././config.py:25707 msgid "_Forks" msgstr "" -#: .././config.py:25016 +#: .././config.py:25713 msgid "Forks of youtube-dl" msgstr "" -#: .././config.py:25045 +#: .././config.py:25742 msgid "Use yt-dlp" msgstr "" -#: .././config.py:25051 +#: .././config.py:25748 msgid "Install without dependencies" msgstr "" -#: .././config.py:25052 +#: .././config.py:25749 msgid "(recommended on MS Windows)" msgstr "" -#: .././config.py:25083 +#: .././config.py:25780 msgid "Use youtube-dl" msgstr "" -#: .././config.py:25104 +#: .././config.py:25801 msgid "Other forks" msgstr "" -#: .././config.py:25112 +#: .././config.py:25809 msgid "Use this fork (e.g. youtube-dlc):" msgstr "" -#: .././config.py:25190 +#: .././config.py:25887 msgid "When using other downloaders, filter out yt-dlp download options" msgstr "" -#: .././config.py:25212 +#: .././config.py:25909 +msgid "TRANSLATOR'S NOTE: System preferences > Downloaders > File paths" +msgstr "" + +#: .././config.py:25913 msgid "File _paths" msgstr "" -#: .././config.py:25219 +#: .././config.py:25920 msgid "Downloader file paths" msgstr "" -#: .././config.py:25225 +#: .././config.py:25926 msgid "Path to the executable" msgstr "" #. (Signal connect appears below) -#: .././config.py:25231 .././config.py:25405 .././config.py:25446 -#: .././config.py:33605 +#: .././config.py:25932 .././config.py:26111 .././config.py:26152 +#: .././config.py:34518 msgid "Use default path" msgstr "" -#: .././config.py:25241 .././config.py:33619 +#: .././config.py:25942 .././config.py:34532 msgid "Use local path" msgstr "" -#: .././config.py:25247 +#: .././config.py:25948 msgid "Use custom path (not recommended on MS Windows)" msgstr "" -#: .././config.py:25249 +#: .././config.py:25950 msgid "Use custom path" msgstr "" -#: .././config.py:25261 .././config.py:33631 +#: .././config.py:25962 .././config.py:34544 msgid "Use PyPI path" msgstr "" -#: .././config.py:25321 +#: .././config.py:26022 msgid "Command for update operations" msgstr "" -#: .././config.py:25374 +#: .././config.py:26075 +msgid "TRANSLATOR'S NOTE: System preferences > Downloaders > FFmpeg / AVConv" +msgstr "" + +#: .././config.py:26080 msgid "FF_mpeg / AVConv" msgstr "" -#: .././config.py:25381 +#: .././config.py:26087 msgid "Post-processor file paths" msgstr "" -#: .././config.py:25386 +#: .././config.py:26092 msgid "" "You only need to set these paths if Tartube cannot find FFmpeg / AVConv " "automatically" msgstr "" -#: .././config.py:25393 +#: .././config.py:26099 msgid "Path to the FFmpeg executable" msgstr "" -#: .././config.py:25420 .././config.py:25524 +#: .././config.py:26126 .././config.py:26238 msgid "Install from main menu" msgstr "" -#: .././config.py:25434 +#: .././config.py:26140 msgid "Path to the AVConv executable" msgstr "" -#: .././config.py:25461 +#: .././config.py:26167 msgid "Not supported on MS Windows" msgstr "" -#: .././config.py:25489 +#: .././config.py:26195 +msgid "TRANSLATOR'S NOTE: System preferences > Downloaders > streamlink" +msgstr "" + +#: .././config.py:26198 +msgid "TRANSLATOR'S NOTE: 'streamlink' is the name of a Python module" +msgstr "" + +#: .././config.py:26203 msgid "_streamlink" msgstr "" -#: .././config.py:25496 +#: .././config.py:26210 msgid "streamlink file path" msgstr "" -#: .././config.py:25501 +#: .././config.py:26215 msgid "Path to the streamlink executable" msgstr "" -#: .././config.py:25573 +#: .././config.py:26263 +msgid "TRANSLATOR'S NOTE: System preferences > Options" +msgstr "" + +#: .././config.py:26291 +msgid "TRANSLATOR'S NOTE: System preferences > Options > Download options" +msgstr "" + +#: .././config.py:26296 msgid "_Download options" msgstr "" -#: .././config.py:25580 +#: .././config.py:26303 msgid "List of download options" msgstr "" -#: .././config.py:25600 +#: .././config.py:26323 msgid "Videos tab" msgstr "" -#: .././config.py:25601 +#: .././config.py:26324 msgid "Dropzone" msgstr "" -#: .././config.py:25601 +#: .././config.py:26324 msgid "Applied to media" msgstr "" -#: .././config.py:25802 +#: .././config.py:26525 +msgid "TRANSLATOR'S NOTE: System preferences > Options > Preferences" +msgstr "" + +#: .././config.py:26529 msgid "_Preferences" msgstr "" -#: .././config.py:25809 +#: .././config.py:26536 msgid "Download options preferences" msgstr "" -#: .././config.py:25815 +#: .././config.py:26542 msgid "" "When applying download options to something, clone the general download " "options" msgstr "" -#: .././config.py:25826 +#: .././config.py:26553 msgid "After downloading a video, destroy its download options" msgstr "" -#: .././config.py:25848 +#: .././config.py:26575 +msgid "TRANSLATOR'S NOTE: System preferences > Options > FFmpeg options" +msgstr "" + +#: .././config.py:26579 msgid "_FFmpeg options" msgstr "" -#: .././config.py:25855 +#: .././config.py:26586 msgid "List of FFmpeg options managers" msgstr "" -#: .././config.py:25875 +#: .././config.py:26606 msgid "Current" msgstr "" -#: .././config.py:25965 +#: .././config.py:26696 msgid "Use these options" msgstr "" +#: .././config.py:26786 +msgid "TRANSLATOR'S NOTE: System preferences > Output" +msgstr "" + #. Add this tab... -#: .././config.py:26055 +#: .././config.py:26790 msgid "O_utput" msgstr "" -#: .././config.py:26079 +#: .././config.py:26814 +msgid "TRANSLATOR'S NOTE: System preferences > Output > Output tab" +msgstr "" + +#: .././config.py:26818 msgid "_Output tab" msgstr "" -#: .././config.py:26086 +#: .././config.py:26825 msgid "Output tab preferences" msgstr "" -#: .././config.py:26091 +#: .././config.py:26830 msgid "Display downloader system commands in the Output tab" msgstr "" -#: .././config.py:26100 +#: .././config.py:26839 msgid "Display output from downloader's STDOUT in the Output tab" msgstr "" -#: .././config.py:26109 .././config.py:26276 +#: .././config.py:26848 .././config.py:27019 msgid "...but don't write each video's JSON data" msgstr "" -#: .././config.py:26120 .././config.py:26287 +#: .././config.py:26859 .././config.py:27030 msgid "...but don't write each video's download progress" msgstr "" -#: .././config.py:26139 +#: .././config.py:26878 msgid "Display output from downloader's STDERR in the Output tab" msgstr "" -#: .././config.py:26148 +#: .././config.py:26887 msgid "Limit the size of Output tab pages to" msgstr "" -#: .././config.py:26169 +#: .././config.py:26908 msgid "Empty pages in the Output tab at the start of every operation" msgstr "" -#: .././config.py:26179 +#: .././config.py:26918 msgid "" "Show a summary of active threads (changes are applied when Tartube restarts)" msgstr "" -#: .././config.py:26191 +#: .././config.py:26930 msgid "During update/info operations, automatically switch to the Output tab" msgstr "" -#: .././config.py:26202 +#: .././config.py:26941 msgid "During a refresh operation, show all matching videos in the Output tab" msgstr "" -#: .././config.py:26213 +#: .././config.py:26952 msgid "...also show all non-matching videos" msgstr "" -#: .././config.py:26247 +#: .././config.py:26986 +msgid "TRANSLATOR'S NOTE: System preferences > Output > Terminal window" +msgstr "" + +#: .././config.py:26990 msgid "_Terminal window" msgstr "" -#: .././config.py:26253 +#: .././config.py:26996 msgid "Terminal window preferences" msgstr "" -#: .././config.py:26258 +#: .././config.py:27001 msgid "Write downloader system commands to the terminal window" msgstr "" -#: .././config.py:26267 +#: .././config.py:27010 msgid "Write output from downloader's STDOUT to the terminal window" msgstr "" -#: .././config.py:26309 +#: .././config.py:27052 msgid "Write output from downloader's STDERR to the terminal window" msgstr "" -#: .././config.py:26333 +#: .././config.py:27077 +msgid "TRANSLATOR'S NOTE: System preferences > Output > Both" +msgstr "" + +#: .././config.py:27080 msgid "_Both" msgstr "" -#: .././config.py:26339 +#: .././config.py:27086 msgid "" "Special preferences (applies to both the Output tab and the terminal window)" msgstr "" -#: .././config.py:26346 +#: .././config.py:27093 msgid "Downloader writes verbose output (youtube-dl debugging mode)" msgstr "" +#: .././config.py:28051 .././config.py:30064 .././config.py:30123 +#: .././config.py:30975 .././config.py:32268 .././config.py:32360 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > Files " +"> Update" +msgstr "" + #. Confirm the result -#: .././config.py:27319 .././config.py:29294 .././config.py:29351 -#: .././config.py:30176 .././config.py:31435 .././config.py:31522 -#: .././refresh.py:489 .././refresh.py:597 +#: .././config.py:28071 .././config.py:30097 .././config.py:30159 +#: .././config.py:30999 .././config.py:32294 .././config.py:32386 +#: .././refresh.py:496 .././refresh.py:604 msgid "Total videos:" msgstr "" -#: .././config.py:27320 .././config.py:29296 .././config.py:29353 -#: .././config.py:30177 .././config.py:31436 .././config.py:31523 +#: .././config.py:28072 .././config.py:30099 .././config.py:30161 +#: .././config.py:31000 .././config.py:32295 .././config.py:32387 msgid "Videos updated:" msgstr "" -#: .././config.py:27524 +#: .././config.py:28238 .././config.py:28347 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > Files " +"> URLs" +msgstr "" + +#: .././config.py:28282 #, python-brace-format msgid "There is already a channel, playlist or folder called '{0}'" msgstr "" -#: .././config.py:27547 +#: .././config.py:28305 msgid "Are you sure you want to rename this channel?" msgstr "" -#: .././config.py:27549 +#: .././config.py:28307 msgid "Are you sure you want to rename this playlist?" msgstr "" -#: .././config.py:27551 +#: .././config.py:28309 msgid "Are you sure you want to rename this folder?" msgstr "" -#: .././config.py:27591 +#: .././config.py:28354 msgid "That is not a valid URL" msgstr "" -#: .././config.py:27614 +#: .././config.py:28377 msgid "Are you sure you want to update the URL?" msgstr "" -#: .././config.py:27661 +#: .././config.py:28408 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by:System preferences > Files " +"> URLs" +msgstr "" + +#: .././config.py:28429 msgid "The regex is invalid" msgstr "" -#: .././config.py:27711 +#: .././config.py:28479 msgid "Are you sure you want to update these URLs?" msgstr "" -#: .././config.py:27931 +#: .././config.py:28679 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Operations > Custom" +msgstr "" + +#: .././config.py:28704 msgid "The default custom download manager cannot be deleted" msgstr "" -#: .././config.py:27941 +#: .././config.py:28714 msgid "Are you sure you want to delete this custom download manager?" msgstr "" -#: .././config.py:28212 +#: .././config.py:28958 .././config.py:29079 .././config.py:29129 +#: .././config.py:29321 .././config.py:29809 .././config.py:34403 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > Files " +"> Database" +msgstr "" + +#: .././config.py:28990 msgid "Are you sure you want to create a new database at this location?" msgstr "" -#: .././config.py:28319 +#: .././config.py:29102 msgid "Are you sure you want to forget this database?" msgstr "" -#: .././config.py:28354 +#: .././config.py:29142 msgid "Are you sure you want to forget all databases except the current one?" msgstr "" -#: .././config.py:28557 +#: .././config.py:29350 msgid "No database exists at this location:" msgstr "" -#: .././config.py:28559 +#: .././config.py:29352 msgid "Do you want to create a new one?" msgstr "" -#: .././config.py:29017 +#: .././config.py:29815 msgid "Select a Tartube database file" msgstr "" -#: .././config.py:29039 +#: .././config.py:29837 msgid "This file is not loadable (might be corrupted)" msgstr "" -#: .././config.py:29050 +#: .././config.py:29848 msgid "This file does is not compatible with Tartube" msgstr "" -#: .././config.py:29060 +#: .././config.py:29858 msgid "This file was loaded, but is empty" msgstr "" -#: .././config.py:29528 +#: .././config.py:30316 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Options > FFmpeg options" +msgstr "" + +#: .././config.py:30341 msgid "The current options manager cannot be deleted" msgstr "" -#: .././config.py:29538 .././config.py:30812 +#: .././config.py:30351 .././config.py:31645 msgid "Are you sure you want to delete this options manager?" msgstr "" -#: .././config.py:29732 .././config.py:30230 .././config.py:32323 +#: .././config.py:30536 .././config.py:33210 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Windows > Main Window" +msgstr "" + +#: .././config.py:30550 .././config.py:31058 .././config.py:33222 msgid "The new setting will be applied when Tartube restarts" msgstr "" -#: .././config.py:30802 +#: .././config.py:31026 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"General > Application" +msgstr "" + +#: .././config.py:31610 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Options > Download options" +msgstr "" + +#: .././config.py:31635 msgid "The default options manager cannot be deleted" msgstr "" -#: .././config.py:31911 +#: .././config.py:32767 .././config.py:32815 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Scheduling > Start" +msgstr "" + +#: .././config.py:32780 msgid "There is already a scheduled download with that name" msgstr "" -#: .././config.py:31958 +#: .././config.py:32832 msgid "Are you sure you want to delete this scheduled download?" msgstr "" -#: .././config.py:32143 +#: .././config.py:33017 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Operations > Archive" +msgstr "" + +#: .././config.py:33022 msgid "Select the location of the archive file" msgstr "" -#: .././config.py:32176 +#: .././config.py:33055 .././config.py:33093 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Downloaders > FFmpeg / AVConv" +msgstr "" + +#: .././config.py:33060 msgid "Please select the AVConv executable" msgstr "" -#: .././config.py:32209 +#: .././config.py:33098 msgid "Please select the FFmpeg executable" msgstr "" -#: .././config.py:32242 +#: .././config.py:33131 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Downloaders > streamlink" +msgstr "" + +#: .././config.py:33136 msgid "Please select the streamlink executable" msgstr "" -#: .././config.py:33355 +#: .././config.py:34253 +msgid "" +"TRANSLATOR'S NOTE: Dialogue window, generated by: System preferences > " +"Downloaders > File paths" +msgstr "" + +#: .././config.py:34259 msgid "Select the youtube-dl-compatible executable" msgstr "" -#: .././config.py:33527 +#: .././config.py:34436 msgid "Database file not loaded" msgstr "" -#: .././config.py:33547 +#: .././config.py:34456 msgid "Did not try to load the database file" msgstr "" -#: .././config.py:33572 +#: .././config.py:34481 msgid "Database file loaded" msgstr "" @@ -9013,11 +10231,11 @@ msgstr "" msgid "Unrecognised download item ID" msgstr "" -#: .././downloads.py:3506 .././downloads.py:8472 +#: .././downloads.py:3506 .././downloads.py:8476 msgid "Download did not start" msgstr "" -#: .././downloads.py:3512 .././downloads.py:8478 .././info.py:310 +#: .././downloads.py:3512 .././downloads.py:8482 .././info.py:310 #: .././updates.py:270 .././updates.py:382 .././updates.py:495 #: .././updates.py:665 msgid "Child process exited with non-zero code: {}" @@ -9036,77 +10254,77 @@ msgstr "" msgid "Simulated download of video with unprintable characters" msgstr "" -#: .././downloads.py:6640 +#: .././downloads.py:6644 msgid "No timestamps defined in video's timestamp list" msgstr "" -#: .././downloads.py:6658 +#: .././downloads.py:6662 msgid "" "FAILED: Can't create the destination folder either because a folder with the " "same name already exists, or because new folders can't be added to the " "parent folder" msgstr "" -#: .././downloads.py:6796 .././downloads.py:7058 +#: .././downloads.py:6800 .././downloads.py:7062 msgid "FAILED: Clip download did not start" msgstr "" -#: .././downloads.py:6804 .././downloads.py:7066 +#: .././downloads.py:6808 .././downloads.py:7070 msgid "FAILED: Child process exited with non-zero code: {}" msgstr "" -#: .././downloads.py:6911 +#: .././downloads.py:6915 msgid "No slices defined in video's slice list" msgstr "" -#: .././downloads.py:7090 +#: .././downloads.py:7094 msgid "FAILED: One or more clips were not downloaded" msgstr "" -#: .././downloads.py:7187 +#: .././downloads.py:7191 msgid "FAILED: Can't concatenate clips" msgstr "" -#: .././downloads.py:7208 +#: .././downloads.py:7212 msgid "" "FAILED: Clips were concatenated, but could not move the output file out of " "the temporary directory" msgstr "" -#: .././downloads.py:7328 +#: .././downloads.py:7332 msgid "Failed to copy the original video's thumbnail" msgstr "" -#: .././downloads.py:7506 +#: .././downloads.py:7510 msgid "FAILED: Can't create a temporary folder for video clips" msgstr "" #. There are currently three download methods, specified by self.dl_mode -#: .././downloads.py:8231 +#: .././downloads.py:8235 msgid "Tartube is starting the livestream download" msgstr "" -#: .././downloads.py:8255 +#: .././downloads.py:8259 msgid "Invalid livestream download mode" msgstr "" -#: .././downloads.py:8304 +#: .././downloads.py:8308 msgid "" "Incomplete livestream download detected; removing the .part component from " "the output file" msgstr "" -#: .././downloads.py:8319 +#: .././downloads.py:8323 msgid "" "Incomplete livestream download detected; to complete the download, right-" "click the video and select 'Finalise livestream'" msgstr "" -#: .././downloads.py:8549 .././downloads.py:9094 +#: .././downloads.py:8553 .././downloads.py:9100 msgid "Failed to download the .m3u manifest" msgstr "" -#: .././downloads.py:8987 +#: .././downloads.py:8991 msgid "Downloaded the .m3u manifest, now downloading the livestream..." msgstr "" @@ -9115,297 +10333,297 @@ msgstr "" #. English is top of the list, because it's the default setting in #. options.OptionsManager #. NB These values must not contain square brackets [...] -#: .././formats.py:84 +#: .././formats.py:85 msgid "English" msgstr "" -#: .././formats.py:126 +#: .././formats.py:127 msgid "Dutch" msgstr "" -#: .././formats.py:134 +#: .././formats.py:135 msgid "French" msgstr "" -#: .././formats.py:176 +#: .././formats.py:177 msgid "Korean" msgstr "" -#: .././formats.py:221 +#: .././formats.py:222 msgid "Russian" msgstr "" -#: .././formats.py:239 +#: .././formats.py:240 msgid "Spanish" msgstr "" -#: .././formats.py:254 +#: .././formats.py:255 msgid "Turkish" msgstr "" -#: .././formats.py:262 +#: .././formats.py:263 msgid "Vietnamese" msgstr "" -#: .././formats.py:446 +#: .././formats.py:447 msgid "seconds" msgstr "" -#: .././formats.py:447 +#: .././formats.py:448 msgid "minutes" msgstr "" -#: .././formats.py:448 +#: .././formats.py:449 msgid "hours" msgstr "" -#: .././formats.py:450 +#: .././formats.py:451 msgid "weeks" msgstr "" -#: .././formats.py:451 +#: .././formats.py:452 msgid "years" msgstr "" -#: .././formats.py:468 +#: .././formats.py:469 msgid "Every day" msgstr "" -#: .././formats.py:469 +#: .././formats.py:470 msgid "Weekdays" msgstr "" -#: .././formats.py:470 +#: .././formats.py:471 msgid "Weekends" msgstr "" -#: .././formats.py:471 +#: .././formats.py:472 msgid "Monday" msgstr "" -#: .././formats.py:472 +#: .././formats.py:473 msgid "Tuesday" msgstr "" -#: .././formats.py:473 +#: .././formats.py:474 msgid "Wednesday" msgstr "" -#: .././formats.py:474 +#: .././formats.py:475 msgid "Thursday" msgstr "" -#: .././formats.py:475 +#: .././formats.py:476 msgid "Friday" msgstr "" -#: .././formats.py:476 +#: .././formats.py:477 msgid "Saturday" msgstr "" -#: .././formats.py:477 +#: .././formats.py:478 msgid "Sunday" msgstr "" #. System folder names -#: .././formats.py:1139 +#: .././formats.py:1140 msgid "All Videos" msgstr "" -#: .././formats.py:1140 +#: .././formats.py:1141 msgid "Bookmarks" msgstr "" -#: .././formats.py:1141 +#: .././formats.py:1142 msgid "Favourite Videos" msgstr "Favorite Videos" -#: .././formats.py:1142 +#: .././formats.py:1143 msgid "Livestreams" msgstr "" -#: .././formats.py:1143 +#: .././formats.py:1144 msgid "Missing Videos" msgstr "" -#: .././formats.py:1144 +#: .././formats.py:1145 msgid "New Videos" msgstr "" -#: .././formats.py:1145 +#: .././formats.py:1146 msgid "Recent Videos" msgstr "" -#: .././formats.py:1146 +#: .././formats.py:1147 msgid "Waiting Videos" msgstr "" -#: .././formats.py:1147 +#: .././formats.py:1148 msgid "Temporary Videos" msgstr "" -#: .././formats.py:1148 +#: .././formats.py:1149 msgid "Unsorted Videos" msgstr "" -#: .././formats.py:1149 +#: .././formats.py:1150 msgid "Video Clips" msgstr "" -#: .././formats.py:1154 +#: .././formats.py:1155 msgid "Update using default youtube-dl path" msgstr "" -#: .././formats.py:1156 +#: .././formats.py:1157 msgid "Update using local youtube-dl path" msgstr "" -#: .././formats.py:1158 +#: .././formats.py:1159 msgid "Update using custom youtube-dl path" msgstr "" -#: .././formats.py:1160 +#: .././formats.py:1161 msgid "Update using pip" msgstr "" -#: .././formats.py:1162 +#: .././formats.py:1163 msgid "Update using pip (use --no-dependencies option)" msgstr "" -#: .././formats.py:1164 +#: .././formats.py:1165 msgid "Update using pip (omit --user option)" msgstr "" -#: .././formats.py:1166 +#: .././formats.py:1167 msgid "Update using pip3" msgstr "" -#: .././formats.py:1168 +#: .././formats.py:1169 msgid "Update using pip3 (use --no-dependencies option)" msgstr "" -#: .././formats.py:1170 +#: .././formats.py:1171 msgid "Update using pip3 (omit --user option)" msgstr "" -#: .././formats.py:1172 +#: .././formats.py:1173 msgid "Update using pip3 (recommended)" msgstr "" -#: .././formats.py:1174 +#: .././formats.py:1175 msgid "Update using PyPI youtube-dl path" msgstr "" -#: .././formats.py:1176 +#: .././formats.py:1177 msgid "Windows 32-bit update (recommended)" msgstr "" -#: .././formats.py:1178 +#: .././formats.py:1179 msgid "Windows 32-bit update (use --no-dependencies option)" msgstr "" -#: .././formats.py:1180 +#: .././formats.py:1181 msgid "Windows 64-bit update (recommended)" msgstr "" -#: .././formats.py:1182 +#: .././formats.py:1183 msgid "Windows 64-bit update (use --no-dependencies option)" msgstr "" -#: .././formats.py:1184 +#: .././formats.py:1185 msgid "youtube-dl updates are disabled" msgstr "" #. Download operation stages -#: .././formats.py:1188 +#: .././formats.py:1189 msgid "Queued" msgstr "" -#: .././formats.py:1189 +#: .././formats.py:1190 msgid "Not started" msgstr "" -#: .././formats.py:1190 +#: .././formats.py:1191 msgid "Active" msgstr "" -#: .././formats.py:1191 +#: .././formats.py:1192 msgid "Paused" msgstr "" #. (not actually used) -#: .././formats.py:1192 +#: .././formats.py:1193 msgid "Completed" msgstr "" #. (not actually used) #. Sub-stages of the 'Error' stage -#: .././formats.py:1193 .././formats.py:1206 +#: .././formats.py:1194 .././formats.py:1207 msgid "Error" msgstr "" -#: .././formats.py:1194 +#: .././formats.py:1195 msgid "Stalled" msgstr "" #. Sub-stages of the 'Active' stage -#: .././formats.py:1196 +#: .././formats.py:1197 msgid "Pre-processing" msgstr "" -#: .././formats.py:1198 +#: .././formats.py:1199 msgid "Concatenating" msgstr "" -#: .././formats.py:1199 +#: .././formats.py:1200 msgid "Post-processing" msgstr "" #. Sub-stages of the 'Completed' stage -#: .././formats.py:1202 +#: .././formats.py:1203 msgid "Finished" msgstr "" -#: .././formats.py:1203 +#: .././formats.py:1204 msgid "Warning" msgstr "" -#: .././formats.py:1204 +#: .././formats.py:1205 msgid "Already downloaded" msgstr "" #. (not actually used) -#: .././formats.py:1207 +#: .././formats.py:1208 msgid "Stopped" msgstr "" -#: .././formats.py:1208 +#: .././formats.py:1209 msgid "Filesize abort" msgstr "" -#: .././formats.py:1218 +#: .././formats.py:1219 msgid "" "TRANSLATOR'S NOTE: ID refers to a video's unique ID on the website, e.g. on " "YouTube \"CS9OO0S5w2k\"" msgstr "" -#: .././formats.py:1227 +#: .././formats.py:1228 msgid "ID" msgstr "" -#: .././formats.py:1228 +#: .././formats.py:1229 msgid "Title" msgstr "" -#: .././formats.py:1229 +#: .././formats.py:1230 msgid "Quality" msgstr "" -#: .././formats.py:1230 +#: .././formats.py:1231 msgid "Autonumber" msgstr "" -#: .././formats.py:1242 +#: .././formats.py:1243 msgid "Any format" msgstr "" @@ -9477,7 +10695,7 @@ msgstr "" msgid "video" msgstr "" -#: .././media.py:639 +#: .././media.py:639 .././media.py:2245 msgid "TRANSLATOR'S NOTE: Source = video/channel/playlist URL" msgstr "" @@ -9521,22 +10739,18 @@ msgstr "" msgid "BLOCKED" msgstr "" -#: .././media.py:2236 .././refresh.py:258 .././refresh.py:535 +#: .././media.py:2236 .././refresh.py:258 .././refresh.py:542 msgid "Channel:" msgstr "" -#: .././media.py:2238 .././refresh.py:260 .././refresh.py:537 +#: .././media.py:2238 .././refresh.py:260 .././refresh.py:544 msgid "Playlist:" msgstr "" -#: .././media.py:2240 .././refresh.py:262 .././refresh.py:539 +#: .././media.py:2240 .././refresh.py:262 .././refresh.py:546 msgid "Folder:" msgstr "" -#: .././media.py:2245 -msgid "TRANSLATOR'S NOTE 2: Source = video/channel/playlist URL" -msgstr "" - #: .././media.py:2254 .././media.py:2271 msgid "File:" msgstr "" @@ -9573,214 +10787,224 @@ msgstr "" msgid "New videos found and added to the database:" msgstr "" -#: .././refresh.py:376 .././tidy.py:637 +#: .././refresh.py:383 .././tidy.py:663 msgid "Checking:" msgstr "" -#: .././refresh.py:417 .././refresh.py:591 +#: .././refresh.py:424 .././refresh.py:598 msgid "Match:" msgstr "" -#: .././refresh.py:435 +#: .././refresh.py:442 msgid "Non-match:" msgstr "" -#: .././refresh.py:483 +#: .././refresh.py:490 msgid "New video:" msgstr "" -#: .././refresh.py:490 .././refresh.py:598 +#: .././refresh.py:497 .././refresh.py:605 msgid "matched:" msgstr "" -#: .././refresh.py:491 +#: .././refresh.py:498 msgid "new:" msgstr "" -#: .././refresh.py:573 +#: .././refresh.py:580 msgid "Missing:" msgstr "" -#: .././refresh.py:599 +#: .././refresh.py:606 msgid "missing:" msgstr "" -#: .././tidy.py:255 +#: .././tidy.py:262 msgid "Starting tidy operation, tidying up whole data directory" msgstr "" -#: .././tidy.py:264 +#: .././tidy.py:271 #, python-brace-format msgid "Starting tidy operation, tidying up '{0}'" msgstr "" -#: .././tidy.py:270 .././tidy.py:282 .././tidy.py:292 .././tidy.py:302 -#: .././tidy.py:314 .././tidy.py:324 .././tidy.py:334 .././tidy.py:345 -#: .././tidy.py:355 .././tidy.py:365 .././tidy.py:375 .././tidy.py:385 -#: .././tidy.py:395 .././tidy.py:406 .././tidy.py:416 .././tidy.py:426 +#: .././tidy.py:277 .././tidy.py:289 .././tidy.py:299 .././tidy.py:309 +#: .././tidy.py:321 .././tidy.py:331 .././tidy.py:341 .././tidy.py:352 +#: .././tidy.py:362 .././tidy.py:372 .././tidy.py:382 .././tidy.py:392 +#: .././tidy.py:402 .././tidy.py:413 .././tidy.py:423 .././tidy.py:433 +#: .././tidy.py:443 msgid "YES" msgstr "" -#: .././tidy.py:272 .././tidy.py:284 .././tidy.py:294 .././tidy.py:304 -#: .././tidy.py:316 .././tidy.py:326 .././tidy.py:336 .././tidy.py:347 -#: .././tidy.py:357 .././tidy.py:367 .././tidy.py:377 .././tidy.py:387 -#: .././tidy.py:397 .././tidy.py:408 .././tidy.py:418 .././tidy.py:428 +#: .././tidy.py:279 .././tidy.py:291 .././tidy.py:301 .././tidy.py:311 +#: .././tidy.py:323 .././tidy.py:333 .././tidy.py:343 .././tidy.py:354 +#: .././tidy.py:364 .././tidy.py:374 .././tidy.py:384 .././tidy.py:394 +#: .././tidy.py:404 .././tidy.py:415 .././tidy.py:425 .././tidy.py:435 +#: .././tidy.py:445 msgid "NO" msgstr "" -#: .././tidy.py:276 +#: .././tidy.py:283 msgid "Check videos are not corrupted:" msgstr "" -#: .././tidy.py:288 +#: .././tidy.py:295 msgid "Delete corrupted videos:" msgstr "" -#: .././tidy.py:298 +#: .././tidy.py:305 msgid "Check videos do/don't exist:" msgstr "" -#: .././tidy.py:308 +#: .././tidy.py:315 msgid "Delete all video files:" msgstr "" -#: .././tidy.py:320 +#: .././tidy.py:327 msgid "Delete other video/audio files:" msgstr "" -#: .././tidy.py:330 +#: .././tidy.py:337 msgid "Remove no_URL videos from database:" msgstr "" -#: .././tidy.py:340 +#: .././tidy.py:347 msgid "Remove undownloaded duplicate videos from database:" msgstr "" -#: .././tidy.py:351 +#: .././tidy.py:358 msgid "Delete downloader archive files:" msgstr "" -#: .././tidy.py:361 +#: .././tidy.py:368 msgid "Move thumbnails into own folder:" msgstr "" -#: .././tidy.py:371 +#: .././tidy.py:378 msgid "Delete all thumbnail files:" msgstr "" -#: .././tidy.py:381 +#: .././tidy.py:388 msgid "Delete all .webp thumbnail files:" msgstr "" -#: .././tidy.py:391 +#: .././tidy.py:398 msgid "Convert .webp thumbnails to .jpg:" msgstr "" -#: .././tidy.py:401 +#: .././tidy.py:408 msgid "Move other metadata files into own folder:" msgstr "" -#: .././tidy.py:412 +#: .././tidy.py:419 msgid "Delete all description files:" msgstr "" -#: .././tidy.py:422 +#: .././tidy.py:429 msgid "Delete all metadata (JSON) files:" msgstr "" -#: .././tidy.py:432 +#: .././tidy.py:439 msgid "Delete all annotation files:" msgstr "" -#: .././tidy.py:469 +#: .././tidy.py:449 +msgid "Convert .unknown_video file extensions to .mp4:" +msgstr "" + +#: .././tidy.py:487 msgid "Tidy operation finished" msgstr "" -#: .././tidy.py:476 +#: .././tidy.py:494 msgid "Corrupted videos found:" msgstr "" -#: .././tidy.py:482 +#: .././tidy.py:500 msgid "Corrupted videos deleted:" msgstr "" -#: .././tidy.py:490 +#: .././tidy.py:508 msgid "New video files detected:" msgstr "" -#: .././tidy.py:496 +#: .././tidy.py:514 msgid "Missing video files detected:" msgstr "" -#: .././tidy.py:504 +#: .././tidy.py:522 msgid "Non-corrupted video files deleted:" msgstr "" -#: .././tidy.py:510 +#: .././tidy.py:528 msgid "Other video/audio files deleted:" msgstr "" -#: .././tidy.py:518 +#: .././tidy.py:536 msgid "No-URL videos removed from database:" msgstr "" -#: .././tidy.py:527 +#: .././tidy.py:545 msgid "Undownloaded duplicate videos removed from database:" msgstr "" -#: .././tidy.py:535 +#: .././tidy.py:553 msgid "Downloader archive files deleted:" msgstr "" -#: .././tidy.py:543 +#: .././tidy.py:561 msgid "Thumbnail files moved:" msgstr "" -#: .././tidy.py:551 +#: .././tidy.py:569 msgid "Thumbnail files deleted:" msgstr "" -#: .././tidy.py:559 +#: .././tidy.py:577 msgid ".webp thumbnail files deleted:" msgstr "" -#: .././tidy.py:567 +#: .././tidy.py:585 msgid ".webp thumbnails converted to .jpg:" msgstr "" -#: .././tidy.py:575 +#: .././tidy.py:593 msgid "Other metadata files moved:" msgstr "" -#: .././tidy.py:583 +#: .././tidy.py:601 msgid "Description files deleted:" msgstr "" -#: .././tidy.py:591 +#: .././tidy.py:609 msgid "Metadata (JSON) files deleted:" msgstr "" -#: .././tidy.py:599 +#: .././tidy.py:617 msgid "Annotation files deleted:" msgstr "" -#: .././tidy.py:739 +#: .././tidy.py:625 +msgid "File extensions converted:" +msgstr "" + +#: .././tidy.py:824 msgid "Deleted (possibly) corrupted video file:" msgstr "" -#: .././tidy.py:752 +#: .././tidy.py:837 msgid "Failed to delete (possibly) corrupted video file:" msgstr "" -#: .././tidy.py:763 .././tidy.py:1483 +#: .././tidy.py:848 .././tidy.py:1568 msgid "Video file might be corrupt:" msgstr "" -#: .././tidy.py:804 +#: .././tidy.py:889 msgid "Video file exists:" msgstr "" -#: .././tidy.py:822 +#: .././tidy.py:907 msgid "Video file doesn't exist:" msgstr "" diff --git a/locale/es/LC_MESSAGES/base.mo b/locale/es/LC_MESSAGES/base.mo index a45027a..35281c9 100644 Binary files a/locale/es/LC_MESSAGES/base.mo and b/locale/es/LC_MESSAGES/base.mo differ diff --git a/locale/es/LC_MESSAGES/base.po b/locale/es/LC_MESSAGES/base.po index 3a7b196..63f9987 100644 --- a/locale/es/LC_MESSAGES/base.po +++ b/locale/es/LC_MESSAGES/base.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-01-09 16:20+0000\n" +"POT-Creation-Date: 2023-03-01 09:14+0000\n" "PO-Revision-Date: 2022-08-09 04:20+0000\n" "Last-Translator: Equi \n" "Language-Team: Spanish