summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Valroff <julien@kirya.net>2013-10-23 11:48:21 +0200
committerJulien Valroff <julien@kirya.net>2013-10-23 11:48:21 +0200
commite4926afd94329126adacce416fa8cf9daa32673b (patch)
tree69f107ed594fe3de037c59aeb870fa9ff77f23aa
parent063aca3a12dbf69d5ecdd2e949a788e01c91659d (diff)
Imported Upstream version 0.4.7upstream/0.4.7
-rw-r--r--PKG-INFO4
-rw-r--r--data/kde/rapid-photo-downloader.desktop12
-rw-r--r--po/be.po1863
-rw-r--r--po/rapid-photo-downloader.pot222
-rw-r--r--po/sv.po288
-rw-r--r--po/uk.po1928
-rw-r--r--rapid/ChangeLog29
-rw-r--r--rapid/backupfile.py29
-rw-r--r--rapid/config.py2
-rw-r--r--rapid/copyfiles.py107
-rw-r--r--rapid/generatename.py33
-rw-r--r--rapid/glade3/about.ui3
-rw-r--r--rapid/misc.py14
-rw-r--r--rapid/preferencesdialog.py28
-rwxr-xr-xrapid/rapid.py54
-rw-r--r--rapid/rpdfile.py153
-rwxr-xr-xrapid/scan.py128
-rw-r--r--rapid/subfolderfile.py91
-rw-r--r--setup.py15
19 files changed, 3384 insertions, 1619 deletions
diff --git a/PKG-INFO b/PKG-INFO
index 3800df0..93c882e 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: rapid-photo-downloader
-Version: 0.4.6
+Version: 0.4.7
Summary: Rapid Photo Downloader for Linux
Home-page: http://www.damonlynch.net/rapid
Author: Damon Lynch
@@ -8,7 +8,7 @@ Author-email: damonlynch@gmail.com
License: GPL
Description: Rapid Photo Downloader is written by a photographer for professional and
amateur photographers. It can download photos and videos from multiple
- cameras, memory cards and Portable Storage Devices simultaneously. It
+ cameras, memory cards and Portable Storage Devices simultaneously. It
provides many flexible, user-defined options for subfolder creation,
photo and video renaming, and backup.
diff --git a/data/kde/rapid-photo-downloader.desktop b/data/kde/rapid-photo-downloader.desktop
new file mode 100644
index 0000000..cd89692
--- /dev/null
+++ b/data/kde/rapid-photo-downloader.desktop
@@ -0,0 +1,12 @@
+[Desktop Entry]
+X-KDE-Solid-Predicate=[ StorageVolume.ignored == false AND StorageVolume.usage == 'FileSystem' ]
+Type=Service
+Actions=exec;
+
+[Desktop Action exec]
+# %f gives StorageAccess.filePath, %d gives Block.device, %i gives UDI
+Exec=/usr/bin/rapid-photo-downloader
+Icon=/usr/share/pixmaps/rapid-photo-downloader.png
+Name=Download Photos with Rapid Photo Downloader
+Name[fr]=Téléchargement de photos avec Rapid Photo Downloader
+
diff --git a/po/be.po b/po/be.po
new file mode 100644
index 0000000..3e40e2f
--- /dev/null
+++ b/po/be.po
@@ -0,0 +1,1863 @@
+# Belarusian translation for rapid
+# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
+# This file is distributed under the same license as the rapid package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: rapid\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-06-23 04:00-0500\n"
+"PO-Revision-Date: 2013-02-24 09:11+0000\n"
+"Last-Translator: Ilya Tsimokhin <Unknown>\n"
+"Language-Team: Belarusian <be@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2013-08-26 05:21+0000\n"
+"X-Generator: Launchpad (build 16738)\n"
+
+#. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html
+#: rapid/rapid.py:112 rapid/rapid.py:1784 rapid/glade3/rapid.ui.h:1
+msgid "Rapid Photo Downloader"
+msgstr ""
+
+#: rapid/rapid.py:117
+#, python-format
+msgid ""
+"%(date)s\n"
+"%(time)s"
+msgstr ""
+
+#: rapid/rapid.py:119
+#, python-format
+msgid "%(date)s %(time)s"
+msgstr ""
+
+#: rapid/rapid.py:122
+#, 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:157
+msgid "Device"
+msgstr "Прылада"
+
+#. Size refers to the total size of images on the device, typically in
+#. MB or GB
+#: rapid/rapid.py:175
+msgid "Size"
+msgstr "Памер"
+
+#: rapid/rapid.py:178
+msgid "Download Progress"
+msgstr "Сцягванне"
+
+#: rapid/rapid.py:336
+#, python-format
+msgid "%(device)s did not unmount"
+msgstr "%(device)s не адмантаваны"
+
+#. 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:1216
+msgid "scanning..."
+msgstr "пошук..."
+
+#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s
+#: rapid/rapid.py:1782
+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:1786
+#, python-format
+msgid "Downloading from %(location)s."
+msgstr "Сцягванне з %(location)s."
+
+#: rapid/rapid.py:1787
+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:2209
+msgid "Download"
+msgstr "Сцягнуць"
+
+#: rapid/rapid.py:2212
+msgid "Pause"
+msgstr "Прыпыніць"
+
+#: rapid/rapid.py:2317
+#, python-format
+msgid ""
+"These download folders are invalid:\n"
+"%(folder1)s\n"
+"%(folder2)s"
+msgstr ""
+
+#: rapid/rapid.py:2320
+#, python-format
+msgid ""
+"This download folder is invalid:\n"
+"%s"
+msgstr ""
+
+#: rapid/rapid.py:2321
+msgid "Download cannot proceed"
+msgstr "Немагчыма сцянуць"
+
+#: rapid/rapid.py:2700
+msgid "About 1 second remaining"
+msgstr "Засталося каля секунды"
+
+#: rapid/rapid.py:2702
+#, python-format
+msgid "About %i seconds remaining"
+msgstr "Засталося каля %i секунд"
+
+#: rapid/rapid.py:2704
+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:2709
+#, python-format
+msgid "About %(minutes)i:%(seconds)02i minutes remaining"
+msgstr "Засталося каля %(minutes)i:%(seconds)i"
+
+#: rapid/rapid.py:2731 rapid/rpdfile.py:123
+msgid "photos and videos"
+msgstr "здымкі і відэа"
+
+#: rapid/rapid.py:2733 rapid/rpdfile.py:125
+msgid "photos or videos"
+msgstr "здымкі або відэа"
+
+#: rapid/rapid.py:2736 rapid/rapid.py:3558 rapid/rpdfile.py:128
+msgid "videos"
+msgstr "відэа"
+
+#: rapid/rapid.py:2738 rapid/preferencesdialog.py:1620 rapid/rpdfile.py:130
+#: rapid/rpdfile.py:291
+msgid "video"
+msgstr "відэа"
+
+#: rapid/rapid.py:2741 rapid/rapid.py:3556 rapid/rpdfile.py:133
+msgid "photos"
+msgstr "здымкі"
+
+#. check subfolder preferences for bad values
+#: rapid/rapid.py:2743 rapid/preferencesdialog.py:1619 rapid/rpdfile.py:135
+#: rapid/rpdfile.py:272
+msgid "photo"
+msgstr "здымкі"
+
+#: rapid/rapid.py:2770
+#, python-format
+msgid "%(noFiles)s %(filetypes)s downloaded"
+msgstr "%(noFiles)s %(filetypes)s сцягнуты"
+
+#: rapid/rapid.py:2774
+#, python-format
+msgid "%(noFiles)s %(filetypes)s failed to download"
+msgstr "%(noFiles)s %(filetypes)s не атрымалася сцягнуць"
+
+#: rapid/rapid.py:2777 rapid/rapid.py:2829
+msgid "warnings"
+msgstr "папярэджанні"
+
+#: rapid/rapid.py:2786
+msgid "All downloads complete"
+msgstr "Усе сцягванні скончаны"
+
+#: rapid/rapid.py:2792 rapid/rapid.py:2801 rapid/rapid.py:2810
+#: rapid/rapid.py:2819 rapid/rapid.py:2827
+#, python-format
+msgid "%(number)s %(numberdownloaded)s"
+msgstr "%(number)s %(numberdownloaded)s"
+
+#: rapid/rapid.py:2794 rapid/rapid.py:2812
+#, python-format
+msgid "%(filetype)s downloaded"
+msgstr "%(filetype)s сцягнуты"
+
+#: rapid/rapid.py:2803 rapid/rapid.py:2821
+#, python-format
+msgid "%(filetype)s failed to download"
+msgstr "%(filetype)s не атрымалася сцягнуць"
+
+#. e.g.: 3 of 205 photos and videos (202 remaining)
+#: rapid/rapid.py:2860
+#, 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:2867
+#, python-format
+msgid "%(number)s of %(total)s %(filetypes)s"
+msgstr "%(number)s з %(total)s %(filetypes)s"
+
+#: rapid/rapid.py:3222
+msgid "From"
+msgstr "Адкуль"
+
+#: rapid/rapid.py:3230
+msgid "Auto Detect"
+msgstr "Аўта вызначэнне"
+
+#: rapid/rapid.py:3234 rapid/preferencesdialog.py:1327
+#, python-format
+msgid "Select a folder containing %(file_types)s"
+msgstr "Выбраць папку з %(file_types)s"
+
+#: rapid/rapid.py:3275
+msgid "Copy"
+msgstr "Капіяваць"
+
+#: rapid/rapid.py:3288
+msgid "Move"
+msgstr "Перанесці"
+
+#: rapid/rapid.py:3310
+msgid "To"
+msgstr ""
+
+#: rapid/rapid.py:3317 rapid/rapid.py:3986
+msgid "Photos:"
+msgstr "Здымкі:"
+
+#: rapid/rapid.py:3320 rapid/preferencesdialog.py:1164
+msgid "Select a folder to download photos to"
+msgstr "Выбярыце папку, куды сцягнуць здымкі"
+
+#: rapid/rapid.py:3332 rapid/rapid.py:3986
+msgid "Videos:"
+msgstr "Відэа:"
+
+#: rapid/rapid.py:3334 rapid/preferencesdialog.py:1182
+msgid "Select a folder to download videos to"
+msgstr "Выбярыце папку, куды сцягнуць відэа"
+
+#: rapid/rapid.py:3526
+msgid "and"
+msgstr "і"
+
+#: rapid/rapid.py:3531
+msgid "Using backup devices"
+msgstr ""
+
+#: rapid/rapid.py:3533
+msgid "Using backup device"
+msgstr ""
+
+#: rapid/rapid.py:3535
+msgid "No backup devices detected"
+msgstr ""
+
+#: rapid/rapid.py:3562
+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:3574
+#, 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:3578
+#, python-format
+msgid "%(free)s %(file_type)s"
+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:3583
+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:3588
+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:3594
+#, python-format
+msgid "%(free)s free"
+msgstr ""
+
+#. user manually specified the same location for photos and video backups
+#: rapid/rapid.py:3602
+#, python-format
+msgid "Backing up photos and videos to %(path)s"
+msgstr ""
+
+#. user manually specified backup location
+#: rapid/rapid.py:3605
+#, python-format
+msgid "Backing up to %(path)s"
+msgstr ""
+
+#. user manually specified different locations for photo and video backups
+#: rapid/rapid.py:3608
+#, python-format
+msgid "Backing up photos to %(path)s and videos to %(path2)s"
+msgstr ""
+
+#: rapid/rapid.py:3615
+#, python-format
+msgid "%(freespace)s. %(backuppaths)s."
+msgstr ""
+
+#: rapid/rapid.py:3644
+msgid "Program preferences are invalid"
+msgstr ""
+
+#: rapid/rapid.py:3770 rapid/rpdfile.py:273
+msgid "Photo"
+msgstr "Здымак"
+
+#: rapid/rapid.py:3772 rapid/rpdfile.py:292
+msgid "Video"
+msgstr "Відэа"
+
+#: rapid/rapid.py:3781
+#, python-format
+msgid "%(file_type)s download folder does not exist"
+msgstr ""
+
+#: rapid/rapid.py:3783 rapid/rapid.py:3797 rapid/rapid.py:3810
+#, python-format
+msgid "Folder: %s"
+msgstr "Папкі: %s"
+
+#: rapid/rapid.py:3795
+#, python-format
+msgid "%(file_type)s download folder is invalid"
+msgstr ""
+
+#: rapid/rapid.py:3808
+#, python-format
+msgid "%(file_type)s download folder is not writable"
+msgstr ""
+
+#: rapid/rapid.py:3894
+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:3949
+#, python-format
+msgid ""
+"display program information on the command line as the program runs "
+"(default: %default)"
+msgstr ""
+
+#: rapid/rapid.py:3950
+msgid "display debugging information when run from the command line"
+msgstr ""
+
+#: rapid/rapid.py:3951
+msgid "only output errors to the command line"
+msgstr ""
+
+#. image file extensions are recognized RAW files plus TIFF and JPG
+#: rapid/rapid.py:3953
+msgid "list photo and video file extensions the program recognizes and exit"
+msgstr ""
+
+#: rapid/rapid.py:3955
+msgid ""
+"automatically detect devices from which to download, overwriting existing "
+"program preferences"
+msgstr ""
+
+#: rapid/rapid.py:3956
+msgid ""
+"manually specify the PATH of the device from which to download, overwriting "
+"existing program preferences"
+msgstr ""
+
+#: rapid/rapid.py:3957
+msgid "reset all program settings and preferences and exit"
+msgstr "Скінуць усе наладкі і выйсці"
+
+#: rapid/rapid.py:3970
+msgid ""
+"Error: specify device auto-detection or manually specify a device's path "
+"from which to download, but do not do both."
+msgstr ""
+
+#: rapid/rapid.py:3991
+#, python-format
+msgid "and %s"
+msgstr "і %s"
+
+#: rapid/rapid.py:3999
+msgid "All settings and preferences have been reset"
+msgstr "Усе наладкі былі скінуты"
+
+#: rapid/backupfile.py:157 rapid/backupfile.py:180
+msgid "Backing up error"
+msgstr ""
+
+#: rapid/backupfile.py:159
+#, python-format
+msgid "Destination directory could not be created: %(directory)s\n"
+msgstr ""
+
+#: rapid/backupfile.py:161 rapid/backupfile.py:182 rapid/subfolderfile.py:199
+#, python-format
+msgid ""
+"Source: %(source)s\n"
+"Destination: %(destination)s"
+msgstr ""
+
+#: rapid/backupfile.py:164 rapid/backupfile.py:184
+#, python-format
+msgid "Error: %(inst)s"
+msgstr "Памылка: %(inst)s"
+
+#: rapid/copyfiles.py:163 rapid/subfolderfile.py:214
+#: rapid/subfolderfile.py:347 rapid/subfolderfile.py:365
+#, python-format
+msgid ""
+"%(problem)s\n"
+"File: %(file)s"
+msgstr ""
+"%(problem)s\n"
+"Файл: %(file)s"
+
+#: rapid/device.py:80
+msgid "Device Detected"
+msgstr "Знойдзена прылада"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt
+#: rapid/device.py:89
+msgid ""
+"Should this device or partition be used to download photos or videos from?"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt
+#: rapid/device.py:108
+msgid "_Remember this choice"
+msgstr ""
+
+#: rapid/downloadtracker.py:299
+msgid "MB/s"
+msgstr "МБ/с"
+
+#: rapid/generatenameconfig.py:151
+msgid "Date time"
+msgstr "Дата/час"
+
+#: rapid/generatenameconfig.py:152
+msgid "Text"
+msgstr "Тэкст"
+
+#: rapid/generatenameconfig.py:153
+msgid "Filename"
+msgstr "Назва файла"
+
+#: rapid/generatenameconfig.py:154
+msgid "Metadata"
+msgstr ""
+
+#: rapid/generatenameconfig.py:155
+msgid "Sequences"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode
+#: rapid/generatenameconfig.py:157 rapid/preferencesdialog.py:577
+msgid "Job code"
+msgstr ""
+
+#: rapid/generatenameconfig.py:158
+msgid "Image date"
+msgstr ""
+
+#: rapid/generatenameconfig.py:159
+msgid "Video date"
+msgstr ""
+
+#: rapid/generatenameconfig.py:160
+msgid "Today"
+msgstr "Сёння"
+
+#: rapid/generatenameconfig.py:161
+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:163
+msgid "Download time"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:165
+msgid "Name + extension"
+msgstr "Назва + пашырэнне"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:167
+msgid "Name"
+msgstr "Назва"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:169
+msgid "Extension"
+msgstr "Пашырэнне"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:171
+msgid "Image number"
+msgstr "Нумар здымка"
+
+#: rapid/generatenameconfig.py:172
+msgid "Video number"
+msgstr "Нумар відэа"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:174
+msgid "Aperture"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:176
+msgid "ISO"
+msgstr "ISO"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:178
+msgid "Exposure time"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:180
+msgid "Focal length"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:182
+msgid "Camera make"
+msgstr "Вытворца камеры"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:184
+msgid "Camera model"
+msgstr "Мадэль камеры"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:186
+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:188
+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:190
+msgid "Serial number"
+msgstr "Серыйны нумар"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
+#: rapid/generatenameconfig.py:192
+msgid "Shutter count"
+msgstr ""
+
+#. File number currently refers to the Exif value Exif.Canon.FileNumber
+#: rapid/generatenameconfig.py:194
+msgid "File number"
+msgstr ""
+
+#. Only the folder component of the Exif.Canon.FileNumber value
+#: rapid/generatenameconfig.py:196
+msgid "Folder only"
+msgstr ""
+
+#. The folder and file component of the Exif.Canon.FileNumber value
+#: rapid/generatenameconfig.py:198
+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:200
+msgid "Owner name"
+msgstr "Імя ўладальніка"
+
+#: rapid/generatenameconfig.py:201
+msgid "Codec"
+msgstr "Кодэк"
+
+#: rapid/generatenameconfig.py:202
+msgid "Width"
+msgstr "Шырыня"
+
+#: rapid/generatenameconfig.py:203
+msgid "Height"
+msgstr "Вышыня"
+
+#: rapid/generatenameconfig.py:204
+msgid "Length"
+msgstr ""
+
+#: rapid/generatenameconfig.py:205
+msgid "Frames Per Second"
+msgstr "Кадраў за секунду"
+
+#: rapid/generatenameconfig.py:206
+msgid "Artist"
+msgstr "Артыст"
+
+#: rapid/generatenameconfig.py:207
+msgid "Copyright"
+msgstr "Аўтарскія правы"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers
+#: rapid/generatenameconfig.py:209
+msgid "Downloads today"
+msgstr "Сцягнута сёння"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers
+#: rapid/generatenameconfig.py:211
+msgid "Session number"
+msgstr "Нумар сеанса"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers
+#: rapid/generatenameconfig.py:213
+msgid "Subfolder number"
+msgstr "Нумар падпапкі"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers
+#: rapid/generatenameconfig.py:215
+msgid "Stored number"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters
+#: rapid/generatenameconfig.py:217
+msgid "Sequence letter"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:219
+msgid "All digits"
+msgstr "Усе лічбы"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:221
+msgid "Last digit"
+msgstr "Апошняя лічба"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:223
+msgid "Last 2 digits"
+msgstr "Апошнія 2 лічбы"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:225
+msgid "Last 3 digits"
+msgstr "Апошнія 3 лічбы"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
+#: rapid/generatenameconfig.py:227
+msgid "Last 4 digits"
+msgstr "Апошнія 4 лічбы"
+
+#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization
+#: rapid/generatenameconfig.py:229
+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:231
+msgid "UPPERCASE"
+msgstr "ВЯЛІКІЯ ЛІТАРЫ"
+
+#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization
+#: rapid/generatenameconfig.py:233
+msgid "lowercase"
+msgstr "малыя літары"
+
+#: rapid/generatenameconfig.py:234
+msgid "One digit"
+msgstr "Адна лічба"
+
+#: rapid/generatenameconfig.py:235
+msgid "Two digits"
+msgstr "Дзве лічбы"
+
+#: rapid/generatenameconfig.py:236
+msgid "Three digits"
+msgstr "Тры лічбы"
+
+#: rapid/generatenameconfig.py:237
+msgid "Four digits"
+msgstr "Чатыры лічбы"
+
+#: rapid/generatenameconfig.py:238
+msgid "Five digits"
+msgstr "Пяць лічбаў"
+
+#: rapid/generatenameconfig.py:239
+msgid "Six digits"
+msgstr "Шэсць лічбаў"
+
+#: rapid/generatenameconfig.py:240
+msgid "Seven digits"
+msgstr "Сем лічбаў"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:242
+msgid "Subseconds"
+msgstr ""
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:244
+msgid "YYYYMMDD"
+msgstr "ГГГГММДД"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:246
+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:248
+msgid "YYMMDD"
+msgstr "ГГММДД"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:250
+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:252
+msgid "MMDDYYYY"
+msgstr "ММДДГГГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:254
+msgid "MMDDYY"
+msgstr "ММДДГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:256
+msgid "MMDD"
+msgstr "ММДД"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:258
+msgid "DDMMYYYY"
+msgstr "ДДММГГГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:260
+msgid "DDMMYY"
+msgstr "ДДММГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:262
+msgid "YYYY"
+msgstr "ГГГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:264
+msgid "YY"
+msgstr "ГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:266
+msgid "MM"
+msgstr "ММ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:268
+msgid "DD"
+msgstr "ДД"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:270
+msgid "Month (full)"
+msgstr "Месяц (цалкам)"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:272
+msgid "Month (abbreviated)"
+msgstr "Месяц (скарочана)"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:274
+msgid "HHMMSS"
+msgstr "ГГХХСС"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:276
+msgid "HHMM"
+msgstr "ГГХХ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:278
+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:280
+msgid "HH-MM"
+msgstr "ГГ-ХХ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:282
+msgid "HH"
+msgstr "ГГ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:284
+msgid "MM (minutes)"
+msgstr "ХХ"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:286
+msgid "SS"
+msgstr "СС"
+
+#: rapid/preferencesdialog.py:374
+#, python-format
+msgid "Subfolder preferences should not start with a %s"
+msgstr ""
+
+#: rapid/preferencesdialog.py:376
+#, python-format
+msgid "Subfolder preferences should not end with a %s"
+msgstr ""
+
+#: rapid/preferencesdialog.py:380
+#, python-format
+msgid "Subfolder preferences should not contain two %s one after the other"
+msgstr ""
+
+#: rapid/preferencesdialog.py:439 rapid/preferencesdialog.py:700
+msgid "Remove all Job Codes?"
+msgstr "Выдаліць усе цэтлікі?"
+
+#: rapid/preferencesdialog.py:440 rapid/preferencesdialog.py:717
+msgid "Should all Job Codes be removed?"
+msgstr "Трэба выдаліць усе цэтлікі?"
+
+#: rapid/preferencesdialog.py:446
+msgid "Remove all Remembered Paths?"
+msgstr ""
+
+#: rapid/preferencesdialog.py:447
+msgid "Should all remembered paths be removed?"
+msgstr ""
+
+#: rapid/preferencesdialog.py:453
+msgid "Remove all Ignored Paths?"
+msgstr ""
+
+#: rapid/preferencesdialog.py:454
+msgid "Should all ignored paths be removed?"
+msgstr ""
+
+#: rapid/preferencesdialog.py:465
+msgid "Error in Photo Rename preferences"
+msgstr "Памылка ў наладках назваў здымкаў"
+
+#: rapid/preferencesdialog.py:645
+msgid "Error in Video Rename preferences"
+msgstr "Памылка ў наладках назваў відэа"
+
+#: rapid/preferencesdialog.py:666
+msgid "Error in Photo Download Subfolders preferences"
+msgstr ""
+
+#: rapid/preferencesdialog.py:683
+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:742
+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:758
+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:761
+msgid "Enter a new Job Code"
+msgstr "Увядзіце новы цэтлік"
+
+#: rapid/preferencesdialog.py:766
+msgid "Job Code:"
+msgstr "Цэтлікі:"
+
+#: rapid/preferencesdialog.py:822
+msgid "Enter a Path to Ignore"
+msgstr ""
+
+#: rapid/preferencesdialog.py:834
+msgid "Specify a path that will never be scanned for photos or videos"
+msgstr ""
+
+#: rapid/preferencesdialog.py:839
+msgid "Path:"
+msgstr ""
+
+#: rapid/preferencesdialog.py:1082
+msgid "Job Code"
+msgstr "Цэтлікі"
+
+#: rapid/preferencesdialog.py:1353
+msgid "Select a folder in which to backup photos"
+msgstr ""
+
+#: rapid/preferencesdialog.py:1366
+msgid "Select a folder in which to backup videos"
+msgstr ""
+
+#. Translators: please do not modify or leave out html formatting tags like <i> and <b>. These are used to format the text the users sees
+#: rapid/preferencesdialog.py:1461
+msgid ""
+"<i><b>Warning:</b> There is insufficient metadata to fully generate the "
+"name. Please use other renaming options.</i>"
+msgstr ""
+
+#: rapid/preferencesdialog.py:1512
+msgid ""
+"<i><b>Warning:</b> There is insufficient metadata to fully generate "
+"subfolders. Please use other subfolder naming options.</i>"
+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:1515
+#, python-format
+msgid "<i>Example: %s</i>"
+msgstr "<i>Прыклад: %s</i>"
+
+#. Preferences list is now empty
+#: rapid/preferencesdialog.py:1605
+#, python-format
+msgid ""
+"The %(filetype)s subfolder preferences entered are invalid and cannot be "
+"used.\n"
+"They will be reset to their default values."
+msgstr ""
+
+#: rapid/preferencesdialog.py:1750
+#, python-format
+msgid ""
+"The following regular expressions are invalid, and will be removed unless "
+"you correct them:\n"
+" %s"
+msgstr ""
+
+#: rapid/preferencesdialog.py:1752
+#, python-format
+msgid ""
+"This regular expression is invalid, and will be removed unless you correct "
+"it:\n"
+" %s"
+msgstr ""
+
+#: rapid/preferencesdialog.py:1753
+msgid "Invalid regular expression"
+msgstr ""
+
+#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this.
+#: rapid/preferencesdialog.py:1934
+msgid "externaldrive1"
+msgstr ""
+
+#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this.
+#: rapid/preferencesdialog.py:1936
+msgid "externaldrive2"
+msgstr ""
+
+#: rapid/prefsrapid.py:127
+msgid "New York"
+msgstr "Нью-Ёрк"
+
+#: rapid/prefsrapid.py:128
+msgid "Manila"
+msgstr "Маніла"
+
+#: rapid/prefsrapid.py:128
+msgid "Prague"
+msgstr "Прага"
+
+#: rapid/prefsrapid.py:128
+msgid "Helsinki"
+msgstr "Хельсінкі"
+
+#: rapid/prefsrapid.py:128
+msgid "Wellington"
+msgstr "Ўэлінгтон"
+
+#: rapid/prefsrapid.py:129
+msgid "Tehran"
+msgstr "Тэгеран"
+
+#: rapid/prefsrapid.py:129
+msgid "Kampala"
+msgstr "Кампала"
+
+#: rapid/prefsrapid.py:129
+msgid "Paris"
+msgstr "Парыж"
+
+#: rapid/prefsrapid.py:129
+msgid "Berlin"
+msgstr "Бэрлін"
+
+#: rapid/prefsrapid.py:129
+msgid "Sydney"
+msgstr "Сіднэй"
+
+#: rapid/prefsrapid.py:130
+msgid "Budapest"
+msgstr "Будапешт"
+
+#: rapid/prefsrapid.py:130
+msgid "Rome"
+msgstr "Рым"
+
+#: rapid/prefsrapid.py:130
+msgid "Moscow"
+msgstr "Масква"
+
+#: rapid/prefsrapid.py:130
+msgid "Delhi"
+msgstr "Дэлі"
+
+#: rapid/prefsrapid.py:130
+msgid "Warsaw"
+msgstr "Варшава"
+
+#: rapid/prefsrapid.py:131
+msgid "Jakarta"
+msgstr "Джакарта"
+
+#: rapid/prefsrapid.py:131
+msgid "Madrid"
+msgstr "Мадрыд"
+
+#: rapid/prefsrapid.py:131
+msgid "Stockholm"
+msgstr "Стакгольм"
+
+#. components
+#: rapid/problemnotification.py:27 rapid/subfolderfile.py:358
+msgid "subfolder"
+msgstr "падпапка"
+
+#: rapid/problemnotification.py:28 rapid/subfolderfile.py:356
+msgid "filename"
+msgstr "назва файла"
+
+#: rapid/problemnotification.py:81
+#, python-format
+msgid "Date time value %s appears invalid."
+msgstr ""
+
+#: rapid/problemnotification.py:82
+msgid "Filename does not have an extension."
+msgstr "Адсутнічае пашырэнне."
+
+#. a number component is something like the 8346 in IMG_8346.JPG
+#: rapid/problemnotification.py:84
+msgid "Filename does not have a number component."
+msgstr "Адсутнічае нумар."
+
+#: rapid/problemnotification.py:85
+#, python-format
+msgid "Error generating component %s."
+msgstr ""
+
+#. a generic problem
+#: rapid/problemnotification.py:87
+#, python-format
+msgid "%(filetype)s metadata cannot be read"
+msgstr ""
+
+#: rapid/problemnotification.py:89
+#, python-format
+msgid "%(filetype)s %(area)s could not be generated"
+msgstr ""
+
+#: rapid/problemnotification.py:91 rapid/problemnotification.py:92
+#, python-format
+msgid "An error occurred when copying the %(filetype)s"
+msgstr "Памылка капіявання %(filetype)s"
+
+#: rapid/problemnotification.py:94 rapid/problemnotification.py:95
+#, python-format
+msgid "%(filetype)s already exists"
+msgstr "%(filetype)s ужо існуе"
+
+#: rapid/problemnotification.py:98
+#, python-format
+msgid ""
+"%(filetype)s could not be backed up because no suitable backup locations "
+"were found."
+msgstr ""
+
+#: rapid/problemnotification.py:103
+#, 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 ""
+"%(image1)s быў зняты %(image1_date)s а %(image1_time)s, і %(image2)s зняты "
+"%(image2_date)s а %(image2_time)s."
+
+#: rapid/problemnotification.py:104
+#, python-format
+msgid "%(filetype)s was already downloaded"
+msgstr "%(filetype)s ужо сцягнуты"
+
+#: rapid/problemnotification.py:108
+#, python-format
+msgid ""
+"The existing %(filetype)s was last modified on %(date)s at %(time)s. Unique "
+"identifier '%(identifier)s' added."
+msgstr ""
+
+#: rapid/problemnotification.py:109
+#, python-format
+msgid "The existing %(filetype)s was last modified on %(date)s at %(time)s."
+msgstr "Існуючы %(filetype)s быў зменены %(date)s а %(time)s."
+
+#: rapid/problemnotification.py:110
+#, python-format
+msgid "There is no data with which to name the %(filetype)s."
+msgstr ""
+
+#: rapid/problemnotification.py:112
+#, python-format
+msgid "Error: %(errorno)s %(strerror)s"
+msgstr "Памылка: %(errorno)s %(strerror)s"
+
+#: rapid/problemnotification.py:202
+msgid "The metadata might be corrupt."
+msgstr ""
+
+#: rapid/problemnotification.py:205
+msgid ""
+"The filename, extension and Exif information indicate it has already been "
+"downloaded."
+msgstr "Назва файла, пашырэнне і EXIF сведчаць, што здымак ужо сцягнуты."
+
+#: rapid/problemnotification.py:224
+#, python-format
+msgid " It was backed up to %(volume)s"
+msgstr ""
+
+#: rapid/problemnotification.py:226
+msgid " It was backed up to these devices: "
+msgstr ""
+
+#: rapid/problemnotification.py:228 rapid/problemnotification.py:289
+#: rapid/problemnotification.py:301
+#, python-format
+msgid "%s, "
+msgstr "%s, "
+
+#: rapid/problemnotification.py:229 rapid/problemnotification.py:290
+#: rapid/problemnotification.py:302
+#, python-format
+msgid "%(volumes)s and %(final_volume)s."
+msgstr "%(volumes)s і %(final_volume)s."
+
+#: rapid/problemnotification.py:241
+#, python-format
+msgid ""
+"Photos detected with the same filenames, but taken at different times: "
+"%(details)s"
+msgstr "Знойдзены здымкі з той жа назвай, але знятыя ў розны час %(details)s"
+
+#: rapid/problemnotification.py:258
+#, python-format
+msgid "An error occurred when backing up on %(volume)s: %(inst)s."
+msgstr ""
+
+#: rapid/problemnotification.py:260
+#, python-format
+msgid "An error occurred when backing up on %(volume)s."
+msgstr ""
+
+#: rapid/problemnotification.py:262
+msgid "Errors occurred when backing up on the following backup devices: "
+msgstr ""
+
+#: rapid/problemnotification.py:266 rapid/problemnotification.py:314
+#, python-format
+msgid "%(volume)s (%(inst)s), "
+msgstr "%(volume)s (%(inst)s), "
+
+#: rapid/problemnotification.py:268
+#, python-format
+msgid "%(volume)s, "
+msgstr "%(volume)s, "
+
+#: rapid/problemnotification.py:272 rapid/problemnotification.py:316
+#, python-format
+msgid "%(volumes)s and %(volume)s (%(inst)s)."
+msgstr "%(volumes)s і %(volume)s (%(inst)s)."
+
+#: rapid/problemnotification.py:277
+#, python-format
+msgid "%(volumes)s and %(volume)s."
+msgstr "%(volumes)s і %(volume)s."
+
+#: rapid/problemnotification.py:285
+#, python-format
+msgid "Backup already exists on %(volume)s."
+msgstr ""
+
+#: rapid/problemnotification.py:287
+msgid "Backups already exist in these locations: "
+msgstr ""
+
+#: rapid/problemnotification.py:297
+#, python-format
+msgid "Backup overwritten on %(volume)s."
+msgstr ""
+
+#: rapid/problemnotification.py:299
+msgid "Backups overwritten on these devices: "
+msgstr ""
+
+#: rapid/problemnotification.py:310
+#, python-format
+msgid "An error occurred when creating directories on %(volume)s: %(inst)s."
+msgstr "Памылка стварэння папкі на %(volume)s: %(inst)s."
+
+#: rapid/problemnotification.py:312
+msgid ""
+"Errors occurred when creating directories on the following backup devices: "
+msgstr ""
+
+#: rapid/problemnotification.py:323
+#, python-format
+msgid "%(previousproblem)s Additionally, %(newproblem)s"
+msgstr ""
+
+#: rapid/problemnotification.py:331
+#, python-format
+msgid " Furthermore, there were %(problems)s."
+msgstr ""
+
+#: rapid/problemnotification.py:333
+#, python-format
+msgid " Furthermore, there was a %(problem)s."
+msgstr ""
+
+#: rapid/problemnotification.py:342
+#, python-format
+msgid "The %(type)s metadata is missing."
+msgstr ""
+
+#: rapid/problemnotification.py:344
+msgid "The following metadata is missing: "
+msgstr ""
+
+#: rapid/problemnotification.py:347
+#, python-format
+msgid "%(missing_metadata_elements)s and %(final_missing_metadata_element)s."
+msgstr ""
+
+#: rapid/problemnotification.py:364
+msgid "Problems in subfolder and filename generation"
+msgstr ""
+
+#: rapid/problemnotification.py:366
+msgid "Problem in subfolder and filename generation"
+msgstr ""
+
+#: rapid/problemnotification.py:369
+#, python-format
+msgid "Problems in %s generation"
+msgstr "Праблемы пры стварэнні %s"
+
+#: rapid/problemnotification.py:371
+#, python-format
+msgid "Problem in %s generation"
+msgstr "Праблема пры стварэнні %s"
+
+#: rapid/problemnotification.py:380
+#, python-format
+msgid "%(filetype)s already exists, but it was backed up"
+msgstr ""
+
+#: rapid/problemnotification.py:382
+#, python-format
+msgid "An error occurred when copying the %(filetype)s, but it was backed up"
+msgstr ""
+
+#: rapid/problemnotification.py:402
+msgid "Multiple problems were encountered"
+msgstr ""
+
+#: rapid/problemnotification.py:404 rapid/subfolderfile.py:233
+msgid "Photos detected with the same filenames, but taken at different times"
+msgstr "Знойдзены здымкі з аднолькавай назвай, але знятыя ў розны час"
+
+#: rapid/problemnotification.py:410
+msgid "there were errors backing up"
+msgstr ""
+
+#: rapid/problemnotification.py:411
+msgid "There were errors backing up"
+msgstr ""
+
+#: rapid/problemnotification.py:413
+msgid "there was an error backing up"
+msgstr ""
+
+#: rapid/problemnotification.py:414
+msgid "There was an error backing up"
+msgstr ""
+
+#. e.g.
+#: rapid/problemnotification.py:417
+#, python-format
+msgid "%(previousproblem)s, and %(backinguperror)s"
+msgstr ""
+
+#: rapid/rpdfile.py:153
+#, python-format
+msgid "%(number)s %(filetypes)s"
+msgstr "%(number)s %(filetypes)s"
+
+#: rapid/rpdfile.py:163
+#, python-format
+msgid "scanning (found %(photos)s photos and %(videos)s videos)..."
+msgstr "пошук (знойдзена %(photos)s здымкаў і %(videos)s відэа)..."
+
+#: rapid/subfolderfile.py:80
+#, python-format
+msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s"
+msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s"
+
+#: rapid/subfolderfile.py:301
+msgid "Photo has already been downloaded"
+msgstr "Фота ўжо было сцягнута"
+
+#: rapid/subfolderfile.py:302
+#, python-format
+msgid "Source: %(source)s"
+msgstr "Крыніца: %(source)s"
+
+#: rapid/subfolderfile.py:354
+msgid "subfolder and filename"
+msgstr "падпапка і назва файла"
+
+#: rapid/subfolderfile.py:393
+msgid "Failed to create download subfolder"
+msgstr ""
+
+#: rapid/subfolderfile.py:394
+#, python-format
+msgid "Path: %s"
+msgstr ""
+
+#: rapid/glade3/rapid.ui.h:2
+msgid "_File"
+msgstr "_Файл"
+
+#: rapid/glade3/rapid.ui.h:3
+msgid "Download / Pause"
+msgstr "Сцягваць / Прыпыніць"
+
+#: rapid/glade3/rapid.ui.h:4
+msgid "_Select"
+msgstr "_Выбраць"
+
+#: rapid/glade3/rapid.ui.h:5
+msgid "Select All Without _Job Code"
+msgstr ""
+
+#: rapid/glade3/rapid.ui.h:6
+msgid "Select All Wit_h Job Code"
+msgstr ""
+
+#: rapid/glade3/rapid.ui.h:7
+msgid "_View"
+msgstr "_Прагляд"
+
+#: rapid/glade3/rapid.ui.h:8
+msgid "_Error Log"
+msgstr ""
+
+#: rapid/glade3/rapid.ui.h:9
+msgid "_Clear Completed Downloads"
+msgstr ""
+
+#: rapid/glade3/rapid.ui.h:10
+msgid "Previous File"
+msgstr "Папярэдні файл"
+
+#: rapid/glade3/rapid.ui.h:11
+msgid "Next File"
+msgstr "Наступны файл"
+
+#: rapid/glade3/rapid.ui.h:12
+msgid "_Help"
+msgstr "_Даведка"
+
+#: rapid/glade3/rapid.ui.h:13
+msgid "_Make a Donation..."
+msgstr ""
+
+#: rapid/glade3/rapid.ui.h:14
+msgid "_Translate this Application..."
+msgstr "_Перакласці праграму..."
+
+#: rapid/glade3/rapid.ui.h:15
+msgid "_Check All"
+msgstr "Пазначыць _усё"
+
+#: rapid/glade3/rapid.ui.h:16
+msgid "_Uncheck All"
+msgstr "_Зняць пазначэнне"
+
+#: rapid/glade3/rapid.ui.h:17
+msgid "_Include in download"
+msgstr "_Уключыць у сцягванне"
+
+#: rapid/glade3/rapid.ui.h:18
+msgid "_Download"
+msgstr "_Сцягнуць"
+
+#: rapid/glade3/prefs.ui.h:1
+msgid "Preferences: Rapid Photo Downloader"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:2
+msgid "<span weight=\"bold\" size=\"x-large\">Photo Download Folders</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:3
+msgid "<i>Example: /home/user/Pictures</i>"
+msgstr "<i>Прыклад: /home/user/Pictures</i>"
+
+#: rapid/glade3/prefs.ui.h:4
+msgid "<b>Download Subfolders</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:5
+msgid "Download folder:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:6
+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:7
+msgid "<b>Download Folder</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:8
+msgid "Photo Folders"
+msgstr "Папкі здымкаў"
+
+#: rapid/glade3/prefs.ui.h:9
+msgid "<span weight=\"bold\" size=\"x-large\">Photo Rename</span>\t"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:10
+msgid "<b>Photo Rename</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:11
+msgid " "
+msgstr " "
+
+#: rapid/glade3/prefs.ui.h:12
+msgid "<i>New:</i>"
+msgstr "<i>Новае:</i>"
+
+#: rapid/glade3/prefs.ui.h:13
+msgid "<i>Original:</i>"
+msgstr "<i>Арыгінал:</i>"
+
+#: rapid/glade3/prefs.ui.h:14
+msgid "<b>Example</b>"
+msgstr "<b>Прыклад</b>"
+
+#: rapid/glade3/prefs.ui.h:15
+msgid "Photo Rename"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:16
+msgid "<span weight=\"bold\" size=\"x-large\">Video Download Folders</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:17
+msgid ""
+"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>."
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:18
+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:19
+msgid "Video Folders"
+msgstr "Папкі з відэа"
+
+#: rapid/glade3/prefs.ui.h:20
+msgid "<span weight=\"bold\" size=\"x-large\">Video Rename</span>\t"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:21
+msgid "Video Rename"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:22
+msgid "<span weight=\"bold\" size=\"x-large\">Rename Options</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:23
+msgid "<b>Sequence Numbers</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:24
+msgid ""
+"Specify the time in 24 hour format at which the <i>Downloads today</i> "
+"sequence number should be reset."
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:25
+msgid "Day start:"
+msgstr "Пачатак дня:"
+
+#: rapid/glade3/prefs.ui.h:26
+msgid "Downloads today:"
+msgstr "Сцягнута сёння:"
+
+#: rapid/glade3/prefs.ui.h:27
+msgid "Stored number:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:28
+msgid ":"
+msgstr ":"
+
+#: rapid/glade3/prefs.ui.h:29
+msgid " hh:mm"
+msgstr " гг:хх"
+
+#: rapid/glade3/prefs.ui.h:30
+msgid "Synchronize RAW + JPEG sequence numbers"
+msgstr "Сінхранізаваць нумары RAW і JPEG"
+
+#: rapid/glade3/prefs.ui.h:31
+msgid "<b>Compatibility with Other Operating Systems</b>"
+msgstr "<b>Сумяшчальнасць з іншымі аперацыйнымі сістэмамі</b>"
+
+#: rapid/glade3/prefs.ui.h:32
+msgid ""
+"Specify whether photo, video and folder names should have any characters "
+"removed that are not allowed by other operating systems."
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:33
+msgid "Strip incompatible characters"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:34
+msgid "Rename Options"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:35
+msgid "<span weight=\"bold\" size=\"x-large\">Job Codes</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:36
+msgid "<b>Job Codes</b>"
+msgstr "<b>Цэтлікі</b>"
+
+#: rapid/glade3/prefs.ui.h:37
+msgid "_Add..."
+msgstr "_Дадаць…"
+
+#: rapid/glade3/prefs.ui.h:39
+msgid "R_emove All"
+msgstr "_Выдаліць усё"
+
+#: rapid/glade3/prefs.ui.h:40
+msgid "Job Codes"
+msgstr "Цэтлікі"
+
+#: rapid/glade3/prefs.ui.h:41
+msgid "<span weight=\"bold\" size=\"x-large\">Devices</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Прылады</span>"
+
+#: rapid/glade3/prefs.ui.h:42
+msgid "Devices"
+msgstr "Прылады"
+
+#: rapid/glade3/prefs.ui.h:43
+msgid ""
+"Devices are from where to download photos and videos, such as cameras, "
+"memory cards or Portable Storage Devices.\n"
+"\n"
+"You can download from multiple devices simultaneously, or you can specify a "
+"location on your hard drive.\n"
+"\n"
+"<i>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.</i>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:48
+msgid "Automatically detect Portable Storage Devices"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:49
+msgid "Automatically detect devices"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:50
+msgid ""
+"If you enable automatic detection of Portable Storage Devices, the entire "
+"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/prefs.ui.h:53
+msgid "Location:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:54
+msgid ""
+"If you disable automatic detection, choose the exact location of the photos "
+"and videos."
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:55
+msgid "<span weight=\"bold\" size=\"x-large\">Device Options</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:56
+msgid "Remembered Paths"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:57
+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/prefs.ui.h:58
+msgid "Ignored Paths"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:59
+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:61
+msgid "Re_move All"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:62
+msgid "Use _python-style regular expressions"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:63
+msgid "Device Options"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:64
+msgid "<span weight=\"bold\" size=\"x-large\">Backup</span>\t"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:65
+msgid "<b>Backup</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:66
+msgid ""
+"If you disable automatic detection, choose the exact backup locations."
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:67
+msgid "Automatically detect backup devices"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:68
+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/prefs.ui.h:69
+msgid "Backup photos and videos when downloading"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:70
+msgid ""
+"Specify the folder in which backups are stored on the device. \n"
+"\n"
+"<i>Note: this will also be used to determine whether or not the device is "
+"used for backups. For each device you wish to use for backing up to, create "
+"a folder in it with one of these names.</i>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:73
+msgid "Photo backup location:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:74
+msgid "Photo backup folder name:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:75
+msgid "<i>Example:</i>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:76
+msgid "<i>/media/externaldrive/Photos</i>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:77
+msgid "Video backup folder name:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:78
+msgid "Video backup location:"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:79
+msgid "Backup"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:80
+msgid "<span weight=\"bold\" size=\"x-large\">Miscellaneous</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:81
+msgid "<b>Program Automation</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:82
+msgid "Unmount (\"eject\") device upon download completion"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:83
+msgid "Start downloading at program startup"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:84
+msgid "Start downloading upon device insertion"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:85
+msgid "Exit program when download completes"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:86
+msgid "Exit program even if download had warnings or errors"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:87
+msgid "Automatically rotate JPEG images"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:88
+msgid "Performance"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:89
+msgid "Generate thumbnails (slower)"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:90
+msgid "Miscellaneous"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:91
+msgid "<span weight=\"bold\" size=\"x-large\">Error Handling</span>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:92
+msgid "<b>Photo and Video Name Conflicts</b>"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:93
+msgid "Add unique identifier"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:94
+msgid "Skip download"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:95
+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/prefs.ui.h:96
+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/prefs.ui.h:97
+msgid "Overwrite"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:98
+msgid "Skip"
+msgstr ""
+
+#: rapid/glade3/prefs.ui.h:99
+msgid "Error Handling"
+msgstr ""
+
+#: rapid/glade3/about.ui.h:1
+msgid "Import your photos and videos efficiently and reliably"
+msgstr ""
diff --git a/po/rapid-photo-downloader.pot b/po/rapid-photo-downloader.pot
index 365d0c2..53ee5f1 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: 2012-06-23 04:00-0500\n"
+"POT-Creation-Date: 2013-10-19 23:20+0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\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:112 rapid/rapid.py:1784 rapid/glade3/rapid.ui.h:1
+#: rapid/rapid.py:117 rapid/rapid.py:1807 rapid/glade3/rapid.ui.h:1
msgid "Rapid Photo Downloader"
msgstr ""
-#: rapid/rapid.py:117
+#: rapid/rapid.py:122
#, python-format
msgid ""
"%(date)s\n"
"%(time)s"
msgstr ""
-#: rapid/rapid.py:119
+#: rapid/rapid.py:124
#, python-format
msgid "%(date)s %(time)s"
msgstr ""
-#: rapid/rapid.py:122
+#: rapid/rapid.py:127
#, 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:157
+#: rapid/rapid.py:162
msgid "Device"
msgstr ""
#. Size refers to the total size of images on the device, typically in
#. MB or GB
-#: rapid/rapid.py:175
+#: rapid/rapid.py:180
msgid "Size"
msgstr ""
-#: rapid/rapid.py:178
+#: rapid/rapid.py:183
msgid "Download Progress"
msgstr ""
-#: rapid/rapid.py:336
+#: rapid/rapid.py:343
#, python-format
msgid "%(device)s did not unmount"
msgstr ""
@@ -64,36 +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:1216
+#: rapid/rapid.py:1240
msgid "scanning..."
msgstr ""
#. this location is a human readable explanation for /, and is inserted into Downloading from %(location)s
-#: rapid/rapid.py:1782
+#: rapid/rapid.py:1805
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:1786
+#: rapid/rapid.py:1809
#, python-format
msgid "Downloading from %(location)s."
msgstr ""
-#: rapid/rapid.py:1787
+#: rapid/rapid.py:1810
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:2209
+#: rapid/rapid.py:2254
msgid "Download"
msgstr ""
-#: rapid/rapid.py:2212
+#: rapid/rapid.py:2257
msgid "Pause"
msgstr ""
-#: rapid/rapid.py:2317
+#: rapid/rapid.py:2362
#, python-format
msgid ""
"These download folders are invalid:\n"
@@ -101,183 +101,183 @@ msgid ""
"%(folder2)s"
msgstr ""
-#: rapid/rapid.py:2320
+#: rapid/rapid.py:2365
#, python-format
msgid ""
"This download folder is invalid:\n"
"%s"
msgstr ""
-#: rapid/rapid.py:2321
+#: rapid/rapid.py:2366
msgid "Download cannot proceed"
msgstr ""
-#: rapid/rapid.py:2700
+#: rapid/rapid.py:2746
msgid "About 1 second remaining"
msgstr ""
-#: rapid/rapid.py:2702
+#: rapid/rapid.py:2748
#, python-format
msgid "About %i seconds remaining"
msgstr ""
-#: rapid/rapid.py:2704
+#: rapid/rapid.py:2750
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:2709
+#: rapid/rapid.py:2755
#, python-format
msgid "About %(minutes)i:%(seconds)02i minutes remaining"
msgstr ""
-#: rapid/rapid.py:2731 rapid/rpdfile.py:123
+#: rapid/rapid.py:2777 rapid/rpdfile.py:129
msgid "photos and videos"
msgstr ""
-#: rapid/rapid.py:2733 rapid/rpdfile.py:125
+#: rapid/rapid.py:2779 rapid/rpdfile.py:131
msgid "photos or videos"
msgstr ""
-#: rapid/rapid.py:2736 rapid/rapid.py:3558 rapid/rpdfile.py:128
+#: rapid/rapid.py:2782 rapid/rapid.py:3626 rapid/rpdfile.py:134
msgid "videos"
msgstr ""
-#: rapid/rapid.py:2738 rapid/preferencesdialog.py:1620 rapid/rpdfile.py:130
-#: rapid/rpdfile.py:291
+#: rapid/rapid.py:2784 rapid/preferencesdialog.py:1630 rapid/rpdfile.py:136
+#: rapid/rpdfile.py:305
msgid "video"
msgstr ""
-#: rapid/rapid.py:2741 rapid/rapid.py:3556 rapid/rpdfile.py:133
+#: rapid/rapid.py:2787 rapid/rapid.py:3624 rapid/rpdfile.py:139
msgid "photos"
msgstr ""
#. check subfolder preferences for bad values
-#: rapid/rapid.py:2743 rapid/preferencesdialog.py:1619 rapid/rpdfile.py:135
-#: rapid/rpdfile.py:272
+#: rapid/rapid.py:2789 rapid/preferencesdialog.py:1629 rapid/rpdfile.py:141
+#: rapid/rpdfile.py:286
msgid "photo"
msgstr ""
-#: rapid/rapid.py:2770
+#: rapid/rapid.py:2816
#, python-format
msgid "%(noFiles)s %(filetypes)s downloaded"
msgstr ""
-#: rapid/rapid.py:2774
+#: rapid/rapid.py:2820
#, python-format
msgid "%(noFiles)s %(filetypes)s failed to download"
msgstr ""
-#: rapid/rapid.py:2777 rapid/rapid.py:2829
+#: rapid/rapid.py:2823 rapid/rapid.py:2879
msgid "warnings"
msgstr ""
-#: rapid/rapid.py:2786
+#: rapid/rapid.py:2836
msgid "All downloads complete"
msgstr ""
-#: rapid/rapid.py:2792 rapid/rapid.py:2801 rapid/rapid.py:2810
-#: rapid/rapid.py:2819 rapid/rapid.py:2827
+#: rapid/rapid.py:2842 rapid/rapid.py:2851 rapid/rapid.py:2860
+#: rapid/rapid.py:2869 rapid/rapid.py:2877
#, python-format
msgid "%(number)s %(numberdownloaded)s"
msgstr ""
-#: rapid/rapid.py:2794 rapid/rapid.py:2812
+#: rapid/rapid.py:2844 rapid/rapid.py:2862
#, python-format
msgid "%(filetype)s downloaded"
msgstr ""
-#: rapid/rapid.py:2803 rapid/rapid.py:2821
+#: rapid/rapid.py:2853 rapid/rapid.py:2871
#, python-format
msgid "%(filetype)s failed to download"
msgstr ""
#. e.g.: 3 of 205 photos and videos (202 remaining)
-#: rapid/rapid.py:2860
+#: rapid/rapid.py:2914
#, 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:2867
+#: rapid/rapid.py:2921
#, python-format
msgid "%(number)s of %(total)s %(filetypes)s"
msgstr ""
-#: rapid/rapid.py:3222
+#: rapid/rapid.py:3275
msgid "From"
msgstr ""
-#: rapid/rapid.py:3230
+#: rapid/rapid.py:3283
msgid "Auto Detect"
msgstr ""
-#: rapid/rapid.py:3234 rapid/preferencesdialog.py:1327
+#: rapid/rapid.py:3287 rapid/preferencesdialog.py:1337
#, python-format
msgid "Select a folder containing %(file_types)s"
msgstr ""
-#: rapid/rapid.py:3275
+#: rapid/rapid.py:3328
msgid "Copy"
msgstr ""
-#: rapid/rapid.py:3288
+#: rapid/rapid.py:3341
msgid "Move"
msgstr ""
-#: rapid/rapid.py:3310
+#: rapid/rapid.py:3363
msgid "To"
msgstr ""
-#: rapid/rapid.py:3317 rapid/rapid.py:3986
+#: rapid/rapid.py:3370 rapid/rapid.py:4056
msgid "Photos:"
msgstr ""
-#: rapid/rapid.py:3320 rapid/preferencesdialog.py:1164
+#: rapid/rapid.py:3373 rapid/preferencesdialog.py:1174
msgid "Select a folder to download photos to"
msgstr ""
-#: rapid/rapid.py:3332 rapid/rapid.py:3986
+#: rapid/rapid.py:3385 rapid/rapid.py:4056
msgid "Videos:"
msgstr ""
-#: rapid/rapid.py:3334 rapid/preferencesdialog.py:1182
+#: rapid/rapid.py:3387 rapid/preferencesdialog.py:1192
msgid "Select a folder to download videos to"
msgstr ""
-#: rapid/rapid.py:3526
+#: rapid/rapid.py:3594
msgid "and"
msgstr ""
-#: rapid/rapid.py:3531
+#: rapid/rapid.py:3599
msgid "Using backup devices"
msgstr ""
-#: rapid/rapid.py:3533
+#: rapid/rapid.py:3601
msgid "Using backup device"
msgstr ""
-#: rapid/rapid.py:3535
+#: rapid/rapid.py:3603
msgid "No backup devices detected"
msgstr ""
-#: rapid/rapid.py:3562
+#: rapid/rapid.py:3630
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:3574
+#: rapid/rapid.py:3642
#, 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:3578
+#: rapid/rapid.py:3646
#, python-format
msgid "%(free)s %(file_type)s"
msgstr ""
@@ -285,160 +285,160 @@ 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:3583
+#: rapid/rapid.py:3651
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:3588
+#: rapid/rapid.py:3656
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:3594
+#: rapid/rapid.py:3662
#, python-format
msgid "%(free)s free"
msgstr ""
#. user manually specified the same location for photos and video backups
-#: rapid/rapid.py:3602
+#: rapid/rapid.py:3670
#, python-format
msgid "Backing up photos and videos to %(path)s"
msgstr ""
#. user manually specified backup location
-#: rapid/rapid.py:3605
+#: rapid/rapid.py:3673
#, python-format
msgid "Backing up to %(path)s"
msgstr ""
#. user manually specified different locations for photo and video backups
-#: rapid/rapid.py:3608
+#: rapid/rapid.py:3676
#, python-format
msgid "Backing up photos to %(path)s and videos to %(path2)s"
msgstr ""
-#: rapid/rapid.py:3615
+#: rapid/rapid.py:3683
#, python-format
msgid "%(freespace)s. %(backuppaths)s."
msgstr ""
-#: rapid/rapid.py:3644
+#: rapid/rapid.py:3712
msgid "Program preferences are invalid"
msgstr ""
-#: rapid/rapid.py:3770 rapid/rpdfile.py:273
+#: rapid/rapid.py:3838 rapid/rpdfile.py:287
msgid "Photo"
msgstr ""
-#: rapid/rapid.py:3772 rapid/rpdfile.py:292
+#: rapid/rapid.py:3840 rapid/rpdfile.py:306
msgid "Video"
msgstr ""
-#: rapid/rapid.py:3781
+#: rapid/rapid.py:3849
#, python-format
msgid "%(file_type)s download folder does not exist"
msgstr ""
-#: rapid/rapid.py:3783 rapid/rapid.py:3797 rapid/rapid.py:3810
+#: rapid/rapid.py:3851 rapid/rapid.py:3865 rapid/rapid.py:3878
#, python-format
msgid "Folder: %s"
msgstr ""
-#: rapid/rapid.py:3795
+#: rapid/rapid.py:3863
#, python-format
msgid "%(file_type)s download folder is invalid"
msgstr ""
-#: rapid/rapid.py:3808
+#: rapid/rapid.py:3876
#, python-format
msgid "%(file_type)s download folder is not writable"
msgstr ""
-#: rapid/rapid.py:3894
+#: rapid/rapid.py:3962
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:3949
+#: rapid/rapid.py:4017
#, python-format
msgid ""
"display program information on the command line as the program runs "
"(default: %default)"
msgstr ""
-#: rapid/rapid.py:3950
+#: rapid/rapid.py:4018
msgid "display debugging information when run from the command line"
msgstr ""
-#: rapid/rapid.py:3951
+#: rapid/rapid.py:4019
msgid "only output errors to the command line"
msgstr ""
#. image file extensions are recognized RAW files plus TIFF and JPG
-#: rapid/rapid.py:3953
+#: rapid/rapid.py:4021
msgid "list photo and video file extensions the program recognizes and exit"
msgstr ""
-#: rapid/rapid.py:3955
+#: rapid/rapid.py:4023
msgid ""
"automatically detect devices from which to download, overwriting existing "
"program preferences"
msgstr ""
-#: rapid/rapid.py:3956
+#: rapid/rapid.py:4024
msgid ""
"manually specify the PATH of the device from which to download, overwriting "
"existing program preferences"
msgstr ""
-#: rapid/rapid.py:3957
+#: rapid/rapid.py:4025
msgid "reset all program settings and preferences and exit"
msgstr ""
-#: rapid/rapid.py:3970
+#: rapid/rapid.py:4038
msgid ""
"Error: specify device auto-detection or manually specify a device's path "
"from which to download, but do not do both."
msgstr ""
-#: rapid/rapid.py:3991
+#: rapid/rapid.py:4061
#, python-format
msgid "and %s"
msgstr ""
-#: rapid/rapid.py:3999
+#: rapid/rapid.py:4069
msgid "All settings and preferences have been reset"
msgstr ""
-#: rapid/backupfile.py:157 rapid/backupfile.py:180
+#: rapid/backupfile.py:174 rapid/backupfile.py:200
msgid "Backing up error"
msgstr ""
-#: rapid/backupfile.py:159
+#: rapid/backupfile.py:176
#, python-format
msgid "Destination directory could not be created: %(directory)s\n"
msgstr ""
-#: rapid/backupfile.py:161 rapid/backupfile.py:182 rapid/subfolderfile.py:199
+#: rapid/backupfile.py:178 rapid/backupfile.py:202 rapid/subfolderfile.py:206
#, python-format
msgid ""
"Source: %(source)s\n"
"Destination: %(destination)s"
msgstr ""
-#: rapid/backupfile.py:164 rapid/backupfile.py:184
+#: rapid/backupfile.py:181 rapid/backupfile.py:204
#, python-format
msgid "Error: %(inst)s"
msgstr ""
-#: rapid/copyfiles.py:163 rapid/subfolderfile.py:214
-#: rapid/subfolderfile.py:347 rapid/subfolderfile.py:365
+#: rapid/copyfiles.py:163 rapid/subfolderfile.py:221
+#: rapid/subfolderfile.py:446 rapid/subfolderfile.py:468
#, python-format
msgid ""
"%(problem)s\n"
@@ -926,39 +926,39 @@ msgstr ""
msgid "Path:"
msgstr ""
-#: rapid/preferencesdialog.py:1082
+#: rapid/preferencesdialog.py:1092
msgid "Job Code"
msgstr ""
-#: rapid/preferencesdialog.py:1353
+#: rapid/preferencesdialog.py:1363
msgid "Select a folder in which to backup photos"
msgstr ""
-#: rapid/preferencesdialog.py:1366
+#: rapid/preferencesdialog.py:1376
msgid "Select a folder in which to backup videos"
msgstr ""
#. Translators: please do not modify or leave out html formatting tags like <i> and <b>. These are used to format the text the users sees
-#: rapid/preferencesdialog.py:1461
+#: rapid/preferencesdialog.py:1471
msgid ""
"<i><b>Warning:</b> There is insufficient metadata to fully generate the "
"name. Please use other renaming options.</i>"
msgstr ""
-#: rapid/preferencesdialog.py:1512
+#: rapid/preferencesdialog.py:1522
msgid ""
"<i><b>Warning:</b> There is insufficient metadata to fully generate "
"subfolders. Please use other subfolder naming options.</i>"
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:1515
+#: rapid/preferencesdialog.py:1525
#, python-format
msgid "<i>Example: %s</i>"
msgstr ""
#. Preferences list is now empty
-#: rapid/preferencesdialog.py:1605
+#: rapid/preferencesdialog.py:1615
#, python-format
msgid ""
"The %(filetype)s subfolder preferences entered are invalid and cannot be "
@@ -966,7 +966,7 @@ msgid ""
"They will be reset to their default values."
msgstr ""
-#: rapid/preferencesdialog.py:1750
+#: rapid/preferencesdialog.py:1760
#, python-format
msgid ""
"The following regular expressions are invalid, and will be removed unless "
@@ -974,7 +974,7 @@ msgid ""
" %s"
msgstr ""
-#: rapid/preferencesdialog.py:1752
+#: rapid/preferencesdialog.py:1762
#, python-format
msgid ""
"This regular expression is invalid, and will be removed unless you correct "
@@ -982,17 +982,17 @@ msgid ""
" %s"
msgstr ""
-#: rapid/preferencesdialog.py:1753
+#: rapid/preferencesdialog.py:1763
msgid "Invalid regular expression"
msgstr ""
#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this.
-#: rapid/preferencesdialog.py:1934
+#: rapid/preferencesdialog.py:1944
msgid "externaldrive1"
msgstr ""
#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this.
-#: rapid/preferencesdialog.py:1936
+#: rapid/preferencesdialog.py:1946
msgid "externaldrive2"
msgstr ""
@@ -1069,11 +1069,11 @@ msgid "Stockholm"
msgstr ""
#. components
-#: rapid/problemnotification.py:27 rapid/subfolderfile.py:358
+#: rapid/problemnotification.py:27 rapid/subfolderfile.py:461
msgid "subfolder"
msgstr ""
-#: rapid/problemnotification.py:28 rapid/subfolderfile.py:356
+#: rapid/problemnotification.py:28 rapid/subfolderfile.py:459
msgid "filename"
msgstr ""
@@ -1319,7 +1319,7 @@ msgstr ""
msgid "Multiple problems were encountered"
msgstr ""
-#: rapid/problemnotification.py:404 rapid/subfolderfile.py:233
+#: rapid/problemnotification.py:404 rapid/subfolderfile.py:265
msgid "Photos detected with the same filenames, but taken at different times"
msgstr ""
@@ -1345,39 +1345,39 @@ msgstr ""
msgid "%(previousproblem)s, and %(backinguperror)s"
msgstr ""
-#: rapid/rpdfile.py:153
+#: rapid/rpdfile.py:159
#, python-format
msgid "%(number)s %(filetypes)s"
msgstr ""
-#: rapid/rpdfile.py:163
+#: rapid/rpdfile.py:169
#, python-format
msgid "scanning (found %(photos)s photos and %(videos)s videos)..."
msgstr ""
-#: rapid/subfolderfile.py:80
+#: rapid/subfolderfile.py:82
#, python-format
msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s"
msgstr ""
-#: rapid/subfolderfile.py:301
+#: rapid/subfolderfile.py:396
msgid "Photo has already been downloaded"
msgstr ""
-#: rapid/subfolderfile.py:302
+#: rapid/subfolderfile.py:397
#, python-format
msgid "Source: %(source)s"
msgstr ""
-#: rapid/subfolderfile.py:354
+#: rapid/subfolderfile.py:457
msgid "subfolder and filename"
msgstr ""
-#: rapid/subfolderfile.py:393
+#: rapid/subfolderfile.py:500 rapid/subfolderfile.py:511
msgid "Failed to create download subfolder"
msgstr ""
-#: rapid/subfolderfile.py:394
+#: rapid/subfolderfile.py:501 rapid/subfolderfile.py:512
#, python-format
msgid "Path: %s"
msgstr ""
diff --git a/po/sv.po b/po/sv.po
index bca543e..76b2493 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: rapid\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-06-23 04:00-0500\n"
-"PO-Revision-Date: 2012-11-09 01:10+0000\n"
-"Last-Translator: Mikael Hiort af Ornäs <lakritslemmel@hotmail.com>\n"
+"PO-Revision-Date: 2013-05-27 23:14+0000\n"
+"Last-Translator: Joachim Johansson <Unknown>\n"
"Language-Team: Swedish <sv@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-11-26 19:04+0000\n"
-"X-Generator: Launchpad (build 16309)\n"
+"X-Launchpad-Export-Date: 2013-08-26 05:21+0000\n"
+"X-Generator: Launchpad (build 16738)\n"
#. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html
#: rapid/rapid.py:112 rapid/rapid.py:1784 rapid/glade3/rapid.ui.h:1
@@ -79,19 +79,19 @@ msgstr "filsystemets rotmapp"
#: rapid/rapid.py:1786
#, python-format
msgid "Downloading from %(location)s."
-msgstr "Laddar ner från %(location)s."
+msgstr "För över från %(location)s."
#: rapid/rapid.py:1787
msgid ""
"Do you really want to download from here? On some systems, scanning this "
"location can take a very long time."
msgstr ""
-"Vill du verkligen ladda ner härifrån? På vissa filsystem kan det ta väldigt "
-"lång tid att scanna den här platsen."
+"Vill du verkligen föra över härifrån? På vissa filsystem kan det ta väldigt "
+"lång tid att söka av den här platsen."
#: rapid/rapid.py:2209
msgid "Download"
-msgstr "Hämta"
+msgstr "Starta överföringen"
#: rapid/rapid.py:2212
msgid "Pause"
@@ -114,7 +114,7 @@ msgid ""
"This download folder is invalid:\n"
"%s"
msgstr ""
-"Denna mapp är ogiltig:\n"
+"Denna nedladdningsmapp är ogiltig:\n"
"%s"
#: rapid/rapid.py:2321
@@ -123,16 +123,16 @@ msgstr "Kan inte fortsätta överföringen"
#: rapid/rapid.py:2700
msgid "About 1 second remaining"
-msgstr "Cirka en sekund återstår"
+msgstr "Ungefär en sekund återstår"
#: rapid/rapid.py:2702
#, python-format
msgid "About %i seconds remaining"
-msgstr "Cirka %i sekunder återstår"
+msgstr "Ungefär %i sekunder återstår"
#: rapid/rapid.py:2704
msgid "About 1 minute remaining"
-msgstr "Cirka en minut återstår"
+msgstr "Ungefär 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
@@ -152,12 +152,12 @@ msgstr "bilder eller filmer"
#: rapid/rapid.py:2736 rapid/rapid.py:3558 rapid/rpdfile.py:128
msgid "videos"
-msgstr "video"
+msgstr "filmer"
#: rapid/rapid.py:2738 rapid/preferencesdialog.py:1620 rapid/rpdfile.py:130
#: rapid/rpdfile.py:291
msgid "video"
-msgstr "video"
+msgstr "film"
#: rapid/rapid.py:2741 rapid/rapid.py:3556 rapid/rpdfile.py:133
msgid "photos"
@@ -185,7 +185,7 @@ msgstr "varningar"
#: rapid/rapid.py:2786
msgid "All downloads complete"
-msgstr "Alla överföringar klara"
+msgstr "Alla överföringar är färdiga"
#: rapid/rapid.py:2792 rapid/rapid.py:2801 rapid/rapid.py:2810
#: rapid/rapid.py:2819 rapid/rapid.py:2827
@@ -196,12 +196,12 @@ msgstr "%(number)s %(numberdownloaded)s"
#: rapid/rapid.py:2794 rapid/rapid.py:2812
#, python-format
msgid "%(filetype)s downloaded"
-msgstr "%(filetype)s hämtade"
+msgstr "%(filetype)s överfördes"
#: rapid/rapid.py:2803 rapid/rapid.py:2821
#, python-format
msgid "%(filetype)s failed to download"
-msgstr "%(filetype)s gick inte att hämta"
+msgstr "%(filetype)s gick inte att föra över"
#. e.g.: 3 of 205 photos and videos (202 remaining)
#: rapid/rapid.py:2860
@@ -226,7 +226,7 @@ msgstr "Upptäck automatiskt"
#: rapid/rapid.py:3234 rapid/preferencesdialog.py:1327
#, python-format
msgid "Select a folder containing %(file_types)s"
-msgstr "Välj en katalog innehållande %(file_types)s"
+msgstr "Välj en mapp innehållande %(file_types)s"
#: rapid/rapid.py:3275
msgid "Copy"
@@ -246,7 +246,7 @@ msgstr "Bilder:"
#: rapid/rapid.py:3320 rapid/preferencesdialog.py:1164
msgid "Select a folder to download photos to"
-msgstr "Välj en katalog att överföra bilder till"
+msgstr "Välj en mapp att överföra bilder till"
#: rapid/rapid.py:3332 rapid/rapid.py:3986
msgid "Videos:"
@@ -270,7 +270,7 @@ msgstr "Använder enhet för säkerhetskopiering"
#: rapid/rapid.py:3535
msgid "No backup devices detected"
-msgstr "Inga enheter för säkerhetskopiering hittades"
+msgstr "Hittade inga enheter för säkerhetskopiering"
#: rapid/rapid.py:3562
msgid "Free space:"
@@ -329,7 +329,7 @@ msgstr "Säkerhetskopierar till %(path)s"
#: rapid/rapid.py:3608
#, 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"
+msgstr "Säkerhetskopierar bilder till %(path)s och filmer till %(path2)s"
#: rapid/rapid.py:3615
#, python-format
@@ -370,7 +370,7 @@ msgstr "%(file_type)s nedladdningsmapp är inte skrivbar"
#: rapid/rapid.py:3894
msgid "Thumbnails"
-msgstr "Miniatyrer"
+msgstr "Miniatyrbilder"
#. 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.
@@ -380,29 +380,29 @@ msgid ""
"display program information on the command line as the program runs "
"(default: %default)"
msgstr ""
-"visa programinformation på kommandoraden när programmet körs (standardvärde: "
+"visa programinformation i kommandoraden när programmet körs (default: "
"%default)"
#: rapid/rapid.py:3950
msgid "display debugging information when run from the command line"
-msgstr "visa debuginformation när programmet körs från kommandorad"
+msgstr "visa debug-information när programmet körs från kommandoraden"
#: rapid/rapid.py:3951
msgid "only output errors to the command line"
-msgstr "Visa fel endast på kommandoraden"
+msgstr "visa fel endast på kommandoraden"
#. image file extensions are recognized RAW files plus TIFF and JPG
#: rapid/rapid.py:3953
msgid "list photo and video file extensions the program recognizes and exit"
-msgstr "lista filändelser som programmet stödjer och avsluta"
+msgstr "visa de filändelser som programmet stödjer och avsluta"
#: rapid/rapid.py:3955
msgid ""
"automatically detect devices from which to download, overwriting existing "
"program preferences"
msgstr ""
-"identifiera automatiskt enheter att hämta objekt från och ersätt därmed "
-"befintliga programinställningar"
+"upptäck automatiskt enheter att hämta objekt från och ersätt de nuvarande "
+"programinställningarna"
#: rapid/rapid.py:3956
msgid ""
@@ -410,7 +410,7 @@ msgid ""
"existing program preferences"
msgstr ""
"ange SÖKVÄGEN manuellt till den enhet från vilken du önskar hämta objekt och "
-"ersätt därmed befintliga programinställningar"
+"ersätt de nuvarande programinställningarna"
#: rapid/rapid.py:3957
msgid "reset all program settings and preferences and exit"
@@ -421,8 +421,8 @@ msgid ""
"Error: specify device auto-detection or manually specify a device's path "
"from which to download, but do not do both."
msgstr ""
-"Fel: Aktivera antingen automatisk identifiering av enheter eller ange en "
-"enhetssökväg manuellt. Du kan inte välja båda."
+"Fel: Aktivera antingen automatisk upptäckt av enheter eller ange en sökvägen "
+"manuellt. Du kan inte välja båda."
#: rapid/rapid.py:3991
#, python-format
@@ -440,7 +440,7 @@ msgstr "Fel vid säkerhetskopiering"
#: rapid/backupfile.py:159
#, python-format
msgid "Destination directory could not be created: %(directory)s\n"
-msgstr "Målplatsen kunde inte skapas: %(directory)s\n"
+msgstr "Målmappen kunde inte skapas: %(directory)s\n"
#: rapid/backupfile.py:161 rapid/backupfile.py:182 rapid/subfolderfile.py:199
#, python-format
@@ -474,7 +474,7 @@ msgstr "Enhet hittad"
#: rapid/device.py:89
msgid ""
"Should this device or partition be used to download photos or videos from?"
-msgstr "Skall denna enhet användas för bild- eller filmöverföring?"
+msgstr "Skall denna enhet användas för bild- och filmöverföring?"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt
#: rapid/device.py:108
@@ -529,7 +529,7 @@ 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:163
msgid "Download time"
-msgstr "Nedladdningstid"
+msgstr "Nedladdningsögonblick"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
#: rapid/generatenameconfig.py:165
@@ -568,7 +568,7 @@ msgstr "ISO"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
#: rapid/generatenameconfig.py:178
msgid "Exposure time"
-msgstr "Bländartid"
+msgstr "Exponeringstid"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
#: rapid/generatenameconfig.py:180
@@ -627,7 +627,7 @@ msgstr "Ägarens namn"
#: rapid/generatenameconfig.py:201
msgid "Codec"
-msgstr "Kodek"
+msgstr "Avkodare"
#: rapid/generatenameconfig.py:202
msgid "Width"
@@ -749,7 +749,7 @@ msgstr "Sju siffror"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
#: rapid/generatenameconfig.py:242
msgid "Subseconds"
-msgstr "Sekunder"
+msgstr "Sekunddelar"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
#: rapid/generatenameconfig.py:244
@@ -864,17 +864,17 @@ msgstr "SS"
#: rapid/preferencesdialog.py:374
#, python-format
msgid "Subfolder preferences should not start with a %s"
-msgstr "Inställningen för underkataloger skall inte börja med %s"
+msgstr "Inställningen för undermappar ska inte börja med %s"
#: rapid/preferencesdialog.py:376
#, python-format
msgid "Subfolder preferences should not end with a %s"
-msgstr "Inställning för underkatalog skall inte börja med %s"
+msgstr "Inställningen för undermappen ska inte börja med %s"
#: rapid/preferencesdialog.py:380
#, 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"
+msgstr "Inställningen för undermappen ska inte innehålla två %s i rad"
#: rapid/preferencesdialog.py:439 rapid/preferencesdialog.py:700
msgid "Remove all Job Codes?"
@@ -924,12 +924,12 @@ msgstr "Ange fototillfälle"
#. 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, or select a previous one"
-msgstr "Skriv ett nytt jobbnummer, eller välj ett föregående"
+msgstr "Ange ett nytt fototillfälle, eller välj något av de tidigare"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode
#: rapid/preferencesdialog.py:761
msgid "Enter a new Job Code"
-msgstr "Ange nytt jobbnamn"
+msgstr "Ange ett nytt fototillfälle"
#: rapid/preferencesdialog.py:766
msgid "Job Code:"
@@ -950,15 +950,15 @@ msgstr "Sökväg:"
#: rapid/preferencesdialog.py:1082
msgid "Job Code"
-msgstr "Jobbnamn"
+msgstr "Fototillfälle"
#: rapid/preferencesdialog.py:1353
msgid "Select a folder in which to backup photos"
-msgstr "Välj en plats för att säkerhetskopiera bilder"
+msgstr "Välj den mapp där du vill säkerhetskopiera bilderna"
#: rapid/preferencesdialog.py:1366
msgid "Select a folder in which to backup videos"
-msgstr "Välj en plats för att säkerhetskopiera videor"
+msgstr "Välj den mapp där du vill säkerhetskopiera filmerna"
#. Translators: please do not modify or leave out html formatting tags like <i> and <b>. These are used to format the text the users sees
#: rapid/preferencesdialog.py:1461
@@ -966,16 +966,16 @@ msgid ""
"<i><b>Warning:</b> There is insufficient metadata to fully generate the "
"name. Please use other renaming options.</i>"
msgstr ""
-"<i><b>Varning:</b> Det saknas metadata för att namnge. Var god välj andra "
-"inställningar för namngivning.</i>"
+"<i><b>Varning:</b> Metadata saknas för att namnge filerna. Ändra "
+"namngivningsinställningarna.</i>"
#: rapid/preferencesdialog.py:1512
msgid ""
"<i><b>Warning:</b> There is insufficient metadata to fully generate "
"subfolders. Please use other subfolder naming options.</i>"
msgstr ""
-"<i><b>Varning:</b> Det finns inte tillräckligt med metadata för att skapa "
-"underkataloger. Välj andra inställningar för att namnge underkataloger.</i>"
+"<i><b>Varning:</b>Metadata saknas för att namnge undermappar. Ändra "
+"namngivningsinställningarna.</i>"
#. 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:1515
@@ -991,7 +991,7 @@ msgid ""
"used.\n"
"They will be reset to their default values."
msgstr ""
-"Underkatalog för %(filetype)s har felaktiga inställningar som inte kan "
+"Undermappen för %(filetype)s har felaktiga inställningar som inte kan "
"användas.\n"
"Återställer till standardvärden."
@@ -1002,7 +1002,7 @@ msgid ""
"you correct them:\n"
" %s"
msgstr ""
-"Följande reguljära uttryck är ogiltiga, och kommer att tas bort om du inte "
+"Följande reguljära uttryck är ogiltiga och kommer att tas bort om du inte "
"ändrar dem:\n"
" %s"
@@ -1013,7 +1013,7 @@ msgid ""
"it:\n"
" %s"
msgstr ""
-"Detta reguljära uttryck är ogiltigt, och kommer att tas bort om du inte "
+"Detta reguljära uttryck är ogiltigt och kommer att tas bort om du inte "
"ändrar det:\n"
" %s"
@@ -1093,7 +1093,7 @@ msgstr "Warszawa"
#: rapid/prefsrapid.py:131
msgid "Jakarta"
-msgstr "Djakarta"
+msgstr "Jakarta"
#: rapid/prefsrapid.py:131
msgid "Madrid"
@@ -1106,16 +1106,16 @@ msgstr "Stockholm"
#. components
#: rapid/problemnotification.py:27 rapid/subfolderfile.py:358
msgid "subfolder"
-msgstr "Underkatalog"
+msgstr "Undermapp"
#: rapid/problemnotification.py:28 rapid/subfolderfile.py:356
msgid "filename"
-msgstr "Filnamn"
+msgstr "filnamn"
#: rapid/problemnotification.py:81
#, python-format
msgid "Date time value %s appears invalid."
-msgstr "Datum/tid-värde %s verkar ogiltigt."
+msgstr "Datum/tid-värdet %s verkar vara ogiltigt."
#: rapid/problemnotification.py:82
msgid "Filename does not have an extension."
@@ -1135,7 +1135,7 @@ msgstr "Ett fel uppstod när nummer %s skulle skapas."
#: rapid/problemnotification.py:87
#, python-format
msgid "%(filetype)s metadata cannot be read"
-msgstr "Metadata i %(filetype)s kan inte läsas."
+msgstr "Metadata i %(filetype)s kan inte avläsas."
#: rapid/problemnotification.py:89
#, python-format
@@ -1167,7 +1167,7 @@ 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 togs den %(image1_date)s kl %(image1_time)s, och %(image2)s den "
+"%(image1)s togs den %(image1_date)s kl %(image1_time)s och %(image2)s den "
"%(image2_date)s kl %(image2_time)s."
#: rapid/problemnotification.py:104
@@ -1202,13 +1202,13 @@ msgstr "Fel: %(errorno)s %(strerror)s"
#: rapid/problemnotification.py:202
msgid "The metadata might be corrupt."
-msgstr "Metadatan kan vara korrupt."
+msgstr "Metadatan kan vara skadad."
#: rapid/problemnotification.py:205
msgid ""
"The filename, extension and Exif information indicate it has already been "
"downloaded."
-msgstr "Filnamnet, filändelsen och Exif-informationen har redan överförts."
+msgstr "Filnamnet, filändelsen och exif-informationen har redan överförts."
#: rapid/problemnotification.py:224
#, python-format
@@ -1237,24 +1237,21 @@ msgid ""
"Photos detected with the same filenames, but taken at different times: "
"%(details)s"
msgstr ""
-"Hittade bilder med samma filnamn, fast tagna vid olika tillfällen: "
-"%(details)s"
+"Hittade bilder med samma filnamn tagna vid olika tillfällen: %(details)s"
#: rapid/problemnotification.py:258
#, python-format
msgid "An error occurred when backing up on %(volume)s: %(inst)s."
-msgstr ""
-"Ett fel uppstod när säkerhetskopia skulle tas till %(volume)s: %(inst)s."
+msgstr "Ett fel uppstod vid säkerhetskopiering till %(volume)s: %(inst)s."
#: rapid/problemnotification.py:260
#, python-format
msgid "An error occurred when backing up on %(volume)s."
-msgstr "Ett fel uppstod när säkerhetskopia skulle tas till %(volume)s."
+msgstr "Ett fel uppstod vid säkerhetskopiering till %(volume)s."
#: rapid/problemnotification.py:262
msgid "Errors occurred when backing up on the following backup devices: "
-msgstr ""
-"Ett fel uppstod när säkerhetskopia skulle tas till följande enheter: "
+msgstr "Ett fel uppstod vid säkerhetskopiering till följande enheter: "
#: rapid/problemnotification.py:266 rapid/problemnotification.py:314
#, python-format
@@ -1279,45 +1276,45 @@ msgstr "%(volumes)s och %(volume)s."
#: rapid/problemnotification.py:285
#, python-format
msgid "Backup already exists on %(volume)s."
-msgstr "Säkerhetskopia finns redan på %(volume)s."
+msgstr "En säkerhetskopia finns redan på %(volume)s."
#: rapid/problemnotification.py:287
msgid "Backups already exist in these locations: "
-msgstr "Säkerhetskopia finns redan i: "
+msgstr "En säkerhetskopia finns redan i: "
#: rapid/problemnotification.py:297
#, python-format
msgid "Backup overwritten on %(volume)s."
-msgstr "Säkerhetskopia skrevs över på %(volume)s."
+msgstr "Den befintliga säkerhetskopian skrevs över på %(volume)s."
#: rapid/problemnotification.py:299
msgid "Backups overwritten on these devices: "
-msgstr "Säkerhetskopia skrevs över i: "
+msgstr "Den befintliga säkerhetskopian skrevs över på: "
#: rapid/problemnotification.py:310
#, python-format
msgid "An error occurred when creating directories on %(volume)s: %(inst)s."
-msgstr "Ett fel uppstod när kataloger skulle skapas på %(volume)s: %(inst)s."
+msgstr "Ett fel uppstod när mappar skulle skapas på %(volume)s: %(inst)s."
#: rapid/problemnotification.py:312
msgid ""
"Errors occurred when creating directories on the following backup devices: "
-msgstr "Ett fel uppstod när kataloger skulle skapas på följande enheter: "
+msgstr "Ett fel uppstod när mappar skulle skapas på följande enheter: "
#: rapid/problemnotification.py:323
#, python-format
msgid "%(previousproblem)s Additionally, %(newproblem)s"
-msgstr "%(previousproblem)s Mer problem därtill, %(newproblem)s"
+msgstr "%(previousproblem)s Dessutom, %(newproblem)s"
#: rapid/problemnotification.py:331
#, python-format
msgid " Furthermore, there were %(problems)s."
-msgstr " Problem hittades %(problems)s."
+msgstr " Dessutom uppstod %(problems)s."
#: rapid/problemnotification.py:333
#, python-format
msgid " Furthermore, there was a %(problem)s."
-msgstr " Ett problem hittades %(problem)s."
+msgstr " Dessutom uppstod %(problem)s."
#: rapid/problemnotification.py:342
#, python-format
@@ -1332,25 +1329,25 @@ msgstr "Följande metadata saknas: "
#, python-format
msgid "%(missing_metadata_elements)s and %(final_missing_metadata_element)s."
msgstr ""
-"%(missing_metadata_elements)s oct %(final_missing_metadata_element)s."
+"%(missing_metadata_elements)s och %(final_missing_metadata_element)s."
#: rapid/problemnotification.py:364
msgid "Problems in subfolder and filename generation"
-msgstr "Problem med skapande av undermappar och filnamn"
+msgstr "Problem vid namngivning av undermappar och filnamn"
#: rapid/problemnotification.py:366
msgid "Problem in subfolder and filename generation"
-msgstr "Problem med skapande av undermappar och filnamn"
+msgstr "Problem vid namngivning av undermappar och filnamn"
#: rapid/problemnotification.py:369
#, python-format
msgid "Problems in %s generation"
-msgstr "Problem med skapande av %s"
+msgstr "Problem vid namngivning av %s"
#: rapid/problemnotification.py:371
#, python-format
msgid "Problem in %s generation"
-msgstr "Problem med skapande av %s"
+msgstr "Problem vid namngivning av %s"
#: rapid/problemnotification.py:380
#, python-format
@@ -1365,33 +1362,33 @@ msgstr ""
#: rapid/problemnotification.py:402
msgid "Multiple problems were encountered"
-msgstr "Flera fel hittades"
+msgstr "Flera fel uppstod"
#: rapid/problemnotification.py:404 rapid/subfolderfile.py:233
msgid "Photos detected with the same filenames, but taken at different times"
-msgstr "Bilder med samma filnamn hittades, fast tagna vid olika tillfällen"
+msgstr "Bilder med samma filnamn, tagna vid olika tillfällen, hittades"
#: rapid/problemnotification.py:410
msgid "there were errors backing up"
-msgstr "det uppstod fel vid säkerhetskopiering"
+msgstr "det uppstod fel vid säkerhetskopieringen"
#: rapid/problemnotification.py:411
msgid "There were errors backing up"
-msgstr "Det uppstod fel vid säkerhetskopiering"
+msgstr "Det uppstod fel vid säkerhetskopieringen"
#: rapid/problemnotification.py:413
msgid "there was an error backing up"
-msgstr "det uppstod ett fel vid säkerhetskopiering"
+msgstr "det uppstod ett fel vid säkerhetskopieringen"
#: rapid/problemnotification.py:414
msgid "There was an error backing up"
-msgstr "Det uppstod ett fel vid säkerhetskopiering"
+msgstr "Det uppstod ett fel vid säkerhetskopieringen"
#. e.g.
#: rapid/problemnotification.py:417
#, python-format
msgid "%(previousproblem)s, and %(backinguperror)s"
-msgstr "%(previousproblem)s, och %(backinguperror)s"
+msgstr "%(previousproblem)s och %(backinguperror)s"
#: rapid/rpdfile.py:153
#, python-format
@@ -1401,7 +1398,7 @@ msgstr "%(number)s %(filetypes)s"
#: rapid/rpdfile.py:163
#, python-format
msgid "scanning (found %(photos)s photos and %(videos)s videos)..."
-msgstr "söker igenom (har hittat %(photos)s bilder och %(videos)s videor)…"
+msgstr "söker igenom (har hittat %(photos)s bilder och %(videos)s filmer)…"
#: rapid/subfolderfile.py:80
#, python-format
@@ -1423,7 +1420,7 @@ msgstr "undermapp och filnamn"
#: rapid/subfolderfile.py:393
msgid "Failed to create download subfolder"
-msgstr "Misslyckades med att skapa mapp för nedladdning"
+msgstr "Misslyckades med att skapa nedladdningmappen"
#: rapid/subfolderfile.py:394
#, python-format
@@ -1436,7 +1433,7 @@ msgstr "_Arkiv"
#: rapid/glade3/rapid.ui.h:3
msgid "Download / Pause"
-msgstr "Överföring / Paus"
+msgstr "Överför / Pausa"
#: rapid/glade3/rapid.ui.h:4
msgid "_Select"
@@ -1448,7 +1445,7 @@ msgstr "Markera alla som sakna_r fototillfälle"
#: rapid/glade3/rapid.ui.h:6
msgid "Select All Wit_h Job Code"
-msgstr "Markera alla vid ett fototillf_älle"
+msgstr "Markera alla med ett fototillf_älle"
#: rapid/glade3/rapid.ui.h:7
msgid "_View"
@@ -1504,8 +1501,7 @@ msgstr "Inställningar: Rapid Photo Downloader"
#: rapid/glade3/prefs.ui.h:2
msgid "<span weight=\"bold\" size=\"x-large\">Photo Download Folders</span>"
-msgstr ""
-"<span weight=\"bold\" size=\"x-large\">Bildöverföringskataloger</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Bildöverföringsmapp</span>"
#: rapid/glade3/prefs.ui.h:3
msgid "<i>Example: /home/user/Pictures</i>"
@@ -1513,35 +1509,36 @@ msgstr "<i>Exempel: /home/user/Bilder</i>"
#: rapid/glade3/prefs.ui.h:4
msgid "<b>Download Subfolders</b>"
-msgstr "<b>Underkataloger till överföring</b>"
+msgstr "<b>Inkludera undermappar i överföringen</b>"
#: rapid/glade3/prefs.ui.h:5
msgid "Download folder:"
-msgstr "Katalog för överföring:"
+msgstr "Överföringsmapp:"
#: rapid/glade3/prefs.ui.h:6
msgid ""
"Choose the download folder. Subfolders for the downloaded photos will be "
"automatically created in this folder using the structure specified below."
msgstr ""
-"Ange en katalog för överföring. Underkataloger kommer att skapas automatiskt "
-"enligt strukturen nedan."
+"Ange en överföringsmapp. Undermappar kommer att skapas automatiskt enligt "
+"strukturen nedan."
#: rapid/glade3/prefs.ui.h:7
msgid "<b>Download Folder</b>"
-msgstr "<b>Överföringskatalog</b>"
+msgstr "<b>Överföringsmapp</b>"
#: rapid/glade3/prefs.ui.h:8
msgid "Photo Folders"
-msgstr "Bildkataloger"
+msgstr "Bildmapp"
#: rapid/glade3/prefs.ui.h:9
msgid "<span weight=\"bold\" size=\"x-large\">Photo Rename</span>\t"
-msgstr "<span weight=\"bold\" size=\"x-large\">Bildnamngivning</span>\t"
+msgstr ""
+"<span weight=\"bold\" size=\"x-large\">Namngivning av bilder</span>\t"
#: rapid/glade3/prefs.ui.h:10
msgid "<b>Photo Rename</b>"
-msgstr "<b>Bildnamngivning</b>"
+msgstr "<b>Namngivning av bilder</b>"
#: rapid/glade3/prefs.ui.h:11
msgid " "
@@ -1561,7 +1558,7 @@ msgstr "<b>Exempel</b>"
#: rapid/glade3/prefs.ui.h:15
msgid "Photo Rename"
-msgstr "Bildnamngivning"
+msgstr "Namngivning av bilder"
#: rapid/glade3/prefs.ui.h:16
msgid "<span weight=\"bold\" size=\"x-large\">Video Download Folders</span>"
@@ -1573,34 +1570,35 @@ msgid ""
"install either the <i>hachoir metadata</i> and <i>kaa metadata</i> packages "
"for python, or <i>exiftool</i>."
msgstr ""
-"Ledsen, men videohämtningsfunktionen har inaktiverats. För att hämta videor, "
-"installera antingen paketen <i>hachoir metadata</i> och <i>kaa metadata</i> "
-"för python, eller <i>exiftool</i>."
+"Ledsen, men filmhämtningsfunktionen har inaktiverats. För att föra över "
+"filmer, installera antingen paketen <i>hachoir metadata</i> och <i>kaa "
+"metadata</i> för python, eller <i>exiftool</i>."
#: rapid/glade3/prefs.ui.h:18
msgid ""
"Choose the download folder. Subfolders for the downloaded videos will be "
"automatically created in this folder using the structure specified below."
msgstr ""
-"Välj katalog för överföring. Underkataloger kommer att skapas automatiskt "
-"enligt inställningarna nedan."
+"Välj överföringsmapp. Undermappar kommer att skapas automatiskt enligt "
+"strukturen nedan."
#: rapid/glade3/prefs.ui.h:19
msgid "Video Folders"
-msgstr "Filmkataloger"
+msgstr "Filmmapp"
#: rapid/glade3/prefs.ui.h:20
msgid "<span weight=\"bold\" size=\"x-large\">Video Rename</span>\t"
-msgstr "<span weight=\"bold\" size=\"x-large\">Filmnamngivning</span>\t"
+msgstr ""
+"<span weight=\"bold\" size=\"x-large\">Namngivning av filmer</span>\t"
#: rapid/glade3/prefs.ui.h:21
msgid "Video Rename"
-msgstr "Filmnamngivning"
+msgstr "Namngivning av filmer"
#: rapid/glade3/prefs.ui.h:22
msgid "<span weight=\"bold\" size=\"x-large\">Rename Options</span>"
msgstr ""
-"<span weight=\"bold\" size=\"x-large\">Alternativ för namnbyte</span>"
+"<span weight=\"bold\" size=\"x-large\">Alternativ för namngivning</span>"
#: rapid/glade3/prefs.ui.h:23
msgid "<b>Sequence Numbers</b>"
@@ -1611,16 +1609,16 @@ msgid ""
"Specify the time in 24 hour format at which the <i>Downloads today</i> "
"sequence number should be reset."
msgstr ""
-"Ange tiden i 24-timmarsformat då <i>Antal överföringar idag</i> ska "
+"Ange tiden i 24-timmarsformat då <i>Antalet överföringar idag</i> ska "
"nollställas."
#: rapid/glade3/prefs.ui.h:25
msgid "Day start:"
-msgstr "Början på dagen:"
+msgstr "Dagen börjar:"
#: rapid/glade3/prefs.ui.h:26
msgid "Downloads today:"
-msgstr "Antal överföringar idag:"
+msgstr "Antalet överföringar idag:"
#: rapid/glade3/prefs.ui.h:27
msgid "Stored number:"
@@ -1636,7 +1634,7 @@ msgstr " hh:mm"
#: rapid/glade3/prefs.ui.h:30
msgid "Synchronize RAW + JPEG sequence numbers"
-msgstr "Synkronisera RAW och JPEG-sekvensnummer"
+msgstr "Använd samma sekvensnummer för både RAW- och JPEG-filer"
#: rapid/glade3/prefs.ui.h:31
msgid "<b>Compatibility with Other Operating Systems</b>"
@@ -1647,8 +1645,8 @@ msgid ""
"Specify whether photo, video and folder names should have any characters "
"removed that are not allowed by other operating systems."
msgstr ""
-"Ange om specialtecken som inte stöds av operativsystemet ska tas bort från "
-"filnamn."
+"Ange om specialtecken som inte tillåts i andra operativsystem ska tas bort "
+"från fil- och mappnamn."
#: rapid/glade3/prefs.ui.h:33
msgid "Strip incompatible characters"
@@ -1656,7 +1654,7 @@ msgstr "Avlägsna inkompatibla tecken"
#: rapid/glade3/prefs.ui.h:34
msgid "Rename Options"
-msgstr "Inställningar för namnbyte"
+msgstr "Inställningar för namngivning"
#: rapid/glade3/prefs.ui.h:35
msgid "<span weight=\"bold\" size=\"x-large\">Job Codes</span>"
@@ -1699,13 +1697,13 @@ msgid ""
"setting it to PTP mode. If that is not possible, a card reader must be "
"used.</i>"
msgstr ""
-"Du kan överföra bilder och videor från kameror, minneskort eller externa "
+"Du kan överföra bilder och filmer från kameror, minneskort eller externa "
"enheter som t.ex hårddiskar.\n"
"\n"
"Du kan överföra från flera enheter samtidigt, eller ange en plats på din "
"hårddisk.\n"
"\n"
-"<i>Överföring direkt från kameror är en experimentell funktion. Om det "
+"<i>Överföring direkt från kameran är en experimentell funktion. Om det "
"fungerar dåligt eller inte alls, prova att aktivera PTP läge på din kamera. "
"Om det ändå inte fungerar måste du använda en kortläsare.</i>"
@@ -1728,8 +1726,8 @@ msgstr ""
"Om du aktiverar sökning av externa enheter så kommer hela enheten att "
"avsökas. På stora enheter kan det ta en stund.\n"
"\n"
-"När denna inställning är påslagen och en potentiell enhet hittas, så kommer "
-"du att frågas om den ska avsökas eller ej."
+"När denna inställning är påslagen och en möjlig enhet hittas, så kommer du "
+"att tillfrågas om den ska avsökas eller ej."
#: rapid/glade3/prefs.ui.h:53
msgid "Location:"
@@ -1740,7 +1738,8 @@ msgid ""
"If you disable automatic detection, choose the exact location of the photos "
"and videos."
msgstr ""
-"Om du inaktiverar automatisk sökning, ange exakt plats för bilder och videor."
+"Om du inaktiverar automatisk sökning, måste du ange exakt plats för bilder "
+"och filmer."
#: rapid/glade3/prefs.ui.h:55
msgid "<span weight=\"bold\" size=\"x-large\">Device Options</span>"
@@ -1776,7 +1775,7 @@ msgstr "Ta bo_rt alla"
#: rapid/glade3/prefs.ui.h:62
msgid "Use _python-style regular expressions"
-msgstr "Använd Python-kompatibla reguljära uttryck"
+msgstr "Använd _Python-kompatibla reguljära uttryck"
#: rapid/glade3/prefs.ui.h:63
msgid "Device Options"
@@ -1794,7 +1793,8 @@ msgstr "<b>Säkerhetskopia</b>"
msgid ""
"If you disable automatic detection, choose the exact backup locations."
msgstr ""
-"Om du inaktiverar automatisk sökning, ange exakt plats för säkerhetskopior."
+"Om du inaktiverar automatisk sökning, måste du ange exakta platser för "
+"säkerhetskopiorna."
#: rapid/glade3/prefs.ui.h:67
msgid "Automatically detect backup devices"
@@ -1810,7 +1810,7 @@ msgstr ""
#: rapid/glade3/prefs.ui.h:69
msgid "Backup photos and videos when downloading"
-msgstr "Säkerhetskopiera bilder och filmer vid överföring"
+msgstr "Säkerhetskopiera bilder och filmer under överföringen"
#: rapid/glade3/prefs.ui.h:70
msgid ""
@@ -1820,9 +1820,9 @@ msgid ""
"used for backups. For each device you wish to use for backing up to, create "
"a folder in it with one of these names.</i>"
msgstr ""
-"Välj i vilken katalog på enheten som används till säkerhetskopior.\n"
+"Välj i vilken mapp på enheten som används till säkerhetskopior.\n"
"\n"
-"<i>Observera att katalogen kommer användas för att avgöra om enheten används "
+"<i>Observera att mappen kommer användas för att avgöra om enheten används "
"till säkerhetskopior. För varje enhet du vill använda till säkerhetskopior "
"kan du skapa en mapp med ett av dessa namn.</i>"
@@ -1832,7 +1832,7 @@ msgstr "Plats för säkerhetskopiering av bilder:"
#: rapid/glade3/prefs.ui.h:74
msgid "Photo backup folder name:"
-msgstr "Plats för säkerhetskopiering av bilder:"
+msgstr "Säkerhetskopieringsmapp för bilder:"
#: rapid/glade3/prefs.ui.h:75
msgid "<i>Example:</i>"
@@ -1840,11 +1840,11 @@ msgstr "<i>Exempel:</i>"
#: rapid/glade3/prefs.ui.h:76
msgid "<i>/media/externaldrive/Photos</i>"
-msgstr "<i>/media/extern_enhet/Photos</i>"
+msgstr "<i>/media/extern_enhet/Bilder</i>"
#: rapid/glade3/prefs.ui.h:77
msgid "Video backup folder name:"
-msgstr "Katalog för säkerhetskopiering av film:"
+msgstr "Säkerhetskopieringsmapp för filmer:"
#: rapid/glade3/prefs.ui.h:78
msgid "Video backup location:"
@@ -1852,7 +1852,7 @@ msgstr "Plats för säkerhetskopiering av videor:"
#: rapid/glade3/prefs.ui.h:79
msgid "Backup"
-msgstr "Säkerhetskopiering"
+msgstr "Säkerhetskopia"
#: rapid/glade3/prefs.ui.h:80
msgid "<span weight=\"bold\" size=\"x-large\">Miscellaneous</span>"
@@ -1860,23 +1860,23 @@ msgstr "<span weight=\"bold\" size=\"x-large\">Diverse</span>"
#: rapid/glade3/prefs.ui.h:81
msgid "<b>Program Automation</b>"
-msgstr "<b>Automatisering av programmet</b>"
+msgstr "<b>Automatisera programmet</b>"
#: rapid/glade3/prefs.ui.h:82
msgid "Unmount (\"eject\") device upon download completion"
-msgstr "Mata ut och avmontera enheter när överföring är klar"
+msgstr "Avmontera och mata ut enheter när överföringen är färdig"
#: rapid/glade3/prefs.ui.h:83
msgid "Start downloading at program startup"
-msgstr "Börja överföring vid programstart"
+msgstr "Påbörja överföringen när programmet startar"
#: rapid/glade3/prefs.ui.h:84
msgid "Start downloading upon device insertion"
-msgstr "Påbörja överföring när enhet sätts i"
+msgstr "Påbörja överföring när en enhet sätts i"
#: rapid/glade3/prefs.ui.h:85
msgid "Exit program when download completes"
-msgstr "Avsluta programmet när överföring är klar"
+msgstr "Avsluta programmet när överföringen är färdig"
#: rapid/glade3/prefs.ui.h:86
msgid "Exit program even if download had warnings or errors"
@@ -1892,7 +1892,7 @@ msgstr "Prestanda"
#: rapid/glade3/prefs.ui.h:89
msgid "Generate thumbnails (slower)"
-msgstr "Skapa miniatyrer (långsammare)"
+msgstr "Skapa miniatyrbilder (långsammare)"
#: rapid/glade3/prefs.ui.h:90
msgid "Miscellaneous"
@@ -1919,20 +1919,20 @@ 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 ""
-"När en bild eller video med samma namn redan har överförts, välj om den ska "
-"skippas eller tilldelas ett unikt nummer."
+"Ange om en bild eller film med ett namn som redan finns, ska hoppas över "
+"eller tilldelas ett unikt nummer."
#: rapid/glade3/prefs.ui.h:96
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 ""
-"Ange om filer som redan finns på enheten för säkerhetskopiering skall "
-"skrivas över, eller inte säkerhetskopieras."
+"Ange om en bild eller film med ett namn som redan finns på säkerhetskopian, "
+"ska hoppas över eller skrivas över."
#: rapid/glade3/prefs.ui.h:97
msgid "Overwrite"
-msgstr "Ersätt"
+msgstr "Skriv över"
#: rapid/glade3/prefs.ui.h:98
msgid "Skip"
diff --git a/po/uk.po b/po/uk.po
index 2a799c7..59f1c88 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,26 +8,26 @@ msgid ""
msgstr ""
"Project-Id-Version: rapid\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2011-04-30 15:03-0500\n"
-"PO-Revision-Date: 2011-05-02 07:42+0000\n"
-"Last-Translator: Fedik <Unknown>\n"
+"POT-Creation-Date: 2012-06-23 04:00-0500\n"
+"PO-Revision-Date: 2013-04-11 12:07+0000\n"
+"Last-Translator: Stuartlittle1970@gmail.com <Stuartlittle1970@gmail.com>\n"
"Language-Team: Ukrainian <uk@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-05-11 03:48+0000\n"
-"X-Generator: Launchpad (build 12981)\n"
+"X-Launchpad-Export-Date: 2013-08-26 05:20+0000\n"
+"X-Generator: Launchpad (build 16738)\n"
-#: rapid/glade3/prefs.ui.h:41
+#: rapid/glade3/prefs.ui.h:42
msgid "Devices"
msgstr "Пристрої"
#. Translators: if neccessary, for guidance in how to translate this program, you may see http://damonlynch.net/translate.html
-#: rapid/rapid.py:105 rapid/glade3/rapid.ui.h:14
+#: rapid/rapid.py:112 rapid/rapid.py:1784 rapid/glade3/rapid.ui.h:1
msgid "Rapid Photo Downloader"
msgstr "Rapid Photo Downloader"
-#: rapid/rapid.py:110
+#: rapid/rapid.py:117
#, python-format
msgid ""
"%(date)s\n"
@@ -36,54 +36,73 @@ msgstr ""
"%(date)s\n"
"%(time)s"
-#: rapid/rapid.py:112
+#: rapid/rapid.py:119
#, python-format
msgid "%(date)s %(time)s"
msgstr "%(date)s %(time)s"
-#: rapid/rapid.py:115
+#: rapid/rapid.py:122
#, 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:149
+#: rapid/rapid.py:157
msgid "Device"
msgstr "Пристрій"
#. Size refers to the total size of images on the device, typically in
#. MB or GB
-#: rapid/rapid.py:166
+#: rapid/rapid.py:175
msgid "Size"
msgstr "Розмір"
-#: rapid/rapid.py:169
+#: rapid/rapid.py:178
msgid "Download Progress"
msgstr "Поступ завантаження"
-#: rapid/rapid.py:315
+#: rapid/rapid.py:336
#, python-format
msgid "%(device)s did not unmount"
-msgstr "%(device)s не відєднано"
+msgstr "%(device)s не від’єднано"
#. 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:1171
+#: rapid/rapid.py:1216
msgid "scanning..."
msgstr "сканування..."
-#: rapid/rapid.py:1986 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:1782
+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:1786
+#, python-format
+msgid "Downloading from %(location)s."
+msgstr "Завантаження з %(location)s."
+
+#: rapid/rapid.py:1787
+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:2209
msgid "Download"
msgstr "Завантажити"
-#: rapid/rapid.py:1989
+#: rapid/rapid.py:2212
msgid "Pause"
-msgstr "Пауза"
+msgstr "Призупинити"
-#: rapid/rapid.py:2092
+#: rapid/rapid.py:2317
#, python-format
msgid ""
"These download folders are invalid:\n"
@@ -94,7 +113,7 @@ msgstr ""
"%(folder1)s\n"
"%(folder2)s"
-#: rapid/rapid.py:2095
+#: rapid/rapid.py:2320
#, python-format
msgid ""
"This download folder is invalid:\n"
@@ -103,136 +122,176 @@ msgstr ""
"Ці каталоги завантаження є некоректними:\n"
"%s"
-#: rapid/rapid.py:2096
+#: rapid/rapid.py:2321
msgid "Download cannot proceed"
msgstr "Неможливо продовжити завантаження"
-#: rapid/rapid.py:2385
+#: rapid/rapid.py:2700
msgid "About 1 second remaining"
msgstr "Залишилось біля 1 секунди"
-#: rapid/rapid.py:2387
+#: rapid/rapid.py:2702
#, python-format
msgid "About %i seconds remaining"
msgstr "Залишилось біля %i секунд"
-#: rapid/rapid.py:2389
+#: rapid/rapid.py:2704
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:2394
+#: rapid/rapid.py:2709
#, python-format
msgid "About %(minutes)i:%(seconds)02i minutes remaining"
msgstr "Залишилось біля %(minutes)i:%(seconds)02i"
-#: rapid/rapid.py:2416 rapid/preferencesdialog.py:823 rapid/rpdfile.py:110
+#: rapid/rapid.py:2731 rapid/rpdfile.py:123
msgid "photos and videos"
msgstr "фото та відео"
-#: rapid/rapid.py:2418 rapid/rpdfile.py:112
+#: rapid/rapid.py:2733 rapid/rpdfile.py:125
msgid "photos or videos"
msgstr "фото або відео"
-#: rapid/rapid.py:2421 rapid/rapid.py:2965 rapid/rpdfile.py:115
+#: rapid/rapid.py:2736 rapid/rapid.py:3558 rapid/rpdfile.py:128
msgid "videos"
msgstr "відео"
-#: rapid/rapid.py:2423 rapid/preferencesdialog.py:1374 rapid/rpdfile.py:117
-#: rapid/rpdfile.py:270
+#: rapid/rapid.py:2738 rapid/preferencesdialog.py:1620 rapid/rpdfile.py:130
+#: rapid/rpdfile.py:291
msgid "video"
msgstr "відео"
-#: rapid/rapid.py:2426 rapid/rapid.py:2963 rapid/preferencesdialog.py:825
-#: rapid/rpdfile.py:120
+#: rapid/rapid.py:2741 rapid/rapid.py:3556 rapid/rpdfile.py:133
msgid "photos"
msgstr "фото"
#. check subfolder preferences for bad values
-#: rapid/rapid.py:2428 rapid/preferencesdialog.py:1373 rapid/rpdfile.py:122
-#: rapid/rpdfile.py:250
+#: rapid/rapid.py:2743 rapid/preferencesdialog.py:1619 rapid/rpdfile.py:135
+#: rapid/rpdfile.py:272
msgid "photo"
msgstr "фото"
-#: rapid/rapid.py:2455
+#: rapid/rapid.py:2770
#, python-format
msgid "%(noFiles)s %(filetypes)s downloaded"
msgstr "Завантажено %(noFiles)s %(filetypes)s"
-#: rapid/rapid.py:2459
+#: rapid/rapid.py:2774
#, python-format
msgid "%(noFiles)s %(filetypes)s failed to download"
msgstr "%(noFiles)s %(filetypes)s не вдалось завантажити"
-#: rapid/rapid.py:2462 rapid/rapid.py:2514
+#: rapid/rapid.py:2777 rapid/rapid.py:2829
msgid "warnings"
msgstr "застереження"
-#: rapid/rapid.py:2471
+#: rapid/rapid.py:2786
msgid "All downloads complete"
msgstr "Всі завантаження завершені"
-#: rapid/rapid.py:2477 rapid/rapid.py:2486 rapid/rapid.py:2495
-#: rapid/rapid.py:2504 rapid/rapid.py:2512
+#: rapid/rapid.py:2792 rapid/rapid.py:2801 rapid/rapid.py:2810
+#: rapid/rapid.py:2819 rapid/rapid.py:2827
#, python-format
msgid "%(number)s %(numberdownloaded)s"
msgstr "%(number)s %(numberdownloaded)s"
-#: rapid/rapid.py:2479 rapid/rapid.py:2497
+#: rapid/rapid.py:2794 rapid/rapid.py:2812
#, python-format
msgid "%(filetype)s downloaded"
msgstr "%(filetype)s завантажено"
-#: rapid/rapid.py:2488 rapid/rapid.py:2506
+#: rapid/rapid.py:2803 rapid/rapid.py:2821
#, python-format
msgid "%(filetype)s failed to download"
msgstr "%(filetype)s не вдалось завантажити"
#. e.g.: 3 of 205 photos and videos (202 remaining)
-#: rapid/rapid.py:2545
+#: rapid/rapid.py:2860
#, 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:2552
+#: rapid/rapid.py:2867
#, python-format
msgid "%(number)s of %(total)s %(filetypes)s"
msgstr "%(number)s з %(total)s %(filetypes)s"
-#: rapid/rapid.py:2933
+#: rapid/rapid.py:3222
+msgid "From"
+msgstr "З"
+
+#: rapid/rapid.py:3230
+msgid "Auto Detect"
+msgstr "Автоматичне визначення"
+
+#: rapid/rapid.py:3234 rapid/preferencesdialog.py:1327
+#, python-format
+msgid "Select a folder containing %(file_types)s"
+msgstr "Виберіть теку, що містить %(file_types)s"
+
+#: rapid/rapid.py:3275
+msgid "Copy"
+msgstr "Копіювати"
+
+#: rapid/rapid.py:3288
+msgid "Move"
+msgstr "Переміщення"
+
+#: rapid/rapid.py:3310
+msgid "To"
+msgstr "До"
+
+#: rapid/rapid.py:3317 rapid/rapid.py:3986
+msgid "Photos:"
+msgstr "Фото:"
+
+#: rapid/rapid.py:3320 rapid/preferencesdialog.py:1164
+msgid "Select a folder to download photos to"
+msgstr "Виберіть теку для завантаження фото"
+
+#: rapid/rapid.py:3332 rapid/rapid.py:3986
+msgid "Videos:"
+msgstr "Відео:"
+
+#: rapid/rapid.py:3334 rapid/preferencesdialog.py:1182
+msgid "Select a folder to download videos to"
+msgstr "Виберіть теку для завантаження відео"
+
+#: rapid/rapid.py:3526
msgid "and"
msgstr "та"
-#: rapid/rapid.py:2938
+#: rapid/rapid.py:3531
msgid "Using backup devices"
msgstr "Використання пристроїв для резервного копіювання"
-#: rapid/rapid.py:2940
+#: rapid/rapid.py:3533
msgid "Using backup device"
msgstr "Використання пристрою для резервного копіювання"
-#: rapid/rapid.py:2942
+#: rapid/rapid.py:3535
msgid "No backup devices detected"
msgstr "Пристроїв для резервного копіювання не виявлено"
-#: rapid/rapid.py:2969
+#: rapid/rapid.py:3562
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:2981
+#: rapid/rapid.py:3574
#, 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:2985
+#: rapid/rapid.py:3578
#, python-format
msgid "%(free)s %(file_type)s"
msgstr "%(free)s %(file_type)s"
@@ -240,75 +299,88 @@ 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:2990
+#: rapid/rapid.py:3583
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:2995
+#: rapid/rapid.py:3588
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:3001
+#: rapid/rapid.py:3594
#, python-format
msgid "%(free)s free"
msgstr "%(free)s вільно"
+#. user manually specified the same location for photos and video backups
+#: rapid/rapid.py:3602
+#, python-format
+msgid "Backing up photos and videos to %(path)s"
+msgstr "Резервне копіювання фотографій та відеозаписів до %(path)s"
+
#. user manually specified backup location
-#: rapid/rapid.py:3007
+#: rapid/rapid.py:3605
#, python-format
msgid "Backing up to %(path)s"
msgstr "Резервне копіювання до %(path)s"
-#: rapid/rapid.py:3012
+#. user manually specified different locations for photo and video backups
+#: rapid/rapid.py:3608
+#, python-format
+msgid "Backing up photos to %(path)s and videos to %(path2)s"
+msgstr ""
+"Резервне копіювання фотографій до %(path)s та відеозаписів до %(path2)s"
+
+#: rapid/rapid.py:3615
#, python-format
msgid "%(freespace)s. %(backuppaths)s."
msgstr "%(freespace)s. %(backuppaths)s."
-#: rapid/rapid.py:3041
+#: rapid/rapid.py:3644
msgid "Program preferences are invalid"
msgstr "Налаштування програми є хибними"
-#: rapid/rapid.py:3146 rapid/rpdfile.py:251
+#: rapid/rapid.py:3770 rapid/rpdfile.py:273
msgid "Photo"
msgstr "Фото"
-#: rapid/rapid.py:3148 rapid/rpdfile.py:271
+#: rapid/rapid.py:3772 rapid/rpdfile.py:292
msgid "Video"
msgstr "Відео"
-#: rapid/rapid.py:3157
+#: rapid/rapid.py:3781
#, python-format
msgid "%(file_type)s download folder does not exist"
msgstr "%(file_type)s каталог завантаження не існує"
-#: rapid/rapid.py:3159 rapid/rapid.py:3173 rapid/rapid.py:3186
+#: rapid/rapid.py:3783 rapid/rapid.py:3797 rapid/rapid.py:3810
#, python-format
msgid "Folder: %s"
msgstr "Каталог: %s"
-#: rapid/rapid.py:3171
+#: rapid/rapid.py:3795
#, python-format
msgid "%(file_type)s download folder is invalid"
msgstr "%(file_type)s каталог завантаження є хибним"
-#: rapid/rapid.py:3184
+#: rapid/rapid.py:3808
#, python-format
msgid "%(file_type)s download folder is not writable"
msgstr "%(file_type)s каталог завантаження не доступний для запису"
-#: rapid/rapid.py:3262
+#: rapid/rapid.py:3894
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:3309
+#: rapid/rapid.py:3949
#, python-format
msgid ""
"display program information on the command line as the program runs "
@@ -316,62 +388,69 @@ msgid ""
msgstr ""
"показати дані програми в командному рядку під час запуску (типово: %default)"
-#: rapid/rapid.py:3310
+#: rapid/rapid.py:3950
msgid "display debugging information when run from the command line"
msgstr ""
"показувати інструкцію зі зневадження під час запуску з командного рядка"
-#: rapid/rapid.py:3311
+#: rapid/rapid.py:3951
msgid "only output errors to the command line"
msgstr "виводити в командний рядок лише помилки"
#. image file extensions are recognized RAW files plus TIFF and JPG
-#: rapid/rapid.py:3313
+#: rapid/rapid.py:3953
msgid "list photo and video file extensions the program recognizes and exit"
msgstr ""
"вивести список розширень фото та відео файлів, розпізнаних програмою і вийти"
-#: rapid/rapid.py:3314
+#: rapid/rapid.py:3955
+msgid ""
+"automatically detect devices from which to download, overwriting existing "
+"program preferences"
+msgstr ""
+"автоматично визначати пристрій, з якого буде виконуватися завантаження, "
+"замінюючи налаштування програми що існують"
+
+#: rapid/rapid.py:3956
+msgid ""
+"manually specify the PATH of the device from which to download, overwriting "
+"existing program preferences"
+msgstr ""
+"самостійно вкажіть розміщення (PATH) пристрою, з якого буде виконуватися "
+"завантаження, замінюючи налаштування програми що існують"
+
+#: rapid/rapid.py:3957
msgid "reset all program settings and preferences and exit"
msgstr "скинути всі параметри та налаштування програми і вийти"
-#: rapid/rapid.py:3327
-msgid "Photos:"
-msgstr "Фото:"
-
-#: rapid/rapid.py:3327
-msgid "Videos:"
-msgstr "Відео:"
+#: rapid/rapid.py:3970
+msgid ""
+"Error: specify device auto-detection or manually specify a device's path "
+"from which to download, but do not do both."
+msgstr ""
+"Помилка: вкажіть автоматичне визначення пристрою або самостійно вкажіть "
+"розміщення пристрою, з якого буде виконуватися завантаження, але не "
+"використовуйте відразу обидва варіанти."
-#: rapid/rapid.py:3332
+#: rapid/rapid.py:3991
#, python-format
msgid "and %s"
msgstr "та %s"
-#: rapid/rapid.py:3340
+#: rapid/rapid.py:3999
msgid "All settings and preferences have been reset"
msgstr "Всі параметри та налаштування скинуті"
-#: rapid/rapid.py:3349
-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 для python."
-
-#: rapid/backupfile.py:139 rapid/backupfile.py:162
+#: rapid/backupfile.py:157 rapid/backupfile.py:180
msgid "Backing up error"
msgstr "Помилка резервного копіювання"
-#: rapid/backupfile.py:141
+#: rapid/backupfile.py:159
#, python-format
msgid "Destination directory could not be created: %(directory)s\n"
msgstr "Не вдалось створити теку адресата: %(directory)s\n"
-#: rapid/backupfile.py:143 rapid/backupfile.py:164 rapid/subfolderfile.py:194
+#: rapid/backupfile.py:161 rapid/backupfile.py:182 rapid/subfolderfile.py:199
#, python-format
msgid ""
"Source: %(source)s\n"
@@ -380,13 +459,13 @@ msgstr ""
"Джерело: %(source)s\n"
"Адресат: %(destination)s"
-#: rapid/backupfile.py:146 rapid/backupfile.py:166
+#: rapid/backupfile.py:164 rapid/backupfile.py:184
#, python-format
msgid "Error: %(inst)s"
msgstr "Помилка: %(inst)s"
-#: rapid/copyfiles.py:143 rapid/subfolderfile.py:209
-#: rapid/subfolderfile.py:348 rapid/subfolderfile.py:366
+#: rapid/copyfiles.py:163 rapid/subfolderfile.py:214
+#: rapid/subfolderfile.py:347 rapid/subfolderfile.py:365
#, python-format
msgid ""
"%(problem)s\n"
@@ -395,12 +474,12 @@ msgstr ""
"%(problem)s\n"
"Файл: %(file)s"
-#: rapid/device.py:79
+#: rapid/device.py:80
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
+#: rapid/device.py:89
msgid ""
"Should this device or partition be used to download photos or videos from?"
msgstr ""
@@ -408,439 +487,492 @@ msgstr ""
"відео?"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#usedeviceprompt
-#: rapid/device.py:107
+#: rapid/device.py:108
msgid "_Remember this choice"
msgstr "_Пам’ятати цей вибір"
-#: rapid/downloadtracker.py:268
+#: rapid/downloadtracker.py:299
msgid "MB/s"
msgstr "МБ/с"
-#: rapid/generatenameconfig.py:143
+#: rapid/generatenameconfig.py:151
msgid "Date time"
msgstr "Дата і час"
-#: rapid/generatenameconfig.py:144
+#: rapid/generatenameconfig.py:152
msgid "Text"
msgstr "Текст"
-#: rapid/generatenameconfig.py:145
+#: rapid/generatenameconfig.py:153
msgid "Filename"
-msgstr "Назва файла"
+msgstr "Назва файлу"
-#: rapid/generatenameconfig.py:146
+#: rapid/generatenameconfig.py:154
msgid "Metadata"
msgstr "Метадані"
-#: rapid/generatenameconfig.py:147
+#: rapid/generatenameconfig.py:155
msgid "Sequences"
msgstr "Послідовності"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#jobcode
-#: rapid/generatenameconfig.py:149 rapid/preferencesdialog.py:549
+#: rapid/generatenameconfig.py:157 rapid/preferencesdialog.py:577
msgid "Job code"
msgstr "Мітка"
-#: rapid/generatenameconfig.py:150
+#: rapid/generatenameconfig.py:158
msgid "Image date"
msgstr "Дата фото"
-#: rapid/generatenameconfig.py:151
+#: rapid/generatenameconfig.py:159
msgid "Video date"
msgstr "Дата відео"
-#: rapid/generatenameconfig.py:152
+#: rapid/generatenameconfig.py:160
msgid "Today"
msgstr "Сьогодні"
-#: rapid/generatenameconfig.py:153
+#: rapid/generatenameconfig.py:161
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:155
+#: rapid/generatenameconfig.py:163
msgid "Download time"
msgstr "Час та дата завантаження"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
-#: rapid/generatenameconfig.py:157
+#: rapid/generatenameconfig.py:165
msgid "Name + extension"
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:167
msgid "Name"
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:169
msgid "Extension"
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:171
msgid "Image number"
msgstr "Номер фото"
-#: rapid/generatenameconfig.py:164
+#: rapid/generatenameconfig.py:172
msgid "Video number"
msgstr "Номер відео"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
-#: rapid/generatenameconfig.py:166
+#: rapid/generatenameconfig.py:174
msgid "Aperture"
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:176
msgid "ISO"
msgstr "ISO"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamemetadata
-#: rapid/generatenameconfig.py:170
+#: rapid/generatenameconfig.py:178
msgid "Exposure time"
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:180
msgid "Focal length"
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:182
msgid "Camera make"
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:184
msgid "Camera model"
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:186
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:180
+#: rapid/generatenameconfig.py:188
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:182
+#: rapid/generatenameconfig.py:190
msgid "Serial number"
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:192
msgid "Shutter count"
msgstr "Кількість затворів"
+#. File number currently refers to the Exif value Exif.Canon.FileNumber
+#: rapid/generatenameconfig.py:194
+msgid "File number"
+msgstr "Номер файлу"
+
+#. Only the folder component of the Exif.Canon.FileNumber value
+#: rapid/generatenameconfig.py:196
+msgid "Folder only"
+msgstr "Лише тека"
+
+#. The folder and file component of the Exif.Canon.FileNumber value
+#: rapid/generatenameconfig.py:198
+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:186
+#: rapid/generatenameconfig.py:200
msgid "Owner name"
msgstr "Ім’я власника"
-#: rapid/generatenameconfig.py:187
+#: rapid/generatenameconfig.py:201
msgid "Codec"
msgstr "Кодек"
-#: rapid/generatenameconfig.py:188
+#: rapid/generatenameconfig.py:202
msgid "Width"
msgstr "Ширина"
-#: rapid/generatenameconfig.py:189
+#: rapid/generatenameconfig.py:203
msgid "Height"
msgstr "Висота"
-#: rapid/generatenameconfig.py:190
+#: rapid/generatenameconfig.py:204
msgid "Length"
msgstr "Тривалість"
-#: rapid/generatenameconfig.py:191
+#: rapid/generatenameconfig.py:205
msgid "Frames Per Second"
msgstr "Кадрів за секунду"
+#: rapid/generatenameconfig.py:206
+msgid "Artist"
+msgstr "Виконавець"
+
+#: rapid/generatenameconfig.py:207
+msgid "Copyright"
+msgstr "Авторське право"
+
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers
-#: rapid/generatenameconfig.py:193
+#: rapid/generatenameconfig.py:209
msgid "Downloads today"
msgstr "Завантажень сьогодні"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequencenumbers
-#: rapid/generatenameconfig.py:195
+#: rapid/generatenameconfig.py:211
msgid "Session number"
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:213
msgid "Subfolder number"
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:215
msgid "Stored number"
msgstr "Номер збереження"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#sequenceletters
-#: rapid/generatenameconfig.py:201
+#: rapid/generatenameconfig.py:217
msgid "Sequence letter"
msgstr "Послідовність знаків"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
-#: rapid/generatenameconfig.py:203
+#: rapid/generatenameconfig.py:219
msgid "All digits"
msgstr "Всі цифри"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
-#: rapid/generatenameconfig.py:205
+#: rapid/generatenameconfig.py:221
msgid "Last digit"
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:223
msgid "Last 2 digits"
msgstr "Останні 2 цифри"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
-#: rapid/generatenameconfig.py:209
+#: rapid/generatenameconfig.py:225
msgid "Last 3 digits"
msgstr "Останні 3 цифри"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamefilename
-#: rapid/generatenameconfig.py:211
+#: rapid/generatenameconfig.py:227
msgid "Last 4 digits"
msgstr "Останні 4 цифри"
#. Translators: please not the capitalization of this text, and keep it the same if your language features capitalization
-#: rapid/generatenameconfig.py:213
+#: rapid/generatenameconfig.py:229
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:215
+#: rapid/generatenameconfig.py:231
msgid "UPPERCASE"
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:233
msgid "lowercase"
msgstr "нижній регістр"
-#: rapid/generatenameconfig.py:218
+#: rapid/generatenameconfig.py:234
msgid "One digit"
msgstr "Одна цифра"
-#: rapid/generatenameconfig.py:219
+#: rapid/generatenameconfig.py:235
msgid "Two digits"
msgstr "Дві цифри"
-#: rapid/generatenameconfig.py:220
+#: rapid/generatenameconfig.py:236
msgid "Three digits"
msgstr "Три цифри"
-#: rapid/generatenameconfig.py:221
+#: rapid/generatenameconfig.py:237
msgid "Four digits"
msgstr "Чотири цифри"
-#: rapid/generatenameconfig.py:222
+#: rapid/generatenameconfig.py:238
msgid "Five digits"
msgstr "П’ять цифр"
-#: rapid/generatenameconfig.py:223
+#: rapid/generatenameconfig.py:239
msgid "Six digits"
msgstr "Шість цифр"
-#: rapid/generatenameconfig.py:224
+#: rapid/generatenameconfig.py:240
msgid "Seven digits"
msgstr "Сім цифр"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
-#: rapid/generatenameconfig.py:226
+#: rapid/generatenameconfig.py:242
msgid "Subseconds"
msgstr "Підсекунди"
#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
-#: rapid/generatenameconfig.py:228
+#: rapid/generatenameconfig.py:244
msgid "YYYYMMDD"
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:246
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:232
+#: rapid/generatenameconfig.py:248
msgid "YYMMDD"
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:250
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:236
+#: rapid/generatenameconfig.py:252
msgid "MMDDYYYY"
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:254
msgid "MMDDYY"
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:256
msgid "MMDD"
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:258
msgid "DDMMYYYY"
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:260
msgid "DDMMYY"
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:262
msgid "YYYY"
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:264
msgid "YY"
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:266
msgid "MM"
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:268
msgid "DD"
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:270
+msgid "Month (full)"
+msgstr "Місяць (повністю)"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:272
+msgid "Month (abbreviated)"
+msgstr "Місяць (коротко)"
+
+#. Translators: for an explanation of what this means, see http://damonlynch.net/rapid/documentation/index.html#renamedateandtime
+#: rapid/generatenameconfig.py:274
msgid "HHMMSS"
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:276
msgid "HHMM"
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:278
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:260
+#: rapid/generatenameconfig.py:280
msgid "HH-MM"
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:282
msgid "HH"
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:284
msgid "MM (minutes)"
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:286
msgid "SS"
msgstr "СС"
-#: rapid/preferencesdialog.py:370
+#: rapid/preferencesdialog.py:374
#, python-format
msgid "Subfolder preferences should not start with a %s"
msgstr "Параметри підтеки не повинні починатись з %s"
-#: rapid/preferencesdialog.py:372
+#: rapid/preferencesdialog.py:376
#, python-format
msgid "Subfolder preferences should not end with a %s"
msgstr "Параметри підтеки не повинні завершуватись %s"
-#: rapid/preferencesdialog.py:376
+#: rapid/preferencesdialog.py:380
#, python-format
msgid "Subfolder preferences should not contain two %s one after the other"
msgstr "Параметри підтеки не повинні містити два %s одне за одним"
-#: rapid/preferencesdialog.py:389 rapid/preferencesdialog.py:672
+#: rapid/preferencesdialog.py:439 rapid/preferencesdialog.py:700
msgid "Remove all Job Codes?"
msgstr "Вилучити всі мітки?"
-#: rapid/preferencesdialog.py:406 rapid/preferencesdialog.py:689
+#: rapid/preferencesdialog.py:440 rapid/preferencesdialog.py:717
msgid "Should all Job Codes be removed?"
msgstr "Чи потрібно вилучити всі мітки?"
-#: rapid/preferencesdialog.py:436
+#: rapid/preferencesdialog.py:446
+msgid "Remove all Remembered Paths?"
+msgstr "Вилучити усі запам’ятовані розміщення?"
+
+#: rapid/preferencesdialog.py:447
+msgid "Should all remembered paths be removed?"
+msgstr "Чи має бути вилучено усі заппам’ятовані розміщення?"
+
+#: rapid/preferencesdialog.py:453
+msgid "Remove all Ignored Paths?"
+msgstr "Вилучити усі розміщення що ігноруються?"
+
+#: rapid/preferencesdialog.py:454
+msgid "Should all ignored paths be removed?"
+msgstr "Чи має бути вилучено усі ігноровані розміщення?"
+
+#: rapid/preferencesdialog.py:465
msgid "Error in Photo Rename preferences"
msgstr "Помилка в параметрі «Перейменування фото»"
-#: rapid/preferencesdialog.py:617
+#: rapid/preferencesdialog.py:645
msgid "Error in Video Rename preferences"
msgstr "Помилка в налаштуваннях «Перейменування відео»"
-#: rapid/preferencesdialog.py:638
+#: rapid/preferencesdialog.py:666
msgid "Error in Photo Download Subfolders preferences"
msgstr "Помилка в налаштуваннях «Підтеки для завантаження фото»"
-#: rapid/preferencesdialog.py:655
+#: rapid/preferencesdialog.py:683
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:714
+#: rapid/preferencesdialog.py:742
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:731
+#: rapid/preferencesdialog.py:758
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:734
+#: rapid/preferencesdialog.py:761
msgid "Enter a new Job Code"
msgstr "Введіть нову мітку"
-#: rapid/preferencesdialog.py:739
+#: rapid/preferencesdialog.py:766
msgid "Job Code:"
msgstr "Мітка:"
-#: rapid/preferencesdialog.py:916
-msgid "Job Code"
-msgstr "Мітка"
+#: rapid/preferencesdialog.py:822
+msgid "Enter a Path to Ignore"
+msgstr "Введіть розміщення, яке бажаєте ігнорувати"
-#: rapid/preferencesdialog.py:998
-msgid "Select a folder to download photos to"
-msgstr "Виберіть теку для завантаження фото"
+#: rapid/preferencesdialog.py:834
+msgid "Specify a path that will never be scanned for photos or videos"
+msgstr ""
+"Вкажіть розміщення, яке не буде скануватися на наявність фотографій або "
+"відеофрагментів"
-#: rapid/preferencesdialog.py:1016
-msgid "Select a folder to download videos to"
-msgstr "Виберіть теку для завантаження відео"
+#: rapid/preferencesdialog.py:839
+msgid "Path:"
+msgstr "Шлях:"
-#: rapid/preferencesdialog.py:1107
-#, python-format
-msgid "Select a folder containing %(file_types)s"
-msgstr "Виберіть теку, що містить %(file_types)s"
+#: rapid/preferencesdialog.py:1082
+msgid "Job Code"
+msgstr "Мітка"
-#: rapid/preferencesdialog.py:1129
-#, python-format
-msgid "Select a folder in which to backup %(file_types)s"
-msgstr "Виберіть теку для резервних копій %(file_types)s"
+#: rapid/preferencesdialog.py:1353
+msgid "Select a folder in which to backup photos"
+msgstr "Оберіть теку у якій будуть зберігатися резервні копії фотографій"
+
+#: rapid/preferencesdialog.py:1366
+msgid "Select a folder in which to backup videos"
+msgstr "Оберіть теку у якій будуть зберігатися резервні копії відеофрагметів"
#. Translators: please do not modify or leave out html formatting tags like <i> and <b>. These are used to format the text the users sees
-#: rapid/preferencesdialog.py:1215
+#: rapid/preferencesdialog.py:1461
msgid ""
"<i><b>Warning:</b> There is insufficient metadata to fully generate the "
"name. Please use other renaming options.</i>"
@@ -848,7 +980,7 @@ msgstr ""
"<i><b>Увага:</b> Недостатньо метаданих для повного створення назви. "
"Використовуйте інші варіанти перейменування.</i>"
-#: rapid/preferencesdialog.py:1266
+#: rapid/preferencesdialog.py:1512
msgid ""
"<i><b>Warning:</b> There is insufficient metadata to fully generate "
"subfolders. Please use other subfolder naming options.</i>"
@@ -857,13 +989,13 @@ msgstr ""
"Використовуйте інші варіанти найменування підтек.</i>"
#. 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:1269
+#: rapid/preferencesdialog.py:1515
#, python-format
msgid "<i>Example: %s</i>"
msgstr "<i>Приклад: %s</i>"
#. Preferences list is now empty
-#: rapid/preferencesdialog.py:1359
+#: rapid/preferencesdialog.py:1605
#, python-format
msgid ""
"The %(filetype)s subfolder preferences entered are invalid and cannot be "
@@ -874,138 +1006,163 @@ msgstr ""
"використовуватимуться.\n"
"Ці значення будуть скинуті до типових."
+#: rapid/preferencesdialog.py:1750
+#, python-format
+msgid ""
+"The following regular expressions are invalid, and will be removed unless "
+"you correct them:\n"
+" %s"
+msgstr ""
+"Наступні регулярні вирази неприпустимі й будуть вилучені, якщо ви не "
+"виправите їх:\n"
+" %s"
+
+#: rapid/preferencesdialog.py:1752
+#, python-format
+msgid ""
+"This regular expression is invalid, and will be removed unless you correct "
+"it:\n"
+" %s"
+msgstr ""
+"Регулярний вираз неприпустимий й буде вилучено, якщо ви не виправите його:\n"
+" %s"
+
+#: rapid/preferencesdialog.py:1753
+msgid "Invalid regular expression"
+msgstr "Неприпустимий регулярний вираз"
+
#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this.
-#: rapid/preferencesdialog.py:1645
+#: rapid/preferencesdialog.py:1934
msgid "externaldrive1"
msgstr "зовнішній пристрій 1"
#. Translators: this value is used as an example device when automatic backup device detection is enabled. You should translate this.
-#: rapid/preferencesdialog.py:1647
+#: rapid/preferencesdialog.py:1936
msgid "externaldrive2"
msgstr "зовнішній пристрій 2"
-#: rapid/prefsrapid.py:122
+#: rapid/prefsrapid.py:127
msgid "New York"
msgstr "Нью-Йорк"
-#: rapid/prefsrapid.py:123
+#: rapid/prefsrapid.py:128
msgid "Manila"
-msgstr "Манила"
+msgstr "Маніла"
-#: rapid/prefsrapid.py:123
+#: rapid/prefsrapid.py:128
msgid "Prague"
msgstr "Прага"
-#: rapid/prefsrapid.py:123
+#: rapid/prefsrapid.py:128
msgid "Helsinki"
msgstr "Гельсінкі"
-#: rapid/prefsrapid.py:123
+#: rapid/prefsrapid.py:128
msgid "Wellington"
msgstr "Веллінгтон"
-#: rapid/prefsrapid.py:124
+#: rapid/prefsrapid.py:129
msgid "Tehran"
msgstr "Тегеран"
-#: rapid/prefsrapid.py:124
+#: rapid/prefsrapid.py:129
msgid "Kampala"
msgstr "Кампала"
-#: rapid/prefsrapid.py:124
+#: rapid/prefsrapid.py:129
msgid "Paris"
msgstr "Париж"
-#: rapid/prefsrapid.py:124
+#: rapid/prefsrapid.py:129
msgid "Berlin"
msgstr "Берлін"
-#: rapid/prefsrapid.py:124
+#: rapid/prefsrapid.py:129
msgid "Sydney"
msgstr "Сідней"
-#: rapid/prefsrapid.py:125
+#: rapid/prefsrapid.py:130
msgid "Budapest"
msgstr "Будапешт"
-#: rapid/prefsrapid.py:125
+#: rapid/prefsrapid.py:130
msgid "Rome"
msgstr "Рим"
-#: rapid/prefsrapid.py:125
+#: rapid/prefsrapid.py:130
msgid "Moscow"
msgstr "Москва"
-#: rapid/prefsrapid.py:125
+#: rapid/prefsrapid.py:130
msgid "Delhi"
msgstr "Делі"
-#: rapid/prefsrapid.py:125
+#: rapid/prefsrapid.py:130
msgid "Warsaw"
msgstr "Варшава"
-#: rapid/prefsrapid.py:126
+#: rapid/prefsrapid.py:131
msgid "Jakarta"
msgstr "Джакарта"
-#: rapid/prefsrapid.py:126
+#: rapid/prefsrapid.py:131
msgid "Madrid"
msgstr "Мадрид"
-#: rapid/prefsrapid.py:126
+#: rapid/prefsrapid.py:131
msgid "Stockholm"
msgstr "Стокгольм"
#. components
-#: rapid/problemnotification.py:26 rapid/subfolderfile.py:359
+#: rapid/problemnotification.py:27 rapid/subfolderfile.py:358
msgid "subfolder"
msgstr "підтека"
-#: rapid/problemnotification.py:27 rapid/subfolderfile.py:357
+#: rapid/problemnotification.py:28 rapid/subfolderfile.py:356
msgid "filename"
-msgstr "назва файла"
+msgstr "назва файлу"
-#: rapid/problemnotification.py:80
+#: rapid/problemnotification.py:81
#, python-format
msgid "Date time value %s appears invalid."
-msgstr ""
+msgstr "Значення дати та часу %s встановлено неправильно."
-#: rapid/problemnotification.py:81
+#: rapid/problemnotification.py:82
msgid "Filename does not have an extension."
msgstr "В імені файлу відсутнє розширення"
#. a number component is something like the 8346 in IMG_8346.JPG
-#: rapid/problemnotification.py:83
+#: rapid/problemnotification.py:84
msgid "Filename does not have a number component."
-msgstr "В імені файлу відсутнії числовий компонент."
+msgstr "В імені файлу відсутній числовий компонент."
-#: rapid/problemnotification.py:84
+#: rapid/problemnotification.py:85
#, python-format
msgid "Error generating component %s."
msgstr "Помилка створення компонента %s."
#. a generic problem
-#: rapid/problemnotification.py:86
+#: rapid/problemnotification.py:87
#, python-format
msgid "%(filetype)s metadata cannot be read"
msgstr "%(filetype)s не можливо прочитати метадані"
-#: rapid/problemnotification.py:88
+#: rapid/problemnotification.py:89
#, python-format
msgid "%(filetype)s %(area)s could not be generated"
msgstr "%(filetype)s %(area)s не може бути згенерованим"
-#: rapid/problemnotification.py:90 rapid/problemnotification.py:91
+#: rapid/problemnotification.py:91 rapid/problemnotification.py:92
#, python-format
msgid "An error occurred when copying the %(filetype)s"
-msgstr "Сталася помилка при копіювання %(filetype)s"
+msgstr "Сталася помилка при копіюванні %(filetype)s"
-#: rapid/problemnotification.py:93 rapid/problemnotification.py:94
+#: rapid/problemnotification.py:94 rapid/problemnotification.py:95
#, python-format
msgid "%(filetype)s already exists"
msgstr "%(filetype)s вже існує"
-#: rapid/problemnotification.py:97
+#: rapid/problemnotification.py:98
#, python-format
msgid ""
"%(filetype)s could not be backed up because no suitable backup locations "
@@ -1014,19 +1171,21 @@ msgstr ""
"%(filetype)s не може бути збережений в резервну копію, тому, що не вказано "
"місце для збереження резервних копій."
-#: rapid/problemnotification.py:102
+#: rapid/problemnotification.py:103
#, python-format
msgid ""
-"%(image1)s was taken at on %(image1_date)s at %(image1_time)s, and "
-"%(image2)s on %(image2_date)s at %(image2_time)s."
+"%(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
+#: rapid/problemnotification.py:104
#, python-format
msgid "%(filetype)s was already downloaded"
msgstr "%(filetype)s вже було завантажено"
-#: rapid/problemnotification.py:107
+#: rapid/problemnotification.py:108
#, python-format
msgid ""
"The existing %(filetype)s was last modified on %(date)s at %(time)s. Unique "
@@ -1035,53 +1194,53 @@ msgstr ""
"Існуючий фал %(filetype)s було модифіковано %(date)s в %(time)s. Додано "
"унікальний ідентифікатор '%(identifier)s' ."
-#: rapid/problemnotification.py:108
+#: rapid/problemnotification.py:109
#, python-format
msgid "The existing %(filetype)s was last modified on %(date)s at %(time)s."
msgstr "Існуючий фал %(filetype)s було модифіковано %(date)s в %(time)s."
-#: rapid/problemnotification.py:109
+#: rapid/problemnotification.py:110
#, python-format
msgid "There is no data with which to name the %(filetype)s."
msgstr "Не існує даних з ім’ям %(filetype)s."
-#: rapid/problemnotification.py:111
+#: rapid/problemnotification.py:112
#, python-format
msgid "Error: %(errorno)s %(strerror)s"
msgstr "Помилка: %(errorno)s %(strerror)s"
-#: rapid/problemnotification.py:201
+#: rapid/problemnotification.py:202
msgid "The metadata might be corrupt."
msgstr "Метадані можуть бути пошкодженими."
-#: rapid/problemnotification.py:204
+#: rapid/problemnotification.py:205
msgid ""
"The filename, extension and Exif information indicate it has already been "
"downloaded."
msgstr "Файл, розширення та Exif інформація вже були завантажені."
-#: rapid/problemnotification.py:223
+#: rapid/problemnotification.py:224
#, python-format
msgid " It was backed up to %(volume)s"
msgstr " Було створено резервну копію на %(volume)s"
-#: rapid/problemnotification.py:225
+#: rapid/problemnotification.py:226
msgid " It was backed up to these devices: "
msgstr " Було створено резервну копію на цих пристроях: "
-#: rapid/problemnotification.py:227 rapid/problemnotification.py:288
-#: rapid/problemnotification.py:300
+#: rapid/problemnotification.py:228 rapid/problemnotification.py:289
+#: rapid/problemnotification.py:301
#, python-format
msgid "%s, "
msgstr "%s, "
-#: rapid/problemnotification.py:228 rapid/problemnotification.py:289
-#: rapid/problemnotification.py:301
+#: rapid/problemnotification.py:229 rapid/problemnotification.py:290
+#: rapid/problemnotification.py:302
#, python-format
msgid "%(volumes)s and %(final_volume)s."
msgstr "%(volumes)s та %(final_volume)s."
-#: rapid/problemnotification.py:240
+#: rapid/problemnotification.py:241
#, python-format
msgid ""
"Photos detected with the same filenames, but taken at different times: "
@@ -1089,610 +1248,584 @@ msgid ""
msgstr ""
"Виявлені файли з однаковими назвами, проте створені в різний час: %(details)s"
-#: rapid/problemnotification.py:257
+#: rapid/problemnotification.py:258
#, python-format
msgid "An error occurred when backing up on %(volume)s: %(inst)s."
msgstr ""
"Сталася помилка при створенні резервної копії на %(volume)s: %(inst)s."
-#: rapid/problemnotification.py:259
+#: rapid/problemnotification.py:260
#, python-format
msgid "An error occurred when backing up on %(volume)s."
msgstr "Сталася помилка при створенні резервної копії на %(volume)s."
-#: rapid/problemnotification.py:261
+#: rapid/problemnotification.py:262
msgid "Errors occurred when backing up on the following backup devices: "
-msgstr "Сталася помилка при створенні резервної копії на наступні пристрої: "
+msgstr ""
+"Сталася помилка при створенні резервної копії на наступних пристроях: "
-#: rapid/problemnotification.py:265 rapid/problemnotification.py:313
+#: rapid/problemnotification.py:266 rapid/problemnotification.py:314
#, python-format
msgid "%(volume)s (%(inst)s), "
msgstr "%(volume)s (%(inst)s), "
-#: rapid/problemnotification.py:267
+#: rapid/problemnotification.py:268
#, python-format
msgid "%(volume)s, "
msgstr "%(volume)s, "
-#: rapid/problemnotification.py:271 rapid/problemnotification.py:315
+#: rapid/problemnotification.py:272 rapid/problemnotification.py:316
#, python-format
msgid "%(volumes)s and %(volume)s (%(inst)s)."
msgstr "%(volumes)s та %(volume)s (%(inst)s)."
-#: rapid/problemnotification.py:276
+#: rapid/problemnotification.py:277
#, python-format
msgid "%(volumes)s and %(volume)s."
msgstr "%(volumes)s та %(volume)s."
-#: rapid/problemnotification.py:284
+#: rapid/problemnotification.py:285
#, python-format
msgid "Backup already exists on %(volume)s."
msgstr "Резервна копія вже існує на %(volume)s."
-#: rapid/problemnotification.py:286
+#: rapid/problemnotification.py:287
msgid "Backups already exist in these locations: "
msgstr "Резервна копія вже існує на: "
-#: rapid/problemnotification.py:296
+#: rapid/problemnotification.py:297
#, python-format
msgid "Backup overwritten on %(volume)s."
-msgstr ""
+msgstr "Резервну копію на %(volume)s перезаписано."
-#: rapid/problemnotification.py:298
+#: rapid/problemnotification.py:299
msgid "Backups overwritten on these devices: "
-msgstr ""
+msgstr "Перезаписано резервну копію на пристрої: "
-#: rapid/problemnotification.py:309
+#: rapid/problemnotification.py:310
#, python-format
msgid "An error occurred when creating directories on %(volume)s: %(inst)s."
-msgstr ""
+msgstr "Сталася помилка при створені каталогів на %(volume)s: %(inst)s."
-#: rapid/problemnotification.py:311
+#: rapid/problemnotification.py:312
msgid ""
"Errors occurred when creating directories on the following backup devices: "
-msgstr ""
+msgstr "Сталася помилка при створені каталогів на наступних пристроях: "
-#: rapid/problemnotification.py:322
+#: rapid/problemnotification.py:323
#, python-format
msgid "%(previousproblem)s Additionally, %(newproblem)s"
-msgstr ""
+msgstr "У доповнення до %(previousproblem)s: %(newproblem)s"
-#: rapid/problemnotification.py:330
+#: rapid/problemnotification.py:331
#, python-format
msgid " Furthermore, there were %(problems)s."
-msgstr ""
+msgstr " До того ж є %(problems)s."
-#: rapid/problemnotification.py:332
+#: rapid/problemnotification.py:333
#, python-format
msgid " Furthermore, there was a %(problem)s."
-msgstr ""
+msgstr " До того ж була %(problem)s."
-#: rapid/problemnotification.py:341
+#: rapid/problemnotification.py:342
#, python-format
msgid "The %(type)s metadata is missing."
-msgstr ""
+msgstr "У метаданих пропущено %(type)s"
-#: rapid/problemnotification.py:343
+#: rapid/problemnotification.py:344
msgid "The following metadata is missing: "
-msgstr ""
+msgstr "Ці метадані пропущено: "
-#: rapid/problemnotification.py:346
+#: rapid/problemnotification.py:347
#, python-format
msgid "%(missing_metadata_elements)s and %(final_missing_metadata_element)s."
-msgstr ""
+msgstr "%(missing_metadata_elements)s, %(final_missing_metadata_element)s."
-#: rapid/problemnotification.py:363
+#: rapid/problemnotification.py:364
msgid "Problems in subfolder and filename generation"
-msgstr ""
+msgstr "При створенні ім’я каталогу та файлу сталися помилки."
-#: rapid/problemnotification.py:365
+#: rapid/problemnotification.py:366
msgid "Problem in subfolder and filename generation"
-msgstr ""
+msgstr "Помилка при створенні імені каталогу та файлу."
-#: rapid/problemnotification.py:368
+#: rapid/problemnotification.py:369
#, python-format
msgid "Problems in %s generation"
-msgstr ""
+msgstr "Сталися помилки при створенні %s"
-#: rapid/problemnotification.py:370
+#: rapid/problemnotification.py:371
#, python-format
msgid "Problem in %s generation"
-msgstr ""
+msgstr "Помилка %s при створенні"
-#: rapid/problemnotification.py:379
+#: rapid/problemnotification.py:380
#, python-format
msgid "%(filetype)s already exists, but it was backed up"
-msgstr ""
+msgstr "Хоч %(filetype)s вже існує, резервна копія все одно створена."
-#: rapid/problemnotification.py:381
+#: rapid/problemnotification.py:382
#, python-format
msgid "An error occurred when copying the %(filetype)s, but it was backed up"
msgstr ""
+"При копіюванні %(filetype)s сталася помилка, але резервна копія все одно "
+"створена."
-#: rapid/problemnotification.py:401
+#: rapid/problemnotification.py:402
msgid "Multiple problems were encountered"
-msgstr ""
+msgstr "Виявлено чисельні проблеми"
-#: rapid/problemnotification.py:403 rapid/subfolderfile.py:228
+#: rapid/problemnotification.py:404 rapid/subfolderfile.py:233
msgid "Photos detected with the same filenames, but taken at different times"
msgstr "Виявлені фото з однаковою назвою, але зроблені в різний час"
-#: rapid/problemnotification.py:409
+#: rapid/problemnotification.py:410
msgid "there were errors backing up"
-msgstr ""
+msgstr "Помилки при створенні резервної копії"
-#: rapid/problemnotification.py:410
+#: rapid/problemnotification.py:411
msgid "There were errors backing up"
-msgstr ""
+msgstr "Помилки при створенні резервної копії"
-#: rapid/problemnotification.py:412
+#: rapid/problemnotification.py:413
msgid "there was an error backing up"
-msgstr ""
+msgstr "була помилка при резевному копіюванні"
-#: rapid/problemnotification.py:413
+#: rapid/problemnotification.py:414
msgid "There was an error backing up"
-msgstr ""
+msgstr "Була помилка при резевному копіюванні"
#. e.g.
-#: rapid/problemnotification.py:416
+#: rapid/problemnotification.py:417
#, python-format
msgid "%(previousproblem)s, and %(backinguperror)s"
-msgstr ""
+msgstr "%(previousproblem)s, ще %(backinguperror)s"
-#: rapid/rpdfile.py:136
+#: rapid/rpdfile.py:153
#, python-format
msgid "%(number)s %(filetypes)s"
msgstr "%(number)s %(filetypes)s"
-#: rapid/subfolderfile.py:79
+#: rapid/rpdfile.py:163
+#, python-format
+msgid "scanning (found %(photos)s photos and %(videos)s videos)..."
+msgstr ""
+"перевірка (знайдено %(photos)s фотографій та %(videos)s відеозаписів)..."
+
+#: rapid/subfolderfile.py:80
#, python-format
msgid "%(hour)s:%(minute)s:%(second)s:%(subsecond)s"
msgstr "%(hour)s:%(minute)s:%(second)s:%(subsecond)s"
-#: rapid/subfolderfile.py:297
+#: rapid/subfolderfile.py:301
msgid "Photo has already been downloaded"
msgstr "Фото вже були завантажені"
-#: rapid/subfolderfile.py:298
+#: rapid/subfolderfile.py:302
#, python-format
msgid "Source: %(source)s"
msgstr "Джерело: %(source)s"
-#: rapid/subfolderfile.py:355
+#: rapid/subfolderfile.py:354
msgid "subfolder and filename"
-msgstr "підтека та назва файла"
+msgstr "підтека та назва файлу"
#: rapid/subfolderfile.py:393
msgid "Failed to create download subfolder"
-msgstr ""
+msgstr "Не вдалося створити каталог для завантаження"
#: rapid/subfolderfile.py:394
#, python-format
msgid "Path: %s"
-msgstr ""
-
-#: rapid/glade3/rapid.ui.h:1
-msgid "About..."
-msgstr ""
+msgstr "Шлях: %s"
#: rapid/glade3/rapid.ui.h:2
-msgid "Check All"
-msgstr ""
+msgid "_File"
+msgstr "_Файл"
#: rapid/glade3/rapid.ui.h:3
-msgid "Check All Photos"
-msgstr ""
+msgid "Download / Pause"
+msgstr "Завантаження / Призупинити"
#: rapid/glade3/rapid.ui.h:4
-msgid "Check All Videos"
-msgstr ""
+msgid "_Select"
+msgstr "_Вибрати"
+
+#: rapid/glade3/rapid.ui.h:5
+msgid "Select All Without _Job Code"
+msgstr "Вибрати всі без _міток"
#: rapid/glade3/rapid.ui.h:6
-msgid "Download / Pause"
-msgstr "Завантаження / Пауза"
+msgid "Select All Wit_h Job Code"
+msgstr "Вибрати всі з _мітками"
#: rapid/glade3/rapid.ui.h:7
-msgid "Get Help Online..."
-msgstr ""
+msgid "_View"
+msgstr "_Перегляд"
#: rapid/glade3/rapid.ui.h:8
-msgid "Help"
-msgstr ""
+msgid "_Error Log"
+msgstr "_Журнал помилок"
#: rapid/glade3/rapid.ui.h:9
-msgid "Make a Donation..."
-msgstr ""
+msgid "_Clear Completed Downloads"
+msgstr "_Очистити завершені завантаження"
#: rapid/glade3/rapid.ui.h:10
-msgid "Next File"
-msgstr ""
+msgid "Previous File"
+msgstr "Попередній Файл"
#: rapid/glade3/rapid.ui.h:11
-msgid "Preferences"
-msgstr ""
+msgid "Next File"
+msgstr "Наступний файл"
#: rapid/glade3/rapid.ui.h:12
-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
-msgid "Select All Wit_h Job Code"
-msgstr "Вибрати всі з _мітками"
-
-#: rapid/glade3/rapid.ui.h:18
-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
-msgid "_Check All"
-msgstr ""
-
-#: rapid/glade3/rapid.ui.h:22
-msgid "_Clear Completed Downloads"
-msgstr "_Очистити завершені завантаження"
-
-#: rapid/glade3/rapid.ui.h:23
-msgid "_Download"
-msgstr ""
-
-#: rapid/glade3/rapid.ui.h:24
-msgid "_Error Log"
-msgstr "_Журнал помилок"
-
-#: rapid/glade3/rapid.ui.h:25
-msgid "_File"
-msgstr "_Файл"
-
-#: rapid/glade3/rapid.ui.h:26
msgid "_Help"
msgstr "_Довідка"
-#: rapid/glade3/rapid.ui.h:27
-msgid "_Include in download"
-msgstr ""
-
-#: rapid/glade3/rapid.ui.h:28
+#: rapid/glade3/rapid.ui.h:13
msgid "_Make a Donation..."
msgstr "_Зробити пожертву..."
-#: rapid/glade3/rapid.ui.h:29
-msgid "_Select"
-msgstr "_Вибрати"
-
-#: rapid/glade3/rapid.ui.h:30
+#: rapid/glade3/rapid.ui.h:14
msgid "_Translate this Application..."
msgstr "_Перекласти цю програму..."
-#: rapid/glade3/rapid.ui.h:31
+#: rapid/glade3/rapid.ui.h:15
+msgid "_Check All"
+msgstr "_Позначити все"
+
+#: rapid/glade3/rapid.ui.h:16
msgid "_Uncheck All"
-msgstr ""
+msgstr "_Скасувати позначку всього"
-#: rapid/glade3/rapid.ui.h:32
-msgid "_View"
-msgstr "_Перегляд"
+#: rapid/glade3/rapid.ui.h:17
+msgid "_Include in download"
+msgstr "Включити у завантаження"
+
+#: rapid/glade3/rapid.ui.h:18
+msgid "_Download"
+msgstr "_Завантажити"
#: rapid/glade3/prefs.ui.h:1
-msgid " "
-msgstr " "
+msgid "Preferences: Rapid Photo Downloader"
+msgstr "Параметри: Rapid Photo Downloader"
#: rapid/glade3/prefs.ui.h:2
-msgid " hh:mm"
-msgstr " гг:хх"
+msgid "<span weight=\"bold\" size=\"x-large\">Photo Download Folders</span>"
+msgstr ""
+"<span weight=\"bold\" size=\"x-large\">Теки для завантаження фото</span>"
#: rapid/glade3/prefs.ui.h:3
-msgid ":"
-msgstr ":"
+msgid "<i>Example: /home/user/Pictures</i>"
+msgstr "<i>Приклад: /home/user/Pictures</i>"
#: rapid/glade3/prefs.ui.h:4
-msgid "<b>Backup</b>"
-msgstr "<b>Резервне копіювання</b>"
+msgid "<b>Download Subfolders</b>"
+msgstr "<b>Підтеки для завантаження</b>"
#: rapid/glade3/prefs.ui.h:5
-msgid "<b>Compatibility with Other Operating Systems</b>"
-msgstr "<b>Сумісність з іншими операційними системами</b>"
+msgid "Download folder:"
+msgstr "Тека для завантаження:"
#: rapid/glade3/prefs.ui.h:6
-msgid "<b>Devices</b>"
-msgstr "<b>Пристрої</b>"
+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:7
msgid "<b>Download Folder</b>"
msgstr "<b>Тека для завантаження</b>"
#: rapid/glade3/prefs.ui.h:8
-msgid "<b>Download Subfolders</b>"
-msgstr "<b>Підтеки для завантаження</b>"
+msgid "Photo Folders"
+msgstr "Теки з фото"
#: rapid/glade3/prefs.ui.h:9
-msgid "<b>Example</b>"
-msgstr "<b>Приклад</b>"
+msgid "<span weight=\"bold\" size=\"x-large\">Photo Rename</span>\t"
+msgstr "<span weight=\"bold\" size=\"x-large\">Перейменування фото</span>\t"
#: rapid/glade3/prefs.ui.h:10
-msgid "<b>Job Codes</b>"
-msgstr "<b>Мітки</b>"
-
-#: rapid/glade3/prefs.ui.h:11
msgid "<b>Photo Rename</b>"
msgstr "<b>Перейменування фото</b>"
+#: rapid/glade3/prefs.ui.h:11
+msgid " "
+msgstr " "
+
#: rapid/glade3/prefs.ui.h:12
-msgid "<b>Photo and Video Name Conflicts</b>"
-msgstr "<b>Конфлікти назв фото та відео</b>"
+msgid "<i>New:</i>"
+msgstr "<i>Нова назва:</i>"
#: rapid/glade3/prefs.ui.h:13
-msgid "<b>Program Automation</b>"
-msgstr "<b>Автоматизація програми</b>"
+msgid "<i>Original:</i>"
+msgstr "<i>Початкова назва:</i>"
#: rapid/glade3/prefs.ui.h:14
-msgid "<b>Sequence Numbers</b>"
-msgstr "<b>Послідовність номерів</b>"
+msgid "<b>Example</b>"
+msgstr "<b>Приклад</b>"
#: rapid/glade3/prefs.ui.h:15
-msgid "<i>/media/externaldrive/Photos</i>"
-msgstr "<i>/media/externaldrive/Photos</i>"
+msgid "Photo Rename"
+msgstr "Перейменування фото"
#: rapid/glade3/prefs.ui.h:16
-msgid "<i>Example: /home/user/Pictures</i>"
-msgstr "<i>Приклад: /home/user/Pictures</i>"
+msgid "<span weight=\"bold\" size=\"x-large\">Video Download Folders</span>"
+msgstr ""
+"<span weight=\"bold\" size=\"x-large\">Теки для завантаження відео</span>"
#: rapid/glade3/prefs.ui.h:17
-msgid "<i>Example:</i>"
-msgstr "<i>Приклад:</i>"
+msgid ""
+"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>."
+msgstr ""
+"Вибачте, але стягнення відео вимкнено. Для того щоб мати можливість "
+"завантажувати відео, будь-ласка, встановіть пакунки <i>hachoir metadata</i> "
+"та <i>kaa metadata</i> для Пітона або <i>exiftool</i>."
#: rapid/glade3/prefs.ui.h:18
-msgid "<i>New:</i>"
-msgstr "<i>Нова назва:</i>"
+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:19
-msgid "<i>Original:</i>"
-msgstr "<i>Початкова назва:</i>"
+msgid "Video Folders"
+msgstr "Теки відео"
#: rapid/glade3/prefs.ui.h:20
-msgid "<span weight=\"bold\" size=\"x-large\">Backup</span>\t"
-msgstr "<span weight=\"bold\" size=\"x-large\">Резервне копіювання</span>\t"
+msgid "<span weight=\"bold\" size=\"x-large\">Video Rename</span>\t"
+msgstr "<span weight=\"bold\" size=\"x-large\">Перейменування відео</span>\t"
#: rapid/glade3/prefs.ui.h:21
-msgid "<span weight=\"bold\" size=\"x-large\">Devices</span>"
-msgstr "<span weight=\"bold\" size=\"x-large\">Пристрої</span>"
+msgid "Video Rename"
+msgstr "Перейменування відео"
#: rapid/glade3/prefs.ui.h:22
-msgid "<span weight=\"bold\" size=\"x-large\">Error Handling</span>"
-msgstr "<span weight=\"bold\" size=\"x-large\">Обробка помилок</span>"
+msgid "<span weight=\"bold\" size=\"x-large\">Rename Options</span>"
+msgstr ""
+"<span weight=\"bold\" size=\"x-large\">Параметри перейменування</span>"
#: rapid/glade3/prefs.ui.h:23
-msgid "<span weight=\"bold\" size=\"x-large\">Job Codes</span>"
-msgstr "<span weight=\"bold\" size=\"x-large\">Мітки</span>"
+msgid "<b>Sequence Numbers</b>"
+msgstr "<b>Послідовність номерів</b>"
#: rapid/glade3/prefs.ui.h:24
-msgid "<span weight=\"bold\" size=\"x-large\">Miscellaneous</span>"
+msgid ""
+"Specify the time in 24 hour format at which the <i>Downloads today</i> "
+"sequence number should be reset."
msgstr ""
+"Вкажіть час в 24-годинному форматі, коли буде скинута послідовність номерів "
+"для параметра <i>Завантажень сьогодні</i>."
#: rapid/glade3/prefs.ui.h:25
-msgid "<span weight=\"bold\" size=\"x-large\">Photo Download Folders</span>"
-msgstr ""
-"<span weight=\"bold\" size=\"x-large\">Теки для завантаження фото</span>"
+msgid "Day start:"
+msgstr "Початок дня:"
#: rapid/glade3/prefs.ui.h:26
-msgid "<span weight=\"bold\" size=\"x-large\">Photo Rename</span>\t"
-msgstr "<span weight=\"bold\" size=\"x-large\">Перейменування фото</span>\t"
+msgid "Downloads today:"
+msgstr "Завантажень сьогодні:"
#: rapid/glade3/prefs.ui.h:27
-msgid "<span weight=\"bold\" size=\"x-large\">Rename Options</span>"
-msgstr ""
-"<span weight=\"bold\" size=\"x-large\">Параметри перейменування</span>"
+msgid "Stored number:"
+msgstr "Номер зберігання:"
#: rapid/glade3/prefs.ui.h:28
-msgid "<span weight=\"bold\" size=\"x-large\">Video Download Folders</span>"
-msgstr ""
-"<span weight=\"bold\" size=\"x-large\">Теки для завантаження відео</span>"
+msgid ":"
+msgstr ":"
#: rapid/glade3/prefs.ui.h:29
-msgid "<span weight=\"bold\" size=\"x-large\">Video Rename</span>\t"
-msgstr "<span weight=\"bold\" size=\"x-large\">Перейменування відео</span>\t"
+msgid " hh:mm"
+msgstr " гг:хх"
#: rapid/glade3/prefs.ui.h:30
-msgid "Add unique identifier"
-msgstr "Додати унікальний ідентифікатор"
+msgid "Synchronize RAW + JPEG sequence numbers"
+msgstr "Синхронізувати послідовність номерів RAW + JPEG"
#: rapid/glade3/prefs.ui.h:31
-msgid "Automatically detect Portable Storage Devices"
-msgstr "Автоматичне виявляти портативні пристрої зберігання"
+msgid "<b>Compatibility with Other Operating Systems</b>"
+msgstr "<b>Сумісність з іншими операційними системами</b>"
#: rapid/glade3/prefs.ui.h:32
-msgid "Automatically detect backup devices"
-msgstr "Автоматичне виявляти пристрої для резервного копіювання"
+msgid ""
+"Specify whether photo, video and folder names should have any characters "
+"removed that are not allowed by other operating systems."
+msgstr ""
+"Вкажіть, чи вилучати з назв фото, відео та тек всі символи, що не дозволені "
+"в інших операційних системах."
#: rapid/glade3/prefs.ui.h:33
-msgid "Automatically detect devices"
-msgstr "Автоматичне виявляти пристрої"
+msgid "Strip incompatible characters"
+msgstr "Вилучати несумісні символи"
#: rapid/glade3/prefs.ui.h:34
-msgid "Backup"
-msgstr "Резервне копіювання"
+msgid "Rename Options"
+msgstr "Параметри перейменування"
#: rapid/glade3/prefs.ui.h:35
-msgid "Backup location:"
-msgstr "Місце для резервного копіювання:"
+msgid "<span weight=\"bold\" size=\"x-large\">Job Codes</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Мітки</span>"
#: rapid/glade3/prefs.ui.h:36
-msgid "Backup photos and videos when downloading"
-msgstr "Резервне копіювання фото та відео під час завантаження"
+msgid "<b>Job Codes</b>"
+msgstr "<b>Мітки</b>"
#: 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:38
-msgid ""
-"Choose the download folder. Subfolders for the downloaded videos will be "
-"automatically created in this folder using the structure specified below."
-msgstr ""
-"Виберіть теку для завантаження. В цій теці автоматично створюватимуться "
-"підтеки для завантажених відео використовуючи структуру, зазначену нижче."
+msgid "_Add..."
+msgstr "Д_одати..."
#: rapid/glade3/prefs.ui.h:39
-msgid "Day start:"
-msgstr "Початок дня:"
+msgid "R_emove All"
+msgstr "В_илучити все"
#: rapid/glade3/prefs.ui.h:40
-msgid "Delete photos and videos from device upon download completion"
-msgstr "Вилучати фото та відео з пристрою після завершення завантаження"
+msgid "Job Codes"
+msgstr "Мітки"
-#: rapid/glade3/prefs.ui.h:42
+#: rapid/glade3/prefs.ui.h:41
+msgid "<span weight=\"bold\" size=\"x-large\">Devices</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Пристрої</span>"
+
+#: rapid/glade3/prefs.ui.h:43
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"
-"<i>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.</i>"
+"<i>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.</i>"
msgstr ""
-"Пристрої — це звідки ви завантажуєте фото та відео: камери, карти пам'яті "
-"або портативні пристрої для зберігання даних.\n"
+"Пристрої - з них завантажується фото та відео, наприклад, камера, карта "
+"пам’яті або переносний накопичувач.\n"
"\n"
-"Завантажувати фото можна з кількох пристроїв одночасно, або ж можете вказати "
-"місце на жорсткому диску.\n"
+"Ви можете налаштувати завантаження з декількох пристроїв одночасно або "
+"вказати місце для завантаження на жорсткому диску\n"
"\n"
-"<i>Якщо завантаження прямо з камери працює погано або зовсім не працює, "
-"спробуйте встановити режим PTP. Якщо це неможливо, використовуйте пристрій "
-"для читання карток.</i>"
-
-#: rapid/glade3/prefs.ui.h:47
-msgid "Download folder:"
-msgstr "Тека для завантаження:"
+"<i>Завантаження напряму з камери поки що є пробною можливістю. Якщо "
+"завантаження напряму з камери працює погано або не працює взагалі, "
+"перемикніть її у режим PTP. Якщо це неможливо, використовуйте пристрій для "
+"читання карт пам’яті.</i>"
#: rapid/glade3/prefs.ui.h:48
-msgid "Downloads today:"
-msgstr "Завантажень сьогодні:"
+msgid "Automatically detect Portable Storage Devices"
+msgstr "Автоматично виявляти портативні пристрої зберігання"
#: rapid/glade3/prefs.ui.h:49
-msgid "Error Handling"
-msgstr "Обробка помилок"
+msgid "Automatically detect devices"
+msgstr "Автоматично виявляти пристрої"
#: 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/prefs.ui.h:52
-msgid "Generate thumbnails (slower)"
+msgid ""
+"If you enable automatic detection of Portable Storage Devices, the entire "
+"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 ""
+"Якщо ви увімкнули автовизначення переносного накопичувача, буде проскановано "
+"увесь накопичувач. На пристроях більшої ємності це може зайняти час\n"
+"\n"
+"Коли цей параметр увімкнено, й відповідний пристрій знайдено, програма "
+"спитає вас, чи потрібно його сканувати."
#: rapid/glade3/prefs.ui.h:53
-msgid "If you disable automatic detection, choose the exact backup location."
-msgstr ""
-"Якщо автоматичне виявлення вимкнено, виберіть точне місце для резервного "
-"копіювання."
+msgid "Location:"
+msgstr "Розташування:"
#: 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 ""
-"Якщо автоматичне виявлення вимкнено, виберіть точне місце для зображень та "
-"відео."
+"Якщо ви вимикаєте автовизначення, оберіть містце для резервного копіювання "
+"фото та відео."
#: 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."
-msgstr ""
-"Якщо автоматичне виявлення портативних пристроїв для зберігання увімкнено, "
-"вони скануватимуться для пошуку фото. На пристроях великого об’єму це може "
-"зайняти досить багато часу."
+msgid "<span weight=\"bold\" size=\"x-large\">Device Options</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Налаштування пристроїв</span>"
#: rapid/glade3/prefs.ui.h:56
-msgid "Job Codes"
-msgstr "Мітки"
+msgid "Remembered Paths"
+msgstr "Розміщення які запам’ятовано"
#: rapid/glade3/prefs.ui.h:57
-msgid "Location:"
-msgstr "Розташування:"
+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/prefs.ui.h:58
-msgid "Miscellaneous"
-msgstr ""
+msgid "Ignored Paths"
+msgstr "Ігноровані розміщення"
#: rapid/glade3/prefs.ui.h:59
-msgid "Overwrite"
-msgstr "Перезаписати"
-
-#: rapid/glade3/prefs.ui.h:60
-msgid "Performance"
+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:61
-msgid "Photo Folders"
-msgstr "Теки з фото"
+msgid "Re_move All"
+msgstr "Вилучити все"
#: rapid/glade3/prefs.ui.h:62
-msgid "Photo Rename"
-msgstr "Перейменування фото"
+msgid "Use _python-style regular expressions"
+msgstr "Використовувати регулярні вирази стилю _python"
#: rapid/glade3/prefs.ui.h:63
-msgid "Photo backup folder name:"
-msgstr "Назва теки для резервного копіювання фото:"
+msgid "Device Options"
+msgstr "Параметри пристрою"
#: rapid/glade3/prefs.ui.h:64
-msgid "Preferences: Rapid Photo Downloader"
-msgstr "Параметри: Rapid Photo Downloader"
+msgid "<span weight=\"bold\" size=\"x-large\">Backup</span>\t"
+msgstr "<span weight=\"bold\" size=\"x-large\">Резервне копіювання</span>\t"
+
+#: rapid/glade3/prefs.ui.h:65
+msgid "<b>Backup</b>"
+msgstr "<b>Резервне копіювання</b>"
#: rapid/glade3/prefs.ui.h:66
-msgid "R_emove All"
-msgstr "В_илучити все"
+msgid ""
+"If you disable automatic detection, choose the exact backup locations."
+msgstr ""
+"Якщо ви вимикаєте автовизначення, оберіть місце для резервного копіювання."
#: rapid/glade3/prefs.ui.h:67
-msgid "Rename Options"
-msgstr "Параметри перейменування"
+msgid "Automatically detect backup devices"
+msgstr "Автоматичне виявляти пристрої для резервного копіювання"
#: rapid/glade3/prefs.ui.h:68
-msgid "Skip"
-msgstr "Пропустити"
+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/prefs.ui.h:69
-msgid "Skip download"
-msgstr "Пропустити завантаження"
+msgid "Backup photos and videos when downloading"
+msgstr "Резервне копіювання фото та відео під час завантаження"
#: rapid/glade3/prefs.ui.h:70
msgid ""
-"Sorry, video downloading functionality disabled. To download videos, please "
-"install the <i>hachoir metadata</i> and <i>kaa metadata</i> packages for "
-"python."
-msgstr ""
-
-#: rapid/glade3/prefs.ui.h:71
-msgid ""
"Specify the folder in which backups are stored on the device. \n"
"\n"
"<i>Note: this will also be used to determine whether or not the device is "
@@ -1706,67 +1839,103 @@ msgstr ""
"використовуватимете, в цьому каталозі створюватиметься тека з відповідною "
"назвою.</i>"
+#: rapid/glade3/prefs.ui.h:73
+msgid "Photo backup location:"
+msgstr "Розміщення для резервного копіювання фото:"
+
#: rapid/glade3/prefs.ui.h:74
-msgid ""
-"Specify the time in 24 hour format at which the <i>Downloads today</i> "
-"sequence number should be reset."
-msgstr ""
-"Вкажіть час в 24-годинному форматі, коли буде скинута послідовність номерів "
-"для параметра <i>Завантажень сьогодні</i>."
+msgid "Photo backup folder name:"
+msgstr "Назва теки для резервного копіювання фото:"
#: rapid/glade3/prefs.ui.h:75
-msgid ""
-"Specify whether photo, video and folder names should have any characters "
-"removed that are not allowed by other operating systems."
-msgstr ""
-"Вкажіть, чи вилучати з назв фото, відео та тек всі символи, що не дозволені "
-"в інших операційних системах."
+msgid "<i>Example:</i>"
+msgstr "<i>Приклад:</i>"
#: rapid/glade3/prefs.ui.h:76
-msgid "Start downloading at program startup"
-msgstr "Розпочинати завантаження під час запуску програми"
+msgid "<i>/media/externaldrive/Photos</i>"
+msgstr "<i>/media/externaldrive/Photos</i>"
#: rapid/glade3/prefs.ui.h:77
-msgid "Start downloading upon device insertion"
-msgstr "Розпочинати завантаження після під’єднання пристрою"
+msgid "Video backup folder name:"
+msgstr "Назва теки для резервного копіювання відео:"
#: rapid/glade3/prefs.ui.h:78
-msgid "Stored number:"
-msgstr "Номер зберігання:"
+msgid "Video backup location:"
+msgstr "Розміщення для резервного копіювання відео:"
#: rapid/glade3/prefs.ui.h:79
-msgid "Strip incompatible characters"
-msgstr "Вилучати несумісні символи"
+msgid "Backup"
+msgstr "Резервне копіювання"
#: rapid/glade3/prefs.ui.h:80
-msgid "Synchronize RAW + JPEG sequence numbers"
-msgstr "Синхронізувати послідовність номерів RAW + JPEG"
+msgid "<span weight=\"bold\" size=\"x-large\">Miscellaneous</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Решта налаштувань</span>"
#: rapid/glade3/prefs.ui.h:81
-msgid "Unmount (\"eject\") device upon download completion"
-msgstr "Від’єднати («витягти») пристрій після завершення завантаження"
+msgid "<b>Program Automation</b>"
+msgstr "<b>Автоматизація програми</b>"
#: rapid/glade3/prefs.ui.h:82
-msgid "Video Folders"
-msgstr "Теки відео"
+msgid "Unmount (\"eject\") device upon download completion"
+msgstr "Від’єднати («витягти») пристрій після завершення завантаження"
#: rapid/glade3/prefs.ui.h:83
-msgid "Video Rename"
-msgstr "Перейменування відео"
+msgid "Start downloading at program startup"
+msgstr "Розпочинати завантаження під час запуску програми"
#: rapid/glade3/prefs.ui.h:84
-msgid "Video backup folder name:"
-msgstr "Назва теки для резервного копіювання відео:"
+msgid "Start downloading upon device insertion"
+msgstr "Розпочинати завантаження після під’єднання пристрою"
#: rapid/glade3/prefs.ui.h:85
+msgid "Exit program when download completes"
+msgstr "Закінчити програму після завантаження"
+
+#: rapid/glade3/prefs.ui.h:86
+msgid "Exit program even if download had warnings or errors"
+msgstr "Закінчити програму навіть при помилках завантаження"
+
+#: rapid/glade3/prefs.ui.h:87
+msgid "Automatically rotate JPEG images"
+msgstr "Автоматично повертати зображення JPEG"
+
+#: rapid/glade3/prefs.ui.h:88
+msgid "Performance"
+msgstr "Швидкодія"
+
+#: rapid/glade3/prefs.ui.h:89
+msgid "Generate thumbnails (slower)"
+msgstr "Створювати мініатюри (довше копіюється)"
+
+#: rapid/glade3/prefs.ui.h:90
+msgid "Miscellaneous"
+msgstr "Інше"
+
+#: rapid/glade3/prefs.ui.h:91
+msgid "<span weight=\"bold\" size=\"x-large\">Error Handling</span>"
+msgstr "<span weight=\"bold\" size=\"x-large\">Обробка помилок</span>"
+
+#: rapid/glade3/prefs.ui.h:92
+msgid "<b>Photo and Video Name Conflicts</b>"
+msgstr "<b>Конфлікти назв фото та відео</b>"
+
+#: rapid/glade3/prefs.ui.h:93
+msgid "Add unique identifier"
+msgstr "Додати унікальний ідентифікатор"
+
+#: rapid/glade3/prefs.ui.h:94
+msgid "Skip download"
+msgstr "Пропустити завантаження"
+
+#: rapid/glade3/prefs.ui.h:95
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/prefs.ui.h:86
+#: rapid/glade3/prefs.ui.h:96
msgid ""
"When backing up, choose whether to overwrite a file on the backup device "
"that has the same name, or skip backing it up."
@@ -1774,17 +1943,17 @@ msgstr ""
"Чи слід під час резервного копіювання перезаписати файл, що має однакову "
"назву з файлом на пристрої, чи пропустити його?"
-#: rapid/glade3/prefs.ui.h:87
-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/prefs.ui.h:97
+msgid "Overwrite"
+msgstr "Перезаписати"
-#: rapid/glade3/prefs.ui.h:88
-msgid "_Add..."
-msgstr "Д_одати..."
+#: rapid/glade3/prefs.ui.h:98
+msgid "Skip"
+msgstr "Пропустити"
+
+#: rapid/glade3/prefs.ui.h:99
+msgid "Error Handling"
+msgstr "Обробка помилок"
#: rapid/glade3/about.ui.h:1
msgid "Import your photos and videos efficiently and reliably"
@@ -1808,27 +1977,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Resetting to default values."
#~ msgstr "Скинути до типових значень."
-#~ msgid ""
-#~ "Downloads today value not updated, as a download is currently occurring"
-#~ msgstr ""
-#~ "Значення «Завантажень сьогодні» не оновлене, завантаження ще продовжується"
-
-#~ msgid "Stored number value not updated, as a download is currently occurring"
-#~ msgstr ""
-#~ "Значення «Збережено під номером» не оновлене, завантаження ще продовжується"
-
-#, python-format
-#~ msgid ""
-#~ "The %(filetype)s subfolder preferences had some unnecessary values removed."
-#~ msgstr "Параметри підтеки %(filetype)s мають деякі вилучені зайві значення."
-
-#~ msgid "The following download path could not be created:\n"
-#~ msgstr "Не вдалось створити такий шлях завантаження:\n"
-
-#, python-format
-#~ msgid "%(path)s: "
-#~ msgstr "%(path)s: "
-
#~ msgid "There is an error in the program preferences."
#~ msgstr "Помилка в налаштуваннях програми."
@@ -1840,23 +1988,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ "Перевірте налаштування, перезапустіть програму та спробуйте знову."
#, python-format
-#~ msgid "0 of %(number)s %(filetypes)s"
-#~ msgstr "0 з %(number)s %(filetypes)s"
-
-#, python-format
-#~ msgid "Device scan complete: found %(number)s %(filetypes)s on %(device)s"
-#~ msgstr ""
-#~ "Сканування завершене: знайдено %(number)s %(filetypes)s на %(device)s"
-
-#, python-format
-#~ msgid "Device scan complete: no %(filetypes)s found on %(device)s"
-#~ msgstr "Сканування завершене: не знайдено %(filetypes)s на %(device)s"
-
-#, python-format
-#~ msgid "%(filetype)s filename could not be generated"
-#~ msgstr "Назву файла %(filetype)s не вдалось згенерувати"
-
-#, python-format
#~ msgid ""
#~ "Source: %(source)s\n"
#~ "Problem: %(problem)s"
@@ -1865,26 +1996,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ "Проблема: %(problem)s"
#, python-format
-#~ msgid ""
-#~ "%(filetype)s filename could not be properly generated. Check to ensure there "
-#~ "is sufficient metadata."
-#~ msgstr ""
-#~ "Назву файла %(filetype)s не вдалось згенерувати правильно. Переконайтесь чи "
-#~ "достатньо матаданих."
-
-#, python-format
-#~ msgid ""
-#~ "Source: %(source)s\n"
-#~ "Partially generated filename: %(newname)s\n"
-#~ "Destination: %(destination)s\n"
-#~ "Problem: %(problem)s"
-#~ msgstr ""
-#~ "Джерело: %(source)s\n"
-#~ "Частково згенерована назва: %(newname)s\n"
-#~ "Адресат: %(destination)s\n"
-#~ "Проблема: %(problem)s"
-
-#, python-format
#~ msgid "Unique identifier '%s' added"
#~ msgstr "Доданий унікальний ідентифікатор '%s'"
@@ -1902,96 +2013,15 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ "Помилка: %(errorno)s %(strerror)s"
#, python-format
-#~ msgid "The %(filetype)s was not copied."
-#~ msgstr "%(filetype)s не скопійований."
-
-#~ msgid ""
-#~ "Photos detected with the same filenames, but taken at different times:"
-#~ msgstr "Виявлені фото з однаковими назвами, але зроблені в різний час:"
-
-#, python-format
-#~ msgid ""
-#~ "First photo: %(image1)s %(image1_date_time)s:%(image1_subseconds)s\n"
-#~ "Second photo: %(image2)s %(image2_date_time)s:%(image2_subseconds)s"
-#~ msgstr ""
-#~ "Перше фото: %(image1)s %(image1_date_time)s:%(image1_subseconds)s\n"
-#~ "Друге фото: %(image2)s %(image2_date_time)s:%(image2_subseconds)s"
-
-#, python-format
-#~ msgid "Could not open %(filetype)s"
-#~ msgstr "Не вдалось відкрити %(filetype)s"
-
-#, python-format
#~ msgid "Source: %s"
#~ msgstr "Джерело: %s"
-#, python-format
-#~ msgid "%(filetype)s has no metadata"
-#~ msgstr "%(filetype)s не має метаданих"
-
-#, python-format
-#~ msgid ""
-#~ "Metadata is essential for generating subfolder and/or file names.\n"
-#~ "Source: %s"
-#~ msgstr ""
-#~ "Метадані необхідні для створення підтеки та/або назв файлів.\n"
-#~ "Джерело: %s"
-
-#~ msgid ""
-#~ "Subfolder name could not be properly generated. Check to ensure there is "
-#~ "sufficient metadata."
-#~ msgstr ""
-#~ "Не вдалось згенерувати правильну назву підтеки. Переконайтесь чи достатньо "
-#~ "метаданих."
-
-#, python-format
-#~ msgid ""
-#~ "Subfolder: %(subfolder)s\n"
-#~ "File: %(file)s\n"
-#~ "Problem: %(problem)s"
-#~ msgstr ""
-#~ "Підтека: %(subfolder)s\n"
-#~ "Файл: %(file)s\n"
-#~ "Проблема: %(problem)s"
-
#~ msgid "New day has started - resetting 'Downloads Today' sequence number"
#~ msgstr ""
#~ "Почався новий день - скидання порядкового номера параметра «Завантажень "
#~ "сьогодні»"
#, python-format
-#~ msgid "Backup of %(file_type)s already exists"
-#~ msgstr "Резервна копія %(file_type)s вже наявна"
-
-#, python-format
-#~ msgid "Backup %(file_type)s overwritten"
-#~ msgstr "Резервна копія %(file_type)s перезаписана"
-
-#, python-format
-#~ msgid "%(file_type)s not backed up to %(volume)s"
-#~ msgstr "Не створена резервна копія %(file_type)s у %(volume)s"
-
-#, python-format
-#~ msgid "%(file_type)s not backed up"
-#~ msgstr "Не створена резервна копія %(file_type)s"
-
-#, python-format
-#~ msgid ""
-#~ "Source: %(source)s\n"
-#~ "Destination: %(destination)s\n"
-#~ msgstr ""
-#~ "Джерело: %(source)s\n"
-#~ "Адресат: %(destination)s\n"
-
-#, python-format
-#~ msgid "Error: %(errno)s %(strerror)s"
-#~ msgstr "Помилка: %(errno)s %(strerror)s"
-
-#, python-format
-#~ msgid "The %(file_type)s was not backed up."
-#~ msgstr "Не створена резервна копія %(file_type)s."
-
-#, python-format
#~ msgid ""
#~ "Source: %(source)s\n"
#~ "Destination: %(destination)s\n"
@@ -2001,102 +2031,19 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ "Адресат: %(destination)s\n"
#~ "Помилка: %(errno)s %(strerror)s"
-#, python-format
-#~ msgid "%(file_type)s could not be backed up"
-#~ msgstr "Не вдалось створити резервну копію %(file_type)s"
-
-#~ msgid "No suitable backup volume was found"
-#~ msgstr "Не знайдено відповідного носія для резервного копіювання"
-
-#~ msgid "A backup location was not found"
-#~ msgstr "Не знайдено місця для резервного копіювання"
-
#~ msgid "The device can now be safely removed"
#~ msgstr "Зараз можна безпечно вилучити носій"
-#, python-format
-#~ msgid "%(noFiles)s %(filetypes)s skipped"
-#~ msgstr "Зігноровано %(noFiles)s %(filetypes)s"
-
#~ msgid "errors"
#~ msgstr "помилки"
-#~ msgid "Photo thumbnail could not be extracted"
-#~ msgstr "Не вдалось витягти мініатюру фото"
-
-#, python-format
-#~ msgid "Source: %s\n"
-#~ msgstr "Джерело: %s\n"
-
-#, python-format
-#~ msgid "Device: %s\n"
-#~ msgstr "Носій: %s\n"
-
-#, python-format
-#~ msgid "Destination: %s"
-#~ msgstr "Адресат: %s"
-
-#~ msgid "Could not create temporary download directory"
-#~ msgstr "Не вдалось створити тимчасову теку для завантаження"
-
-#~ msgid "Error:"
-#~ msgstr "Помилка:"
-
-#, python-format
-#~ msgid "This device has no %(types_searched_for)s to download from."
-#~ msgstr "На цьому носії немає %(types_searched_for)s для завантаження."
-
#, python-format
#~ msgid "Download has started from %s"
#~ msgstr "Завантаження почалось з %s"
-#~ msgid "Backup path does not exist"
-#~ msgstr "Немає шляху для резервного копіювання"
-
-#, python-format
-#~ msgid "The path %s could not be created"
-#~ msgstr "Шлях %s не вдалось створити"
-
-#~ msgid "No backups can occur"
-#~ msgstr "Резервне копіювання не може відбутись"
-
#~ msgid "Backup device missing"
#~ msgstr "Відсутній пристрій для резервного копіювання"
-#~ msgid "No backup device was automatically detected"
-#~ msgstr "Не вдалося автоматично виявити носій для резервного копіювання"
-
-#~ msgid "Photo skipped"
-#~ msgstr "Пропущене фото"
-
-#~ msgid "Photo already exists"
-#~ msgstr "Фото вже наявне"
-
-#~ msgid "Video skipped"
-#~ msgstr "Пропущене відео"
-
-#~ msgid "Video already exists"
-#~ msgstr "Відео вже наявне"
-
-#~ msgid "Could not delete photo or video from device"
-#~ msgstr "Не вдалось вилучити фото або відео з пристрою"
-
-#, python-format
-#~ msgid ""
-#~ "Photo: %(source)s\n"
-#~ "Error: %(errno)s %(strerror)s"
-#~ msgstr ""
-#~ "Фото: %(source)s\n"
-#~ "Помилка: %(errno)s %(strerror)s"
-
-#, python-format
-#~ msgid "Photo: %(source)s"
-#~ msgstr "Фото: %(source)s"
-
-#, python-format
-#~ msgid "Deleted %(number)i %(filetypes)s from device"
-#~ msgstr "З пристрою вилучено %(number)i %(filetypes)s"
-
#, python-format
#~ msgid "Download complete from %s"
#~ msgstr "Завершено завантаження з %s"
@@ -2132,45 +2079,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Job Code not entered"
#~ msgstr "Мітка не введена"
-#, python-format
-#~ msgid ""
-#~ "Sorry, this device location does not exist:\n"
-#~ "%(path)s\n"
-#~ "\n"
-#~ "Please resolve the problem, or modify your preferences."
-#~ msgstr ""
-#~ "На жаль, цієї адреси пристрою немає:\n"
-#~ "%(path)s\n"
-#~ "\n"
-#~ "Вирішіть цю проблему або змініть налаштування."
-
-#~ msgid "Problem with Device Location Folder"
-#~ msgstr "Проблема з текою призначення пристрою"
-
-#, python-format
-#~ msgid "The %(file_type)s Download Folder does not exist.\n"
-#~ msgstr "Теки для завантаження %(file_type)s не існує.\n"
-
-#, python-format
-#~ msgid "The %(file_type)s Download Folder exists but cannot be written to.\n"
-#~ msgstr ""
-#~ "Тека для завантаження %(file_type)s існує, але в неї не можна записувати.\n"
-
-#~ msgid ""
-#~ "Sorry, problems were encountered with your download folders. Please fix the "
-#~ "problems or modify the preferences.\n"
-#~ "\n"
-#~ msgstr ""
-#~ "На жаль, виникли проблеми з теками для завантаження. Виправіть ці проблеми "
-#~ "або змініть налаштування.\n"
-#~ "\n"
-
-#~ msgid "Problem with Download Folder"
-#~ msgstr "Проблема з текою для завантаження"
-
-#~ msgid "Problem with Download Folders"
-#~ msgstr "Проблема з теками для завантаження"
-
#~ msgid "Some preferences will be reset."
#~ msgstr "Деякі параметри будуть скинуті."
@@ -2190,22 +2098,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Starting downloads"
#~ msgstr "Розпочинаються завантаження"
-#, python-format
-#~ msgid "Creating photo download folder %(folder)s"
-#~ msgstr "Створення теки для завантаження фото %(folder)s"
-
-#, python-format
-#~ msgid "Failed to create default photo download folder %(folder)s"
-#~ msgstr "Не вдалось створити типову теку для завантаження фото %(folder)s"
-
-#, python-format
-#~ msgid "Creating video download folder %(folder)s"
-#~ msgstr "Створення теки для завантаження відео %(folder)s"
-
-#, python-format
-#~ msgid "Failed to create default video download folder %(folder)s"
-#~ msgstr "Не вдалось створити типову теку для завантаження відео %(folder)s"
-
#~ msgid ""
#~ "A newer version of this program was previously run on this computer.\n"
#~ "\n"
@@ -2264,10 +2156,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Failed to receive pynotify server capabilities."
#~ msgstr "Не вдалося отримати властивості сервера pynotify."
-#~ msgid ""
-#~ "Warning: desktop environment notification server is incorrectly configured."
-#~ msgstr "Увага: сервер повідомлень середовища налаштований неправильно."
-
#, python-format
#~ msgid "Device %(device)s (%(path)s) ignored"
#~ msgstr "Пристрій %(device)s (%(path)s) проігнорований"
@@ -2285,18 +2173,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Using manually specified path"
#~ msgstr "Використовувати вручну зазначений шлях"
-#~ msgid "photos downloaded"
-#~ msgstr "завантажено фото"
-
-#~ msgid "photos skipped"
-#~ msgstr "пропущено фото"
-
-#~ msgid "videos downloaded"
-#~ msgstr "завантажено відео"
-
-#~ msgid "videos skipped"
-#~ msgstr "пропущено відео"
-
#~ msgid "_Download "
#~ msgstr "_Завантажити "
@@ -2312,9 +2188,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Using"
#~ msgstr "Використання"
-#~ msgid "\n"
-#~ msgstr "\n"
-
#, python-format
#~ msgid "%s is already running"
#~ msgstr "%s вже функціонує"
@@ -2334,36 +2207,14 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "These preferences are not well formed:"
#~ msgstr "Ці параметри не дуже добре підібрані:"
-#~ msgid "Subsecond metadata not present in photo"
-#~ msgstr "На фото немає метаданих підсекунд"
-
-#, python-format
-#~ msgid "%s metadata is not present"
-#~ msgstr "%s метадані не представлені"
-
#, python-format
#~ msgid "Error in date time component. Value %s appears invalid"
#~ msgstr "Помилка в компоненті дати та часу. Виникає помилкове значення %s"
-#~ msgid "extension was specified but filename does not have an extension"
-#~ msgstr "розширення було зазначене, але в назві файла його немає"
-
-#~ msgid "image or video number was specified but filename has no number"
-#~ msgstr ""
-#~ "номер зображення або відео було зазначене, але в назві файла його немає"
-
-#, python-format
-#~ msgid "%s metadata is not present in photo"
-#~ msgstr "%s метадані не представлені на фото"
-
#, python-format
#~ msgid "error generating name with component %s"
#~ msgstr "помилка генерування назви компонентом %s"
-#, python-format
-#~ msgid "%s metadata is not present in video"
-#~ msgstr "%s метадані не представлені на відео"
-
#~ msgid " "
#~ msgstr " "
@@ -2376,21 +2227,16 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Automation"
#~ msgstr "Автоматизація"
-#~ msgid ""
-#~ "Choose whether to skip downloading the file, or to add a unique indentifier."
-#~ msgstr ""
-#~ "Виберіть, чи пропустити завантаження файла, чи слід додати до назви "
-#~ "унікальний ідентифікатор."
-
-#~ msgid "Copyright Damon Lynch 2007-10"
-#~ msgstr "Авторське право: Damon Lynch 2007-10"
+#~ msgid "Backup location:"
+#~ msgstr "Місце для резервного копіювання:"
#~ msgid "Error Log"
#~ msgstr "Журнал помилок"
-#~ msgid "Exit program if download completes without any warnings or errors"
+#~ msgid "If you disable automatic detection, choose the exact backup location."
#~ msgstr ""
-#~ "Вийти з програми, якщо завантаження завершилась без зауважень та помилок"
+#~ "Якщо автоматичне виявлення вимкнено, виберіть точне місце для резервного "
+#~ "копіювання."
#~ msgid "Ignore"
#~ msgstr "Ігнорувати"
@@ -2430,20 +2276,6 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgid "Report an error"
#~ msgstr "Попередити про помилку"
-#~ msgid ""
-#~ "Sorry, video downloading functionality disabled. To download videos, please "
-#~ "install the <i>kaa metadata</i> package for python."
-#~ msgstr ""
-#~ "На жаль, немає можливості завантажувати відео. Щоб завантажувати відео, "
-#~ "встановіть пакунок <i>kaa metadata</i> для python."
-
-#~ msgid ""
-#~ "Specify what to do when a photo or video of the same name has already been "
-#~ "downloaded or backed up."
-#~ msgstr ""
-#~ "Вкажіть, що робити, якщо фото або відео з такою назвою вже завантажено або "
-#~ "створена його резервна копія."
-
#~ msgid "Specify what to do when there are no backup devices."
#~ msgstr "Вкажіть, що робити, якщо немає пристроїв для резервного копіювання."
@@ -2684,6 +2516,15 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgstr ""
#~ "Якщо автоматичне виявлення вимкнено, виберіть точне місце розташування фото."
+#~ 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."
+#~ msgstr ""
+#~ "Якщо автоматичне виявлення портативних пристроїв для зберігання увімкнено, "
+#~ "вони скануватимуться для пошуку фото. На пристроях великого об’єму це може "
+#~ "зайняти досить багато часу."
+
#~ msgid "Image Devices"
#~ msgstr "Пристрої для фото"
@@ -2762,162 +2603,3 @@ msgstr "Імпортуйте фото та відео ефективно та н
#~ msgstr ""
#~ "Ви можете створювати резервні копії фото в кількох місцях прямо під час "
#~ "завантаження, наприклад, на зовнішніх жорстких дисках."
-
-#, python-format
-#~ msgid ""
-#~ "Source: %(source)s\n"
-#~ "Destination: %(destination)s\n"
-#~ "%(problem)s"
-#~ msgstr ""
-#~ "Джерело: %(source)s\n"
-#~ "Адресат: %(destination)s\n"
-#~ "%(problem)s"
-
-#~ msgid "_Show this message again"
-#~ msgstr "_Показувати це повідомлення знову"
-
-#~ msgid "Downloading From Cameras"
-#~ msgstr "Звантаження з камер"
-
-#~ msgid "Downloading directly from a camera may work poorly or not at all"
-#~ msgstr "Звантаження з камери може працювати погано або не працювати зовсім"
-
-#~ msgid ""
-#~ "Downloading from a card reader always works and is generally much faster. It "
-#~ "is strongly recommended to use a card reader."
-#~ msgstr ""
-#~ "Звантаження з пристрою для читання карток працює завжди і, як правило, "
-#~ "набагато швидше. Настійно рекомендується використовувати його."
-
-#, python-format
-#~ msgid "Attempting to download %s files"
-#~ msgstr "Спроба завантаження %s файлів"
-
-#~ msgid "Please check your system and try again."
-#~ msgstr "Перевірте систему та спробуйте знову."
-
-#~ msgid "Path"
-#~ msgstr "Шлях"
-
-#~ msgid "Date"
-#~ msgstr "Дата"
-
-#, python-format
-#~ msgid "%(filetype)s was not downloaded"
-#~ msgstr "%(filetype)s не завантажено"
-
-#, python-format
-#~ msgid "%(filetype)s was downloaded successfully"
-#~ msgstr "%(filetype)s завантажено успішно"
-
-#~ msgid "File"
-#~ msgstr "Файл"
-
-#~ msgid "Status"
-#~ msgstr "Статус"
-
-#~ msgid "Type"
-#~ msgstr "Тип"
-
-#, python-format
-#~ msgid "%(filetype)s was downloaded but there were problems backing up"
-#~ msgstr "%(filetype)s завантажено, але виникли проблеми резервування"
-
-#, python-format
-#~ msgid "%(filetype)s was downloaded with warnings"
-#~ msgstr "%(filetype)s завантажено зі застереженнями"
-
-#, python-format
-#~ msgid "%(filetype)s is ready to be downloaded"
-#~ msgstr "%(filetype)s готово до завантаження"
-
-#, python-format
-#~ msgid "%(filetype)s will be downloaded with warnings"
-#~ msgstr "%(filetype)s буде завантажено зі застереженнями"
-
-#, python-format
-#~ msgid "%(filetype)s is about to be downloaded"
-#~ msgstr "приблизно %(filetype)s для завантаження"
-
-#, python-format
-#~ msgid "%(filetype)s was neither downloaded nor backed up"
-#~ msgstr "%(filetype)s не завантажено і не зарезервовано"
-
-#~ msgid "Enter a new Job Code and press Enter, or select an existing Job Code"
-#~ msgstr "Введіть нову мітку і натисніть «Enter», або виберіть наявну мітку"
-
-#, python-format
-#~ msgid "%(filetype)s cannot be downloaded"
-#~ msgstr "%(filetype)s не буде завантажено"
-
-#~ msgid "Preview"
-#~ msgstr "Попередній перегляд"
-
-#~ msgid "Displaying warning about downloading directly from camera"
-#~ msgstr "Показувати застереження під час завантаження прямо з камери"
-
-#~ msgid "Download device settings preferences were changed."
-#~ msgstr "Завантаження налаштувань пристрою уподобання змінилися."
-
-#, python-format
-#~ msgid "Warning: backup device %(device)s is currently being downloaded from"
-#~ msgstr ""
-#~ "Попередження: резервний пристрій %(device)s на цей час, буде завантажений з"
-
-#~ msgid "D_ownload Selected"
-#~ msgstr "З_авантажити вибрані"
-
-#~ msgid "_Resume"
-#~ msgstr "_Продовжити"
-
-#~ msgid "_Download All"
-#~ msgstr "З_авантажити все"
-
-#~ msgid "Select All Vi_deos"
-#~ msgstr "Вибрати всі _відео"
-
-#~ msgid "Select All Pho_tos"
-#~ msgstr "Вибрати всі _фото"
-
-#~ msgid "Se_lect None"
-#~ msgstr "_Зняти вибір"
-
-#~ msgid "Preview _Folders"
-#~ msgstr "Показувати _теки"
-
-#~ msgid "P_review Columns"
-#~ msgstr "По_казувати стовпчики"
-
-#~ msgid "Download folder preferences were changed."
-#~ msgstr "Параметри теки для завантаження змінились."
-
-#~ msgid "Select _All"
-#~ msgstr "Вибрати _все"
-
-#~ msgid "_Device"
-#~ msgstr "_Пристрій"
-
-#~ msgid "_Filename"
-#~ msgstr "_Назва файла"
-
-#~ msgid "_Path"
-#~ msgstr "_Шлях"
-
-#~ msgid "_Preview"
-#~ msgstr "_Попередній перегляд"
-
-#~ msgid "_Size"
-#~ msgstr "_Розмір"
-
-#~ msgid "_Type"
-#~ msgstr "_Тип"
-
-#~ msgid "Subfolder and filename preferences were changed."
-#~ msgstr "Параметри підтеки та назва файла змінились."
-
-#~ msgid "Backup preferences were changed."
-#~ msgstr "Параметри резервування змінились."
-
-#, python-format
-#~ msgid "%(free)s available"
-#~ msgstr "Доступно %(free)s"
diff --git a/rapid/ChangeLog b/rapid/ChangeLog
index cc27252..8269afb 100644
--- a/rapid/ChangeLog
+++ b/rapid/ChangeLog
@@ -1,3 +1,30 @@
+Version 0.4.7
+-------------
+
+2013-10-19
+
+Added feature to download audio files that are associated with photos such as
+those created by the Canon 1D series of cameras.
+
+Fixed bug #1242119: Choosing a new folder does not work in Ubuntu 13.10. In
+Ubuntu 13.10, choosing a destination or source folder from its bookmark does not
+work. The correct value is displayed in the file chooser button, but this value
+is not used by Rapid Photo Downloader.
+
+Fixed bug #1206853: Crashes when system message notifications not functioning
+properly.
+
+Fixed bug #909405: Allow selections by row (and not GTK default by square) when
+user is dragging the mouse or using the keyboard to select. Thank you to
+user 'Salukibob' for the patch.
+
+Added a KDE Solid action. Solid is KDE4's hardware-related framework. It detects
+when the user connects a new device and display a list of related actions.
+Thanks to dju` for the patch.
+
+Added Belarusian translation -- thanks go to Ilya Tsimokhin. Updated Swedish and
+Ukrainian translations.
+
Version 0.4.6
-------------
@@ -11,7 +38,7 @@ Added extra debugging output to help trace program execution progress.
Updated German and Spanish translations.
Version 0.4.6 Beta 1
--------------
+--------------------
2012-11-26
diff --git a/rapid/backupfile.py b/rapid/backupfile.py
index 310e665..7c91a19 100644
--- a/rapid/backupfile.py
+++ b/rapid/backupfile.py
@@ -54,7 +54,7 @@ class BackupFiles(multiprocessing.Process):
# As of Ubuntu 12.10 / Fedora 18, the file move/rename command is running agonisingly slowly
# A hackish workaround is to replace it with the standard python function
- self.use_gnome_file_operations = True
+ self.use_gnome_file_operations = False
def check_termination_request(self):
"""
@@ -99,12 +99,22 @@ class BackupFiles(multiprocessing.Process):
"""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)
+
+ if self.use_gnome_file_operations:
+ logger.debug("Backing up additional file %s...", dest_name)
+ dest=gio.File(dest_name)
+ try:
+ source.copy(dest, self.progress_callback_no_update, cancellable=None)
+ logger.debug("...backing up additional file %s succeeded", dest_name)
+ except gio.Error, inst:
+ logger.error("Failed to backup file %s: %s", full_file_name, inst)
+ else:
+ try:
+ logger.debug("Using python to back up additional file %s...", dest_name)
+ shutil.copy(full_file_name, dest_name)
+ logger.debug("...backing up additional file %s succeeded", dest_name)
+ except:
+ logger.error("Backup of %s failed", full_file_name)
def run(self):
@@ -209,10 +219,13 @@ class BackupFiles(multiprocessing.Process):
else:
rpd_file.status = config.STATUS_BACKUP_PROBLEM
else:
- # backup any THM or XMP files
+ # backup any THM, audio 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_audio_full_name:
+ self.backup_additional_file(dest_dir,
+ rpd_file.download_audio_full_name)
if rpd_file.download_xmp_full_name:
self.backup_additional_file(dest_dir,
rpd_file.download_xmp_full_name)
diff --git a/rapid/config.py b/rapid/config.py
index 977c342..1a12ea7 100644
--- a/rapid/config.py
+++ b/rapid/config.py
@@ -16,7 +16,7 @@
### Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
### USA
-version = '0.4.6'
+version = '0.4.7'
GCONF_KEY="/apps/rapid-photo-downloader"
diff --git a/rapid/copyfiles.py b/rapid/copyfiles.py
index 4a67ece..5bc243c 100644
--- a/rapid/copyfiles.py
+++ b/rapid/copyfiles.py
@@ -45,8 +45,8 @@ class CopyFiles(multiprocessing.Process):
"""
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,
+ scan_pid,
+ batch_size_MB, results_pipe, terminate_queue,
run_event):
multiprocessing.Process.__init__(self)
self.results_pipe = results_pipe
@@ -60,7 +60,7 @@ class CopyFiles(multiprocessing.Process):
self.scan_pid = scan_pid
self.no_files= len(self.files)
self.run_event = run_event
-
+
def check_termination_request(self):
"""
Check to see this process has not been requested to immediately terminate
@@ -71,8 +71,8 @@ class CopyFiles(multiprocessing.Process):
logger.info("Terminating file copying")
return True
return False
-
-
+
+
def update_progress(self, amount_downloaded, total):
# first check if process is being terminated
if not self.terminate_queue.empty():
@@ -86,65 +86,65 @@ class CopyFiles(multiprocessing.Process):
if amount_downloaded == total:
# this function is called a couple of times when total is reached
self.total_reached = True
-
+
self.results_pipe.send((rpdmp.CONN_PARTIAL, (rpdmp.MSG_BYTES, (self.scan_pid, self.total_downloaded + amount_downloaded, chunk_downloaded))))
if amount_downloaded == total:
self.bytes_downloaded = 0
-
+
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
-
+
self.cancel_copy = gio.Cancellable()
-
+
self.create_temp_dirs()
-
+
# Send the location of both temporary directories, so they can be
# removed once another process attempts to rename all the files in them
# and move them to generated subfolders
- self.results_pipe.send((rpdmp.CONN_PARTIAL, (rpdmp.MSG_TEMP_DIRS,
+ self.results_pipe.send((rpdmp.CONN_PARTIAL, (rpdmp.MSG_TEMP_DIRS,
(self.scan_pid,
self.photo_temp_dir,
self.video_temp_dir))))
-
+
if self.photo_temp_dir or self.video_temp_dir:
-
+
self.thumbnail_maker = tn.Thumbnail()
-
+
for i in range(self.no_files):
rpd_file = self.files[i]
self.total_reached = False
-
+
# pause if instructed by the caller
self.run_event.wait()
-
+
if self.check_termination_request():
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),
+ self._get_dest_dir(rpd_file.file_type),
temp_name)
rpd_file.temp_full_file_name = temp_full_file_name
dest = gio.File(path=temp_full_file_name)
-
+
copy_succeeded = False
try:
source.copy(dest, self.progress_callback, cancellable=self.cancel_copy)
@@ -154,24 +154,24 @@ class CopyFiles(multiprocessing.Process):
pn.DOWNLOAD_COPYING_ERROR_W_NO,
{'filetype': rpd_file.title})
rpd_file.add_extra_detail(
- pn.DOWNLOAD_COPYING_ERROR_W_NO_DETAIL,
+ pn.DOWNLOAD_COPYING_ERROR_W_NO_DETAIL,
{'errorno': inst.code, 'strerror': inst.message})
-
+
rpd_file.status = config.STATUS_DOWNLOAD_FAILED
-
+
rpd_file.error_title = rpd_file.problem.get_title()
rpd_file.error_msg = _("%(problem)s\nFile: %(file)s") % \
{'problem': rpd_file.problem.get_problems(),
'file': rpd_file.full_file_name}
-
+
logger.error("Failed to download file: %s", rpd_file.full_file_name)
logger.error(inst)
self.update_progress(rpd_file.size, rpd_file.size)
-
+
# increment this amount regardless of whether the copy actually
# 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)
@@ -186,8 +186,21 @@ class CopyFiles(multiprocessing.Process):
logger.error("Failed to download video THM file: %s", rpd_file.thm_full_name)
else:
temp_thm_full_name = None
-
-
+
+ #copy audio file if there is one
+ if copy_succeeded and rpd_file.audio_file_full_name:
+ source = gio.File(path=rpd_file.audio_file_full_name)
+ # reuse photo's file name
+ temp_audio_full_name = temp_full_file_name + '__rpd__audio'
+ dest = gio.File(path=temp_audio_full_name)
+ try:
+ source.copy(dest, self.thm_progress_callback, cancellable=self.cancel_copy)
+ rpd_file.temp_audio_full_name = temp_audio_full_name
+ logger.debug("Copied audio file %s", rpd_file.temp_audio_full_name)
+ except gio.Error, inst:
+ logger.error("Failed to download audio file: %s", rpd_file.audio_file_full_name)
+
+
if copy_succeeded and rpd_file.generate_thumbnail:
thumbnail, thumbnail_icon = self.thumbnail_maker.get_thumbnail(
temp_full_file_name,
@@ -197,33 +210,33 @@ class CopyFiles(multiprocessing.Process):
else:
thumbnail = None
thumbnail_icon = None
-
+
if rpd_file.metadata is not None:
rpd_file.metadata = None
-
-
+
+
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,
+
+ 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,
+ self.results_pipe.send((rpdmp.CONN_PARTIAL, (rpdmp.MSG_FILE,
(copy_succeeded, rpd_file, download_count,
- temp_full_file_name,
+ temp_full_file_name,
thumbnail_icon, thumbnail))))
-
-
+
+
self.results_pipe.send((rpdmp.CONN_COMPLETE, None))
-
+
def _get_dest_dir(self, file_type):
if file_type == rpdfile.FILE_TYPE_PHOTO:
return self.photo_temp_dir
else:
return self.video_temp_dir
-
+
def _create_temp_dir(self, folder):
try:
temp_dir = tempfile.mkdtemp(prefix="rpd-tmp-", dir=folder)
@@ -234,15 +247,15 @@ class CopyFiles(multiprocessing.Process):
strerror,
folder)
temp_dir = None
-
+
return temp_dir
-
+
def create_temp_dirs(self):
self.photo_temp_dir = self.video_temp_dir = None
if self.photo_download_folder is not None:
self.photo_temp_dir = self._create_temp_dir(self.photo_download_folder)
if self.video_download_folder is not None:
self.video_temp_dir = self._create_temp_dir(self.photo_download_folder)
-
+
diff --git a/rapid/generatename.py b/rapid/generatename.py
index 6d138e8..446aaf8 100644
--- a/rapid/generatename.py
+++ b/rapid/generatename.py
@@ -113,19 +113,34 @@ 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):
+ def _get_associated_file_extension(self, associate_file):
"""
- Generates THM extension with correct capitalization, if needed
+ Generates extensions with correct capitalization for files like
+ thumbnail or audio files.
"""
- if self.rpd_file.thm_full_name:
- thm_extension = os.path.splitext(self.rpd_file.thm_full_name)[1]
+ if associate_file:
+ extension = os.path.splitext(associate_file)[1]
if self.L2 == UPPERCASE:
- thm_extension = thm_extension.upper()
+ extension = extension.upper()
elif self.L2 == LOWERCASE:
- thm_extension = thm_extension.lower()
- self.rpd_file.thm_extension = thm_extension
+ extension = extension.lower()
else:
- self.rpd_file.thm_extension = None
+ extension = None
+ return extension
+
+
+ def _get_thm_extension(self):
+ """
+ Generates THM extension with correct capitalization, if needed
+ """
+ self.rpd_file.thm_extension = self._get_associated_file_extension(self.rpd_file.thm_full_name)
+
+ def _get_audio_extension(self):
+ """
+ Generates audio extension with correct capitalization, if needed
+ e.g. WAV or wav
+ """
+ self.rpd_file.audio_extension = self._get_associated_file_extension(self.rpd_file.audio_file_full_name)
def _get_xmp_extension(self, extension):
"""
@@ -156,11 +171,13 @@ class PhotoName:
if self.L1 == NAME_EXTENSION:
filename = self.rpd_file.name
self._get_thm_extension()
+ self._get_audio_extension()
self._get_xmp_extension(extension)
elif self.L1 == NAME:
filename = name
elif self.L1 == EXTENSION:
self._get_thm_extension()
+ self._get_audio_extension()
self._get_xmp_extension(extension)
if extension:
if not self.strip_initial_period_from_extension:
diff --git a/rapid/glade3/about.ui b/rapid/glade3/about.ui
index 221c62e..0a82e74 100644
--- a/rapid/glade3/about.ui
+++ b/rapid/glade3/about.ui
@@ -34,6 +34,7 @@ Torben Gundtofte-Bruun &lt;torben@g-b.dk&gt;
Miroslav Matejaš &lt;silverspace@ubuntu-hr.org&gt;
Nicolás M. Zahlut &lt;nzahlut@live.com&gt;
Erik M
+Toni Lähdekorpi &lt;toni@lygon.net&gt;
Jose Luis Navarro &lt;jlnavarro111@gmail.com&gt;
Tomas Novak &lt;kuvaly@seznam.cz&gt;
Abel O'Rian &lt;abel.orian@gmail.com&gt;
@@ -47,7 +48,7 @@ Mikko Ruohola &lt;polarfox@polarfox.net&gt;
Ahmed Shubbar &lt;ahmed.shubbar@gmail.com&gt;
Sergei Sedov &lt;sedov@webmail.perm.ru&gt;
Marco Solari &lt;marcosolari@gmail.com&gt;
-Toni Lähdekorpi &lt;toni@lygon.net&gt;
+Ilya Tsimokhin &lt;ilya@tsimokhin.com&gt;
Ulf Urdén &lt;ulf.urden@purplescout.com&gt;
Julien Valroff &lt;julien@kirya.net&gt;
Aron Xu &lt;happyaron.xu@gmail.com&gt;
diff --git a/rapid/misc.py b/rapid/misc.py
index 69b4a93..a2c6d08 100644
--- a/rapid/misc.py
+++ b/rapid/misc.py
@@ -19,6 +19,8 @@
### USA
# modified by Damon Lynch 2009 to remove default bold formatting and alignment
+# modified by Damon Lynch 2103 to add function to get folder chosen by user in file chooser button
+
"""Module of commonly used helper classes and functions
"""
@@ -44,3 +46,15 @@ def run_dialog( text, secondarytext=None, parent=None, messagetype=gtk.MESSAGE_
ret = d.run()
d.destroy()
return ret
+
+def get_folder_selection(filechooserbutton):
+ """
+ Returns the path (folder) the user has chosen in a filechooserbutton
+ """
+ # this no longer works on Ubuntu 13.10:
+ # path = filechooserbutton.get_current_folder()
+ # but this works on Ubuntu 13.10:
+ path = filechooserbutton.get_filenames() #returns a list
+ if path:
+ path = path[0]
+ return path
diff --git a/rapid/preferencesdialog.py b/rapid/preferencesdialog.py
index 6e1f548..295b6e7 100644
--- a/rapid/preferencesdialog.py
+++ b/rapid/preferencesdialog.py
@@ -965,23 +965,33 @@ class PreferencesDialog():
self.treeview.set_cursor(0,column)
def on_download_folder_filechooser_button_selection_changed(self, widget):
- self.prefs.download_folder = widget.get_current_folder()
- self.update_photo_download_folder_example()
+ path = misc.get_folder_selection(widget)
+ if path:
+ self.prefs.download_folder = path
+ self.update_photo_download_folder_example()
def on_video_download_folder_filechooser_button_selection_changed(self, widget):
- self.prefs.video_download_folder = widget.get_current_folder()
- self.update_video_download_folder_example()
+ path = misc.get_folder_selection(widget)
+ if path:
+ self.prefs.video_download_folder = path
+ self.update_video_download_folder_example()
def on_backup_folder_filechooser_button_selection_changed(self, widget):
- self.prefs.backup_location = widget.get_current_folder()
- self.update_backup_example()
+ path = misc.get_folder_selection(widget)
+ if path:
+ self.prefs.backup_location = path
+ self.update_backup_example()
def on_backup_video_folder_filechooser_button_selection_changed(self, widget):
- self.prefs.backup_video_location = widget.get_current_folder()
- self.update_backup_example()
+ path = misc.get_folder_selection(widget)
+ if path:
+ self.prefs.backup_video_location = path
+ self.update_backup_example()
def on_device_location_filechooser_button_selection_changed(self, widget):
- self.prefs.device_location = widget.get_current_folder()
+ path = misc.get_folder_selection(widget)
+ if path:
+ self.prefs.device_location = path
def on_add_ignored_path_button_clicked(self, widget):
i = IgnorePathDialog(parent_window = self.dialog,
diff --git a/rapid/rapid.py b/rapid/rapid.py
index 7de18c2..4f7e6bc 100755
--- a/rapid/rapid.py
+++ b/rapid/rapid.py
@@ -54,6 +54,8 @@ logger = log_to_stderr()
import rpdfile
+from misc import get_folder_selection
+
import problemnotification as pn
import thumbnail as tn
import rpdmultiprocessing as rpdmp
@@ -343,7 +345,10 @@ class DeviceCollection(gtk.TreeView):
n = pynotify.Notification(title, message)
n.set_icon_from_pixbuf(self.parent_app.application_icon)
- n.show()
+ try:
+ n.show()
+ except:
+ logger.error("Unable to display message using notification system")
def create_cairo_image_surface(pil_image, image_width, image_height):
@@ -627,6 +632,20 @@ class ThumbnailDisplay(gtk.IconView):
self.liststore.set_sort_column_id(self.TIMESTAMP_COL, gtk.SORT_ASCENDING)
def on_selection_changed(self, iconview):
+ """
+ Allow selections by row (and not GTK default by square) when user is
+ dragging the mouse or using the keyboard to select
+ """
+ selections = self.get_selected_items()
+ if len(selections) > 1:
+ previous_sel = selections[0][0] + 1
+ # seleted items list always starts with the highest selected item
+ for selection in selections:
+ current_sel = selection[0]
+ if current_sel <> (previous_sel-1):
+ for i in range(previous_sel-1, current_sel, -1):
+ self.select_path(i)
+ previous_sel = current_sel
self._selected_items = self.get_selected_items()
def on_checkbutton_toggled(self, cellrenderertoggle, path):
@@ -1838,7 +1857,7 @@ class RapidApp(dbus.service.Object):
if path:
if (path in self.prefs.device_blacklist and
self.search_for_PSD()):
- logger.info("%s ignored", mount.get_name())
+ logger.info("blacklisted device %s ignored", mount.get_name())
else:
logger.info("Detected %s", mount.get_name())
is_backup_mount, backup_file_type = self.check_if_backup_mount(path)
@@ -2807,7 +2826,10 @@ class RapidApp(dbus.service.Object):
n = pynotify.Notification(notification_name, message)
n.set_icon_from_pixbuf(icon)
- n.show()
+ try:
+ n.show()
+ except:
+ logger.error("Unable to display message using notification system")
def notify_download_complete(self):
if self.display_summary_notification:
@@ -2859,7 +2881,10 @@ class RapidApp(dbus.service.Object):
if use_pynotify:
n = pynotify.Notification(PROGRAM_NAME, message)
n.set_icon_from_pixbuf(self.application_icon)
- n.show()
+ try:
+ n.show()
+ except:
+ logger.error("Unable to display message using notification system")
self.display_summary_notification = False # don't show it again unless needed
@@ -3373,6 +3398,10 @@ class RapidApp(dbus.service.Object):
self._set_to_toolbar_values()
self.to_photo_filechooser_button.connect("selection-changed",
self.on_to_photo_filechooser_button_selection_changed)
+ #~ self.to_photo_filechooser_button.connect("file-set",
+ #~ self.on_to_photo_filechooser_button_file_set)
+ #~ self.to_photo_filechooser_button.connect("current-folder-changed",
+ #~ self.on_to_photo_filechooser_button_current_folder_changed)
self.to_video_filechooser_button.connect("selection-changed",
self.on_to_video_filechooser_button_selection_changed)
self.dest_toolbar.show_all()
@@ -3426,17 +3455,28 @@ class RapidApp(dbus.service.Object):
def on_from_filechooser_button_selection_changed(self, filechooserbutton):
logger.debug("on_from_filechooser_button_selection_changed")
- path = filechooserbutton.get_current_folder()
+ path = get_folder_selection(filechooserbutton)
if path and not self.rerun_setup_available_image_and_video_media:
self.prefs.device_location = path
+ def on_from_filechooser_button_file_set(self, button):
+ logger.debug("on_from_filechooser_button_file_set")
+
+ def on_to_photo_filechooser_button_file_set(self, filechooserbutton):
+ logger.debug("on_to_filechooser_button_file_set")
+
def on_to_photo_filechooser_button_selection_changed(self, filechooserbutton):
- path = filechooserbutton.get_current_folder()
+ logger.debug("on_to_filechooser_button_selection_changed")
+ path = get_folder_selection(filechooserbutton)
+ #~ logger.debug("Path: %s", path)
if path:
self.prefs.download_folder = path
+ def on_to_photo_filechooser_button_current_folder_changed(self, filechooserbutton):
+ logger.debug("on_to_photo_filechooser_button_current_folder_changed")
+
def on_to_video_filechooser_button_selection_changed(self, filechooserbutton):
- path = filechooserbutton.get_current_folder()
+ path = get_folder_selection(filechooserbutton)
if path:
self.prefs.video_download_folder = path
diff --git a/rapid/rpdfile.py b/rapid/rpdfile.py
index a405782..3749554 100644
--- a/rapid/rpdfile.py
+++ b/rapid/rpdfile.py
@@ -42,20 +42,22 @@ import problemnotification as pn
import thumbnail as tn
-RAW_EXTENSIONS = ['arw', 'dcr', 'cr2', 'crw', 'dng', 'mos', 'mef', 'mrw',
- 'nef', 'nrw', 'orf', 'pef', 'raf', 'raw', 'rw2', 'sr2',
+RAW_EXTENSIONS = ['arw', 'dcr', 'cr2', 'crw', 'dng', 'mos', 'mef', 'mrw',
+ 'nef', 'nrw', 'orf', 'pef', 'raf', 'raw', 'rw2', 'sr2',
'srw']
-
+
JPEG_EXTENSIONS = ['jpg', 'jpe', 'jpeg']
NON_RAW_IMAGE_EXTENSIONS = JPEG_EXTENSIONS + ['tif', 'tiff']
PHOTO_EXTENSIONS = RAW_EXTENSIONS + NON_RAW_IMAGE_EXTENSIONS
+AUDIO_EXTENSIONS = ['wav', 'mp3']
+
if metadatavideo.DOWNLOAD_VIDEO:
- # some distros do not include the necessary libraries that Rapid Photo Downloader
+ # some distros do not include the necessary libraries that Rapid Photo Downloader
# needs to be able to download videos
- VIDEO_EXTENSIONS = ['3gp', 'avi', 'm2t', 'mov', 'mp4', 'mpeg','mpg', 'mod',
+ VIDEO_EXTENSIONS = ['3gp', 'avi', 'm2t', 'mov', 'mp4', 'mpeg','mpg', 'mod',
'tod']
if metadataexiftool.EXIFTOOL_VERSION is not None:
VIDEO_EXTENSIONS += ['mts']
@@ -71,7 +73,7 @@ FILE_TYPE_VIDEO = 1
def file_type(file_extension):
"""
Uses file extentsion to determine the type of file - photo or video.
-
+
Returns True if yes, else False.
"""
if file_extension in PHOTO_EXTENSIONS:
@@ -79,47 +81,50 @@ def file_type(file_extension):
elif file_extension in VIDEO_EXTENSIONS:
return FILE_TYPE_VIDEO
return None
-
-def get_rpdfile(extension, name, display_name, path, size,
- file_system_modification_time, thm_full_name,
+
+def get_rpdfile(extension, name, display_name, path, size,
+ file_system_modification_time,
+ thm_full_name, audio_file_full_name,
scan_pid, file_id, file_type):
-
+
if file_type == FILE_TYPE_VIDEO:
return Video(name, display_name, path, size,
file_system_modification_time, thm_full_name,
+ audio_file_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, thm_full_name,
+ audio_file_full_name,
scan_pid, file_id)
class FileTypeCounter:
def __init__(self):
self._counter = dict()
-
+
def add(self, file_type):
self._counter[file_type] = self._counter.setdefault(file_type, 0) + 1
-
+
def no_videos(self):
"""Returns the number of videos"""
return self._counter.setdefault(FILE_TYPE_VIDEO, 0)
-
+
def no_photos(self):
"""Returns the number of photos"""
return self._counter.setdefault(FILE_TYPE_PHOTO, 0)
-
+
def file_types_present(self):
- """
+ """
returns a string to be displayed to the user that can be used
to show if a value refers to photos or videos or both, or just one
of each
"""
-
+
no_videos = self.no_videos()
no_images = self.no_photos()
-
+
if (no_videos > 0) and (no_images > 0):
v = _('photos and videos')
elif (no_videos == 0) and (no_images == 0):
@@ -134,14 +139,14 @@ class FileTypeCounter:
v = _('photos')
else:
v = _('photo')
- return v
-
+ return v
+
def count_files(self):
i = 0
for key in self._counter:
i += self._counter[key]
return i
-
+
def summarize_file_count(self):
"""
Summarizes the total number of photos and/or videos that can be
@@ -153,26 +158,27 @@ class FileTypeCounter:
file_types_present = self.file_types_present()
file_count_summary = _("%(number)s %(filetypes)s") % \
{'number':self.count_files(),
- 'filetypes': file_types_present}
+ 'filetypes': file_types_present}
return (file_count_summary, file_types_present)
-
+
def running_file_count(self):
"""
- Displays raw numbers of photos and videos. Displayed as a scan is
- occurring.
+ Displays raw numbers of photos and videos. Displayed as a scan is
+ occurring.
"""
return _("scanning (found %(photos)s photos and %(videos)s videos)...") % ({'photos': self.no_photos(),
'videos': self.no_videos()})
-
+
class RPDFile:
"""
Base class for photo or video file, with metadata
"""
- def __init__(self, name, display_name, path, size,
+ def __init__(self, name, display_name, path, size,
file_system_modification_time, thm_full_name,
+ audio_file_full_name,
scan_pid, file_id):
-
+
self.path = path
self.name = name
@@ -180,38 +186,43 @@ class RPDFile:
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
-
+
+ #full path and name of audio file that is associated with some photos and maybe one day videos
+ #think Canon 1D series of cameras
+ self.audio_file_full_name = audio_file_full_name
+
self.status = config.STATUS_NOT_DOWNLOADED
self.problem = None # class Problem in problemnotifcation.py
-
+
self._assign_file_type()
-
+
self.scan_pid = scan_pid
self.file_id = file_id
self.unique_id = str(scan_pid) + ":" + file_id
-
+
self.problem = None
self.job_code = None
-
+
# indicates whether to generate a thumbnail during the copy
# files process
self.generate_thumbnail = False
-
+
# generated values
-
+
self.temp_full_file_name = ''
self.temp_thm_full_name = ''
+ self.temp_audio_full_name = ''
self.temp_xmp_full_name = ''
-
+
self.download_start_time = None
-
+
self.download_subfolder = ''
self.download_path = ''
self.download_name = ''
@@ -219,63 +230,65 @@ class RPDFile:
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.download_audio_full_name = '' #name of the WAV or MP3 audio file with path
+
self.metadata = None
-
+
# Values that will be inserted in download process --
# (commented out because they're not needed until then)
-
+
#self.sequences = None
#self.download_folder
#self.subfolder_pref_list = []
#self.name_pref_list = []
#strip_characters = False
#self.thm_extension = ''
+ #self.wav_extension = ''
#self.xmp_extension = ''
-
- #these values are set only if they were written to an xmp sidecar
+
+ #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
-
+ 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
# the information in them can vary from other forms of display of errors
self.error_title = self.error_msg = self.error_extra_detail = ''
-
+
def has_problem(self):
if self.problem is None:
return False
else:
return self.problem.has_problem()
-
+
def add_problem(self, component, problem_definition, *args):
if self.problem is None:
self.initialize_problem()
self.problem.add_problem(component, problem_definition, *args)
-
+
def add_extra_detail(self, extra_detail, *args):
self.problem.add_extra_detail(extra_detail, *args)
-
+
class Photo(RPDFile):
-
+
title = _("photo")
title_capitalized = _("Photo")
-
+
def _assign_file_type(self):
self.file_type = FILE_TYPE_PHOTO
-
+
def load_metadata(self, temp_file=False):
self.metadata = metadataphoto.MetaData(self._load_file_for_metadata(temp_file))
try:
@@ -285,16 +298,16 @@ class Photo(RPDFile):
return False
else:
return True
-
-
+
+
class Video(RPDFile):
-
+
title = _("video")
title_capitalized = _("Video")
-
+
def _assign_file_type(self):
self.file_type = FILE_TYPE_VIDEO
-
+
def load_metadata(self, temp_file=False):
if self.extension == 'mts' or not metadatavideo.HAVE_HACHOIR:
if metadatavideo.HAVE_HACHOIR:
@@ -303,31 +316,33 @@ class Video(RPDFile):
else:
self.metadata = metadatavideo.VideoMetaData(self._load_file_for_metadata(temp_file))
return True
-
+
class SamplePhoto(Photo):
def __init__(self, sample_name='IMG_0524.CR2', sequences=None):
Photo.__init__(self, name=sample_name,
display_name=sample_name,
path='/media/EOS_DIGITAL/DCIM/100EOS5D',
- size=23516764,
- file_system_modification_time=time.time(),
+ size=23516764,
+ file_system_modification_time=time.time(),
scan_pid=2033,
file_id='9873afe',
- thm_full_name=None)
+ thm_full_name=None,
+ audio_file_full_name=None)
self.sequences = sequences
self.metadata = metadataphoto.DummyMetaData()
self.download_start_time = datetime.datetime.now()
-
+
class SampleVideo(Video):
def __init__(self, sample_name='MVI_1379.MOV', sequences=None):
Video.__init__(self, name=sample_name,
display_name=sample_name,
path='/media/EOS_DIGITAL/DCIM/100EOS5D',
- size=823513764,
- file_system_modification_time=time.time(),
+ size=823513764,
+ file_system_modification_time=time.time(),
scan_pid=2033,
file_id='9873qrsfe',
- thm_full_name=None)
+ thm_full_name=None,
+ audio_file_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 637031a..f0e4422 100755
--- a/rapid/scan.py
+++ b/rapid/scan.py
@@ -42,59 +42,71 @@ 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.
- """
-
+def get_associated_file(full_file_name_no_ext, extensions_to_check):
+
f = None
- for e in rpdfile.VIDEO_THUMBNAIL_EXTENSIONS:
+ for e in extensions_to_check:
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
+ return f
+
+def get_audio_file(full_file_name_no_ext):
+ """
+ Checks to see if an audio file of the same name 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.
+ """
+ return get_associated_file(full_file_name_no_ext, rpdfile.AUDIO_EXTENSIONS)
+
+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.
+ """
+
+ return get_associated_file(full_file_name_no_ext, rpdfile.VIDEO_THUMBNAIL_EXTENSIONS)
class Scan(multiprocessing.Process):
"""Scans the given path for files of a specified type.
-
+
Returns results in batches, finishing with a total of the size of all the
files in bytes.
"""
-
+
def __init__(self, path, ignored_paths, use_re_ignored_paths,
- batch_size, results_pipe,
+ batch_size, results_pipe,
terminate_queue, run_event):
-
+
"""Setup values needed to conduct the scan.
-
+
'path' is a string of the path to be scanned, which is passed to gio.
-
+
'ignored_paths' is a list of paths that should not be scanned. Any path
ending with one of the values will be ignored.
-
+
'use_re_ignored_paths': if true, pytho regular expressions will be used
to determine which paths to ignore
-
- 'batch_size' is the number of files that should be sent back to the
+
+ 'batch_size' is the number of files that should be sent back to the
calling function at one time.
-
+
'results_pipe' is a connection on which to send the results.
-
- 'terminate_queue' is a queue whose sole purpose is to notify the
+
+ 'terminate_queue' is a queue whose sole purpose is to notify the
process that it should terminate and not return any results.
-
+
'run_event' is an Event that is used to temporarily halt execution.
-
+
"""
-
+
multiprocessing.Process.__init__(self)
self.path = path
self.ignored_paths = ignored_paths
@@ -107,18 +119,18 @@ class Scan(multiprocessing.Process):
self.files_scanned = 0
self.files = []
self.file_type_counter = rpdfile.FileTypeCounter()
-
+
def _gio_scan(self, path, file_size_sum):
"""recursive function to scan a directory and its subdirectories
for photos and possibly videos"""
-
+
children = path.enumerate_children(file_attributes)
-
+
for child in children:
-
+
# pause if instructed by the caller
self.run_event.wait()
-
+
if not self.terminate_queue.empty():
x = self.terminate_queue.get()
# terminate immediately
@@ -128,26 +140,26 @@ class Scan(multiprocessing.Process):
# only collect files and scan in directories we can actually read
# cannot assume that users will download only from memory cards
-
+
if child.get_attribute_boolean(gio.FILE_ATTRIBUTE_ACCESS_CAN_READ):
file_type = child.get_file_type()
name = child.get_name()
if file_type == gio.FILE_TYPE_DIRECTORY:
if not self.ignore_this_path(name):
- file_size_sum = self._gio_scan(path.get_child(name),
+ file_size_sum = self._gio_scan(path.get_child(name),
file_size_sum)
if file_size_sum is None:
return None
elif file_type == gio.FILE_TYPE_REGULAR:
-
+
self.files_scanned += 1
if self.files_scanned % 100 == 0:
logger.debug("Scanned %s files", self.files_scanned)
-
+
base_name, ext = os.path.splitext(name)
ext = ext.lower()[1:]
-
+
file_type = rpdfile.file_type(ext)
if file_type is not None:
file_id = child.get_attribute_string(
@@ -161,31 +173,35 @@ class Scan(multiprocessing.Process):
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,
+
+ # check if an audio file is associated with the photo or video
+ audio_file_full_name = get_audio_file(os.path.join(path_name, base_name))
+
+ scanned_file = rpdfile.get_rpdfile(ext,
+ name,
+ display_name,
path_name,
size,
modification_time,
- thm_full_name,
+ thm_full_name,
+ audio_file_full_name,
self.pid,
file_id,
file_type)
-
+
self.files.append(scanned_file)
file_size_sum += size
-
+
if self.counter == self.batch_size:
# send batch of results
- self.results_pipe.send((rpdmp.CONN_PARTIAL,
- (file_size_sum,
+ self.results_pipe.send((rpdmp.CONN_PARTIAL,
+ (file_size_sum,
self.file_type_counter,
self.pid,
self.files)))
@@ -193,14 +209,14 @@ class Scan(multiprocessing.Process):
self.counter = 0
return file_size_sum
-
+
def run(self):
"""start the actual scan."""
-
+
if self.use_re_ignored_paths and len(self.ignored_paths):
self.re_pattern = prefsrapid.check_and_compile_re(self.ignored_paths)
-
+
source = gio.File(self.path)
try:
if not self.ignore_this_path(self.path):
@@ -210,25 +226,25 @@ class Scan(multiprocessing.Process):
except gio.Error, inst:
logger.error("Error while scanning %s: %s", self.path, inst)
size = None
-
+
if size is not None:
if self.counter > 0:
# send any remaining results
- self.results_pipe.send((rpdmp.CONN_PARTIAL, (size,
+ self.results_pipe.send((rpdmp.CONN_PARTIAL, (size,
self.file_type_counter,
self.pid,
self.files)))
-
- self.results_pipe.send((rpdmp.CONN_COMPLETE, (size,
+
+ self.results_pipe.send((rpdmp.CONN_COMPLETE, (size,
self.file_type_counter, self.pid)))
- self.results_pipe.close()
+ self.results_pipe.close()
def ignore_this_path(self, path):
"""
determines if the path should be ignored according to the preferences
chosen by the user
"""
-
+
if len(self.ignored_paths):
if self.use_re_ignored_paths and self.re_pattern:
# regular expressions are being used
@@ -238,5 +254,5 @@ class Scan(multiprocessing.Process):
# regular expressions are not being used
if path.endswith(tuple(self.ignored_paths)):
return True
-
+
return False
diff --git a/rapid/subfolderfile.py b/rapid/subfolderfile.py
index 4e23309..ec99a6a 100644
--- a/rapid/subfolderfile.py
+++ b/rapid/subfolderfile.py
@@ -268,6 +268,67 @@ class SubfolderFile(multiprocessing.Process):
return rpd_file
+ def _move_associate_file(self, extension, full_base_name, temp_associate_file):
+ """Move (rename) the associate file using the pregenerated name
+
+ Returns tuple of result (True if succeeded, False otherwise) and
+ full path and filename"""
+
+ download_full_name = full_base_name + extension
+
+ # move (rename) associate file
+ if self.use_gnome_file_operations:
+ source = gio.File(path=temp_associate_file)
+ dest = gio.File(path=download_full_name)
+ try:
+ source.move(dest, self.progress_callback_no_update, cancellable=None)
+ success = True
+ except gio.Error, inst:
+ success = False
+ else:
+ try:
+ # don't check to see if it already exists
+ shutil.move(temp_associate_file, download_full_name)
+ success = True
+ except:
+ success = False
+
+ return (success, download_full_name)
+
+ def move_thm_file(self, rpd_file):
+ """Move (rename) the THM thumbnail file using the pregenerated 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'
+
+ result, rpd_file.download_thm_full_name = self._move_associate_file(ext, rpd_file.download_full_base_name, rpd_file.temp_thm_full_name)
+
+ if not result:
+ logger.error("Failed to move video THM file %s", rpd_file.download_thm_full_name)
+
+ return rpd_file
+
+ def move_audio_file(self, rpd_file):
+ """Move (rename) the associate audio file using the pregenerated name"""
+ ext = None
+ if hasattr(rpd_file, 'audio_extension'):
+ if rpd_file.audio_extension:
+ ext = rpd_file.audio_extension
+ if ext is None:
+ ext = '.WAV'
+
+ result, rpd_file.download_audio_full_name = self._move_associate_file(ext, rpd_file.download_full_base_name, rpd_file.temp_audio_full_name)
+
+ if not result:
+ logger.error("Failed to move file's associated audio file %s", rpd_file.download_audio_full_name)
+
+ return rpd_file
+
+
+
def run(self):
"""
Get subfolder and name.
@@ -487,7 +548,7 @@ class SubfolderFile(multiprocessing.Process):
else:
rpd_file = self.download_failure_file_error(rpd_file, inst.strerror)
except:
- rpd_file = self.download_failure_file_error(rpd_file, inst.strerror)
+ rpd_file = self.download_failure_file_error(rpd_file, "An unknown error occurred while renaming the file")
if add_unique_identifier:
name = os.path.splitext(rpd_file.download_name)
@@ -553,30 +614,10 @@ class SubfolderFile(multiprocessing.Process):
self.downloads_today_date.value = self.downloads_today_tracker.get_raw_downloads_today_date()
if 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
-
- # copy and rename THM video file
- if self.use_gnome_file_operations:
- source = gio.File(path=rpd_file.temp_thm_full_name)
- 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)
- else:
- try:
- # don't check to see if it already exists
- shutil.move(rpd_file.temp_thm_full_name, download_thm_full_name)
- rpd_file.download_thm_full_name = download_thm_full_name
- except:
- logger.error("Failed to move video THM file %s", download_thm_full_name)
+ rpd_file = self.move_thm_file(rpd_file)
+
+ if rpd_file.temp_audio_full_name:
+ rpd_file = self.move_audio_file(rpd_file)
if rpd_file.temp_xmp_full_name:
# copy and rename XMP sidecar file
diff --git a/setup.py b/setup.py
index b6c36d4..9eb9b14 100644
--- a/setup.py
+++ b/setup.py
@@ -52,8 +52,8 @@ package_data={'rapid': ['glade3/about.ui',
'glade3/errorlog.ui',
'glade3/media-eject.png',
'glade3/rapid-photo-downloader.svg',
- 'glade3/rapid-photo-downloader-download-pending.png',
- 'glade3/rapid-photo-downloader-downloaded-with-error.svg',
+ 'glade3/rapid-photo-downloader-download-pending.png',
+ 'glade3/rapid-photo-downloader-downloaded-with-error.svg',
'glade3/rapid-photo-downloader-downloaded-with-warning.svg',
'glade3/rapid-photo-downloader-downloaded.svg',
'glade3/rapid-photo-downloader-jobcode.svg',
@@ -75,12 +75,12 @@ setup(name=name,
long_description=
"""Rapid Photo Downloader is written by a photographer for professional and
amateur photographers. It can download photos and videos from multiple
-cameras, memory cards and Portable Storage Devices simultaneously. It
+cameras, memory cards and Portable Storage Devices simultaneously. It
provides many flexible, user-defined options for subfolder creation,
photo and video renaming, and backup.
""",
- packages = ['rapid'],
- package_data=package_data,
+ packages = ['rapid'],
+ package_data=package_data,
scripts=['rapid-photo-downloader'],
platforms=['linux'],
data_files=[
@@ -91,6 +91,7 @@ photo and video renaming, and backup.
('share/icons/hicolor/22x22/apps', glob.glob('data/icons/22x22/apps/*.png')),
('share/icons/hicolor/24x24/apps', glob.glob('data/icons/24x24/apps/*.png')),
('share/icons/hicolor/48x48/apps', glob.glob('data/icons/48x48/apps/*.png')),
- ],
- cmdclass={'install_data': InstallData}
+ ('/usr/share/kde4/apps/solid/actions/', ['data/kde/rapid-photo-downloader.desktop']),
+ ],
+ cmdclass={'install_data': InstallData}
)