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 ""