diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 5c3d7a2..e7e74e9 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,3 +1,6 @@ patreon: bookfere liberapay: bookfere -custom: ['https://paypal.me/bookfere', 'https://bookfere.com/donate'] +custom: [ + 'https://www.paypal.com/paypalme/jinengge', + 'https://bookfere.com/donate' +] diff --git a/components/footer.py b/components/footer.py index 3d4e636..033df58 100644 --- a/components/footer.py +++ b/components/footer.py @@ -23,7 +23,7 @@ def __init__(self, parent=None): donate = 'https://{}/donate'.format(app_author) else: feedback = '{}/issues'.format(github) - donate = 'https://www.paypal.com/paypalme/bookfere' + donate = 'https://www.paypal.com/paypalme/jinengge' link = QLabel( ' by ' '{0}GitHub{4}' diff --git a/lib/element.py b/lib/element.py index d14b62d..7830c0c 100644 --- a/lib/element.py +++ b/lib/element.py @@ -159,7 +159,8 @@ def get_content(self): return self.element.content def add_translation(self, translation=None): - if translation is not None and translation != self.get_content(): + if translation is not None and translation != self.get_content() \ + and not self.ignored: if self.position == 'only': self.element.content = translation elif self.position in ['above', 'left']: @@ -780,6 +781,9 @@ def get_pgn_elements(path, encoding): def get_metadata_elements(metadata): + config = get_config() + enable_translation = config.get( + 'ebook_metadata.metadata_translation', False) elements = [] names = ( 'title', 'creator', 'publisher', 'rights', 'subject', 'contributor', @@ -792,7 +796,9 @@ def get_metadata_elements(metadata): for item in items: if pattern.search(item.content) is None: continue - elements.append(MetadataElement(item, 'content.opf')) + element = MetadataElement( + item, page_id='content.opf', ignored=not enable_translation) + elements.append(element) return elements diff --git a/lib/translation.py b/lib/translation.py index b60c66d..7a7d8c0 100644 --- a/lib/translation.py +++ b/lib/translation.py @@ -218,13 +218,6 @@ def process_translation(self, paragraph): if paragraph.is_cache: message = _('Translation (Cached): {}') self.log(message.format(paragraph.translation.strip())) - # else: - # self.log(sep(), True) - # self.log(_('Row: {}').format(row)) - # self.log(_('Original: {}').format(original), True) - # self.log(sep('┈'), True) - # self.log(_('Error: {}').format(paragraph.error.strip()), True) - # # paragraph.error = None def handle(self, paragraphs=[]): start_time = time.time() diff --git a/setting.py b/setting.py index 0fbdebb..f447950 100644 --- a/setting.py +++ b/setting.py @@ -1136,6 +1136,8 @@ def choose_filter_mode(btn_id): metadata_group = QGroupBox(_('Ebook Metadata')) metadata_layout = QFormLayout(metadata_group) self.set_form_layout_policy(metadata_layout) + self.metadata_translation = QCheckBox( + _('Translate all of the metadata information')) self.metadata_lang_mark = QCheckBox( _('Append target language to title metadata')) self.metadata_lang_code = QCheckBox( @@ -1143,17 +1145,20 @@ def choose_filter_mode(btn_id): self.metadata_subject = QPlainTextEdit() self.metadata_subject.setPlaceholderText( _('Subjects of ebook (one subject per line)')) + metadata_layout.addRow( + _('Metadata Translation'), self.metadata_translation) metadata_layout.addRow(_('Language Mark'), self.metadata_lang_mark) metadata_layout.addRow(_('Language Code'), self.metadata_lang_code) metadata_layout.addRow(_('Append Subjects'), self.metadata_subject) layout.addWidget(metadata_group) + self.metadata_translation.setChecked( + self.config.get('ebook_metadata.metadata_translation', False)) self.metadata_lang_mark.setChecked( self.config.get('ebook_metadata.lang_mark', False)) - self.metadata_lang_code.setChecked( - self.config.get( - 'ebook_metadata.lang_code', - self.config.get('ebook_metadata.language', False))) # old key + self.metadata_lang_code.setChecked(self.config.get( + 'ebook_metadata.lang_code', + self.config.get('ebook_metadata.language', False))) # old key self.metadata_subject.setPlainText( '\n'.join(self.config.get('ebook_metadata.subjects', []))) @@ -1362,6 +1367,8 @@ def update_content_config(self): # Ebook metadata ebook_metadata = self.config.get('ebook_metadata').copy() ebook_metadata.clear() + ebook_metadata.update( + metadata_translation=self.metadata_translation.isChecked()) ebook_metadata.update(lang_mark=self.metadata_lang_mark.isChecked()) ebook_metadata.update(lang_code=self.metadata_lang_code.isChecked()) subject_content = self.metadata_subject.toPlainText().strip() diff --git a/tests/test_element.py b/tests/test_element.py index 4734391..5331da6 100644 --- a/tests/test_element.py +++ b/tests/test_element.py @@ -17,6 +17,9 @@ from ..engines.base import Base +module_name = 'calibre_plugins.ebook_translator.lib.element' + + class TestFunction(unittest.TestCase): def test_get_string(self): markup = '
' \ @@ -66,7 +69,9 @@ def test_get_toc_elements(self): elements = get_toc_elements(toc, []) self.assertEqual(3, len(elements)) - def test_get_metadata_elements(self): + @patch(module_name + '.get_config') + def test_get_metadata_elements(self, mock_get_config): + mock_get_config.return_value.get.return_value = False metadata = Mock(Metadata) item_1 = Mock(Metadata.Item, content='a') item_2 = Mock(Metadata.Item, content='b') @@ -78,9 +83,13 @@ def test_get_metadata_elements(self): elements = get_metadata_elements(metadata) + mock_get_config().get.assert_called_once_with( + 'ebook_metadata.metadata_translation', False) self.assertEqual(2, len(elements)) self.assertIs(item_1, elements[0].element) + self.assertTrue(elements[0].ignored) self.assertIs(item_2, elements[1].element) + self.assertTrue(elements[1].ignored) class MockedElement(Element): @@ -318,6 +327,11 @@ def test_add_translation_same_content(self): self.element.add_translation('a') self.assertEqual('a', self.element.element.content) + def test_add_translation_with_ignored(self): + self.element.ignored = True + self.element.add_translation('A') + self.assertEqual('a', self.element.element.content) + class TestTocElement(unittest.TestCase): def setUp(self): diff --git a/translations/es.po b/translations/es.po index 0fc9ed8..e3e6d0e 100644 --- a/translations/es.po +++ b/translations/es.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: 2023-04-17 14:17+0800\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -109,6 +109,9 @@ msgstr "" msgid "keyword for filtering" msgstr "" +msgid "Reset" +msgstr "" + msgid "Total items: {}" msgstr "Articulos totales: {}" @@ -220,9 +223,6 @@ msgstr "" msgid "Move" msgstr "" -msgid "Reset" -msgstr "" - msgid "Reveal" msgstr "" @@ -449,6 +449,9 @@ msgstr "Youdao" msgid "Start to convert ebook format..." msgstr "Comienza a convertir el formato de libro electrónico..." +msgid "Outputting ebook file..." +msgstr "" + msgid "Starting to output subtitles file..." msgstr "" @@ -527,9 +530,6 @@ msgstr "" msgid "Time consuming: {} minutes" msgstr "" -msgid "Outputting ebook file..." -msgstr "" - msgid "General" msgstr "" @@ -784,6 +784,9 @@ msgstr "" msgid "Ebook Metadata" msgstr "" +msgid "Translate all of the metadata information" +msgstr "" + msgid "Append target language to title metadata" msgstr "" @@ -793,6 +796,9 @@ msgstr "" msgid "Subjects of ebook (one subject per line)" msgstr "" +msgid "Metadata Translation" +msgstr "" + msgid "Language Mark" msgstr "" diff --git a/translations/fr.po b/translations/fr.po index d128f3f..a338c52 100644 --- a/translations/fr.po +++ b/translations/fr.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: 2023-10-01 15:35-0400\n" "Last-Translator: PoP\n" @@ -109,6 +109,9 @@ msgstr "" msgid "keyword for filtering" msgstr "" +msgid "Reset" +msgstr "Repartir" + msgid "Total items: {}" msgstr "Items totaux: {}" @@ -220,9 +223,6 @@ msgstr "Choisissez le chemin pour enregistrer les fichiers cache." msgid "Move" msgstr "" -msgid "Reset" -msgstr "Repartir" - msgid "Reveal" msgstr "Révéler" @@ -457,6 +457,9 @@ msgstr "Youdao" msgid "Start to convert ebook format..." msgstr "Commençant la conversion du format de ebook..." +msgid "Outputting ebook file..." +msgstr "" + msgid "Starting to output subtitles file..." msgstr "" @@ -536,9 +539,6 @@ msgstr "La traduction a échoué." msgid "Time consuming: {} minutes" msgstr "" -msgid "Outputting ebook file..." -msgstr "" - msgid "General" msgstr "Général" @@ -795,6 +795,9 @@ msgstr "" msgid "Ebook Metadata" msgstr "Metadata du ebook" +msgid "Translate all of the metadata information" +msgstr "" + msgid "Append target language to title metadata" msgstr "" @@ -804,6 +807,9 @@ msgstr "Sélectionnez la langue cible pour le metadata" msgid "Subjects of ebook (one subject per line)" msgstr "Sujets du ebook (un sujet par ligne)" +msgid "Metadata Translation" +msgstr "" + msgid "Language Mark" msgstr "" diff --git a/translations/message.pot b/translations/message.pot index 039be2a..4a62682 100644 --- a/translations/message.pot +++ b/translations/message.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -51,7 +51,7 @@ msgstr "" msgid "Input Format" msgstr "" -#: advanced.py:265 advanced.py:747 batch.py:72 setting.py:383 +#: advanced.py:265 advanced.py:762 batch.py:72 setting.py:383 msgid "Target Language" msgstr "" @@ -59,19 +59,19 @@ msgstr "" msgid "Encoding" msgstr "" -#: advanced.py:294 +#: advanced.py:294 batch.py:73 msgid "Target Directionality" msgstr "" -#: advanced.py:297 +#: advanced.py:297 batch.py:109 msgid "Auto" msgstr "" -#: advanced.py:298 +#: advanced.py:298 batch.py:110 msgid "Left to Right" msgstr "" -#: advanced.py:299 +#: advanced.py:299 batch.py:111 msgid "Right to Left" msgstr "" @@ -79,7 +79,7 @@ msgstr "" msgid "Failed to translate {} paragraph(s), Would you like to retry?" msgstr "" -#: advanced.py:390 lib/translation.py:266 +#: advanced.py:390 lib/translation.py:259 lib/translation.py:260 msgid "Translation completed." msgstr "" @@ -87,168 +87,172 @@ msgstr "" msgid "There is no content that needs to be translated." msgstr "" -#: advanced.py:453 +#: advanced.py:454 msgid "Loading ebook data, please wait..." msgstr "" -#: advanced.py:482 +#: advanced.py:483 msgid "Review" msgstr "" -#: advanced.py:483 +#: advanced.py:484 msgid "Log" msgstr "" -#: advanced.py:484 +#: advanced.py:485 msgid "Errors" msgstr "" -#: advanced.py:510 +#: advanced.py:511 msgid "All" msgstr "" -#: advanced.py:512 components/indicator.py:14 +#: advanced.py:513 components/indicator.py:14 msgid "Non-aligned" msgstr "" -#: advanced.py:513 advanced.py:836 components/indicator.py:13 +#: advanced.py:514 advanced.py:851 components/indicator.py:13 #: components/table.py:97 msgid "Translated" msgstr "" -#: advanced.py:514 components/indicator.py:15 components/table.py:88 +#: advanced.py:515 components/indicator.py:15 components/table.py:88 msgid "Untranslated" msgstr "" -#: advanced.py:517 +#: advanced.py:518 msgid "Original Text" msgstr "" -#: advanced.py:518 +#: advanced.py:519 msgid "Original Code" msgstr "" -#: advanced.py:519 +#: advanced.py:520 msgid "Translation Text" msgstr "" -#: advanced.py:522 +#: advanced.py:523 msgid "keyword for filtering" msgstr "" -#: advanced.py:614 +#: advanced.py:528 cache.py:78 +msgid "Reset" +msgstr "" + +#: advanced.py:629 msgid "Total items: {}" msgstr "" -#: advanced.py:615 lib/translation.py:240 +#: advanced.py:630 lib/translation.py:233 msgid "Character count: {}" msgstr "" -#: advanced.py:624 +#: advanced.py:639 msgid "Non-aligned items: {}" msgstr "" -#: advanced.py:657 cache.py:96 cache.py:185 components/engine.py:202 +#: advanced.py:672 cache.py:96 cache.py:185 components/engine.py:202 #: components/table.py:169 msgid "Delete" msgstr "" -#: advanced.py:659 +#: advanced.py:674 msgid "Translate All" msgstr "" -#: advanced.py:660 +#: advanced.py:675 msgid "Translate Selected" msgstr "" -#: advanced.py:685 advanced.py:700 +#: advanced.py:700 advanced.py:715 msgid "Stop" msgstr "" -#: advanced.py:690 +#: advanced.py:705 msgid "Are you sure you want to stop the translation progress?" msgstr "" -#: advanced.py:694 +#: advanced.py:709 msgid "Stopping..." msgstr "" -#: advanced.py:725 +#: advanced.py:740 msgid "Cache Status" msgstr "" -#: advanced.py:728 +#: advanced.py:743 msgid "Disabled" msgstr "" -#: advanced.py:728 +#: advanced.py:743 msgid "Enabled" msgstr "" -#: advanced.py:735 setting.py:342 +#: advanced.py:750 setting.py:342 msgid "Translation Engine" msgstr "" -#: advanced.py:741 batch.py:72 setting.py:382 +#: advanced.py:756 batch.py:72 setting.py:382 msgid "Source Language" msgstr "" -#: advanced.py:753 +#: advanced.py:768 msgid "Custom Ebook Title" msgstr "" -#: advanced.py:758 +#: advanced.py:773 msgid "By default, title metadata will be translated." msgstr "" -#: advanced.py:787 +#: advanced.py:802 msgid "Output Ebook" msgstr "" -#: advanced.py:789 +#: advanced.py:804 msgid "Output" msgstr "" -#: advanced.py:837 +#: advanced.py:852 msgid "The ebook has not been translated yet." msgstr "" -#: advanced.py:841 +#: advanced.py:856 msgid "" "The number of lines in some translation units differs between the original " "text and the translated text. Are you sure you want to output without " "checking alignment?" msgstr "" -#: advanced.py:876 +#: advanced.py:897 msgid "No translation yet" msgstr "" -#: advanced.py:929 components/engine.py:208 setting.py:98 +#: advanced.py:949 components/engine.py:208 setting.py:98 msgid "&Save" msgstr "" -#: advanced.py:1010 +#: advanced.py:1031 msgid "Your changes have been saved." msgstr "" -#: advanced.py:1021 +#: advanced.py:1042 msgid "Translation log" msgstr "" -#: advanced.py:1032 +#: advanced.py:1053 msgid "Error log" msgstr "" -#: advanced.py:1052 +#: advanced.py:1073 msgid "Are you sure you want to translate all {:n} paragraphs?" msgstr "" -#: advanced.py:1080 +#: advanced.py:1101 msgid "Are you sure you want to cancel the preparation progress?" msgstr "" -#: advanced.py:1091 +#: advanced.py:1112 msgid "Are you sure you want to cancel the translation progress?" msgstr "" @@ -260,19 +264,19 @@ msgstr "" msgid "Title" msgstr "" -#: batch.py:98 +#: batch.py:99 batch.py:103 msgid "Default" msgstr "" -#: batch.py:166 components/engine.py:139 components/table.py:167 +#: batch.py:183 components/engine.py:139 components/table.py:167 msgid "Translate" msgstr "" -#: batch.py:177 lib/cache.py:126 +#: batch.py:194 lib/cache.py:126 msgid "Unknown" msgstr "" -#: batch.py:186 cache.py:133 setting.py:1190 +#: batch.py:203 cache.py:133 setting.py:1195 msgid "The specified path does not exist." msgstr "" @@ -284,10 +288,6 @@ msgstr "" msgid "Move" msgstr "" -#: cache.py:78 -msgid "Reset" -msgstr "" - #: cache.py:79 msgid "Reveal" msgstr "" @@ -422,7 +422,7 @@ msgstr "" msgid "Not selected" msgstr "" -#: components/lang.py:34 engines/base.py:71 setting.py:1252 +#: components/lang.py:34 engines/base.py:71 setting.py:1257 msgid "Auto detect" msgstr "" @@ -584,53 +584,57 @@ msgstr "" msgid "Youdao" msgstr "" -#: lib/conversion.py:74 +#: lib/conversion.py:77 msgid "Start to convert ebook format..." msgstr "" -#: lib/conversion.py:98 +#: lib/conversion.py:82 +msgid "Outputting ebook file..." +msgstr "" + +#: lib/conversion.py:105 msgid "Starting to output subtitles file..." msgstr "" -#: lib/conversion.py:104 +#: lib/conversion.py:111 msgid "The translation of the subtitles file was completed." msgstr "" -#: lib/conversion.py:123 +#: lib/conversion.py:130 msgid "Starting to output PGN file..." msgstr "" -#: lib/conversion.py:133 +#: lib/conversion.py:140 msgid "The translation of the PGN file was completed." msgstr "" -#: lib/conversion.py:270 +#: lib/conversion.py:275 msgid "[{} > {}] Translating \"{}\"" msgstr "" -#: lib/conversion.py:279 tests/test_convertion.py:40 +#: lib/conversion.py:284 tests/test_convertion.py:40 msgid "Translation job failed" msgstr "" -#: lib/conversion.py:327 tests/test_convertion.py:98 +#: lib/conversion.py:332 tests/test_convertion.py:98 #: tests/test_convertion.py:164 tests/test_convertion.py:228 #: tests/test_convertion.py:284 msgid "completed" msgstr "" -#: lib/conversion.py:341 tests/test_convertion.py:103 +#: lib/conversion.py:346 tests/test_convertion.py:103 #: tests/test_convertion.py:169 tests/test_convertion.py:235 #: tests/test_convertion.py:289 msgid "Ebook Translation Log" msgstr "" -#: lib/conversion.py:341 tests/test_convertion.py:104 +#: lib/conversion.py:346 tests/test_convertion.py:104 #: tests/test_convertion.py:170 tests/test_convertion.py:236 #: tests/test_convertion.py:290 msgid "Translation Completed" msgstr "" -#: lib/conversion.py:342 tests/test_convertion.py:106 +#: lib/conversion.py:347 tests/test_convertion.py:106 #: tests/test_convertion.py:172 tests/test_convertion.py:238 #: tests/test_convertion.py:292 msgid "The translation of \"{}\" was completed. Do you want to open the book?" @@ -680,30 +684,26 @@ msgstr "" msgid "Translation (Cached): {}" msgstr "" -#: lib/translation.py:237 +#: lib/translation.py:230 msgid "Start to translate ebook content" msgstr "" -#: lib/translation.py:239 +#: lib/translation.py:232 msgid "Item count: {}" msgstr "" -#: lib/translation.py:243 +#: lib/translation.py:236 msgid "There is no content need to translate." msgstr "" -#: lib/translation.py:263 +#: lib/translation.py:256 msgid "Translation failed." msgstr "" -#: lib/translation.py:265 +#: lib/translation.py:258 msgid "Time consuming: {} minutes" msgstr "" -#: lib/translation.py:267 -msgid "Outputting ebook file..." -msgstr "" - #: setting.py:62 msgid "General" msgstr "" @@ -1043,58 +1043,66 @@ msgid "Ebook Metadata" msgstr "" #: setting.py:1140 -msgid "Append target language to title metadata" +msgid "Translate all of the metadata information" msgstr "" #: setting.py:1142 +msgid "Append target language to title metadata" +msgstr "" + +#: setting.py:1144 msgid "Set target language code to language metadata" msgstr "" -#: setting.py:1145 +#: setting.py:1147 msgid "Subjects of ebook (one subject per line)" msgstr "" -#: setting.py:1146 +#: setting.py:1149 +msgid "Metadata Translation" +msgstr "" + +#: setting.py:1150 msgid "Language Mark" msgstr "" -#: setting.py:1147 +#: setting.py:1151 msgid "Language Code" msgstr "" -#: setting.py:1148 +#: setting.py:1152 msgid "Append Subjects" msgstr "" -#: setting.py:1169 setting.py:1204 +#: setting.py:1174 setting.py:1209 msgid "Proxy host or port is incorrect." msgstr "" -#: setting.py:1171 +#: setting.py:1176 msgid "The proxy is available." msgstr "" -#: setting.py:1172 +#: setting.py:1177 msgid "The proxy is not available." msgstr "" -#: setting.py:1262 +#: setting.py:1267 msgid "the prompt must include {}." msgstr "" -#: setting.py:1291 setting.py:1298 +#: setting.py:1296 setting.py:1303 msgid "Invalid color value." msgstr "" -#: setting.py:1307 +#: setting.py:1312 msgid "The specified glossary file does not exist." msgstr "" -#: setting.py:1318 setting.py:1343 setting.py:1356 +#: setting.py:1323 setting.py:1348 setting.py:1361 msgid "{} is not a valid CSS seletor." msgstr "" -#: setting.py:1331 +#: setting.py:1336 msgid "{} is not a valid regular expression." msgstr "" diff --git a/translations/pt.po b/translations/pt.po index 7ae99cc..9ce29eb 100644 --- a/translations/pt.po +++ b/translations/pt.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: none\n" @@ -108,6 +108,9 @@ msgstr "Texto de Tradução" msgid "keyword for filtering" msgstr "Palavra-chave para filtragem" +msgid "Reset" +msgstr "Reinicar" + msgid "Total items: {}" msgstr "Total de itens: {}" @@ -222,9 +225,6 @@ msgstr "Escolha um caminho para armazenar os arquivos cache" msgid "Move" msgstr "Mover" -msgid "Reset" -msgstr "Reinicar" - msgid "Reveal" msgstr "Revelar" @@ -463,6 +463,9 @@ msgstr "Youdao" msgid "Start to convert ebook format..." msgstr "Iniciar conversão de formato de ebook..." +msgid "Outputting ebook file..." +msgstr "Gerando arquivo de e-book..." + msgid "Starting to output subtitles file..." msgstr "Iniciando a criação dos arquivos de legendas" @@ -541,9 +544,6 @@ msgstr "Tradução falhou." msgid "Time consuming: {} minutes" msgstr "Tempo gasto: {} minutos" -msgid "Outputting ebook file..." -msgstr "Gerando arquivo de e-book..." - msgid "General" msgstr "Geral" @@ -803,6 +803,9 @@ msgstr "Mantenha os elementos que correspondam a estas regras para extração." msgid "Ebook Metadata" msgstr "Metadados dos ebooks" +msgid "Translate all of the metadata information" +msgstr "" + msgid "Append target language to title metadata" msgstr "Anexar idioma de destino aos metadados do título" @@ -812,6 +815,9 @@ msgstr "Defina idioma de destino como metadados" msgid "Subjects of ebook (one subject per line)" msgstr "Assuntos do e-book (um assunto por linha)" +msgid "Metadata Translation" +msgstr "" + msgid "Language Mark" msgstr "Marca de idioma" diff --git a/translations/tr.po b/translations/tr.po index 904d3c4..477b099 100644 --- a/translations/tr.po +++ b/translations/tr.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: 2024-03-23 15:12+0300\n" "Last-Translator: DogancanYr \n" "Language-Team: Turkish \n" @@ -108,6 +108,9 @@ msgstr "" msgid "keyword for filtering" msgstr "" +msgid "Reset" +msgstr "Sıfırla" + msgid "Total items: {}" msgstr "Toplam öğe: {}" @@ -221,9 +224,6 @@ msgstr "Önbellek dosyalarını depolamak için bir yol seçin." msgid "Move" msgstr "" -msgid "Reset" -msgstr "Sıfırla" - msgid "Reveal" msgstr "Açıkla" @@ -462,6 +462,9 @@ msgstr "Youdao" msgid "Start to convert ebook format..." msgstr "E-kitap formatını dönüştürmeye başla..." +msgid "Outputting ebook file..." +msgstr "" + msgid "Starting to output subtitles file..." msgstr "Altyazı dosyasının çıktısı alınmaya başlanıyor..." @@ -540,9 +543,6 @@ msgstr "Çeviri başarısız oldu." msgid "Time consuming: {} minutes" msgstr "" -msgid "Outputting ebook file..." -msgstr "" - msgid "General" msgstr "Genel" @@ -797,6 +797,9 @@ msgstr "" msgid "Ebook Metadata" msgstr "E-kitap Meta Verisi" +msgid "Translate all of the metadata information" +msgstr "" + msgid "Append target language to title metadata" msgstr "Hedef dili başlık meta verilerine ekle" @@ -806,6 +809,9 @@ msgstr "Hedef dil kodunu dil meta verilerine ayarla" msgid "Subjects of ebook (one subject per line)" msgstr "E-kitabın konuları (her satıra bir konu)" +msgid "Metadata Translation" +msgstr "" + msgid "Language Mark" msgstr "Dil İşareti" diff --git a/translations/zh_CN.mo b/translations/zh_CN.mo index f63c674..9dd443d 100644 Binary files a/translations/zh_CN.mo and b/translations/zh_CN.mo differ diff --git a/translations/zh_CN.po b/translations/zh_CN.po index f49a01a..b2c476c 100644 --- a/translations/zh_CN.po +++ b/translations/zh_CN.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: 2023-04-17 14:17+0800\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -106,6 +106,9 @@ msgstr "译文文本" msgid "keyword for filtering" msgstr "筛选关键词" +msgid "Reset" +msgstr "重置" + msgid "Total items: {}" msgstr "全部条目:{}" @@ -217,9 +220,6 @@ msgstr "选择一个用来存放缓存文件的路径。" msgid "Move" msgstr "移动" -msgid "Reset" -msgstr "重置" - msgid "Reveal" msgstr "打开" @@ -451,6 +451,9 @@ msgstr "有道" msgid "Start to convert ebook format..." msgstr "开始转换电子书格式……" +msgid "Outputting ebook file..." +msgstr "正在输出电子书文件……" + msgid "Starting to output subtitles file..." msgstr "开始输出字幕文件……" @@ -529,9 +532,6 @@ msgstr "翻译已失败。" msgid "Time consuming: {} minutes" msgstr "耗时:{} 分钟" -msgid "Outputting ebook file..." -msgstr "正在输出电子书文件……" - msgid "General" msgstr "通用" @@ -784,6 +784,9 @@ msgstr "保留已抽取元素中匹配这些规则的元素。" msgid "Ebook Metadata" msgstr "电子书元数据" +msgid "Translate all of the metadata information" +msgstr "翻译所有源数据信息" + msgid "Append target language to title metadata" msgstr "将目标语言附加到书名元数据中" @@ -793,6 +796,9 @@ msgstr "将语言元数据设置为目标语言代码" msgid "Subjects of ebook (one subject per line)" msgstr "电子书主题(每行一个主题)" +msgid "Metadata Translation" +msgstr "翻译元数据" + msgid "Language Mark" msgstr "语言标记" diff --git a/translations/zh_TW.po b/translations/zh_TW.po index 4884d92..bf1bb24 100644 --- a/translations/zh_TW.po +++ b/translations/zh_TW.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Ebook Translator Calibre Plugin\n" "Report-Msgid-Bugs-To: bookfere@gmail.com\n" -"POT-Creation-Date: 2024-05-01 22:21+0800\n" +"POT-Creation-Date: 2024-05-10 21:15+0800\n" "PO-Revision-Date: 2023-04-25 15:36+0800\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -107,6 +107,9 @@ msgstr "" msgid "keyword for filtering" msgstr "" +msgid "Reset" +msgstr "" + msgid "Total items: {}" msgstr "項目總計:{}" @@ -218,9 +221,6 @@ msgstr "" msgid "Move" msgstr "" -msgid "Reset" -msgstr "" - msgid "Reveal" msgstr "" @@ -447,6 +447,9 @@ msgstr "有道" msgid "Start to convert ebook format..." msgstr "開始轉換電子書格式..." +msgid "Outputting ebook file..." +msgstr "" + msgid "Starting to output subtitles file..." msgstr "" @@ -525,9 +528,6 @@ msgstr "" msgid "Time consuming: {} minutes" msgstr "" -msgid "Outputting ebook file..." -msgstr "" - msgid "General" msgstr "" @@ -780,6 +780,9 @@ msgstr "" msgid "Ebook Metadata" msgstr "" +msgid "Translate all of the metadata information" +msgstr "" + msgid "Append target language to title metadata" msgstr "" @@ -789,6 +792,9 @@ msgstr "" msgid "Subjects of ebook (one subject per line)" msgstr "" +msgid "Metadata Translation" +msgstr "" + msgid "Language Mark" msgstr ""