diff --git a/src/calibre/gui2/keyboard.py b/src/calibre/gui2/keyboard.py index 0876e7c6fa..b89a801a7f 100644 --- a/src/calibre/gui2/keyboard.py +++ b/src/calibre/gui2/keyboard.py @@ -374,8 +374,8 @@ class Editor(QFrame): # {{{ self.current_keys]) if not current: current = _('None') - self.use_default.setText(_('Default: %s [Currently not conflicting: %s]')% - (default, current)) + self.use_default.setText(_('Default: %(deflt)s [Currently not conflicting: %(curr)s]')% + dict(deflt=default, curr=current)) if shortcut['set_to_default']: self.use_default.setChecked(True) diff --git a/src/calibre/translations/calibre.pot b/src/calibre/translations/calibre.pot index 9b76c0c42e..7673be83c7 100644 --- a/src/calibre/translations/calibre.pot +++ b/src/calibre/translations/calibre.pot @@ -4,9 +4,9 @@ # msgid "" msgstr "" -"Project-Id-Version: calibre 0.8.14\n" -"POT-Creation-Date: 2011-08-12 10:32+MDT\n" -"PO-Revision-Date: 2011-08-12 10:32+MDT\n" +"Project-Id-Version: calibre 0.8.15\n" +"POT-Creation-Date: 2011-08-19 09:03+MDT\n" +"PO-Revision-Date: 2011-08-19 09:03+MDT\n" "Last-Translator: Automatically generated\n" "Language-Team: LANGUAGE\n" "MIME-Version: 1.0\n" @@ -51,9 +51,9 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:34 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:35 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:98 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:466 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:471 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:738 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:477 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:482 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:749 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:36 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/ereader.py:61 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/extz.py:23 @@ -64,8 +64,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:66 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:120 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/meta.py:122 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1080 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1190 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1118 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1228 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdb.py:41 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/pdf.py:29 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/plucker.py:25 @@ -80,11 +80,12 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/covers.py:79 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/covers.py:81 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/douban.py:80 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:81 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:82 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/identify.py:257 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/identify.py:362 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/identify.py:364 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/identify.py:465 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/ozon.py:116 #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/txt.py:18 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:43 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:69 @@ -96,7 +97,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:969 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/reader.py:971 #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/utils.py:299 -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer2/indexer.py:489 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer2/indexer.py:496 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:99 #: /home/kovid/work/calibre/src/calibre/ebooks/odt/input.py:101 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1001 @@ -131,14 +132,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/writer.py:102 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:313 #: /home/kovid/work/calibre/src/calibre/ebooks/rtf/input.py:315 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:378 -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:386 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:379 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:387 #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:158 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:377 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:380 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:161 #: /home/kovid/work/calibre/src/calibre/gui2/add.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:555 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:562 #: /home/kovid/work/calibre/src/calibre/gui2/convert/__init__.py:42 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:122 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:151 @@ -149,21 +150,21 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/add_empty_book.py:68 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:128 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:47 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:766 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:774 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:372 #: /home/kovid/work/calibre/src/calibre/gui2/email.py:185 #: /home/kovid/work/calibre/src/calibre/gui2/email.py:200 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:404 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1011 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1191 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1194 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1197 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1282 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:84 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:233 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:252 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:120 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:364 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1026 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1206 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1209 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1212 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1297 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:85 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:234 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:253 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:131 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:385 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:161 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:165 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:170 @@ -171,14 +172,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/viewer/main.py:200 #: /home/kovid/work/calibre/src/calibre/library/cli.py:217 #: /home/kovid/work/calibre/src/calibre/library/database.py:914 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:535 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:543 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:554 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2006 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2153 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3171 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3173 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3306 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:539 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:547 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:558 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2035 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:2185 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3240 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3242 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3375 #: /home/kovid/work/calibre/src/calibre/library/server/content.py:225 #: /home/kovid/work/calibre/src/calibre/library/server/content.py:226 #: /home/kovid/work/calibre/src/calibre/library/server/mobile.py:243 @@ -200,7 +201,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/customize/__init__.py:148 #: /home/kovid/work/calibre/src/calibre/ebooks/html/to_zip.py:81 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:360 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:363 msgid "Customize" msgstr "" @@ -311,310 +312,310 @@ msgstr "" msgid "Set metadata from %s files" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:725 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:726 msgid "Add books to calibre or the connected device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:730 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:731 msgid "Fetch annotations from a connected Kindle (experimental)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:735 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:736 msgid "Generate a catalog of the books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:740 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:741 msgid "Convert books to various ebook formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:745 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:746 msgid "Delete books from your calibre library or connected device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:750 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:751 msgid "Edit the metadata of books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:755 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:756 msgid "Read books in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:760 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:761 msgid "Download news from the internet in ebook form" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:765 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:766 msgid "Show a list of related books quickly" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:770 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:771 msgid "Export books from your calibre library to the hard disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:775 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:776 msgid "Show book details in a separate popup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:780 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:781 msgid "Restart calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:785 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:786 msgid "Open the folder that contains the book files in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:791 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:792 msgid "Send books to the connected device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:796 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:797 msgid "Send books via email or the web also connect to iTunes or folders on your computer as if they are devices" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:802 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:803 #: /home/kovid/work/calibre/src/calibre/gui2/actions/help.py:16 msgid "Browse the calibre User Manual" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:807 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:808 msgid "Customize calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:812 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:813 msgid "Easily find books similar to the currently selected one" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:817 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:818 msgid "Switch between different calibre libraries and perform maintenance on them" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:823 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:824 msgid "Copy books from the devce to your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:828 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:829 msgid "Edit the collections in which books are placed on your device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:833 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:834 msgid "Copy a book from one calibre library to another" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:838 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:839 msgid "Make small tweaks to epub files in your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:843 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:844 msgid "Find the next or previous match when searching in your calibre library in highlight mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:849 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:850 msgid "Choose a random book from your calibre library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:856 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:857 msgid "Search for books from different book sellers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:872 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:873 msgid "Get new calibre plugins or update your existing ones" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:891 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:892 msgid "Look and Feel" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:893 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:905 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:916 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:927 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:939 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:894 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:906 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:917 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:928 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:940 msgid "Interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:897 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:898 msgid "Adjust the look and feel of the calibre interface to suit your tastes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:903 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:904 msgid "Behavior" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:909 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:910 msgid "Change the way calibre behaves" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:914 -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:232 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:915 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:233 msgid "Add your own columns" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:920 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:921 msgid "Add/remove your own columns to the calibre book list" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:925 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:926 msgid "Toolbar" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:931 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:932 msgid "Customize the toolbars and context menus, changing which actions are available in each" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:937 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:938 msgid "Searching" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:943 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:944 msgid "Customize the way searching for books works in calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:948 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:949 msgid "Input Options" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:950 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:961 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:972 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:951 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:962 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:973 msgid "Conversion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:954 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:955 msgid "Set conversion options specific to each input format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:959 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:960 msgid "Common Options" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:965 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:966 msgid "Set conversion options common to all formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:970 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:971 msgid "Output Options" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:976 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:977 msgid "Set conversion options specific to each output format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:981 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:982 msgid "Adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:983 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:995 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1007 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1019 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:984 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:996 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1008 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1020 msgid "Import/Export" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:987 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:988 msgid "Control how calibre reads metadata from files when adding books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:993 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:994 msgid "Saving books to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:999 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1000 msgid "Control how calibre exports files from its database to disk when using Save to disk" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1005 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1006 msgid "Sending books to devices" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1011 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1012 msgid "Control how calibre transfers files to your ebook reader" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1017 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1018 msgid "Metadata plugboards" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1023 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1024 msgid "Change metadata fields before saving/sending" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1028 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1029 msgid "Template Functions" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1030 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1077 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1089 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1100 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1111 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1031 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1078 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1090 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1101 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1112 msgid "Advanced" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1034 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1035 msgid "Create your own template functions" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1039 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1040 msgid "Sharing books by email" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1041 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1053 -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1066 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1042 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1054 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1067 msgid "Sharing" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1045 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1046 msgid "Setup sharing of books via email. Can be used for automatic sending of downloaded news to your devices" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1051 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1052 msgid "Sharing over the net" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1057 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1058 msgid "Setup the calibre Content Server which will give you access to your calibre library from anywhere, on any device, over the internet" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1064 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1065 msgid "Metadata download" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1070 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1071 msgid "Control how calibre downloads ebook metadata from the net" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1075 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1076 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:276 msgid "Plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1081 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1082 msgid "Add/remove/customize various bits of calibre functionality" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1087 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1088 msgid "Tweaks" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1093 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1094 msgid "Fine tune how calibre behaves in various contexts" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1098 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1099 msgid "Keyboard" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1104 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1105 msgid "Customize the keyboard shortcuts used by calibre" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1109 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:109 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1110 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:110 msgid "Miscellaneous" msgstr "" -#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1115 +#: /home/kovid/work/calibre/src/calibre/customize/builtins.py:1116 msgid "Miscellaneous advanced configuration" msgstr "" @@ -833,37 +834,37 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/db/backend.py:279 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:288 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library.py:71 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:667 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:130 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:668 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:132 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:141 #, python-format msgid "Path to library too long. Must be less than %d characters." msgstr "" -#: /home/kovid/work/calibre/src/calibre/db/cache.py:131 -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:636 +#: /home/kovid/work/calibre/src/calibre/db/cache.py:136 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:647 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:563 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:972 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:985 #: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:814 #: /home/kovid/work/calibre/src/calibre/utils/formatter_functions.py:826 msgid "Yes" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/fields.py:147 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1086 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1099 msgid "Main" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/fields.py:149 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:72 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1088 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1101 msgid "Card A" msgstr "" #: /home/kovid/work/calibre/src/calibre/db/fields.py:151 #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:74 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:1090 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:1103 msgid "Card B" msgstr "" @@ -875,11 +876,11 @@ msgstr "" msgid "Communicate with Android phones." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:117 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:118 msgid "Comma separated list of directories to send e-books to on the device. The first one that exists will be used" msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:170 +#: /home/kovid/work/calibre/src/calibre/devices/android/driver.py:171 msgid "Communicate with S60 phones." msgstr "" @@ -982,18 +983,18 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/scheduler.py:453 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1139 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:1141 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:330 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:343 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3032 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:171 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:332 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:345 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3101 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:187 msgid "News" msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/apple/driver.py:2685 #: /home/kovid/work/calibre/src/calibre/gui2/catalog/catalog_epub_mobi.py:65 #: /home/kovid/work/calibre/src/calibre/library/catalog.py:652 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:2991 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3009 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3060 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3078 msgid "Catalog" msgstr "" @@ -1048,14 +1049,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:264 #: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:268 -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:279 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:273 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:275 msgid "Transferring books to device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:285 -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:299 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:330 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:344 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:421 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:456 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:297 @@ -1063,8 +1064,8 @@ msgstr "" msgid "Adding books to device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:307 -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:309 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:352 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:354 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:114 #: /home/kovid/work/calibre/src/calibre/devices/hanvon/driver.py:125 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:373 @@ -1074,8 +1075,8 @@ msgstr "" msgid "Removing books from device..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:324 -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:329 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:369 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:374 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:409 #: /home/kovid/work/calibre/src/calibre/devices/kobo/driver.py:416 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:359 @@ -1083,7 +1084,7 @@ msgstr "" msgid "Removing books from device metadata listing..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:397 +#: /home/kovid/work/calibre/src/calibre/devices/bambook/driver.py:442 #: /home/kovid/work/calibre/src/calibre/devices/usbms/driver.py:394 msgid "Sending metadata to device..." msgstr "" @@ -2592,98 +2593,100 @@ msgstr "" msgid "Value: unknown field " msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:155 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:161 msgid "TEMPLATE ERROR" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:636 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:647 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:563 msgid "No" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:737 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:748 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:45 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:75 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/quickview.py:85 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:56 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1016 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1031 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:133 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:162 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:41 #: /home/kovid/work/calibre/src/calibre/gui2/store/stores/mobileread/models.py:23 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:349 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:365 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:578 msgid "Title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:738 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1017 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:749 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1032 #: /home/kovid/work/calibre/src/calibre/gui2/store/stores/mobileread/models.py:23 msgid "Author(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:739 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:750 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:159 msgid "Publisher" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:740 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:751 #: /home/kovid/work/calibre/src/calibre/ebooks/pdf/manipulate/info.py:49 msgid "Producer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:741 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:888 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:752 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:913 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:157 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:229 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:245 msgid "Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:743 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:754 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:170 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:70 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:161 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:185 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:201 #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:762 msgid "Tags" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:745 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:756 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:168 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/quickview.py:89 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:70 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:163 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:124 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:140 msgid "Series" msgid_plural "Series" msgstr[0] "" msgstr[1] "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:746 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:68 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:164 -msgid "Language" +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:127 +msgid "Languages" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:748 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:759 msgid "Timestamp" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:750 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:761 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:167 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:133 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:289 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:305 msgid "Published" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:752 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:763 msgid "Rights" msgstr "" @@ -2778,46 +2781,46 @@ msgid "" "Fetch a cover image/social metadata for the book identified by ISBN from LibraryThing.com\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1374 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/opf2.py:1416 #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/base.py:1498 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:900 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:925 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/models.py:41 msgid "Cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:386 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:391 msgid "Downloads metadata and covers from Amazon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:396 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:401 msgid "US" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:397 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:402 msgid "France" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:398 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:403 msgid "Germany" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:399 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:404 msgid "UK" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:400 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:405 msgid "Italy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:404 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:409 msgid "Amazon website to use:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:405 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:410 msgid "Metadata from Amazon will be fetched using this country's Amazon website." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:532 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/amazon.py:537 msgid "Amazon timed out. Try again later." msgstr "" @@ -2829,7 +2832,7 @@ msgstr "" msgid "Downloads metadata and covers from Douban.com. Useful only for chinese language books." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:160 +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/google.py:163 msgid "Downloads metadata and covers from Google Books" msgstr "" @@ -2869,6 +2872,10 @@ msgstr "" msgid "Additional metadata can be taken from Overdrive's book detail page. This includes a limited set of tags used by libraries, comments, language, and the ebook ISBN. Collecting this data is disabled by default due to the extra time required. Check the download all metadata option below to enable downloading this data." msgstr "" +#: /home/kovid/work/calibre/src/calibre/ebooks/metadata/sources/ozon.py:24 +msgid "Downloads metadata and covers from OZON.ru" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/ebooks/mobi/output.py:22 msgid "Modify images to meet Palm device size limitations." msgstr "" @@ -2914,7 +2921,7 @@ msgstr "" msgid "This is an Amazon Topaz book. It cannot be processed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer2/indexer.py:490 +#: /home/kovid/work/calibre/src/calibre/ebooks/mobi/writer2/indexer.py:497 msgid "No details available" msgstr "" @@ -2992,7 +2999,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/cover.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:176 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:941 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:942 #, python-format msgid "Book %(sidx)s of %(series)s" msgstr "" @@ -3002,7 +3009,7 @@ msgid "HTML TOC generation options." msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/oeb/transforms/jacket.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:62 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:71 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:160 #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:760 @@ -3394,136 +3401,136 @@ msgstr "" msgid "Do not remove font color from output. This is only useful when txt-output-formatting is set to textile. Textile is the only formatting that supports setting font color. If this option is not specified font color will not be set and default to the color displayed by the reader (generally this is black)." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:113 msgid "Send file to storage card instead of main memory by default" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:115 msgid "Confirm before deleting" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:117 msgid "Main window geometry" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:119 msgid "Notify when a new version is available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:121 msgid "Use Roman numerals for series number" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:122 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:123 msgid "Sort tags list by name, popularity, or rating" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:124 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:125 msgid "Match tags by any or all." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:126 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:127 msgid "Number of covers to show in the cover browsing mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:128 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:129 msgid "Defaults for conversion to LRF" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:131 msgid "Options for the LRF ebook viewer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:133 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:134 msgid "Formats that are viewed using the internal viewer" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:135 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136 msgid "Columns to be displayed in the book list" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137 msgid "Automatically launch content server on application startup" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138 msgid "Oldest news kept in database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:138 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:139 msgid "Show system tray icon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:140 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:141 msgid "Upload downloaded news to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:142 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:143 msgid "Delete books from library after uploading to device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:144 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:145 msgid "Show the cover flow in a separate window instead of in the main calibre window" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:146 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:147 msgid "Disable notifications from the system tray icon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:148 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:149 msgid "Default action to perform when send to device button is clicked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:153 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:154 msgid "Start searching as you type. If this is disabled then search will only take place when the Enter or Return key is pressed." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:156 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:157 msgid "When searching, show all books with search results highlighted instead of showing only the matches. You can use the N or F3 keys to go to the next match." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:177 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:178 msgid "Maximum number of simultaneous conversion/news download jobs. This number is twice the actual value for historical reasons." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:180 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:181 msgid "Download social metadata (tags/rating/etc.)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:182 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:183 msgid "Overwrite author and title with new metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:184 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:185 msgid "Automatically download the cover, if available" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:186 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:187 msgid "Limit max simultaneous jobs to number of CPUs" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:189 msgid "The layout of the user interface" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:191 msgid "Show the average rating per item indication in the tag browser" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:192 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:193 msgid "Disable UI animations" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:197 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:198 msgid "tag browser categories not to display" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:496 +#: /home/kovid/work/calibre/src/calibre/gui2/__init__.py:497 msgid "Choose Files" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:29 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:737 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:738 msgid "Books" msgstr "" @@ -3619,7 +3626,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/annotate.py:69 #: /home/kovid/work/calibre/src/calibre/gui2/actions/catalog.py:33 #: /home/kovid/work/calibre/src/calibre/gui2/actions/convert.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:160 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:163 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:74 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:158 #: /home/kovid/work/calibre/src/calibre/gui2/actions/edit_metadata.py:222 @@ -3904,7 +3911,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:282 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:726 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/user_profiles.py:201 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:291 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:292 msgid "Already exists" msgstr "" @@ -3916,7 +3923,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:287 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:341 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library.py:70 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:666 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:667 msgid "Too long" msgstr "" @@ -3968,8 +3975,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:733 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:106 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:111 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:297 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:351 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:352 msgid "Success" msgstr "" @@ -3978,9 +3985,9 @@ msgid "Found no errors in your calibre library database. Do you want calibre to msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:383 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:186 #: /home/kovid/work/calibre/src/calibre/gui2/device.py:741 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:967 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/restore_library.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:277 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/tweaks.py:317 @@ -4001,9 +4008,9 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:466 #: /home/kovid/work/calibre/src/calibre/gui2/actions/choose_library.py:471 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:201 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:204 #: /home/kovid/work/calibre/src/calibre/gui2/actions/save_to_disk.py:100 -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:886 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:898 msgid "Not allowed" msgstr "" @@ -4045,46 +4052,46 @@ msgstr "" msgid "Empty output file, probably the conversion process crashed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:116 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:119 msgid "Copy to library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:120 msgid "Copy selected books to the specified library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:150 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:153 msgid "(delete after copy)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:159 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:162 msgid "Cannot copy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:167 msgid "No library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:165 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:168 #, python-format msgid "No library found at %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:168 -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:171 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:175 msgid "Copying" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:183 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:186 msgid "Could not copy books: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:187 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:190 #, python-format msgid "Copied %(num)d books to %(loc)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/actions/copy_to_library.py:205 msgid "You cannot use other libraries while using the environment variable CALIBRE_OVERRIDE_DATABASE_PATH." msgstr "" @@ -4099,7 +4106,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/jobs.py:477 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns.py:102 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:93 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:282 #: /home/kovid/work/calibre/src/calibre/gui2/wizard/send_email.py:242 msgid "Are you sure?" msgstr "" @@ -4466,7 +4473,7 @@ msgid "Move to next highlighted match" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/actions/next_match.py:13 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:421 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:436 msgid "N" msgstr "" @@ -4849,7 +4856,7 @@ msgid "No books found" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/add.py:289 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:777 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:778 msgid "No permission" msgstr "" @@ -4973,8 +4980,8 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library_ui.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/device_category_editor_ui.py:80 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/device_category_editor_ui.py:82 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:560 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:565 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:576 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:98 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:101 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/saved_search_editor_ui.py:103 @@ -5036,45 +5043,45 @@ msgstr "" msgid "Donate" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:117 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:118 msgid "Click to open" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:132 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:133 msgid "Ids" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:164 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:171 #, python-format msgid "Book %(sidx)s of %(series)s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:179 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1020 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:186 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1035 msgid "Collections" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:281 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:288 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:247 msgid "Paste Cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:289 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:248 msgid "Copy Cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:555 msgid "Double-click to open Book Details window" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:556 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:279 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:295 msgid "Path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/book_details.py:557 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info.py:109 #, python-format msgid "Cover size: %(width)d x %(height)d" @@ -5157,7 +5164,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget_ui.py:77 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_item_ui.py:40 #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:64 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:67 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:146 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/columns_ui.py:86 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/conversion_ui.py:54 @@ -6026,33 +6033,33 @@ msgid "Set the metadata. The output file will contain as much of this metadata a msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:180 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:884 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:885 msgid "Choose cover for " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:187 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:892 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:893 msgid "Cannot read" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:188 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:893 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:894 msgid "You do not have permission to read the file: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:196 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:203 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:901 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:902 msgid "Error reading file" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:197 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:902 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:903 msgid "

There was an error reading from file:
" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata.py:204 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:912 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:913 msgid " is not a valid picture" msgstr "" @@ -6077,12 +6084,12 @@ msgid "&Title: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:165 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:75 msgid "Change the title of this book" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:166 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:525 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:536 msgid "&Author(s): " msgstr "" @@ -6095,7 +6102,7 @@ msgid "Change the author(s) of this book. Multiple authors should be separated b msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:169 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:535 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:546 msgid "&Publisher: " msgstr "" @@ -6104,23 +6111,23 @@ msgid "Ta&gs: " msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:171 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:537 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1075 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1076 msgid "Tags categorize the book. This is particularly useful while searching.

They can be any words or phrases, separated by commas." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:172 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:544 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:555 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:214 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:433 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:434 msgid "&Series:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:173 #: /home/kovid/work/calibre/src/calibre/gui2/convert/metadata_ui.py:174 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:545 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:546 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:432 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:556 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:433 msgid "List of known series. You can add new series." msgstr "" @@ -6325,14 +6332,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:96 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:72 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:569 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:108 msgid "&Previous" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/convert/regex_builder_ui.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/book_info_ui.py:73 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:563 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:568 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins_ui.py:107 msgid "&Next" msgstr "" @@ -6720,14 +6727,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:608 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:631 #: /home/kovid/work/calibre/src/calibre/gui2/custom_column_widgets.py:682 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:307 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:312 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:128 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:148 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:255 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:304 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:308 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1342 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:313 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:129 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:149 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:270 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:319 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1380 msgid "Undefined" msgstr "" @@ -6874,7 +6881,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device.py:660 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/misc.py:63 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316 #: /home/kovid/work/calibre/src/calibre/utils/ipc/job.py:54 msgid "Error" msgstr "" @@ -6984,14 +6991,14 @@ msgid "You have enabled the {0} formats for your {1}. The {1} may not sup msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:148 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:470 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:485 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:275 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:70 msgid "Invalid template" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/device_drivers/configwidget.py:149 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:471 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:486 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugboard.py:276 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:71 #, python-format @@ -7279,7 +7286,7 @@ msgid "No location selected" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/choose_library.py:100 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:683 msgid "Bad location" msgstr "" @@ -7347,14 +7354,14 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:97 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:211 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:76 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/adv_search_builder_ui.py:209 #: /home/kovid/work/calibre/src/calibre/gui2/store/stores/mobileread/adv_search_builder_ui.py:181 msgid "&Title:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf_ui.py:98 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:198 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:199 msgid "&Author(s):" msgstr "" @@ -7417,11 +7424,11 @@ msgid "Location" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/delete_matching_from_device.py:76 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1018 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:61 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1033 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:35 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:76 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:339 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:355 #: /home/kovid/work/calibre/src/calibre/library/server/opds.py:577 msgid "Date" msgstr "" @@ -7530,13 +7537,13 @@ msgid "Change Case" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:161 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:262 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:268 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:429 msgid "Upper Case" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:162 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:261 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:267 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:430 msgid "Lower Case" msgstr "" @@ -7547,13 +7554,13 @@ msgid "Swap Case" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:164 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:263 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:269 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:432 msgid "Title Case" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog.py:165 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:264 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:270 #: /home/kovid/work/calibre/src/calibre/gui2/widgets.py:433 msgid "Capitalize" msgstr "" @@ -7577,12 +7584,12 @@ msgid "Author names cannot contain & characters." msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:88 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:120 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:132 msgid "Manage authors" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/edit_authors_dialog_ui.py:89 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:610 msgid "&Search for:" msgstr "" @@ -7683,7 +7690,7 @@ msgid "Standard metadata" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:60 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:869 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:894 msgid "Custom metadata" msgstr "" @@ -7696,180 +7703,181 @@ msgstr "" msgid "Working" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:267 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:273 msgid "Character match" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:274 msgid "Regular Expression" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:271 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:277 msgid "Replace field" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:272 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:278 msgid "Prepend to field" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:273 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:279 msgid "Append to field" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:283 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:289 #, python-format msgid "Editing meta information for %d books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:325 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:331 msgid "Immediately make all changes without closing the dialog. This operation cannot be canceled or undone" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:391 #, python-format msgid "Book %d:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:401 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:409 msgid "Enter an identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:415 msgid "You can destroy your library using this feature. Changes are permanent. There is no undo function. You are strongly encouraged to back up your library before proceeding.

Search and replace in text fields using character matching or regular expressions. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:415 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:423 msgid "In character mode, the field is searched for the entered search text. The text is replaced by the specified replacement text everywhere it is found in the specified field. After replacement is finished, the text can be changed to upper-case, lower-case, or title-case. If the case-sensitive check box is checked, the search text must match exactly. If it is unchecked, the search text will match both upper- and lower-case letters" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:426 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:434 msgid "In regular expression mode, the search text is an arbitrary python-compatible regular expression. The replacement text can contain backreferences to parenthesized expressions in the pattern. The search is not anchored, and can match and replace multiple times on the same string. The modification functions (lower-case etc) are applied to the matched text, not to the field as a whole. The destination box specifies the field where the result after matching and replacement is to be assigned. You can replace the text in the field, or prepend or append the matched text. See this reference for more information on python's regular expressions, and in particular the 'sub' function." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:503 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:511 msgid "S/R TEMPLATE ERROR" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:649 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:657 msgid "You must specify a destination when source is a composite field" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:655 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:663 msgid "You must specify a destination identifier type" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:889 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:898 msgid "Search/replace invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:890 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:899 #, python-format msgid "Search pattern is invalid: %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:942 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:953 #, python-format msgid "" "Applying changes to %d books.\n" "Phase {0} {1}%%." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:972 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:587 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:983 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:600 msgid "Delete saved search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:973 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:984 msgid "The selected saved search/replace will be deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:990 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:998 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1001 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1009 msgid "Save search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:991 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1002 msgid "Search/replace name:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:999 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk.py:1010 msgid "That saved search/replace already exists and will be overwritten. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:524 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:535 msgid "Edit Meta information" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:526 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:537 msgid "A&utomatically set author sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:527 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:538 msgid "&Swap title and author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:528 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:539 msgid "Author s&ort: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:529 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:540 msgid "Specify how the author(s) of this book should be sorted. For example Charles Dickens should be sorted as Dickens, Charles." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:530 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1033 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1034 msgid "&Rating:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:531 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:532 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1034 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1035 msgid "Rating of this book. 0-5 stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:544 msgid "No change" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:534 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:545 msgid " stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:536 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:547 msgid "Add ta&gs: " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:538 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:539 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:166 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:550 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178 msgid "Open Tag Editor" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:540 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:551 msgid "&Remove tags:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:541 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:552 msgid "Comma separated list of tags to remove from the books. " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:542 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:553 msgid "Check this box to remove all tags from the books." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:543 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:593 msgid "Remove &all" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:547 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558 msgid "If checked, the series will be cleared" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:548 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:559 msgid "&Clear series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:549 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:560 msgid "" "If not checked, the series number for the books will be set to 1.\n" "If checked, selected books will be automatically numbered, in the order\n" @@ -7877,246 +7885,251 @@ msgid "" "Book A will have series number 1 and Book B series number 2." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:553 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:564 msgid "&Automatically number books in this series" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:554 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:565 msgid "" "Series will normally be renumbered from the highest number in the database\n" "for that series. Checking this box will tell calibre to start numbering\n" "from the value in the box" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:557 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:568 msgid "&Force numbers to start with:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:558 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1326 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:569 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1364 msgid "&Date:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:559 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:570 msgid "d MMM yyyy" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:561 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:566 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:577 msgid "&Apply date" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:562 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:573 msgid "&Published:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:564 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:575 msgid "Clear published date" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:567 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:578 msgid "Remove &format:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:568 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:579 msgid "" "Force the title to be in title case. If both this and swap authors are checked,\n" "title and author are swapped before the title case is set" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:570 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581 msgid "Change title to title &case" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:571 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582 msgid "Update title sort based on the current title. This will be applied only after other changes to title." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:572 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:583 msgid "Update &title sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:573 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:584 msgid "" "Remove stored conversion settings for the selected books.\n" "\n" "Future conversion of these books will use the default settings." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:576 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:587 msgid "Remove &stored conversion settings for the selected books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:577 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:588 msgid "Change &cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:578 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:589 msgid "&Generate default cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:579 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:590 msgid "&Remove cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:580 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:591 msgid "Set from &ebook file(s)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:581 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:512 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:676 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1139 +msgid "&Languages:" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:594 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:533 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:699 msgid "&Basic metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:582 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:519 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:540 msgid "&Custom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:596 msgid "Load searc&h/replace:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:584 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:597 msgid "Select saved search/replace to load." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:585 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:598 msgid "Save current search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:586 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:599 msgid "Sa&ve" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:588 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:601 #: /home/kovid/work/calibre/src/calibre/gui2/viewer/bookmarkmanager_ui.py:64 msgid "Delete" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:589 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:602 msgid "Search &field:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:603 msgid "The name of the field that you want to search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:591 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:604 msgid "Search &mode:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:592 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:605 msgid "Choose whether to use basic text matching or advanced regular expression matching" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:593 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:615 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:628 msgid "Identifier type:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:594 -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:616 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:629 msgid "Choose which identifier type to operate upon" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:595 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:608 msgid "Te&mplate:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:596 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:609 msgid "Enter a template to be used as the source for the search/replace" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:598 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:611 msgid "Enter the what you are looking for, either plain text or a regular expression, depending on the mode" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:599 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:612 msgid "Check this box if the search string must match exactly upper and lower case. Uncheck it if case is to be ignored" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:613 msgid "Cas&e sensitive" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:601 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:614 msgid "&Replace with:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:602 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:615 msgid "The replacement text. The matched search text will be replaced with this string" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:603 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:616 msgid "&Apply function after replace:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:604 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:617 msgid "" "Specify how the text is to be processed after matching and replacement. In character mode, the entire\n" "field is processed. In regular expression mode, only the matched text is processed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:606 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:619 msgid "&Destination field:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:607 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:620 msgid "" "The field that the text will be put into after all replacements.\n" "If blank, the source field is used if the field is modifiable" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:609 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:622 msgid "M&ode:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:610 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:623 msgid "Specify how the text should be copied into the destination." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:611 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:624 msgid "" "Specifies whether result items should be split into multiple values or\n" "left as single values. This option has the most effect when the source field is\n" "not multiple and the destination field is multiple" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:614 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:627 msgid "Split &result" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:617 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:630 msgid "For multiple-valued fields, sho&w" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:618 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:631 msgid "values starting a&t" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:632 msgid "with values separated b&y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:620 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:633 msgid "Used when displaying test results to separate values in multiple-valued fields" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:621 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:634 msgid "Test text" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:622 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:635 msgid "Test result" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:623 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:636 msgid "Your test:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:624 +#: /home/kovid/work/calibre/src/calibre/gui2/dialogs/metadata_bulk_ui.py:637 msgid "&Search and replace" msgstr "" @@ -8364,7 +8377,7 @@ msgid "Install %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:688 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:282 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:283 msgid "Installing plugins is a security risk. Plugins can contain a virus/malware. Only install it if you got it from a trusted source. Are you sure you want to proceed?" msgstr "" @@ -8399,7 +8412,7 @@ msgid "Plugin installed: %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:734 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:298 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:299 msgid "Plugin {0} successfully installed under {1} plugins. You may have to restart calibre for the plugin to take effect." msgstr "" @@ -8417,34 +8430,34 @@ msgid "Unable to find the version history for %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:780 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:333 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334 msgid "Plugin not customizable" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:781 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:334 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:335 #, python-format msgid "Plugin: %s does not need customization" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:785 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:341 msgid "Must restart" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:786 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:341 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:342 #, python-format msgid "You must restart calibre before you can configure the %s plugin" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:794 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:322 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:323 msgid "Plugin cannot be disabled" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/plugin_updater.py:795 -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:323 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:324 #, python-format msgid "The plugin: %s cannot be disabled" msgstr "" @@ -8456,7 +8469,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/quickview.py:87 #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/metadata_sources.py:156 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:112 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:113 msgid "Authors" msgstr "" @@ -8486,7 +8499,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/quickview_ui.py:75 #: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:95 -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:279 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:288 #: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/chooser_widget_ui.py:80 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search_ui.py:134 #: /home/kovid/work/calibre/src/calibre/gui2/store/search_ui.py:109 @@ -8922,7 +8935,7 @@ msgid "&Author:" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/search_ui.py:215 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1074 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1075 msgid "Ta&gs:" msgstr "" @@ -8962,7 +8975,7 @@ msgid "Choose formats" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/tag_categories.py:60 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:148 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:164 msgid "Publishers" msgstr "" @@ -9165,7 +9178,7 @@ msgid "Open Template Editor" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/template_line_editor.py:41 -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:457 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:472 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/save_template.py:48 msgid "Edit template" msgstr "" @@ -9556,7 +9569,7 @@ msgid "Regular expression (?P)" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/filename_pattern_ui.py:149 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1231 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1269 msgid "ISBN:" msgstr "" @@ -9699,28 +9712,28 @@ msgstr[1] "" msgid "Do you really want to stop all non-device jobs?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:328 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:331 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:86 #: /home/kovid/work/calibre/src/calibre/web/feeds/recipes/model.py:204 msgid "Custom" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:81 msgid "&Alternate shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:335 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:338 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:76 msgid "&Shortcut:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:340 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:369 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:343 #: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:372 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:399 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:434 -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:460 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:375 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:402 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:437 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:465 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:48 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:78 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts_ui.py:83 @@ -9731,51 +9744,56 @@ msgstr "" msgid "None" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:352 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:355 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:165 msgid "Done" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:374 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:377 #, python-format msgid "Default: %s [Currently not conflicting: %s]" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:396 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:59 msgid "Press a key..." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:414 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:417 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:80 msgid "Already assigned" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:416 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:419 #: /home/kovid/work/calibre/src/calibre/gui2/shortcuts.py:82 msgid "already assigned to" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:463 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:459 +msgid "This shortcut no longer exists" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:468 msgid "Shortcuts" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:546 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:551 msgid "Double click on any entry to change the keyboard shortcuts associated with it" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:560 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:565 msgid "Search for a shortcut by name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:593 +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:605 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:232 #: /home/kovid/work/calibre/src/calibre/gui2/store/search/search.py:336 msgid "No matches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:594 -msgid "Could not find any matching shortcuts" +#: /home/kovid/work/calibre/src/calibre/gui2/keyboard.py:606 +#, python-format +msgid "Could not find any shortcuts matching %s" msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/layout.py:57 @@ -9835,100 +9853,100 @@ msgstr "" msgid "Copy current search text (instead of search name)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:421 +#: /home/kovid/work/calibre/src/calibre/gui2/library/delegates.py:436 msgid "Y" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:57 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:269 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:58 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:285 msgid "On Device" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:59 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:60 msgid "Size (MB)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:66 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:259 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:67 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:275 msgid "Modified" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:759 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1318 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:771 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1333 #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:312 msgid "The lookup/search name is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:765 -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1320 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:777 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1335 msgid "This book's UUID is \"{0}\"" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1015 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1030 msgid "In Library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1019 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:329 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1034 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:345 msgid "Size" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1300 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1315 msgid "Marked for deletion" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1303 +#: /home/kovid/work/calibre/src/calibre/gui2/library/models.py:1318 msgid "Double click to edit me

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:167 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:168 #, python-format msgid "Hide column %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:172 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:173 #, python-format msgid "Sort on %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:173 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:174 msgid "Ascending" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:176 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:177 msgid "Descending" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:188 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:189 #, python-format msgid "Change text alignment for %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:191 msgid "Left" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:190 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:191 msgid "Right" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:191 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:192 msgid "Center" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:210 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:211 msgid "Show column" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:222 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:223 msgid "Shrink column if it is too wide to fit" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:225 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:226 msgid "Restore default layout" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:887 +#: /home/kovid/work/calibre/src/calibre/gui2/library/views.py:899 msgid "Dropping onto a device is not supported. First add the book to the calibre library." msgstr "" @@ -10028,7 +10046,7 @@ msgid "Cause a running calibre instance, if any, to be shutdown. Note that if th msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/main.py:69 -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:690 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:691 msgid "Calibre Library" msgstr "" @@ -10144,66 +10162,66 @@ msgstr "" msgid "Unhandled exception" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:103 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:267 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:407 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:104 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:268 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:428 msgid "Permission denied" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:104 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:268 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:408 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:105 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:269 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:429 #, python-format msgid "Could not open %s. Is it being used by another program?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:137 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:138 msgid "Specify how this book should be sorted when by title. For example, The Exorcist might be sorted as Exorcist, The." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:139 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:140 msgid "Title &sort:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:147 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:148 msgid " The green color indicates that the current title sort matches the current title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:150 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:151 msgid " The red color warns that the current title sort does not match the current title. No action is required if this is what you want." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:213 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:214 msgid "Authors changed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:214 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:215 msgid "You have changed the authors for this book. You must save these changes before you can use Manage authors. Do you want to save these changes?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:302 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:303 msgid "" "Specify how the author(s) of this book should be sorted. For example Charles Dickens should be sorted as Dickens, Charles.\n" "If the box is colored green, then text matches the individual author's sort strings. If it is colored red, then the authors and this text do not match." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:307 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:308 msgid "Author s&ort:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:317 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:318 msgid " The green color indicates that the current author sort matches the current author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:320 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:321 msgid " The red color indicates that the current author sort does not match the current author. No action is required if this is what you want." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:493 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:494 msgid "&Number:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:590 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:591 #, python-format msgid "" "Last modified: %s\n" @@ -10211,115 +10229,130 @@ msgid "" "Double click to view" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:600 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:601 #, python-format msgid "Restore %s from the original" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:646 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:647 msgid "Set the cover for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:654 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:655 msgid "Set metadata for the book from the selected format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:661 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:662 msgid "Add a format to this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:668 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:669 msgid "Remove the selected format from this book" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:735 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:736 msgid "Choose formats for " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:778 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:779 msgid "You do not have permission to read the following files:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:808 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:809 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:810 msgid "No format selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:821 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:822 msgid "Could not read metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:822 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:823 #, python-format msgid "Could not read metadata from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:850 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:851 msgid "&Browse" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:852 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:853 msgid "T&rim" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:854 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:855 msgid "&Remove" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:860 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:861 msgid "Download co&ver" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:861 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:862 msgid "&Generate cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:911 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:912 msgid "Not a valid picture" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:935 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:936 msgid "Specify title and author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:936 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:937 msgid "You must specify a title and author before generating a cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:955 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:956 msgid "Invalid cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:956 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:957 msgid "Could not change cover as the image is invalid." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:983 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:984 msgid "This book has no cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:985 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:986 #, python-format msgid "Cover size: %(width)d x %(height)d pixels" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1041 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1042 msgid "stars" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1110 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1111 msgid "Tags changed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1111 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1112 msgid "You have changed the tags. In order to use the tags editor, you must either discard or apply these changes. Apply changes?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1137 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1140 +msgid "A comma separated list of languages for this book" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1162 +msgid "Unknown language" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1163 +#, python-format +msgid "The language %s is not recognized" +msgid_plural "The languages %s are not recognized" +msgstr[0] "" +msgstr[1] "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1175 msgid "I&ds:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1138 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1176 #, python-format msgid "" "Edit the identifiers for this book. For example: \n" @@ -10327,38 +10360,38 @@ msgid "" "%s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1200 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1262 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1238 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1300 msgid "This ISBN number is valid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1203 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1265 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1241 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1303 msgid "This ISBN number is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1228 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1250 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1266 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1288 msgid "Invalid ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1229 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1267 msgid "Enter an ISBN" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1251 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1289 msgid "The ISBN you entered is not valid. Try again." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1275 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1313 msgid "&Publisher:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1345 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1383 msgid "Clear date" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1378 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/basic_widgets.py:1416 msgid "Publishe&d:" msgstr "" @@ -10395,24 +10428,24 @@ msgstr "" msgid "Download &both" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:100 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:110 #, python-format msgid "Download metadata for %d books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:103 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:113 msgid "Metadata download started" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:123 msgid "(Failed metadata)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:114 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:125 msgid "(Failed cover)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:199 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/bulk_download.py:210 #, python-format msgid "Downloaded %(num)d of %(tot)d" msgstr "" @@ -10422,7 +10455,11 @@ msgstr "" msgid "Downloaded metadata fields" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:51 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:29 +msgid "Edit Metadata" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:63 #: /home/kovid/work/calibre/src/calibre/gui2/metadata/single_download.py:828 #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:107 #: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:211 @@ -10430,112 +10467,112 @@ msgstr "" msgid "Next" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:55 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:67 #: /home/kovid/work/calibre/src/calibre/library/server/browse.py:106 #: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:221 #: /home/kovid/work/calibre/src/calibre/web/feeds/templates.py:384 msgid "Previous" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:80 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:267 -msgid "Edit Metadata" -msgstr "" - -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:101 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:113 msgid "" "Automatically create the title sort entry based on the current title entry.\n" "Using this button to create title sort will change title sort from red to green." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:112 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:124 msgid "Automatically create the author sort entry based on the current author entry. Using this button to create author sort will change author sort from red to green. There is a menu of functions available under this button. Click and hold on the button to see it." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:118 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:130 msgid "Set author sort from author" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:119 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:131 msgid "Set author from author sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:130 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:142 msgid "Swap the author and title" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:136 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:148 msgid "Manage authors. Use to rename authors and correct individual author's sort values" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:143 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:155 msgid "Remove unused series (Series that have no books)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:178 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:190 msgid "Paste the contents of the clipboard into the identifiers box prefixed with isbn:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:191 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206 msgid "&Download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:202 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:218 msgid "Configure download metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:206 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:222 msgid "Change how calibre downloads metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:308 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:315 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:285 +#, python-format +msgid " [%(num)d of %(tot)d]" +msgstr "" + +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:327 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:334 msgid "Could not read cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:309 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:328 #, python-format msgid "Could not read cover from %s format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:335 #, python-format msgid "The cover in the %s format is invalid" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:460 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:465 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:481 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:486 #, python-format msgid "Save changes and edit the metadata of %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:562 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:764 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:583 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:788 msgid "Change cover" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:619 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:642 msgid "Co&mments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:659 -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:805 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:682 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:829 msgid "&Metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:664 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:687 msgid "&Cover and formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:733 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:757 msgid "C&ustom metadata" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:745 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:769 msgid "&Comments" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:811 +#: /home/kovid/work/calibre/src/calibre/gui2/metadata/single.py:835 msgid "Basic metadata" msgstr "" @@ -10622,35 +10659,35 @@ msgstr "" msgid "Configure " msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:28 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:29 msgid "Ignore duplicate incoming formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:29 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:30 msgid "Overwrite existing duplicate formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:30 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding.py:31 msgid "Create new record for each duplicate format" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:65 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:68 msgid "Here you can control how calibre will read metadata from the files you add to it. calibre can either read metadata from the contents of the file, or from the filename." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:66 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:69 msgid "Read &metadata from file contents rather than file name" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:67 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:70 msgid "Swap the firstname and lastname of the author. This affects only metadata read from file names." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:68 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:71 msgid "&Swap author firstname and lastname" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:69 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:72 msgid "" "Automerge: If books with similar titles and authors found, merge the incoming formats automatically into\n" "existing book records. The box to the right controls what happens when an existing record already has\n" @@ -10659,11 +10696,11 @@ msgid "" "Title match ignores leading indefinite articles (\"the\", \"a\", \"an\"), punctuation, case, etc. Author match is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:74 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:77 msgid "&Automerge added books if they already exist in the calibre library:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:75 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:78 msgid "" "Automerge: If books with similar titles and authors found, merge the incoming formats automatically into\n" "existing book records. This box controls what happens when an existing record already has\n" @@ -10677,18 +10714,22 @@ msgid "" "Author matching is exact." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:85 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:88 msgid "&Tags to apply when adding a book:" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:86 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:89 msgid "A comma-separated list of tags that will be applied to books added to the library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:87 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:90 msgid "&Configure metadata from file name" msgstr "" +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/adding_ui.py:91 +msgid "When using the \"&Copy to library\" action to copy books between libraries, preserve the date" +msgstr "" + #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior.py:34 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/behavior_ui.py:159 msgid "High" @@ -11106,7 +11147,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/preferences/create_custom_column.py:175 #: /home/kovid/work/calibre/src/calibre/gui2/preferences/emailp.py:27 #: /home/kovid/work/calibre/src/calibre/gui2/store/config/chooser/models.py:21 -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:136 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:152 msgid "Formats" msgstr "" @@ -11953,33 +11994,33 @@ msgstr "" msgid "Could not find any matching plugins" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:274 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:275 msgid "Add plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:306 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:307 msgid "No valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:307 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:308 #, python-format msgid "%s is not a valid plugin path" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:316 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:317 #, python-format msgid "Select an actual plugin under %s to customize" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:346 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:347 msgid "Plugin {0} successfully removed" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:354 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:355 msgid "Cannot remove builtin plugin" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:355 +#: /home/kovid/work/calibre/src/calibre/gui2/preferences/plugins.py:356 msgid " cannot be removed. It is a builtin plugin. Try disabling it instead." msgstr "" @@ -12548,55 +12589,55 @@ msgstr "" msgid "Apply any changes you made to this tweak" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:339 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:348 msgid "Delete current search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:340 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:349 msgid "No search is selected" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:342 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:351 msgid "The selected search will be permanently deleted. Are you sure?" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:367 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:376 msgid "Search (For Advanced Search click the button to the left)" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:383 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:392 msgid "Start search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:393 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:402 msgid "Enable or disable search highlighting." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:448 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:457 msgid "Saved Searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:450 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:459 msgid "Choose saved search or enter name for new saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:456 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:465 msgid "Save current search under the name shown in the box. Press and hold for a pop-up options menu." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:461 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:470 msgid "Create saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:465 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:474 msgid "Delete saved search" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:469 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:478 msgid "Manage saved searches" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:479 +#: /home/kovid/work/calibre/src/calibre/gui2/search_box.py:488 msgid "*Current search" msgstr "" @@ -13030,7 +13071,7 @@ msgid "Changing the metadata for that many books can take a while. Are you sure? msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/tag_browser/model.py:823 -#: /home/kovid/work/calibre/src/calibre/library/database2.py:449 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:453 msgid "Searches" msgstr "" @@ -13984,16 +14025,16 @@ msgstr "" msgid "Could not move library" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:662 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:663 msgid "Select location for books" msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:683 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:684 #, python-format msgid "You must choose an empty folder for the calibre library. %s is not empty." msgstr "" -#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:757 +#: /home/kovid/work/calibre/src/calibre/gui2/wizard/__init__.py:758 msgid "welcome wizard" msgstr "" @@ -14243,64 +14284,64 @@ msgstr "" msgid "Turn on the &content server" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:161 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:568 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:582 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:592 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:162 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:569 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:583 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:593 msgid "checked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:161 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:568 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:582 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:592 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:162 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:569 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:583 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:593 #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:222 msgid "yes" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:163 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:567 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:579 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:589 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:164 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:568 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:580 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:590 #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:222 msgid "no" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:163 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:567 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:579 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:589 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:164 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:568 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:580 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:590 msgid "unchecked" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:361 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:362 msgid "today" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:364 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:365 msgid "yesterday" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:367 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:368 msgid "thismonth" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:370 #: /home/kovid/work/calibre/src/calibre/library/caches.py:371 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:372 msgid "daysago" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:569 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:586 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:570 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:587 msgid "blank" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:569 -#: /home/kovid/work/calibre/src/calibre/library/caches.py:586 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:570 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:587 msgid "empty" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/caches.py:570 +#: /home/kovid/work/calibre/src/calibre/library/caches.py:571 msgid "Invalid boolean query \"{0}\"" msgstr "" @@ -14538,15 +14579,15 @@ msgid "" "Applies to: ePub, MOBI output formats" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1427 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1423 msgid "No enabled genres found to catalog.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1431 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1427 msgid "No books available to catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1507 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1503 msgid "" "Inconsistent Author Sort values for\n" "Author '{0}':\n" @@ -14556,24 +14597,24 @@ msgid "" "Select all books by '{0}', apply correct Author Sort value in Edit Metadata dialog, then rebuild the catalog.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1524 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1520 msgid "" "Warning: inconsistent Author Sort values for\n" "Author '{0}':\n" "'{1}' <> '{2}'\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1719 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1715 msgid "" "No books found to catalog.\n" "Check 'Excluded books' criteria in E-book options.\n" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1721 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:1717 msgid "No books available to include in catalog" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/catalog.py:5063 +#: /home/kovid/work/calibre/src/calibre/library/catalog.py:5059 msgid "" "\n" "*** Adding 'By Authors' Section required for MOBI output ***" @@ -15087,38 +15128,38 @@ msgstr "" msgid "The label must contain only lower case letters, digits and underscores, and start with a letter" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:65 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:67 #, python-format msgid "%(tt)sAverage rating is %(rating)3.1f" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3332 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3401 #, python-format msgid "

Migrating old database to ebook library in %s

" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3361 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3430 #, python-format msgid "Copying %s" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/database2.py:3378 +#: /home/kovid/work/calibre/src/calibre/library/database2.py:3447 msgid "Compacting database" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:160 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:176 msgid "Ratings" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:197 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:213 msgid "Identifiers" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:207 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:223 msgid "Author Sort" msgstr "" -#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:319 +#: /home/kovid/work/calibre/src/calibre/library/field_metadata.py:335 msgid "Title Sort" msgstr "" @@ -15219,7 +15260,7 @@ msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:113 #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:117 #, python-format -msgid "The format in which to display dates. %(day)s - day, %(month)s - month, %(year)s - year. Default is: %(default)s" +msgid "The format in which to display dates. %(day)s - day, %(month)s - month, %(mn)s - month number, %(year)s - year. Default is: %(default)s" msgstr "" #: /home/kovid/work/calibre/src/calibre/library/save_to_disk.py:121 @@ -16517,145 +16558,145 @@ msgid "Set the list of words considered to be \"articles\" for sort strings" msgstr "" #: /home/kovid/work/calibre/resources/default_tweaks.py:175 -msgid "Set the list of words that are to be considered 'articles' when computing the\ntitle sort strings. The list is a regular expression, with the articles\nseparated by 'or' bars. Comparisons are case insensitive, and that cannot be\nchanged. Changes to this tweak won't have an effect until the book is modified\nin some way. If you enter an invalid pattern, it is silently ignored.\nTo disable use the expression: '^$'\nDefault: '^(A|The|An)\\s+'" +msgid "Set the list of words that are to be considered 'articles' when computing the\ntitle sort strings. The list is a regular expression, with the articles\nseparated by 'or' bars. Comparisons are case insensitive, and that cannot be\nchanged. Changes to this tweak won't have an effect until the book is modified\nin some way. If you enter an invalid pattern, it is silently ignored.\nTo disable use the expression: '^$'\nThis expression is designed for articles that are followed by spaces. If you\nalso need to match articles that are followed by other characters, for example L'\nin French, use: r\"^(A\\s+|The\\s+|An\\s+|L')\" instead.\nDefault: '^(A|The|An)\\s+'" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:184 +#: /home/kovid/work/calibre/resources/default_tweaks.py:187 msgid "Specify a folder calibre should connect to at startup" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:185 +#: /home/kovid/work/calibre/resources/default_tweaks.py:188 msgid "Specify a folder that calibre should connect to at startup using\nconnect_to_folder. This must be a full path to the folder. If the folder does\nnot exist when calibre starts, it is ignored. If there are '\\' characters in\nthe path (such as in Windows paths), you must double them.\nExamples:\nauto_connect_to_folder = 'C:\\\\Users\\\\someone\\\\Desktop\\\\testlib'\nauto_connect_to_folder = '/home/dropbox/My Dropbox/someone/library'" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:194 +#: /home/kovid/work/calibre/resources/default_tweaks.py:197 msgid "Specify renaming rules for SONY collections" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:195 +#: /home/kovid/work/calibre/resources/default_tweaks.py:198 msgid "Specify renaming rules for sony collections. This tweak is only applicable if\nmetadata management is set to automatic. Collections on Sonys are named\ndepending upon whether the field is standard or custom. A collection derived\nfrom a standard field is named for the value in that field. For example, if\nthe standard 'series' column contains the value 'Darkover', then the\ncollection name is 'Darkover'. A collection derived from a custom field will\nhave the name of the field added to the value. For example, if a custom series\ncolumn named 'My Series' contains the name 'Darkover', then the collection\nwill by default be named 'Darkover (My Series)'. For purposes of this\ndocumentation, 'Darkover' is called the value and 'My Series' is called the\ncategory. If two books have fields that generate the same collection name,\nthen both books will be in that collection.\nThis set of tweaks lets you specify for a standard or custom field how\nthe collections are to be named. You can use it to add a description to a\nstandard field, for example 'Foo (Tag)' instead of the 'Foo'. You can also use\nit to force multiple fields to end up in the same collection. For example, you\ncould force the values in 'series', '#my_series_1', and '#my_series_2' to\nappear in collections named 'some_value (Series)', thereby merging all of the\nfields into one set of collections.\nThere are two related tweaks. The first determines the category name to use\nfor a metadata field. The second is a template, used to determines how the\nvalue and category are combined to create the collection name.\nThe syntax of the first tweak, sony_collection_renaming_rules, is:\n{'field_lookup_name':'category_name_to_use', 'lookup_name':'name', ...}\nThe second tweak, sony_collection_name_template, is a template. It uses the\nsame template language as plugboards and save templates. This tweak controls\nhow the value and category are combined together to make the collection name.\nThe only two fields available are {category} and {value}. The {value} field is\nnever empty. The {category} field can be empty. The default is to put the\nvalue first, then the category enclosed in parentheses, it is isn't empty:\n'{value} {category:|(|)}'\nExamples: The first three examples assume that the second tweak\nhas not been changed.\n1: I want three series columns to be merged into one set of collections. The\ncolumn lookup names are 'series', '#series_1' and '#series_2'. I want nothing\nin the parenthesis. The value to use in the tweak value would be:\nsony_collection_renaming_rules={'series':'', '#series_1':'', '#series_2':''}\n2: I want the word '(Series)' to appear on collections made from series, and\nthe word '(Tag)' to appear on collections made from tags. Use:\nsony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}\n3: I want 'series' and '#myseries' to be merged, and for the collection name\nto have '(Series)' appended. The renaming rule is:\nsony_collection_renaming_rules={'series':'Series', '#myseries':'Series'}\n4: Same as example 2, but instead of having the category name in parentheses\nand appended to the value, I want it prepended and separated by a colon, such\nas in Series: Darkover. I must change the template used to format the category name\nThe resulting two tweaks are:\nsony_collection_renaming_rules={'series':'Series', 'tags':'Tag'}\nsony_collection_name_template='{category:||: }{value}'" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:247 +#: /home/kovid/work/calibre/resources/default_tweaks.py:250 msgid "Specify how SONY collections are sorted" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:248 +#: /home/kovid/work/calibre/resources/default_tweaks.py:251 msgid "Specify how sony collections are sorted. This tweak is only applicable if\nmetadata management is set to automatic. You can indicate which metadata is to\nbe used to sort on a collection-by-collection basis. The format of the tweak\nis a list of metadata fields from which collections are made, followed by the\nname of the metadata field containing the sort value.\nExample: The following indicates that collections built from pubdate and tags\nare to be sorted by the value in the custom column '#mydate', that collections\nbuilt from 'series' are to be sorted by 'series_index', and that all other\ncollections are to be sorted by title. If a collection metadata field is not\nnamed, then if it is a series- based collection it is sorted by series order,\notherwise it is sorted by title order.\n[(['pubdate', 'tags'],'#mydate'), (['series'],'series_index'), (['*'], 'title')]\nNote that the bracketing and parentheses are required. The syntax is\n[ ( [list of fields], sort field ) , ( [ list of fields ] , sort field ) ]\nDefault: empty (no rules), so no collection attributes are named." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:265 +#: /home/kovid/work/calibre/resources/default_tweaks.py:268 msgid "Control how tags are applied when copying books to another library" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:266 +#: /home/kovid/work/calibre/resources/default_tweaks.py:269 msgid "Set this to True to ensure that tags in 'Tags to add when adding\na book' are added when copying books to another library" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:270 +#: /home/kovid/work/calibre/resources/default_tweaks.py:273 msgid "Set the maximum number of tags to show per book in the content server" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:273 +#: /home/kovid/work/calibre/resources/default_tweaks.py:276 msgid "Set custom metadata fields that the content server will or will not display." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:274 +#: /home/kovid/work/calibre/resources/default_tweaks.py:277 msgid "content_server_will_display is a list of custom fields to be displayed.\ncontent_server_wont_display is a list of custom fields not to be displayed.\nwont_display has priority over will_display.\nThe special value '*' means all custom fields. The value [] means no entries.\nDefaults:\ncontent_server_will_display = ['*']\ncontent_server_wont_display = []\nExamples:\nTo display only the custom fields #mytags and #genre:\ncontent_server_will_display = ['#mytags', '#genre']\ncontent_server_wont_display = []\nTo display all fields except #mycomments:\ncontent_server_will_display = ['*']\ncontent_server_wont_display['#mycomments']" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:291 +#: /home/kovid/work/calibre/resources/default_tweaks.py:294 msgid "Set the maximum number of sort 'levels'" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:292 +#: /home/kovid/work/calibre/resources/default_tweaks.py:295 msgid "Set the maximum number of sort 'levels' that calibre will use to resort the\nlibrary after certain operations such as searches or device insertion. Each\nsort level adds a performance penalty. If the database is large (thousands of\nbooks) the penalty might be noticeable. If you are not concerned about multi-\nlevel sorts, and if you are seeing a slowdown, reduce the value of this tweak." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:299 +#: /home/kovid/work/calibre/resources/default_tweaks.py:302 msgid "Specify which font to use when generating a default cover" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:300 +#: /home/kovid/work/calibre/resources/default_tweaks.py:303 msgid "Absolute path to .ttf font files to use as the fonts for the title, author\nand footer when generating a default cover. Useful if the default font (Liberation\nSerif) does not contain glyphs for the language of the books in your library." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:306 +#: /home/kovid/work/calibre/resources/default_tweaks.py:309 msgid "Control behavior of the book list" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:307 +#: /home/kovid/work/calibre/resources/default_tweaks.py:310 msgid "You can control the behavior of doubleclicks on the books list.\nChoices: open_viewer, do_nothing,\nedit_cell, edit_metadata. Selecting edit_metadata has the side effect of\ndisabling editing a field using a single click.\nDefault: open_viewer.\nExample: doubleclick_on_library_view = 'do_nothing'\nYou can also control whether the book list scrolls horizontal per column or\nper pixel. Default is per column." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:318 +#: /home/kovid/work/calibre/resources/default_tweaks.py:321 msgid "Language to use when sorting." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:319 +#: /home/kovid/work/calibre/resources/default_tweaks.py:322 msgid "Setting this tweak will force sorting to use the\ncollating order for the specified language. This might be useful if you run\ncalibre in English but want sorting to work in the language where you live.\nSet the tweak to the desired ISO 639-1 language code, in lower case.\nYou can find the list of supported locales at\nhttp://publib.boulder.ibm.com/infocenter/iseries/v5r3/topic/nls/rbagsicusortsequencetables.htm\nDefault: locale_for_sorting = '' -- use the language calibre displays in\nExample: locale_for_sorting = 'fr' -- sort using French rules.\nExample: locale_for_sorting = 'nb' -- sort using Norwegian rules." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:330 +#: /home/kovid/work/calibre/resources/default_tweaks.py:333 msgid "Number of columns for custom metadata in the edit metadata dialog" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:331 +#: /home/kovid/work/calibre/resources/default_tweaks.py:334 msgid "Set whether to use one or two columns for custom metadata when editing\nmetadata one book at a time. If True, then the fields are laid out using two\ncolumns. If False, one column is used." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:336 +#: /home/kovid/work/calibre/resources/default_tweaks.py:339 msgid "The number of seconds to wait before sending emails" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:337 +#: /home/kovid/work/calibre/resources/default_tweaks.py:340 msgid "The number of seconds to wait before sending emails when using a\npublic email server like gmail or hotmail. Default is: 5 minutes\nSetting it to lower may cause the server's SPAM controls to kick in,\nmaking email sending fail. Changes will take effect only after a restart of\ncalibre." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:344 +#: /home/kovid/work/calibre/resources/default_tweaks.py:347 msgid "Remove the bright yellow lines at the edges of the book list" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:345 +#: /home/kovid/work/calibre/resources/default_tweaks.py:348 msgid "Control whether the bright yellow lines at the edges of book list are drawn\nwhen a section of the user interface is hidden. Changes will take effect\nafter a restart of calibre." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:350 +#: /home/kovid/work/calibre/resources/default_tweaks.py:353 msgid "The maximum width and height for covers saved in the calibre library" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:351 +#: /home/kovid/work/calibre/resources/default_tweaks.py:354 msgid "All covers in the calibre library will be resized, preserving aspect ratio,\nto fit within this size. This is to prevent slowdowns caused by extremely\nlarge covers" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:356 +#: /home/kovid/work/calibre/resources/default_tweaks.py:359 msgid "Where to send downloaded news" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:357 +#: /home/kovid/work/calibre/resources/default_tweaks.py:360 msgid "When automatically sending downloaded news to a connected device, calibre\nwill by default send it to the main memory. By changing this tweak, you can\ncontrol where it is sent. Valid values are \"main\", \"carda\", \"cardb\". Note\nthat if there isn't enough free space available on the location you choose,\nthe files will be sent to the location with the most free space." msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:364 +#: /home/kovid/work/calibre/resources/default_tweaks.py:367 msgid "What interfaces should the content server listen on" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:365 +#: /home/kovid/work/calibre/resources/default_tweaks.py:368 msgid "By default, the calibre content server listens on '0.0.0.0' which means that it\naccepts IPv4 connections on all interfaces. You can change this to, for\nexample, '127.0.0.1' to only listen for connections from the local machine, or\nto '::' to listen to all incoming IPv6 and IPv4 connections (this may not\nwork on all operating systems)" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:372 +#: /home/kovid/work/calibre/resources/default_tweaks.py:375 msgid "Unified toolbar on OS X" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:373 +#: /home/kovid/work/calibre/resources/default_tweaks.py:376 msgid "If you enable this option and restart calibre, the toolbar will be 'unified'\nwith the titlebar as is normal for OS X applications. However, doing this has\nvarious bugs, for instance the minimum width of the toolbar becomes twice\nwhat it should be and it causes other random bugs on some systems, so turn it\non at your own risk!" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:380 +#: /home/kovid/work/calibre/resources/default_tweaks.py:383 msgid "Save original file when converting from same format to same format" msgstr "" -#: /home/kovid/work/calibre/resources/default_tweaks.py:381 +#: /home/kovid/work/calibre/resources/default_tweaks.py:384 msgid "When calibre does a conversion from the same format to the same format, for\nexample, from EPUB to EPUB, the original file is saved, so that in case the\nconversion is poor, you can tweak the settings and run it again. By setting\nthis to False you can prevent calibre from saving the original file." msgstr ""