From d5784ed58e9ce76993e9e0374eb0ceaa88ff5c8f Mon Sep 17 00:00:00 2001 From: cdhigh Date: Sun, 24 Nov 2024 07:00:01 -0300 Subject: [PATCH] fix send_to_kindle crash and minor improve dict --- application/lib/build_ebook.py | 20 ++-- .../lib/dictionary/babylon/babylon_dict.py | 2 +- .../lib/dictionary/lingvo/lingvo_dict.py | 2 +- application/lib/dictionary/mdict/mdict.py | 2 +- .../lib/dictionary/stardict/stardict.py | 2 +- application/static/base.js | 5 +- application/templates/base.html | 3 +- application/translations/messages.pot | 112 ++++++++--------- .../tr_TR/LC_MESSAGES/messages.mo | Bin 30831 -> 30912 bytes .../tr_TR/LC_MESSAGES/messages.po | 113 +++++++++--------- .../translations/zh/LC_MESSAGES/messages.mo | Bin 29005 -> 29079 bytes .../translations/zh/LC_MESSAGES/messages.po | 113 +++++++++--------- 12 files changed, 197 insertions(+), 177 deletions(-) diff --git a/application/lib/build_ebook.py b/application/lib/build_ebook.py index 3de394e4..df4e0282 100644 --- a/application/lib/build_ebook.py +++ b/application/lib/build_ebook.py @@ -32,7 +32,7 @@ def convert_book(input_, input_fmt, user, options=None, output_fmt=''): return b'' #仅通过一个url列表构建一本电子书 -#urls: [(title, url),...] or [url,url,...] +#urls: [(title, url),...] or [url, url,...] #title: 书籍标题 #user: KeUser对象 #output_fmt: 如果指定,则生成特定格式的书籍,否则使用 user.book_cfg('type') @@ -49,14 +49,18 @@ def clearPrevDownloads(): #退出时清理临时文件 print(f'Delete failed: {item}: {e}') pass - for idx, url in enumerate(urls[:]): - if not sysTmpDir or not isinstance(url, str): #如果没有使用临时目录则无法提取下载 - urls[idx] = (title, url) if isinstance(url, str) else url + titleUrls = urls[:] + #规整化urls列表元素格式,同时预下载文章内容,提取文章的标题 + #这一步主要是能让每篇文章都使用真实的标题 + for idx, url in enumerate(titleUrls): + #如果没有使用临时目录则无法提取下载 + if not sysTmpDir or not isinstance(url, str): + titleUrls[idx] = (title, url) if isinstance(url, str) else url continue resp = UrlOpener().open(url) if resp.status_code != 200: - urls[idx] = (title, url) + titleUrls[idx] = (title, url) continue with PersistentTemporaryFile(suffix='.html', dir=sysTmpDir) as pt: @@ -64,14 +68,14 @@ def clearPrevDownloads(): #退出时清理临时文件 try: pt.write(resp.content) except Exception as e: - urls[idx] = (title, url) + titleUrls[idx] = (title, url) default_log.warning(f'Prev download html failed: {url}: {e}') else: #提取标题 match = re.search(r']*>(.*?)', resp.text, re.I|re.M|re.S) uTitle = match.group(1).strip() if match else title - urls[idx] = (uTitle, 'file://' + pt.name) + titleUrls[idx] = (uTitle, 'file://' + pt.name) - src = GenerateRecipeSource(title, urls, user, base='UrlNewsRecipe', max_articles=100, + src = GenerateRecipeSource(title, titleUrls, user, base='UrlNewsRecipe', max_articles=100, cover_url=False, language=language) try: ro = compile_recipe(src) diff --git a/application/lib/dictionary/babylon/babylon_dict.py b/application/lib/dictionary/babylon/babylon_dict.py index 64481d2a..3ee241b1 100644 --- a/application/lib/dictionary/babylon/babylon_dict.py +++ b/application/lib/dictionary/babylon/babylon_dict.py @@ -42,7 +42,7 @@ def __init__(self, database='', host=None): self.initError = loc_exc_pos(f'Init BabylonDict failed: {self.databases[database]}') default_log.warning(self.initError) else: - self.initError = f'Dict not found: {self.databases[database]}' + self.initError = f'Dict not found: {database}' default_log.warning(self.initError) #返回当前使用的词典名字 diff --git a/application/lib/dictionary/lingvo/lingvo_dict.py b/application/lib/dictionary/lingvo/lingvo_dict.py index 93b1d80a..dd13b2ec 100644 --- a/application/lib/dictionary/lingvo/lingvo_dict.py +++ b/application/lib/dictionary/lingvo/lingvo_dict.py @@ -42,7 +42,7 @@ def __init__(self, database='', host=None): self.initError = loc_exc_pos(f'Init LingvoDict failed: {self.databases[database]}') default_log.warning(self.initError) else: - self.initError = f'Dict not found: {self.databases[database]}' + self.initError = f'Dict not found: {database}' default_log.warning(self.initError) #返回当前使用的词典名字 diff --git a/application/lib/dictionary/mdict/mdict.py b/application/lib/dictionary/mdict/mdict.py index d744ca0f..30540a2e 100644 --- a/application/lib/dictionary/mdict/mdict.py +++ b/application/lib/dictionary/mdict/mdict.py @@ -47,7 +47,7 @@ def __init__(self, database='', host=None): self.initError = loc_exc_pos(f'Init mdict failed: {self.databases[database]}') default_log.warning(self.initError) else: - self.initError = f'Dict not found: {self.databases[database]}' + self.initError = f'Dict not found: {database}' default_log.warning(self.initError) #返回当前使用的词典名字 diff --git a/application/lib/dictionary/stardict/stardict.py b/application/lib/dictionary/stardict/stardict.py index 3fb2da2c..695775f4 100644 --- a/application/lib/dictionary/stardict/stardict.py +++ b/application/lib/dictionary/stardict/stardict.py @@ -42,7 +42,7 @@ def __init__(self, database='', host=None): self.initError = loc_exc_pos(f'Init stardict failed: {self.databases[database]}') default_log.warning(self.initError) else: - self.initError = f'Dict not found: {self.databases[database]}' + self.initError = f'Dict not found: {database}' default_log.warning(self.initError) #返回当前使用的词典名字 diff --git a/application/static/base.js b/application/static/base.js index eaa161c1..3ea3e078 100644 --- a/application/static/base.js +++ b/application/static/base.js @@ -1728,9 +1728,12 @@ function DictEngineFieldChanged(idx) { var engine = engineSel.val(); dbSel.empty(); var databases = g_dictEngines[engine].databases; - if (!databases) { + if (!databases || Object.keys(databases).length === 0) { + var txt = ``; + dbSel.append($(``)); return; } + var currDb = g_dictParams[idx].database; for (var name in databases) { var selected = (currDb == name) ? 'selected="selected"' : ''; diff --git a/application/templates/base.html b/application/templates/base.html index 39def526..b479fda0 100644 --- a/application/templates/base.html +++ b/application/templates/base.html @@ -127,7 +127,8 @@ weekday: "{{_('Weekday')|safe}}", date: "{{_('Date')|safe}}", settingIsPrioritized: "{{_('This setting is prioritized.')|safe}}", - multiValuesWithCommas: "{{_('Combine multiple values with commas.')}}" + multiValuesWithCommas: "{{_('Combine multiple values with commas.')}}", + putFileInDict: "{{_('Put dictionary in dict folder')}}" }; {% block javascript_inhead %} diff --git a/application/translations/messages.pot b/application/translations/messages.pot index ae527889..4ee3942b 100644 --- a/application/translations/messages.pot +++ b/application/translations/messages.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-11-21 10:11-0300\n" +"POT-Creation-Date: 2024-11-23 21:29-0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.14.0\n" -#: application/templates/admin.html:3 application/templates/base.html:182 +#: application/templates/admin.html:3 application/templates/base.html:183 #: application/templates/settings.html:252 msgid "Admin" msgstr "" @@ -252,31 +252,31 @@ msgid "Dictionary" msgstr "" #: application/templates/adv_base.html:75 -#: application/templates/adv_base.html:79 +#: application/templates/adv_base.html:83 +#: application/templates/adv_proxy.html:3 +#: application/templates/adv_proxy.html:12 +msgid "Proxy" +msgstr "" + +#: application/templates/adv_base.html:92 +#: application/templates/adv_base.html:96 #: application/templates/adv_import.html:8 msgid "Import Feeds" msgstr "" -#: application/templates/adv_base.html:84 -#: application/templates/adv_base.html:88 +#: application/templates/adv_base.html:101 +#: application/templates/adv_base.html:105 msgid "Cover Image" msgstr "" -#: application/templates/adv_base.html:93 -#: application/templates/adv_base.html:97 +#: application/templates/adv_base.html:110 +#: application/templates/adv_base.html:114 #: application/templates/adv_uploadcss.html:3 msgid "Stylesheet" msgstr "" -#: application/templates/adv_base.html:102 -#: application/templates/adv_base.html:106 -#: application/templates/adv_proxy.html:3 -#: application/templates/adv_proxy.html:12 -msgid "Proxy" -msgstr "" - -#: application/templates/adv_base.html:111 -#: application/templates/adv_base.html:115 +#: application/templates/adv_base.html:119 +#: application/templates/adv_base.html:123 #: application/templates/adv_calibre_options.html:12 msgid "Calibre Options" msgstr "" @@ -954,43 +954,47 @@ msgstr "" msgid "Combine multiple values with commas." msgstr "" -#: application/templates/base.html:155 application/templates/home.html:16 +#: application/templates/base.html:131 +msgid "Put dictionary in dict folder" +msgstr "" + +#: application/templates/base.html:156 application/templates/home.html:16 msgid "Logout" msgstr "" -#: application/templates/base.html:157 application/templates/home.html:21 +#: application/templates/base.html:158 application/templates/home.html:21 #: application/templates/login.html:3 application/templates/login.html:22 #: application/templates/login.html:33 msgid "Login" msgstr "" -#: application/templates/base.html:159 application/templates/signup.html:3 +#: application/templates/base.html:160 application/templates/signup.html:3 #: application/templates/signup.html:19 application/templates/signup.html:43 msgid "Signup" msgstr "" -#: application/templates/base.html:179 application/templates/home.html:15 +#: application/templates/base.html:180 application/templates/home.html:15 #: application/templates/my.html:3 msgid "Feeds" msgstr "" -#: application/templates/base.html:180 application/templates/settings.html:3 +#: application/templates/base.html:181 application/templates/settings.html:3 msgid "Settings" msgstr "" -#: application/templates/base.html:181 application/templates/logs.html:3 +#: application/templates/base.html:182 application/templates/logs.html:3 msgid "Logs" msgstr "" -#: application/templates/base.html:183 +#: application/templates/base.html:184 msgid "Advanced" msgstr "" -#: application/templates/base.html:184 application/templates/library.html:3 +#: application/templates/base.html:185 application/templates/library.html:3 msgid "Shared" msgstr "" -#: application/templates/base.html:185 application/templates/reader.html:6 +#: application/templates/base.html:186 application/templates/reader.html:6 msgid "Reader" msgstr "" @@ -1684,8 +1688,8 @@ msgstr "" msgid "Word" msgstr "" -#: application/view/admin.py:48 application/view/adv.py:431 -#: application/view/adv.py:483 application/view/settings.py:66 +#: application/view/admin.py:48 application/view/adv.py:434 +#: application/view/adv.py:486 application/view/settings.py:66 #: application/view/translator.py:87 application/view/translator.py:171 #: application/view/translator.py:253 msgid "Settings Saved!" @@ -1740,93 +1744,93 @@ msgstr "" msgid "Changes saved successfully." msgstr "" -#: application/view/adv.py:101 application/view/adv.py:102 -#: application/view/adv.py:103 application/view/adv.py:104 -#: application/view/adv.py:105 application/view/adv.py:106 -#: application/view/adv.py:107 application/view/adv.py:108 -#: application/view/adv.py:109 application/view/adv.py:110 +#: application/view/adv.py:104 application/view/adv.py:105 +#: application/view/adv.py:106 application/view/adv.py:107 +#: application/view/adv.py:108 application/view/adv.py:109 +#: application/view/adv.py:110 application/view/adv.py:111 +#: application/view/adv.py:112 application/view/adv.py:113 msgid "Append hyperlink '{}' to article" msgstr "" -#: application/view/adv.py:101 application/view/adv.py:102 -#: application/view/adv.py:103 application/view/adv.py:104 -#: application/view/adv.py:105 +#: application/view/adv.py:104 application/view/adv.py:105 +#: application/view/adv.py:106 application/view/adv.py:107 +#: application/view/adv.py:108 msgid "Save to {}" msgstr "" -#: application/view/adv.py:101 +#: application/view/adv.py:104 msgid "evernote" msgstr "" -#: application/view/adv.py:102 +#: application/view/adv.py:105 msgid "wiz" msgstr "" -#: application/view/adv.py:103 +#: application/view/adv.py:106 msgid "pocket" msgstr "" -#: application/view/adv.py:104 +#: application/view/adv.py:107 msgid "instapaper" msgstr "" -#: application/view/adv.py:105 +#: application/view/adv.py:108 msgid "wallabag" msgstr "" -#: application/view/adv.py:106 application/view/adv.py:107 -#: application/view/adv.py:108 application/view/adv.py:109 +#: application/view/adv.py:109 application/view/adv.py:110 +#: application/view/adv.py:111 application/view/adv.py:112 msgid "Share on {}" msgstr "" -#: application/view/adv.py:106 +#: application/view/adv.py:109 msgid "weibo" msgstr "" -#: application/view/adv.py:107 +#: application/view/adv.py:110 msgid "facebook" msgstr "" -#: application/view/adv.py:109 +#: application/view/adv.py:112 msgid "tumblr" msgstr "" -#: application/view/adv.py:110 +#: application/view/adv.py:113 msgid "Open in browser" msgstr "" -#: application/view/adv.py:111 +#: application/view/adv.py:114 msgid "Append qrcode of url to article" msgstr "" -#: application/view/adv.py:375 application/view/share.py:54 +#: application/view/adv.py:378 application/view/share.py:54 #: application/view/subscribe.py:250 msgid "Unknown command: {}" msgstr "" -#: application/view/adv.py:433 application/view/adv.py:485 +#: application/view/adv.py:436 application/view/adv.py:488 msgid "The format is invalid." msgstr "" -#: application/view/adv.py:517 +#: application/view/adv.py:520 msgid "Authorization Error!
{}" msgstr "" -#: application/view/adv.py:538 +#: application/view/adv.py:541 msgid "Success authorized by Pocket!" msgstr "" -#: application/view/adv.py:544 +#: application/view/adv.py:547 msgid "" "Failed to request authorization of Pocket!
See details " "below:

{}" msgstr "" -#: application/view/adv.py:565 +#: application/view/adv.py:568 msgid "The Instapaper service encountered an error. Please try again later." msgstr "" -#: application/view/adv.py:578 +#: application/view/adv.py:581 msgid "Request type [{}] unsupported" msgstr "" diff --git a/application/translations/tr_TR/LC_MESSAGES/messages.mo b/application/translations/tr_TR/LC_MESSAGES/messages.mo index 440b077d15690bd7b3f54c7f10d7ca1f78ecf5bc..a554048eee81499017d53ca9312fb0f379251c9a 100644 GIT binary patch delta 8078 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 wW~R3bkLpysd(yDtqJyi7i%idb%7 delta 8012 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 UrG3iEYIh93tW|B%b(>oM55~xZ!2kdN diff --git a/application/translations/tr_TR/LC_MESSAGES/messages.po b/application/translations/tr_TR/LC_MESSAGES/messages.po index 996a0325..eb73df84 100644 --- a/application/translations/tr_TR/LC_MESSAGES/messages.po +++ b/application/translations/tr_TR/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-11-21 10:11-0300\n" +"POT-Creation-Date: 2024-11-23 21:29-0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: tr_TR\n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.14.0\n" -#: application/templates/admin.html:3 application/templates/base.html:182 +#: application/templates/admin.html:3 application/templates/base.html:183 #: application/templates/settings.html:252 msgid "Admin" msgstr "Yönetim" @@ -253,31 +253,31 @@ msgid "Dictionary" msgstr "Sözlük" #: application/templates/adv_base.html:75 -#: application/templates/adv_base.html:79 +#: application/templates/adv_base.html:83 +#: application/templates/adv_proxy.html:3 +#: application/templates/adv_proxy.html:12 +msgid "Proxy" +msgstr "Proxy" + +#: application/templates/adv_base.html:92 +#: application/templates/adv_base.html:96 #: application/templates/adv_import.html:8 msgid "Import Feeds" msgstr "feedleri içeri aktar" -#: application/templates/adv_base.html:84 -#: application/templates/adv_base.html:88 +#: application/templates/adv_base.html:101 +#: application/templates/adv_base.html:105 msgid "Cover Image" msgstr "Kapak resmi" -#: application/templates/adv_base.html:93 -#: application/templates/adv_base.html:97 +#: application/templates/adv_base.html:110 +#: application/templates/adv_base.html:114 #: application/templates/adv_uploadcss.html:3 msgid "Stylesheet" msgstr "Stylesheet" -#: application/templates/adv_base.html:102 -#: application/templates/adv_base.html:106 -#: application/templates/adv_proxy.html:3 -#: application/templates/adv_proxy.html:12 -msgid "Proxy" -msgstr "Proxy" - -#: application/templates/adv_base.html:111 -#: application/templates/adv_base.html:115 +#: application/templates/adv_base.html:119 +#: application/templates/adv_base.html:123 #: application/templates/adv_calibre_options.html:12 msgid "Calibre Options" msgstr "Calibre seçenekleri" @@ -970,43 +970,47 @@ msgstr "Bu ayar önceliklidir." msgid "Combine multiple values with commas." msgstr "Birden fazla değeri virgülle birleştirin." -#: application/templates/base.html:155 application/templates/home.html:16 +#: application/templates/base.html:131 +msgid "Put dictionary in dict folder" +msgstr "Sözlüğü dict klasörüne koyun" + +#: application/templates/base.html:156 application/templates/home.html:16 msgid "Logout" msgstr "Çıkış" -#: application/templates/base.html:157 application/templates/home.html:21 +#: application/templates/base.html:158 application/templates/home.html:21 #: application/templates/login.html:3 application/templates/login.html:22 #: application/templates/login.html:33 msgid "Login" msgstr "Giriş" -#: application/templates/base.html:159 application/templates/signup.html:3 +#: application/templates/base.html:160 application/templates/signup.html:3 #: application/templates/signup.html:19 application/templates/signup.html:43 msgid "Signup" msgstr "Kaydol" -#: application/templates/base.html:179 application/templates/home.html:15 +#: application/templates/base.html:180 application/templates/home.html:15 #: application/templates/my.html:3 msgid "Feeds" msgstr "RSSler" -#: application/templates/base.html:180 application/templates/settings.html:3 +#: application/templates/base.html:181 application/templates/settings.html:3 msgid "Settings" msgstr "Ayarlar" -#: application/templates/base.html:181 application/templates/logs.html:3 +#: application/templates/base.html:182 application/templates/logs.html:3 msgid "Logs" msgstr "Kayıtlar" -#: application/templates/base.html:183 +#: application/templates/base.html:184 msgid "Advanced" msgstr "Gelişmiş" -#: application/templates/base.html:184 application/templates/library.html:3 +#: application/templates/base.html:185 application/templates/library.html:3 msgid "Shared" msgstr "Paylaşılan" -#: application/templates/base.html:185 application/templates/reader.html:6 +#: application/templates/base.html:186 application/templates/reader.html:6 msgid "Reader" msgstr "Okuyucu" @@ -1718,8 +1722,8 @@ msgstr "Ek olarak ilet" msgid "Word" msgstr "Kelime" -#: application/view/admin.py:48 application/view/adv.py:431 -#: application/view/adv.py:483 application/view/settings.py:66 +#: application/view/admin.py:48 application/view/adv.py:434 +#: application/view/adv.py:486 application/view/settings.py:66 #: application/view/translator.py:87 application/view/translator.py:171 #: application/view/translator.py:253 msgid "Settings Saved!" @@ -1774,83 +1778,83 @@ msgstr "Eski şifre yanlış." msgid "Changes saved successfully." msgstr "Değişiklikler başarıyla kaydedildi." -#: application/view/adv.py:101 application/view/adv.py:102 -#: application/view/adv.py:103 application/view/adv.py:104 -#: application/view/adv.py:105 application/view/adv.py:106 -#: application/view/adv.py:107 application/view/adv.py:108 -#: application/view/adv.py:109 application/view/adv.py:110 +#: application/view/adv.py:104 application/view/adv.py:105 +#: application/view/adv.py:106 application/view/adv.py:107 +#: application/view/adv.py:108 application/view/adv.py:109 +#: application/view/adv.py:110 application/view/adv.py:111 +#: application/view/adv.py:112 application/view/adv.py:113 msgid "Append hyperlink '{}' to article" msgstr "'{}' linkini makaleye ekle" -#: application/view/adv.py:101 application/view/adv.py:102 -#: application/view/adv.py:103 application/view/adv.py:104 -#: application/view/adv.py:105 +#: application/view/adv.py:104 application/view/adv.py:105 +#: application/view/adv.py:106 application/view/adv.py:107 +#: application/view/adv.py:108 msgid "Save to {}" msgstr "{} kaydedildi" -#: application/view/adv.py:101 +#: application/view/adv.py:104 msgid "evernote" msgstr "evernote" -#: application/view/adv.py:102 +#: application/view/adv.py:105 msgid "wiz" msgstr "wiz" -#: application/view/adv.py:103 +#: application/view/adv.py:106 msgid "pocket" msgstr "pocket" -#: application/view/adv.py:104 +#: application/view/adv.py:107 msgid "instapaper" msgstr "instapaper" -#: application/view/adv.py:105 +#: application/view/adv.py:108 msgid "wallabag" msgstr "wallabag" -#: application/view/adv.py:106 application/view/adv.py:107 -#: application/view/adv.py:108 application/view/adv.py:109 +#: application/view/adv.py:109 application/view/adv.py:110 +#: application/view/adv.py:111 application/view/adv.py:112 msgid "Share on {}" msgstr "{} üzerinde paylaş" -#: application/view/adv.py:106 +#: application/view/adv.py:109 msgid "weibo" msgstr "weibo" -#: application/view/adv.py:107 +#: application/view/adv.py:110 msgid "facebook" msgstr "facebook" -#: application/view/adv.py:109 +#: application/view/adv.py:112 msgid "tumblr" msgstr "tumblr" -#: application/view/adv.py:110 +#: application/view/adv.py:113 msgid "Open in browser" msgstr "Tarayıcıda aç" -#: application/view/adv.py:111 +#: application/view/adv.py:114 msgid "Append qrcode of url to article" msgstr "Makaleye URL'nin QR kodunu ekle" -#: application/view/adv.py:375 application/view/share.py:54 +#: application/view/adv.py:378 application/view/share.py:54 #: application/view/subscribe.py:250 msgid "Unknown command: {}" msgstr "Bilinmeyen komut: {}" -#: application/view/adv.py:433 application/view/adv.py:485 +#: application/view/adv.py:436 application/view/adv.py:488 msgid "The format is invalid." msgstr "Format geçersiz." -#: application/view/adv.py:517 +#: application/view/adv.py:520 msgid "Authorization Error!
{}" msgstr "Yetkilendirme Hatası!
{}" -#: application/view/adv.py:538 +#: application/view/adv.py:541 msgid "Success authorized by Pocket!" msgstr "Pocket tarafından yetkilendirilen başarı!" -#: application/view/adv.py:544 +#: application/view/adv.py:547 msgid "" "Failed to request authorization of Pocket!
See details " "below:

{}" @@ -1858,13 +1862,13 @@ msgstr "" "Pocket yetkilendirme isteği başarısız oldu!
Aşağıdaki ayrıntılara " "bakın:

{}" -#: application/view/adv.py:565 +#: application/view/adv.py:568 msgid "The Instapaper service encountered an error. Please try again later." msgstr "" "Instapaper servisi bir hata ile karşılaştı. Lütfen daha sonra tekrar " "deneyin." -#: application/view/adv.py:578 +#: application/view/adv.py:581 msgid "Request type [{}] unsupported" msgstr "İstek türü [{}] desteklenmiyor" @@ -2271,4 +2275,3 @@ msgstr "Bu tarifin giriş bilgileri kaydedildi." msgid "The api key is required." msgstr "API anahtarı gereklidir." - diff --git a/application/translations/zh/LC_MESSAGES/messages.mo b/application/translations/zh/LC_MESSAGES/messages.mo index 1989e5a58235cf3a9d8370c859a4659e62085f60..721eebcf3226f83472a9709ed2e9d44592634689 100644 GIT binary patch delta 8071 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 TthBU}ZM}|1maKj9Qq=zdNKAWK diff --git a/application/translations/zh/LC_MESSAGES/messages.po b/application/translations/zh/LC_MESSAGES/messages.po index 2e80037a..41537521 100644 --- a/application/translations/zh/LC_MESSAGES/messages.po +++ b/application/translations/zh/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: KindleEar v3.0.0\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-11-21 10:11-0300\n" +"POT-Creation-Date: 2024-11-23 21:29-0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: zh\n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.14.0\n" -#: application/templates/admin.html:3 application/templates/base.html:182 +#: application/templates/admin.html:3 application/templates/base.html:183 #: application/templates/settings.html:252 msgid "Admin" msgstr "账号管理" @@ -253,31 +253,31 @@ msgid "Dictionary" msgstr "词典" #: application/templates/adv_base.html:75 -#: application/templates/adv_base.html:79 +#: application/templates/adv_base.html:83 +#: application/templates/adv_proxy.html:3 +#: application/templates/adv_proxy.html:12 +msgid "Proxy" +msgstr "代理服务器" + +#: application/templates/adv_base.html:92 +#: application/templates/adv_base.html:96 #: application/templates/adv_import.html:8 msgid "Import Feeds" msgstr "导入订阅列表" -#: application/templates/adv_base.html:84 -#: application/templates/adv_base.html:88 +#: application/templates/adv_base.html:101 +#: application/templates/adv_base.html:105 msgid "Cover Image" msgstr "封面图像" -#: application/templates/adv_base.html:93 -#: application/templates/adv_base.html:97 +#: application/templates/adv_base.html:110 +#: application/templates/adv_base.html:114 #: application/templates/adv_uploadcss.html:3 msgid "Stylesheet" msgstr "样式表" -#: application/templates/adv_base.html:102 -#: application/templates/adv_base.html:106 -#: application/templates/adv_proxy.html:3 -#: application/templates/adv_proxy.html:12 -msgid "Proxy" -msgstr "代理服务器" - -#: application/templates/adv_base.html:111 -#: application/templates/adv_base.html:115 +#: application/templates/adv_base.html:119 +#: application/templates/adv_base.html:123 #: application/templates/adv_calibre_options.html:12 msgid "Calibre Options" msgstr "Calibre配置" @@ -955,43 +955,47 @@ msgstr "此设置具有更高优先级。" msgid "Combine multiple values with commas." msgstr "使用逗号分隔多个数值。" -#: application/templates/base.html:155 application/templates/home.html:16 +#: application/templates/base.html:131 +msgid "Put dictionary in dict folder" +msgstr "将字典放入 dict 目录" + +#: application/templates/base.html:156 application/templates/home.html:16 msgid "Logout" msgstr "退出" -#: application/templates/base.html:157 application/templates/home.html:21 +#: application/templates/base.html:158 application/templates/home.html:21 #: application/templates/login.html:3 application/templates/login.html:22 #: application/templates/login.html:33 msgid "Login" msgstr "登录" -#: application/templates/base.html:159 application/templates/signup.html:3 +#: application/templates/base.html:160 application/templates/signup.html:3 #: application/templates/signup.html:19 application/templates/signup.html:43 msgid "Signup" msgstr "注册" -#: application/templates/base.html:179 application/templates/home.html:15 +#: application/templates/base.html:180 application/templates/home.html:15 #: application/templates/my.html:3 msgid "Feeds" msgstr "我的订阅" -#: application/templates/base.html:180 application/templates/settings.html:3 +#: application/templates/base.html:181 application/templates/settings.html:3 msgid "Settings" msgstr "设置" -#: application/templates/base.html:181 application/templates/logs.html:3 +#: application/templates/base.html:182 application/templates/logs.html:3 msgid "Logs" msgstr "投递日志" -#: application/templates/base.html:183 +#: application/templates/base.html:184 msgid "Advanced" msgstr "高级设置" -#: application/templates/base.html:184 application/templates/library.html:3 +#: application/templates/base.html:185 application/templates/library.html:3 msgid "Shared" msgstr "网友分享" -#: application/templates/base.html:185 application/templates/reader.html:6 +#: application/templates/base.html:186 application/templates/reader.html:6 msgid "Reader" msgstr "在线阅读" @@ -1687,8 +1691,8 @@ msgstr "作为附件转发" msgid "Word" msgstr "单词" -#: application/view/admin.py:48 application/view/adv.py:431 -#: application/view/adv.py:483 application/view/settings.py:66 +#: application/view/admin.py:48 application/view/adv.py:434 +#: application/view/adv.py:486 application/view/settings.py:66 #: application/view/translator.py:87 application/view/translator.py:171 #: application/view/translator.py:253 msgid "Settings Saved!" @@ -1743,93 +1747,93 @@ msgstr "原密码错误。" msgid "Changes saved successfully." msgstr "账号设置已更新。" -#: application/view/adv.py:101 application/view/adv.py:102 -#: application/view/adv.py:103 application/view/adv.py:104 -#: application/view/adv.py:105 application/view/adv.py:106 -#: application/view/adv.py:107 application/view/adv.py:108 -#: application/view/adv.py:109 application/view/adv.py:110 +#: application/view/adv.py:104 application/view/adv.py:105 +#: application/view/adv.py:106 application/view/adv.py:107 +#: application/view/adv.py:108 application/view/adv.py:109 +#: application/view/adv.py:110 application/view/adv.py:111 +#: application/view/adv.py:112 application/view/adv.py:113 msgid "Append hyperlink '{}' to article" msgstr "在每篇文章后附加 '{}' 超链接" -#: application/view/adv.py:101 application/view/adv.py:102 -#: application/view/adv.py:103 application/view/adv.py:104 -#: application/view/adv.py:105 +#: application/view/adv.py:104 application/view/adv.py:105 +#: application/view/adv.py:106 application/view/adv.py:107 +#: application/view/adv.py:108 msgid "Save to {}" msgstr "保存到 {}" -#: application/view/adv.py:101 +#: application/view/adv.py:104 msgid "evernote" msgstr "evernote" -#: application/view/adv.py:102 +#: application/view/adv.py:105 msgid "wiz" msgstr "为知笔记" -#: application/view/adv.py:103 +#: application/view/adv.py:106 msgid "pocket" msgstr "pocket" -#: application/view/adv.py:104 +#: application/view/adv.py:107 msgid "instapaper" msgstr "instapaper" -#: application/view/adv.py:105 +#: application/view/adv.py:108 msgid "wallabag" msgstr "wallabag" -#: application/view/adv.py:106 application/view/adv.py:107 -#: application/view/adv.py:108 application/view/adv.py:109 +#: application/view/adv.py:109 application/view/adv.py:110 +#: application/view/adv.py:111 application/view/adv.py:112 msgid "Share on {}" msgstr "分享到 {}" -#: application/view/adv.py:106 +#: application/view/adv.py:109 msgid "weibo" msgstr "微博" -#: application/view/adv.py:107 +#: application/view/adv.py:110 msgid "facebook" msgstr "facebook" -#: application/view/adv.py:109 +#: application/view/adv.py:112 msgid "tumblr" msgstr "tumblr" -#: application/view/adv.py:110 +#: application/view/adv.py:113 msgid "Open in browser" msgstr "在浏览器打开" -#: application/view/adv.py:111 +#: application/view/adv.py:114 msgid "Append qrcode of url to article" msgstr "在每篇文章后附加文章链接的二维码" -#: application/view/adv.py:375 application/view/share.py:54 +#: application/view/adv.py:378 application/view/share.py:54 #: application/view/subscribe.py:250 msgid "Unknown command: {}" msgstr "未知命令:{}" -#: application/view/adv.py:433 application/view/adv.py:485 +#: application/view/adv.py:436 application/view/adv.py:488 msgid "The format is invalid." msgstr "格式非法。" -#: application/view/adv.py:517 +#: application/view/adv.py:520 msgid "Authorization Error!
{}" msgstr "申请授权过程失败!
{}" -#: application/view/adv.py:538 +#: application/view/adv.py:541 msgid "Success authorized by Pocket!" msgstr "已经成功获得Pocket的授权!" -#: application/view/adv.py:544 +#: application/view/adv.py:547 msgid "" "Failed to request authorization of Pocket!
See details " "below:

{}" msgstr "申请Pocket授权失败!
错误信息参考如下:

{}" -#: application/view/adv.py:565 +#: application/view/adv.py:568 msgid "The Instapaper service encountered an error. Please try again later." msgstr "Instapaper服务器异常,请稍候再试。" -#: application/view/adv.py:578 +#: application/view/adv.py:581 msgid "Request type [{}] unsupported" msgstr "不支持你请求的命令类型 [{}]" @@ -2225,3 +2229,4 @@ msgstr "此Recipe的网站登录信息已经保存。" #: application/view/translator.py:81 application/view/translator.py:164 msgid "The api key is required." msgstr "需要填写api key." +