From 05e7b52a1f94a40996f2619ad9db8bbdb1518497 Mon Sep 17 00:00:00 2001 From: Julien Valroff Date: Sun, 8 Jan 2012 07:54:46 +0100 Subject: Imported Upstream version 0.4.3 --- PKG-INFO | 2 +- po/cs.po | 499 +++++----- po/da.po | 500 +++++----- po/de.po | 504 +++++----- po/es.po | 516 +++++----- po/fr.po | 526 +++++----- po/hu.po | 588 ++++++----- po/it.po | 631 ++++++------ po/nb.po | 2157 ++++++++++++++++++++--------------------- po/nl.po | 504 +++++----- po/nn.po | 500 +++++----- po/pl.po | 501 +++++----- po/rapid-photo-downloader.pot | 572 ++++++----- po/sk.po | 508 +++++----- po/sr.po | 511 +++++----- po/sv.po | 497 +++++----- rapid/ChangeLog | 71 ++ rapid/INSTALL | 2 + rapid/backupfile.py | 24 +- rapid/config.py | 2 +- rapid/copyfiles.py | 59 +- rapid/filemodify.py | 138 +++ rapid/generatename.py | 42 +- rapid/generatenameconfig.py | 31 +- rapid/glade3/about.ui | 1 + rapid/glade3/prefs.ui | 689 ++----------- rapid/glade3/rapid.ui | 153 ++- rapid/metadataexiftool.py | 225 +++++ rapid/metadataphoto.py | 27 +- rapid/metadatavideo.py | 21 +- rapid/metadataxmp.py | 198 ++++ rapid/misc.py | 2 +- rapid/preferencesdialog.py | 42 +- rapid/prefsrapid.py | 1 + rapid/rapid.py | 484 +++++++-- rapid/rpdfile.py | 92 +- rapid/scan.py | 38 +- rapid/subfolderfile.py | 80 +- rapid/thumbnail.py | 70 +- 39 files changed, 6694 insertions(+), 5314 deletions(-) create mode 100644 rapid/filemodify.py create mode 100755 rapid/metadataexiftool.py mode change 100755 => 100644 rapid/metadataphoto.py create mode 100755 rapid/metadataxmp.py diff --git a/PKG-INFO b/PKG-INFO index 6366c9d..38a16a3 100644 --- a/PKG-INFO +++ b/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: rapid-photo-downloader -Version: 0.4.2 +Version: 0.4.3 Summary: Rapid Photo Downloader for Linux Home-page: http://www.damonlynch.net/rapid Author: Damon Lynch diff --git a/po/cs.po b/po/cs.po index 92c2462..487dd1f 100644 --- a/po/cs.po +++ b/po/cs.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-28 07:09+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 17:16+0000\n" "Last-Translator: Kuvaly [LCT] \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-10-01 15:09+0000\n" -"X-Generator: Launchpad (build 14071)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Zařízení" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Velikost" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Průběh stahování" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s se neodpojilo" @@ -66,19 +66,36 @@ msgstr "%(device)s se neodpojilo" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "skenování..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "kořen souborového systému" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Stahování z %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Stáhnout" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pozastavit" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +106,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +115,176 @@ msgstr "" "Následující složka je neplatná:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Stahování nemůže pokračovat" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Zbývá 1 sekunda" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Zbývá %i sekund" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Zbývá 1 minuta" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Zbývá %(minutes)i:%(seconds)02i minut" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "fotografie a videa" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "fotografie či videa" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "videa" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "fotografie" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "fotografie" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s staženo" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s nebyly staženy" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "varování" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Všechna stahování kompletní" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s staženo" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s nelze stáhnout" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s z %(total)s %(filetypes)s (%(remaining)s remaining)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s z celkem %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Z" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Automatická detekce" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Vyberte složku, která obsahuje %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopírovat" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Přesun" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Do" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Fotografie:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Vyberte složku do které mají být obrázky staženy" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Videa:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Zvolte adresář do kterého se bude stahovat video" + +#: rapid/rapid.py:3376 msgid "and" msgstr "a" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Používání zálohovacích zařízení" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Používání zálohovacího zařízení" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Zálohovací zařízení nebylo detekováno" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Volné místo:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,137 +292,119 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s volné" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Zálohování fotografií a videí do %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Zálohování %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Zálohování fotografií do %(path)s a videí do %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Nastavení programu je nevalidní" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Fotografie" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s složka neexistuje" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Složka: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s složka je neplatná" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s do složky nelze zapisovat" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Náhledy" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " "(default: %default)" msgstr "zobrazit informace o programu na příkazové řádce (default: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "Zobrazit ladicí informace při spuštění z příkazové řádky" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "pouze výstup chyb do příkazové řádky" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "zobrazit přípony souborů, které program rozpozná, a skončit" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "resetovat nastavení programu a skončit" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Fotografie:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Videa:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "a %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Všechna nastavení a předvolby byly nastaveny na výchozí hodnoty" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Není možné stahovat video.\n" -"Ke stahování videa jsou nutné balíčky hachoir-metadata a kaa-metadata pro " -"Python." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Chyba zálohování" @@ -389,8 +428,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Chyba: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -418,470 +457,472 @@ msgstr "_Zapamatovat si tuto volbu" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Datum a čas" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Text" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Jméno souboru" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadata" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sekvence" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Pracovní kód" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Datum obrázku" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Datum videa" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Dnes" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Včerejšek" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Čas stahování" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Jméno + koncovka" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Název" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Koncovka" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Číslo obrázku" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Číslo videa" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Clona" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Čas expozice" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Vzdálenost ohniska" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Vytvoření fotoaparátu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Druh fotoaparátu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Krátký druh kamery" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Model kamery v označení odděleném pomlčkou" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Sériové číslo" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Číslo snímku" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Číslo souboru" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Pouze složka" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Složka a soubor" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Vlastníkovo jméno" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Kodek" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Šířka" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Výška" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Délka" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Snímková hodnota" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Umělec" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Copyright" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Dnešní stahování" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Číslo této relace" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Číslo podsložky" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Uskladněné číslo" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Zpráva sekvence" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Všechny číslice" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Poslední číslice" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Poslední 2 číslice" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Poslední 3 číslice" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Poslední 4 číslice" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Originální obal" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "Velká písmena (ABCDEFG)" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "Malá písmena (abcdefg)" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Jedna číslice" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Dvě číslice" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tři číslice" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Čtyři číslice" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Pět číslic" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Šest číslic" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Sedm číslic" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Milisekundy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "RRRRMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "RRRR-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "RRMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "RR-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDRRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMRRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "RRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "RR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minuty)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Nastavení podsložky nemělo začít %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Nastavení podsložky nemělo končit %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "Nastavení podsložky by nemělo obsahovat dvě %s za sebou" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Odstranit všechny pracovní kódy?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Chcete odstranit všechny pracovní kódy?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Odstranit všechny zapamatované cesty?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" -msgstr "" +msgstr "Opravdu chcete smazat všechny zapamatované cesty?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Odstranit všechny ignorované cesty?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" -msgstr "" +msgstr "Opravdu chcete smazat všechny ignorované cesty?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Chyba v nastavení přejmenování fotografií" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Chyba v nastavení přejmenování videí" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Chyba v nastavení složek pro stahování fotek" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Chyba v nastavení složek pro stahování videí" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Vložte pracovní kód" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Vložte nový štítek nebo vyberte nějaký existující" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Vložte nový pracovní kód" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Pracovní kód:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Vložte cestu k ignorování" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Cesta:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Pracovní kód" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Vyberte složku do které mají být obrázky staženy" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Zvolte adresář do kterého se bude stahovat video" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Vyberte složku, která obsahuje %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Zvolte složku, ve které bude uložena záloha fotografií" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Zvolte složku ve které budou zálohována videa" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -890,7 +931,7 @@ msgstr "" "možné vytvořit celé jméno. Použijte prosím pro vytvoření jména jiné " "možnosti." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -900,13 +941,13 @@ msgstr "" "možnosti." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Příklad: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -917,7 +958,7 @@ msgstr "" "použít.\n" "Použijí se výchozí hodnoty." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -925,7 +966,7 @@ msgid "" " %s" msgstr "" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -933,7 +974,7 @@ msgid "" " %s" msgstr "" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Neplatný regulární výraz" @@ -1020,11 +1061,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "podsložka" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "název souboru" @@ -1301,7 +1342,7 @@ msgstr "Chyba při zálohování" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s a %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1311,24 +1352,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Fotka už byla stažena" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Zdroj: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "podsložka a název souboru" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Nepodařilo se vytvořit podsložku" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Cesta: %s" @@ -1588,14 +1629,18 @@ msgid "Automatically detect devices" msgstr "Automaticky detekovat zařízení" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Automaticky otáčet obrázky formátu JPEG" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Záloha" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Zálohovat fotografie a videa při stahování" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1603,7 +1648,7 @@ msgstr "" "Vyberte složku stahování. Podsložky pro stahované obrázky budou vytvořeny " "automaticky v této složce s použitím struktury specifikované níže." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1611,14 +1656,10 @@ msgstr "" "Vyberte složku pro stažení. Podsložky pro stažená videa jsou vytvořena " "automaticky podle schématu, které si vytvoříte." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Začátek dne:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Odstranit fotografie a videa ze zařízení po dokončení" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Možnosti zařízení" @@ -1763,11 +1804,9 @@ msgstr "Vynechat stahování" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Není možné stahovat video. Ke stahování videa jsou nutné balíčky hachoir-" -"metadata a kaa-metadata pro Python." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/da.po b/po/da.po index d4a0f3a..b2378ea 100644 --- a/po/da.po +++ b/po/da.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 07:43+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 07:04+0000\n" "Last-Translator: Torben Gundtofte-Bruun \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Enhed" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Størrelse" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Downloadfremgang" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s kunne ikke afmonteres" @@ -66,19 +66,38 @@ msgstr "%(device)s kunne ikke afmonteres" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "gennemsøger..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "filsystemets rod" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "henter fra %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Vil du virkelig hente herfra? På nogle systemer kan det tage lang tid at " +"gennemse denne kilde." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Hent" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pause" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +117,176 @@ msgstr "" "Denne download mappe er ugyldig:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Download kan ikke fortsætte" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Cirka 1 sekund endnu" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Cirka %i sekunder endnu" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Cirka 1 minut endnu" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Cirka %(minutes)i:%(seconds)02i sekunder endnu" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "fotos og videoer" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "fotos eller videoer" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "videoer" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "fotos" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "foto" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s hentet" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s kunne ikke hentes" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "advarsler" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Alle downloads er afsluttet" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s hentet" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s kunne ikke hentes" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s af %(total)s %(filetypes)s (%(remaining)s endnu)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s af %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Fra" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Opdag automatisk" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Vælg en mappe der indeholder %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopier" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Flyt" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Til" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Fotos:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Vælg en mappe at downloade fotos til" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Videoer:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Vælg en mappe at downloade videoer til" + +#: rapid/rapid.py:3376 msgid "and" msgstr "og" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Benytter backup enheder" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Benytter backup enhed" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Ingen backup enheder fundet" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Fri plads:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,87 +294,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr ", " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "," #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s fri plads" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Sikkerhedskopierer fotos og videoer til %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Tager sikkerhedskopi til %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Sikkerhedskopierer fotos til %(path)s og videoer til %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Programmets indstillinger er ugyldige" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Foto" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s download mappe findes ikke" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Mappe: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s download mappe er ugyldig" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s download mappe er skrivebeskyttet" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Små billeder" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -324,51 +383,33 @@ msgstr "" "vis programinformation på kommandolinien mens programmet kører (standard: " "%default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "" "vis fejlsøgningsinformation når programmet startes fra kommandolinien" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "vis kun fejl på kommandolinien" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "vis hvilke foto og video formater programmet kender, og afslut" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "nulstil alle programindstillinger og afslut" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Fotos:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Videoer:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "og %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Alle indstillinger er blevet nulstillet" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Download af videoer er slået fra.\n" -"For at downloade videoer, venligst installér pakkerne hachoir metadata og " -"kaa metadata for python." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Fejl ved sikkerhedskopiering" @@ -392,8 +433,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Fejl: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -421,470 +462,472 @@ msgstr "_Husk dette valg" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Dato og klokkeslæt" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Tekst" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Filnavn" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadata" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sekvenser" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Job kode" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Billedets dato" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Videoens dato" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "I dag" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "I går" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Download klokkeslæt" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Navn + udvidelse" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Navn" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Udvidelse" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Billedets nummer" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Videoens nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Blænde" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Lukkertid" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Brændvidde" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Kameramærke" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Kameramodel" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Forkortet kameramodel" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Forkortet kameramodel med bindestreg" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Serienummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Lukker-antal" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Filnummer" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Kun mappen" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Mappe og fil" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Ejernavn" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Kodning" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Bredde" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Højde" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Længde" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Billeder per sekund" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Kunstner" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Ophavsret" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Downloads i dag" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Kørselsnummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Undermappe nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Gemt nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Sekvensbogstav" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Alle cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Sidste ciffer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Sidste 2 cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Sidste 3 cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Sidste 4 cifre" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Oprindelige Store/Små Bogstaver" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "STORE BOGSTAVER" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "små bogstaver" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Et ciffer" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "To cifre" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tre cifre" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Fire cifre" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Fem cifre" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Seks cifre" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Syv cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Delsekunder" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "ÅÅÅÅMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "ÅÅÅÅ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "ÅÅMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "ÅÅ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "ÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "ÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "TTMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "TTMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "TT-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "TT-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "TT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minutter)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Undermappe indstillinger bør ikke begynde med et %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Undermappe indstillinger bør ikke slutte med et %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "Undermappe indstillinger bør ikke indeholde to %s efter hinanden" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Fjern alle job koder?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Skal alle job koder fjernes?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Fjern alle huskede stier?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Skal alle huskede stier fjernes?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Fjern alle ignorerede stier?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Skal alle ignorerede stier fjernes?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Fejl i indstillinger til foto omdøbning" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Fejl i indstillinger til video omdøbning" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Fejl i indstillinger til foto download undermapper" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Fejl i indstillinger til video download undermapper" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Angiv en jobkode" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Angiv en ny jobkode eller vælg en eksisterende" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Angiv en ny jobkode" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Jobkode:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Angiv en sti der skal ignoreres" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "Angiv en sti som aldrig skal gennemsøges efter fotos og videoer" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Sti:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Jobkode" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Vælg en mappe at downloade fotos til" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Vælg en mappe at downloade videoer til" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Vælg en mappe der indeholder %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Vælg en mappe til sikkerhedskopier af fotos" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Vælg en mappe til sikkerhedskopier af videoer" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -892,7 +935,7 @@ msgstr "" "Advarsel: Metadata er utlistrækkelige til at generere navnet. Vælg " "andre muligheder for omdøbning." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -901,13 +944,13 @@ msgstr "" "Vælg andre muligheder for navngivning af undermapper." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Eksempel: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -917,7 +960,7 @@ msgstr "" "Indstillingerne til %(filetype)s undermappen er ugyldige.\n" "De bliver nulstillet til deres standardværdier." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -928,7 +971,7 @@ msgstr "" "ændrer dem:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -939,7 +982,7 @@ msgstr "" "ændrer det:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Ugyldigt regulært udtryk" @@ -1026,11 +1069,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "undermappe" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "filnavn" @@ -1315,7 +1358,7 @@ msgstr "Der opstod en fejl ved sikkerhedskopiering" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, og %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1325,24 +1368,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Fotoet er allerede blevet downloadet" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Kilde: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "undermappe og filnavn" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Kunne ikke oprette undermappe" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Sti: %s" @@ -1601,14 +1644,18 @@ msgid "Automatically detect devices" msgstr "Opdag enheder automatisk" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Rotér JPEG billeder automatisk" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Sikkerhedskopi" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Tag sikkerhedskopi af fotos og videoer mens de downloades" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1616,7 +1663,7 @@ msgstr "" "Vælg download mappen. Undermapper for de downloadede fotos vil automatisk " "blive oprettet her ved hjælp af den nedenfor angivne struktur." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1624,14 +1671,10 @@ msgstr "" "Vælg download mappen. Undermapper for de downloadede videoer vil automatisk " "blive oprettet her ved hjælp af den nedenfor angivne struktur." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Dagen begynder:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Slet fotos og videoer fra enheden når download er afsluttet" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Enhedsindstillinger" @@ -1798,11 +1841,12 @@ msgstr "Spring download over" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Videoer kan ikke downloades. Installér pakkerne hachoir metadata og " -"kaa metadata for python for at kunne downloade videoer." +"Funktionen til hentning af videoer er slået fra. For at hente videoer skal " +"du installere enten hachoir metadata og kaa metadata pakkerne " +"eller exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/de.po b/po/de.po index 61a7cca..b48bdfb 100644 --- a/po/de.po +++ b/po/de.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 06:54+0000\n" -"Last-Translator: Eg \n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 05:15+0000\n" +"Last-Translator: groovy \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Laufwerk" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Grösse" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Fortschritt im Download" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s konnte nicht entfernt werden" @@ -66,19 +66,38 @@ msgstr "%(device)s konnte nicht entfernt werden" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "Überprüfe Laufwerke ..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "Stammverzeichnis des Dateisystems" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Herunterladen von %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Wollen Sie wirklich von hier herunterladen? Auf manchen Systemen kann das " +"Scannen dieses Ortes sehr lange dauern." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Herunterladen" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Anhalten" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +117,176 @@ msgstr "" "Dieses Download-Verzeichnis ist ungültig:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Der Download kann nicht weitergeführt werden" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Etwa 1 Sekunde verbleibend" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Etwa %i Sekunden verbleibend" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Etwa 1 Minute verbleibend" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Etwa %(minutes)i:%(seconds)02i Minuten verbleibend" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "BIlder und Filme" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "Bilder oder Filme" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "Filme" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "Film" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "Bilder" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "Bild" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s heruntergeladen" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s konnten nicht heruntergeladen werden" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "Warnungen" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Alle Downloads sind abgeschlossen" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s heruntergeladen" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s konnten nicht heruntergeladen werden" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s of %(total)s %(filetypes)s (%(remaining)s verbleibend)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s von %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "von" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Auto-Erkennung" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Wählen Sie einen Ordner welcher %(file_types)s enthält" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopieren" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Verschieben" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "An" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Bilder:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Wählen Sie ein Verzeichnis für den Download der Bilder" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Filme:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Wählen Sie einen Ordner für den Download von Filmen" + +#: rapid/rapid.py:3376 msgid "and" msgstr "und" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Die Sicherungslaufwerke werden verwendet" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Das Sicherungslaufwerk wird verwendet" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Es wurden keine Sicherungslaufwerke gefunden" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Freier Speicherplatz:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,89 +294,89 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s verfügbar" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Erstelle Sicherungskopie von Bildern und Filmen nach %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Sicherungskopieren in %(path)s erstellen" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "" "Erstelle Sicherungskopie von Bildern nach %(path)s und von Filmen nach " "%(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Die Benutzervoreinstellungen sind ungültig" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Bild" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Film" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s Download-Verzeichnis existiert nicht" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Verzeichnis: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s Download-Verzeichnis ist ungültig" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s Download-Verzeichnis ist schreibgeschützt" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Vorschaubilder" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -326,53 +385,35 @@ msgstr "" "Zeige die Programminformationen an, wenn das Programm aus der Kommandozeile " "aufgerufen wurde (Voreinstellung: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "" "Während des Ausführens von der Kommandozeile Debug-Informationen anzeigen" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "Zeige Fehlermeldungen nur auf der Kommandozeile an" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "Anzeigen der Dateitypen für Bilder und Filme anzeigen, welche das Programm " "erkennt und beenden" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "Alle Einstellungen auf Standardwerte zurücksetzten und beenden" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Bilder:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Filme:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "und %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Alle Einstellungen wurden zurückgesetzt" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Die Video-Download-Funktionalität ist deaktiviert.\n" -"Um diese zu aktivieren müssen zuerst die hachoir metadata und kaa metadata " -"Pakete für Python installiert werden." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Fehler beim Erstellen der Sicherungskopie" @@ -396,8 +437,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Fehler: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -427,478 +468,480 @@ msgstr "_Auswahl merken" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Datum Zeit" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Text" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Dateiname" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadaten" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sequenzen" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Auftragsbezeichnung" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Bilddatum" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Film Datum" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Heute" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Gestern" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Download-Zeit" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Name + Erweiterung" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Name" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Erweiterung" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Bildnummer" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Film Nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Blende" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO-Wert" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Belichtungszeit" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Brennweite" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Kamerahersteller" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Kameramodell (kurz)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Kameramodell (kurz, Bindestriche)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Seriennummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Anzahl der Auslösungen" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Dateinummer" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "nur Ordner" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Ordner und Datei" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Name des Eigentümers" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Codec" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Breite" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Höhe" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Länge" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Bilder pro Sekunde" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Autor" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Copyright" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Downloads heute" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Sitzungsnummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Nummer des Unterverzeichnisses" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Gespeicherte Nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Vorlaufender Buchstabe" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Alle Ziffern" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Letzte Ziffer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Letzte 2 Ziffern" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Letzte 3 Ziffern" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Letze 4 Ziffern" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Ursprüngliche Schreibweise" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "GROSSBUCHSTABEN" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "kleinschreibung" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Eine Ziffer" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Zwei Ziffern" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Drei Ziffern" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Vier Ziffern" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Fünf Ziffern" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Sechs Ziffern" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Sieben Ziffern" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Hundertstelsekunden" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "JJJJMMTT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "JJJJ-MM-TT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "JJMMTT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "JJ-MM-TT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMTTJJJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMTTJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMTT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "TTMMJJJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "TTMMJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "JJJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "JJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "TT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (Minuten)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Die Unterverzeichnisvoreinstellungen sollten nicht mit %s beginnen" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Die Unterverzeichnisvoreinstellungen sollten nicht mit %s enden" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" "Die Unterverzeichnisvoreinstellungen sollten nicht zwei %s nacheinander " "enthalten" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Alle Auftragsbezeichnungen löschen?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Sollen alle Auftragsbezeichnungen gelöscht werden?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Alle gespeicherten Pfade löschen?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Sollen alle gespeicherten Pfade gelöscht werden?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Alle ignorierten Pfade löschen?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Sollen alle ignorierten Pfade gelöscht werden?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Fehler in den Vorgaben zur Umbennennung von Bildern" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Fehler in den Vorgaben zur Umbennennung von Filmen" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Fehler in den Vorgaben für Bilder-Downloadunterordner" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Fehler in den Vorgaben zur Filme-Downloadunterordner" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Geben Sie eine Auftragsbezeichnung ein" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "" "Geben Sie eine neue Auftragsbezeichung ein oder wählen Sie eine bestehende " "aus" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Geben Sie eine neue Auftragsbezeichung ein" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Auftragsbezeichnung:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Geben Sie einen Pfad ein, welcher ignoriert werden sollen" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" "Geben Sie einen Pfad ein, welcher nie nach Bildern oder Filmen durchsucht " "werden soll" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Pfad:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Auftragsbezeichnung" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Wählen Sie ein Verzeichnis für den Download der Bilder" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Wählen Sie einen Ordner für den Download von Filmen" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Wählen Sie einen Ordner welcher %(file_types)s enthält" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "" "Wählen Sie den Order in welchem die Sicherkeitskopien der Bilder abgelegt " "werden" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Wählen Sie einen Order für die Sicherungskopien der Filme" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -906,7 +949,7 @@ msgstr "" "Warnung: There is insufficient metadata to fully generate the " "name. Please use other renaming options." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -916,13 +959,13 @@ msgstr "" "Benennung der Unterordner." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Beispiel: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -933,7 +976,7 @@ msgstr "" "und können nicht verwendet werden.\n" "Sie werden auf die Standardwerte zurückgesetzt." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -944,7 +987,7 @@ msgstr "" "Sie sie nicht korrigieren:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -955,7 +998,7 @@ msgstr "" "ihn nicht korrigieren:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Ungültiger regulärer Ausdruck" @@ -1042,11 +1085,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "Unterordner" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "Dateiname" @@ -1343,7 +1386,7 @@ msgstr "Beim Erstellen der Sicherungskopieren ist ein Fehler aufgetreten" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, und %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1353,24 +1396,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Das Bild wurde bereits heruntergeladen" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Quelle: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "Unterordner und Dateiname" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Der Download-Unterordner konnte nicht erstellt werden" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Pfad: %s" @@ -1629,14 +1672,18 @@ msgid "Automatically detect devices" msgstr "Automatisch erkannte Laufwerke" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "JPEG-Dateien automatisch rotieren" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Datensicherung" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Sicherungskopien während dem Herunterladen erstellen" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1644,7 +1691,7 @@ msgstr "" "Wählen Sie das Downloadverzeichnis. Unterverzeichnisse werden je nach " "gewählten Voreinstellungen automatisch erzeugt." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1652,15 +1699,10 @@ msgstr "" "Wählen Sie den Download Ordner. Unterordner für die Filme werden automatisch " "basierend auf der unten angefügten Struktur erstellt." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Beginn des Tages:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "" -"Bilder und Filme nach vollständigem Download auf dem Laufwerk löschen" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Geräteeinstellungen" @@ -1828,12 +1870,12 @@ msgstr "Überspringe Download" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Das Herunterladen von Filmen ist momentan deaktiviert. Um dies zu " -"ermöglichen müssen Sie die beiden Pakete hachoir metadata und kaa " -"metadata für Python installieren." +"Verzeihung, das Herunterladen von Videos ist deaktiviert. Bitte installieren " +"Sie zum Herunterladen von Videos entweder die hachoir metadata und " +"kaa metadata Pakete oder exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/es.po b/po/es.po index 55762c0..479a023 100644 --- a/po/es.po +++ b/po/es.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 12:39+0000\n" -"Last-Translator: Aiguanachein \n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-12-24 15:49+0000\n" +"Last-Translator: José Miguel Acosta Martín \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Dispositivo" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Tamaño" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Progreso de la descarga" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s no se desmontó" @@ -66,19 +66,38 @@ msgstr "%(device)s no se desmontó" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "explorando..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "raíz del sistema de archivos" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Descargando desde %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Realmente desea descargar desde aquí? En algunos sistemas, analizar este " +"lugar puede tardar mucho tiempo." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Descargar" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pausar" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +117,176 @@ msgstr "" "Directorio de descarga incorrecto:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "No se puede iniciar la descarga" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Aproximadamente 1 segundo restante" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Aproximadamente %i segundos restantes" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Aproximadamente 1 minuto restante" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Aproximadamente %(minutes)i:%(seconds)02i minutos restantes" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "fotos y videos" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "fotos y vídeos" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "vídeos" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "vídeo" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "fotos" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "foto" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s descargados" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s fallo al descargar" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "advertencias" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Todas las descargas completadas" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s descargados" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s fallo en la descarga" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s de %(total)s %(filetypes)s (%(remaining)s restantes)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s de %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Selecciona un directorio que contenga %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Fotografias" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Selecciona un directorio donde descargar las fotos" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Videos:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Selecciona un directorio donde descargar los videos" + +#: rapid/rapid.py:3376 msgid "and" msgstr "y" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Usando dispositivo de copia de seguridad" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Usando dispositivo de copia de seguridad" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Dispositivos de copia de seguridad no detectados" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Espacio libre:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,89 +294,89 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s disponible" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Haciendo un respaldo de las fotografías y vídeos en %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Realizar copia de seguridad en %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "" "Haciendo un respaldo de las fotografías en %(path)s y de los vídeos en " "%(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Las preferencias son incorrectas" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Foto" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s directorio de descarga no existe" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Carpeta: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s directorio de descarga es incorrecto" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s imposible escribir en directorio de descarga" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Miniaturas" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -326,55 +385,37 @@ msgstr "" "mostrar la información del programa en la línea de comandos de como se " "ejecuta el programa (por defecto: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "" "mostrar información de depuración cuando se ejecute desde la línea de " "comandos" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "solo errores de salida en la línea de comando" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "listar las extensiones de archivo para fotos y vídeos que el programa " "reconoce y salir" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "" "Restablecer todas las configuraciones y preferencias del programa y salir" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Fotografias" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Videos:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "y %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Todas las opciones y preferencias se han reestablecido" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Descarga de videos desactivada\n" -"Para activarla, por favor instale los paquetes hachoir y kaa metadata para " -"python" - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Error en copia de seguridad" @@ -398,8 +439,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Error: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -429,473 +470,475 @@ msgstr "_Recordar esta elección" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Fecha Hora" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Texto" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Nombre de archivo" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadatos" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Secuencias" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Código de trabajo" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Fecha de la imagen" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Fecha del video" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Hoy" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Ayer" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Hora de la descarga" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Nombre + extensión" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Nombre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Extensión" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Número de imagen" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Numero de video" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Apertura" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Tiempo de exposición" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Longitud focal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Fabricante camara" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Modelo de la camara" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Modelo corto de cámara" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Modelo de cámara con guión corto" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Número de serie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Contador obturador" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Carpeta solamente" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Carpeta y archivo" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Nombre propietario" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Códec" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Ancho" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Alto" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Duración" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Cuadros por Segundo" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Autor" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Derechos de autor" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Descargas de hoy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Número de sesión" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Número de subcarpeta" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Número almacenado" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Letra secuencial" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Todos los digitos" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Último dígito" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Últimos 2 dígitos" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Últimos 3 dígitos" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Últimos 4 dígitos" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Formato original" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "MAYÚSCULAS" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "minúsculas" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Un dígito" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Dos dígitos" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tres dígitos" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Cuatro dígitos" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Cinco dígitos" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Seis dígitos" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Siete digitos" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Decimas de segundo" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "AñoMesDia" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "Año-Mes-Dia" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "AñoMesDia" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "AA-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDAAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMAAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "AAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "AA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minutos)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Preferencias de subcarpeta no debe empezar con una %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Preferencias de subcarpeta no debe terminar con una %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" "Preferencias de subcarpeta no debe contener dos %s una después de la otra" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "¿Borrar todos los Códigos de Trabajo?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "¿Quitar todos los Codigos de Trabajo?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "¿Quitar todas las rutas memorizadas?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "¿Deben de quitarse todas las rutas memorizadas?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "¿Quitar todas las rutas ignoradas?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "¿Deben de quitarse todas las rutas memorizadas?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Error en las preferencias de renombrado de fotos" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Error en las preferencias de renombrado de vídeos" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Error en las preferencias en las subcarpetas de descarga de Fotos" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Error en las preferencias en las subcarpetas de descarga de Videos" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Ingrese un Código de trabajo" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Inserte un nuevo código de trabajo o seleccione uno anterior" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Inserte un nuevo código de trabajo" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Código de trabajo:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Introduce una ruta a ignorar" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "Especifica una ruta que nunca será escaneada para fotos o vídeos" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Ruta:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Código de trabajo" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Selecciona un directorio donde descargar las fotos" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Selecciona un directorio donde descargar los videos" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Selecciona un directorio que contenga %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "" "Seleccione una carpeta en la que se hará una copia de seguridad de las fotos" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "" "Seleccione una carpeta en la que se hará una copia de seguridad de los vídeos" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -903,7 +946,7 @@ msgstr "" "Atencion: No hay suficientes datos para generar el nombre " "completo. Por favor utilice otras opciones para renombrar." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -912,13 +955,13 @@ msgstr "" "Por favor utilice otro nombre para el subdirectorio." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Ejemplo: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -929,7 +972,7 @@ msgstr "" "pueden ser utilizadas.\n" "Se ajustaran a los valores por defecto" -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -940,7 +983,7 @@ msgstr "" "las corrija:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -951,7 +994,7 @@ msgstr "" "correcta:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Expresión regular inválida" @@ -1038,11 +1081,11 @@ msgid "Stockholm" msgstr "Estocolmo" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "subdirectorio" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "nombre de archivo" @@ -1101,6 +1144,8 @@ msgid "" "%(image1)s was taken on %(image1_date)s at %(image1_time)s, and %(image2)s " "on %(image2_date)s at %(image2_time)s." msgstr "" +"%(image1)s fue tomada en %(image1_date)s en %(image1_time)s, y %(image2)s en " +"%(image2_date)s en %(image2_time)s." #: rapid/problemnotification.py:103 #, python-format @@ -1334,7 +1379,7 @@ msgstr "Hubo un error al realizar la copia de seguridad" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, y %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1344,24 +1389,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "La fotografia ya ha sido descargada" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Origen: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "Subdirectorio y nombre de archivo" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Fallo al crear carpeta para descargas" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Ruta: %s" @@ -1622,14 +1667,18 @@ msgid "Automatically detect devices" msgstr "Detectar dispositivos automaticamente" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Copia de seguridad" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Realizar copia de seguridad al descargar fotografias y videos" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1638,7 +1687,7 @@ msgstr "" "fotografías serán creadas automáticamente en la carpeta usando la estructura " "especificada abajo." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1647,14 +1696,10 @@ msgstr "" "serán creadas automáticamente en la carpeta usando la estructura " "especificada abajo." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Día de inicio:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Borrar los archivos del dispositivo una vez terminada la descarga" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Opciones de dispositivo" @@ -1676,6 +1721,17 @@ msgid "" "setting it to PTP mode. If that is not possible, a card reader must be " "used." msgstr "" +"Los dispositivos son de donde se puede descargar las fotos y los vídeos, " +"como cámaras, tarjetas de memorias o Dispositivos de Almacenamiento " +"Portables.\n" +"\n" +"Puede descargar desde múltiples dispositivos a la vez, o puede especificar " +"una localización en su disco duro.\n" +"\n" +"Descargar directamente desde cámara es actualmente una característica " +"experimental. Si la descarga desde su cámara funciona mal o no funciona, " +"pruebe estableciendo en modo PTP. Si no es posible, necesitará usar un " +"lector de tarjetas." #: rapid/glade3/prefs.ui.h:47 msgid "Download folder:" @@ -1804,12 +1860,12 @@ msgstr "Saltar descarga" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"La función de descarga de videos esta desactivada. Para descargar videos, " -"por favor instalar hachoir metadata y kaa metadata paquetes " -"para python." +"Lo sentimos, la funcionalidad de descarga de vídeos está desactivada. Para " +"descargar los vídeos, por favor instale hachoir metadata y kaa " +"metadata paquetes de python, o exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/fr.po b/po/fr.po index e7e526c..5345a37 100644 --- a/po/fr.po +++ b/po/fr.po @@ -8,22 +8,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-10-01 08:33+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 06:07+0000\n" "Last-Translator: Julien Valroff \n" "Language-Team: Français \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-10-01 15:09+0000\n" -"X-Generator: Launchpad (build 14071)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -32,33 +32,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Périphérique" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Taille" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Progression du transfert" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "Le périphérique %(device)s n'a pas été démonté" @@ -67,168 +67,227 @@ msgstr "Le périphérique %(device)s n'a pas été démonté" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "Détection en cours..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "Partition racine" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Transfert depuis %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Êtes-vous sûr de vouloir transférer depuis cet emplacement ? Sur certains " +"systèmes, la recherche de photos ou de vidéos peut prendre du temps." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Transférer" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pause" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" "%(folder1)s\n" "%(folder2)s" msgstr "" -"Ces répertoires de téléchargement ne sont pas valides:\n" +"Ces répertoires de destination ne sont pas valides:\n" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" "%s" msgstr "" -"Ce répertoire de téléchargement n'est pas valide:\n" +"Ce répertoire de destination n'est pas valide:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Impossible de procéder au transfert" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Environ 1 seconde restante" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Environ %i secondes restantes" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Environ 1 minute restante" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Environ %(minutes)i:%(seconds)02i restantes" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "photos et vidéos" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "photos ou vidéos" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "vidéos" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "vidéo" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "photos" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "photo" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s transférés" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "erreur lors du transfert de %(noFiles)s %(filetypes)s" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "avertissements" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Tous les transferts sont terminés" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s téléchargé" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "Echec de transfert pour %(filetype)s" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s sur %(total)s %(filetypes)s (%(remaining)s restants)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s sur %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Depuis" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Détecter automatiquement" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Sélectionnez un dossier contenant %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Copier" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Déplacer" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Vers" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Photos :" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Sélectionnez le dossier de destination" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Vidéos :" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Sélectionnez un dossier vers lequel transférer vos vidéos" + +#: rapid/rapid.py:3376 msgid "and" msgstr "et" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Utilisation des volumes de sauvegarde" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Utilisation du volume de sauvegarde" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Aucun volume de sauvegarde détécté" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Espace libre :" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -236,87 +295,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr ", " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s disponibles" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Sauvegarde des photos et vidéos vers %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Sauvegarde sur %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Sauvegarde des photos vers %(path)s et des vidéos vers %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Les préférences de l'application sont invalides" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Photo" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Vidéo" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" -msgstr "%(file_type)s répertoires de téléchargement n'existe pas" +msgstr "%(file_type)s répertoires de destination n'existe pas" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Répertoire: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" -msgstr "%(file_type)s répertoire de téléchargement n'est pas valide" +msgstr "%(file_type)s répertoire de destination n'est pas valide" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" -msgstr "%(file_type)s répertoire de téléchargement protégé en écriture" +msgstr "%(file_type)s répertoire de destination protégé en écriture" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Aperçus" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -325,51 +384,33 @@ msgstr "" "affiche les informations de l'application sur la ligne de commande lorsque " "l'application est active (défaut: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "Affiche les informations de débogage en mode console" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "n'affiche que les erreurs sur la ligne de commande" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "Liste des extensions de fichiers photo et vidéo reconnues par le programme" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "Réinitialise tous les paramètres et préférences du programme" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Photos :" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Vidéos :" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "et %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Tous les paramètres et préférences ont été réinitialisés" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Fonctionalité de transfert des vidéos désactivée.\n" -"Afin de transférer des vidéos, installez hachoir metadata et kaa metadata " -"pour python." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Erreur lors de la sauvegarde" @@ -393,8 +434,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Erreur : %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -412,8 +453,8 @@ msgstr "Périphérique détecté" msgid "" "Should this device or partition be used to download photos or videos from?" msgstr "" -"Est-ce qu'il faut télécharger photos et vidéos à partir de ce périphérique " -"ou cette partition ?" +"Est-ce qu'il faut transférer des photos et vidéos à partir de ce " +"périphérique ou cette partition ?" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt #: rapid/device.py:107 @@ -424,477 +465,479 @@ msgstr "Se souveni_r de ce choix" msgid "MB/s" msgstr "Mo/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Date/heure" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Texte" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Nom de fichier" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Métadonnées" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Séquences" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Étiquette de transfert" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Date de l'image" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Date de la vidéo" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Aujourd'hui" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Hier" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Date du transfert" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Nom + extension" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Nom" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Extension" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Numéro de l'image" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Numéro de vidéo" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Ouverture" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Vitesse d'obturation" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Longueur focale" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Marque de l'appareil" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Modèle de l'appareil" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Modèle de l'appareil (version courte)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Nom court de l'appareil photo avec trait d'union" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Numéro de série" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Nombre de déclenchements de l'obturateur" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Numéro de Fichier" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Répertoire seulement" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Répertoire et fichier" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Nom du propriétaire" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Codec" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Largeur" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Hauteur" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Longueur" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Images par seconde" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Artiste" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Droits d’auteur" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Transferts journaliers" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Numéro de session" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Numéro de sous-dossier" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Nombres stockés" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Séquence alphabétique" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Tous les chiffres" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Dernier chiffre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "2 derniers chiffres" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "3 derniers chiffres" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "4 derniers chiffres" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Casse originale" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "MAJUSCULES" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "minuscules" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Un chiffre" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Deux chiffres" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Trois chiffres" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Quatre chiffres" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Cinq chiffres" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Six chiffres" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "7 chiffres" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Sous-secondes" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "AAAAMMJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "AAAA-MM-JJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "AAMMJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "AA-MM-JJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMJJAAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMJJAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "JJMMAAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "JJMMAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "AAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "AA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "JJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minutes)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "" "Les préférences de sous-dossier ne devraient pas commencer avec un %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "" "Les préférences de sous-dossier ne devraient pas se terminer avec un %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" "Les préférences de sous-dossier ne devraient pas contenir deux %s consécutifs" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Supprimer toutes les étiquettes de transfert ?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "" "Êtes-vous sûr de vouloir supprimer toutes les étiquettes de transfert ?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Supprimer tous les emplacements mémorisés ?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Supprimer tous les emplacements mémorisés ?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Enlever tous les exmplacements exclus ?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Enlever tous les exmplacements exclus ?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Erreur dans les préférences de renommage des photos" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Erreur dans les préférences de renommage des vidéos" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Erreur dans les préférences des sous-dossiers de transfert de photos" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Erreur dans les préférences des sous-dossiers de transfert de vidéos" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Entrer une étiquette de transfert" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "" "Séléctionnez une étiquette de transfert existante ou créez en une nouvelle" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Entrez une nouvelle étiquette de transfert" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Étiquette de transfert" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Saisissez un emplacement à exclure" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" "Saisissez un emplacement pour lequel les photos et les vidéos ne seront pas " "recherchées" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Emplacement :" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Code Tâche" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Sélectionnez le dossier de destination" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Sélectionnez un dossier vers lequel transférer vos vidéos" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Sélectionnez un dossier contenant %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Choisissez un dossier dans lequel sauvegarder les photos" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Choisissez un dossier dans lequel sauvegarder les vidéos" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -902,7 +945,7 @@ msgstr "" "Attention : Il n'y a pas assez de métadonnées pour générer " "correctement le nom. Utilisez d'autres options de renommage." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -912,13 +955,13 @@ msgstr "" "nommer les sous-dossiers." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Exemple : %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -929,7 +972,7 @@ msgstr "" "être utilisées.\n" "Elles vont être réinitialiseées à leurs valeurs par défaut." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -940,7 +983,7 @@ msgstr "" "vous ne les corrigez pas :\n" "%s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -951,7 +994,7 @@ msgstr "" "corrigez pas :\n" "%s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Expression rationnelle non valide" @@ -1038,11 +1081,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "sous-dossier" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "nom de fichier" @@ -1107,7 +1150,7 @@ msgstr "" #: rapid/problemnotification.py:103 #, python-format msgid "%(filetype)s was already downloaded" -msgstr "%(filetype)s était déjà téléchargé" +msgstr "%(filetype)s a déjà été transféré" #: rapid/problemnotification.py:107 #, python-format @@ -1145,7 +1188,7 @@ msgid "" "downloaded." msgstr "" "Le nom de fichier, l'extension et l'information Exif indiquent qu'il a déjà " -"été téléchargé." +"été transféré." #: rapid/problemnotification.py:223 #, python-format @@ -1337,7 +1380,7 @@ msgstr "Il y a eu une erreur lors de la sauvegarde" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, et %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1347,24 +1390,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" -msgstr "La photo a déjà été téléchargée" +msgstr "La photo a déjà été transférée" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Source : %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "Sous-dossier et nom de fichier" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" -msgstr "Echec de création de sous-répertoire de téléchargement" +msgstr "Echec de création de sous-répertoire de destination" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Chemin: %s" @@ -1628,14 +1671,18 @@ msgid "Automatically detect devices" msgstr "Détecter les périphériques automatiquement" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Pivoter automatiquement les images au format JPEG" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Sauvegarde" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Sauvegarder les photos et les vidéos lors du transfert" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1644,7 +1691,7 @@ msgstr "" "transférées seront automatiquement crées dans ce dossier selon la structure " "spécifiée ci-dessous." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1653,15 +1700,10 @@ msgstr "" "transférées seront automatiquement créés dans ce dossier en utilisant la " "structure spécifiée ci-dessous." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Début du jour :" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "" -"Supprimer des photos et vidéos de l'appareil à la fin du téléchargement" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Options des périphériques" @@ -1832,12 +1874,12 @@ msgstr "Passer le transfert" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Désolé, fonctionnalité de téléchargement vidéo invalide. Pour installer des " -"vidéos, veuillez installer les paquets pour python hachoir-metadata " -"et kaa-metadata." +"Désolé, la fonctionnalité de transfert de vidéos est désactivée. Afin de " +"l'activer, installez soit les modules python hachoir metadata et " +"kaa metadata, soit exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" @@ -1949,7 +1991,7 @@ msgid "" "are downloaded, e.g. external hard drives." msgstr "" "Vous pouvez archiver vos photos et vidéos vers des emplacements multiples " -"dès lors qu'elles sont téléchargées, sur différents disques durs par exemple." +"dès lors qu'elles sont transférées, sur différents disques durs par exemple." #: rapid/glade3/prefs.ui.h:99 msgid "_Add..." diff --git a/po/hu.po b/po/hu.po index 5da37d2..b10f366 100644 --- a/po/hu.po +++ b/po/hu.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 19:20+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-12-06 12:12+0000\n" "Last-Translator: loriand \n" "Language-Team: Hungarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" -msgstr "Rapid Photo Downloader" +msgstr "Gyors Fotó Letöltő" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Eszköz" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Méret" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Letöltés Folyamatban" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s eszköz nem lett csatlakoztatva" @@ -66,19 +66,36 @@ msgstr "%(device)s eszköz nem lett csatlakoztatva" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "keresés..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "a fájlrendszer gyökere" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Letöltés innen: %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "Valóban le akarsz tölteni innen? Néhány rendszeren ez sokáig tart." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Letöltés" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Megállítás" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +106,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,95 +115,94 @@ msgstr "" "Nem jó a letöltési könyvtár:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "A letöltés megszakadt." -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Kb. 1 másodperc van hátra" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Kb. %i másodperc van hátra" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Kb. 1 perc van hátra" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Kb. %(minutes)i:%(seconds)02i perc van hátra" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "fényképek és videók" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "fénykép vagy videó" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "videók" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "videó" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "fényképek" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "fénykép" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "Letöltve: %(noFiles)s %(filetypes)s" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s : sikertelen letöltés" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "figyelmeztetések" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Minden letöltés befejeződött" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s letöltve" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s letöltése sikertelen volt" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "" @@ -194,132 +210,173 @@ msgstr "" "hátra van)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(total)s %(filetypes)s összesen. Letöltve: %(number)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Honnan" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Automatikus Felismerés" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Válasszon egy könyvtárt az alábbiaknak: %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Másolás" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Áthelyezés" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Hova" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Fényképek:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Válasszon egy letöltési könyvtárat" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Videók:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Válasszon egy letöltési könyvtárat" + +#: rapid/rapid.py:3376 msgid "and" msgstr "és" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "A biztonsági mentés eszközök használata" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "A biztonsági mentés eszköz használata" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Nincs elérhető biztonsági mentés eszköz" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Szabad hely:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" -msgstr "" +msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" -msgstr "" +msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s üres" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Fotók és videók biztonsági mentésének helye: %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Biztonsági mentés készül az alábbi helyre: %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "" "A fotók biztonsági mentése a %(path)s könyvtárba és a videók biztonsági " "mentése a %(path2)s könyvtárba" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "A program beállítása nem jó." -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Fénykép" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Videó" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s letöltési könyvtár nem létezik" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "könyvtár: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s letöltési könyvtár nem jó" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s letöltési könyvtár nem írható" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Előnézeti képek" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -328,52 +385,34 @@ msgstr "" "futás közben program információ megjelenítése a terminálban (default: " "%default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "Mutassa a hibakeresési információkat parancssoros futtatásnál." -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "csak a hibák megjelenítése a terminálban" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "A program által felismerhető kép és videó kiterjesztések listázása, majd " "kilépés" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "A program beállításainak visszaállítása, majd kilépés" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Fényképek:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Videók:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "és %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Minden beállítás visszaállításra került" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"A videó letöltési funkció letiltva.\n" -"Kérlek telepítsd fel a \"hachoir metadata\" és a \"kaa metadata\" csomagokat " -"a python-hoz." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "A biztonsági másolat készítése során hiba történt." @@ -397,8 +436,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Hiba: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -428,473 +467,475 @@ msgstr "_Emlékezzen erre a választásra" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Dátum és idő" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Szöveg" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Fájlnév" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metaadat" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sorozatok" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Munka-szám" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Kép dátuma" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Videó dátum" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Ma" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Tegnap" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Letöltési idő" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Név + kiterjesztés" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Név" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Kiterjesztés" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Kép száma" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Videó sorszám" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Rekesz" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Expozíciós idő" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Fókusztávolság" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Fényképezőgép gyártója" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Fényképezőgép" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Rövid típusmegnevezés" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Bővített típusmegnevezés" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Sorozatszám" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Zár számláló" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Fájl (sor)szám" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Csak mappa" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Mappa és fájl" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "A tulajdonos neve" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Kodek" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Szélesség" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Magasság" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Hossz" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Képkoca/másodperc" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Készítette" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Szerzői jog" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Mai letöltések" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Munkamenetszám" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Alkönyvtár száma" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Tárolt szám" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Sorozat betű" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Minden számjegy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Utolsó számjegy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Utolsó 2 számjegy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Utolsó 3 számjegy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Utolsó 4 számjegy" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Eredeti kisbetű / nagybetű" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "NAGYBETŰS" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "kisbetűs" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Egyszámjegyű" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Kétszámjegyű" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Háromszámjegyű" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Négyszámjegyű" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Ötszámjegyű" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Hatszámjegyű" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Hét számjegy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Millimásodperc" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "ÉÉÉÉHHNN" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "ÉÉÉÉ-HH-NN" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "ÉÉHHNN" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "ÉÉ-HH-NN" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "HHNNÉÉÉÉ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "HHNNÉÉ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "HHNN" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "NNHHÉÉÉÉ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "NNHHÉÉ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "ÉÉÉÉ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "ÉÉ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "NN" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "ÓÓPPMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "ÓÓPP" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "ÓÓ-PP-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "ÓÓ-PP" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "ÓÓ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "PP" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "MM" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Alkönyvtár beállítások nem kezdődhetnek %s értékkel" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Alkönyvtár beállítások nem végződhetnek %s értékkel" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" "Alkönyvtár beállítások nem tartalmazhatnak két %s értéket egymás után" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Minden Munka-szám eltávolítása?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Minden Munka-szám el legyen távolítva?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" -msgstr "" +msgstr "Minden megjegyzett elérési út eltávolítása?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" -msgstr "" +msgstr "Biztosan eltávolítod az összes megjegyzett elérési utat?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" -msgstr "" +msgstr "Minden mellőzött útvonal törlése" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" -msgstr "" +msgstr "Valóban törölni szeretnéd az összes mellőzött útvonalat?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Hiba a fénykép átnevezési beállításoknál" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Hiba a videó átnevezési beállításoknál" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Hiba a fénykép letöltési alkönyvtár beállításoknál" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Hiba a videó letöltési alkönyvtár beállításoknál" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Adjon meg munka-számot" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Adjon meg új munka-kódot, vagy válasszon egyet a korábbiakból." #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Adjon meg új munka-kódot" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Munka-szám:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" -msgstr "" +msgstr "Add meg a mellőzni kívánt útvonalat" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" "Kérlek add meg azt a könyvtárt ahol soha ne keressek fényképeket vagy " "videókat" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Útvonal:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Munka kód" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Válasszon egy letöltési könyvtárat" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Válasz egy könyvtárat ahova letöltöd a videókat" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Válasszon egy könyvtárt az alábbiaknak: %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" -msgstr "" +msgstr "Add meg a fényképek biztonsági mentésének útvonalát" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" -msgstr "" +msgstr "Add meg a videók biztonsági mentésének útvonalát" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -902,7 +943,7 @@ msgstr "" "Figyelem: Nincs elegendő metaadat a fájl teljes átnevezéshez. " "Kérem válasszon más metaadatot az átnevezéshez." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -911,13 +952,13 @@ msgstr "" "Kérem válasszon más metaadatot az alkönyvtár létrehozáshoz." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Példa: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -927,7 +968,7 @@ msgstr "" "A %(filetype)s alkönyvtár beállítások érvénytelenek, nem használhatóak.\n" "Az alapértelmezett értékek kerülnek visszaállításra." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -938,7 +979,7 @@ msgstr "" "javítod ki őket:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -948,7 +989,7 @@ msgstr "" "Ez a reguláris kifejezés hibás, és távolításra kerül, ha nem javítod ki:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Érvénytelen reguláris kifejezés" @@ -1035,11 +1076,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "alkönyvtár" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "fájlnév" @@ -1112,16 +1153,18 @@ msgid "" "The existing %(filetype)s was last modified on %(date)s at %(time)s. Unique " "identifier '%(identifier)s' added." msgstr "" +"A létező %(filetype)s típus utoljára %(date)s %(time)s lett módosítva.\r\n" +"Az alábbi azonosító hozzáadva: %(identifier)s" #: rapid/problemnotification.py:108 #, python-format msgid "The existing %(filetype)s was last modified on %(date)s at %(time)s." -msgstr "" +msgstr "A létező %(filetype)s módosítva lett: %(date)s %(time)s." #: rapid/problemnotification.py:109 #, python-format msgid "There is no data with which to name the %(filetype)s." -msgstr "" +msgstr "Nincs adat a %(filetype)s elnevezéséhez" #: rapid/problemnotification.py:111 #, python-format @@ -1323,7 +1366,7 @@ msgstr "Hiba volt a biztonsági mentés közben" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, és %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1333,24 +1376,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "A kép már korábban le lett töltve." -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Forrás: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "alkönyvtár és file neve" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Nem sikerült az alkönyvtár létrehozás" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Path: %s" @@ -1361,15 +1404,15 @@ msgstr "Névjegy…" #: rapid/glade3/rapid.ui.h:2 msgid "Check All" -msgstr "Mindent kijelöl" +msgstr "Összes kijelölése" #: rapid/glade3/rapid.ui.h:3 msgid "Check All Photos" -msgstr "Minden fénykép kijelölése" +msgstr "Összes fénykép kijelölése" #: rapid/glade3/rapid.ui.h:4 msgid "Check All Videos" -msgstr "Minden videó kijelölése" +msgstr "Összes videó kijelölése" #: rapid/glade3/rapid.ui.h:6 msgid "Download / Pause" @@ -1393,7 +1436,7 @@ msgstr "Következő fájl" #: rapid/glade3/rapid.ui.h:11 msgid "Preferences" -msgstr "Testreszabás" +msgstr "Beállítások" #: rapid/glade3/rapid.ui.h:12 msgid "Previous File" @@ -1413,11 +1456,11 @@ msgstr "Hiba jelentése…" #: rapid/glade3/rapid.ui.h:17 msgid "Select All Wit_h Job Code" -msgstr "Minden kijelölése_munka-kód szerint" +msgstr "Összes kijelölése_Munka-kód szerint" #: rapid/glade3/rapid.ui.h:18 msgid "Select All Without _Job Code" -msgstr "Minden kijelölése_munka-kód nélkül" +msgstr "Összes kijelölése_Munka-kód nélkül" #: rapid/glade3/rapid.ui.h:19 msgid "Translate this Application..." @@ -1425,7 +1468,7 @@ msgstr "Ezen alkalmazás fordítása..." #: rapid/glade3/rapid.ui.h:20 msgid "Uncheck All" -msgstr "A megjelölések megszüntetése" +msgstr "A kijelölések megszüntetése" #: rapid/glade3/rapid.ui.h:21 msgid "_Check All" @@ -1453,7 +1496,7 @@ msgstr "_Súgó" #: rapid/glade3/rapid.ui.h:27 msgid "_Include in download" -msgstr "" +msgstr "Letöltésben szerepel" #: rapid/glade3/rapid.ui.h:28 msgid "_Make a Donation..." @@ -1469,7 +1512,7 @@ msgstr "_Fordítás" #: rapid/glade3/rapid.ui.h:31 msgid "_Uncheck All" -msgstr "Kijelölések _törlése" +msgstr "_Kijelölések törlése" #: rapid/glade3/rapid.ui.h:32 msgid "_View" @@ -1505,7 +1548,7 @@ msgstr "Letöltési alkönyvtár" #: rapid/glade3/prefs.ui.h:8 msgid "Example" -msgstr "Példa" +msgstr "Példa:" #: rapid/glade3/prefs.ui.h:9 msgid "Job Codes" @@ -1553,7 +1596,7 @@ msgstr "Backup\t" #: rapid/glade3/prefs.ui.h:20 msgid "Device Options" -msgstr "" +msgstr "Eszköz beállítások" #: rapid/glade3/prefs.ui.h:21 msgid "Devices" @@ -1565,16 +1608,16 @@ msgstr "Error Handling" #: rapid/glade3/prefs.ui.h:23 msgid "Job Codes" -msgstr "Job Codes" +msgstr "Munka-szám" #: rapid/glade3/prefs.ui.h:24 msgid "Miscellaneous" -msgstr "" +msgstr "Egyebek" #: rapid/glade3/prefs.ui.h:25 msgid "Photo Download Folders" msgstr "" -"Fénykép Letöltési Könyvtárak" +"A Fényképek Letöltési Könyvtára" #: rapid/glade3/prefs.ui.h:26 msgid "Photo Rename\t" @@ -1582,12 +1625,12 @@ msgstr "Fénykép Átnevezés\t" #: rapid/glade3/prefs.ui.h:27 msgid "Rename Options" -msgstr "Rename Options" +msgstr "Átnevezési lehetőségek" #: rapid/glade3/prefs.ui.h:28 msgid "Video Download Folders" msgstr "" -"Videó Letöltési Könyvtárak" +"Videók Letöltési Könyvtára" #: rapid/glade3/prefs.ui.h:29 msgid "Video Rename\t" @@ -1607,25 +1650,29 @@ msgstr "Biztonsági mentés eszközök automatikus érzékelése" #: rapid/glade3/prefs.ui.h:33 msgid "Automatically detect devices" -msgstr "Automatically detect devices" +msgstr "Az eszközök automatikus felismerése" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "A JPEG képek automatikus forgatása" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Biztonsági mentés" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "A fényképek és vidók biztonsági mentése letöltés közben" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." msgstr "" -"Válasszon letöltési könyvtárat. Az alkönyvtárak automatikusan lesznek " -"létrehozva, a lent található beállítások szerint." +"Válaszd ki a letöltési könyvtárat. Az alkönyvtárak automatikusan létre " +"fognak jönni az általad megadott könyvtár alá." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1633,17 +1680,13 @@ msgstr "" "Válaszd ki a letöltési könyvtárat. Az alkönyvtárak automatikusan létre " "fognak jönni az általad megadott könyvtár alá." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Nap kezdete:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "A képek és videók törlése a készülékről a sikeres letöltést követően" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" -msgstr "" +msgstr "Eszköz beállítások" #: rapid/glade3/prefs.ui.h:41 msgid "Devices" @@ -1662,6 +1705,16 @@ msgid "" "setting it to PTP mode. If that is not possible, a card reader must be " "used." msgstr "" +"Eszközök ahonnan a fotókat és a videókat letöltjük, mint például fényképező " +"gépek, memória kártyák, pendirve-ok.\n" +"\n" +"Letölthetsz egyszerre több eszközről, vagy kijelölhetsz egy könyvtárat a " +"merevlemezeden.\n" +"\n" +"A fényképezőgépről történő közvetlen letöltés még kísérleti lehetőség. Ha " +"a fényképezőgépről a letöltés lassú, vagy nem működik akkor próbáld meg a " +"fényképezőgépet PTP módba állítani. Ha ez nem lehetséges használj " +"kártyaolvasót." #: rapid/glade3/prefs.ui.h:47 msgid "Download folder:" @@ -1678,6 +1731,7 @@ msgstr "Hibakezelés" #: rapid/glade3/prefs.ui.h:50 msgid "Exit program even if download had warnings or errors" msgstr "" +"Kilépés a programból letöltési hibák és figyelmeztetések ellenére is." #: rapid/glade3/prefs.ui.h:51 msgid "Exit program when download completes" @@ -1718,7 +1772,7 @@ msgstr "" #: rapid/glade3/prefs.ui.h:58 msgid "Ignored Paths" -msgstr "" +msgstr "Mellőzött útvonal" #: rapid/glade3/prefs.ui.h:59 msgid "Job Codes" @@ -1766,11 +1820,11 @@ msgstr "Összes törlése" #: rapid/glade3/prefs.ui.h:72 msgid "Re_move All" -msgstr "" +msgstr "Ö_sszes eltávolítása" #: rapid/glade3/prefs.ui.h:73 msgid "Remembered Paths" -msgstr "" +msgstr "Megjegyzett elérési utak" #: rapid/glade3/prefs.ui.h:74 msgid "" @@ -1778,6 +1832,8 @@ msgid "" "always scan or ignore when automatic detection of Portable Storage Devices " "is enabled." msgstr "" +"Megjegyzett útvonalak azok, amelyeket a különböző hordozható eszközökkel " +"kapcsolatban kiválasztasz letöltésre vagy mellőzésre." #: rapid/glade3/prefs.ui.h:75 msgid "Rename Options" @@ -1794,11 +1850,12 @@ msgstr "A letöltés kihagyása" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Sajnálom, a videó letöltés nem lehetséges. Kérlek telepítsd a hachoir " -"metadata és a kaa metadata csomagokat a python-hoz." +"Sajnálom, a videó letöltési lehetőség le van tiltva. A videó letöltéshez, " +"kérlek telepítsd hachoir metadata és a kaa metadata csomagokat " +"a python részére, vagy az exiftool csomagot." #: rapid/glade3/prefs.ui.h:79 msgid "" @@ -1806,6 +1863,9 @@ msgid "" "devices for photos or videos. Any path ending with the values below will not " "be scanned." msgstr "" +"Add meg azt az útvonal végződést amit figyelmen kívül hagyjak amikor " +"fotókat vagy videókat keresek a letöltéshez. Bármilyen útvonal ami a " +"megadott értékre végződik nem lesz ellenőrizve." #: rapid/glade3/prefs.ui.h:80 msgid "" @@ -1858,7 +1918,7 @@ msgstr "A készülék lecsatlakoztatása a letöltést követően." #: rapid/glade3/prefs.ui.h:91 msgid "Use _python-style regular expressions" -msgstr "" +msgstr "Használj python stílusú reguláris kifejezést" #: rapid/glade3/prefs.ui.h:92 msgid "Video Folders" diff --git a/po/it.po b/po/it.po index 63b9aff..e7bfb41 100644 --- a/po/it.po +++ b/po/it.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-23 20:06+0000\n" -"Last-Translator: caccolangrifata \n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 16:59+0000\n" +"Last-Translator: Marco Solari \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,54 +31,73 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Dispositivo" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Dimensione" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Avanzamento del download" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" -msgstr "" +msgstr "%(device)s non si è smontato correttamente" #. This refers to when a device like a hard drive is having its contents scanned, #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "scansione in corso..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "l'origine del file system" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Si scarica da %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Si vuole davvero scaricare da qui? Su alcuni sistemi esaminare questa " +"posizione può richiedere un tempo molto lungo" + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Download" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Sospendi" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +117,176 @@ msgstr "" "Questa cartelle per il download non è valida:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Il download non può procedere" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Circa 1 secondo rimanente" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Circa %i secondi rimanenti" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" -msgstr "Circa 1 minuto rimanente" +msgstr "Manca circa 1 minuto" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Circa %(minutes)i:%(seconds)02i minuti rimanenti" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "foto e video" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "foto o video" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "video" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "foto" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "photo" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s scaricati" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "Impossibile scaricare %(noFiles)s %(filetypes)s" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "avvertenze" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Tutti i download completati" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s scaricati" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "impossibile scaricare %(filetype)s" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s di %(total)s %(filetypes)s (%(remaining)s rimanenti)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s di %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Da" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Rileva automaticamente" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Selezionare una cartella contenente %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Copia" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Sposta" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "A" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Foto:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Selezionare una cartella in cui scaricare le foto" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Video:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Selezionare una cartella in cui scaricare i video" + +#: rapid/rapid.py:3376 msgid "and" msgstr "e" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Si utilizzano dispositivi di backup" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Si utilizza un dispositivo di backup" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Non è stato rilevato nessun dispositivo di backup" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Spazio libero:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,87 +294,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s liberi" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" -msgstr "" +msgstr "Si salvano fotografie e video in %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Backup su %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" -msgstr "" +msgstr "Si salvano le fotografie in %(path)s ed i video in %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Le preferenze del programma non sono valide" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Foto" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" -msgstr "" +msgstr "la cartella di download %(file_type)s non esiste" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Cartella: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" -msgstr "" +msgstr "la cartella di download %(file_type)s non è valida" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" -msgstr "" +msgstr "la cartella di download %(file_type)s non è scrivibile" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Miniature" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -324,52 +383,34 @@ msgstr "" "visualizza informazioni sul programma sulla riga comando quando il programma " "è in esecuzione (default: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "visualizza informazioni di debug quando eseguito dalla riga comando" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "visualizza solo gli errori sulla riga comando" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "elenca le estensioni delle foto e dei video riconosciute dal programma ed " "esce" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "resetta tutte le impostazioni e preferenze del programma ed esce" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Foto:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Video:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "e %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Tutte le impostazioni e preferenze sono state resettate" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Funzionalità di download dei video è disabilitata.\n" -"Per scaricare i video, installare i pacchetti hachoir metadata e kaa " -"metadata per python." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Errore durante il backup" @@ -393,8 +434,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Errore: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -424,471 +465,475 @@ msgstr "_Ricorda questa scelta" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Data e ora" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Testo" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Nome file" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadati" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Ordinamenti" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Codice lavoro" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Data dell'immagine" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Data del video" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Oggi" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Ieri" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Tempo del download" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Nome + estensione" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Nome" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Estensione" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Numero immagine" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Numero video" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Apertura" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Tempo di esposizione" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Lunghezza focale" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Marca della fotocamera" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Modello della fotocamera (es.: Canon EOS-1Ds Mark III)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Modello brevissimo della fotocamera (es.: D300)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Modello breve della fotocamera (es.: DSC-P92)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Numero seriale" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Contatore dell'otturatore" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Numero file" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Solo la cartella" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Cartella e file" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Nome del proprietario" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Codec" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Larghezza" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Altezza" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Lunghezza" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Fotogrammi per secondo" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" -msgstr "" +msgstr "Artista" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" -msgstr "" +msgstr "Diritti d'autore" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Download oggi" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Numero della sessione" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Numero della sottocartella" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Numero memorizzato" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Lettera di sequenza" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Tutte le cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Ultima cifra" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Ultime 2 cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Ultime 3 cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Ultime 4 cifre" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Caso originale" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "MAIUSCOLO" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "minuscolo" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Una cifra" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Due cifre" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tre cifre" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Quattro cifre" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Cinque cifre" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Sei cifre" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Sette cifre" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Sotto-secondi" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "AAAAMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "AAAA-MM-GG" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "AAMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "AA-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDAAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMAAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "AAAA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "AA" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minuti)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Le preferenze sottocartella non dovrebbero iniziare con un %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Le preferenze sottocartella non dovrebbero terminare con un %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" "Le preferenze sottocartella non dovrebbero contenere due %s uno dopo l'altro" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Elimina tutti i Codici Lavoro?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Occorre rimuovere tutti i Codici Lavoro?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" -msgstr "" +msgstr "Elimina tutti i Percorsi Memorizzati?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" -msgstr "" +msgstr "Occorre rimuovere tutti i percorsi memorizzati?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" -msgstr "" +msgstr "Si rimuovono tutti i percorsi ignorati?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" -msgstr "" +msgstr "Occorre rimuovere tutti i percorsi ignorati?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Errore nelle preferenze di Rinomina Foto" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Errore nelle preferenze di Rinomina Video" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Errore nelle preferenze di Scarica Sottocartelle Foto" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Errore nelle preferenze di Scarica Sottocartelle Video" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Inserire un Codice Lavoro" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Inserire un nuovo Codice Lavoro, o selezionarne uno precedente" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Inserire un nuovo Codice Lavoro" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Codice Lavoro:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" -msgstr "" +msgstr "Inserire un persorco da ignorare" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" +"Specificare un percorso che non sarà mai esaminato per cercare fotografie e " +"video" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" -msgstr "" +msgstr "Percorso:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Codice Lavoro" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Selezionare una cartella in cui scaricare le foto" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Selezionare una cartella in cui scaricare i video" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Selezionare una cartella contenente %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" -msgstr "" +msgstr "Selezioanre un percorso in cui salvare le fotografie" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" -msgstr "" +msgstr "Selezioanre un percorso in cui salvare i video" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -897,7 +942,7 @@ msgstr "" "completamente il nome. Si prega di utilizzare altre opzioni per la " "rinomina." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -907,13 +952,13 @@ msgstr "" "nominare le sottocartelle." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Esempio: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -924,25 +969,31 @@ msgstr "" "non possono essere utilizzate.\n" "Saranno reimpostate ai loro valori di default." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " "you correct them:\n" " %s" msgstr "" +"Le espressioni regolari che seguono non sono valide, e saranno rimosse a " +"meno che non vengano corrette:\n" +" %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " "it:\n" " %s" msgstr "" +"Questa espressione regolare non è valida, e sarà rimossa a meno che non " +"venga corretta:\n" +" %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" -msgstr "" +msgstr "Espressione regolare non valida" #. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this. #: rapid/preferencesdialog.py:1931 @@ -1027,11 +1078,11 @@ msgid "Stockholm" msgstr "Stoccolma" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "sottocartella" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "nome del file" @@ -1058,7 +1109,7 @@ msgstr "Errore nel generare la componente %s." #: rapid/problemnotification.py:86 #, python-format msgid "%(filetype)s metadata cannot be read" -msgstr "" +msgstr "i metadati %(filetype)s non sono leggibili" #: rapid/problemnotification.py:88 #, python-format @@ -1090,6 +1141,8 @@ msgid "" "%(image1)s was taken on %(image1_date)s at %(image1_time)s, and %(image2)s " "on %(image2_date)s at %(image2_time)s." msgstr "" +"%(image1)s è stata scattata il %(image1_date)s alle %(image1_time)s, e " +"%(image2)s il %(image2_date)s alle %(image2_time)s." #: rapid/problemnotification.py:103 #, python-format @@ -1102,6 +1155,8 @@ msgid "" "The existing %(filetype)s was last modified on %(date)s at %(time)s. Unique " "identifier '%(identifier)s' added." msgstr "" +"La data di ultima modifica dei %(filetype)s esistenti è %(date)s alle " +"%(time)s. E' stato aggiunto l'identificatoe univoco '%(identifier)s'." #: rapid/problemnotification.py:108 #, python-format @@ -1111,7 +1166,7 @@ msgstr "Il %(filetype)s è stato modificato il %(date)s alle %(time)s." #: rapid/problemnotification.py:109 #, python-format msgid "There is no data with which to name the %(filetype)s." -msgstr "" +msgstr "Non ci sono dati con cui nominare i %(filetype)s." #: rapid/problemnotification.py:111 #, python-format @@ -1149,7 +1204,7 @@ msgstr "%s, " #: rapid/problemnotification.py:301 #, python-format msgid "%(volumes)s and %(final_volume)s." -msgstr "" +msgstr "%(volumes)s e %(final_volume)s." #: rapid/problemnotification.py:240 #, python-format @@ -1163,12 +1218,12 @@ msgstr "" #: rapid/problemnotification.py:257 #, python-format msgid "An error occurred when backing up on %(volume)s: %(inst)s." -msgstr "" +msgstr "Si è verificato un errore salvando su %(volume)s: %(inst)s." #: rapid/problemnotification.py:259 #, python-format msgid "An error occurred when backing up on %(volume)s." -msgstr "" +msgstr "Si è verificato un errore salvando su %(volume)s." #: rapid/problemnotification.py:261 msgid "Errors occurred when backing up on the following backup devices: " @@ -1208,11 +1263,11 @@ msgstr "Il backup esiste già in queste posizioni: " #: rapid/problemnotification.py:296 #, python-format msgid "Backup overwritten on %(volume)s." -msgstr "" +msgstr "Salvataggio sovrascritto su %(volume)s." #: rapid/problemnotification.py:298 msgid "Backups overwritten on these devices: " -msgstr "" +msgstr "Salvataggi sovrascritti su questi dispositivi: " #: rapid/problemnotification.py:309 #, python-format @@ -1231,7 +1286,7 @@ msgstr "" #: rapid/problemnotification.py:322 #, python-format msgid "%(previousproblem)s Additionally, %(newproblem)s" -msgstr "" +msgstr "%(previousproblem)s Inoltre, %(newproblem)s" #: rapid/problemnotification.py:330 #, python-format @@ -1241,7 +1296,7 @@ msgstr " Inoltre, si è verificato %(problems)s." #: rapid/problemnotification.py:332 #, python-format msgid " Furthermore, there was a %(problem)s." -msgstr "" +msgstr " Inoltre, si è verificato un %(problem)s." #: rapid/problemnotification.py:341 #, python-format @@ -1268,12 +1323,12 @@ msgstr "Problema nella generazione della sottocartella e del nome del file" #: rapid/problemnotification.py:368 #, python-format msgid "Problems in %s generation" -msgstr "" +msgstr "Problemi nella generazione %s" #: rapid/problemnotification.py:370 #, python-format msgid "Problem in %s generation" -msgstr "" +msgstr "Problema nella generazione %s" #: rapid/problemnotification.py:379 #, python-format @@ -1299,19 +1354,19 @@ msgstr "" #: rapid/problemnotification.py:409 msgid "there were errors backing up" -msgstr "" +msgstr "si sono verificati errori salvando" #: rapid/problemnotification.py:410 msgid "There were errors backing up" -msgstr "" +msgstr "Si sono verificati errori salvando" #: rapid/problemnotification.py:412 msgid "there was an error backing up" -msgstr "" +msgstr "si è verificato un errore salvando" #: rapid/problemnotification.py:413 msgid "There was an error backing up" -msgstr "" +msgstr "Si è verificato un errore salvando" #. e.g. #: rapid/problemnotification.py:416 @@ -1319,7 +1374,7 @@ msgstr "" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, e %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1329,24 +1384,25 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "La fotografia è stata già scaricata" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Origine: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "sottocartella e nome del file" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "" +"Si è verificato un errore nella creazione della sottocartella di download" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Percorso: %s" @@ -1449,7 +1505,7 @@ msgstr "_Aiuto" #: rapid/glade3/rapid.ui.h:27 msgid "_Include in download" -msgstr "" +msgstr "_Includi nel download" #: rapid/glade3/rapid.ui.h:28 msgid "_Make a Donation..." @@ -1465,7 +1521,7 @@ msgstr "_Traduci questa Applicazione..." #: rapid/glade3/rapid.ui.h:31 msgid "_Uncheck All" -msgstr "" +msgstr "_Deseleziona Tutti" #: rapid/glade3/rapid.ui.h:32 msgid "_View" @@ -1549,7 +1605,7 @@ msgstr "Backup\t" #: rapid/glade3/prefs.ui.h:20 msgid "Device Options" -msgstr "" +msgstr "Opzioni Dispositivo" #: rapid/glade3/prefs.ui.h:21 msgid "Devices" @@ -1608,14 +1664,18 @@ msgid "Automatically detect devices" msgstr "Rileva i dispositivi automaticamente" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Ruota automaticamente le immagini JPEG" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Backup" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Effettua il backup delle foto e dei video durante il download" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1624,7 +1684,7 @@ msgstr "" "saranno create automaticamente in questa cartella utilizzando la struttura " "specificata sotto." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1633,17 +1693,13 @@ msgstr "" "scaricati saranno create automaticamente in questa cartella utilizzando la " "struttura specificata sotto." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Giorno iniziale:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Eliminare le foto ed i video dal dispositivo al termine del download" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" -msgstr "" +msgstr "Opzioni Dispositivo" #: rapid/glade3/prefs.ui.h:41 msgid "Devices" @@ -1662,6 +1718,18 @@ msgid "" "setting it to PTP mode. If that is not possible, a card reader must be " "used." msgstr "" +"I dispositivi indicano da dove si scaricano fotografie e video, come " +"macchine fotografiche, schede di memoria o Dispositivi di Memorizzazione " +"Portatile (PSD).\n" +"\n" +"Puoi scaricare da più dispositivi simultaneamente, oppure puoi specificare " +"una posizione sul tuo disco fisso.\n" +"\n" +"Scaricare direttamente dalla macchina fotografica è attualmenet una " +"caratteristica sperimentale. Se scaricando direttamente dalla tua macchina " +"fotografica funziona male o per niente, prova ad impostarla in modalità PTP. " +" Se ciò non fosse possibile, occorre utilizzare un lettore di schede di " +"memoria." #: rapid/glade3/prefs.ui.h:47 msgid "Download folder:" @@ -1693,12 +1761,16 @@ msgstr "Generazione delle miniature (lento)" msgid "" "If you disable automatic detection, choose the exact backup locations." msgstr "" +"Se si disabilita la rilevazione automatica, scegliere le posizioni esatte " +"del salvataggio." #: rapid/glade3/prefs.ui.h:54 msgid "" "If you disable automatic detection, choose the exact location of the photos " "and videos." msgstr "" +"Se si disabilita la rilevazione automatica, scegliere la posizione esatte " +"delle fotografie e dei video." #: rapid/glade3/prefs.ui.h:55 msgid "" @@ -1708,10 +1780,17 @@ msgid "" "When this option is enabled, and a potential device is detected, you will be " "prompted to determine if it should be scanned or not." msgstr "" +"Se abiliti la rilevazione automatica dei Dispositivi di Memorizzazione " +"Portatile (PSD), sarà analizzato tutto il dispositivo. Su grossi dispositivi " +"ciò potrebbe richiedere un po' di tempo.\n" +"\n" +"Quando questa opzione è abilitata, ed un dispositivo potenziale viene " +"rilevato, ti verrà richiesto di determinare se questo dovrà essere " +"analizzato o meno." #: rapid/glade3/prefs.ui.h:58 msgid "Ignored Paths" -msgstr "" +msgstr "Percorsi Ignorati" #: rapid/glade3/prefs.ui.h:59 msgid "Job Codes" @@ -1747,7 +1826,7 @@ msgstr "Nome della cartella del backup delle foto:" #: rapid/glade3/prefs.ui.h:67 msgid "Photo backup location:" -msgstr "" +msgstr "Posizione del salvataggio delle fotografie" #: rapid/glade3/prefs.ui.h:68 msgid "Preferences: Rapid Photo Downloader" @@ -1759,11 +1838,11 @@ msgstr "R_imuovi Tutto" #: rapid/glade3/prefs.ui.h:72 msgid "Re_move All" -msgstr "" +msgstr "Ri_muovi Tutto" #: rapid/glade3/prefs.ui.h:73 msgid "Remembered Paths" -msgstr "" +msgstr "Percorsi Memorizzati" #: rapid/glade3/prefs.ui.h:74 msgid "" @@ -1771,6 +1850,9 @@ msgid "" "always scan or ignore when automatic detection of Portable Storage Devices " "is enabled." msgstr "" +"I percorsi memorizzati sono quelli associati con i dispositivi che hai " +"scelto di analizzare sempre oppure di ignorare quando la rilevazione " +"automatica dei Dispositivi di Memorizzazione Portatile (PSD) è abilitata." #: rapid/glade3/prefs.ui.h:75 msgid "Rename Options" @@ -1787,12 +1869,12 @@ msgstr "Salta il download" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Le funzionalità di download dei video sono disabilitate. Per scaricare i " -"video installare i pacchetti hachoir metadata e kaa metadata " -"per python." +"Spiacenti, la funzionalità dello scarico dei video è disabilitata. Per " +"scaricare i video, si prega di installare i pacchetti python hachoir " +"metadata e kaa metadata, oppure exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" @@ -1800,6 +1882,9 @@ msgid "" "devices for photos or videos. Any path ending with the values below will not " "be scanned." msgstr "" +"Specifica la porzione finale dei percorsi che vuoi ignorare quando si " +"analizzano i dispositivi per le fotografie o i video. Qualsiasi percorso che " +"termini con i valori di seguito non sarà analizzato." #: rapid/glade3/prefs.ui.h:80 msgid "" @@ -1857,7 +1942,7 @@ msgstr "Smonta (\"espelli\") il dispositivo al completamento del download" #: rapid/glade3/prefs.ui.h:91 msgid "Use _python-style regular expressions" -msgstr "" +msgstr "Utilizza espressioni regolari _python-style" #: rapid/glade3/prefs.ui.h:92 msgid "Video Folders" @@ -1873,7 +1958,7 @@ msgstr "Nome della cartella di backup dei video:" #: rapid/glade3/prefs.ui.h:95 msgid "Video backup location:" -msgstr "" +msgstr "Posizione del salvataggio dei video" #: rapid/glade3/prefs.ui.h:96 msgid "" diff --git a/po/nb.po b/po/nb.po index 24349b5..92c8664 100644 --- a/po/nb.po +++ b/po/nb.po @@ -7,1784 +7,1784 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2010-10-22 21:26-0500\n" -"PO-Revision-Date: 2010-12-03 18:06+0000\n" -"Last-Translator: Martin Dahl Moe \n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 08:52+0000\n" +"Last-Translator: Kevin Brubeck Unhammer \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-12-05 16:48+0000\n" -"X-Generator: Launchpad (build Unknown)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:124 rapid/rapid.py:6353 rapid/glade3/rapid.glade.h:71 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:456 -msgid "New York" -msgstr "New York" - -#: rapid/rapid.py:457 -msgid "Manila" -msgstr "Manila" +#: rapid/rapid.py:112 +#, python-format +msgid "" +"%(date)s\n" +"%(time)s" +msgstr "" -#: rapid/rapid.py:457 -msgid "Prague" -msgstr "Praha" +#: rapid/rapid.py:114 +#, python-format +msgid "%(date)s %(time)s" +msgstr "" -#: rapid/rapid.py:457 -msgid "Helsinki" -msgstr "Helsinki" +#: rapid/rapid.py:117 +#, python-format +msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" +msgstr "" -#: rapid/rapid.py:457 -msgid "Wellington" -msgstr "Wellington" +#. Device refers to a thing like a camera, memory card in its reader, +#. external hard drive, Portable Storage Device, etc. +#: rapid/rapid.py:152 +msgid "Device" +msgstr "" -#: rapid/rapid.py:458 -msgid "Tehran" -msgstr "Teheran" +#. Size refers to the total size of images on the device, typically in +#. MB or GB +#: rapid/rapid.py:170 +msgid "Size" +msgstr "" -#: rapid/rapid.py:458 -msgid "Kampala" -msgstr "Kampala" +#: rapid/rapid.py:173 +msgid "Download Progress" +msgstr "" -#: rapid/rapid.py:458 -msgid "Paris" -msgstr "Paris" +#: rapid/rapid.py:319 +#, python-format +msgid "%(device)s did not unmount" +msgstr "" -#: rapid/rapid.py:458 -msgid "Berlin" -msgstr "Berlin" +#. This refers to when a device like a hard drive is having its contents scanned, +#. looking for photos or videos. It is visible initially in the progress bar for each device +#. (which normally holds "x photos and videos"). +#. It maybe displayed only briefly if the contents of the device being scanned is small. +#: rapid/rapid.py:1186 +msgid "scanning..." +msgstr "" -#: rapid/rapid.py:458 -msgid "Sydney" -msgstr "Sydney" +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "" -#: rapid/rapid.py:459 -msgid "Budapest" -msgstr "Budapest" +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "" -#: rapid/rapid.py:459 -msgid "Rome" -msgstr "Roma" +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" -#: rapid/rapid.py:459 -msgid "Moscow" -msgstr "Moskva" +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 +msgid "Download" +msgstr "" -#: rapid/rapid.py:459 -msgid "Delhi" -msgstr "Delhi" +#: rapid/rapid.py:2127 +msgid "Pause" +msgstr "" -#: rapid/rapid.py:459 -msgid "Warsaw" -msgstr "Warszawa" +#: rapid/rapid.py:2228 +#, python-format +msgid "" +"These download folders are invalid:\n" +"%(folder1)s\n" +"%(folder2)s" +msgstr "" -#: rapid/rapid.py:460 -msgid "Jakarta" -msgstr "Jakarta" +#: rapid/rapid.py:2231 +#, python-format +msgid "" +"This download folder is invalid:\n" +"%s" +msgstr "" -#: rapid/rapid.py:460 -msgid "Madrid" -msgstr "Madrid" +#: rapid/rapid.py:2232 +msgid "Download cannot proceed" +msgstr "" -#: rapid/rapid.py:460 -msgid "Stockholm" -msgstr "Stockholm" +#: rapid/rapid.py:2559 +msgid "About 1 second remaining" +msgstr "" -#: rapid/rapid.py:493 -msgid "Invalid Downloads Today value.\n" -msgstr "Ugyldig verdi for Nedlastinger idag.\n" +#: rapid/rapid.py:2561 +#, python-format +msgid "About %i seconds remaining" +msgstr "" -#: rapid/rapid.py:494 -msgid "Resetting value to zero.\n" -msgstr "Nullstiller verdien.\n" +#: rapid/rapid.py:2563 +msgid "About 1 minute remaining" +msgstr "" -#: rapid/rapid.py:533 -msgid "'Start of day' preference value is corrupted.\n" +#. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. +#. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount +#. of time the download has remainging, e.g. 'About 5:36 minutes remaining' +#: rapid/rapid.py:2568 +#, python-format +msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "" -#: rapid/rapid.py:534 -msgid "Resetting to midnight.\n" -msgstr "Nullstiller verdien til midnatt.\n" +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 +msgid "photos and videos" +msgstr "bilder og videoer" -#: rapid/rapid.py:560 -msgid "Error in Photo Rename preferences" +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 +msgid "photos or videos" msgstr "" -#: rapid/rapid.py:592 rapid/rapid.py:1714 -msgid "Sorry,these preferences contain an error:\n" -msgstr "Beklager,innstillingene inneholder en feil:\n" - -#: rapid/rapid.py:603 -msgid "Resetting to default values." -msgstr "Nullstiller til standardverdier." +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 +msgid "videos" +msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/rapid.py:678 rapid/renamesubfolderprefs.py:199 -msgid "Job code" -msgstr "Jobbnavn" +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 +msgid "video" +msgstr "" -#: rapid/rapid.py:746 -msgid "Error in Video Rename preferences" -msgstr "Feil i innstillingene til nytt videonavn" +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 +msgid "photos" +msgstr "bilder" -#: rapid/rapid.py:764 -msgid "Error in Photo Download Subfolders preferences" +#. check subfolder preferences for bad values +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 +msgid "photo" msgstr "" -#: rapid/rapid.py:781 -msgid "Error in Video Download Subfolders preferences" +#: rapid/rapid.py:2629 +#, python-format +msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "" -#: rapid/rapid.py:814 rapid/rapid.py:1545 -msgid "photos and videos" -msgstr "bilder og videoer" - -#: rapid/rapid.py:816 rapid/rapid.py:1555 rapid/rapid.py:1683 -msgid "photos" -msgstr "bilder" +#: rapid/rapid.py:2633 +#, python-format +msgid "%(noFiles)s %(filetypes)s failed to download" +msgstr "" -#: rapid/rapid.py:949 -msgid "Select a folder to download photos to" -msgstr "Velg katalog for å laste inn bilder" +#: rapid/rapid.py:2636 rapid/rapid.py:2688 +msgid "warnings" +msgstr "" -#: rapid/rapid.py:967 -msgid "Select a folder to download videos to" -msgstr "Velg katalog for å laste inn video" +#: rapid/rapid.py:2645 +msgid "All downloads complete" +msgstr "" -#: rapid/rapid.py:1049 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Velg katalog med %(file_types)r" +msgid "%(number)s %(numberdownloaded)s" +msgstr "" -#: rapid/rapid.py:1071 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format -msgid "Select a folder in which to backup %(file_types)s" +msgid "%(filetype)s downloaded" msgstr "" -#. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/rapid.py:1152 -msgid "" -"Warning: There is insufficient metadata to fully generate the " -"name. Please use other renaming options." +#: rapid/rapid.py:2662 rapid/rapid.py:2680 +#, python-format +msgid "%(filetype)s failed to download" msgstr "" -#: rapid/rapid.py:1188 -msgid "" -"Warning: There is insufficient metadata to fully generate " -"subfolders. Please use other subfolder naming options." +#. e.g.: 3 of 205 photos and videos (202 remaining) +#: rapid/rapid.py:2719 +#, python-format +msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "" -#. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/rapid.py:1192 +#. e.g.: 205 of 205 photos and videos +#: rapid/rapid.py:2726 #, python-format -msgid "Example: %s" +msgid "%(number)s of %(total)s %(filetypes)s" msgstr "" -#: rapid/rapid.py:1218 -msgid "" -"Downloads today value not updated, as a download is currently occurring" +#: rapid/rapid.py:3072 +msgid "From" msgstr "" -#: rapid/rapid.py:1234 -msgid "Stored number value not updated, as a download is currently occurring" +#: rapid/rapid.py:3080 +msgid "Auto Detect" msgstr "" -#: rapid/rapid.py:1264 +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 #, python-format -msgid "" -"The %(filetype)s subfolder preferences had some unnecessary values removed." +msgid "Select a folder containing %(file_types)s" +msgstr "Velg katalog med %(file_types)r" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopier" + +#: rapid/rapid.py:3138 +msgid "Move" msgstr "" -#. Preferences list is now empty -#: rapid/rapid.py:1269 -#, python-format -msgid "" -"The %(filetype)s subfolder preferences entered are invalid and cannot be " -"used.\n" -"They will be reset to their default values." +#: rapid/rapid.py:3160 +msgid "To" msgstr "" -#. check subfolder preferences for bad values -#: rapid/rapid.py:1283 rapid/rapid.py:1557 -msgid "photo" +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" msgstr "" -#: rapid/rapid.py:1284 rapid/rapid.py:1552 -msgid "video" +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Velg katalog for å laste inn bilder" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" msgstr "" -#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this. -#: rapid/rapid.py:1521 -msgid "externaldrive1" +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Velg katalog for å laste inn video" + +#: rapid/rapid.py:3376 +msgid "and" msgstr "" -#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this. -#: rapid/rapid.py:1523 -msgid "externaldrive2" +#: rapid/rapid.py:3381 +msgid "Using backup devices" msgstr "" -#: rapid/rapid.py:1547 rapid/rapid.py:1681 -msgid "photos or videos" +#: rapid/rapid.py:3383 +msgid "Using backup device" msgstr "" -#: rapid/rapid.py:1550 -msgid "videos" +#: rapid/rapid.py:3385 +msgid "No backup devices detected" msgstr "" -#: rapid/rapid.py:1562 -#, python-format -msgid "" -"%(date)s\n" -"%(time)s" +#: rapid/rapid.py:3412 +msgid "Free space:" msgstr "" -#: rapid/rapid.py:1564 +#. (videos) or (photos) will be appended to the free space message displayed to the +#. user in the status bar. +#. you should only translate this if your language does not use parantheses +#: rapid/rapid.py:3424 #, python-format -msgid "%(date)s %(time)s" +msgid "(%(file_type)s)" msgstr "" -#: rapid/rapid.py:1567 +#. Freespace available on the filesystem for downloading to +#. Displayed in status bar message on main window +#: rapid/rapid.py:3428 #, python-format -msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" +msgid "%(free)s %(file_type)s" msgstr "" -#: rapid/rapid.py:1574 -#, python-format -msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" +#. Inserted in the middle of the statusbar message concerning the amount of freespace +#. Used to differentiate between two different file systems +#. e.g. Free space: 21.3GB (photos); 14.7GB (videos). +#: rapid/rapid.py:3433 +msgid "; " msgstr "" -#: rapid/rapid.py:1602 rapid/rapid.py:2278 -msgid "subfolder and filename" +#. Inserted at the end of the statusbar message concerning the amount of freespace +#. Used to differentiate between two different file systems +#. e.g. Free space: 21.3GB (photos); 14.7GB (videos). +#: rapid/rapid.py:3438 +msgid "." msgstr "" -#: rapid/rapid.py:1604 rapid/rapid.py:2280 -msgid "filename" +#. Freespace available on the filesystem for downloading to +#. Displayed in status bar message on main window +#. e.g. 14.7GB available +#: rapid/rapid.py:3444 +#, python-format +msgid "%(free)s free" msgstr "" -#: rapid/rapid.py:1606 rapid/rapid.py:2282 -msgid "subfolder" +#. user manually specified the same location for photos and video backups +#: rapid/rapid.py:3452 +#, python-format +msgid "Backing up photos and videos to %(path)s" msgstr "" -#. This refers to when a device like a hard drive is having its contents scanned, -#. looking for photos or videos. It is visible initially in the progress bar for each device -#. (which normally holds "x photos and videos"). -#. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1697 -msgid "scanning..." +#. user manually specified backup location +#: rapid/rapid.py:3455 +#, python-format +msgid "Backing up to %(path)s" msgstr "" -#: rapid/rapid.py:1812 -msgid "The following download path could not be created:\n" +#. user manually specified different locations for photo and video backups +#: rapid/rapid.py:3458 +#, python-format +msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "" -#: rapid/rapid.py:1813 +#: rapid/rapid.py:3465 #, python-format -msgid "%(path)s: " +msgid "%(freespace)s. %(backuppaths)s." msgstr "" -#: rapid/rapid.py:1814 rapid/rapid.py:1815 rapid/rapid.py:1830 -#: rapid/rapid.py:1831 rapid/rapid.py:2095 rapid/rapid.py:2098 -msgid "Download cannot proceed" +#: rapid/rapid.py:3494 +msgid "Program preferences are invalid" msgstr "" -#: rapid/rapid.py:1828 rapid/rapid.py:4999 -msgid "There is an error in the program preferences." +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 +msgid "Photo" msgstr "" -#: rapid/rapid.py:1829 -msgid "" -"\n" -"Please check preferences, restart the program, and try again." +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 +msgid "Video" msgstr "" -#. Translators: as already, mentioned the %s value should not be modified or left out. It may be moved if necessary. -#. It refers to the actual number of photos that can be copied. For example, the user might see the following: -#. '0 of 512 photos' or '0 of 10 videos' or '0 of 202 photos and videos'. -#. This particular text is displayed to the user before the download has started. -#: rapid/rapid.py:2006 +#: rapid/rapid.py:3624 #, python-format -msgid "%(number)s %(filetypes)s" +msgid "%(file_type)s download folder does not exist" msgstr "" -#. Translators: as you have already seen, the text can contain values that should not be modified or left out by you, for example %s. -#. This text is another example of that, but it is is a little more complex. Here there are two values which will be displayed -#. to the user when they run the program, signifying the number of photos found, and the device they were found on. -#. %(number)s should be left exactly as is: 'number' should not be translated. The same applies to %(device)s: 'device' should -#. not be translated. Generally speaking, if translating the sentence requires it, you can move items like '%(xyz)s' around -#. in a sentence, but you should never modify them or leave them out. -#: rapid/rapid.py:2017 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format -msgid "Device scan complete: found %(number)s %(filetypes)s on %(device)s" +msgid "Folder: %s" msgstr "" -#: rapid/rapid.py:2024 +#: rapid/rapid.py:3638 #, python-format -msgid "Device scan complete: no %(filetypes)s found on %(device)s" +msgid "%(file_type)s download folder is invalid" msgstr "" -#. This message informs the user that the device (e.g. camera, hard drive or memory card) was automatically unmounted and they can now remove it -#: rapid/rapid.py:2045 -msgid "The device can now be safely removed" +#: rapid/rapid.py:3651 +#, python-format +msgid "%(file_type)s download folder is not writable" msgstr "" -#: rapid/rapid.py:2051 -#, python-format -msgid "%(noFiles)s %(filetypes)s downloaded" +#: rapid/rapid.py:3729 +msgid "Thumbnails" msgstr "" -#: rapid/rapid.py:2054 +#. Translators: this text is displayed to the user when they request information on the command line options. +#. The text %default should not be modified or left out. +#: rapid/rapid.py:3777 #, python-format -msgid "%(noFiles)s %(filetypes)s failed to download" +msgid "" +"display program information on the command line as the program runs " +"(default: %default)" msgstr "" -#: rapid/rapid.py:2057 rapid/rapid.py:5792 -msgid "warnings" +#: rapid/rapid.py:3778 +msgid "display debugging information when run from the command line" msgstr "" -#: rapid/rapid.py:2059 rapid/rapid.py:5796 -msgid "errors" +#: rapid/rapid.py:3779 +msgid "only output errors to the command line" msgstr "" -#: rapid/rapid.py:2089 -#, python-format -msgid "Source: %s\n" +#. image file extensions are recognized RAW files plus TIFF and JPG +#: rapid/rapid.py:3781 +msgid "list photo and video file extensions the program recognizes and exit" msgstr "" -#: rapid/rapid.py:2091 -#, python-format -msgid "Device: %s\n" +#: rapid/rapid.py:3783 +msgid "reset all program settings and preferences and exit" msgstr "" -#: rapid/rapid.py:2092 +#: rapid/rapid.py:3801 #, python-format -msgid "Destination: %s" +msgid "and %s" msgstr "" -#: rapid/rapid.py:2093 rapid/rapid.py:2096 -msgid "Could not create temporary download directory" +#: rapid/rapid.py:3809 +msgid "All settings and preferences have been reset" msgstr "" -#: rapid/rapid.py:2096 -msgid "Error:" +#: rapid/backupfile.py:142 rapid/backupfile.py:165 +msgid "Backing up error" msgstr "" -#: rapid/rapid.py:2120 -msgid "Backup path does not exist" +#: rapid/backupfile.py:144 +#, python-format +msgid "Destination directory could not be created: %(directory)s\n" msgstr "" -#: rapid/rapid.py:2121 +#: rapid/backupfile.py:146 rapid/backupfile.py:167 rapid/subfolderfile.py:196 #, python-format -msgid "The path %s could not be created" +msgid "" +"Source: %(source)s\n" +"Destination: %(destination)s" msgstr "" -#: rapid/rapid.py:2122 -msgid "No backups can occur" +#: rapid/backupfile.py:149 rapid/backupfile.py:169 +#, python-format +msgid "Error: %(inst)s" msgstr "" -#: rapid/rapid.py:2151 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" -"Source: %(source)s\n" -"Destination: %(destination)s\n" -"%(problem)s" +"%(problem)s\n" +"File: %(file)s" msgstr "" -#: rapid/rapid.py:2182 rapid/rapid.py:2528 rapid/rapid.py:2563 -#: rapid/rapid.py:2591 rapid/rapid.py:2622 rapid/rapid.py:2641 -#, python-format +#: rapid/device.py:79 +msgid "Device Detected" +msgstr "" + +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt +#: rapid/device.py:88 msgid "" -"Source: %(source)s\n" -"Destination: %(destination)s" +"Should this device or partition be used to download photos or videos from?" msgstr "" -#. hopefully inst will never be None, but just to be safe... -#: rapid/rapid.py:2197 -msgid "Please check your system and try again." +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt +#: rapid/device.py:107 +msgid "_Remember this choice" msgstr "" -#: rapid/rapid.py:2217 -msgid "Photos detected with the same filenames, but taken at different times" +#: rapid/downloadtracker.py:298 +msgid "MB/s" msgstr "" -#: rapid/rapid.py:2257 -msgid "Photo has already been downloaded" +#: rapid/generatenameconfig.py:150 +msgid "Date time" msgstr "" -#: rapid/rapid.py:2258 rapid/rapid.py:2657 -#, python-format -msgid "Source: %(source)s" +#: rapid/generatenameconfig.py:151 +msgid "Text" msgstr "" -#. A new day, according the user's preferences of what time a day begins, has started -#: rapid/rapid.py:2456 -msgid "New day has started - resetting 'Downloads Today' sequence number" +#: rapid/generatenameconfig.py:152 +msgid "Filename" msgstr "" -#: rapid/rapid.py:2527 -#, python-format -msgid "Backup of %(file_type)s already exists" +#: rapid/generatenameconfig.py:153 +msgid "Metadata" msgstr "" -#: rapid/rapid.py:2531 -#, python-format -msgid "Backup %(file_type)s overwritten" +#: rapid/generatenameconfig.py:154 +msgid "Sequences" msgstr "" -#: rapid/rapid.py:2535 -#, python-format -msgid "%(file_type)s not backed up to %(volume)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 +msgid "Job code" +msgstr "Jobbnavn" + +#: rapid/generatenameconfig.py:157 +msgid "Image date" msgstr "" -#: rapid/rapid.py:2537 -#, python-format -msgid "%(file_type)s not backed up" +#: rapid/generatenameconfig.py:158 +msgid "Video date" msgstr "" -#: rapid/rapid.py:2560 rapid/rapid.py:2588 rapid/rapid.py:2621 -#: rapid/rapid.py:2640 -msgid "Backing up error" +#: rapid/generatenameconfig.py:159 +msgid "Today" msgstr "" -#: rapid/rapid.py:2561 rapid/rapid.py:2589 -#, python-format -msgid "Destination directory could not be created: %(directory)s\n" +#: rapid/generatenameconfig.py:160 +msgid "Yesterday" msgstr "" -#: rapid/rapid.py:2565 rapid/rapid.py:2624 -#, python-format -msgid "Error: %(inst)s" +#. Translators: Download time is the time and date that the download started (when the user clicked the Download button) +#: rapid/generatenameconfig.py:162 +msgid "Download time" msgstr "" -#: rapid/rapid.py:2566 rapid/rapid.py:2594 rapid/rapid.py:2625 -#: rapid/rapid.py:2644 -#, python-format -msgid "The %(file_type)s was not backed up." +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:164 +msgid "Name + extension" msgstr "" -#: rapid/rapid.py:2593 rapid/rapid.py:2643 -#, python-format -msgid "Error: %(errno)s %(strerror)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:166 +msgid "Name" msgstr "" -#: rapid/rapid.py:2656 -#, python-format -msgid "%(file_type)s could not be backed up" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:168 +msgid "Extension" msgstr "" -#: rapid/rapid.py:2659 -msgid "No suitable backup volume was found" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:170 +msgid "Image number" msgstr "" -#: rapid/rapid.py:2661 -msgid "A backup location was not found" +#: rapid/generatenameconfig.py:171 +msgid "Video number" msgstr "" -#: rapid/rapid.py:2715 -#, python-format -msgid "This device has no %(types_searched_for)s to download from." +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:173 +msgid "Aperture" msgstr "" -#: rapid/rapid.py:2788 -#, python-format -msgid "Download has started from %s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:175 +msgid "ISO" msgstr "" -#: rapid/rapid.py:2799 -#, python-format -msgid "Attempting to download %s files" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:177 +msgid "Exposure time" msgstr "" -#. reset the progress bar to update the status of this download attempt -#: rapid/rapid.py:2831 rapid/rapid.py:2898 -#, python-format -msgid "%(number)s of %(total)s %(filetypes)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:179 +msgid "Focal length" msgstr "" -#: rapid/rapid.py:2894 -#, python-format -msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:181 +msgid "Camera make" msgstr "" -#: rapid/rapid.py:2919 rapid/rapid.py:2923 -msgid "Could not delete photo or video from device" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:183 +msgid "Camera model" msgstr "" -#: rapid/rapid.py:2920 -#, python-format -msgid "" -"Photo: %(source)s\n" -"Error: %(errno)s %(strerror)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:185 +msgid "Short camera model" msgstr "" -#: rapid/rapid.py:2924 -#, python-format -msgid "Photo: %(source)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:187 +msgid "Hyphenated short camera model" msgstr "" -#: rapid/rapid.py:2926 -#, python-format -msgid "Deleted %(number)i %(filetypes)s from device" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:189 +msgid "Serial number" msgstr "" -#: rapid/rapid.py:2939 -#, python-format -msgid "Download complete from %s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:191 +msgid "Shutter count" msgstr "" -#. Device refers to a thing like a camera, memory card in its reader, external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:3054 rapid/rapid.py:3523 -msgid "Device" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" msgstr "" -#. Size refers to the total size of images on the device, typically in MB or GB -#: rapid/rapid.py:3059 rapid/rapid.py:3512 -msgid "Size" +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" msgstr "" -#: rapid/rapid.py:3062 -msgid "Download Progress" +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" msgstr "" -#: rapid/rapid.py:3150 -msgid "Downloading From Cameras" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata +#: rapid/generatenameconfig.py:199 +msgid "Owner name" msgstr "" -#: rapid/rapid.py:3156 -msgid "Downloading directly from a camera may work poorly or not at all" +#: rapid/generatenameconfig.py:200 +msgid "Codec" msgstr "" -#: rapid/rapid.py:3157 -msgid "" -"Downloading from a card reader always works and is generally much faster. It " -"is strongly recommended to use a card reader." +#: rapid/generatenameconfig.py:201 +msgid "Width" msgstr "" -#: rapid/rapid.py:3171 -msgid "_Show this message again" -msgstr "_vis denne meldingen igjen" +#: rapid/generatenameconfig.py:202 +msgid "Height" +msgstr "" -#: rapid/rapid.py:3206 -msgid "Device Detected" +#: rapid/generatenameconfig.py:203 +msgid "Length" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt -#: rapid/rapid.py:3215 -msgid "" -"Should this device or partition be used to download photos or videos from?" +#: rapid/generatenameconfig.py:204 +msgid "Frames Per Second" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt -#: rapid/rapid.py:3234 -msgid "_Remember this choice" +#: rapid/generatenameconfig.py:205 +msgid "Artist" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt -#: rapid/rapid.py:3271 -#, python-format -msgid "%s selected for downloading from" +#: rapid/generatenameconfig.py:206 +msgid "Copyright" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt -#: rapid/rapid.py:3274 -msgid "This device or partition will always be used to download from" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers +#: rapid/generatenameconfig.py:208 +msgid "Downloads today" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt -#: rapid/rapid.py:3277 -#, python-format -msgid "%s rejected as a download device" -msgstr "%s avvist som en nedlastings enhet" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers +#: rapid/generatenameconfig.py:210 +msgid "Session number" +msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt -#: rapid/rapid.py:3280 -msgid "This device or partition will never be used to download from" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers +#: rapid/generatenameconfig.py:212 +msgid "Subfolder number" msgstr "" -"Denne enheten eller partisjonen vil aldri bli brukt til å laste ned fra" -#: rapid/rapid.py:3287 -msgid "Remove all Job Codes?" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers +#: rapid/generatenameconfig.py:214 +msgid "Stored number" msgstr "" -#: rapid/rapid.py:3304 -msgid "Should all Job Codes be removed?" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters +#: rapid/generatenameconfig.py:216 +msgid "Sequence letter" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/rapid.py:3332 -msgid "Enter a Job Code" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:218 +msgid "All digits" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/rapid.py:3351 -msgid "Enter a new Job Code, or select a previous one" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:220 +msgid "Last digit" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/rapid.py:3354 -msgid "Enter a new Job Code" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:222 +msgid "Last 2 digits" msgstr "" -#: rapid/rapid.py:3359 rapid/rapid.py:4534 -msgid "Job Code:" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:224 +msgid "Last 3 digits" msgstr "" -#: rapid/rapid.py:3406 -msgid "Job Code entered" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename +#: rapid/generatenameconfig.py:226 +msgid "Last 4 digits" +msgstr "" + +#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization +#: rapid/generatenameconfig.py:228 +msgid "Original Case" +msgstr "" + +#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization +#: rapid/generatenameconfig.py:230 +msgid "UPPERCASE" +msgstr "" + +#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization +#: rapid/generatenameconfig.py:232 +msgid "lowercase" +msgstr "" + +#: rapid/generatenameconfig.py:233 +msgid "One digit" +msgstr "" + +#: rapid/generatenameconfig.py:234 +msgid "Two digits" +msgstr "" + +#: rapid/generatenameconfig.py:235 +msgid "Three digits" msgstr "" -#: rapid/rapid.py:3408 -msgid "Job Code not entered" +#: rapid/generatenameconfig.py:236 +msgid "Four digits" msgstr "" -#: rapid/rapid.py:3458 -msgid "Status" +#: rapid/generatenameconfig.py:237 +msgid "Five digits" msgstr "" -#: rapid/rapid.py:3466 -msgid "Type" +#: rapid/generatenameconfig.py:238 +msgid "Six digits" msgstr "" -#: rapid/rapid.py:3475 rapid/rapid.py:4961 rapid/rapid.py:4963 -msgid "Photo" +#: rapid/generatenameconfig.py:239 +msgid "Seven digits" msgstr "" -#: rapid/rapid.py:3477 -msgid "File" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:241 +msgid "Subseconds" msgstr "" -#: rapid/rapid.py:3492 -msgid "Job Code" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:243 +msgid "YYYYMMDD" msgstr "" -#: rapid/rapid.py:3502 -msgid "Date" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:245 +msgid "YYYY-MM-DD" msgstr "" -#: rapid/rapid.py:3534 rapid/renamesubfolderprefs.py:195 -msgid "Filename" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:247 +msgid "YYMMDD" msgstr "" -#: rapid/rapid.py:3545 -msgid "Path" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:249 +msgid "YY-MM-DD" msgstr "" -#: rapid/rapid.py:3955 -#, python-format -msgid "%(filetype)s was downloaded successfully" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:251 +msgid "MMDDYYYY" msgstr "" -#: rapid/rapid.py:3957 -#, python-format -msgid "%(filetype)s was not downloaded" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:253 +msgid "MMDDYY" msgstr "" -#: rapid/rapid.py:3959 -#, python-format -msgid "%(filetype)s was downloaded with warnings" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:255 +msgid "MMDD" msgstr "" -#: rapid/rapid.py:3961 -#, python-format -msgid "%(filetype)s was downloaded but there were problems backing up" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:257 +msgid "DDMMYYYY" msgstr "" -#: rapid/rapid.py:3963 -#, python-format -msgid "%(filetype)s was neither downloaded nor backed up" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:259 +msgid "DDMMYY" msgstr "" -#: rapid/rapid.py:3965 -#, python-format -msgid "%(filetype)s is ready to be downloaded" -msgstr "%(filetype)s er klar for nedlasting" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:261 +msgid "YYYY" +msgstr "YYYY" -#: rapid/rapid.py:3967 -#, python-format -msgid "%(filetype)s is about to be downloaded" -msgstr "" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:263 +msgid "YY" +msgstr "YY" -#: rapid/rapid.py:3969 -#, python-format -msgid "%(filetype)s will be downloaded with warnings" -msgstr "" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:265 +msgid "MM" +msgstr "MM" -#: rapid/rapid.py:3971 -#, python-format -msgid "%(filetype)s cannot be downloaded" -msgstr "" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:267 +msgid "DD" +msgstr "DD" -#: rapid/rapid.py:4341 -msgid "Preview" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:269 +msgid "HHMMSS" msgstr "" -#: rapid/rapid.py:4556 -msgid "Enter a new Job Code and press Enter, or select an existing Job Code" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:271 +msgid "HHMM" msgstr "" -#: rapid/rapid.py:4928 -#, python-format -msgid "%(free)s available" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:273 +msgid "HH-MM-SS" msgstr "" -#. user manually specified backup location -#: rapid/rapid.py:4934 -#, python-format -msgid "Backing up to %(path)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:275 +msgid "HH-MM" msgstr "" -#: rapid/rapid.py:4939 -#, python-format -msgid "%(freespace)s. %(backuppaths)s." -msgstr "" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:277 +msgid "HH" +msgstr "HH" -#: rapid/rapid.py:4948 -#, python-format -msgid "" -"Sorry, this device location does not exist:\n" -"%(path)s\n" -"\n" -"Please resolve the problem, or modify your preferences." +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:279 +msgid "MM (minutes)" msgstr "" -#: rapid/rapid.py:4952 -msgid "Problem with Device Location Folder" -msgstr "" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime +#: rapid/generatenameconfig.py:281 +msgid "SS" +msgstr "SS" -#: rapid/rapid.py:4961 -msgid "Video" +#: rapid/preferencesdialog.py:371 +#, python-format +msgid "Subfolder preferences should not start with a %s" msgstr "" -#: rapid/rapid.py:4968 +#: rapid/preferencesdialog.py:373 #, python-format -msgid "The %(file_type)s Download Folder does not exist.\n" +msgid "Subfolder preferences should not end with a %s" msgstr "" -#: rapid/rapid.py:4977 +#: rapid/preferencesdialog.py:377 #, python-format -msgid "The %(file_type)s Download Folder exists but cannot be written to.\n" +msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" -#: rapid/rapid.py:4982 -msgid "" -"Sorry, problems were encountered with your download folders. Please fix the " -"problems or modify the preferences.\n" -"\n" +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 +msgid "Remove all Job Codes?" msgstr "" -#: rapid/rapid.py:4985 -msgid "Problem with Download Folder" +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 +msgid "Should all Job Codes be removed?" msgstr "" -#: rapid/rapid.py:4987 -msgid "Problem with Download Folders" +#: rapid/preferencesdialog.py:443 +msgid "Remove all Remembered Paths?" msgstr "" -#: rapid/rapid.py:5000 -msgid "Some preferences will be reset." +#: rapid/preferencesdialog.py:444 +msgid "Should all remembered paths be removed?" msgstr "" -#: rapid/rapid.py:5033 -msgid "Displaying warning about downloading directly from camera" +#: rapid/preferencesdialog.py:450 +msgid "Remove all Ignored Paths?" msgstr "" -#: rapid/rapid.py:5043 -#, python-format -msgid "Prompting whether to use %s" +#: rapid/preferencesdialog.py:451 +msgid "Should all ignored paths be removed?" msgstr "" -#: rapid/rapid.py:5070 -msgid "Prompting for Job Code" +#: rapid/preferencesdialog.py:462 +msgid "Error in Photo Rename preferences" msgstr "" -#: rapid/rapid.py:5074 -msgid "Already prompting for Job Code, do not prompt again" -msgstr "" +#: rapid/preferencesdialog.py:642 +msgid "Error in Video Rename preferences" +msgstr "Feil i innstillingene til nytt videonavn" -#: rapid/rapid.py:5091 -msgid "Starting downloads" +#: rapid/preferencesdialog.py:663 +msgid "Error in Photo Download Subfolders preferences" msgstr "" -#. autostart is true -#: rapid/rapid.py:5095 -msgid "Starting downloads that have been waiting for a Job Code" +#: rapid/preferencesdialog.py:680 +msgid "Error in Video Download Subfolders preferences" msgstr "" -#: rapid/rapid.py:5142 -#, python-format -msgid "Creating photo download folder %(folder)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode +#: rapid/preferencesdialog.py:739 +msgid "Enter a Job Code" msgstr "" -#: rapid/rapid.py:5147 -#, python-format -msgid "Failed to create default photo download folder %(folder)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode +#: rapid/preferencesdialog.py:755 +msgid "Enter a new Job Code, or select a previous one" msgstr "" -#: rapid/rapid.py:5151 -#, python-format -msgid "Creating video download folder %(folder)s" +#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode +#: rapid/preferencesdialog.py:758 +msgid "Enter a new Job Code" msgstr "" -#: rapid/rapid.py:5156 -#, python-format -msgid "Failed to create default video download folder %(folder)s" +#: rapid/preferencesdialog.py:763 +msgid "Job Code:" msgstr "" -#: rapid/rapid.py:5181 -msgid "" -"A newer version of this program was previously run on this computer.\n" -"\n" +#: rapid/preferencesdialog.py:819 +msgid "Enter a Path to Ignore" msgstr "" -#: rapid/rapid.py:5183 -msgid "" -"Program preferences appear to be valid, but please check them to ensure " -"correct operation." +#: rapid/preferencesdialog.py:831 +msgid "Specify a path that will never be scanned for photos or videos" msgstr "" -#: rapid/rapid.py:5185 -msgid "Sorry, some preferences are invalid and will be reset." +#: rapid/preferencesdialog.py:836 +msgid "Path:" msgstr "" -#: rapid/rapid.py:5186 -msgid "Warning:" +#: rapid/preferencesdialog.py:1079 +msgid "Job Code" msgstr "" -#: rapid/rapid.py:5191 -msgid "" -"This version of the program is newer than the previously run version. " -"Checking preferences." +#: rapid/preferencesdialog.py:1350 +msgid "Select a folder in which to backup photos" msgstr "" -#: rapid/rapid.py:5198 -msgid "Preferences were modified." +#: rapid/preferencesdialog.py:1363 +msgid "Select a folder in which to backup videos" msgstr "" -#: rapid/rapid.py:5199 +#. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees +#: rapid/preferencesdialog.py:1458 msgid "" -"This version of the program uses different preferences than the old version. " -"Your preferences have been updated.\n" -"\n" -"Please check them to ensure correct operation." -msgstr "" - -#: rapid/rapid.py:5203 -msgid "No preferences needed to be changed." +"Warning: There is insufficient metadata to fully generate the " +"name. Please use other renaming options." msgstr "" -#: rapid/rapid.py:5205 +#: rapid/preferencesdialog.py:1509 msgid "" -"This version of the program uses different preferences than the old version. " -"Some of your previous preferences were invalid, and could not be updated. " -"They will be reset." -msgstr "" - -#: rapid/rapid.py:5215 -msgid "Problem using pynotify." +"Warning: There is insufficient metadata to fully generate " +"subfolders. Please use other subfolder naming options." msgstr "" -#: rapid/rapid.py:5231 -msgid "Failed to receive pynotify server capabilities." +#. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see +#: rapid/preferencesdialog.py:1512 +#, python-format +msgid "Example: %s" msgstr "" -#: rapid/rapid.py:5242 +#. Preferences list is now empty +#: rapid/preferencesdialog.py:1602 +#, python-format msgid "" -"Warning: desktop environment notification server is incorrectly configured." +"The %(filetype)s subfolder preferences entered are invalid and cannot be " +"used.\n" +"They will be reset to their default values." msgstr "" -#: rapid/rapid.py:5290 -msgid "and" +#: rapid/preferencesdialog.py:1747 +#, python-format +msgid "" +"The following regular expressions are invalid, and will be removed unless " +"you correct them:\n" +" %s" msgstr "" -#: rapid/rapid.py:5295 -msgid "Using backup devices" +#: rapid/preferencesdialog.py:1749 +#, python-format +msgid "" +"This regular expression is invalid, and will be removed unless you correct " +"it:\n" +" %s" msgstr "" -#: rapid/rapid.py:5297 -msgid "Using backup device" +#: rapid/preferencesdialog.py:1750 +msgid "Invalid regular expression" msgstr "" -#: rapid/rapid.py:5299 -msgid "No backup devices detected" +#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this. +#: rapid/preferencesdialog.py:1931 +msgid "externaldrive1" msgstr "" -#: rapid/rapid.py:5349 rapid/rapid.py:5511 -#, python-format -msgid "Device %(device)s (%(path)s) ignored" +#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this. +#: rapid/preferencesdialog.py:1933 +msgid "externaldrive2" msgstr "" -#: rapid/rapid.py:5470 -#, python-format -msgid "Detected %(device)s with path %(path)s" -msgstr "" +#: rapid/prefsrapid.py:126 +msgid "New York" +msgstr "New York" -#: rapid/rapid.py:5474 -msgid "Automatically start download is true" -msgstr "" +#: rapid/prefsrapid.py:127 +msgid "Manila" +msgstr "Manila" -#: rapid/rapid.py:5476 -msgid "Automatically start download is false" -msgstr "" +#: rapid/prefsrapid.py:127 +msgid "Prague" +msgstr "Praha" -#: rapid/rapid.py:5529 -msgid "Using manually specified path" -msgstr "" +#: rapid/prefsrapid.py:127 +msgid "Helsinki" +msgstr "Helsinki" -#. the user is trying to backup to a device that is currently being downloaded from..... we don't normally allow that, but what to do? -#: rapid/rapid.py:5597 -#, python-format -msgid "Warning: backup device %(device)s is currently being downloaded from" -msgstr "" +#: rapid/prefsrapid.py:127 +msgid "Wellington" +msgstr "Wellington" -#: rapid/rapid.py:5613 -msgid "D_ownload Selected" -msgstr "" +#: rapid/prefsrapid.py:128 +msgid "Tehran" +msgstr "Teheran" -#: rapid/rapid.py:5713 rapid/rapid.py:5764 -msgid "All downloads complete" -msgstr "" +#: rapid/prefsrapid.py:128 +msgid "Kampala" +msgstr "Kampala" -#: rapid/rapid.py:5728 -msgid "MB/s" -msgstr "" +#: rapid/prefsrapid.py:128 +msgid "Paris" +msgstr "Paris" -#: rapid/rapid.py:5738 -msgid "About 1 second remaining" -msgstr "" +#: rapid/prefsrapid.py:128 +msgid "Berlin" +msgstr "Berlin" -#: rapid/rapid.py:5740 -#, python-format -msgid "About %i seconds remaining" -msgstr "" +#: rapid/prefsrapid.py:128 +msgid "Sydney" +msgstr "Sydney" -#: rapid/rapid.py:5742 -msgid "About 1 minute remaining" -msgstr "" +#: rapid/prefsrapid.py:129 +msgid "Budapest" +msgstr "Budapest" -#. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. -#. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount -#. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:5747 -#, python-format -msgid "About %(minutes)i:%(seconds)02i minutes remaining" -msgstr "" +#: rapid/prefsrapid.py:129 +msgid "Rome" +msgstr "Roma" -#: rapid/rapid.py:5767 rapid/rapid.py:5773 rapid/rapid.py:5779 -#: rapid/rapid.py:5785 rapid/rapid.py:5790 rapid/rapid.py:5794 -#, python-format -msgid "%(number)s %(numberdownloaded)s" -msgstr "" +#: rapid/prefsrapid.py:129 +msgid "Moscow" +msgstr "Moskva" -#: rapid/rapid.py:5769 rapid/rapid.py:5781 -#, python-format -msgid "%(filetype)s downloaded" -msgstr "" +#: rapid/prefsrapid.py:129 +msgid "Delhi" +msgstr "Delhi" -#: rapid/rapid.py:5775 rapid/rapid.py:5787 -#, python-format -msgid "%(filetype)s failed to download" -msgstr "" +#: rapid/prefsrapid.py:129 +msgid "Warsaw" +msgstr "Warszawa" -#: rapid/rapid.py:5955 -msgid "_Resume" -msgstr "" +#: rapid/prefsrapid.py:130 +msgid "Jakarta" +msgstr "Jakarta" -#: rapid/rapid.py:5958 -msgid "_Download All" -msgstr "" +#: rapid/prefsrapid.py:130 +msgid "Madrid" +msgstr "Madrid" -#. This text will be displayed to the user on the Download / Pause button. -#: rapid/rapid.py:5967 -msgid "_Pause" -msgstr "" +#: rapid/prefsrapid.py:130 +msgid "Stockholm" +msgstr "Stockholm" -#: rapid/rapid.py:6079 -msgid "Download device settings preferences were changed." +#. components +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 +msgid "subfolder" msgstr "" -#: rapid/rapid.py:6091 -msgid "Backup preferences were changed." +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 +msgid "filename" msgstr "" -#: rapid/rapid.py:6097 -msgid "Subfolder and filename preferences were changed." +#: rapid/problemnotification.py:80 +#, python-format +msgid "Date time value %s appears invalid." msgstr "" -#: rapid/rapid.py:6108 -msgid "Download folder preferences were changed." +#: rapid/problemnotification.py:81 +msgid "Filename does not have an extension." msgstr "" -#: rapid/rapid.py:6307 -msgid "Goodbye" +#. a number component is something like the 8346 in IMG_8346.JPG +#: rapid/problemnotification.py:83 +msgid "Filename does not have a number component." msgstr "" -#. Translators: this text is displayed to the user when they request information on the command line options. -#. The text %default should not be modified or left out. -#: rapid/rapid.py:6318 +#: rapid/problemnotification.py:84 #, python-format -msgid "" -"display program information on the command line as the program runs " -"(default: %default)" +msgid "Error generating component %s." msgstr "" -#: rapid/rapid.py:6319 -msgid "display debugging information when run from the command line" +#. a generic problem +#: rapid/problemnotification.py:86 +#, python-format +msgid "%(filetype)s metadata cannot be read" msgstr "" -#: rapid/rapid.py:6320 -msgid "only output errors to the command line" +#: rapid/problemnotification.py:88 +#, python-format +msgid "%(filetype)s %(area)s could not be generated" msgstr "" -#. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:6322 -msgid "list photo and video file extensions the program recognizes and exit" +#: rapid/problemnotification.py:90 rapid/problemnotification.py:91 +#, python-format +msgid "An error occurred when copying the %(filetype)s" msgstr "" -#: rapid/rapid.py:6323 -msgid "reset all program settings and preferences and exit" +#: rapid/problemnotification.py:93 rapid/problemnotification.py:94 +#, python-format +msgid "%(filetype)s already exists" msgstr "" -#: rapid/rapid.py:6337 -msgid "Photos:" +#: rapid/problemnotification.py:97 +#, python-format +msgid "" +"%(filetype)s could not be backed up because no suitable backup locations " +"were found." msgstr "" -#: rapid/rapid.py:6337 -msgid "Videos:" +#: rapid/problemnotification.py:102 +#, python-format +msgid "" +"%(image1)s was taken on %(image1_date)s at %(image1_time)s, and %(image2)s " +"on %(image2_date)s at %(image2_time)s." msgstr "" -#: rapid/rapid.py:6342 +#: rapid/problemnotification.py:103 #, python-format -msgid "and %s" +msgid "%(filetype)s was already downloaded" msgstr "" -#: rapid/rapid.py:6350 -msgid "All settings and preferences have been reset" +#: rapid/problemnotification.py:107 +#, python-format +msgid "" +"The existing %(filetype)s was last modified on %(date)s at %(time)s. Unique " +"identifier '%(identifier)s' added." msgstr "" -#. Which volume management code is being used (GIO or GnomeVFS) -#: rapid/rapid.py:6354 rapid/rapid.py:6355 rapid/rapid.py:6357 -#: rapid/rapid.py:6362 rapid/rapid.py:6366 -msgid "Using" +#: rapid/problemnotification.py:108 +#, python-format +msgid "The existing %(filetype)s was last modified on %(date)s at %(time)s." msgstr "" -#: rapid/rapid.py:6359 -msgid "\n" +#: rapid/problemnotification.py:109 +#, python-format +msgid "There is no data with which to name the %(filetype)s." msgstr "" -#. this application is already running -#: rapid/rapid.py:6383 +#: rapid/problemnotification.py:111 #, python-format -msgid "%s is already running" +msgid "Error: %(errorno)s %(strerror)s" msgstr "" -#: rapid/renamesubfolderprefs.py:193 -msgid "Date time" +#: rapid/problemnotification.py:201 +msgid "The metadata might be corrupt." msgstr "" -#: rapid/renamesubfolderprefs.py:194 -msgid "Text" +#: rapid/problemnotification.py:204 +msgid "" +"The filename, extension and Exif information indicate it has already been " +"downloaded." msgstr "" -#: rapid/renamesubfolderprefs.py:196 -msgid "Metadata" +#: rapid/problemnotification.py:223 +#, python-format +msgid " It was backed up to %(volume)s" msgstr "" -#: rapid/renamesubfolderprefs.py:197 -msgid "Sequences" +#: rapid/problemnotification.py:225 +msgid " It was backed up to these devices: " msgstr "" -#: rapid/renamesubfolderprefs.py:200 -msgid "Image date" +#: rapid/problemnotification.py:227 rapid/problemnotification.py:288 +#: rapid/problemnotification.py:300 +#, python-format +msgid "%s, " msgstr "" -#: rapid/renamesubfolderprefs.py:201 -msgid "Video date" +#: rapid/problemnotification.py:228 rapid/problemnotification.py:289 +#: rapid/problemnotification.py:301 +#, python-format +msgid "%(volumes)s and %(final_volume)s." msgstr "" -#: rapid/renamesubfolderprefs.py:202 -msgid "Today" +#: rapid/problemnotification.py:240 +#, python-format +msgid "" +"Photos detected with the same filenames, but taken at different times: " +"%(details)s" msgstr "" -#: rapid/renamesubfolderprefs.py:203 -msgid "Yesterday" +#: rapid/problemnotification.py:257 +#, python-format +msgid "An error occurred when backing up on %(volume)s: %(inst)s." msgstr "" -#. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/renamesubfolderprefs.py:205 -msgid "Download time" +#: rapid/problemnotification.py:259 +#, python-format +msgid "An error occurred when backing up on %(volume)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:207 -msgid "Name + extension" +#: rapid/problemnotification.py:261 +msgid "Errors occurred when backing up on the following backup devices: " msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:209 -msgid "Name" +#: rapid/problemnotification.py:265 rapid/problemnotification.py:313 +#, python-format +msgid "%(volume)s (%(inst)s), " msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:211 -msgid "Extension" +#: rapid/problemnotification.py:267 +#, python-format +msgid "%(volume)s, " msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:213 -msgid "Image number" +#: rapid/problemnotification.py:271 rapid/problemnotification.py:315 +#, python-format +msgid "%(volumes)s and %(volume)s (%(inst)s)." msgstr "" -#: rapid/renamesubfolderprefs.py:214 -msgid "Video number" +#: rapid/problemnotification.py:276 +#, python-format +msgid "%(volumes)s and %(volume)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:216 -msgid "Aperture" +#: rapid/problemnotification.py:284 +#, python-format +msgid "Backup already exists on %(volume)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:218 -msgid "ISO" +#: rapid/problemnotification.py:286 +msgid "Backups already exist in these locations: " msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:220 -msgid "Exposure time" +#: rapid/problemnotification.py:296 +#, python-format +msgid "Backup overwritten on %(volume)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:222 -msgid "Focal length" +#: rapid/problemnotification.py:298 +msgid "Backups overwritten on these devices: " msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:224 -msgid "Camera make" +#: rapid/problemnotification.py:309 +#, python-format +msgid "An error occurred when creating directories on %(volume)s: %(inst)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:226 -msgid "Camera model" +#: rapid/problemnotification.py:311 +msgid "" +"Errors occurred when creating directories on the following backup devices: " msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:228 -msgid "Short camera model" +#: rapid/problemnotification.py:322 +#, python-format +msgid "%(previousproblem)s Additionally, %(newproblem)s" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:230 -msgid "Hyphenated short camera model" +#: rapid/problemnotification.py:330 +#, python-format +msgid " Furthermore, there were %(problems)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:232 -msgid "Serial number" +#: rapid/problemnotification.py:332 +#, python-format +msgid " Furthermore, there was a %(problem)s." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:234 -msgid "Shutter count" +#: rapid/problemnotification.py:341 +#, python-format +msgid "The %(type)s metadata is missing." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/renamesubfolderprefs.py:236 -msgid "Owner name" +#: rapid/problemnotification.py:343 +msgid "The following metadata is missing: " msgstr "" -#: rapid/renamesubfolderprefs.py:237 -msgid "Codec" +#: rapid/problemnotification.py:346 +#, python-format +msgid "%(missing_metadata_elements)s and %(final_missing_metadata_element)s." msgstr "" -#: rapid/renamesubfolderprefs.py:238 -msgid "Width" +#: rapid/problemnotification.py:363 +msgid "Problems in subfolder and filename generation" msgstr "" -#: rapid/renamesubfolderprefs.py:239 -msgid "Height" +#: rapid/problemnotification.py:365 +msgid "Problem in subfolder and filename generation" msgstr "" -#: rapid/renamesubfolderprefs.py:240 -msgid "Length" +#: rapid/problemnotification.py:368 +#, python-format +msgid "Problems in %s generation" msgstr "" -#: rapid/renamesubfolderprefs.py:241 -msgid "Frames Per Second" +#: rapid/problemnotification.py:370 +#, python-format +msgid "Problem in %s generation" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/renamesubfolderprefs.py:243 -msgid "Downloads today" +#: rapid/problemnotification.py:379 +#, python-format +msgid "%(filetype)s already exists, but it was backed up" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/renamesubfolderprefs.py:245 -msgid "Session number" +#: rapid/problemnotification.py:381 +#, python-format +msgid "An error occurred when copying the %(filetype)s, but it was backed up" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/renamesubfolderprefs.py:247 -msgid "Subfolder number" +#: rapid/problemnotification.py:401 +msgid "Multiple problems were encountered" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/renamesubfolderprefs.py:249 -msgid "Stored number" +#: rapid/problemnotification.py:403 rapid/subfolderfile.py:230 +msgid "Photos detected with the same filenames, but taken at different times" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/renamesubfolderprefs.py:251 -msgid "Sequence letter" +#: rapid/problemnotification.py:409 +msgid "there were errors backing up" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:253 -msgid "All digits" +#: rapid/problemnotification.py:410 +msgid "There were errors backing up" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:255 -msgid "Last digit" +#: rapid/problemnotification.py:412 +msgid "there was an error backing up" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:257 -msgid "Last 2 digits" +#: rapid/problemnotification.py:413 +msgid "There was an error backing up" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:259 -msgid "Last 3 digits" +#. e.g. +#: rapid/problemnotification.py:416 +#, python-format +msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/renamesubfolderprefs.py:261 -msgid "Last 4 digits" +#: rapid/rpdfile.py:139 +#, python-format +msgid "%(number)s %(filetypes)s" msgstr "" -#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/renamesubfolderprefs.py:263 -msgid "Original Case" +#: rapid/subfolderfile.py:79 +#, python-format +msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "" -#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/renamesubfolderprefs.py:265 -msgid "UPPERCASE" +#: rapid/subfolderfile.py:300 +msgid "Photo has already been downloaded" msgstr "" -#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/renamesubfolderprefs.py:267 -msgid "lowercase" +#: rapid/subfolderfile.py:301 +#, python-format +msgid "Source: %(source)s" msgstr "" -#: rapid/renamesubfolderprefs.py:268 -msgid "One digit" +#: rapid/subfolderfile.py:359 +msgid "subfolder and filename" msgstr "" -#: rapid/renamesubfolderprefs.py:269 -msgid "Two digits" +#: rapid/subfolderfile.py:397 +msgid "Failed to create download subfolder" msgstr "" -#: rapid/renamesubfolderprefs.py:270 -msgid "Three digits" +#: rapid/subfolderfile.py:398 +#, python-format +msgid "Path: %s" msgstr "" -#: rapid/renamesubfolderprefs.py:271 -msgid "Four digits" +#: rapid/glade3/rapid.ui.h:1 +msgid "About..." msgstr "" -#: rapid/renamesubfolderprefs.py:272 -msgid "Five digits" +#: rapid/glade3/rapid.ui.h:2 +msgid "Check All" msgstr "" -#: rapid/renamesubfolderprefs.py:273 -msgid "Six digits" +#: rapid/glade3/rapid.ui.h:3 +msgid "Check All Photos" msgstr "" -#: rapid/renamesubfolderprefs.py:274 -msgid "Seven digits" +#: rapid/glade3/rapid.ui.h:4 +msgid "Check All Videos" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:276 -msgid "Subseconds" +#: rapid/glade3/rapid.ui.h:6 +msgid "Download / Pause" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:278 -msgid "YYYYMMDD" +#: rapid/glade3/rapid.ui.h:7 +msgid "Get Help Online..." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:280 -msgid "YYYY-MM-DD" +#: rapid/glade3/rapid.ui.h:8 +msgid "Help" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:282 -msgid "YYMMDD" +#: rapid/glade3/rapid.ui.h:9 +msgid "Make a Donation..." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:284 -msgid "YY-MM-DD" +#: rapid/glade3/rapid.ui.h:10 +msgid "Next File" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:286 -msgid "MMDDYYYY" +#: rapid/glade3/rapid.ui.h:11 +msgid "Preferences" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:288 -msgid "MMDDYY" +#: rapid/glade3/rapid.ui.h:12 +msgid "Previous File" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:290 -msgid "MMDD" +#: rapid/glade3/rapid.ui.h:13 +msgid "Quit" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:292 -msgid "DDMMYYYY" +#: rapid/glade3/rapid.ui.h:15 +msgid "Refresh" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:294 -msgid "DDMMYY" +#: rapid/glade3/rapid.ui.h:16 +msgid "Report a Problem..." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:296 -msgid "YYYY" -msgstr "YYYY" - -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:298 -msgid "YY" -msgstr "YY" - -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:300 -msgid "MM" -msgstr "MM" +#: rapid/glade3/rapid.ui.h:17 +msgid "Select All Wit_h Job Code" +msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:302 -msgid "DD" -msgstr "DD" +#: rapid/glade3/rapid.ui.h:18 +msgid "Select All Without _Job Code" +msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:304 -msgid "HHMMSS" +#: rapid/glade3/rapid.ui.h:19 +msgid "Translate this Application..." msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:306 -msgid "HHMM" +#: rapid/glade3/rapid.ui.h:20 +msgid "Uncheck All" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:308 -msgid "HH-MM-SS" +#: rapid/glade3/rapid.ui.h:21 +msgid "_Check All" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:310 -msgid "HH-MM" +#: rapid/glade3/rapid.ui.h:22 +msgid "_Clear Completed Downloads" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:312 -msgid "HH" -msgstr "HH" +#: rapid/glade3/rapid.ui.h:23 +msgid "_Download" +msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:314 -msgid "MM (minutes)" +#: rapid/glade3/rapid.ui.h:24 +msgid "_Error Log" msgstr "" -#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/renamesubfolderprefs.py:316 -msgid "SS" -msgstr "SS" +#: rapid/glade3/rapid.ui.h:25 +msgid "_File" +msgstr "" -#: rapid/renamesubfolderprefs.py:801 -#, python-format -msgid "" -"Preference key '%(key)s' is invalid.\n" -"Expected one of %(value)s" +#: rapid/glade3/rapid.ui.h:26 +msgid "_Help" msgstr "" -#: rapid/renamesubfolderprefs.py:808 -#, python-format -msgid "Preference value '%(value)s' is invalid" +#: rapid/glade3/rapid.ui.h:27 +msgid "_Include in download" msgstr "" -#: rapid/renamesubfolderprefs.py:812 -msgid "These preferences are not well formed:" +#: rapid/glade3/rapid.ui.h:28 +msgid "_Make a Donation..." msgstr "" -#: rapid/renamesubfolderprefs.py:1525 -#, python-format -msgid "Subfolder preferences should not start with a %s" +#: rapid/glade3/rapid.ui.h:29 +msgid "_Select" msgstr "" -#: rapid/renamesubfolderprefs.py:1527 -#, python-format -msgid "Subfolder preferences should not end with a %s" +#: rapid/glade3/rapid.ui.h:30 +msgid "_Translate this Application..." msgstr "" -#: rapid/renamesubfolderprefs.py:1531 -#, python-format -msgid "Subfolder preferences should not contain two %s one after the other" +#: rapid/glade3/rapid.ui.h:31 +msgid "_Uncheck All" msgstr "" -#: rapid/glade3/rapid.glade.h:1 -msgid " " +#: rapid/glade3/rapid.ui.h:32 +msgid "_View" msgstr "" -#: rapid/glade3/rapid.glade.h:2 -msgid " " +#: rapid/glade3/prefs.ui.h:1 +msgid " " msgstr "" -#: rapid/glade3/rapid.glade.h:3 +#: rapid/glade3/prefs.ui.h:2 msgid " hh:mm" msgstr "" -#: rapid/glade3/rapid.glade.h:4 +#: rapid/glade3/prefs.ui.h:3 msgid ":" msgstr "" -#: rapid/glade3/rapid.glade.h:5 +#: rapid/glade3/prefs.ui.h:4 msgid "Backup" msgstr "" -#: rapid/glade3/rapid.glade.h:6 +#: rapid/glade3/prefs.ui.h:5 msgid "Compatibility with Other Operating Systems" msgstr "" -#: rapid/glade3/rapid.glade.h:7 -msgid "Devices" -msgstr "" - -#: rapid/glade3/rapid.glade.h:8 +#: rapid/glade3/prefs.ui.h:6 msgid "Download Folder" msgstr "" -#: rapid/glade3/rapid.glade.h:9 +#: rapid/glade3/prefs.ui.h:7 msgid "Download Subfolders" msgstr "" -#: rapid/glade3/rapid.glade.h:10 +#: rapid/glade3/prefs.ui.h:8 msgid "Example" msgstr "" -#: rapid/glade3/rapid.glade.h:11 +#: rapid/glade3/prefs.ui.h:9 msgid "Job Codes" msgstr "" -#: rapid/glade3/rapid.glade.h:12 +#: rapid/glade3/prefs.ui.h:10 msgid "Photo Rename" msgstr "" -#: rapid/glade3/rapid.glade.h:13 +#: rapid/glade3/prefs.ui.h:11 msgid "Photo and Video Name Conflicts" msgstr "" -#: rapid/glade3/rapid.glade.h:14 +#: rapid/glade3/prefs.ui.h:12 msgid "Program Automation" msgstr "" -#: rapid/glade3/rapid.glade.h:15 +#: rapid/glade3/prefs.ui.h:13 msgid "Sequence Numbers" msgstr "" -#: rapid/glade3/rapid.glade.h:16 +#: rapid/glade3/prefs.ui.h:14 msgid "/media/externaldrive/Photos" msgstr "" -#: rapid/glade3/rapid.glade.h:17 +#: rapid/glade3/prefs.ui.h:15 msgid "Example: /home/user/Pictures" msgstr "" -#: rapid/glade3/rapid.glade.h:18 +#: rapid/glade3/prefs.ui.h:16 msgid "Example:" msgstr "" -#: rapid/glade3/rapid.glade.h:19 +#: rapid/glade3/prefs.ui.h:17 msgid "New:" msgstr "" -#: rapid/glade3/rapid.glade.h:20 +#: rapid/glade3/prefs.ui.h:18 msgid "Original:" msgstr "" -#: rapid/glade3/rapid.glade.h:21 -msgid "Automation" +#: rapid/glade3/prefs.ui.h:19 +msgid "Backup\t" msgstr "" -#: rapid/glade3/rapid.glade.h:22 -msgid "Backup\t" +#: rapid/glade3/prefs.ui.h:20 +msgid "Device Options" msgstr "" -#: rapid/glade3/rapid.glade.h:23 +#: rapid/glade3/prefs.ui.h:21 msgid "Devices" msgstr "" -#: rapid/glade3/rapid.glade.h:24 +#: rapid/glade3/prefs.ui.h:22 msgid "Error Handling" msgstr "" -#: rapid/glade3/rapid.glade.h:25 +#: rapid/glade3/prefs.ui.h:23 msgid "Job Codes" msgstr "" -#: rapid/glade3/rapid.glade.h:26 +#: rapid/glade3/prefs.ui.h:24 +msgid "Miscellaneous" +msgstr "" + +#: rapid/glade3/prefs.ui.h:25 msgid "Photo Download Folders" msgstr "" -#: rapid/glade3/rapid.glade.h:27 +#: rapid/glade3/prefs.ui.h:26 msgid "Photo Rename\t" msgstr "" -#: rapid/glade3/rapid.glade.h:28 +#: rapid/glade3/prefs.ui.h:27 msgid "Rename Options" msgstr "" -#: rapid/glade3/rapid.glade.h:29 +#: rapid/glade3/prefs.ui.h:28 msgid "Video Download Folders" msgstr "" -#: rapid/glade3/rapid.glade.h:30 +#: rapid/glade3/prefs.ui.h:29 msgid "Video Rename\t" msgstr "" -#: rapid/glade3/rapid.glade.h:31 +#: rapid/glade3/prefs.ui.h:30 msgid "Add unique identifier" msgstr "" -#: rapid/glade3/rapid.glade.h:32 +#: rapid/glade3/prefs.ui.h:31 msgid "Automatically detect Portable Storage Devices" msgstr "" -#: rapid/glade3/rapid.glade.h:33 +#: rapid/glade3/prefs.ui.h:32 msgid "Automatically detect backup devices" msgstr "" -#: rapid/glade3/rapid.glade.h:34 +#: rapid/glade3/prefs.ui.h:33 msgid "Automatically detect devices" msgstr "" -#: rapid/glade3/rapid.glade.h:35 -msgid "Automation" +#: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" msgstr "" -#: rapid/glade3/rapid.glade.h:36 +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "" -#: rapid/glade3/rapid.glade.h:37 -msgid "Backup location:" -msgstr "" - -#: rapid/glade3/rapid.glade.h:38 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "" -#: rapid/glade3/rapid.glade.h:39 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." msgstr "" -#: rapid/glade3/rapid.glade.h:40 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." msgstr "" -#: rapid/glade3/rapid.glade.h:41 -msgid "Copyright Damon Lynch 2007-10" -msgstr "" - -#: rapid/glade3/rapid.glade.h:42 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "" -#: rapid/glade3/rapid.glade.h:43 -msgid "Delete photos and videos from device upon download completion" +#: rapid/glade3/prefs.ui.h:40 +msgid "Device Options" msgstr "" -#: rapid/glade3/rapid.glade.h:44 +#: rapid/glade3/prefs.ui.h:41 msgid "Devices" msgstr "" -#: rapid/glade3/rapid.glade.h:45 +#: rapid/glade3/prefs.ui.h:42 msgid "" "Devices are from where to download photos and videos, such as cameras, " "memory cards or Portable Storage Devices.\n" "\n" -"You can download photos from multiple devices simultaneously, or you can " -"specify a location on your hard drive.\n" +"You can download from multiple devices simultaneously, or you can specify a " +"location on your hard drive.\n" "\n" -"If downloading directly from your camera works poorly or not at all, try " -"setting it to PTP mode. If that is not possible, consider using a card " -"reader." +"Downloading directly from cameras is currently an experimental feature. " +"If downloading directly from your camera works poorly or not at all, try " +"setting it to PTP mode. If that is not possible, a card reader must be " +"used." msgstr "" -#: rapid/glade3/rapid.glade.h:50 -msgid "Download / Pause" -msgstr "" - -#: rapid/glade3/rapid.glade.h:51 +#: rapid/glade3/prefs.ui.h:47 msgid "Download folder:" msgstr "" -#: rapid/glade3/rapid.glade.h:52 +#: rapid/glade3/prefs.ui.h:48 msgid "Downloads today:" msgstr "" -#: rapid/glade3/rapid.glade.h:53 +#: rapid/glade3/prefs.ui.h:49 msgid "Error Handling" msgstr "" -#: rapid/glade3/rapid.glade.h:54 -msgid "Error Log" +#: rapid/glade3/prefs.ui.h:50 +msgid "Exit program even if download had warnings or errors" +msgstr "" + +#: rapid/glade3/prefs.ui.h:51 +msgid "Exit program when download completes" msgstr "" -#: rapid/glade3/rapid.glade.h:55 -msgid "Exit program if download completes without any warnings or errors" +#: rapid/glade3/prefs.ui.h:52 +msgid "Generate thumbnails (slower)" msgstr "" -#: rapid/glade3/rapid.glade.h:56 -msgid "If you disable automatic detection, choose the exact backup location." +#: rapid/glade3/prefs.ui.h:53 +msgid "" +"If you disable automatic detection, choose the exact backup locations." msgstr "" -#: rapid/glade3/rapid.glade.h:57 +#: rapid/glade3/prefs.ui.h:54 msgid "" -"If you disable automatic detection, choose the exact location of the images " +"If you disable automatic detection, choose the exact location of the photos " "and videos." msgstr "" -"Hvis du deaktiverer automatisk gjenkjenning, velg den nøyaktige plasseringen " -"av bilder og videoer." -#: rapid/glade3/rapid.glade.h:58 +#: rapid/glade3/prefs.ui.h:55 msgid "" "If you enable automatic detection of Portable Storage Devices, the entire " -"device will be scanned for images. On large devices, this could take some " -"time." +"device will be scanned. On large devices, this could take some time.\n" +"\n" +"When this option is enabled, and a potential device is detected, you will be " +"prompted to determine if it should be scanned or not." msgstr "" -#: rapid/glade3/rapid.glade.h:59 -msgid "Import your photos and videos efficiently and reliably" +#: rapid/glade3/prefs.ui.h:58 +msgid "Ignored Paths" msgstr "" -#: rapid/glade3/rapid.glade.h:60 +#: rapid/glade3/prefs.ui.h:59 msgid "Job Codes" msgstr "" -#: rapid/glade3/rapid.glade.h:61 +#: rapid/glade3/prefs.ui.h:60 msgid "Location:" msgstr "Sted:" -#: rapid/glade3/rapid.glade.h:62 +#: rapid/glade3/prefs.ui.h:61 +msgid "Miscellaneous" +msgstr "" + +#: rapid/glade3/prefs.ui.h:62 msgid "Overwrite" msgstr "" -#: rapid/glade3/rapid.glade.h:63 -msgid "P_review Columns" +#: rapid/glade3/prefs.ui.h:63 +msgid "Performance" msgstr "" -#: rapid/glade3/rapid.glade.h:64 +#: rapid/glade3/prefs.ui.h:64 msgid "Photo Folders" msgstr "" -#: rapid/glade3/rapid.glade.h:65 +#: rapid/glade3/prefs.ui.h:65 msgid "Photo Rename" msgstr "" -#: rapid/glade3/rapid.glade.h:66 +#: rapid/glade3/prefs.ui.h:66 msgid "Photo backup folder name:" msgstr "" -#: rapid/glade3/rapid.glade.h:67 -msgid "Preferences: Rapid Photo Downloader" +#: rapid/glade3/prefs.ui.h:67 +msgid "Photo backup location:" msgstr "" -#: rapid/glade3/rapid.glade.h:68 -msgid "Preview _Folders" +#: rapid/glade3/prefs.ui.h:68 +msgid "Preferences: Rapid Photo Downloader" msgstr "" -#: rapid/glade3/rapid.glade.h:70 +#: rapid/glade3/prefs.ui.h:70 msgid "R_emove All" msgstr "" -#: rapid/glade3/rapid.glade.h:72 -msgid "" -"Rapid Photo Downloader is free software; you can redistribute it and/or " -"modify it under the terms of the GNU General Public License as published by " -"the Free Software Foundation; either version 2 of the License, or (at your " -"option) any later version.\n" -"\n" -"Rapid Photo Downloader is distributed in the hope that it will be useful, " -"but WITHOUT ANY WARRANTY; without even the implied warranty of " -"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General " -"Public License for more details.\n" -"\n" -"You should have received a copy of the GNU General Public License along with " -"Rapid Photo Downloader; if not, write to the Free Software Foundation, Inc., " -"51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." -msgstr "" - -#: rapid/glade3/rapid.glade.h:77 -msgid "Rename Options" -msgstr "" - -#: rapid/glade3/rapid.glade.h:78 -msgid "Se_lect None" +#: rapid/glade3/prefs.ui.h:72 +msgid "Re_move All" msgstr "" -#: rapid/glade3/rapid.glade.h:79 -msgid "Select All Pho_tos" +#: rapid/glade3/prefs.ui.h:73 +msgid "Remembered Paths" msgstr "" -#: rapid/glade3/rapid.glade.h:80 -msgid "Select All Vi_deos" -msgstr "" - -#: rapid/glade3/rapid.glade.h:81 -msgid "Select All Wit_h Job Code" -msgstr "" - -#: rapid/glade3/rapid.glade.h:82 -msgid "Select All Without _Job Code" +#: rapid/glade3/prefs.ui.h:74 +msgid "" +"Remembered paths are those associated with devices that you have chosen to " +"always scan or ignore when automatic detection of Portable Storage Devices " +"is enabled." msgstr "" -#: rapid/glade3/rapid.glade.h:83 -msgid "Select _All" +#: rapid/glade3/prefs.ui.h:75 +msgid "Rename Options" msgstr "" -#: rapid/glade3/rapid.glade.h:84 +#: rapid/glade3/prefs.ui.h:76 msgid "Skip" msgstr "" -#: rapid/glade3/rapid.glade.h:85 +#: rapid/glade3/prefs.ui.h:77 msgid "Skip download" msgstr "" -#: rapid/glade3/rapid.glade.h:86 +#: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the kaa metadata package for python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -#: rapid/glade3/rapid.glade.h:87 +#: rapid/glade3/prefs.ui.h:79 +msgid "" +"Specify the ending portion of any paths you want ignored when scanning " +"devices for photos or videos. Any path ending with the values below will not " +"be scanned." +msgstr "" + +#: rapid/glade3/prefs.ui.h:80 msgid "" "Specify the folder in which backups are stored on the device. \n" "\n" @@ -1793,136 +1793,107 @@ msgid "" "a folder in it with one of these names." msgstr "" -#: rapid/glade3/rapid.glade.h:90 +#: rapid/glade3/prefs.ui.h:83 msgid "" "Specify the time in 24 hour format at which the Downloads today " "sequence number should be reset." msgstr "" -#: rapid/glade3/rapid.glade.h:91 +#: rapid/glade3/prefs.ui.h:84 msgid "" "Specify whether photo, video and folder names should have any characters " "removed that are not allowed by other operating systems." msgstr "" -#: rapid/glade3/rapid.glade.h:92 +#: rapid/glade3/prefs.ui.h:85 msgid "Start downloading at program startup" msgstr "" -#: rapid/glade3/rapid.glade.h:93 +#: rapid/glade3/prefs.ui.h:86 msgid "Start downloading upon device insertion" msgstr "" -#: rapid/glade3/rapid.glade.h:94 +#: rapid/glade3/prefs.ui.h:87 msgid "Stored number:" msgstr "" -#: rapid/glade3/rapid.glade.h:95 +#: rapid/glade3/prefs.ui.h:88 msgid "Strip incompatible characters" msgstr "" -#: rapid/glade3/rapid.glade.h:96 +#: rapid/glade3/prefs.ui.h:89 msgid "Synchronize RAW + JPEG sequence numbers" msgstr "" -#: rapid/glade3/rapid.glade.h:97 +#: rapid/glade3/prefs.ui.h:90 msgid "Unmount (\"eject\") device upon download completion" msgstr "" -#: rapid/glade3/rapid.glade.h:98 +#: rapid/glade3/prefs.ui.h:91 +msgid "Use _python-style regular expressions" +msgstr "" + +#: rapid/glade3/prefs.ui.h:92 msgid "Video Folders" msgstr "" -#: rapid/glade3/rapid.glade.h:99 +#: rapid/glade3/prefs.ui.h:93 msgid "Video Rename" msgstr "" -#: rapid/glade3/rapid.glade.h:100 +#: rapid/glade3/prefs.ui.h:94 msgid "Video backup folder name:" msgstr "" -#: rapid/glade3/rapid.glade.h:101 +#: rapid/glade3/prefs.ui.h:95 +msgid "Video backup location:" +msgstr "" + +#: rapid/glade3/prefs.ui.h:96 msgid "" "When a photo or video of the same name has already been downloaded, choose " "whether to skip downloading the file, or to add a unique indentifier." msgstr "" -#: rapid/glade3/rapid.glade.h:102 +#: rapid/glade3/prefs.ui.h:97 msgid "" "When backing up, choose whether to overwrite a file on the backup device " "that has the same name, or skip backing it up." msgstr "" -#: rapid/glade3/rapid.glade.h:103 +#: rapid/glade3/prefs.ui.h:98 msgid "" "You can have your photos and videos backed up to multiple locations as they " "are downloaded, e.g. external hard drives." msgstr "" -#: rapid/glade3/rapid.glade.h:104 +#: rapid/glade3/prefs.ui.h:99 msgid "_Add..." msgstr "" -#: rapid/glade3/rapid.glade.h:105 -msgid "_Clear Completed Downloads" -msgstr "" - -#: rapid/glade3/rapid.glade.h:106 -msgid "_Device" -msgstr "" - -#: rapid/glade3/rapid.glade.h:107 -msgid "_Error Log" -msgstr "" - -#: rapid/glade3/rapid.glade.h:108 -msgid "_File" -msgstr "" - -#: rapid/glade3/rapid.glade.h:109 -msgid "_Filename" -msgstr "" - -#: rapid/glade3/rapid.glade.h:110 -msgid "_Get Help Online..." -msgstr "" - -#: rapid/glade3/rapid.glade.h:111 -msgid "_Help" -msgstr "" - -#: rapid/glade3/rapid.glade.h:112 -msgid "_Make a Donation..." -msgstr "" - -#: rapid/glade3/rapid.glade.h:113 -msgid "_Path" +#: rapid/glade3/about.ui.h:1 +msgid "Import your photos and videos efficiently and reliably" msgstr "" -#: rapid/glade3/rapid.glade.h:114 -msgid "_Preview" -msgstr "" +#~ msgid "Resetting value to zero.\n" +#~ msgstr "Nullstiller verdien.\n" -#: rapid/glade3/rapid.glade.h:115 -msgid "_Report a Problem..." -msgstr "" +#~ msgid "Invalid Downloads Today value.\n" +#~ msgstr "Ugyldig verdi for Nedlastinger idag.\n" -#: rapid/glade3/rapid.glade.h:116 -msgid "_Select" -msgstr "" +#~ msgid "Resetting to midnight.\n" +#~ msgstr "Nullstiller verdien til midnatt.\n" -#: rapid/glade3/rapid.glade.h:117 -msgid "_Size" -msgstr "" +#~ msgid "Sorry,these preferences contain an error:\n" +#~ msgstr "Beklager,innstillingene inneholder en feil:\n" -#: rapid/glade3/rapid.glade.h:118 -msgid "_Translate this Application..." -msgstr "" +#~ msgid "Resetting to default values." +#~ msgstr "Nullstiller til standardverdier." -#: rapid/glade3/rapid.glade.h:119 -msgid "_Type" -msgstr "" +#, python-format +#~ msgid "%s rejected as a download device" +#~ msgstr "%s avvist som en nedlastings enhet" -#: rapid/glade3/rapid.glade.h:120 -msgid "_View" -msgstr "" +#~ msgid "This device or partition will never be used to download from" +#~ msgstr "" +#~ "Denne enheten eller partisjonen vil aldri bli brukt til å laste ned fra" diff --git a/po/nl.po b/po/nl.po index 6ffb046..f712bc0 100644 --- a/po/nl.po +++ b/po/nl.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 04:40+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-22 09:23+0000\n" "Last-Translator: A.J. Baudrez \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Apparaat" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Grootte" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Downloadvoortgang" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s werd niet ontkoppeld" @@ -66,19 +66,38 @@ msgstr "%(device)s werd niet ontkoppeld" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "Aan het scannen..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "de 'root' van het bestandssysteem" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Aan het downloaden van %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Wenst u werkelijk vanaf hier te downloaden? Het doorlopen van deze plaats " +"kan op bepaalde systemen heel lang duren" + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Download" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pauze" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,137 +117,177 @@ msgstr "" "Deze downloadmap is ongeldig:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Download kan niet plaatsgrijpen" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Ongeveer 1 seconde te gaan" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Ongeveer %i seconden te gaan" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Ongeveer 1 minuut te gaan" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Ongeveer %(minutes)i:%(seconds)02i minuten te gaan" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "foto's en video's" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "foto's of video's" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "video's" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "foto's" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "foto" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s gedownload" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s kon niet gedownload worden" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "verwittigingen" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Alle downloads zijn afgelopen" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s gedownload" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s werden niet gedownload" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "" "%(number)s van de %(total)s %(filetypes)s (%(remaining)s blijven over)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s van %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Van" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Automatisch detecteren" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Selecteer een map die %(file_types)s bevat" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopiëren" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Verplaatsen" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Aan" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Foto's:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Duid een map aan om de foto's naar toe te downloaden" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Video's:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Selecteer een folder om de video's naar toe te downloaden" + +#: rapid/rapid.py:3376 msgid "and" msgstr "en" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Backup apparaten aan het gebruiken" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Backup apparaat aan het gebruiken" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Geen backup apparaat gedetecteerd" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Vrije ruimte:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -236,87 +295,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s vrij" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Foto's en video's aan het backuppen naar %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Backuppen naar %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Foto's naar %(path)s en video's naar %(path2)s aan het backuppen" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Programma voorkeuren zijn ongeldig" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Foto" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s downloadmap bestaat niet" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Map: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s downloadmap is ongeldig" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s downloadmap is niet beschrijfbaar" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Miniaturen" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -325,52 +384,34 @@ msgstr "" "vertoon programma informatie op de commando lijn wanneer het programma " "draait (standaard: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "vertoon debug informatie wanneer uitgevoerd vanop de commando prompt" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "alleen fouten naar de commandolijn sturen" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "vertoon de foto en video bestandsextenties welke het programma herkent en " "verlaat het programma" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "reset alle programma instellingen en verlaat het programma" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Foto's:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Video's:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "en %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Alle instellingen en voorkeuren werden gereset" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Video download functie uitgezet.\n" -"Om video's te downloaden moet u de hachoir metadata en de kaa metadata " -"pakketten voor python installeren." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Backup fout" @@ -394,8 +435,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Fout: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -425,470 +466,472 @@ msgstr "_Herinner deze keuze" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Datum/tijd" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Tekst" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Bestandsnaam" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadata" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Reeksen" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Job code" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Afbeeldingsgegevens" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Video datum" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Vandaag" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Gisteren" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Download tijd" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Naam + extentie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Naam" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Extentie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Afbeelding nummer" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Video nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Diafragma" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Belichtingstijd" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Brandpuntsafstand" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Camera merk" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Camera model" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Camera model (kort)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Camera model (kort na koppelteken)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Serienummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Sluiter teller" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Bestandsnummer" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Enkel mapgedeelte" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Map en bestand" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Naam eigenaar" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Codec" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Breedte" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Hoogte" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Lengte" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Frames per seconde" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Artiest" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Copyright" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Downloads vandaag" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Sessienummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Nummer Submap" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Opgeslagen nummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Vervolg letter" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Alle cijfers" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Laatste cijfer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Laatste 2 cijfers" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Laatste 3 cijfers" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Laatste 4 cijfers" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Oorspronkelijke hoofdletterstatus" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "HOOFDLETTERS" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "kleine letters" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Eén cijfer" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Twee cijfers" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Drie cijfers" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Vier cijfers" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Vijf cijfers" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Zes cijfers" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Zeven cijfers" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Subseconden" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "JJJJMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "JJJJ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "JJMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "JJ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDJJJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMJJJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "JJJJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "JJ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minuten)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Submap voorkeuren mogen niet starten met een %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Submap voorkeuren mogen niet eindigen op een %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "Submap voorkeuren mogen geen twee opeenvolgende %s bevatten" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Verwijder alle Job Codes?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Moeten alle Job Codes verwijderd worden?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Verwijder alle onthouden paden?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Moeten alle onthouden paden verwijderd worden?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Verwijder alle genegeerde paden?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Moeten alle genegeerde paden verwijderd worden?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Fout in de voorkeuren van Foto Hernoemen" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Fout in de voorkeuren Video Hernoemen" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Fout in de voorkeuren van Foto Download Submappen" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Fout in de voorkeuren Video Download Subfolders" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Geef een Job Code op" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Geef een nieuwe Job Code in of selecteer een bestaande" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Geef een nieuwe Job Code in" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Job Code:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Geef het te negeren pad op" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "Geef een pad op dat nooit op foto's of video's gescand zal worden" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Pad:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Job Code" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Duid een map aan om de foto's naar toe te downloaden" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Selecteer een folder om de video's naar toe te downloaden" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Selecteer een map die %(file_types)s bevat" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Selecteer een map waar foto's naar toe gebackuped moeten worden" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Selecteer een map waar foto's naar toe gebackuped moeten worden" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -896,7 +939,7 @@ msgstr "" "Opgepast: Er is onvoldoende metadata om een volledige naam aan te " "maken. Gelieve andere hernoemings opties te gebruiken." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -905,13 +948,13 @@ msgstr "" "te maken. Kies andere subfolder benoemings opties." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Voorbeeld: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -922,7 +965,7 @@ msgstr "" "gebruikt worden.\n" "Ze zullen naar de standaard waardes worden teruggezet." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -933,7 +976,7 @@ msgstr "" "tenzij ze verbeterd worden:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -944,7 +987,7 @@ msgstr "" "tenzij ze verbeterd wordt:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Ongeldige reguliere expressie" @@ -1031,11 +1074,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "subfolder" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "bestandsnaam" @@ -1324,7 +1367,7 @@ msgstr "Er was een fout tijdens het backuppen" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, en %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1334,24 +1377,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Foto werd al eens gedownload" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Bron: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "subfolder en bestandsnaam" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Kon downloadmap niet aanmaken" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Pad: %s" @@ -1609,14 +1652,18 @@ msgid "Automatically detect devices" msgstr "Automatisch apparaten ontdekken" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Automatisch JPEG beelden roteren" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Backup" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Backup foto's en video's gedurende het downloaden" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1624,7 +1671,7 @@ msgstr "" "Kies de downloadmap. Submappen voor de gedownloadde foto's zullen " "automatisch aangemaakt worden in deze map volgens de structuur hieronder." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1632,15 +1679,10 @@ msgstr "" "Kies de download map. Submappen voor de gedownloadde video's zullen " "automatisch aangemaakt worden in deze map conform de onderstaande structuur." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Aanvang dag:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "" -"Verwijder foto's en video's van het apparaat als de download afgelopen is" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Apparaat Opties" @@ -1663,7 +1705,7 @@ msgid "" "used." msgstr "" "Met apparaten wordt bedoeld van waar je de foto's en video's dowloadt, zoals " -"camera's, geheugenkaartken of Draagbare Opslag Media.\n" +"camera's, geheugenkaarten of Draagbare Opslag Media.\n" "\n" "Er kan vanaf meerdere apparaten simultaan gedownload worden, of je kunt een " "plaats op je harde schijf aanduiden..\n" @@ -1808,12 +1850,12 @@ msgstr "Download overslaan" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Sorry, video download functie uitgezet. Om video's te downloaden, moet je de " -"hachoir metadata en kaa metadata pakketten voor python " -"installeren." +"Sorry, de video download functionaliteit is uitgezet. Om videos te " +"downloaden moet je ofwel de hachoir metadata en de kaa " +"metadata paketten voor python, ofwel exiftool installeren." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/nn.po b/po/nn.po index b957dd9..342e8a0 100644 --- a/po/nn.po +++ b/po/nn.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 09:02+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 08:52+0000\n" "Last-Translator: Kevin Brubeck Unhammer \n" "Language-Team: Norwegian Nynorsk \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Eining" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Storleik" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Nedlastingsframgang" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s vart ikkje avmontert" @@ -66,19 +66,38 @@ msgstr "%(device)s vart ikkje avmontert" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "leiter..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "rotmappa til filsystemet" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Lastar ned frå %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Vil du verkeleg lasta ned herfrå? På visse system kan det ta veldig lang tid " +"å skanna dette." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Last ned" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pause" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +117,176 @@ msgstr "" "Mappa er ugyldig:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Kan ikkje gå vidare med nedlasting" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Omtrent eitt sekund igjen" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Omtrent %i sekund igjen" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Omtrent eitt minutt igjen" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Omtrent %(minutes)i minutt og %(seconds)02i sekund igjen" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "bilete og videoar" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "bilete eller videoar" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "videoar" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "bilete" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "bilete" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "Lasta ned %(noFiles)s %(filetypes)s" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "Klarte ikkje å laste ned %(noFiles)s %(filetypes)s" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "åtvaringar" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Alle nedlastingar er ferdige" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s lasta ned" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "Klarte ikkje å laste ned %(filetype)s" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s av %(total)s %(filetypes)s (%(remaining)s igjen)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s av %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Frå" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Oppdag automatisk" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Vel ei mappe med %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopier" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Flytt" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Til" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Bilete:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Vel ei mappe å laste inn bilete til" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Videoar:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Vel ei mappe å laste inn video til" + +#: rapid/rapid.py:3376 msgid "and" msgstr "og" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Nyttar einingar for tryggleikskopiering" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Nyttar eining for tryggleikskopiering" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Fann ingen einingar for tryggleikskopiering" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Ledig plass:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,87 +294,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s tilgjengeleg" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Tek tryggleikskopi av bilete og videoar til %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Tek tryggleikskopi til %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Tek tryggleikskopi av bilete til %(path)s og videoar til %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Programinnstillingane er ugyldige" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Bilete" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "Nedlastingsmappa til %(file_type)s finst ikkje" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Mappe: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "Nedlastingsmappa til %(file_type)s er ugyldig" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "Nedlastingsmappa til %(file_type)s er ikkje skrivbar" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Miniatyrbilete" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -324,51 +383,33 @@ msgstr "" "vis programinformasjon på kommandolinja når programmet køyrer \n" "(standard: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "vis avlusingsinformasjon ved køyring frå kommandolinja" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "vis berre feil på kommandolinja" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" "vis kva for bilet- og videofiltypane programmet gjenkjenner, og avslutt" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "nullstill alle programinnstillingar og avslutt" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Bilete:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Videoar:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "og %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Alle innstillingar er nullstilte" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Videonedlasting er ikkje aktivert.\n" -"For å kunna lasta ned video må du installera Python-pakkene hachoir metadata " -"og kaa metadata." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Feil ved tryggleikskopiering" @@ -392,8 +433,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Feil: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -421,471 +462,473 @@ msgstr "_Hugs dette valet" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Dato tid" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Tekst" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Filnamn" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadata" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sekvensar" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Jobbnamn" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Biletdato" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Videodato" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Idag" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Igår" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Nedlastingstidspunkt" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Namn + filtype" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Namn" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Filtype" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Bilettal" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Videotal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Blenderopning" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Lukketid" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Brennvidde" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Kameramerke" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Kort kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Bindestrek, kort kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Serienummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Eksponeringsteljar" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Filnummer" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Berre mappa" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Mappe og fil" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Namn på eigar" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Kodek" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Breidd" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Høgd" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Lengd" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Bilet per sekund" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Kunstnar" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Opphavsrett" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Nedlastingar idag" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Øktteljar" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Undermappeteljar" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Lagra tal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Sekvensbokstav" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Alle tal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Siste tal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Siste to tal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Siste tre tal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Siste fire tal" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Opphavleg Versalisering" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "STORE BOKSTAVAR" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "små bokstavar" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Eitt tal" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "To tal" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tre tal" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Fire tal" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Fem tal" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Seks tal" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Sju tal" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Delsekund" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "ÅÅÅÅMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "ÅÅÅÅ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "ÅÅMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "ÅÅ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "ÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "ÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "TTMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "TTMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "TT-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "TT-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "TT" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minutt)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Innstillingane for undermapper burde ikkje byrje med %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Innstillingane for undermapper burde ikkje ende med %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "Innstillingane for undermapper burde ikkje ha to %s etter kvarandre" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Fjern alle jobbnamn?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Skal alle jobbnamn fjernast?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Fjern alle hugsa søkjestiar?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Skal alle hugsa søkjestiar fjernast?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Fjern alle oversedde søkjestiar?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Skal alle oversedde søkjestiar fjernast?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Feil i innstillingane til biletomdøping" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Feil i innstillingane til videoomdøping" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Feil i innstillingane til undermapper for biletnedlasting" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Feil i innstillingane til undermapper for videonedlasting" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Skriv inn eit jobbnamn" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Skriv inn eit jobbnamn, eller vel eit du har nytta tidlegare" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Skriv inn eit nytt jobbnamn" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Jobbnamn:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Oppgi ein søkjesti å oversjå" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" "Oppgi ein sti som du vil aldri skal gjennomsøkjast etter bilete eller videoar" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Sti:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Jobbnamn" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Vel ei mappe å laste inn bilete til" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Vel ei mappe å laste inn video til" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Vel ei mappe med %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Vel ei mappe kor du vil tryggleikskopiera bilete" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Vel ei mappe kor du vil tryggleikskopiera videoar" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -893,7 +936,7 @@ msgstr "" "Åtvaring: Det er ikkje nok metadata for å fullt ut\n" "generere namnet. Ver vennleg og nytt andre omdøpingsval." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -902,13 +945,13 @@ msgstr "" "generere undermappene. Ver vennleg og nytt andre omdøpingsval.<" #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Døme: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -919,7 +962,7 @@ msgstr "" "og kan ikkje nyttast.\n" "Dei blir endra til standardverdiar." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -930,7 +973,7 @@ msgstr "" "endrar dei:\n" "%s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -941,7 +984,7 @@ msgstr "" "endrar det:\n" "%s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Ugyldig regulært uttrykk" @@ -1028,11 +1071,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "undermappe" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "filnamn" @@ -1315,7 +1358,7 @@ msgstr "Det oppstod ein feil i tryggleikskopieringa" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, og %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1325,24 +1368,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Biletet er allereie lasta ned" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Kjelde: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "undermappe og filnamn" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Klarte ikkje å lasta ned undermappa" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Sti: %s" @@ -1600,14 +1643,18 @@ msgid "Automatically detect devices" msgstr "Oppdag einingar automatisk" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Roter JPEG-bilete automatisk" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Tryggleikskopi" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Ta tryggleikskopi av bilete og videoar ved nedlasting" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1615,7 +1662,7 @@ msgstr "" "Vel ei nedlastingsmappe. Når du nyttar strukturen nedanfor blir det \n" "automatisk oppretta undermapper for dei nedlasta bileta i denne mappa." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1623,14 +1670,10 @@ msgstr "" "Vel ei nedlastingsmappe. Når du nyttar strukturen nedanfor blir det \n" "automatisk oppretta undermapper for dei nedlasta videoane i denne mappa." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Dag byrjar:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Slette bilete og videoar frå eininga når nedlastinga er ferdig" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Val for einingar" @@ -1793,11 +1836,12 @@ msgstr "Hopp over nedlasting" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Orsak, videonedlasting er skrudd av. For å lasta ned videoar må du " -"innstallera Python-pakkene hachoir metadata og kaa metadata." +"Orsak, videonedlasting er skrudd av. Ver venleg og last ned anten python-" +"pakkene hachoir metadata og kaa metadata, eller " +"exiftool, for å lasta ned videoar." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/pl.po b/po/pl.po index 161b841..79717bf 100644 --- a/po/pl.po +++ b/po/pl.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 21:22+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 09:10+0000\n" "Last-Translator: mmiicc \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Urządzenie" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Rozmiar" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Postęp pobierania" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "Nie odmontowano %(device)s" @@ -66,19 +66,38 @@ msgstr "Nie odmontowano %(device)s" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "wyszukiwanie..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "katalog główny systemu plików" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Pobieranie z %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Naprawdę pobierać z tego miejsca? W niektórych systemach, skanowanie tego " +"położenia może potrwać bardzo długo." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Pobierz" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Wstrzymaj" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,137 +117,177 @@ msgstr "" "Nieprawidłowy katalog pobierania:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Pobieranie nie może się odbyć" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Pozostała około sekunda" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Pozostało około %i sekund" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Pozostała około minuta" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Pozostało około %(minutes)i:%(seconds)02i minut" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "zdjęcia i filmy" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "zdjęcia lub filmy" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "filmy" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "film" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "zdjęcia" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "zdjęcie" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "Pobrane pliki typu %(filetypes)s: %(noFiles)s" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "Nieudanych pobrań plików typu %(filetypes)s: %(noFiles)s" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "ostrzeżenia" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Ukończono wszystkie pobierania" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "Plik typu %(filetype)s został pobrany" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "Nie udało się pobrać pliku typu %(filetype)s" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "" "%(number)s z %(total)s plików typu %(filetypes)s (pozostało: %(remaining)s)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s z %(total)s plików typu %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Źródło" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Wykrywanie automatyczne" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Wybór katalogu zawierającego %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Skopiuj" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Przenieś" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Cel" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Zdjęcia:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Wybór katalogu dla pobieranych zdjęć" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Filmy:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Wybór katalogu dla pobieranych filmów" + +#: rapid/rapid.py:3376 msgid "and" msgstr "oraz" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Użycie urządzeń do zapisu kopii zapasowej" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Użycie urządzenia do zapisu kopii zapasowej" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Nie wykryto urządzeń na których można utworzyć kopię zapasową" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Wolne miejsce:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -236,87 +295,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s wolnego miejsca" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Tworzenie kopii zapasowej zdjęć i filmów w %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Tworzenie kopii zapasowej w %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Tworzenie kopii zapasowej zdjęć w %(path)s a filmów w %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Preferencje programu są nieprawidłowe" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Zdjęcie" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Film" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "katalog pobierania %(file_type)s nie istnieje" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Katalog: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "katalog pobierania %(file_type)s jest nieprawidłowy" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "katalog pobierania %(file_type)s nie jest zapisywalny" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Miniatury" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -325,51 +384,33 @@ msgstr "" "wyświetl informacje programu w linii komend podczas działania programu " "(domyślnie: %default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "" "wyświetlanie informacji o błędach w przypadku uruchomienia z linii poleceń" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "wyświetlaj jedynie błędy w linii komend" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "wypisz typy plików rozpoznawane przez program i zakończ" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "zresetuj wszystkie ustawienia oraz preferencje programu i zakończ" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Zdjęcia:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Filmy:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "oraz %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Wszystkie ustawienia oraz preferencje zostały zresetowane" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Funkcja pobierania filmów nie jest aktywna.\n" -"Aby pobierać filmy, proszę zainstalować pakiety hachoir metadata oraz kaa " -"metadata dla pythona." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Błąd tworzenia kopii zapasowej" @@ -393,8 +434,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Błąd: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -422,473 +463,475 @@ msgstr "Zapa_miętaj ten wybór" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Data czas" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Tekst" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Nazwa pliku" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadane" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sekwencje" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Kod pracy" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Data zdjęcia" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Data filmu" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Dzisiaj" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Wczoraj" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Data pobierania" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Nazwa + rozszerzenie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Nazwa" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Rozszerzenie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Numer obrazu" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Numer filmu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Przysłona" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Czas naświetlania" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Ogniskowa" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Producent aparatu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Model aparatu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Skrót modelu aparatu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Skrót z myślnikiem modelu aparatu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Numer seryjny" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Licznik migawki" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Numer pliku" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Tylko katalog" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Katalog i plik" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Nazwa właściciela" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Kodek" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Szerokość" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Wysokość" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Długość" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Klatki na sekundę" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Wykonawca" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Prawa autorskie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Pobierań dzisiaj" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Numer sesji" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Numer podkatalogu" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Numer zachowany" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Litera sekwencji" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Wszystkie cyfry" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Ostatnia cyfra" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Ostatnie 2 cyfry" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Ostatnie 3 cyfry" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Ostatnie 4 cyfry" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Oryginalna wielkość liter" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "WIELKIE LITERY" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "małe litery" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Jedna cyfra" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Dwie cyfry" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Trzy cyfry" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Cztery cyfry" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Pięć cyfr" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Sześć cyfr" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Siedem cyfr" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Części sekundy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "RRRRMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "RRRR-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "RRMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "RR-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDRRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMRRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "RRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "RR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "GGMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "GGMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "GG-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "GG-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "GG" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minuty)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Preferencje podkatalogu nie powinny zaczynać się od %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Preferencje podkatalogu nie powinny kończyć się na %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" "Preferencje podkatalogu nie powinny zawierać dwóch %s jeden po drugim" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Usunąć wszystkie kody pracy?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Usunąć wszystkie kody pracy?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Usunąć wszystkie Ścieżki pamiętane?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Czy wszystkie zapamiętane ścieżki powinny zostać usunięte?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Usunąć wszystkie Ścieżki ignorowane?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Czy wszystkie ignorowane ścieżki powinny zostać usunięte?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Błąd w preferencjach zmiany nazw obrazów" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Błąd w preferencjach zmiany nazw filmów" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Błąd w preferencjach podkatalogów pobierania zdjęć" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Błąd w preferencjach podkatalogów pobierania filmów" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Wprowadzenie kodu pracy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Proszę wprowadzić nowy kod pracy, lub wybrać poprzedni" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Proszę wprowadzić nowy kod pracy" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Kod pracy:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Wprowadź Ścieżkę ignorowaną" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" "Proszę określić ścieżkę, która nigdy nie będzie sprawdzana w poszukiwaniu " "zdjęć lub obrazów" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Scieżka:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Kod pracy" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Wybór katalogu dla pobieranych zdjęć" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Wybór katalogu dla pobieranych filmów" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Wybór katalogu zawierającego %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Proszę wybrać katalog dla tworzenia kopii zapasowej zdjęć" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Proszę wybrać katalog dla tworzenia kopii zapasowej filmów" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -896,7 +939,7 @@ msgstr "" "Ostrzeżenie: Metadane są niewystarczające do pełnego wygenerowania " "nazwy. Proszę użyć innej opcji zmiany nazwy." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -905,13 +948,13 @@ msgstr "" "podkatalogów. Proszę użyć innej opcji określenia nazw podkatalogów." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Przykład: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -922,7 +965,7 @@ msgstr "" "zostać użyte.\n" "Zostaną przywrócone ich domyślne wartości." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -933,7 +976,7 @@ msgstr "" "nie będą poprawione:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -944,7 +987,7 @@ msgstr "" "poprawione:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Nieprawidłowe wyrażenie regularne" @@ -1031,11 +1074,11 @@ msgid "Stockholm" msgstr "Sztokholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "podkatalog" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "nazwa pliku" @@ -1323,7 +1366,7 @@ msgstr "Wystąpił błąd podczas tworzenia kopii zapasowej" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, oraz %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1333,24 +1376,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Zdjęcie zostało już pobrane" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Źródło: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "podkatalog i nazwa pliku" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Nie udało się utworzyć podkatalogu pobierania" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Ścieżka: %s" @@ -1611,14 +1654,18 @@ msgid "Automatically detect devices" msgstr "Automatycznie wykryj urządzenia" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Automatycznie obracaj obrazy JPEG" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Kopia zapasowa" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Utwórz kopię zapasową zdjęć i filmów podczas pobierania" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1626,7 +1673,7 @@ msgstr "" "Proszę wybrać katalog pobierania. Podkatalogi dla pobranych zdjęć zostaną w " "nim automatycznie utworzone w oparciu o poniższą specyfikację." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1634,14 +1681,10 @@ msgstr "" "Proszę wybrać katalog pobierania. Podkatalogi dla pobranych filmów zostaną w " "nim automatycznie utworzone w oparciu o poniższą specyfikację." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Początek dnia:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Usuń zdjęcia i filmy z urządzenia po ukończeniu pobierania" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Opcje urządzenia" @@ -1810,12 +1853,12 @@ msgstr "Pomiń pobieranie" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Funkcja pobierania filmów jest nieaktywna. Aby pobierać filmy, należy " -"zainstalować następujące pakiety dla Pythona: hachoir metadata oraz " -"kaa metadata" +"Przepraszamy, pobieranie filmów jest wyłączone. Aby pobierać filmy, należy " +"zainstalować pakiety dla pythona hachoir metadata oraz kaa " +"metadata, lub exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/po/rapid-photo-downloader.pot b/po/rapid-photo-downloader.pot index b133185..8cc1c8a 100644 --- a/po/rapid-photo-downloader.pot +++ b/po/rapid-photo-downloader.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" +"POT-Creation-Date: 2011-12-30 02:45-0600\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,44 +18,44 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:109 rapid/rapid.py:1747 rapid/glade3/rapid.ui.h:4 msgid "Rapid Photo Downloader" msgstr "" -#: rapid/rapid.py:111 +#: rapid/rapid.py:114 #, python-format msgid "" "%(date)s\n" "%(time)s" msgstr "" -#: rapid/rapid.py:113 +#: rapid/rapid.py:116 #, python-format msgid "%(date)s %(time)s" msgstr "" -#: rapid/rapid.py:116 +#: rapid/rapid.py:119 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:154 msgid "Device" msgstr "" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:172 msgid "Size" msgstr "" -#: rapid/rapid.py:170 +#: rapid/rapid.py:175 msgid "Download Progress" msgstr "" -#: rapid/rapid.py:316 +#: rapid/rapid.py:321 #, python-format msgid "%(device)s did not unmount" msgstr "" @@ -64,19 +64,36 @@ msgstr "" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1188 msgid "scanning..." msgstr "" -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1745 +msgid "the root of the file system" +msgstr "" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1749 +#, python-format +msgid "Downloading from %(location)s." +msgstr "" + +#: rapid/rapid.py:1750 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" + +#: rapid/rapid.py:2172 msgid "Download" msgstr "" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2175 msgid "Pause" msgstr "" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2282 #, python-format msgid "" "These download folders are invalid:\n" @@ -84,143 +101,183 @@ msgid "" "%(folder2)s" msgstr "" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2285 #, python-format msgid "" "This download folder is invalid:\n" "%s" msgstr "" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2286 msgid "Download cannot proceed" msgstr "" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2653 msgid "About 1 second remaining" msgstr "" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2655 #, python-format msgid "About %i seconds remaining" msgstr "" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2657 msgid "About 1 minute remaining" msgstr "" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2662 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2684 rapid/rpdfile.py:115 msgid "photos and videos" msgstr "" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2686 rapid/rpdfile.py:117 msgid "photos or videos" msgstr "" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2689 rapid/rapid.py:3502 rapid/rpdfile.py:120 msgid "videos" msgstr "" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2691 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:122 +#: rapid/rpdfile.py:261 msgid "video" msgstr "" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2694 rapid/rapid.py:3500 rapid/rpdfile.py:125 msgid "photos" msgstr "" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2696 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:127 +#: rapid/rpdfile.py:241 msgid "photo" msgstr "" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2723 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2727 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2730 rapid/rapid.py:2782 msgid "warnings" msgstr "" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2739 msgid "All downloads complete" msgstr "" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2745 rapid/rapid.py:2754 rapid/rapid.py:2763 +#: rapid/rapid.py:2772 rapid/rapid.py:2780 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2747 rapid/rapid.py:2765 #, python-format msgid "%(filetype)s downloaded" msgstr "" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2756 rapid/rapid.py:2774 #, python-format msgid "%(filetype)s failed to download" msgstr "" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2813 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2820 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3166 +msgid "From" +msgstr "" + +#: rapid/rapid.py:3174 +msgid "Auto Detect" +msgstr "" + +#: rapid/rapid.py:3178 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "" + +#: rapid/rapid.py:3219 +msgid "Copy" +msgstr "" + +#: rapid/rapid.py:3232 +msgid "Move" +msgstr "" + +#: rapid/rapid.py:3254 +msgid "To" +msgstr "" + +#: rapid/rapid.py:3261 rapid/rapid.py:3898 +msgid "Photos:" +msgstr "" + +#: rapid/rapid.py:3264 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "" + +#: rapid/rapid.py:3276 rapid/rapid.py:3898 +msgid "Videos:" +msgstr "" + +#: rapid/rapid.py:3278 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "" + +#: rapid/rapid.py:3470 msgid "and" msgstr "" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3475 msgid "Using backup devices" msgstr "" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3477 msgid "Using backup device" msgstr "" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3479 msgid "No backup devices detected" msgstr "" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3506 msgid "Free space:" msgstr "" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3518 #, python-format msgid "(%(file_type)s)" msgstr "" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3522 #, python-format msgid "%(free)s %(file_type)s" msgstr "" @@ -228,157 +285,142 @@ msgstr "" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3527 msgid "; " msgstr "" #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3532 msgid "." msgstr "" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3538 #, python-format msgid "%(free)s free" msgstr "" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3546 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3549 #, python-format msgid "Backing up to %(path)s" msgstr "" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3552 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3559 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "" -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3588 msgid "Program preferences are invalid" msgstr "" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3707 rapid/rpdfile.py:242 msgid "Photo" msgstr "" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3709 rapid/rpdfile.py:262 msgid "Video" msgstr "" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3718 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3720 rapid/rapid.py:3734 rapid/rapid.py:3747 #, python-format msgid "Folder: %s" msgstr "" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3732 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3745 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3832 msgid "Thumbnails" msgstr "" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3879 #, python-format msgid "" "display program information on the command line as the program runs " "(default: %default)" msgstr "" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3880 msgid "display debugging information when run from the command line" msgstr "" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3881 msgid "only output errors to the command line" msgstr "" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3883 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3885 msgid "reset all program settings and preferences and exit" msgstr "" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3903 #, python-format msgid "and %s" msgstr "" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3911 msgid "All settings and preferences have been reset" msgstr "" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" - -#: rapid/backupfile.py:142 rapid/backupfile.py:165 +#: rapid/backupfile.py:156 rapid/backupfile.py:179 msgid "Backing up error" msgstr "" -#: rapid/backupfile.py:144 +#: rapid/backupfile.py:158 #, python-format msgid "Destination directory could not be created: %(directory)s\n" msgstr "" -#: rapid/backupfile.py:146 rapid/backupfile.py:167 rapid/subfolderfile.py:196 +#: rapid/backupfile.py:160 rapid/backupfile.py:181 rapid/subfolderfile.py:196 #, python-format msgid "" "Source: %(source)s\n" "Destination: %(destination)s" msgstr "" -#: rapid/backupfile.py:149 rapid/backupfile.py:169 +#: rapid/backupfile.py:163 rapid/backupfile.py:183 #, python-format msgid "Error: %(inst)s" msgstr "" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:162 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:350 rapid/subfolderfile.py:368 #, python-format msgid "" "%(problem)s\n" @@ -404,489 +446,491 @@ msgstr "" msgid "MB/s" msgstr "" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." msgstr "" -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." msgstr "" #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -894,7 +938,7 @@ msgid "" "They will be reset to their default values." msgstr "" -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -902,7 +946,7 @@ msgid "" " %s" msgstr "" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -910,7 +954,7 @@ msgid "" " %s" msgstr "" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "" @@ -997,11 +1041,11 @@ msgid "Stockholm" msgstr "" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:361 msgid "subfolder" msgstr "" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:359 msgid "filename" msgstr "" @@ -1273,7 +1317,7 @@ msgstr "" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:141 #, python-format msgid "%(number)s %(filetypes)s" msgstr "" @@ -1283,16 +1327,16 @@ msgstr "" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:298 msgid "Photo has already been downloaded" msgstr "" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:299 #, python-format msgid "Source: %(source)s" msgstr "" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:357 msgid "subfolder and filename" msgstr "" @@ -1306,122 +1350,70 @@ msgid "Path: %s" msgstr "" #: rapid/glade3/rapid.ui.h:1 -msgid "About..." -msgstr "" - -#: rapid/glade3/rapid.ui.h:2 -msgid "Check All" -msgstr "" - -#: rapid/glade3/rapid.ui.h:3 -msgid "Check All Photos" -msgstr "" - -#: rapid/glade3/rapid.ui.h:4 -msgid "Check All Videos" -msgstr "" - -#: rapid/glade3/rapid.ui.h:6 msgid "Download / Pause" msgstr "" -#: rapid/glade3/rapid.ui.h:7 -msgid "Get Help Online..." -msgstr "" - -#: rapid/glade3/rapid.ui.h:8 -msgid "Help" -msgstr "" - -#: rapid/glade3/rapid.ui.h:9 -msgid "Make a Donation..." -msgstr "" - -#: rapid/glade3/rapid.ui.h:10 +#: rapid/glade3/rapid.ui.h:2 msgid "Next File" msgstr "" -#: rapid/glade3/rapid.ui.h:11 -msgid "Preferences" -msgstr "" - -#: rapid/glade3/rapid.ui.h:12 +#: rapid/glade3/rapid.ui.h:3 msgid "Previous File" msgstr "" -#: rapid/glade3/rapid.ui.h:13 -msgid "Quit" -msgstr "" - -#: rapid/glade3/rapid.ui.h:15 -msgid "Refresh" -msgstr "" - -#: rapid/glade3/rapid.ui.h:16 -msgid "Report a Problem..." -msgstr "" - -#: rapid/glade3/rapid.ui.h:17 +#: rapid/glade3/rapid.ui.h:5 msgid "Select All Wit_h Job Code" msgstr "" -#: rapid/glade3/rapid.ui.h:18 +#: rapid/glade3/rapid.ui.h:6 msgid "Select All Without _Job Code" msgstr "" -#: rapid/glade3/rapid.ui.h:19 -msgid "Translate this Application..." -msgstr "" - -#: rapid/glade3/rapid.ui.h:20 -msgid "Uncheck All" -msgstr "" - -#: rapid/glade3/rapid.ui.h:21 +#: rapid/glade3/rapid.ui.h:7 msgid "_Check All" msgstr "" -#: rapid/glade3/rapid.ui.h:22 +#: rapid/glade3/rapid.ui.h:8 msgid "_Clear Completed Downloads" msgstr "" -#: rapid/glade3/rapid.ui.h:23 +#: rapid/glade3/rapid.ui.h:9 msgid "_Download" msgstr "" -#: rapid/glade3/rapid.ui.h:24 +#: rapid/glade3/rapid.ui.h:10 msgid "_Error Log" msgstr "" -#: rapid/glade3/rapid.ui.h:25 +#: rapid/glade3/rapid.ui.h:11 msgid "_File" msgstr "" -#: rapid/glade3/rapid.ui.h:26 +#: rapid/glade3/rapid.ui.h:12 msgid "_Help" msgstr "" -#: rapid/glade3/rapid.ui.h:27 +#: rapid/glade3/rapid.ui.h:13 msgid "_Include in download" msgstr "" -#: rapid/glade3/rapid.ui.h:28 +#: rapid/glade3/rapid.ui.h:14 msgid "_Make a Donation..." msgstr "" -#: rapid/glade3/rapid.ui.h:29 +#: rapid/glade3/rapid.ui.h:15 msgid "_Select" msgstr "" -#: rapid/glade3/rapid.ui.h:30 +#: rapid/glade3/rapid.ui.h:16 msgid "_Translate this Application..." msgstr "" -#: rapid/glade3/rapid.ui.h:31 +#: rapid/glade3/rapid.ui.h:17 msgid "_Uncheck All" msgstr "" -#: rapid/glade3/rapid.ui.h:32 +#: rapid/glade3/rapid.ui.h:18 msgid "_View" msgstr "" @@ -1558,31 +1550,31 @@ msgid "Automatically detect devices" msgstr "" #: rapid/glade3/prefs.ui.h:34 -msgid "Backup" +msgid "Automatically rotate JPEG images" msgstr "" #: rapid/glade3/prefs.ui.h:35 -msgid "Backup photos and videos when downloading" +msgid "Backup" msgstr "" #: rapid/glade3/prefs.ui.h:36 -msgid "" -"Choose the download folder. Subfolders for the downloaded photos will be " -"automatically created in this folder using the structure specified below." +msgid "Backup photos and videos when downloading" msgstr "" #: rapid/glade3/prefs.ui.h:37 msgid "" -"Choose the download folder. Subfolders for the downloaded videos will be " +"Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." msgstr "" #: rapid/glade3/prefs.ui.h:38 -msgid "Day start:" +msgid "" +"Choose the download folder. Subfolders for the downloaded videos will be " +"automatically created in this folder using the structure specified below." msgstr "" #: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" +msgid "Day start:" msgstr "" #: rapid/glade3/prefs.ui.h:40 @@ -1728,8 +1720,8 @@ msgstr "" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" #: rapid/glade3/prefs.ui.h:79 diff --git a/po/sk.po b/po/sk.po index 892aca1..73c1284 100644 --- a/po/sk.po +++ b/po/sk.po @@ -7,55 +7,55 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 15:40+0000\n" -"Last-Translator: Marcel \n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-22 12:38+0000\n" +"Last-Translator: Andrej \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" "%(time)s" msgstr "" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Zariadenie" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Veľkosť" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Priebeh sťahovania" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "" @@ -64,19 +64,36 @@ msgstr "" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "skenovanie..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "" + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Stiahnuť" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pozastaviť" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -84,143 +101,183 @@ msgid "" "%(folder2)s" msgstr "" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" "%s" msgstr "" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Sťahovanie nemôže pokračovať" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Zostáva približne 1 sekunda" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Zostáva približné %i sekúnd" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" -msgstr "" +msgstr "Ostáva približne 1 minúta." #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" -msgstr "" +msgstr "Ostáva približne %(minutes)i:%(seconds)02i minút." -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "fotografie a videá" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "fotografie a videá" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "videá" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "fotografie" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "fotografia" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" -msgstr "" +msgstr "%(noFiles)s %(filetypes)s stiahnutých." -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" -msgstr "" +msgstr "%(noFiles)s %(filetypes)s sa nepodarilo stiahnuť." -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "varovania" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Všetka sťahovania bola dokončená" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" -msgstr "" +msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" -msgstr "" +msgstr "%(filetype)s stiahnutých." -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" -msgstr "" +msgstr "%(filetype)s failed to download" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopírovať" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Presunúť" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Do" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Fotky:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Vyberte zložku do ktorej majú byť obrázky stiahnuté" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Videá:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Vyberte priečinok pre stiahnuté videá" + +#: rapid/rapid.py:3376 msgid "and" msgstr "a" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" -msgstr "" +msgstr "Voľné miesto:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "" @@ -228,134 +285,119 @@ msgstr "" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "" #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "" -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Fotografia" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Video" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " "(default: %default)" msgstr "" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "a %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Chyba zálohovanie" @@ -379,8 +421,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -406,489 +448,491 @@ msgstr "_Zapamatovať si túto voľbu" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Dátum a čas" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Text" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Názov súboru" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadáta" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sekvencie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Pracovný kód" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Dátum obrázku" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Dnes" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Včera" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Názov + koncovka" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Názov" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Koncovka" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Číslo obrázka" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Clona" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Čas expozície" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Ohnisková vzdialenosť" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Model kamery" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Sériové číslo" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Meno vlastníka" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Dnešné stiahnutie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Číslo relácie" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "VEĽKÉ PÍSMENÁ" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "malé písmená" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Jedna číslica" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Dve číslice" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tri číslice" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Štyri číslice" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Päť číslic" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Šesť číslic" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Subsekundy" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "RRRRMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "RRRR-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "RRMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "RR-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDRRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMRRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "RRRR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "RR" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minúty)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Vložte pracovný kód" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Pracovný kód:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Vyberte zložku do ktorej majú byť obrázky stiahnuté" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Vyberte priečinok pre stiahnuté videá" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." msgstr "" -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." msgstr "" #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Príklad: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -896,7 +940,7 @@ msgid "" "They will be reset to their default values." msgstr "" -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -904,7 +948,7 @@ msgid "" " %s" msgstr "" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -912,7 +956,7 @@ msgid "" " %s" msgstr "" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "" @@ -999,11 +1043,11 @@ msgid "Stockholm" msgstr "Štokholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "podpriečinok" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "názov súboru" @@ -1275,7 +1319,7 @@ msgstr "" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "" @@ -1285,24 +1329,24 @@ msgstr "" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Fotografie už boli stiahnuté" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Zdroj: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "podpriečinok a meno súboru" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "" @@ -1560,31 +1604,31 @@ msgid "Automatically detect devices" msgstr "" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Záloha" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." msgstr "" -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." msgstr "" -#: rapid/glade3/prefs.ui.h:38 -msgid "Day start:" -msgstr "" - #: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" +msgid "Day start:" msgstr "" #: rapid/glade3/prefs.ui.h:40 @@ -1731,8 +1775,8 @@ msgstr "Vynechať sťahovanie" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" #: rapid/glade3/prefs.ui.h:79 diff --git a/po/sr.po b/po/sr.po index 0508ae4..74b0bcc 100644 --- a/po/sr.po +++ b/po/sr.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-08 06:50-0500\n" -"PO-Revision-Date: 2011-09-12 01:00+0000\n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-11-21 09:55+0000\n" "Last-Translator: Miloš Popović \n" "Language-Team: Serbian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-19 19:06+0000\n" -"X-Generator: Launchpad (build 13980)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Брзи преносилац фотографија" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Уређај" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Величина" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Напредак преузимања" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s није демонтиран" @@ -66,19 +66,38 @@ msgstr "%(device)s није демонтиран" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "претражујем уређај..." -#: rapid/rapid.py:2077 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "почетни директоријум система датотека" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Преузми са %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" +"Да ли заиста желите да преузмете слике одавде? На неким системима " +"претраживање те путање може да потраје." + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Преузми" -#: rapid/rapid.py:2080 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Паузирај" -#: rapid/rapid.py:2181 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +108,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2184 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +117,176 @@ msgstr "" "Следећа фасцикла за преузимање је неисправна:\n" "%s" -#: rapid/rapid.py:2185 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Не могу да наставим преузимање" -#: rapid/rapid.py:2490 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Преостала је 1 секунда" -#: rapid/rapid.py:2492 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Преостало је %i секунди" -#: rapid/rapid.py:2494 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Преостао је 1 минут" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2499 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Преостало је %(minutes)i:%(seconds)02i" -#: rapid/rapid.py:2521 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "фотографије и видео" -#: rapid/rapid.py:2523 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "фотографије или видео" -#: rapid/rapid.py:2526 rapid/rapid.py:3103 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "видео" -#: rapid/rapid.py:2528 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "видео" -#: rapid/rapid.py:2531 rapid/rapid.py:3101 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "фотографије" #. check subfolder preferences for bad values -#: rapid/rapid.py:2533 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "фотографија" -#: rapid/rapid.py:2560 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s преузето" -#: rapid/rapid.py:2564 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s није преузето" -#: rapid/rapid.py:2567 rapid/rapid.py:2619 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "упозорења" -#: rapid/rapid.py:2576 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Сва преузимања су завршена" -#: rapid/rapid.py:2582 rapid/rapid.py:2591 rapid/rapid.py:2600 -#: rapid/rapid.py:2609 rapid/rapid.py:2617 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2584 rapid/rapid.py:2602 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s преузето" -#: rapid/rapid.py:2593 rapid/rapid.py:2611 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s није преузето" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2650 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s од %(total)s %(filetypes)s (преостаје %(remaining)s)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2657 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s од %(total)s %(filetypes)s" -#: rapid/rapid.py:3071 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Од" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Сам одреди" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Изаберите фасциклу која садржи %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Копирај" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Премести" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "У" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Фотографије:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Изаберите фасциклу за чување фотографија" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Видео:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Изаберите фасциклу за смештање преузетог видеа" + +#: rapid/rapid.py:3376 msgid "and" msgstr "и" -#: rapid/rapid.py:3076 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Употреба резервних уређаја" -#: rapid/rapid.py:3078 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Употреба резервног уређаја" -#: rapid/rapid.py:3080 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Нису изабрани резервни уређаји" -#: rapid/rapid.py:3107 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Слободан простор:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3119 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3123 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,87 +294,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3128 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3133 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3139 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s слободно" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3147 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" -msgstr "" +msgstr "Направи резервну копију слика и видеа у %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3150 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Правим резерву у %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3153 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" -msgstr "" +msgstr "Правим резервну копију слика у %(path)s и видеа у %(path2)s" -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. у %(backuppaths)s." -#: rapid/rapid.py:3189 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Подешавања програма су неисправна" -#: rapid/rapid.py:3308 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Фотографија" -#: rapid/rapid.py:3310 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Видео" -#: rapid/rapid.py:3319 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "Фасцикла за преузимање %(file_type)s датотека не постоји" -#: rapid/rapid.py:3321 rapid/rapid.py:3335 rapid/rapid.py:3348 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Фасцикла: %s" -#: rapid/rapid.py:3333 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "Фасцикла за преузимање %(file_type)s датотека је неисправна" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "Фасцикла за преузимање %(file_type)s датотека је неуписива" -#: rapid/rapid.py:3424 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Умањени прикази" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3471 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -324,51 +383,33 @@ msgstr "" "исписује податке о програму у командној линији док је покренут програм " "(подразумевано: %default)" -#: rapid/rapid.py:3472 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "" "прикажи податке за тражење грешки у програму при покретању из командне линије" -#: rapid/rapid.py:3473 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "исписује грешке само у командној линији" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3475 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "исписује екстензије подржаних слика и видеа и напушта програма" -#: rapid/rapid.py:3477 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "враћа све поставке на подразумевано и напушта програм" -#: rapid/rapid.py:3490 -msgid "Photos:" -msgstr "Фотографије:" - -#: rapid/rapid.py:3490 -msgid "Videos:" -msgstr "Видео:" - -#: rapid/rapid.py:3495 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "и %s" -#: rapid/rapid.py:3503 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Сва подешавања су враћена на подразумеване вредности" -#: rapid/rapid.py:3521 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Преузимање видео снимака није омогућено.\n" -"За преузимање видеа инсталирајте „hachoir metadata“ и „kaa metadata“ пакете " -"за Питон." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Грешка приликом образовања резервне копије" @@ -392,8 +433,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Грешка: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -417,474 +458,476 @@ msgstr "Да ли да преузимам фотографије или виде msgid "_Remember this choice" msgstr "_Запамти овај избор" -#: rapid/downloadtracker.py:291 +#: rapid/downloadtracker.py:298 msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Датум" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Текст" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Име датотеке" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Метаподаци" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Низови" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Код задатка" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Датум фотографије" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Датум видеа" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Данас" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Јуче" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Датум преузимања" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Назив + наставак" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Назив" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Наставак" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Број слике" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Број видеа" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Отвор бленде" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ИСО" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Време експозиције" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Жижна даљина" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Произвођач фотоапарата" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Модел фотоапарата" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Скраћени назив фотоапарата" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Дужи назив фотоапарата" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Серијски број" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Број окидања" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "Број датотеке" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Само фасцикла" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "Фасцикла и датотека" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Име власника" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Кодек" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Ширина" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Висина" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Дужина" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Кадрова у секунди" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Аутор" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Ауторска права" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Данашња преузимања" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Број сесије" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Број подфасцикле" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Сачувани број" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Низ слова" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Све цифре" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Последње цифре" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Последње две цифре" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Последње три цифре" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Последње четири цифре" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Оригинална величина слова" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "ВЕЛИКА СЛОВА" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "мала слова" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "Једна цифра" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Две цифре" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Три цифре" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Четири цифре" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Пет цифре" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Шест цифре" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Седам цифара" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Стотинке" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "ГГГГММДД" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "ГГГГ-ММ-ДД" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "ГГММДД" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "ГГ-ММ-ДД" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "ММДДГГГГ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "ММДДГГ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "ММДД" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "ДДММГГГГ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "ДДММГГ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "ГГГГ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "ГГ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "ММ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "ДД" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "ЧЧММСС" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "ЧЧММ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "ЧЧ-ММ-СС" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "ЧЧ-ММ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "ЧЧ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "ММ (минута)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "СС" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Подешавања подфасцикле не треба да почиње са %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Подешавања подфасцикле не треба да се завршава са %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "Подешавања подфасцикле не треба да садржи два %s један за другим" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Да уклоним све кодове задатка?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Да ли да уклоним све кодове задатка?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Да уклоним све запамћене путање?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Да ли да уклоним све запамћене путање?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Да уклоним све занемарене путање?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Да ли да уклоним све занемарене путање?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Грешка у поставкама за преименовање фотографија" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Грешка у поставкама за преименовање видеа" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Грешка у поставкама субфасцикли за преузете фотографије" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Грешка у поставкама субфасцикли за преузет видео" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Унесите код задатка" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Упишите код задатка или изаберите неки претходни" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Упишите нови код задатка" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Код задатка:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Унесите путање за занемаривање" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "Одредите путање са којих никада не желите да преузмете слике и видео" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Путања:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Код задатка" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Изаберите фасциклу за чување фотографија" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Изаберите фасциклу за смештање преузетог видеа" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Изаберите фасциклу која садржи %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Изаберите фасциклу за резерве фотографија" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Изаберите фасциклу за резерву видеа" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -892,7 +935,7 @@ msgstr "" "Упозорење: Нема довољно метаподатака за образовање пуног имена. " "Искористите друге опције за преименовање." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -901,13 +944,13 @@ msgstr "" "Искористите другу опцију за именовање фасцикли." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Пример: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -918,7 +961,7 @@ msgstr "" "коришћене.\n" "Враћам поставке на подразумеване вредности." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -928,7 +971,7 @@ msgstr "" "Следећи изрази су неисправни и биће уклоњени уколико их не поправите:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -938,7 +981,7 @@ msgstr "" "Следећи израз је неисправан и биће уклоњен уколико га не поправите:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Неисправан регуларни израз" @@ -1025,11 +1068,11 @@ msgid "Stockholm" msgstr "Истамбул" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "подфасцикла" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "име датотеке" @@ -1088,6 +1131,8 @@ msgid "" "%(image1)s was taken on %(image1_date)s at %(image1_time)s, and %(image2)s " "on %(image2_date)s at %(image2_time)s." msgstr "" +"%(image1)s је сликана %(image1_date)s у %(image1_time)s, а %(image2)s " +"%(image2_date)s у %(image2_time)s." #: rapid/problemnotification.py:103 #, python-format @@ -1311,7 +1356,7 @@ msgstr "Грешка при образовању резервне копије" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, и %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1321,24 +1366,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Фотографије су већ преузете" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Извор: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "подфасцикла и име датотеке" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Не могу да направим подфасциклу за преузимање" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Путања: %s" @@ -1599,14 +1644,18 @@ msgid "Automatically detect devices" msgstr "Сам пронађи уређаје" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "Сам окрени слике" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Резервна копија" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Направи резерву слика и видеа при преузимању" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1614,7 +1663,7 @@ msgstr "" "Изаберите фасциклу за чување преузетих фотографија. Подфасцикле ће бити " "направљене на основу задатог редоследа." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1622,14 +1671,10 @@ msgstr "" "Изаберите фасциклу за чување преузетог видеа. Подфасцикле ће бити направљене " "на основу задатог редоследа." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Почетак дана:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Обриши слике и видео са уређаја након преузимања" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Опције уређаја" @@ -1775,6 +1820,8 @@ msgid "" "always scan or ignore when automatic detection of Portable Storage Devices " "is enabled." msgstr "" +"Упамћене путање су оне које се везују за уређаје које желите да увек " +"претражите или занемарите при аутоматском тражењу уређаја." #: rapid/glade3/prefs.ui.h:75 msgid "Rename Options" @@ -1791,11 +1838,11 @@ msgstr "Прескочи преузимање" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Преузимање видео снимака није могуће. Уколико желите ову опцију инсталирајте " -"hachoir metadata и kaa metadata пакете за Питон." +"Преузимање видеа је онемогућено. За преузимање видеа инсталирајте hachoir " +"metadata и kaa metadata за Питон и exiftool." #: rapid/glade3/prefs.ui.h:79 msgid "" @@ -1803,6 +1850,8 @@ msgid "" "devices for photos or videos. Any path ending with the values below will not " "be scanned." msgstr "" +"Унесите део имена путања које желите да занемарите приликом претраживања " +"уређаја. Све путање које се завршавају овом именом ће бити занемарене." #: rapid/glade3/prefs.ui.h:80 msgid "" diff --git a/po/sv.po b/po/sv.po index f337ce5..186cd90 100644 --- a/po/sv.po +++ b/po/sv.po @@ -7,22 +7,22 @@ msgid "" msgstr "" "Project-Id-Version: rapid\n" "Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2011-09-19 14:04-0500\n" -"PO-Revision-Date: 2011-09-26 13:08+0000\n" -"Last-Translator: Ulf Urdén \n" +"POT-Creation-Date: 2011-11-20 13:25-0600\n" +"PO-Revision-Date: 2011-12-16 16:45+0000\n" +"Last-Translator: Silas Lenz \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-09-27 23:44+0000\n" -"X-Generator: Launchpad (build 14041)\n" +"X-Launchpad-Export-Date: 2011-12-28 07:56+0000\n" +"X-Generator: Launchpad (build 14560)\n" #. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html -#: rapid/rapid.py:106 rapid/glade3/rapid.ui.h:14 +#: rapid/rapid.py:107 rapid/rapid.py:1699 rapid/glade3/rapid.ui.h:14 msgid "Rapid Photo Downloader" msgstr "Rapid Photo Downloader" -#: rapid/rapid.py:111 +#: rapid/rapid.py:112 #, python-format msgid "" "%(date)s\n" @@ -31,33 +31,33 @@ msgstr "" "%(date)s\n" "%(time)s" -#: rapid/rapid.py:113 +#: rapid/rapid.py:114 #, python-format msgid "%(date)s %(time)s" msgstr "%(date)s %(time)s" -#: rapid/rapid.py:116 +#: rapid/rapid.py:117 #, python-format msgid "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(date)s %(hour)s:%(minute)s:%(second)s:%(subsecond)s" #. Device refers to a thing like a camera, memory card in its reader, #. external hard drive, Portable Storage Device, etc. -#: rapid/rapid.py:150 +#: rapid/rapid.py:152 msgid "Device" msgstr "Enhet" #. Size refers to the total size of images on the device, typically in #. MB or GB -#: rapid/rapid.py:167 +#: rapid/rapid.py:170 msgid "Size" msgstr "Storlek" -#: rapid/rapid.py:170 +#: rapid/rapid.py:173 msgid "Download Progress" msgstr "Överföringsförlopp" -#: rapid/rapid.py:316 +#: rapid/rapid.py:319 #, python-format msgid "%(device)s did not unmount" msgstr "%(device)s enheter avmonterades inte" @@ -66,19 +66,36 @@ msgstr "%(device)s enheter avmonterades inte" #. looking for photos or videos. It is visible initially in the progress bar for each device #. (which normally holds "x photos and videos"). #. It maybe displayed only briefly if the contents of the device being scanned is small. -#: rapid/rapid.py:1178 +#: rapid/rapid.py:1186 msgid "scanning..." msgstr "söker av..." -#: rapid/rapid.py:2086 rapid/glade3/rapid.ui.h:5 +#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s +#: rapid/rapid.py:1697 +msgid "the root of the file system" +msgstr "" + +#. message in dialog box which asks the user if they really want to be downloading from this location +#: rapid/rapid.py:1701 +#, python-format +msgid "Downloading from %(location)s." +msgstr "Laddar ner från %(location)s." + +#: rapid/rapid.py:1702 +msgid "" +"Do you really want to download from here? On some systems, scanning this " +"location can take a very long time." +msgstr "" + +#: rapid/rapid.py:2124 rapid/glade3/rapid.ui.h:5 msgid "Download" msgstr "Hämta" -#: rapid/rapid.py:2089 +#: rapid/rapid.py:2127 msgid "Pause" msgstr "Pausa" -#: rapid/rapid.py:2190 +#: rapid/rapid.py:2228 #, python-format msgid "" "These download folders are invalid:\n" @@ -89,7 +106,7 @@ msgstr "" "%(folder1)s\n" "%(folder2)s" -#: rapid/rapid.py:2193 +#: rapid/rapid.py:2231 #, python-format msgid "" "This download folder is invalid:\n" @@ -98,136 +115,176 @@ msgstr "" "Denna mapp är ogiltig:\n" "%s" -#: rapid/rapid.py:2194 +#: rapid/rapid.py:2232 msgid "Download cannot proceed" msgstr "Kan inte fortsätta överföringen" -#: rapid/rapid.py:2503 +#: rapid/rapid.py:2559 msgid "About 1 second remaining" msgstr "Cirka en sekund återstår" -#: rapid/rapid.py:2505 +#: rapid/rapid.py:2561 #, python-format msgid "About %i seconds remaining" msgstr "Cirka %i sekunder återstår" -#: rapid/rapid.py:2507 +#: rapid/rapid.py:2563 msgid "About 1 minute remaining" msgstr "Cirka en minut återstår" #. Translators: in the text '%(minutes)i:%(seconds)02i', only the : should be translated, if needed. #. '%(minutes)i' and '%(seconds)02i' should not be modified or left out. They are used to format and display the amount #. of time the download has remainging, e.g. 'About 5:36 minutes remaining' -#: rapid/rapid.py:2512 +#: rapid/rapid.py:2568 #, python-format msgid "About %(minutes)i:%(seconds)02i minutes remaining" msgstr "Ungefär %(minutes)i:%(seconds)02i minuter återstår" -#: rapid/rapid.py:2534 rapid/preferencesdialog.py:891 rapid/rpdfile.py:110 +#: rapid/rapid.py:2590 rapid/rpdfile.py:113 msgid "photos and videos" msgstr "bilder och filmer" -#: rapid/rapid.py:2536 rapid/rpdfile.py:112 +#: rapid/rapid.py:2592 rapid/rpdfile.py:115 msgid "photos or videos" msgstr "bilder eller filmer" -#: rapid/rapid.py:2539 rapid/rapid.py:3116 rapid/rpdfile.py:115 +#: rapid/rapid.py:2595 rapid/rapid.py:3408 rapid/rpdfile.py:118 msgid "videos" msgstr "video" -#: rapid/rapid.py:2541 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:117 -#: rapid/rpdfile.py:270 +#: rapid/rapid.py:2597 rapid/preferencesdialog.py:1617 rapid/rpdfile.py:120 +#: rapid/rpdfile.py:254 msgid "video" msgstr "video" -#: rapid/rapid.py:2544 rapid/rapid.py:3114 rapid/preferencesdialog.py:893 -#: rapid/rpdfile.py:120 +#: rapid/rapid.py:2600 rapid/rapid.py:3406 rapid/rpdfile.py:123 msgid "photos" msgstr "bilder" #. check subfolder preferences for bad values -#: rapid/rapid.py:2546 rapid/preferencesdialog.py:1615 rapid/rpdfile.py:122 -#: rapid/rpdfile.py:250 +#: rapid/rapid.py:2602 rapid/preferencesdialog.py:1616 rapid/rpdfile.py:125 +#: rapid/rpdfile.py:234 msgid "photo" msgstr "bild" -#: rapid/rapid.py:2573 +#: rapid/rapid.py:2629 #, python-format msgid "%(noFiles)s %(filetypes)s downloaded" msgstr "%(noFiles)s %(filetypes)s överfördes" -#: rapid/rapid.py:2577 +#: rapid/rapid.py:2633 #, python-format msgid "%(noFiles)s %(filetypes)s failed to download" msgstr "%(noFiles)s %(filetypes)s gick inte att hämta" -#: rapid/rapid.py:2580 rapid/rapid.py:2632 +#: rapid/rapid.py:2636 rapid/rapid.py:2688 msgid "warnings" msgstr "varningar" -#: rapid/rapid.py:2589 +#: rapid/rapid.py:2645 msgid "All downloads complete" msgstr "Alla överföringar klara" -#: rapid/rapid.py:2595 rapid/rapid.py:2604 rapid/rapid.py:2613 -#: rapid/rapid.py:2622 rapid/rapid.py:2630 +#: rapid/rapid.py:2651 rapid/rapid.py:2660 rapid/rapid.py:2669 +#: rapid/rapid.py:2678 rapid/rapid.py:2686 #, python-format msgid "%(number)s %(numberdownloaded)s" msgstr "%(number)s %(numberdownloaded)s" -#: rapid/rapid.py:2597 rapid/rapid.py:2615 +#: rapid/rapid.py:2653 rapid/rapid.py:2671 #, python-format msgid "%(filetype)s downloaded" msgstr "%(filetype)s hämtade" -#: rapid/rapid.py:2606 rapid/rapid.py:2624 +#: rapid/rapid.py:2662 rapid/rapid.py:2680 #, python-format msgid "%(filetype)s failed to download" msgstr "%(filetype)s gick inte att hämta" #. e.g.: 3 of 205 photos and videos (202 remaining) -#: rapid/rapid.py:2663 +#: rapid/rapid.py:2719 #, python-format msgid "%(number)s of %(total)s %(filetypes)s (%(remaining)s remaining)" msgstr "%(number)s av %(total)s %(filetypes)s (%(remaining)s återstår)" #. e.g.: 205 of 205 photos and videos -#: rapid/rapid.py:2670 +#: rapid/rapid.py:2726 #, python-format msgid "%(number)s of %(total)s %(filetypes)s" msgstr "%(number)s av %(total)s %(filetypes)s" -#: rapid/rapid.py:3084 +#: rapid/rapid.py:3072 +msgid "From" +msgstr "Från" + +#: rapid/rapid.py:3080 +msgid "Auto Detect" +msgstr "Upptäck automatiskt" + +#: rapid/rapid.py:3084 rapid/preferencesdialog.py:1324 +#, python-format +msgid "Select a folder containing %(file_types)s" +msgstr "Välj en katalog innehållande %(file_types)s" + +#: rapid/rapid.py:3125 +msgid "Copy" +msgstr "Kopiera" + +#: rapid/rapid.py:3138 +msgid "Move" +msgstr "Flytta" + +#: rapid/rapid.py:3160 +msgid "To" +msgstr "Till" + +#: rapid/rapid.py:3167 rapid/rapid.py:3796 +msgid "Photos:" +msgstr "Bilder:" + +#: rapid/rapid.py:3170 rapid/preferencesdialog.py:1161 +msgid "Select a folder to download photos to" +msgstr "Välj en katalog att överföra bilder till" + +#: rapid/rapid.py:3182 rapid/rapid.py:3796 +msgid "Videos:" +msgstr "Filmer:" + +#: rapid/rapid.py:3184 rapid/preferencesdialog.py:1179 +msgid "Select a folder to download videos to" +msgstr "Välj en katalog att överföra filmer till" + +#: rapid/rapid.py:3376 msgid "and" msgstr "och" -#: rapid/rapid.py:3089 +#: rapid/rapid.py:3381 msgid "Using backup devices" msgstr "Använder enheter för säkerhetskopiering" -#: rapid/rapid.py:3091 +#: rapid/rapid.py:3383 msgid "Using backup device" msgstr "Använder enhet för säkerhetskopiering" -#: rapid/rapid.py:3093 +#: rapid/rapid.py:3385 msgid "No backup devices detected" msgstr "Inga enheter för säkerhetskopiering hittades" -#: rapid/rapid.py:3120 +#: rapid/rapid.py:3412 msgid "Free space:" msgstr "Ledigt utrymme:" #. (videos) or (photos) will be appended to the free space message displayed to the #. user in the status bar. #. you should only translate this if your language does not use parantheses -#: rapid/rapid.py:3132 +#: rapid/rapid.py:3424 #, python-format msgid "(%(file_type)s)" msgstr "(%(file_type)s)" #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window -#: rapid/rapid.py:3136 +#: rapid/rapid.py:3428 #, python-format msgid "%(free)s %(file_type)s" msgstr "%(free)s %(file_type)s" @@ -235,87 +292,87 @@ msgstr "%(free)s %(file_type)s" #. Inserted in the middle of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3141 +#: rapid/rapid.py:3433 msgid "; " msgstr "; " #. Inserted at the end of the statusbar message concerning the amount of freespace #. Used to differentiate between two different file systems #. e.g. Free space: 21.3GB (photos); 14.7GB (videos). -#: rapid/rapid.py:3146 +#: rapid/rapid.py:3438 msgid "." msgstr "." #. Freespace available on the filesystem for downloading to #. Displayed in status bar message on main window #. e.g. 14.7GB available -#: rapid/rapid.py:3152 +#: rapid/rapid.py:3444 #, python-format msgid "%(free)s free" msgstr "%(free)s tillgängligt" #. user manually specified the same location for photos and video backups -#: rapid/rapid.py:3160 +#: rapid/rapid.py:3452 #, python-format msgid "Backing up photos and videos to %(path)s" msgstr "Säkerhetskopierar bilder och filmer till %(path)s" #. user manually specified backup location -#: rapid/rapid.py:3163 +#: rapid/rapid.py:3455 #, python-format msgid "Backing up to %(path)s" msgstr "Säkerhetskopierar till %(path)s" #. user manually specified different locations for photo and video backups -#: rapid/rapid.py:3166 +#: rapid/rapid.py:3458 #, python-format msgid "Backing up photos to %(path)s and videos to %(path2)s" msgstr "Säkerhetskopierar bolder till %(path)s och videor till %(path2)s" -#: rapid/rapid.py:3173 +#: rapid/rapid.py:3465 #, python-format msgid "%(freespace)s. %(backuppaths)s." msgstr "%(freespace)s. %(backuppaths)s." -#: rapid/rapid.py:3202 +#: rapid/rapid.py:3494 msgid "Program preferences are invalid" msgstr "Programinställningarna är ogiltiga" -#: rapid/rapid.py:3321 rapid/rpdfile.py:251 +#: rapid/rapid.py:3613 rapid/rpdfile.py:235 msgid "Photo" msgstr "Bild" -#: rapid/rapid.py:3323 rapid/rpdfile.py:271 +#: rapid/rapid.py:3615 rapid/rpdfile.py:255 msgid "Video" msgstr "Film" -#: rapid/rapid.py:3332 +#: rapid/rapid.py:3624 #, python-format msgid "%(file_type)s download folder does not exist" msgstr "%(file_type)s nedladdningsmapp saknas" -#: rapid/rapid.py:3334 rapid/rapid.py:3348 rapid/rapid.py:3361 +#: rapid/rapid.py:3626 rapid/rapid.py:3640 rapid/rapid.py:3653 #, python-format msgid "Folder: %s" msgstr "Mapp: %s" -#: rapid/rapid.py:3346 +#: rapid/rapid.py:3638 #, python-format msgid "%(file_type)s download folder is invalid" msgstr "%(file_type)s nedladdningsmapp är ogiltig" -#: rapid/rapid.py:3359 +#: rapid/rapid.py:3651 #, python-format msgid "%(file_type)s download folder is not writable" msgstr "%(file_type)s nedladdningsmapp är inte skrivbar" -#: rapid/rapid.py:3437 +#: rapid/rapid.py:3729 msgid "Thumbnails" msgstr "Miniatyrer" #. Translators: this text is displayed to the user when they request information on the command line options. #. The text %default should not be modified or left out. -#: rapid/rapid.py:3484 +#: rapid/rapid.py:3777 #, python-format msgid "" "display program information on the command line as the program runs " @@ -324,50 +381,32 @@ msgstr "" "visa programinformation på kommandoraden när programmet körs (standardvärde: " "%default)" -#: rapid/rapid.py:3485 +#: rapid/rapid.py:3778 msgid "display debugging information when run from the command line" msgstr "visa debuginformation när programmet körs från kommandorad" -#: rapid/rapid.py:3486 +#: rapid/rapid.py:3779 msgid "only output errors to the command line" msgstr "Visa fel endast på kommandoraden" #. image file extensions are recognized RAW files plus TIFF and JPG -#: rapid/rapid.py:3488 +#: rapid/rapid.py:3781 msgid "list photo and video file extensions the program recognizes and exit" msgstr "lista filändelser som programmet stödjer och avsluta" -#: rapid/rapid.py:3490 +#: rapid/rapid.py:3783 msgid "reset all program settings and preferences and exit" msgstr "nollställ alla inställningar och avsluta" -#: rapid/rapid.py:3503 -msgid "Photos:" -msgstr "Bilder:" - -#: rapid/rapid.py:3503 -msgid "Videos:" -msgstr "Filmer:" - -#: rapid/rapid.py:3508 +#: rapid/rapid.py:3801 #, python-format msgid "and %s" msgstr "och %s" -#: rapid/rapid.py:3516 +#: rapid/rapid.py:3809 msgid "All settings and preferences have been reset" msgstr "Alla inställningar har nollställts" -#: rapid/rapid.py:3534 -msgid "" -"Video downloading functionality disabled.\n" -"To download videos, please install the hachoir metadata and kaa metadata " -"packages for python." -msgstr "" -"Nedladdning av video är inaktiverat.\n" -"För att kunna ladda ned videos, var vänlig att installera Python-paketen " -"hachoir och kaa." - #: rapid/backupfile.py:142 rapid/backupfile.py:165 msgid "Backing up error" msgstr "Fel vid säkerhetskopiering" @@ -391,8 +430,8 @@ msgstr "" msgid "Error: %(inst)s" msgstr "Fel: %(inst)s" -#: rapid/copyfiles.py:143 rapid/subfolderfile.py:211 -#: rapid/subfolderfile.py:351 rapid/subfolderfile.py:369 +#: rapid/copyfiles.py:159 rapid/subfolderfile.py:211 +#: rapid/subfolderfile.py:352 rapid/subfolderfile.py:370 #, python-format msgid "" "%(problem)s\n" @@ -420,471 +459,473 @@ msgstr "_Kom ihåg mitt val" msgid "MB/s" msgstr "MB/s" -#: rapid/generatenameconfig.py:145 +#: rapid/generatenameconfig.py:150 msgid "Date time" msgstr "Datumtid" -#: rapid/generatenameconfig.py:146 +#: rapid/generatenameconfig.py:151 msgid "Text" msgstr "Text" -#: rapid/generatenameconfig.py:147 +#: rapid/generatenameconfig.py:152 msgid "Filename" msgstr "Filnamn" -#: rapid/generatenameconfig.py:148 +#: rapid/generatenameconfig.py:153 msgid "Metadata" msgstr "Metadata" -#: rapid/generatenameconfig.py:149 +#: rapid/generatenameconfig.py:154 msgid "Sequences" msgstr "Sekvenser" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/generatenameconfig.py:151 rapid/preferencesdialog.py:570 +#: rapid/generatenameconfig.py:156 rapid/preferencesdialog.py:574 msgid "Job code" msgstr "Fototillfälle" -#: rapid/generatenameconfig.py:152 +#: rapid/generatenameconfig.py:157 msgid "Image date" msgstr "Bilddatum" -#: rapid/generatenameconfig.py:153 +#: rapid/generatenameconfig.py:158 msgid "Video date" msgstr "Filmdatum" -#: rapid/generatenameconfig.py:154 +#: rapid/generatenameconfig.py:159 msgid "Today" msgstr "Idag" -#: rapid/generatenameconfig.py:155 +#: rapid/generatenameconfig.py:160 msgid "Yesterday" msgstr "Igår" #. Translators: Download time is the time and date that the download started (when the user clicked the Download button) -#: rapid/generatenameconfig.py:157 +#: rapid/generatenameconfig.py:162 msgid "Download time" msgstr "Nedladdningstid" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:159 +#: rapid/generatenameconfig.py:164 msgid "Name + extension" msgstr "Namn + filändelse" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:161 +#: rapid/generatenameconfig.py:166 msgid "Name" msgstr "Namn" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:163 +#: rapid/generatenameconfig.py:168 msgid "Extension" msgstr "Filändelse" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:165 +#: rapid/generatenameconfig.py:170 msgid "Image number" msgstr "Bildnummer" -#: rapid/generatenameconfig.py:166 +#: rapid/generatenameconfig.py:171 msgid "Video number" msgstr "Filmnummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:168 +#: rapid/generatenameconfig.py:173 msgid "Aperture" msgstr "Bländare" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:170 +#: rapid/generatenameconfig.py:175 msgid "ISO" msgstr "ISO" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:172 +#: rapid/generatenameconfig.py:177 msgid "Exposure time" msgstr "Bländartid" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:174 +#: rapid/generatenameconfig.py:179 msgid "Focal length" msgstr "Brännvidd" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:176 +#: rapid/generatenameconfig.py:181 msgid "Camera make" msgstr "Kameratillverkare" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:178 +#: rapid/generatenameconfig.py:183 msgid "Camera model" msgstr "Kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:180 +#: rapid/generatenameconfig.py:185 msgid "Short camera model" msgstr "Förkortning på kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:182 +#: rapid/generatenameconfig.py:187 msgid "Hyphenated short camera model" msgstr "Utökad förkortning på kameramodell" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:184 +#: rapid/generatenameconfig.py:189 msgid "Serial number" msgstr "Serienummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:186 +#: rapid/generatenameconfig.py:191 msgid "Shutter count" msgstr "Antal exponeringar" +#. File number currently refers to the Exif value Exif.Canon.FileNumber +#: rapid/generatenameconfig.py:193 +msgid "File number" +msgstr "" + +#. Only the folder component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:195 +msgid "Folder only" +msgstr "Endast mappen" + +#. The folder and file component of the Exif.Canon.FileNumber value +#: rapid/generatenameconfig.py:197 +msgid "Folder and file" +msgstr "" + #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata -#: rapid/generatenameconfig.py:188 +#: rapid/generatenameconfig.py:199 msgid "Owner name" msgstr "Ägarens namn" -#: rapid/generatenameconfig.py:189 +#: rapid/generatenameconfig.py:200 msgid "Codec" msgstr "Kodek" -#: rapid/generatenameconfig.py:190 +#: rapid/generatenameconfig.py:201 msgid "Width" msgstr "Bredd" -#: rapid/generatenameconfig.py:191 +#: rapid/generatenameconfig.py:202 msgid "Height" msgstr "Höjd" -#: rapid/generatenameconfig.py:192 +#: rapid/generatenameconfig.py:203 msgid "Length" msgstr "Längd" -#: rapid/generatenameconfig.py:193 +#: rapid/generatenameconfig.py:204 msgid "Frames Per Second" msgstr "Bildrutor per sekund" -#: rapid/generatenameconfig.py:194 +#: rapid/generatenameconfig.py:205 msgid "Artist" msgstr "Artist" -#: rapid/generatenameconfig.py:195 +#: rapid/generatenameconfig.py:206 msgid "Copyright" msgstr "Upphovsrätt" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:197 +#: rapid/generatenameconfig.py:208 msgid "Downloads today" msgstr "Överföringar idag" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:199 +#: rapid/generatenameconfig.py:210 msgid "Session number" msgstr "Sessionsnummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:201 +#: rapid/generatenameconfig.py:212 msgid "Subfolder number" msgstr "Nummer på underkatalog" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers -#: rapid/generatenameconfig.py:203 +#: rapid/generatenameconfig.py:214 msgid "Stored number" msgstr "Tidigare sekvensnummer" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters -#: rapid/generatenameconfig.py:205 +#: rapid/generatenameconfig.py:216 msgid "Sequence letter" msgstr "Sekvensbokstav" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:207 +#: rapid/generatenameconfig.py:218 msgid "All digits" msgstr "Alla siffror" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:209 +#: rapid/generatenameconfig.py:220 msgid "Last digit" msgstr "Senaste siffra" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:211 +#: rapid/generatenameconfig.py:222 msgid "Last 2 digits" msgstr "Senaste två siffrorna" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:213 +#: rapid/generatenameconfig.py:224 msgid "Last 3 digits" msgstr "Senaste tre siffrorna" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename -#: rapid/generatenameconfig.py:215 +#: rapid/generatenameconfig.py:226 msgid "Last 4 digits" msgstr "Senaste fyra siffrorna" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:217 +#: rapid/generatenameconfig.py:228 msgid "Original Case" msgstr "Använd ursprungligt skiftläge" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:219 +#: rapid/generatenameconfig.py:230 msgid "UPPERCASE" msgstr "VERSALER" #. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization -#: rapid/generatenameconfig.py:221 +#: rapid/generatenameconfig.py:232 msgid "lowercase" msgstr "gemener" -#: rapid/generatenameconfig.py:222 +#: rapid/generatenameconfig.py:233 msgid "One digit" msgstr "En siffra" -#: rapid/generatenameconfig.py:223 +#: rapid/generatenameconfig.py:234 msgid "Two digits" msgstr "Två siffror" -#: rapid/generatenameconfig.py:224 +#: rapid/generatenameconfig.py:235 msgid "Three digits" msgstr "Tre siffror" -#: rapid/generatenameconfig.py:225 +#: rapid/generatenameconfig.py:236 msgid "Four digits" msgstr "Fyra siffror" -#: rapid/generatenameconfig.py:226 +#: rapid/generatenameconfig.py:237 msgid "Five digits" msgstr "Fem siffror" -#: rapid/generatenameconfig.py:227 +#: rapid/generatenameconfig.py:238 msgid "Six digits" msgstr "Sex siffror" -#: rapid/generatenameconfig.py:228 +#: rapid/generatenameconfig.py:239 msgid "Seven digits" msgstr "Sju siffror" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:230 +#: rapid/generatenameconfig.py:241 msgid "Subseconds" msgstr "Sekunder" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:232 +#: rapid/generatenameconfig.py:243 msgid "YYYYMMDD" msgstr "ÅÅÅÅMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:234 +#: rapid/generatenameconfig.py:245 msgid "YYYY-MM-DD" msgstr "ÅÅÅÅ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:236 +#: rapid/generatenameconfig.py:247 msgid "YYMMDD" msgstr "ÅÅMMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:238 +#: rapid/generatenameconfig.py:249 msgid "YY-MM-DD" msgstr "ÅÅ-MM-DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:240 +#: rapid/generatenameconfig.py:251 msgid "MMDDYYYY" msgstr "MMDDÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:242 +#: rapid/generatenameconfig.py:253 msgid "MMDDYY" msgstr "MMDDÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:244 +#: rapid/generatenameconfig.py:255 msgid "MMDD" msgstr "MMDD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:246 +#: rapid/generatenameconfig.py:257 msgid "DDMMYYYY" msgstr "DDMMÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:248 +#: rapid/generatenameconfig.py:259 msgid "DDMMYY" msgstr "DDMMÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:250 +#: rapid/generatenameconfig.py:261 msgid "YYYY" msgstr "ÅÅÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:252 +#: rapid/generatenameconfig.py:263 msgid "YY" msgstr "ÅÅ" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:254 +#: rapid/generatenameconfig.py:265 msgid "MM" msgstr "MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:256 +#: rapid/generatenameconfig.py:267 msgid "DD" msgstr "DD" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:258 +#: rapid/generatenameconfig.py:269 msgid "HHMMSS" msgstr "HHMMSS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:260 +#: rapid/generatenameconfig.py:271 msgid "HHMM" msgstr "HHMM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:262 +#: rapid/generatenameconfig.py:273 msgid "HH-MM-SS" msgstr "HH-MM-SS" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:264 +#: rapid/generatenameconfig.py:275 msgid "HH-MM" msgstr "HH-MM" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:266 +#: rapid/generatenameconfig.py:277 msgid "HH" msgstr "HH" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:268 +#: rapid/generatenameconfig.py:279 msgid "MM (minutes)" msgstr "MM (minuter)" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime -#: rapid/generatenameconfig.py:270 +#: rapid/generatenameconfig.py:281 msgid "SS" msgstr "SS" -#: rapid/preferencesdialog.py:370 +#: rapid/preferencesdialog.py:371 #, python-format msgid "Subfolder preferences should not start with a %s" msgstr "Inställningen för underkataloger skall inte börja med %s" -#: rapid/preferencesdialog.py:372 +#: rapid/preferencesdialog.py:373 #, python-format msgid "Subfolder preferences should not end with a %s" msgstr "Inställning för underkatalog skall inte börja med %s" -#: rapid/preferencesdialog.py:376 +#: rapid/preferencesdialog.py:377 #, python-format msgid "Subfolder preferences should not contain two %s one after the other" msgstr "Inställning för underkatalog skall inte innehålla två %s i rad" -#: rapid/preferencesdialog.py:431 rapid/preferencesdialog.py:693 +#: rapid/preferencesdialog.py:436 rapid/preferencesdialog.py:697 msgid "Remove all Job Codes?" msgstr "Ta bort alla fototillfällen?" -#: rapid/preferencesdialog.py:432 rapid/preferencesdialog.py:710 +#: rapid/preferencesdialog.py:437 rapid/preferencesdialog.py:714 msgid "Should all Job Codes be removed?" msgstr "Vill du ta bort alla fototillfällen?" -#: rapid/preferencesdialog.py:438 +#: rapid/preferencesdialog.py:443 msgid "Remove all Remembered Paths?" msgstr "Ta bort alla sparade sökvägar?" -#: rapid/preferencesdialog.py:439 +#: rapid/preferencesdialog.py:444 msgid "Should all remembered paths be removed?" msgstr "Ska alla sparade sökvägar tas bort?" -#: rapid/preferencesdialog.py:445 +#: rapid/preferencesdialog.py:450 msgid "Remove all Ignored Paths?" msgstr "Ta bort alla ignorerade sökvägar?" -#: rapid/preferencesdialog.py:446 +#: rapid/preferencesdialog.py:451 msgid "Should all ignored paths be removed?" msgstr "Ska alla ignorerade sökvägar tas bort?" -#: rapid/preferencesdialog.py:457 +#: rapid/preferencesdialog.py:462 msgid "Error in Photo Rename preferences" msgstr "Fel i inställningarna för bildnamnbyte" -#: rapid/preferencesdialog.py:638 +#: rapid/preferencesdialog.py:642 msgid "Error in Video Rename preferences" msgstr "Fel i inställningarna för filmnamnbyte" -#: rapid/preferencesdialog.py:659 +#: rapid/preferencesdialog.py:663 msgid "Error in Photo Download Subfolders preferences" msgstr "Fel i inställningarna för bildöverföring" -#: rapid/preferencesdialog.py:676 +#: rapid/preferencesdialog.py:680 msgid "Error in Video Download Subfolders preferences" msgstr "Fel i inställningarna för filmöverföring" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:735 +#: rapid/preferencesdialog.py:739 msgid "Enter a Job Code" msgstr "Ange fototillfälle" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:751 +#: rapid/preferencesdialog.py:755 msgid "Enter a new Job Code, or select a previous one" msgstr "Skriv ett nytt jobbnummer, eller välj ett föregående" #. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode -#: rapid/preferencesdialog.py:754 +#: rapid/preferencesdialog.py:758 msgid "Enter a new Job Code" msgstr "Ange nytt jobbnamn" -#: rapid/preferencesdialog.py:759 +#: rapid/preferencesdialog.py:763 msgid "Job Code:" msgstr "Fototillfälle:" -#: rapid/preferencesdialog.py:815 +#: rapid/preferencesdialog.py:819 msgid "Enter a Path to Ignore" msgstr "Ange sökväg att ignorera" -#: rapid/preferencesdialog.py:827 +#: rapid/preferencesdialog.py:831 msgid "Specify a path that will never be scanned for photos or videos" msgstr "" "Ange en sökväg som aldrig kommer att avsökas efter bilder eller videor" -#: rapid/preferencesdialog.py:832 +#: rapid/preferencesdialog.py:836 msgid "Path:" msgstr "Sökväg:" -#: rapid/preferencesdialog.py:1078 +#: rapid/preferencesdialog.py:1079 msgid "Job Code" msgstr "Jobbnamn" -#: rapid/preferencesdialog.py:1160 -msgid "Select a folder to download photos to" -msgstr "Välj en katalog att överföra bilder till" - -#: rapid/preferencesdialog.py:1178 -msgid "Select a folder to download videos to" -msgstr "Välj en katalog att överföra filmer till" - -#: rapid/preferencesdialog.py:1323 -#, python-format -msgid "Select a folder containing %(file_types)s" -msgstr "Välj en katalog innehållande %(file_types)s" - -#: rapid/preferencesdialog.py:1349 +#: rapid/preferencesdialog.py:1350 msgid "Select a folder in which to backup photos" msgstr "Välj en plats för att säkerhetskopiera bilder" -#: rapid/preferencesdialog.py:1362 +#: rapid/preferencesdialog.py:1363 msgid "Select a folder in which to backup videos" msgstr "Välj en plats för att säkerhetskopiera videor" #. Translators: please do not modify or leave out html formatting tags like and . These are used to format the text the users sees -#: rapid/preferencesdialog.py:1457 +#: rapid/preferencesdialog.py:1458 msgid "" "Warning: There is insufficient metadata to fully generate the " "name. Please use other renaming options." @@ -892,7 +933,7 @@ msgstr "" "Varning: Det saknas metadata för att namnge. Var god välj andra " "inställningar för namngivning." -#: rapid/preferencesdialog.py:1508 +#: rapid/preferencesdialog.py:1509 msgid "" "Warning: There is insufficient metadata to fully generate " "subfolders. Please use other subfolder naming options." @@ -901,13 +942,13 @@ msgstr "" "underkataloger. Välj andra inställningar för att namnge underkataloger." #. Translators: you should not modify or leave out the %s. This is a code used by the programming language python to insert a value that thes user will see -#: rapid/preferencesdialog.py:1511 +#: rapid/preferencesdialog.py:1512 #, python-format msgid "Example: %s" msgstr "Exempel: %s" #. Preferences list is now empty -#: rapid/preferencesdialog.py:1601 +#: rapid/preferencesdialog.py:1602 #, python-format msgid "" "The %(filetype)s subfolder preferences entered are invalid and cannot be " @@ -918,7 +959,7 @@ msgstr "" "användas.\n" "Återställer till standardvärden." -#: rapid/preferencesdialog.py:1746 +#: rapid/preferencesdialog.py:1747 #, python-format msgid "" "The following regular expressions are invalid, and will be removed unless " @@ -929,7 +970,7 @@ msgstr "" "ändrar dem:\n" " %s" -#: rapid/preferencesdialog.py:1748 +#: rapid/preferencesdialog.py:1749 #, python-format msgid "" "This regular expression is invalid, and will be removed unless you correct " @@ -940,7 +981,7 @@ msgstr "" "ändrar det:\n" " %s" -#: rapid/preferencesdialog.py:1749 +#: rapid/preferencesdialog.py:1750 msgid "Invalid regular expression" msgstr "Ogiltigt reguljärt uttryck" @@ -1027,11 +1068,11 @@ msgid "Stockholm" msgstr "Stockholm" #. components -#: rapid/problemnotification.py:26 rapid/subfolderfile.py:362 +#: rapid/problemnotification.py:26 rapid/subfolderfile.py:363 msgid "subfolder" msgstr "Underkatalog" -#: rapid/problemnotification.py:27 rapid/subfolderfile.py:360 +#: rapid/problemnotification.py:27 rapid/subfolderfile.py:361 msgid "filename" msgstr "Filnamn" @@ -1316,7 +1357,7 @@ msgstr "Det uppstod ett fel vid säkerhetskopiering" msgid "%(previousproblem)s, and %(backinguperror)s" msgstr "%(previousproblem)s, och %(backinguperror)s" -#: rapid/rpdfile.py:136 +#: rapid/rpdfile.py:139 #, python-format msgid "%(number)s %(filetypes)s" msgstr "%(number)s %(filetypes)s" @@ -1326,24 +1367,24 @@ msgstr "%(number)s %(filetypes)s" msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s" -#: rapid/subfolderfile.py:299 +#: rapid/subfolderfile.py:300 msgid "Photo has already been downloaded" msgstr "Bilden har redan överförts" -#: rapid/subfolderfile.py:300 +#: rapid/subfolderfile.py:301 #, python-format msgid "Source: %(source)s" msgstr "Källa: %(source)s" -#: rapid/subfolderfile.py:358 +#: rapid/subfolderfile.py:359 msgid "subfolder and filename" msgstr "undermapp och filnamn" -#: rapid/subfolderfile.py:396 +#: rapid/subfolderfile.py:397 msgid "Failed to create download subfolder" msgstr "Misslyckades med att skapa mapp för nedladdning" -#: rapid/subfolderfile.py:397 +#: rapid/subfolderfile.py:398 #, python-format msgid "Path: %s" msgstr "Sökväg: %s" @@ -1603,14 +1644,18 @@ msgid "Automatically detect devices" msgstr "Hitta enheter automatiskt" #: rapid/glade3/prefs.ui.h:34 +msgid "Automatically rotate JPEG images" +msgstr "" + +#: rapid/glade3/prefs.ui.h:35 msgid "Backup" msgstr "Säkerhetskopiering" -#: rapid/glade3/prefs.ui.h:35 +#: rapid/glade3/prefs.ui.h:36 msgid "Backup photos and videos when downloading" msgstr "Säkerhetskopiera bilder och filmer vid överföring" -#: rapid/glade3/prefs.ui.h:36 +#: rapid/glade3/prefs.ui.h:37 msgid "" "Choose the download folder. Subfolders for the downloaded photos will be " "automatically created in this folder using the structure specified below." @@ -1618,7 +1663,7 @@ msgstr "" "Ange en katalog för överföring. Underkataloger kommer att skapas automatiskt " "enligt strukturen nedan." -#: rapid/glade3/prefs.ui.h:37 +#: rapid/glade3/prefs.ui.h:38 msgid "" "Choose the download folder. Subfolders for the downloaded videos will be " "automatically created in this folder using the structure specified below." @@ -1626,14 +1671,10 @@ msgstr "" "Välj katalog för överföring. Underkataloger kommer att skapas automatiskt " "enligt inställningarna nedan." -#: rapid/glade3/prefs.ui.h:38 +#: rapid/glade3/prefs.ui.h:39 msgid "Day start:" msgstr "Början på dagen:" -#: rapid/glade3/prefs.ui.h:39 -msgid "Delete photos and videos from device upon download completion" -msgstr "Radera bilder och filmer från enheten när överföring är klar" - #: rapid/glade3/prefs.ui.h:40 msgid "Device Options" msgstr "Enhetsinställningar" @@ -1796,11 +1837,9 @@ msgstr "Hoppa över överföring" #: rapid/glade3/prefs.ui.h:78 msgid "" "Sorry, video downloading functionality disabled. To download videos, please " -"install the hachoir metadata and kaa metadata packages for " -"python." +"install either the hachoir metadata and kaa metadata packages " +"for python, or exiftool." msgstr "" -"Nedladdning av video är inaktiverat. För att kunna ladda ned videos, var " -"vänlig att installera Python-paketen hachoir och kaa." #: rapid/glade3/prefs.ui.h:79 msgid "" diff --git a/rapid/ChangeLog b/rapid/ChangeLog index 35cd727..775d535 100644 --- a/rapid/ChangeLog +++ b/rapid/ChangeLog @@ -1,3 +1,74 @@ +Version 0.4.3 +------------- + +2012-01-07 + +ExifTool is now a required dependency for Rapid Photo Downloader. ExifTool +can be used to help download videos on Linux distributions that have not +packaged hachoir-metadata, such as Fedora. + +Exiftran is another new dependency. It is used to automatically rotate +JPEG images. + +Fixed bug #704482: Delete photos option should be easily accessible - + +Added a toolbar at the top of the main program window, which gives immediate +access to the most commonly changed configuration options: where files will +be transferred from, whether they will be copied or moved, and where they will +be transferred to. + +Please when the move option is chosen, all files in the download from a device +are first copied before any are deleted. In other words, only once all +source files have been successfully copied from a device to their destination +are the source files deleted from that device. + +Fixed bug #754531: extract Exif.CanonFi.FileNumber metadata - + +Added FileNumber metadata renaming option, which is a Canon-specific Exif value +in the form xxx-yyyy, where xxx is the folder number and yyyy is the image +number. Uses ExifTool. Thanks go to Etieene Charlier for researching the fix +and contributing code to get it implemented. + +Fixed bug #695517: Added functionality to download MTS video files. There is +currently no python based library to read metadata from MTS files, but ExifTool +works. + +Fixed bug #859998: Download THM video thumbnail files - + +Some video files have THM video thumbnail files associated with them. Rapid +Photo Downloader now downloads them and renames them to match the name of the +video it is associated with. + +Fixed bug #594533: Lossless JPEG rotation based on EXIF data after picture +transfer - + +There is now an option to automatically rotate JPEG photos as they are +downloaded. The program exiftran is used to do the rotation. The feature is +turned on default. + +Fixed bug #859012: Confirm if really want to download from /home, /media or / - + +It is possible for the program's preferences to be set to download from /home, +/media or / (the root of the file system). This can result in the program +scanning a very large number of files, possibly causing the system to become +unresponsive. The program now queries the user before commencing this scan to +confirm if this is really what they want to do. + +Fixed bug #792228: clear all thumbnails when refresh command issued. + +Fixed a bug where the device progress bar would occasionally disappear when +the download device was changed. + +Fixed a bug where the file extensions the program downloads could not be +displayed from the command line. + +Fixed a bug where the program would crash when trying to convert a malformed +thumbnail from one image mode to another. + +Updated Czech, Danish, Dutch, French, German, Hungarian, Italian, Norwegian, +Polish, Serbian, Slovak, Spanish and Swedish translations. + + Version 0.4.2 ------------- diff --git a/rapid/INSTALL b/rapid/INSTALL index 8cde587..dd0ac2b 100644 --- a/rapid/INSTALL +++ b/rapid/INSTALL @@ -8,6 +8,8 @@ Rapid Photo Downloader requires the following software: * python-notify 0.1.1 or higher * python-imaging 1.1.7 or higher * librsvg2-common 2.26 or higher +* exiftool +* exiftran To run Rapid Photo Downloader you will need all the software mentioned above. diff --git a/rapid/backupfile.py b/rapid/backupfile.py index 40039bc..39efb53 100644 --- a/rapid/backupfile.py +++ b/rapid/backupfile.py @@ -85,7 +85,21 @@ class BackupFiles(multiprocessing.Process): def progress_callback(self, amount_downloaded, total): self.update_progress(amount_downloaded, total) - + def progress_callback_no_update(self, amount_downloaded, total): + """called when copying very small files""" + pass + + def backup_additional_file(self, dest_dir, full_file_name): + """Backs up small files like XMP or THM files""" + source = gio.File(full_file_name) + dest_name = os.path.join(dest_dir, os.path.split(full_file_name)[1]) + logger.debug("Backing up %s", dest_name) + dest=gio.File(dest_name) + try: + source.copy(dest, self.progress_callback_no_update, cancellable=None) + except gio.Error, inst: + logger.error("Failed to backup file %s", full_file_name) + def run(self): self.cancel_copy = gio.Cancellable() @@ -174,6 +188,14 @@ class BackupFiles(multiprocessing.Process): rpd_file.status = config.STATUS_DOWNLOAD_AND_BACKUP_FAILED else: rpd_file.status = config.STATUS_BACKUP_PROBLEM + else: + # backup any THM or XMP files + if rpd_file.download_thm_full_name: + self.backup_additional_file(dest_dir, + rpd_file.download_thm_full_name) + if rpd_file.download_xmp_full_name: + self.backup_additional_file(dest_dir, + rpd_file.download_xmp_full_name) self.total_downloaded += rpd_file.size bytes_not_downloaded = rpd_file.size - self.amount_downloaded diff --git a/rapid/config.py b/rapid/config.py index 47ecfff..74802ec 100644 --- a/rapid/config.py +++ b/rapid/config.py @@ -15,7 +15,7 @@ ### along with this program; if not, write to the Free Software ### Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -version = '0.4.2' +version = '0.4.3' GCONF_KEY="/apps/rapid-photo-downloader" diff --git a/rapid/copyfiles.py b/rapid/copyfiles.py index 65a6c6d..f6ff073 100644 --- a/rapid/copyfiles.py +++ b/rapid/copyfiles.py @@ -20,6 +20,8 @@ import multiprocessing import tempfile import os +import random +import string import gio @@ -37,7 +39,11 @@ from gettext import gettext as _ class CopyFiles(multiprocessing.Process): + """ + Copies files from source to temporary directory, giving them a random name + """ def __init__(self, photo_download_folder, video_download_folder, files, + modify_files_during_download, modify_pipe, scan_pid, batch_size_MB, results_pipe, terminate_queue, run_event): @@ -48,6 +54,8 @@ class CopyFiles(multiprocessing.Process): self.photo_download_folder = photo_download_folder self.video_download_folder = video_download_folder self.files = files + self.modify_files_during_download = modify_files_during_download + self.modify_pipe = modify_pipe self.scan_pid = scan_pid self.no_files= len(self.files) self.run_event = run_event @@ -85,10 +93,17 @@ class CopyFiles(multiprocessing.Process): def progress_callback(self, amount_downloaded, total): self.update_progress(amount_downloaded, total) + def thm_progress_callback(self, amount_downloaded, total): + # we don't care about tracking download progress for tiny THM files! + pass + def run(self): """start the actual copying of files""" + #characters used to generate temporary filenames + filename_characters = string.letters + string.digits + self.bytes_downloaded = 0 self.total_downloaded = 0 @@ -107,8 +122,8 @@ class CopyFiles(multiprocessing.Process): if self.photo_temp_dir or self.video_temp_dir: self.thumbnail_maker = tn.Thumbnail() - - for i in range(len(self.files)): + + for i in range(self.no_files): rpd_file = self.files[i] self.total_reached = False @@ -119,9 +134,13 @@ class CopyFiles(multiprocessing.Process): return None source = gio.File(path=rpd_file.full_file_name) + + #generate temporary name 5 digits long, no extension + temp_name = ''.join(random.choice(filename_characters) for i in xrange(5)) + temp_full_file_name = os.path.join( self._get_dest_dir(rpd_file.file_type), - rpd_file.name) + temp_name) rpd_file.temp_full_file_name = temp_full_file_name dest = gio.File(path=temp_full_file_name) @@ -152,9 +171,26 @@ class CopyFiles(multiprocessing.Process): # succeeded or not. It's neccessary to keep the user informed. self.total_downloaded += rpd_file.size + # copy THM (video thumbnail file) if there is one + if copy_succeeded and rpd_file.thm_full_name: + source = gio.File(path=rpd_file.thm_full_name) + # reuse video's file name + temp_thm_full_name = temp_full_file_name + '__rpd__thm' + dest = gio.File(path=temp_thm_full_name) + try: + source.copy(dest, self.thm_progress_callback, cancellable=self.cancel_copy) + rpd_file.temp_thm_full_name = temp_thm_full_name + logger.debug("Copied video THM file %s", rpd_file.temp_thm_full_name) + except gio.Error, inst: + logger.error("Failed to download video THM file: %s", rpd_file.thm_full_name) + else: + temp_thm_full_name = None + + if copy_succeeded and rpd_file.generate_thumbnail: thumbnail, thumbnail_icon = self.thumbnail_maker.get_thumbnail( temp_full_file_name, + temp_thm_full_name, rpd_file.file_type, (160, 120), (100,100)) else: @@ -163,10 +199,19 @@ class CopyFiles(multiprocessing.Process): if rpd_file.metadata is not None: rpd_file.metadata = None - - self.results_pipe.send((rpdmp.CONN_PARTIAL, (rpdmp.MSG_FILE, - (copy_succeeded, rpd_file, i + 1, temp_full_file_name, - thumbnail_icon, thumbnail)))) + + + download_count = i + 1 + if self.modify_files_during_download and copy_succeeded: + copy_finished = download_count == self.no_files + + self.modify_pipe.send((rpd_file, download_count, temp_full_file_name, + thumbnail_icon, thumbnail, copy_finished)) + else: + self.results_pipe.send((rpdmp.CONN_PARTIAL, (rpdmp.MSG_FILE, + (copy_succeeded, rpd_file, download_count, + temp_full_file_name, + thumbnail_icon, thumbnail)))) self.results_pipe.send((rpdmp.CONN_COMPLETE, None)) diff --git a/rapid/filemodify.py b/rapid/filemodify.py new file mode 100644 index 0000000..3f4f2be --- /dev/null +++ b/rapid/filemodify.py @@ -0,0 +1,138 @@ +#!/usr/bin/python +# -*- coding: latin1 -*- + +### Copyright (C) 2011 Damon Lynch + +### This program is free software; you can redistribute it and/or modify +### it under the terms of the GNU General Public License as published by +### the Free Software Foundation; either version 2 of the License, or +### (at your option) any later version. + +### This program is distributed in the hope that it will be useful, +### but WITHOUT ANY WARRANTY; without even the implied warranty of +### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +### GNU General Public License for more details. + +### You should have received a copy of the GNU General Public License +### along with this program; if not, write to the Free Software +### Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +import os.path, fractions +import subprocess +import multiprocessing +import logging +logger = multiprocessing.get_logger() + +import rpdmultiprocessing as rpdmp +import rpdfile +import metadataxmp as mxmp +import subfolderfile + +WRITE_XMP_INPLACE = rpdfile.NON_RAW_IMAGE_EXTENSIONS + ['dng'] + +def lossless_rotate(jpeg): + """using exiftran, performs a lossless, inplace translation of a jpeg, preserving time stamps""" + try: + logger.debug("Auto rotating %s", jpeg) + proc = subprocess.Popen(['exiftran', '-a', '-i', '-p', jpeg], stdout=subprocess.PIPE) + v = proc.communicate()[0].strip() + except OSError: + v = None + return v + +class FileModify(multiprocessing.Process): + def __init__(self, auto_rotate_jpeg, focal_length, results_pipe, terminate_queue, + run_event): + multiprocessing.Process.__init__(self) + self.results_pipe = results_pipe + self.terminate_queue = terminate_queue + self.run_event = run_event + + self.auto_rotate_jpeg = auto_rotate_jpeg + self.focal_length = focal_length + + def check_termination_request(self): + """ + Check to see this process has not been requested to immediately terminate + """ + if not self.terminate_queue.empty(): + x = self.terminate_queue.get() + # terminate immediately + return True + return False + + def create_rational(self, value): + return '%s/%s' % (value.numerator, value.denominator) + + def run(self): + + download_count = 0 + copy_finished = False + while not copy_finished: + logger.debug("Finished %s. Getting next task.", download_count) + + rpd_file, download_count, temp_full_file_name, thumbnail_icon, thumbnail, copy_finished = self.results_pipe.recv() + if rpd_file is None: + # this is a termination signal + logger.info("Terminating file modify via pipe") + return None + # pause if instructed by the caller + self.run_event.wait() + + if self.check_termination_request(): + return None + + if self.auto_rotate_jpeg and rpd_file.file_type == rpdfile.FILE_TYPE_PHOTO: + if rpd_file.extension in rpdfile.JPEG_EXTENSIONS: + lossless_rotate(rpd_file.temp_full_file_name) + + xmp_sidecar = None + # check to see if focal length and aperture data should be manipulated + if self.focal_length is not None and rpd_file.file_type == rpdfile.FILE_TYPE_PHOTO: + if subfolderfile.load_metadata(rpd_file, temp_file=True): + a = rpd_file.metadata.aperture() + if a == '0.0': + logger.info("Adjusting focal length and aperture for %s (%s)", rpd_file.temp_full_file_name, rpd_file.name) + + new_focal_length = fractions.Fraction(self.focal_length,1) + new_aperture = fractions.Fraction(8,1) + if rpd_file.extension in WRITE_XMP_INPLACE: + try: + rpd_file.metadata["Exif.Photo.FocalLength"] = new_focal_length + rpd_file.metadata["Exif.Photo.FNumber"] = new_aperture + rpd_file.metadata.write(preserve_timestamps=True) + logger.debug("Wrote new focal length and aperture to %s (%s)", rpd_file.temp_full_file_name, rpd_file.name) + except: + logger.error("failed to write new focal length and aperture to %s (%s)!", rpd_file.temp_full_file_name, rpd_file.name) + else: + # write to xmp sidecar + xmp_sidecar = mxmp.XmpMetadataSidecar(rpd_file.temp_full_file_name) + xmp_sidecar.set_exif_value('FocalLength', self.create_rational(new_focal_length)) + xmp_sidecar.set_exif_value('FNumber', self.create_rational(new_aperture)) + # store values in rpd_file, so they can be used in the subfolderfile process + rpd_file.new_focal_length = new_focal_length + rpd_file.new_aperture = new_aperture + + if False: + xmp_sidecar.set_contact_url('http://www.website.net') + xmp_sidecar.set_contact_email('user@email.com') + + if xmp_sidecar is not None: + # need to write out xmp sidecar + o = xmp_sidecar.write_xmp_sidecar() + logger.debug("Wrote XMP sidecar file") + logger.debug("exiv2 output: %s", o) + rpd_file.temp_xmp_full_name = rpd_file.temp_full_file_name + '.xmp' + + + copy_succeeded = True + rpd_file.metadata = None #purge metadata, as it cannot be pickled + + self.results_pipe.send((rpdmp.CONN_PARTIAL, + (copy_succeeded, rpd_file, download_count, + temp_full_file_name, + thumbnail_icon, thumbnail))) + + self.results_pipe.send((rpdmp.CONN_COMPLETE, None)) + + diff --git a/rapid/generatename.py b/rapid/generatename.py index 1c95478..99d7287 100644 --- a/rapid/generatename.py +++ b/rapid/generatename.py @@ -112,6 +112,39 @@ class PhotoName: logger.error("Both file modification time and metadata date & time are invalid for file %s", self.rpd_file.full_file_name) return '' + def _get_thm_extension(self): + """ + Generates THM extension with correct capitalization, if needed + """ + if self.rpd_file.thm_full_name: + thm_extension = os.path.splitext(self.rpd_file.thm_full_name)[1] + if self.L2 == UPPERCASE: + thm_extension = thm_extension.upper() + elif self.L2 == LOWERCASE: + thm_extension = thm_extension.lower() + self.rpd_file.thm_extension = thm_extension + else: + self.rpd_file.thm_extension = None + + def _get_xmp_extension(self, extension): + """ + Generates XMP extension with correct capitalization, if needed. + """ + if self.rpd_file.temp_xmp_full_name: + if self.L2 == UPPERCASE: + self.rpd_file.xmp_extension = '.XMP' + elif self.L2 == LOWERCASE: + self.rpd_file.xmp_extension = '.xmp' + else: + # mimic capitalization of extension + if extension.isupper(): + self.rpd_file.xmp_extension = '.XMP' + else: + self.rpd_file.xmp_extension = '.xmp' + else: + self.rpd_file.xmp_extension = None + + def _get_filename_component(self): """ Returns portion of new file / subfolder name based on the file name @@ -121,9 +154,13 @@ class PhotoName: if self.L1 == NAME_EXTENSION: filename = self.rpd_file.name + self._get_thm_extension() + self._get_xmp_extension(extension) elif self.L1 == NAME: filename = name elif self.L1 == EXTENSION: + self._get_thm_extension() + self._get_xmp_extension(extension) if extension: if not self.strip_initial_period_from_extension: # keep the period / dot of the extension, so the user does not @@ -196,7 +233,10 @@ class PhotoName: padding = LIST_SHUTTER_COUNT_L2.index(self.L2) + 3 formatter = '%0' + str(padding) + "i" v = formatter % v - + elif self.L1 == FILE_NUMBER: + v = self.rpd_file.metadata.file_number() + if v and self.L2 == FILE_NUMBER_FOLDER: + v = v[:3] elif self.L1 == OWNER_NAME: v = self.rpd_file.metadata.owner_name() elif self.L1 == ARTIST: diff --git a/rapid/generatenameconfig.py b/rapid/generatenameconfig.py index 4d1f75c..0fbeb38 100644 --- a/rapid/generatenameconfig.py +++ b/rapid/generatenameconfig.py @@ -31,7 +31,7 @@ ORDER_KEY = "__order__" # is to have them put into the translation template. If you change the values below # then you MUST change the value in class i18TranslateMeThanks as well!! -# *** Level 0 +# *** Level 0, i.e. first column of values presented to user DATE_TIME = 'Date time' TEXT = 'Text' FILENAME = 'Filename' @@ -41,7 +41,7 @@ JOB_CODE = 'Job code' SEPARATOR = os.sep -# *** Level 1 +# *** Level 1, i.e. second column of values presented to user # Date time IMAGE_DATE = 'Image date' @@ -68,6 +68,9 @@ SHORT_CAMERA_MODEL = 'Short camera model' SHORT_CAMERA_MODEL_HYPHEN = 'Hyphenated short camera model' SERIAL_NUMBER = 'Serial number' SHUTTER_COUNT = 'Shutter count' +#Currently the only file number is Exif.CanonFi.FileNumber, +#which is in the format xxx-yyyy, where xxx is the folder and yyyy the image +FILE_NUMBER = 'File number' OWNER_NAME = 'Owner name' COPYRIGHT = 'Copyright' ARTIST = 'Artist' @@ -84,12 +87,11 @@ DOWNLOAD_SEQ_NUMBER = 'Downloads today' SESSION_SEQ_NUMBER = 'Session number' SUBFOLDER_SEQ_NUMBER = 'Subfolder number' STORED_SEQ_NUMBER = 'Stored number' - SEQUENCE_LETTER = 'Sequence letter' -# *** Level 2 +# *** Level 2, i.e. third and final column of values presented to user # Image number IMAGE_NUMBER_ALL = 'All digits' @@ -113,6 +115,9 @@ SEQUENCE_NUMBER_5 = "Five digits" SEQUENCE_NUMBER_6 = "Six digits" SEQUENCE_NUMBER_7 = "Seven digits" +#File number +FILE_NUMBER_FOLDER = "Folder only" +FILE_NUMBER_ALL = "Folder and file" # Now, define dictionaries and lists of valid combinations of preferences. @@ -184,6 +189,12 @@ class i18TranslateMeThanks: _('Serial number') # Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata _('Shutter count') + #File number currently refers to the Exif value Exif.Canon.FileNumber + _('File number') + #Only the folder component of the Exif.Canon.FileNumber value + _('Folder only') + #The folder and file component of the Exif.Canon.FileNumber value + _('Folder and file') # Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata _('Owner name') _('Codec') @@ -310,8 +321,12 @@ LIST_SHUTTER_COUNT_L2 = [ SEQUENCE_NUMBER_3, SEQUENCE_NUMBER_4, SEQUENCE_NUMBER_5, - SEQUENCE_NUMBER_6, + SEQUENCE_NUMBER_6, ] +FILE_NUMBER_L2 = [ + FILE_NUMBER_FOLDER, + FILE_NUMBER_ALL + ] # Level 1 LIST_DATE_TIME_L1 = [IMAGE_DATE, TODAY, YESTERDAY, DOWNLOAD_TIME] @@ -367,7 +382,8 @@ LIST_METADATA_L1 = [APERTURE, ISO, EXPOSURE_TIME, FOCAL_LENGTH, SHORT_CAMERA_MODEL, SHORT_CAMERA_MODEL_HYPHEN, SERIAL_NUMBER, - SHUTTER_COUNT, + SHUTTER_COUNT, + FILE_NUMBER, OWNER_NAME, ARTIST, COPYRIGHT] @@ -384,7 +400,8 @@ DICT_METADATA_L1 = { SHORT_CAMERA_MODEL: LIST_CASE_L2, SHORT_CAMERA_MODEL_HYPHEN: LIST_CASE_L2, SERIAL_NUMBER: None, - SHUTTER_COUNT: LIST_SHUTTER_COUNT_L2, + SHUTTER_COUNT: LIST_SHUTTER_COUNT_L2, + FILE_NUMBER: FILE_NUMBER_L2, OWNER_NAME: LIST_CASE_L2, ARTIST: LIST_CASE_L2, COPYRIGHT: LIST_CASE_L2, diff --git a/rapid/glade3/about.ui b/rapid/glade3/about.ui index 3e59698..7e10e37 100644 --- a/rapid/glade3/about.ui +++ b/rapid/glade3/about.ui @@ -55,6 +55,7 @@ Aron Xu <happyaron.xu@gmail.com> True False + vertical 2 diff --git a/rapid/glade3/prefs.ui b/rapid/glade3/prefs.ui index 0a13978..2e0e53c 100644 --- a/rapid/glade3/prefs.ui +++ b/rapid/glade3/prefs.ui @@ -1,7 +1,7 @@ - + - + 23 1 @@ -13,7 +13,6 @@ 10 - False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 5 Preferences: Rapid Photo Downloader @@ -22,69 +21,21 @@ 500 rapid-photo-downloader.svg dialog - - + + True - False 2 - - - True - False - end - - - gtk-help - True - True - True - False - True - - - False - False - 0 - True - - - - - gtk-close - True - True - True - False - True - - - False - False - 1 - - - - - False - True - end - 0 - - True - False 2 True True queue - automatic - automatic in @@ -93,13 +44,11 @@ True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False - + - True - True 5 0 @@ -112,33 +61,27 @@ True - False 12 True - False True - False 6 True - False gtk-directory False - True 0 True - False <span weight="bold" size="x-large">Photo Download Folders</span> True @@ -150,19 +93,15 @@ - True - True 0 True - False False - True 1 @@ -176,29 +115,24 @@ True - False 12 True - False False - True 0 True - False 7 3 True - False 0 <i>Example: /home/user/Pictures</i> True @@ -214,7 +148,6 @@ True - False 0 <b>Download Subfolders</b> True @@ -229,7 +162,6 @@ True - False 0 Download folder: @@ -245,7 +177,6 @@ True - False 0 12 Choose the download folder. Subfolders for the downloaded photos will be automatically created in this folder using the structure specified below. @@ -263,7 +194,6 @@ True - False 0 <b>Download Folder</b> True @@ -276,7 +206,6 @@ True - False 0 0 True @@ -293,7 +222,6 @@ True - False @@ -326,26 +254,20 @@ - True - True 1 True - False False - True 2 - True - True 12 1 @@ -358,7 +280,6 @@ True - False Photo Folders @@ -368,57 +289,46 @@ True - False 12 True - False True - False 6 True - False gtk-convert False - True 0 True - False <span weight="bold" size="x-large">Photo Rename</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -432,34 +342,28 @@ True - False 12 True - False False - True 0 True - False 12 - False 0 <b>Photo Rename</b> True False - True 0 @@ -467,19 +371,15 @@ True True - automatic - automatic True True - False queue none True - False @@ -489,21 +389,17 @@ - True - True 1 True - False 3 3 True - False @@ -515,7 +411,6 @@ True - False @@ -528,7 +423,6 @@ True - False 0 0 translators please ignore this @@ -545,7 +439,6 @@ True - False 0 translators please ignore this @@ -560,7 +453,6 @@ True - False 0 0 <i>New:</i> @@ -578,7 +470,6 @@ True - False 0 <i>Original:</i> True @@ -595,7 +486,6 @@ True - False 0 <b>Example</b> True @@ -614,26 +504,20 @@ - True - True 1 True - False False - True 2 - True - True 12 1 @@ -647,7 +531,6 @@ True - False Photo Rename @@ -658,33 +541,27 @@ True - False 12 True - False True - False 6 True - False gtk-directory False - True 0 True - False <span weight="bold" size="x-large">Video Download Folders</span> True @@ -696,19 +573,15 @@ - True - True 0 True - False False - True 1 @@ -721,20 +594,16 @@ - False - False 0 12 10 - Sorry, video downloading functionality disabled. To download videos, please install the <i>hachoir metadata</i> and <i>kaa metadata</i> packages for python. + Sorry, video downloading functionality disabled. To download videos, please install either the <i>hachoir metadata</i> and <i>kaa metadata</i> packages for python, or <i>exiftool</i>. True True - True - True 0 @@ -748,29 +617,24 @@ True - False 12 True - False False - True 0 True - False 7 3 True - False 0 Download folder: @@ -786,7 +650,6 @@ True - False 0 12 Choose the download folder. Subfolders for the downloaded videos will be automatically created in this folder using the structure specified below. @@ -804,7 +667,6 @@ True - False 0 <b>Download Folder</b> True @@ -817,7 +679,6 @@ True - False 0 <b>Download Subfolders</b> True @@ -832,7 +693,6 @@ True - False 0 <i>Example: /home/user/Pictures</i> True @@ -848,7 +708,6 @@ True - False 0 0 True @@ -865,7 +724,6 @@ True - False @@ -898,26 +756,20 @@ - True - True 1 True - False False - True 2 - True - True 12 2 @@ -930,7 +782,6 @@ True - False Video Folders @@ -941,57 +792,46 @@ True - False 12 True - False True - False 6 True - False gtk-convert False - True 0 True - False <span weight="bold" size="x-large">Video Rename</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -1005,29 +845,24 @@ True - False 12 True - False False - True 0 True - False 12 - False 0 - Sorry, video downloading functionality disabled. To download videos, please install the <i>hachoir metadata</i> and <i>kaa metadata</i> packages for python. + Sorry, video downloading functionality disabled. To download videos, please install either the <i>hachoir metadata</i> and <i>kaa metadata</i> packages for python, or <i>exiftool</i>. True True @@ -1041,19 +876,15 @@ True True - automatic - automatic True True - False queue none True - False @@ -1063,21 +894,17 @@ - True - True 1 True - False 3 3 True - False @@ -1089,7 +916,6 @@ True - False @@ -1102,7 +928,6 @@ True - False 0 0 translators please ignore this @@ -1119,7 +944,6 @@ True - False 0 translators please ignore this @@ -1134,7 +958,6 @@ True - False 0 0 <i>New:</i> @@ -1152,7 +975,6 @@ True - False 0 <i>Original:</i> True @@ -1169,7 +991,6 @@ True - False 0 <b>Example</b> True @@ -1188,26 +1009,20 @@ - True - True 1 True - False False - True 2 - True - True 12 1 @@ -1220,7 +1035,6 @@ True - False Video Rename @@ -1231,57 +1045,46 @@ True - False 12 True - False True - False 6 True - False input-keyboard False - True 0 True - False <span weight="bold" size="x-large">Rename Options</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -1295,11 +1098,9 @@ True - False True - False 0 12 <b>Sequence Numbers</b> @@ -1307,140 +1108,112 @@ False - True 0 True - False 12 True - False 12 False - True 0 True - False 12 True - False 0 Specify the time in 24 hour format at which the <i>Downloads today</i> sequence number should be reset. True True - True - True 0 True - False True - False 6 True - False 0 Day start: - True - True 0 True - False 0 Downloads today: - True - True 1 True - False 0 Stored number: - True - True 2 False - True 0 True - False 6 False - True 1 True - False 6 True - False True True 2 - + 2 1 True - False - False - True - True hour_adjustment True - + False @@ -1451,7 +1224,6 @@ True - False : @@ -1465,17 +1237,13 @@ True True 2 - + 2 1 True - False - False - True - True minute_adjustment True - + False @@ -1486,20 +1254,17 @@ True - False 0 hh:mm False - True 3 False - True 0 @@ -1512,14 +1277,11 @@ False - True 2 - True - True 1 @@ -1529,38 +1291,30 @@ True True False - False True - + - True - True 2 - True - True 1 True - False False - True 2 False - True 12 1 @@ -1568,7 +1322,6 @@ True - False 0 12 <b>Compatibility with Other Operating Systems</b> @@ -1576,37 +1329,31 @@ False - True 3 True - False 12 True - False 12 False - True 0 True - False 2 2 True - False 0 Specify whether photo, video and folder names should have any characters removed that are not allowed by other operating systems. True @@ -1621,10 +1368,9 @@ True True False - False True True - + 2 @@ -1634,34 +1380,27 @@ - True - True 1 True - False False - True 2 False - True 12 4 - True - True 12 1 @@ -1674,7 +1413,6 @@ True - False Rename Options @@ -1685,57 +1423,46 @@ True - False 12 True - False True - False 6 True - False rapid-photo-downloader-jobcode False - True 0 True - False <span weight="bold" size="x-large">Job Codes</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -1749,14 +1476,11 @@ True - False True - False - False 0 12 <b>Job Codes</b> @@ -1764,23 +1488,19 @@ False - True 0 True - False 12 True - False False - True 0 @@ -1788,8 +1508,6 @@ True True - automatic - automatic in @@ -1803,18 +1521,15 @@ False - True 1 True - False True - False 12 start @@ -1823,9 +1538,8 @@ True True True - False True - + False @@ -1839,9 +1553,8 @@ True True True - False True - + False @@ -1855,9 +1568,8 @@ True True True - False True - + False @@ -1867,22 +1579,17 @@ - True - True 0 False - True 2 - True - True 1 @@ -1891,15 +1598,11 @@ - True - True 0 - True - True 1 @@ -1911,7 +1614,6 @@ True - False Job Codes @@ -1922,57 +1624,46 @@ True - False 12 True - False True - False 6 True - False - media-flash + drive-removable-media False - True 0 True - False <span weight="bold" size="x-large">Devices</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -1986,11 +1677,9 @@ True - False 12 - False 0 12 Devices @@ -2000,14 +1689,12 @@ False - True 0 True - False 0 12 Devices are from where to download photos and videos, such as cameras, memory cards or Portable Storage Devices. @@ -2019,31 +1706,25 @@ You can download from multiple devices simultaneously, or you can specify a loca True - True - True 1 True - False True - False 3 False - True 0 True - False 3 2 3 @@ -2053,9 +1734,8 @@ You can download from multiple devices simultaneously, or you can specify a loca True True False - False True - + 1 @@ -2071,9 +1751,8 @@ You can download from multiple devices simultaneously, or you can specify a loca True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - False True - + 2 @@ -2082,7 +1761,6 @@ You can download from multiple devices simultaneously, or you can specify a loca True - False 0 6 If you enable automatic detection of Portable Storage Devices, the entire device will be scanned. On large devices, this could take some time. @@ -2105,44 +1783,36 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 1 True - False False - True 2 False - True 2 True - False 12 True - False 2 2 True - False 0 12 Location: @@ -2157,7 +1827,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 12 @@ -2174,8 +1843,6 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 0 @@ -2185,25 +1852,21 @@ When this option is enabled, and a potential device is detected, you will be pro True - False False - True 2 False - True 3 False - True 12 1 @@ -2216,7 +1879,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False Devices @@ -2227,69 +1889,57 @@ When this option is enabled, and a potential device is detected, you will be pro True - False True - False 6 True - False gtk-preferences False - True 0 True - False <span weight="bold" size="x-large">Device Options</span> True False - True 1 False - True 0 True - False False - True 1 True - False 12 True - False 12 True - False 0 12 Remembered Paths @@ -2299,14 +1949,12 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 0 True - False 0 12 Remembered paths are those associated with devices that you have chosen to always scan or ignore when automatic detection of Portable Storage Devices is enabled. @@ -2314,23 +1962,19 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 1 True - False 12 True - False False - True 0 @@ -2338,8 +1982,6 @@ When this option is enabled, and a potential device is detected, you will be pro True True - automatic - automatic 250 @@ -2351,18 +1993,15 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 1 True - False True - False 12 start @@ -2371,9 +2010,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True True - False True - + False @@ -2387,9 +2025,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True True - False True - + False @@ -2399,29 +2036,22 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 0 False - True 2 - True - True 2 - True - True 12 0 @@ -2429,12 +2059,10 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 12 True - False 0 12 Ignored Paths @@ -2444,14 +2072,12 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 0 True - False 0 12 Specify the ending portion of any paths you want ignored when scanning devices for photos or videos. Any path ending with the values below will not be scanned. @@ -2459,23 +2085,19 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 1 True - False 12 True - False False - True 0 @@ -2483,8 +2105,6 @@ When this option is enabled, and a potential device is detected, you will be pro True True - automatic - automatic 250 @@ -2496,18 +2116,15 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 1 True - False True - False 12 start @@ -2516,9 +2133,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True True - False True - + False @@ -2532,9 +2148,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True True - False True - + False @@ -2548,9 +2163,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True True - False True - + False @@ -2560,43 +2174,35 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 0 False - True 2 - True - True 2 True - False Use _python-style regular expressions True True False - False True True - + False - True 12 0 @@ -2604,21 +2210,16 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 3 - True - True 1 - True - True 2 @@ -2630,7 +2231,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False Device Options @@ -2641,56 +2241,45 @@ When this option is enabled, and a potential device is detected, you will be pro True - False True - False True - False 6 True - False drive-removable-media False - True 0 True - False <span weight="bold" size="x-large">Backup</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -2704,10 +2293,8 @@ When this option is enabled, and a potential device is detected, you will be pro True - False - False 0 12 <b>Backup</b> @@ -2715,36 +2302,30 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 0 True - False 12 True - False False - True 0 True - False 10 4 True - False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 12 @@ -2766,9 +2347,8 @@ When this option is enabled, and a potential device is detected, you will be pro True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - False True - + 1 @@ -2781,7 +2361,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 12 You can have your photos and videos backed up to multiple locations as they are downloaded, e.g. external hard drives. @@ -2798,10 +2377,9 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False True True - + 4 @@ -2813,7 +2391,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 6 Specify the folder in which backups are stored on the device. @@ -2832,7 +2409,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 Photo backup location: @@ -2848,7 +2424,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 Photo backup folder name: @@ -2865,7 +2440,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 0 6 @@ -2883,7 +2457,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 0 6 @@ -2902,12 +2475,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - False - False - True - True - + + 3 @@ -2921,7 +2490,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 Video backup folder name: @@ -2940,12 +2508,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - False - False - True - True - + + 3 @@ -2959,7 +2523,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 Video backup location: @@ -3016,33 +2579,26 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 1 True - False False - True 2 False - True 1 - True - True 12 1 @@ -3055,7 +2611,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False Backup @@ -3066,56 +2621,45 @@ When this option is enabled, and a potential device is detected, you will be pro True - False True - False True - False 6 True - False gtk-execute False - True 0 True - False <span weight="bold" size="x-large">Miscellaneous</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -3129,11 +2673,9 @@ When this option is enabled, and a potential device is detected, you will be pro True - False True - False 0 12 <b>Program Automation</b> @@ -3141,30 +2683,24 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 0 True - False 6 - - False - + False - True 0 True - False - 7 + 6 3 @@ -3173,9 +2709,9 @@ When this option is enabled, and a potential device is detected, you will be pro True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - False + 0 True - + 3 @@ -3190,9 +2726,9 @@ When this option is enabled, and a potential device is detected, you will be pro True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - False + 0 True - + 3 @@ -3205,9 +2741,9 @@ When this option is enabled, and a potential device is detected, you will be pro True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - False + 0 True - + 3 @@ -3221,9 +2757,9 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False + 0 True - + 3 @@ -3232,36 +2768,36 @@ When this option is enabled, and a potential device is detected, you will be pro - - Delete photos and videos from device upon download completion + + Exit program even if download had warnings or errors True True False - False + 0 True - + - 3 - 5 - 6 + 1 + 2 + 4 + 5 - - Exit program even if download had warnings or errors + + Automatically rotate JPEG images True True False - False + 0 True - + - 1 - 2 - 4 - 5 + 3 + 5 + 6 @@ -3270,19 +2806,8 @@ When this option is enabled, and a potential device is detected, you will be pro - - - - - - - - - - True - True 24 1 @@ -3290,18 +2815,15 @@ When this option is enabled, and a potential device is detected, you will be pro True - False False - True 2 False - True 12 1 @@ -3309,7 +2831,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 12 Performance @@ -3319,29 +2840,23 @@ When this option is enabled, and a potential device is detected, you will be pro False - True 2 True - False 6 - - False - + False - True 0 True - False 3 @@ -3349,9 +2864,8 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False True - + @@ -3362,8 +2876,6 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 24 1 @@ -3371,26 +2883,21 @@ When this option is enabled, and a potential device is detected, you will be pro True - False False - True 2 False - True 12 3 - True - True 12 1 @@ -3403,7 +2910,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Miscellaneous @@ -3415,57 +2921,46 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 12 True - False True - False 6 True - False gtk-dialog-error False - True 0 True - False <span weight="bold" size="x-large">Error Handling</span> True False - True 1 - True - True 0 True - False False - True 1 @@ -3479,29 +2974,24 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 12 True - False False - True 0 True - False 14 2 True - False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK @@ -3515,7 +3005,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 <b>Photo and Video Name Conflicts</b> True @@ -3531,11 +3020,10 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False True True True - + 1 @@ -3551,7 +3039,6 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False True True add_identifier_radiobutton @@ -3567,7 +3054,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 12 When a photo or video of the same name has already been downloaded, choose whether to skip downloading the file, or to add a unique indentifier. @@ -3584,7 +3070,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False 0 12 When backing up, choose whether to overwrite a file on the backup device that has the same name, or skip backing it up. @@ -3604,10 +3089,9 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False True backup_duplicate_skip_radiobutton - + 1 @@ -3622,10 +3106,9 @@ When this option is enabled, and a potential device is detected, you will be pro True True False - False True True - + 1 @@ -3693,26 +3176,21 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 1 True - False False - True 2 False - True 12 1 @@ -3725,7 +3203,6 @@ When this option is enabled, and a potential device is detected, you will be pro True - False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Error Handling @@ -3736,16 +3213,12 @@ When this option is enabled, and a potential device is detected, you will be pro - True - True 6 1 - True - True 5 1 @@ -3753,6 +3226,46 @@ When this option is enabled, and a potential device is detected, you will be pro + + + True + end + + + gtk-help + True + True + True + True + + + False + False + 0 + True + + + + + gtk-close + True + True + True + True + + + False + False + 1 + + + + + False + end + 0 + + diff --git a/rapid/glade3/rapid.ui b/rapid/glade3/rapid.ui index 1e49e4e..3ec67f4 100644 --- a/rapid/glade3/rapid.ui +++ b/rapid/glade3/rapid.ui @@ -1,73 +1,66 @@ - - About... + About... gtk-about - Check All + Check All - Check All Photos + Check All Photos - Check All Videos + Check All Videos - Download + Download system-run False - Get Help Online... + Get Help Online... gtk-help - Help + Help - Next File Next file - gtk-go-forward - True - Preferences + Preferences - Previous File Previous file - gtk-go-back - True - Quit + Quit gtk-quit - Refresh + Refresh gtk-refresh - Report a Problem... + Report a Problem... gtk-dialog-warning @@ -80,11 +73,11 @@ - Translate this Application... + Translate this Application... - Uncheck All + Uncheck All @@ -102,7 +95,6 @@ True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - True True @@ -113,7 +105,6 @@ False - True Download / Pause @@ -151,7 +142,6 @@ True False quit_action - False True True @@ -171,7 +161,6 @@ False - True True @@ -244,7 +233,6 @@ False - True gtk-zoom-in @@ -253,8 +241,8 @@ False True True - + @@ -304,6 +292,8 @@ True False prev_image_action + False + Previous File @@ -312,6 +302,8 @@ True False next_image_action + False + Next File @@ -329,7 +321,6 @@ False - True True @@ -352,7 +343,6 @@ True False donate_action - False _Make a Donation... True @@ -362,7 +352,6 @@ True False translate_action - False _Translate this Application... True @@ -379,7 +368,6 @@ True False about_action - False True True @@ -395,6 +383,69 @@ 0 + + + True + False + True + + + True + False + vertical + False + + + True + True + 0 + + + + + True + False + vertical + False + + + True + True + 1 + + + + + True + False + vertical + False + + + True + True + 2 + + + + + False + vertical + + + False + False + end + 3 + + + + + False + True + 1 + + True @@ -402,21 +453,33 @@ 1 True - + True - True - never - automatic + False - + True False - queue - none + never + etched-out - + + True + False + queue + none + + + + + + True + True + 6 + 0 + @@ -442,8 +505,6 @@ True True - automatic - automatic @@ -581,7 +642,6 @@ True True next_image_action - False none False @@ -602,7 +662,6 @@ True True prev_image_action - False none False @@ -740,7 +799,7 @@ True True - 1 + 2 @@ -751,7 +810,6 @@ True False - edge _Help @@ -797,7 +855,7 @@ False True 6 - 2 + 3 @@ -832,7 +890,6 @@ True False 2 - False True @@ -984,7 +1041,7 @@ False False end - 3 + 4 diff --git a/rapid/metadataexiftool.py b/rapid/metadataexiftool.py new file mode 100755 index 0000000..d6b61fc --- /dev/null +++ b/rapid/metadataexiftool.py @@ -0,0 +1,225 @@ +#!/usr/bin/python +# -*- coding: latin1 -*- + +### Copyright (C) 2011 Damon Lynch + +### This program is free software; you can redistribute it and/or modify +### it under the terms of the GNU General Public License as published by +### the Free Software Foundation; either version 2 of the License, or +### (at your option) any later version. + +### This program is distributed in the hope that it will be useful, +### but WITHOUT ANY WARRANTY; without even the implied warranty of +### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +### GNU General Public License for more details. + +### You should have received a copy of the GNU General Public License +### along with this program; if not, write to the Free Software +### Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +import subprocess +import json +import datetime, time +import string + +import multiprocessing +import logging +logger = multiprocessing.get_logger() + +def version_info(): + """returns the version of exiftool being used""" + try: + # unfortunately subprocess.check_output does not exist on python 2.6 + proc = subprocess.Popen(['exiftool', '-ver'], stdout=subprocess.PIPE) + v = proc.communicate()[0].strip() + except OSError: + v = None + return v + +EXIFTOOL_VERSION = version_info() + +class ExifToolMetaData: + """ + Class to use when a python based metadata parser fails to correctly load + necessary metadata. Calls exiftool as a subprocess. It is therefore slow, + but in contrast to exiv2 or kaa metadata, exiftool somtimes gives better + output. + """ + def __init__(self, filename): + self.filename = filename + self.metadata = None + self.metadata_string_format = None + self.exiftool_error = "Error encountered using exiftool with file %s" + self.exiftool_output = "Unexpected output from exiftool with file %s" + + def _get(self, key, missing): + + if key == "VideoStreamType" or "FileNumber": + # special case: want exiftool's string formatting + if self.metadata_string_format is None: + try: + proc = subprocess.Popen(['exiftool', '-j', self.filename], stdout=subprocess.PIPE) + s = proc.communicate()[0] + except: + logger.error(self.exiftool_error, self.filename) + return missing + try: + self.metadata_string_format = json.loads(s) + except: + logger.error(self.exiftool_output, self.filename) + return missing + + try: + v = self.metadata_string_format[0][key] + except: + return missing + return v + + elif self.metadata is None: + # note: exiftool's string formatting is OFF (-n switch) + try: + proc = subprocess.Popen(['exiftool', '-j', '-n', self.filename], stdout=subprocess.PIPE) + s = proc.communicate()[0] + except: + logger.error(self.exiftool_error, self.filename) + return missing + try: + self.metadata = json.loads(s) + except: + logger.error(self.exiftool_output, self.filename) + return missing + + try: + v = self.metadata[0][key] + except: + return missing + return v + + + def date_time(self, missing=''): + """ + Returns in python datetime format the date and time the image was + recorded. + + Trys to get value from key "DateTimeOriginal" + If that fails, tries "CreateDate" + + Returns missing either metadata value is not present. + """ + d = self._get('DateTimeOriginal', None) + if d is None: + d = self._get('CreateDate', None) + if d is None: + d = self._get('FileModifyDate', None) + if d is not None: + try: + # returned value may or may not have a time offset + # strip it if need be + dt = d[:19] + dt = datetime.datetime.strptime(dt, "%Y:%m:%d %H:%M:%S") + except: + logger.error("Error reading date metadata with file %s", self.filename) + return missing + + return dt + else: + return missing + + def time_stamp(self, missing=''): + """ + Returns a float value representing the time stamp, if it exists + """ + dt = self.date_time(missing=None) + if dt: + # convert it to a time stamp (not optimal, but better than nothing!) + v = time.mktime(dt.timetuple()) + else: + v = missing + return v + + def file_number(self, missing=''): + v = self._get("FileNumber", None) + if v is not None: + return str(v) + else: + return missing + + def width(self, missing=''): + v = self._get('ImageWidth', None) + if v is not None: + return str(v) + else: + return missing + + def height(self, missing=''): + v = self._get('ImageHeight', None) + if v is not None: + return str(v) + else: + return missing + + def length(self, missing=''): + """ + return the duration (length) of the video, rounded to the nearest second, in string format + """ + v = self._get("Duration", None) + if v is not None: + try: + v = float(v) + v = "%0.f" % v + except: + return missing + return v + else: + return missing + + def frames_per_second(self, stream=0, missing=''): + """ + value stream is ignored (kept for compatibilty with code calling kaa) + """ + v = self._get("FrameRate", None) + if v is None: + v = self._get("VideoFrameRate", None) + + if v is None: + return missing + try: + v = '%.0f' % v + except: + return missing + return v + + def codec(self, stream=0, missing=''): + """ + value stream is ignored (kept for compatibilty with code calling kaa) + """ + v = self._get("VideoStreamType", None) + if v is None: + v = self._get("VideoCodec", None) + if v is not None: + return v + else: + return missing + + def fourcc(self, stream=0, missing=''): + """ + value stream is ignored (kept for compatibilty with code calling kaa) + """ + return self._get("CompressorID", missing) + +if __name__ == '__main__': + import sys + + + if (len(sys.argv) != 2): + print 'Usage: ' + sys.argv[0] + ' path/to/video/containing/metadata' + sys.exit(0) + + else: + m = ExifToolMetaData(sys.argv[1]) + dt = m.date_time() + print dt + print "%sx%s" % (m.width(), m.height()) + print m.length() + print m.frames_per_second() + print m.codec() diff --git a/rapid/metadataphoto.py b/rapid/metadataphoto.py old mode 100755 new mode 100644 index 0442a86..1b36be9 --- a/rapid/metadataphoto.py +++ b/rapid/metadataphoto.py @@ -30,7 +30,7 @@ except ImportError: sys.stderr.write("You need to install pyexiv2, the python binding for exiv2, to run this program.\n" ) sys.exit(1) - +import metadataexiftool def __version_info(version): if not version: @@ -39,7 +39,7 @@ def __version_info(version): v = '' for i in version: v += '.%s' % i - return v[1:] + return v[1:] def pyexiv2_version_info(): return __version_info(pyexiv2.version_info) @@ -54,6 +54,16 @@ class MetaData(pyexiv2.metadata.ImageMetadata): """ + def __init__(self, full_file_name): + pyexiv2.metadata.ImageMetadata.__init__(self, full_file_name) + self.rpd_metadata_exiftool = None + self.rpd_full_file_name = full_file_name + + def _load_exiftool(self): + if self.rpd_metadata_exiftool is None: + self.rpd_metadata_exiftool = metadataexiftool.ExifToolMetaData(self.rpd_full_file_name) + + def aperture(self, missing=''): """ Returns in string format the floating point value of the image's aperture. @@ -211,6 +221,19 @@ class MetaData(pyexiv2.metadata.ImageMetadata): except: return missing + def file_number(self, missing=''): + """returns Exif.CanonFi.FileNumber, not to be confused with + Exif.Canon.FileNumber""" + try: + if 'Exif.CanonFi.FileNumber' in self.exif_keys: + self._load_exiftool() + return self.rpd_metadata_exiftool.file_number(missing) + else: + return missing + except: + return missing + + def owner_name(self, missing=''): """ returns camera name recorded by select Canon cameras""" try: diff --git a/rapid/metadatavideo.py b/rapid/metadatavideo.py index 7b6bc6c..5519143 100644 --- a/rapid/metadatavideo.py +++ b/rapid/metadatavideo.py @@ -17,13 +17,13 @@ ### along with this program; if not, write to the Free Software ### Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +HAVE_HACHOIR = True DOWNLOAD_VIDEO = True import os import datetime import time import subprocess -import tempfile import multiprocessing import logging @@ -33,15 +33,30 @@ import gtk import paths import rpdfile +import metadataexiftool + +from gettext import gettext as _ try: from hachoir_core.cmd_line import unicodeFilename from hachoir_parser import createParser from hachoir_metadata import extractMetadata except ImportError: - DOWNLOAD_VIDEO = False + HAVE_HACHOIR = False + +if not HAVE_HACHOIR: + v = metadataexiftool.version_info() + if v is None: + DOWNLOAD_VIDEO = False + +def file_types_to_download(): + """Returns a string with the types of file to download, to display to the user""" + if DOWNLOAD_VIDEO: + return _("photos and videos") + else: + return _("photos") -if DOWNLOAD_VIDEO: +if HAVE_HACHOIR: def version_info(): from hachoir_metadata.version import VERSION diff --git a/rapid/metadataxmp.py b/rapid/metadataxmp.py new file mode 100755 index 0000000..47321e3 --- /dev/null +++ b/rapid/metadataxmp.py @@ -0,0 +1,198 @@ +#!/usr/bin/python +# -*- coding: latin1 -*- + +### Copyright (C) 2011-12 Damon Lynch + +### This program is free software; you can redistribute it and/or modify +### it under the terms of the GNU General Public License as published by +### the Free Software Foundation; either version 2 of the License, or +### (at your option) any later version. + +### This program is distributed in the hope that it will be useful, +### but WITHOUT ANY WARRANTY; without even the implied warranty of +### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +### GNU General Public License for more details. + +### You should have received a copy of the GNU General Public License +### along with this program; if not, write to the Free Software +### Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +import subprocess + +import multiprocessing, logging +logger = multiprocessing.get_logger() + +class XmpMetadataSidecar: + + def __init__(self, filename): + self.filename = filename + self.keys = [] + + def _add_pair(self, key_value_pair): + self.keys.append(key_value_pair) + logger.debug(key_value_pair) + + def _generate_exiv2_command_line(self): + # -f option: overwrites any existing xmp file + return ['exiv2', '-f'] + self.keys + ['-exX', self.filename] + + def _generate_exiv2_contact_info(self, key, value): + return "-M set Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:%s %s" % (key, value) + + def _generate_exiv2_dc(self, key, value): + return "-M set Xmp.dc.%s %s" % (key, value) + + def _generate_exiv2_photoshop(self, key, value): + return "-M set Xmp.photoshop.%s %s" % (key, value) + + def _generate_exiv2_rights(self, key, value): + return "-M set Xmp.xmpRights.%s %s" % (key, value) + + def _generate_exiv2_iptc(self, key, value): + return "-M set Xmp.iptc.%s %s" % (key, value) + + def _generate_exiv2_exif(self, key, value): + return "-M set Xmp.exif.%s %s" % (key, value) + + def set_location(self, location): + self._add_pair(self._generate_exiv2_iptc('Location', location)) + + def set_city(self, city): + self._add_pair(self._generate_exiv2_photoshop('City', city)) + + def set_state_province(self, state): + self._add_pair(self._generate_exiv2_photoshop('State', state)) + + def set_country(self, country): + self._add_pair(self._generate_exiv2_photoshop('Country', country)) + + def set_country_code(self, country_code): + self._add_pair(self._generate_exiv2_iptc('CountryCode', country_code)) + + def set_headline(self, headline): + self._add_pair(self._generate_exiv2_photoshop('Headline', headline)) + + def set_description_writer(self, writer): + """ + Synonym: Caption writer + """ + self._add_pair(self._generate_exiv2_photoshop('CaptionWriter', writer)) + + def set_description(self, description): + """A synonym for this in some older programs is 'Caption'""" + self._add_pair(self._generate_exiv2_dc('description', description)) + + def set_subject(self, subject): + """ + You can call this more than once, to add multiple subjects + + A synonym is 'Keywords' + """ + self._add_pair(self._generate_exiv2_dc('subject', subject)) + + def set_creator(self, creator): + """ + Sets the author (creator) field. Photo Mechanic calls this 'Photographer'. + """ + self._add_pair(self._generate_exiv2_dc('creator', creator)) + + def set_creator_job_title(self, job_title): + self._add_pair(self._generate_exiv2_photoshop('AuthorsPosition', job_title)) + + def set_credit_line(self, credit_line): + self._add_pair(self._generate_exiv2_photoshop('Credit', credit_line)) + + def set_source(self, source): + """ + original owner or copyright holder of the photograph + """ + self._add_pair(self._generate_exiv2_photoshop('Source', source)) + + def set_copyright(self, copyright): + self._add_pair(self._generate_exiv2_dc('rights', copyright)) + + def set_copyright_url(self, copyright_url): + self._add_pair(self._generate_exiv2_rights('WebStatement', copyright_url)) + + def set_contact_city(self, city): + self._add_pair(self._generate_exiv2_contact_info('CiAdrCity', city)) + + def set_contact_country(self, country): + self._add_pair(self._generate_exiv2_contact_info('CiAdrCtry', country)) + + def set_contact_address(self, address): + """The contact information address part. + Comprises an optional company name and all required information + to locate the building or postbox to which mail should be sent.""" + self._add_pair(self._generate_exiv2_contact_info('CiAdrExtadr', address)) + + def set_contact_postal_code(self, postal_code): + self._add_pair(self._generate_exiv2_contact_info('CiAdrPcode', postal_code)) + + def set_contact_region(self, region): + """State/Province""" + self._add_pair(self._generate_exiv2_contact_info('CiAdrRegion', region)) + + def set_contact_email(self, email): + """Multiple email addresses can be given, separated by a comma.""" + self._add_pair(self._generate_exiv2_contact_info('CiEmailWork', email)) + + def set_contact_telephone(self, telephone): + """Multiple numbers can be given, separated by a comma.""" + self._add_pair(self._generate_exiv2_contact_info('CiTelWork', telephone)) + + def set_contact_url(self, url): + """Multiple URLs can be given, separated by a comma.""" + self._add_pair(self._generate_exiv2_contact_info('CiUrlWork', url)) + + def set_exif_value(self, key, value): + self._add_pair(self._generate_exiv2_exif(key, value)) + + def write_xmp_sidecar(self): + cmd = self._generate_exiv2_command_line() + if logger.getEffectiveLevel() == logging.DEBUG: + cmd_line = '' + for c in cmd: + cmd_line += c + ' ' + cmd_line = cmd_line.strip() + logger.debug("XMP write command: %s", cmd_line) + proc = subprocess.Popen(cmd, stdout=subprocess.PIPE) + return proc.communicate()[0].strip() + + +if __name__ == '__main__': + import sys + + + if (len(sys.argv) != 2): + print 'Usage: ' + sys.argv[0] + ' path/to/photo/containing/metadata' + + else: + x = XmpMetadataSidecar(sys.argv[1]) + x.set_description("This is image is just a sample and is nothing serious. I used to test out writing XMP files in Rapid Photo Downloader.") + x.set_description_writer("Damon Lynch wrote caption") + x.set_headline("Sample image to test XMP") + x.set_subject("Keyword 1") + x.set_subject("Keyword 2") + x.set_city("Minneapolis") + x.set_location("University of Minnesota") + x.set_state_province("Minnesota") + x.set_country("United States of America") + x.set_country_code("USA") + x.set_creator("Damon Lynch") + x.set_creator_job_title("Photographer") + x.set_credit_line("Contact Damon for permission") + x.set_source("Damon Lynch is the original photographer") + x.set_copyright("© 2011 Damon Lynch, all rights reserved.") + x.set_copyright_url("http://www.damonlynch.net/license") + x.set_contact_address("Contact house number, street, apartment") + x.set_contact_city('Contact City') + x.set_contact_region('Contact State') + x.set_contact_postal_code('Contact Post code') + x.set_contact_telephone('+1 111 111 1111') + x.set_contact_country('Contact Country') + x.set_contact_address('Address\nApartment') + x.set_contact_url('http://www.sample.net') + x.set_contact_email('name@email1.com, name@email2.com') + + x.write_xmp_sidecar() diff --git a/rapid/misc.py b/rapid/misc.py index 1e023ad..e748dc3 100644 --- a/rapid/misc.py +++ b/rapid/misc.py @@ -35,7 +35,7 @@ def run_dialog( text, secondarytext=None, parent=None, messagetype=gtk.MESSAGE_ text ) if parent: - d.set_transient_for(parent.widget.get_toplevel()) + d.set_transient_for(parent.get_toplevel()) for b,rid in extrabuttons: d.add_button(b,rid) d.vbox.set_spacing(12) diff --git a/rapid/preferencesdialog.py b/rapid/preferencesdialog.py index 1509630..bc9e0b7 100644 --- a/rapid/preferencesdialog.py +++ b/rapid/preferencesdialog.py @@ -36,6 +36,7 @@ import rpdfile import higdefaults as hd import metadataphoto import metadatavideo + import tableplusminus as tpm import utilities @@ -385,7 +386,8 @@ class VideoSubfolderPrefs(PhotoSubfolderPrefs): pref_list = pref_list) class QuestionDialog(gtk.Dialog): - def __init__(self, parent_window, title, question, post_choice_callback): + def __init__(self, parent_window, title, question, use_markup=False, + default_to_yes=True, post_choice_callback=None): gtk.Dialog.__init__(self, title, None, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT, (gtk.STOCK_NO, gtk.RESPONSE_CANCEL, @@ -404,6 +406,7 @@ class QuestionDialog(gtk.Dialog): prompt_hbox.pack_start(image, False, False, padding = 6) prompt_label = gtk.Label(question) + prompt_label.set_use_markup(use_markup) prompt_label.set_line_wrap(True) prompt_hbox.pack_start(prompt_label, False, False, padding=6) @@ -412,16 +415,18 @@ class QuestionDialog(gtk.Dialog): self.set_border_width(6) self.set_has_separator(False) - self.set_default_response(gtk.RESPONSE_OK) + if default_to_yes: + self.set_default_response(gtk.RESPONSE_OK) + else: + self.set_default_response(gtk.RESPONSE_CANCEL) - self.set_transient_for(parent_window) self.show_all() - - self.connect('response', self.on_response) + if post_choice_callback: + self.connect('response', self.on_response) - def on_response(self, device_dialog, response): + def on_response(self, device_dialog, response): user_selected = response == gtk.RESPONSE_OK self.post_choice_callback(self, user_selected) @@ -430,21 +435,21 @@ class RemoveAllJobCodeDialog(QuestionDialog): QuestionDialog.__init__(self, parent_window, _('Remove all Job Codes?'), _('Should all Job Codes be removed?'), - post_choice_callback) + post_choice_callback=post_choice_callback) class RemoveAllRemeberedDevicesDialog(QuestionDialog): def __init__(self, parent_window, post_choice_callback): QuestionDialog.__init__(self, parent_window, _('Remove all Remembered Paths?'), _('Should all remembered paths be removed?'), - post_choice_callback) + post_choice_callback=post_choice_callback) class RemoveAllIgnoredPathsDialog(QuestionDialog): def __init__(self, parent_window, post_choice_callback): QuestionDialog.__init__(self, parent_window, _('Remove all Ignored Paths?'), _('Should all ignored paths be removed?'), - post_choice_callback) + post_choice_callback=post_choice_callback) class PhotoRenameTable(tpm.TablePlusMinus): @@ -467,8 +472,7 @@ class PhotoRenameTable(tpm.TablePlusMinus): self.connect("add", self.size_adjustment) self.connect("remove", self.size_adjustment) - # get scrollbar thickness from parent app scrollbar - very hackish, but what to do?? - self.bump = 16# self.preferencesdialog.parentApp.image_scrolledwindow.get_hscrollbar().allocation.height + self.bump = 16 self.have_vertical_scrollbar = False @@ -887,10 +891,7 @@ class PreferencesDialog(): self._setup_control_spacing() - if metadatavideo.DOWNLOAD_VIDEO: - self.file_types = _("photos and videos") - else: - self.file_types = _("photos") + self.file_types = metadatavideo.file_types_to_download() self._setup_sample_names() @@ -1418,10 +1419,10 @@ class PreferencesDialog(): self.prefs.auto_exit) self.auto_exit_force_checkbutton.set_active( self.prefs.auto_exit_force) - self.auto_delete_checkbutton.set_active( - self.prefs.auto_delete) self.generate_thumbnails_checkbutton.set_active( self.prefs.generate_thumbnails) + self.auto_rotate_checkbutton.set_active( + self.prefs.auto_rotate_jpeg) self.update_misc_controls() @@ -1758,9 +1759,9 @@ class PreferencesDialog(): def on_auto_unmount_checkbutton_toggled(self, checkbutton): self.prefs.auto_unmount = checkbutton.get_active() - - def on_auto_delete_checkbutton_toggled(self, checkbutton): - self.prefs.auto_delete = checkbutton.get_active() + + def on_auto_rotate_checkbutton_toggled(self, checkbutton): + self.prefs.auto_rotate_jpeg = checkbutton.get_active() def on_auto_exit_checkbutton_toggled(self, checkbutton): active = checkbutton.get_active() @@ -1918,7 +1919,6 @@ class PreferencesDialog(): def on_backup_identifier_entry_changed(self, widget): self.update_backup_example() - #~ self.prefs. def on_video_backup_identifier_entry_changed(self, widget): self.update_backup_example() diff --git a/rapid/prefsrapid.py b/rapid/prefsrapid.py index 080e6f9..efd06b5 100644 --- a/rapid/prefsrapid.py +++ b/rapid/prefsrapid.py @@ -136,6 +136,7 @@ class RapidPreferences(prefs.Preferences): "show_warning_downloading_from_camera": prefs.Value(prefs.BOOL, True), #~ "preview_zoom": prefs.Value(prefs.INT, zoom), "generate_thumbnails": prefs.Value(prefs.BOOL, True), + "auto_rotate_jpeg": prefs.Value(prefs.BOOL, True), } def __init__(self): diff --git a/rapid/rapid.py b/rapid/rapid.py index db5bdc6..9c423c2 100755 --- a/rapid/rapid.py +++ b/rapid/rapid.py @@ -60,9 +60,12 @@ import generatename as gn import downloadtracker -from metadatavideo import DOWNLOAD_VIDEO +import filemodify + +from metadatavideo import DOWNLOAD_VIDEO, file_types_to_download import metadataphoto import metadatavideo +import metadataexiftool import scan as scan_process import copyfiles @@ -143,12 +146,14 @@ class DeviceCollection(gtk.TreeView): # make it impossible to select a row selection = self.get_selection() selection.set_mode(gtk.SELECTION_NONE) + self.set_headers_visible(False) # Device refers to a thing like a camera, memory card in its reader, # external hard drive, Portable Storage Device, etc. column0 = gtk.TreeViewColumn(_("Device")) pixbuf_renderer = gtk.CellRendererPixbuf() + pixbuf_renderer.set_padding(2, 0) text_renderer = gtk.CellRendererText() text_renderer.props.ellipsize = pango.ELLIPSIZE_MIDDLE text_renderer.set_fixed_size(160, -1) @@ -216,7 +221,7 @@ class DeviceCollection(gtk.TreeView): # (with one card at startup), it could be 21 # must account for header row at the top row_height = self.get_background_area(0, self.get_column(0))[3] + 1 - height = (len(self.map_process_to_row) + 1) * row_height + height = max(((len(self.map_process_to_row) + 1) * row_height), 24) self.parent_app.device_collection_scrolledwindow.set_size_request(-1, height) def update_device(self, process_id, total_size_files): @@ -683,9 +688,13 @@ class ThumbnailDisplay(gtk.IconView): #check if preview should be from a downloaded file, or the source if rpd_file.status in DOWNLOADED: file_location = rpd_file.download_full_file_name + thm_file_name = rpd_file.download_thm_full_name else: file_location = rpd_file.full_file_name + thm_file_name = rpd_file.thm_full_name + self.preview_manager.get_preview(unique_id, file_location, + thm_file_name, rpd_file.file_type, size_max=None,) self.previews_being_fetched.add(unique_id) @@ -1188,10 +1197,14 @@ class CopyFilesManager(TaskManager): video_download_folder = task[1] scan_pid = task[2] files = task[3] + modify_files_during_download = task[4] + modify_pipe = task[5] copy_files = copyfiles.CopyFiles(photo_download_folder, video_download_folder, files, + modify_files_during_download, + modify_pipe, scan_pid, self.batch_size, task_process_conn, terminate_queue, run_event) copy_files.start() @@ -1209,12 +1222,51 @@ class ThumbnailManager(TaskManager): generator.start() self._processes.append((generator, terminate_queue, run_event)) return generator.pid + +class FileModifyManager(TaskManager): + """Handles the modification of downloaded files before they are renamed + Duplex, multiprocess, similar to BackupFilesManager + """ + def __init__(self, results_callback): + TaskManager.__init__(self, results_callback=results_callback, + batch_size=0) + self.file_modify_by_scan_pid = {} + + def _initiate_task(self, task, task_results_conn, task_process_conn, + terminate_queue, run_event): + scan_pid = task[0] + auto_rotate_jpeg = task[1] + focal_length = task[2] + + file_modify = filemodify.FileModify(auto_rotate_jpeg, focal_length, + task_process_conn, terminate_queue, + run_event) + file_modify.start() + self._processes.append((file_modify, terminate_queue, run_event, + task_results_conn)) + + self.file_modify_by_scan_pid[scan_pid] = (task_results_conn, file_modify.pid) + + return file_modify.pid + + def _setup_pipe(self): + return Pipe(duplex=True) + + def _send_termination_msg(self, p): + p[1].put(None) + p[3].send((None, None)) + + def get_modify_pipe(self, scan_pid): + return self.file_modify_by_scan_pid[scan_pid][0] + class BackupFilesManager(TaskManager): """ - Handles backup processes. This is a little different from other Task + Handles backup processes. This is a little different from some other Task Manager classes in that its pipe is Duplex, and the work done by it is not pre-assigned when the process is started. + + Duplex, multiprocess. """ def __init__(self, results_callback, batch_size): TaskManager.__init__(self, results_callback, batch_size) @@ -1300,8 +1352,8 @@ class PreviewManager(SingleInstanceTaskManager): self._get_preview = tn.GetPreviewImage(self.task_process_conn) self._get_preview.start() - def get_preview(self, unique_id, full_file_name, file_type, size_max): - self.task_results_conn.send((unique_id, full_file_name, file_type, size_max)) + def get_preview(self, unique_id, full_file_name, thm_file_name, file_type, size_max): + self.task_results_conn.send((unique_id, full_file_name, thm_file_name, file_type, size_max)) def task_results(self, source, condition): unique_id, preview_full_size, preview_small = self.task_results_conn.recv() @@ -1312,10 +1364,10 @@ class SubfolderFileManager(SingleInstanceTaskManager): """ Manages the daemon process that renames files and creates subfolders """ - def __init__(self, results_callback, sequence_values, focal_length): + def __init__(self, results_callback, sequence_values): SingleInstanceTaskManager.__init__(self, results_callback) self._subfolder_file = subfolderfile.SubfolderFile(self.task_process_conn, - sequence_values, focal_length) + sequence_values) self._subfolder_file.start() logger.debug("SubfolderFile PID: %s", self._subfolder_file.pid) @@ -1440,7 +1492,6 @@ class PreviewImage: def update_preview_image(self, unique_id, pil_image): if unique_id == self.unique_id: self.set_preview_image(unique_id, pil_image) - class RapidApp(dbus.service.Object): @@ -1525,6 +1576,7 @@ class RapidApp(dbus.service.Object): scan_termination_requested = self.scan_manager.request_termination() thumbnails_termination_requested = self.thumbnails.thumbnail_manager.request_termination() backup_termination_requested = self.backup_manager.request_termination() + file_modify_termination_requested = self.file_modify_manager.request_termination() if terminate_file_copies: copy_files_termination_requested = self.copy_files_manager.request_termination() @@ -1532,17 +1584,19 @@ class RapidApp(dbus.service.Object): copy_files_termination_requested = False if (scan_termination_requested or thumbnails_termination_requested or - backup_termination_requested): + backup_termination_requested or file_modify_termination_requested): time.sleep(1) if (self.scan_manager.get_no_active_processes() > 0 or self.thumbnails.thumbnail_manager.get_no_active_processes() > 0 or - self.backup_manager.get_no_active_processes() > 0): + self.backup_manager.get_no_active_processes() > 0 or + self.file_modify_manager.get_no_active_processes() > 0): time.sleep(1) # must try again, just in case a new scan has meanwhile started! self.scan_manager.request_termination() self.thumbnails.thumbnail_manager.terminate_forcefully() self.scan_manager.terminate_forcefully() self.backup_manager.terminate_forcefully() + self.file_modify_manager.terminate_forcefully() if terminate_file_copies and copy_files_termination_requested: time.sleep(1) @@ -1591,6 +1645,7 @@ class RapidApp(dbus.service.Object): self.on_rapidapp_destroy(widget=self.rapidapp, data=None) def on_refresh_action_activate(self, action): + self.thumbnails.clear_all() self.setup_devices(on_startup=False, on_preference_change=False, block_auto_start=True) @@ -1602,7 +1657,7 @@ class RapidApp(dbus.service.Object): self.about.set_property("version", utilities.human_readable_version( __version__)) self.about.run() - self.about.destroy() + self.about.hide() def on_report_problem_action_activate(self, action): webbrowser.open("https://bugs.launchpad.net/rapid") @@ -1675,6 +1730,34 @@ class RapidApp(dbus.service.Object): self.prefs.ignored_paths, self.prefs.use_re_ignored_paths]) + def confirm_manual_location(self): + """ + Queries the user to ask if they really want to download from locations + that could take a very long time to scan. They can choose yes or no. + + Returns True if yes or there was no need to ask the user, False if the + user said no. + """ + l = self.prefs.device_location + if l in ['/media', os.path.expanduser('~'), '/']: + logger.info("Prompting whether to download from %s", l) + if l == '/': + #this location is a human readable explanation for /, and is inserted into Downloading from %(location)s + l = _('the root of the file system') + c = preferencesdialog.QuestionDialog(parent_window=self.rapidapp, + title=_('Rapid Photo Downloader'), + #message in dialog box which asks the user if they really want to be downloading from this location + question="" + _("Downloading from %(location)s.") % {'location': l} + "\n\n" + + _("Do you really want to download from here? On some systems, scanning this location can take a very long time."), + default_to_yes=False, + use_markup=True) + response = c.run() + user_confirmed = response == gtk.RESPONSE_OK + c.destroy() + if not user_confirmed: + return False + return True + def setup_devices(self, on_startup, on_preference_change, block_auto_start): """ @@ -1697,10 +1780,12 @@ class RapidApp(dbus.service.Object): if self.using_volume_monitor(): self.start_volume_monitor() - self.clear_non_running_downloads() - + if not self.prefs.device_autodetection: + if not self.confirm_manual_location(): + return + mounts = [] self.backup_devices = {} @@ -2175,6 +2260,10 @@ class RapidApp(dbus.service.Object): # Track which downloads are running self.download_active_by_scan_pid = [] + + def modify_files_during_download(self): + """ Returns True if there is a need to modify files during download""" + return self.prefs.auto_rotate_jpeg or (self.focal_length is not None) def start_download(self, scan_pid=None): @@ -2286,11 +2375,20 @@ class RapidApp(dbus.service.Object): if self.auto_start_is_on and self.prefs.generate_thumbnails: for rpd_file in files: rpd_file.generate_thumbnail = True + + modify_files_during_download = self.modify_files_during_download() + if modify_files_during_download: + self.file_modify_manager.add_task((scan_pid, self.prefs.auto_rotate_jpeg, self.focal_length)) + modify_pipe = self.file_modify_manager.get_modify_pipe(scan_pid) + else: + modify_pipe = None + # Initiate copy files process self.copy_files_manager.add_task((photo_download_folder, video_download_folder, scan_pid, - files)) + files, modify_files_during_download, + modify_pipe)) def copy_files_results(self, source, condition): """ @@ -2315,33 +2413,7 @@ class RapidApp(dbus.service.Object): None, None) self.time_remaining.update(scan_pid, bytes_downloaded=chunk_downloaded) elif msg_type == rpdmp.MSG_FILE: - download_succeeded, rpd_file, download_count, temp_full_file_name, thumbnail_icon, thumbnail = data - - if thumbnail is not None or thumbnail_icon is not None: - self.thumbnails.update_thumbnail((rpd_file.unique_id, - thumbnail_icon, - thumbnail)) - - self.download_tracker.set_download_count_for_file( - rpd_file.unique_id, download_count) - self.download_tracker.set_download_count( - rpd_file.scan_pid, download_count) - rpd_file.download_start_time = self.download_start_time - - if download_succeeded: - # Insert preference values needed for name generation - rpd_file = prefsrapid.insert_pref_lists(self.prefs, rpd_file) - rpd_file.strip_characters = self.prefs.strip_characters - rpd_file.download_folder = self.prefs.get_download_folder_for_file_type(rpd_file.file_type) - rpd_file.download_conflict_resolution = self.prefs.download_conflict_resolution - rpd_file.synchronize_raw_jpg = self.prefs.must_synchronize_raw_jpg() - rpd_file.job_code = self.job_code - - self.subfolder_file_manager.rename_file_and_move_to_subfolder( - download_succeeded, - download_count, - rpd_file - ) + self.copy_file_results_single_file(data) return True else: @@ -2350,6 +2422,63 @@ class RapidApp(dbus.service.Object): return False + def copy_file_results_single_file(self, data): + """ + Handles results from one of two processes: + 1. copy_files + 2. file_modify + + Operates after a single file has been copied from the download device + to the local folder. + + Calls the process to rename files and create subfolders (subfolderfile) + """ + + download_succeeded, rpd_file, download_count, temp_full_file_name, thumbnail_icon, thumbnail = data + + if thumbnail is not None or thumbnail_icon is not None: + self.thumbnails.update_thumbnail((rpd_file.unique_id, + thumbnail_icon, + thumbnail)) + + self.download_tracker.set_download_count_for_file( + rpd_file.unique_id, download_count) + self.download_tracker.set_download_count( + rpd_file.scan_pid, download_count) + rpd_file.download_start_time = self.download_start_time + + if download_succeeded: + # Insert preference values needed for name generation + rpd_file = prefsrapid.insert_pref_lists(self.prefs, rpd_file) + rpd_file.strip_characters = self.prefs.strip_characters + rpd_file.download_folder = self.prefs.get_download_folder_for_file_type(rpd_file.file_type) + rpd_file.download_conflict_resolution = self.prefs.download_conflict_resolution + rpd_file.synchronize_raw_jpg = self.prefs.must_synchronize_raw_jpg() + rpd_file.job_code = self.job_code + + self.subfolder_file_manager.rename_file_and_move_to_subfolder( + download_succeeded, + download_count, + rpd_file + ) + def file_modify_results(self, source, condition): + """ + 'file modify' is a process that runs immediately after 'copy files', + meaning there can be more than one at one time. + + It runs before the renaming process. + """ + connection = self.file_modify_manager.get_pipe(source) + + conn_type, data = connection.recv() + if conn_type == rpdmp.CONN_PARTIAL: + self.copy_file_results_single_file(data) + return True + else: + # Process is complete, i.e. conn_type == rpdmp.CONN_COMPLETE + connection.close() + return False + def download_is_occurring(self): """Returns True if a file is currently being downloaded, renamed or @@ -2840,8 +2969,10 @@ class RapidApp(dbus.service.Object): 'device_location', 'ignored_paths', 'use_re_ignored_paths', 'device_blacklist']: self.rerun_setup_available_image_and_video_media = True + self._set_from_toolbar_state() if not self.preferences_dialog_displayed: self.post_preference_change() + elif key in ['backup_images', 'backup_device_autodetection', 'backup_location', 'backup_video_location', @@ -2868,6 +2999,7 @@ class RapidApp(dbus.service.Object): self._check_for_sequence_value_use() elif key in ['download_folder', 'video_download_folder']: + self._set_to_toolbar_values() self.display_free_space() def post_preference_change(self): @@ -2945,9 +3077,14 @@ class RapidApp(dbus.service.Object): self.builder = builder builder.add_from_file(paths.share_dir("glade3/rapid.ui")) self.rapidapp = builder.get_object("rapidapp") + self.from_toolbar = builder.get_object("from_toolbar") + self.copy_toolbar = builder.get_object("copy_toolbar") + self.dest_toolbar = builder.get_object("dest_toolbar") + self.menu_toolbar = builder.get_object("menu_toolbar") self.main_vpaned = builder.get_object("main_vpaned") self.main_notebook = builder.get_object("main_notebook") self.download_action = builder.get_object("download_action") + self.download_button = builder.get_object("download_button") self.download_progressbar = builder.get_object("download_progressbar") self.rapid_statusbar = builder.get_object("rapid_statusbar") @@ -2962,7 +3099,9 @@ class RapidApp(dbus.service.Object): # Only enable this action when actually displaying a preview self.next_image_action.set_sensitive(False) - self.prev_image_action.set_sensitive(False) + self.prev_image_action.set_sensitive(False) + + self._init_toolbars() # About dialog builder.add_from_file(paths.share_dir("glade3/about.ui")) @@ -3003,6 +3142,227 @@ class RapidApp(dbus.service.Object): self.time_remaining = downloadtracker.TimeRemaining() self.time_check = downloadtracker.TimeCheck() + def _init_toolbars(self): + """ Setup the 3 vertical toolbars on the main screen """ + self._setup_from_toolbar() + self._setup_copy_move_toolbar() + self._setup_dest_toolbar() + + # size label widths so they are equal, or else the left border of the file chooser will not match + self.photo_dest_label.realize() + self._make_widget_widths_equal(self.photo_dest_label, self.video_dest_label) + self.photo_dest_label.set_alignment(xalign=0.0, yalign=0.5) + self.video_dest_label.set_alignment(xalign=0.0, yalign=0.5) + + # size copy / move buttons so they are equal in length, so arrows align + self._make_widget_widths_equal(self.copy_button, self.move_button) + + def _setup_from_toolbar(self): + self.from_toolbar.set_style(gtk.TOOLBAR_TEXT) + self.from_toolbar.set_border_width(5) + + from_label = gtk.Label() + from_label.set_markup("" + _("From") + "") + self.from_toolbar_label = gtk.ToolItem() + self.from_toolbar_label.add(from_label) + self.from_toolbar_label.set_is_important(True) + self.from_toolbar.insert(self.from_toolbar_label, 0) + + self.auto_detect_button = gtk.ToggleToolButton() + self.auto_detect_button.set_is_important(True) + self.auto_detect_button.set_label(_("Auto Detect")) + self.from_toolbar.insert(self.auto_detect_button, 1) + + self.from_filechooser_button = gtk.FileChooserButton( + _("Select a folder containing %(file_types)s") % {'file_types':file_types_to_download()}) + self.from_filechooser_button.set_action( + gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER) + + self.from_filechooser = gtk.ToolItem() + self.from_filechooser.set_is_important(True) + self.from_filechooser.add(self.from_filechooser_button) + self.from_filechooser.set_expand(True) + self.from_toolbar.insert(self.from_filechooser, 2) + + self._set_from_toolbar_state() + + #set events after having initialized the values + self.auto_detect_button.connect("toggled", self.on_auto_detect_button_toggled_event) + self.from_filechooser_button.connect("selection-changed", + self.on_from_filechooser_button_selection_changed) + + self.from_toolbar.show_all() + + def _setup_copy_move_toolbar(self): + self.copy_toolbar.set_style(gtk.TOOLBAR_TEXT) + self.copy_toolbar.set_border_width(5) + + copy_move_label = gtk.Label(" ") + self.copy_move_toolbar_label = gtk.ToolItem() + self.copy_move_toolbar_label.add(copy_move_label) + self.copy_move_toolbar_label.set_is_important(True) + self.copy_toolbar.insert(self.copy_move_toolbar_label, 0) + + self.copy_hbox = gtk.HBox() + self.move_hbox = gtk.HBox() + self.forward_image = gtk.image_new_from_stock(gtk.STOCK_GO_FORWARD, gtk.ICON_SIZE_SMALL_TOOLBAR) + self.forward_image2 = gtk.image_new_from_stock(gtk.STOCK_GO_FORWARD, gtk.ICON_SIZE_SMALL_TOOLBAR) + self.forward_image3 = gtk.image_new_from_stock(gtk.STOCK_GO_FORWARD, gtk.ICON_SIZE_SMALL_TOOLBAR) + self.forward_image4 = gtk.image_new_from_stock(gtk.STOCK_GO_FORWARD, gtk.ICON_SIZE_SMALL_TOOLBAR) + self.forward_label = gtk.Label(" ") + self.forward_label2 = gtk.Label(" ") + self.forward_label3 = gtk.Label(" ") + self.forward_label4 = gtk.Label(" ") + + self.copy_button = gtk.RadioToolButton() + self.copy_button.set_label(_("Copy")) + self.copy_button.set_is_important(True) + + self.copy_hbox.pack_start(self.forward_label) + self.copy_hbox.pack_start(self.forward_image) + self.copy_hbox.pack_start(self.copy_button, expand=False, fill=False) + self.copy_hbox.pack_start(self.forward_image2) + self.copy_hbox.pack_start(self.forward_label2) + copy_box = gtk.ToolItem() + copy_box.add(self.copy_hbox) + self.copy_toolbar.insert(copy_box, 1) + + self.move_button = gtk.RadioToolButton(self.copy_button) + self.move_button.set_label(_("Move")) + self.move_button.set_is_important(True) + self.move_hbox.pack_start(self.forward_label3) + self.move_hbox.pack_start(self.forward_image3) + self.move_hbox.pack_start(self.move_button, expand=False, fill=False) + self.move_hbox.pack_start(self.forward_image4) + self.move_hbox.pack_start(self.forward_label4) + move_box = gtk.ToolItem() + move_box.add(self.move_hbox) + self.copy_toolbar.insert(move_box, 2) + + self.move_button.set_active(self.prefs.auto_delete) + self.copy_button.connect("toggled", self.on_copy_button_toggle_event) + + self.copy_toolbar.show_all() + self._set_copy_toolbar_active_arrows() + + def _setup_dest_toolbar(self): + #Destination Toolbar + self.dest_toolbar.set_border_width(5) + + dest_label = gtk.Label() + dest_label.set_markup("" + _("To") + "") + self.dest_toolbar_label = gtk.ToolItem() + self.dest_toolbar_label.add(dest_label) + self.dest_toolbar_label.set_is_important(True) + self.dest_toolbar.insert(self.dest_toolbar_label, 0) + + photo_dest_hbox = gtk.HBox() + self.photo_dest_label = gtk.Label(_("Photos:")) + + self.to_photo_filechooser_button = gtk.FileChooserButton( + _("Select a folder to download photos to")) + self.to_photo_filechooser_button.set_action( + gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER) + photo_dest_hbox.pack_start(self.photo_dest_label, expand=False, fill=False, padding=6) + photo_dest_hbox.pack_start(self.to_photo_filechooser_button) + self.to_photo_filechooser = gtk.ToolItem() + self.to_photo_filechooser.set_is_important(True) + self.to_photo_filechooser.set_expand(True) + self.to_photo_filechooser.add(photo_dest_hbox) + self.dest_toolbar.insert(self.to_photo_filechooser, 1) + + video_dest_hbox = gtk.HBox() + self.video_dest_label = gtk.Label(_("Videos:")) + self.to_video_filechooser_button = gtk.FileChooserButton( + _("Select a folder to download videos to")) + self.to_video_filechooser_button.set_action( + gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER) + video_dest_hbox.pack_start(self.video_dest_label, expand=False, fill=False, padding=6) + video_dest_hbox.pack_start(self.to_video_filechooser_button) + self.to_video_filechooser = gtk.ToolItem() + self.to_video_filechooser.set_is_important(True) + self.to_video_filechooser.set_expand(True) + self.to_video_filechooser.add(video_dest_hbox) + self.dest_toolbar.insert(self.to_video_filechooser, 2) + + self._set_to_toolbar_values() + self.to_photo_filechooser_button.connect("selection-changed", + self.on_to_photo_filechooser_button_selection_changed) + self.to_video_filechooser_button.connect("selection-changed", + self.on_to_video_filechooser_button_selection_changed) + self.dest_toolbar.show_all() + + def _make_widget_widths_equal(self, widget1, widget2): + """takes two widgets and sets a width for both equal to widest one""" + + x1, y1, w1, h1 = widget1.get_allocation() + x2, y2, w2, h2 = widget2.get_allocation() + w = max(w1, w2) + h = max(h1, h2) + widget1.set_size_request(w,h) + widget2.set_size_request(w,h) + + def _set_copy_toolbar_active_arrows(self): + if self.copy_button.get_active(): + self.forward_image.set_visible(True) + self.forward_image2.set_visible(True) + self.forward_image3.set_visible(False) + self.forward_image4.set_visible(False) + self.forward_label.set_visible(False) + self.forward_label2.set_visible(False) + self.forward_label3.set_visible(True) + self.forward_label4.set_visible(True) + else: + self.forward_image.set_visible(False) + self.forward_image2.set_visible(False) + self.forward_image3.set_visible(True) + self.forward_image4.set_visible(True) + self.forward_label.set_visible(True) + self.forward_label2.set_visible(True) + self.forward_label3.set_visible(False) + self.forward_label4.set_visible(False) + + def on_copy_button_toggle_event(self, radio_button): + self._set_copy_toolbar_active_arrows() + self.prefs.auto_delete = not self.copy_button.get_active() + + def _set_from_toolbar_state(self): + logger.debug("_set_from_toolbar_state") + self.auto_detect_button.set_active(self.prefs.device_autodetection) + if self.prefs.device_autodetection: + self.from_filechooser_button.set_sensitive(False) + self.from_filechooser_button.set_current_folder(self.prefs.device_location) + + def on_auto_detect_button_toggled_event(self, button): + logger.debug("on_auto_detect_button_toggled_event") + self.from_filechooser_button.set_sensitive(not button.get_active()) + if not self.rerun_setup_available_image_and_video_media: + self.prefs.device_autodetection = button.get_active() + + def on_from_filechooser_button_selection_changed(self, filechooserbutton): + logger.debug("on_from_filechooser_button_selection_changed") + path = filechooserbutton.get_current_folder() + if path and not self.rerun_setup_available_image_and_video_media: + self.prefs.device_location = path + + def on_to_photo_filechooser_button_selection_changed(self, filechooserbutton): + path = filechooserbutton.get_current_folder() + if path: + self.prefs.download_folder = path + + def on_to_video_filechooser_button_selection_changed(self, filechooserbutton): + path = filechooserbutton.get_current_folder() + if path: + self.prefs.video_download_folder = path + + def _set_to_toolbar_values(self): + self.to_photo_filechooser_button.set_current_folder(self.prefs.download_folder) + self.to_video_filechooser_button.set_current_folder(self.prefs.video_download_folder) + + def toolbar_event(self, widget, toolbar): + pass + + def _set_window_size(self): """ @@ -3027,7 +3387,7 @@ class RapidApp(dbus.service.Object): Set the size of the device collection scrolled window widget """ if self.device_collection.map_process_to_row: - height = self.device_collection_viewport.size_request()[1] + height = max(self.device_collection_viewport.size_request()[1], 24) self.device_collection_scrolledwindow.set_size_request(-1, height) self.main_vpaned.set_position(height) else: @@ -3407,7 +3767,7 @@ class RapidApp(dbus.service.Object): Set up process managers. A task such as scanning a device or copying files is handled in its - own process. + own process. """ self.batch_size = 10 @@ -3421,19 +3781,27 @@ class RapidApp(dbus.service.Object): self.uses_stored_sequence_no_value, self.uses_session_sequece_no_value, self.uses_sequence_letter_value) - + + # daemon process to rename files and create subfolders self.subfolder_file_manager = SubfolderFileManager( self.subfolder_file_results, - sequence_values, - self.focal_length) - + sequence_values) + # process to scan source devices / paths self.scan_manager = ScanManager(self.scan_results, self.batch_size, self.device_collection.add_device) + + #process to copy files from source to destination self.copy_files_manager = CopyFilesManager(self.copy_files_results, self.batch_size_MB) + + #process to back files up self.backup_manager = BackupFilesManager(self.backup_results, self.batch_size_MB) + + #process to enhance files after they've been copied and before they're + #renamed + self.file_modify_manager = FileModifyManager(self.file_modify_results) def scan_results(self, source, condition): @@ -3468,6 +3836,7 @@ class RapidApp(dbus.service.Object): self.start_download(scan_pid=scan_pid) self.set_thumbnail_sort() + self.download_button.grab_focus() # signal that no more data is coming, finishing io watch for this pipe return False @@ -3482,7 +3851,6 @@ class RapidApp(dbus.service.Object): # must return True for this method to be called again return True - @dbus.service.method (config.DBUS_NAME, in_signature='', out_signature='b') @@ -3511,7 +3879,7 @@ def start(): parser.add_option("-q", "--quiet", action="store_false", dest="verbose", help=_("only output errors to the command line")) # image file extensions are recognized RAW files plus TIFF and JPG parser.add_option("-e", "--extensions", action="store_true", dest="extensions", help=_("list photo and video file extensions the program recognizes and exit")) - parser.add_option("--focal-length", type=int, dest="focal_length", help="If an aperture value of 0.0 is encountered, for file renaming purposes the metadata for that photo will temporarily have its focal length set to the number passed, and its aperture to f8") + parser.add_option("--focal-length", type=int, dest="focal_length", help="If an aperture value of 0.0 is encountered, the focal length metadata will be set to the number passed, and its aperture metadata to f8") parser.add_option("--reset-settings", action="store_true", dest="reset", help=_("reset all program settings and preferences and exit")) (options, args) = parser.parse_args() @@ -3525,7 +3893,7 @@ def start(): logger.setLevel(logging_level) if options.extensions: - extensions = ((rpdfile.RAW_FILE_EXTENSIONS + rpdfile.NON_RAW_IMAGE_FILE_EXTENSIONS, _("Photos:")), (rpdfile.VIDEO_FILE_EXTENSIONS, _("Videos:"))) + extensions = ((rpdfile.PHOTO_EXTENSIONS, _("Photos:")), (rpdfile.VIDEO_EXTENSIONS, _("Videos:"))) for exts, file_type in extensions: v = '' for e in exts[:-1]: @@ -3549,14 +3917,16 @@ def start(): logger.info("Rapid Photo Downloader %s", utilities.human_readable_version(config.version)) logger.info("Using pyexiv2 %s", metadataphoto.pyexiv2_version_info()) logger.info("Using exiv2 %s", metadataphoto.exiv2_version_info()) - + if metadataexiftool.EXIFTOOL_VERSION is None: + logger.info("Exiftool not detected") + else: + logger.info("Using exiftool %s", metadataexiftool.EXIFTOOL_VERSION) + if metadatavideo.HAVE_HACHOIR: + logger.info("Using hachoir %s", metadatavideo.version_info()) + + if focal_length: logger.info("Focal length of %s will be used when an aperture of 0.0 is encountered", focal_length) - - if DOWNLOAD_VIDEO: - logger.info("Using hachoir %s", metadatavideo.version_info()) - else: - logger.info(_("Video downloading functionality disabled.\nTo download videos, please install the hachoir metadata and kaa metadata packages for python.")) bus = dbus.SessionBus () request = bus.request_name (config.DBUS_NAME, dbus.bus.NAME_FLAG_DO_NOT_QUEUE) diff --git a/rapid/rpdfile.py b/rapid/rpdfile.py index d9454d7..8818182 100644 --- a/rapid/rpdfile.py +++ b/rapid/rpdfile.py @@ -34,6 +34,7 @@ from gettext import gettext as _ import config import metadataphoto import metadatavideo +import metadataexiftool import problemnotification as pn @@ -43,7 +44,9 @@ import thumbnail as tn RAW_EXTENSIONS = ['arw', 'dcr', 'cr2', 'crw', 'dng', 'mos', 'mef', 'mrw', 'nef', 'orf', 'pef', 'raf', 'raw', 'rw2', 'sr2', 'srw'] -NON_RAW_IMAGE_EXTENSIONS = ['jpg', 'jpe', 'jpeg', 'tif', 'tiff'] +JPEG_EXTENSIONS = ['jpg', 'jpe', 'jpeg'] + +NON_RAW_IMAGE_EXTENSIONS = JPEG_EXTENSIONS + ['tif', 'tiff'] PHOTO_EXTENSIONS = RAW_EXTENSIONS + NON_RAW_IMAGE_EXTENSIONS @@ -52,7 +55,9 @@ if metadatavideo.DOWNLOAD_VIDEO: # needs to be able to download videos VIDEO_EXTENSIONS = ['3gp', 'avi', 'm2t', 'mov', 'mp4', 'mpeg','mpg', 'mod', 'tod'] - VIDEO_THUMBNAIL_EXTENSIONS = ['thm'] + if metadataexiftool.EXIFTOOL_VERSION is not None: + VIDEO_EXTENSIONS += ['mts'] + VIDEO_THUMBNAIL_EXTENSIONS = ['thm'] else: VIDEO_EXTENSIONS = [] VIDEO_THUMBNAIL_EXTENSIONS = [] @@ -75,18 +80,18 @@ def file_type(file_extension): return None def get_rpdfile(extension, name, display_name, path, size, - file_system_modification_time, - scan_pid, file_id): + file_system_modification_time, thm_full_name, + scan_pid, file_id, file_type): - if extension in VIDEO_EXTENSIONS: + if file_type == FILE_TYPE_VIDEO: return Video(name, display_name, path, size, - file_system_modification_time, + file_system_modification_time, thm_full_name, scan_pid, file_id) else: # assume it's a photo - no check for performance reasons (this will be # called many times) return Photo(name, display_name, path, size, - file_system_modification_time, + file_system_modification_time, thm_full_name, scan_pid, file_id) class FileTypeCounter: @@ -144,7 +149,7 @@ class RPDFile: """ def __init__(self, name, display_name, path, size, - file_system_modification_time, + file_system_modification_time, thm_full_name, scan_pid, file_id): self.path = path @@ -153,11 +158,15 @@ class RPDFile: self.display_name = display_name self.full_file_name = os.path.join(path, name) + self.extension = os.path.splitext(name)[1][1:].lower() self.size = size # type int self.modification_time = file_system_modification_time + #full path and name of thumbnail file that is associated with some videos + self.thm_full_name = thm_full_name + self.status = config.STATUS_NOT_DOWNLOADED self.problem = None # class Problem in problemnotifcation.py @@ -177,12 +186,18 @@ class RPDFile: # generated values self.temp_full_file_name = '' + self.temp_thm_full_name = '' + self.temp_xmp_full_name = '' + self.download_start_time = None self.download_subfolder = '' self.download_path = '' self.download_name = '' - self.download_full_file_name = '' + self.download_full_file_name = '' #file name with path + self.download_full_base_name = '' #file name with path but no extension + self.download_thm_full_name = '' #name of THM (thumbnail) file with path + self.download_xmp_full_name = '' #name of XMP sidecar with path self.metadata = None @@ -194,11 +209,24 @@ class RPDFile: #self.subfolder_pref_list = [] #self.name_pref_list = [] #strip_characters = False + #self.thm_extension = '' + #self.xmp_extension = '' + + #these values are set only if they were written to an xmp sidecar + #in the filemodify process + #self.new_aperture = '' + #self.new_focal_length = '' def _assign_file_type(self): self.file_type = None + def _load_file_for_metadata(self, temp_file): + if temp_file: + return self.temp_full_file_name + else: + return self.full_file_name + def initialize_problem(self): self.problem = pn.Problem() # these next values are used to display in the error log window @@ -218,32 +246,6 @@ class RPDFile: def add_extra_detail(self, extra_detail, *args): self.problem.add_extra_detail(extra_detail, *args) - - - -#~ exif_tags_needed = ('Exif.Photo.FNumber', - #~ 'Exif.Photo.ISOSpeedRatings', - #~ 'Exif.Photo.ExposureTime', - #~ 'Exif.Photo.FocalLength', - #~ 'Exif.Image.Make', - #~ 'Exif.Image.Model', - #~ 'Exif.Canon.SerialNumber', - #~ 'Exif.Nikon3.SerialNumber' - #~ 'Exif.OlympusEq.SerialNumber', - #~ 'Exif.Olympus.SerialNumber', - #~ 'Exif.Olympus.SerialNumber2', - #~ 'Exif.Panasonic.SerialNumber', - #~ 'Exif.Fujifilm.SerialNumber', - #~ 'Exif.Image.CameraSerialNumber', - #~ 'Exif.Nikon3.ShutterCount', - #~ 'Exif.Canon.FileNumber', - #~ 'Exif.Canon.ImageNumber', - #~ 'Exif.Canon.OwnerName', - #~ 'Exif.Photo.DateTimeOriginal', - #~ 'Exif.Image.DateTime', - #~ 'Exif.Photo.SubSecTimeOriginal', - #~ 'Exif.Image.Orientation' - #~ ) class Photo(RPDFile): @@ -253,9 +255,8 @@ class Photo(RPDFile): def _assign_file_type(self): self.file_type = FILE_TYPE_PHOTO - def load_metadata(self): - - self.metadata = metadataphoto.MetaData(self.full_file_name) + def load_metadata(self, temp_file=False): + self.metadata = metadataphoto.MetaData(self._load_file_for_metadata(temp_file)) try: self.metadata.read() except: @@ -273,8 +274,13 @@ class Video(RPDFile): def _assign_file_type(self): self.file_type = FILE_TYPE_VIDEO - def load_metadata(self): - self.metadata = metadatavideo.VideoMetaData(self.full_file_name) + def load_metadata(self, temp_file=False): + if self.extension == 'mts' or not metadatavideo.HAVE_HACHOIR: + if metadatavideo.HAVE_HACHOIR: + logger.debug("Using ExifTool parser") + self.metadata = metadataexiftool.ExifToolMetaData(self._load_file_for_metadata(temp_file)) + else: + self.metadata = metadatavideo.VideoMetaData(self._load_file_for_metadata(temp_file)) return True class SamplePhoto(Photo): @@ -285,7 +291,8 @@ class SamplePhoto(Photo): size=23516764, file_system_modification_time=time.time(), scan_pid=2033, - file_id='9873afe') + file_id='9873afe', + thm_full_name=None) self.sequences = sequences self.metadata = metadataphoto.DummyMetaData() self.download_start_time = datetime.datetime.now() @@ -298,7 +305,8 @@ class SampleVideo(Video): size=823513764, file_system_modification_time=time.time(), scan_pid=2033, - file_id='9873qrsfe') + file_id='9873qrsfe', + thm_full_name=None) self.sequences = sequences self.metadata = metadatavideo.DummyMetaData(filename=sample_name) self.download_start_time = datetime.datetime.now() diff --git a/rapid/scan.py b/rapid/scan.py index 0d7182c..02902ec 100755 --- a/rapid/scan.py +++ b/rapid/scan.py @@ -41,6 +41,24 @@ file_attributes = "standard::name,standard::display-name,\ standard::type,standard::size,time::modified,access::can-read,id::file" +def get_video_THM_file(full_file_name_no_ext): + """ + Checks to see if a thumbnail file (THM) is in the same directory as the + file. Expects a full path to be part of the file name. + + Returns the filename, including path, if found, else returns None. + """ + + f = None + for e in rpdfile.VIDEO_THUMBNAIL_EXTENSIONS: + if os.path.exists(full_file_name_no_ext + '.' + e): + f = full_file_name_no_ext + '.' + e + break + if os.path.exists(full_file_name_no_ext + '.' + e.upper()): + f = full_file_name_no_ext + '.' + e.upper() + break + + return f class Scan(multiprocessing.Process): @@ -120,7 +138,8 @@ class Scan(multiprocessing.Process): return None elif file_type == gio.FILE_TYPE_REGULAR: - ext = os.path.splitext(name)[1].lower()[1:] + base_name, ext = os.path.splitext(name) + ext = ext.lower()[1:] file_type = rpdfile.file_type(ext) if file_type is not None: @@ -134,15 +153,24 @@ class Scan(multiprocessing.Process): display_name = child.get_display_name() size = child.get_size() modification_time = child.get_modification_time() - + path_name = path.get_path() + + # look for thumbnail file for videos + if file_type == rpdfile.FILE_TYPE_VIDEO: + thm_full_name = get_video_THM_file(os.path.join(path_name, base_name)) + else: + thm_full_name = None + scanned_file = rpdfile.get_rpdfile(ext, name, display_name, - path.get_path(), + path_name, size, - modification_time, + modification_time, + thm_full_name, self.pid, - file_id) + file_id, + file_type) self.files.append(scanned_file) diff --git a/rapid/subfolderfile.py b/rapid/subfolderfile.py index a80bc84..345edce 100644 --- a/rapid/subfolderfile.py +++ b/rapid/subfolderfile.py @@ -20,10 +20,10 @@ """ Generates names for files and folders. -Runs a daemon process. +Runs as a daemon process. """ -import os, datetime, collections, fractions +import os, datetime, collections import gio import multiprocessing @@ -82,13 +82,17 @@ def time_subseconds_human_readable(date, subseconds): 'second':date.strftime("%S"), 'subsecond': subseconds} -def load_metadata(rpd_file): +def load_metadata(rpd_file, temp_file=True): """ Loads the metadata for the file. Returns True if operation succeeded, false otherwise + + If temp_file is true, the the metadata from the temporary file rather than + the original source file is used. This is important, because the metadata + can be modified by the filemodify process. """ if rpd_file.metadata is None: - if not rpd_file.load_metadata(): + if not rpd_file.load_metadata(temp_file): # Error in reading metadata rpd_file.add_problem(None, pn.CANNOT_DOWNLOAD_BAD_METADATA, {'filetype': rpd_file.title_capitalized}) return False @@ -133,10 +137,10 @@ def generate_name(rpd_file): rpd_file.download_name = _generate_name(generator, rpd_file) return rpd_file - + class SubfolderFile(multiprocessing.Process): - def __init__(self, results_pipe, sequence_values, focal_length): + def __init__(self, results_pipe, sequence_values): multiprocessing.Process.__init__(self) self.daemon = True self.results_pipe = results_pipe @@ -150,8 +154,6 @@ class SubfolderFile(multiprocessing.Process): self.uses_session_sequece_no = sequence_values[6] self.uses_sequence_letter = sequence_values[7] - self.focal_length = focal_length - logger.debug("Start of day is set to %s", self.day_start.value) def progress_callback_no_update(self, amount_downloaded, total): @@ -237,6 +239,7 @@ class SubfolderFile(multiprocessing.Process): """ Get subfolder and name. Attempt to move the file from it's temporary directory. + Move video THM file if there is one. If successful, increment sequence values. Report any success or failure. """ @@ -265,10 +268,8 @@ class SubfolderFile(multiprocessing.Process): while True: logger.debug("Finished %s. Getting next task.", download_count) - task = self.results_pipe.recv() - # rename file and move to generated subfolder - download_succeeded, download_count, rpd_file = task + download_succeeded, download_count, rpd_file = self.results_pipe.recv() move_succeeded = False @@ -311,22 +312,16 @@ class SubfolderFile(multiprocessing.Process): # Generate subfolder name and new file name generation_succeeded = True - # check to see if focal length and aperture data should be manipulated - if self.focal_length is not None and rpd_file.file_type == rpdfile.FILE_TYPE_PHOTO: - if load_metadata(rpd_file): - a = rpd_file.metadata.aperture() - if a == '0.0': - fl = rpd_file.metadata["Exif.Photo.FocalLength"].value - logger.info("Adjusting focal length and aperture for %s", rpd_file.full_file_name) - #~ try: - rpd_file.metadata["Exif.Photo.FocalLength"] = fractions.Fraction(self.focal_length,1) - rpd_file.metadata["Exif.Photo.FNumber"] = fractions.Fraction(8,1) - #~ rpd_file.metadata.write(preserve_timestamps=True) - #~ logger.info("...wrote new value") - #~ except: - #~ logger.error("failed to write value!") - - + if rpd_file.file_type == rpdfile.FILE_TYPE_PHOTO: + if hasattr(rpd_file, 'new_focal_length'): + # A RAW file has had its focal length and aperture adjusted. + # These have been written out to an XMP sidecar, but they won't + # be picked up by pyexiv2. So temporarily change the values inplace here, + # without saving them. + if load_metadata(rpd_file): + rpd_file.metadata["Exif.Photo.FocalLength"] = rpd_file.new_focal_length + rpd_file.metadata["Exif.Photo.FNumber"] = rpd_file.new_aperture + rpd_file = generate_subfolder(rpd_file) if rpd_file.download_subfolder: @@ -374,6 +369,7 @@ class SubfolderFile(multiprocessing.Process): if generation_succeeded: rpd_file.download_path = os.path.join(rpd_file.download_folder, rpd_file.download_subfolder) rpd_file.download_full_file_name = os.path.join(rpd_file.download_path, rpd_file.download_name) + rpd_file.download_full_base_name = os.path.splitext(rpd_file.download_full_file_name)[0] subfolder = gio.File(path=rpd_file.download_path) @@ -468,6 +464,36 @@ class SubfolderFile(multiprocessing.Process): self.downloads_today_tracker.increment_downloads_today() self.downloads_today.value = self.downloads_today_tracker.get_raw_downloads_today() self.downloads_today_date.value = self.downloads_today_tracker.get_raw_downloads_today_date() + + if rpd_file.temp_thm_full_name: + # copy and rename THM video file + source = gio.File(path=rpd_file.temp_thm_full_name) + ext = None + if hasattr(rpd_file, 'thm_extension'): + if rpd_file.thm_extension: + ext = rpd_file.thm_extension + if ext is None: + ext = '.THM' + download_thm_full_name = rpd_file.download_full_base_name + ext + dest = gio.File(path=download_thm_full_name) + try: + source.move(dest, self.progress_callback_no_update, cancellable=None) + rpd_file.download_thm_full_name = download_thm_full_name + except gio.Error, inst: + logger.error("Failed to move video THM file %s", download_thm_full_name) + + if rpd_file.temp_xmp_full_name: + # copy and rename XMP sidecar file + source = gio.File(path=rpd_file.temp_xmp_full_name) + # generate_name() has generated xmp extension with correct capitalization + download_xmp_full_name = rpd_file.download_full_base_name + rpd_file.xmp_extension + dest = gio.File(path=download_xmp_full_name) + try: + source.move(dest, self.progress_callback_no_update, cancellable=None) + rpd_file.download_xmp_full_name = download_xmp_full_name + except gio.Error, inst: + logger.error("Failed to move XMP sidecar file %s", download_xmp_full_name) + if not move_succeeded: logger.error("%s: %s - %s", rpd_file.full_file_name, diff --git a/rapid/thumbnail.py b/rapid/thumbnail.py index c987018..404c18b 100644 --- a/rapid/thumbnail.py +++ b/rapid/thumbnail.py @@ -1,5 +1,4 @@ #!/usr/bin/python -#!/usr/bin/python # -*- coding: latin1 -*- ### Copyright (C) 2011 Damon Lynch @@ -137,26 +136,6 @@ class PicklablePIL: def get_pixbuf(self): return image_to_pixbuf(self.get_image()) -def get_video_THM_file(fullFileName): - """ - Checks to see if a thumbnail file (THM) is in the same directory as the - file. Expects a full path to be part of the file name. - - Returns the filename, including path, if found, else returns None. - """ - - f = None - name, ext = os.path.splitext(fullFileName) - for e in rpdfile.VIDEO_THUMBNAIL_EXTENSIONS: - if os.path.exists(name + '.' + e): - f = name + '.' + e - break - if os.path.exists(name + '.' + e.upper()): - f = name + '.' + e.upper() - break - - return f - class Thumbnail: # file types from which to remove letterboxing (black bands in the thumbnail @@ -187,17 +166,24 @@ class Thumbnail: return (thumbnail.data, lowrez) def _process_thumbnail(self, image, size_reduced): + image_ok = True if image.mode <> "RGBA": - image = image.convert("RGBA") + try: + image = image.convert("RGBA") + except: + logger.error("Image thumbnail is corrupt") + image_ok = False - thumbnail = PicklablePIL(image) - if size_reduced is not None: - thumbnail_icon = image.copy() - downsize_pil(thumbnail_icon, size_reduced, fit=False) - thumbnail_icon = PicklablePIL(thumbnail_icon) + if image_ok: + thumbnail = PicklablePIL(image) + if size_reduced is not None: + thumbnail_icon = image.copy() + downsize_pil(thumbnail_icon, size_reduced, fit=False) + thumbnail_icon = PicklablePIL(thumbnail_icon) + else: + thumbnail_icon = None else: - thumbnail_icon = None - + thumbnail = thumbnail_icon = None return (thumbnail, thumbnail_icon) def _get_photo_thumbnail(self, full_file_name, size_max, size_reduced): @@ -263,7 +249,7 @@ class Thumbnail: logger.debug("...got thumbnail for %s", full_file_name) return (thumbnail, thumbnail_icon) - def _get_video_thumbnail(self, full_file_name, size_max, size_reduced): + def _get_video_thumbnail(self, full_file_name, thm_full_name, size_max, size_reduced): thumbnail = None thumbnail_icon = None if size_max is None: @@ -272,14 +258,16 @@ class Thumbnail: size = max(size_max[0], size_max[1]) image = None if size > 0 and size <= 160: - thm = get_video_THM_file(full_file_name) - if thm: + if thm_full_name: try: - thumbnail = gtk.gdk.pixbuf_new_from_file(thm) + thumbnail = gtk.gdk.pixbuf_new_from_file(thm_full_name) except: - logger.warning("Could not open THM file for %s", full_file_name) - thumbnail = add_filmstrip(thumbnail) - image = pixbuf_to_image(thumbnail) + logger.error("Could not open THM file for %s", full_file_name) + logger.error("Thumbnail file is %s", thm_full_name) + image = None + else: + thumbnail = add_filmstrip(thumbnail) + image = pixbuf_to_image(thumbnail) if image is None: try: @@ -299,13 +287,13 @@ class Thumbnail: logger.debug("...got thumbnail for %s", full_file_name) return (thumbnail, thumbnail_icon) - def get_thumbnail(self, full_file_name, file_type, size_max=None, size_reduced=None): + def get_thumbnail(self, full_file_name, thm_full_name, file_type, size_max=None, size_reduced=None): logger.debug("Getting thumbnail for %s...", full_file_name) if file_type == rpdfile.FILE_TYPE_PHOTO: logger.debug("file type is photo") return self._get_photo_thumbnail(full_file_name, size_max, size_reduced) else: - return self._get_video_thumbnail(full_file_name, size_max, size_reduced) + return self._get_video_thumbnail(full_file_name, thm_full_name, size_max, size_reduced) class GetPreviewImage(multiprocessing.Process): @@ -332,8 +320,8 @@ class GetPreviewImage(multiprocessing.Process): def run(self): while True: - unique_id, full_file_name, file_type, size_max = self.results_pipe.recv() - full_size_preview, reduced_size_preview = self.thumbnail_maker.get_thumbnail(full_file_name, file_type, size_max=size_max, size_reduced=(100,100)) + unique_id, full_file_name, thm_full_name, file_type, size_max = self.results_pipe.recv() + full_size_preview, reduced_size_preview = self.thumbnail_maker.get_thumbnail(full_file_name, thm_full_name, file_type, size_max=size_max, size_reduced=(100,100)) if full_size_preview is None: full_size_preview = self.get_stock_image(file_type) self.results_pipe.send((unique_id, full_size_preview, reduced_size_preview)) @@ -369,9 +357,9 @@ class GenerateThumbnails(multiprocessing.Process): logger.info("Terminating thumbnailing") return None - thumbnail, thumbnail_icon = self.thumbnail_maker.get_thumbnail( f.full_file_name, + f.thm_full_name, f.file_type, (160, 120), (100,100)) -- cgit v1.2.3