From 9283bdb2d94ed89c1717e45938d4a0e4afb938d3 Mon Sep 17 00:00:00 2001
From: symegac <97731141+symegac@users.noreply.github.com>
Date: Sat, 13 Jan 2024 23:36:35 +0000
Subject: [PATCH 001/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
libretranslate/locales/da/LC_MESSAGES/messages.po | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 22bae75..890f690 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-11-18 05:03+0000\n"
+"PO-Revision-Date: 2024-01-15 00:06+0000\n"
"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n"
"Language-Team: Danish \n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.2\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -34,6 +34,7 @@ msgid "Unauthorized"
msgstr "Uautoriseret"
#: libretranslate/app.py:250
+#, fuzzy
msgid "Too many request limits violations"
msgstr "For mange anmodninger begrænser overtrædelser"
From 3edc1883ed65049c0ae20a16c37b7d54b129282d Mon Sep 17 00:00:00 2001
From: dtalens
Date: Sat, 20 Jan 2024 01:14:34 +0100
Subject: [PATCH 002/332] Added translation using Weblate (Catalan)
---
.../locales/ca/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/ca/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/ca/LC_MESSAGES/messages.po b/libretranslate/locales/ca/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..3f94d41
--- /dev/null
+++ b/libretranslate/locales/ca/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ca\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 0b139b9dacdf85fd638b2b47f3f816654bf428b1 Mon Sep 17 00:00:00 2001
From: dtalens
Date: Sat, 20 Jan 2024 00:15:35 +0000
Subject: [PATCH 003/332] Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
---
.../locales/ca/LC_MESSAGES/messages.po | 23 +++++++++++--------
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/libretranslate/locales/ca/LC_MESSAGES/messages.po b/libretranslate/locales/ca/LC_MESSAGES/messages.po
index 3f94d41..550afdd 100644
--- a/libretranslate/locales/ca/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ca/LC_MESSAGES/messages.po
@@ -9,43 +9,48 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-01-21 01:01+0000\n"
+"Last-Translator: dtalens \n"
+"Language-Team: Catalan \n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Format JSON invàlid"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "Detecció automàtica"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "No autoritzat"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "Massa violacions de límits de la sol·licitud"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Clau API invàlida"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
msgstr ""
+"Si us plau, contacta amb l'administrador del servidor per demanar una clau "
+"API"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "Visita %(url)s per demanar una clau API"
#: libretranslate/app.py:318
msgid "Slowdown:"
From 2b11e909d3e62ed69e56bc7a7fe6d63f63480041 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Sun, 21 Jan 2024 12:48:42 -0500
Subject: [PATCH 004/332] Granular API key char limit support
---
README.md | 8 ++++++-
VERSION | 2 +-
libretranslate/api_keys.py | 46 +++++++++++++++++++++++---------------
libretranslate/app.py | 34 +++++++++++++++++++++-------
libretranslate/manage.py | 5 ++++-
5 files changed, 66 insertions(+), 29 deletions(-)
diff --git a/README.md b/README.md
index ba438f5..85de97b 100644
--- a/README.md
+++ b/README.md
@@ -247,7 +247,7 @@ helm install libretranslate libretranslate/libretranslate --namespace libretrans
## Manage API Keys
-LibreTranslate supports per-user limit quotas, e.g. you can issue API keys to users so that they can enjoy higher requests limits per minute (if you also set `--req-limit`). By default all users are rate-limited based on `--req-limit`, but passing an optional `api_key` parameter to the REST endpoints allows a user to enjoy higher request limits.
+LibreTranslate supports per-user limit quotas, e.g. you can issue API keys to users so that they can enjoy higher requests limits per minute (if you also set `--req-limit`). By default all users are rate-limited based on `--req-limit`, but passing an optional `api_key` parameter to the REST endpoints allows a user to enjoy higher request limits. You can also specify different character limits that bypass the default `--char-limit` value on a per-key basis.
To use API keys simply start LibreTranslate with the `--api-keys` option. If you modified the API keys database path with the option `--api-keys-db-path`, you must specify the path with the same argument flag when using the `ltmanage keys` command.
@@ -259,6 +259,12 @@ To issue a new API key with 120 requests per minute limits:
ltmanage keys add 120
```
+To issue a new API key with 120 requests per minute and a maximum of 5,000 characters per request:
+
+```bash
+ltmanage keys add 120 --char-limit 5000
+```
+
If you changed the API keys database path:
```bash
diff --git a/VERSION b/VERSION
index 94fe62c..9075be4 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.5.4
+1.5.5
diff --git a/libretranslate/api_keys.py b/libretranslate/api_keys.py
index ea9e603..f00e785 100644
--- a/libretranslate/api_keys.py
+++ b/libretranslate/api_keys.py
@@ -32,41 +32,49 @@ class Database:
"""CREATE TABLE IF NOT EXISTS api_keys (
"api_key" TEXT NOT NULL,
"req_limit" INTEGER NOT NULL,
+ "char_limit" INTEGER DEFAULT NULL,
PRIMARY KEY("api_key")
);"""
)
+ # Schema/upgrade checks
+ schema = self.c.execute("SELECT sql FROM sqlite_master WHERE type='table' AND name='api_keys';").fetchone()[0]
+ if '"char_limit" INTEGER DEFAULT NULL' not in schema:
+ self.c.execute('ALTER TABLE api_keys ADD COLUMN "char_limit" INTEGER DEFAULT NULL;')
+
def lookup(self, api_key):
- req_limit = self.cache.get(api_key)
- if req_limit is None:
+ val = self.cache.get(api_key)
+ if val is None:
# DB Lookup
stmt = self.c.execute(
- "SELECT req_limit FROM api_keys WHERE api_key = ?", (api_key,)
+ "SELECT req_limit, char_limit FROM api_keys WHERE api_key = ?", (api_key,)
)
row = stmt.fetchone()
if row is not None:
- self.cache[api_key] = row[0]
- req_limit = row[0]
+ self.cache[api_key] = row
+ val = row
else:
self.cache[api_key] = False
- req_limit = False
+ val = False
- if isinstance(req_limit, bool):
- req_limit = None
+ if isinstance(val, bool):
+ val = None
- return req_limit
+ return val
- def add(self, req_limit, api_key="auto"):
+ def add(self, req_limit, api_key="auto", char_limit=None):
if api_key == "auto":
api_key = str(uuid.uuid4())
+ if char_limit == 0:
+ char_limit = None
self.remove(api_key)
self.c.execute(
- "INSERT INTO api_keys (api_key, req_limit) VALUES (?, ?)",
- (api_key, req_limit),
+ "INSERT INTO api_keys (api_key, req_limit, char_limit) VALUES (?, ?, ?)",
+ (api_key, req_limit, char_limit),
)
self.c.commit()
- return (api_key, req_limit)
+ return (api_key, req_limit, char_limit)
def remove(self, api_key):
self.c.execute("DELETE FROM api_keys WHERE api_key = ?", (api_key,))
@@ -74,7 +82,7 @@ class Database:
return api_key
def all(self):
- row = self.c.execute("SELECT api_key, req_limit FROM api_keys")
+ row = self.c.execute("SELECT api_key, req_limit, char_limit FROM api_keys")
return row.fetchall()
@@ -84,8 +92,8 @@ class RemoteDatabase:
self.cache = ExpiringDict(max_len=max_cache_len, max_age_seconds=max_cache_age)
def lookup(self, api_key):
- req_limit = self.cache.get(api_key)
- if req_limit is None:
+ val = self.cache.get(api_key)
+ if val is None:
try:
r = requests.post(self.url, data={'api_key': api_key}, timeout=60)
res = r.json()
@@ -94,6 +102,8 @@ class RemoteDatabase:
return None
req_limit = res.get('req_limit', None) if res.get('error', None) is None else None
- self.cache[api_key] = req_limit
+ char_limit = res.get('char_limit', None) if res.get('error', None) is None else None
- return req_limit
+ self.cache[api_key] = (req_limit, char_limit)
+
+ return val
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 78994b5..17f15c5 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -96,13 +96,28 @@ def get_req_limits(default_limit, api_keys_db, db_multiplier=1, multiplier=1):
api_key = get_req_api_key()
if api_key:
- db_req_limit = api_keys_db.lookup(api_key)
- if db_req_limit is not None:
- req_limit = db_req_limit * db_multiplier
+ api_key_limits = api_keys_db.lookup(api_key)
+ if api_key_limits is not None:
+ req_limit = api_key_limits[0] * db_multiplier
return int(req_limit * multiplier)
+def get_char_limit(default_limit, api_keys_db):
+ char_limit = default_limit
+
+ if api_keys_db:
+ api_key = get_req_api_key()
+
+ if api_key:
+ api_key_limits = api_keys_db.lookup(api_key)
+ if api_key_limits is not None:
+ if api_key_limits[1] is not None:
+ char_limit = api_key_limits[1]
+
+ return char_limit
+
+
def get_routes_limits(args, api_keys_db):
default_req_limit = args.req_limit
if default_req_limit == -1:
@@ -547,6 +562,8 @@ def create_app(args):
# https://www.rfc-editor.org/rfc/rfc2046#section-4.1.1
q = "\n".join(q.splitlines())
+ char_limit = get_char_limit(args.char_limit, api_keys_db)
+
batch = isinstance(q, list)
if batch and args.batch_limit != -1:
@@ -559,12 +576,12 @@ def create_app(args):
src_texts = q if batch else [q]
- if args.char_limit != -1:
+ if char_limit != -1:
for text in src_texts:
- if len(text) > args.char_limit:
+ if len(text) > char_limit:
abort(
400,
- description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=len(text), limit=args.char_limit),
+ description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=len(text), limit=char_limit),
)
if batch:
@@ -736,6 +753,7 @@ def create_app(args):
source_lang = request.form.get("source")
target_lang = request.form.get("target")
file = request.files['file']
+ char_limit = get_char_limit(args.char_limit, api_keys_db)
if not file:
abort(400, description=_("Invalid request: missing %(name)s parameter", name='file'))
@@ -771,8 +789,8 @@ def create_app(args):
# set the cost of the request to N = bytes / char_limit, which is
# roughly equivalent to a batch process of N batches assuming
# each batch uses all available limits
- if args.char_limit > 0:
- request.req_cost = max(1, int(os.path.getsize(filepath) / args.char_limit))
+ if char_limit > 0:
+ request.req_cost = max(1, int(os.path.getsize(filepath) / char_limit))
translated_file_path = argostranslatefiles.translate_file(src_lang.get_translation(tgt_lang), filepath)
translated_filename = os.path.basename(translated_file_path)
diff --git a/libretranslate/manage.py b/libretranslate/manage.py
index d296388..5ba8fd4 100644
--- a/libretranslate/manage.py
+++ b/libretranslate/manage.py
@@ -29,6 +29,9 @@ def manage():
keys_add_parser.add_argument(
"--key", type=str, default="auto", required=False, help="API Key"
)
+ keys_add_parser.add_argument(
+ "--char-limit", type=int, default=0, required=False, help="Character limit"
+ )
keys_remove_parser = keys_subparser.add_parser(
"remove", help="Remove API keys to database"
@@ -52,7 +55,7 @@ def manage():
print("{}: {}".format(*item))
elif args.sub_command == "add":
- print(db.add(args.req_limit, args.key)[0])
+ print(db.add(args.req_limit, args.key, args.char_limit)[0])
elif args.sub_command == "remove":
print(db.remove(args.key))
else:
From fa24655404392a46e36af634c4fd85c35c6810b5 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Sun, 21 Jan 2024 13:17:07 -0500
Subject: [PATCH 005/332] Fix remote API key database lookup
---
libretranslate/api_keys.py | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/libretranslate/api_keys.py b/libretranslate/api_keys.py
index f00e785..e56ca83 100644
--- a/libretranslate/api_keys.py
+++ b/libretranslate/api_keys.py
@@ -101,8 +101,11 @@ class RemoteDatabase:
print("Cannot authenticate API key: " + str(e))
return None
- req_limit = res.get('req_limit', None) if res.get('error', None) is None else None
- char_limit = res.get('char_limit', None) if res.get('error', None) is None else None
+ if res.get('error') is not None:
+ return None
+
+ req_limit = res.get('req_limit', None)
+ char_limit = res.get('char_limit', None)
self.cache[api_key] = (req_limit, char_limit)
From cf2216f44126c887840054eb157ad42e7b124655 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michal=20=C4=8Ciha=C5=99?=
Date: Mon, 22 Jan 2024 13:28:58 +0000
Subject: [PATCH 006/332] Translated using Weblate (Czech)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/cs/
---
libretranslate/locales/cs/LC_MESSAGES/messages.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libretranslate/locales/cs/LC_MESSAGES/messages.po b/libretranslate/locales/cs/LC_MESSAGES/messages.po
index d942624..453ae19 100644
--- a/libretranslate/locales/cs/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/cs/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-01-10 18:14+0000\n"
+"PO-Revision-Date: 2024-01-23 14:01+0000\n"
"Last-Translator: Michal Čihař \n"
"Language-Team: Czech \n"
@@ -395,7 +395,7 @@ msgstr "Podporované cílové jazykové kódy"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr "Přeložit text(y)"
+msgstr "Přeložený text(y)"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
@@ -495,7 +495,7 @@ msgstr "obraťte se na provozovatele serveru."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr "Zadaramo a Open Source API strojového překladu"
+msgstr "Zdarma a Open Source API strojového překladu"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
From a90814706a9db3f4d26fa0e2a4c88f55daf77a1a Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 23 Jan 2024 12:44:14 -0500
Subject: [PATCH 007/332] Update README.md
---
README.md | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/README.md b/README.md
index 85de97b..d0d5add 100644
--- a/README.md
+++ b/README.md
@@ -655,6 +655,14 @@ console.log(await res.json());
// }
```
+## Contributing
+
+We welcome contributions! Here's some ideas:
+
+* Train a new language model using [Locomotive](https://github.com/LibreTranslate/Locomotive). For example, [Estonian](https://community.libretranslate.com/t/help-wanted-estonian-model-for-argos-translate/875/2) and many others are still missing.
+* Can you beat the performance of our language models? Train a new one and let's compare it.
+* Pick an [issue](https://github.com/LibreTranslate/LibreTranslate/issues) to work on.
+
## Credits
This work is largely possible thanks to [Argos Translate](https://github.com/argosopentech/argos-translate), which powers the translation engine.
From 929002b0c679d667877de46764bd0caa9fa4efef Mon Sep 17 00:00:00 2001
From: Jean-Michel
Date: Wed, 24 Jan 2024 16:04:34 -0500
Subject: [PATCH 008/332] ltmanage in bin This allows using the api key
instructions from the readme as-is in the docker container.
---
docker-compose.yml | 15 ++++++++++++---
docker/Dockerfile | 2 ++
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/docker-compose.yml b/docker-compose.yml
index f68be5a..707d042 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -9,15 +9,24 @@ services:
restart: unless-stopped
ports:
- "5000:5000"
+ ## Uncomment this for logging in docker compose logs
+ # tty: true
healthcheck:
- test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py']
+ test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py']
## Uncomment above command and define your args if necessary
# command: --ssl --ga-id MY-GA-ID --req-limit 100 --char-limit 500
- ## Uncomment this section and the `volumes` section if you want to backup your API keys
+ ## Uncomment this section and the libretranslate_api_keys volume if you want to backup your API keys
# environment:
+ # - LT_API_KEYS=true
# - LT_API_KEYS_DB_PATH=/app/db/api_keys.db # Same result as `db/api_keys.db` or `./db/api_keys.db`
+ ## Uncomment these vars and libretranslate_models volume to optimize loading time.
+ # - LT_UPDATE_MODELS=true
+ # - LT_LOAD_ONLY=en,fr
# volumes:
- # - libretranslate_api_keys:/app/db/api_keys.db
+ # - libretranslate_api_keys:/app/db
+ # Keep the models in a docker volume, to avoid re-downloading on startup
+ # - libretranslate_models:/home/libretranslate/.local:rw
# volumes:
# libretranslate_api_keys:
+# libretranslate_models:
diff --git a/docker/Dockerfile b/docker/Dockerfile
index f34cd0f..985a43e 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -30,6 +30,8 @@ USER libretranslate
COPY --from=builder --chown=1032:1032 /app /app
WORKDIR /app
+COPY --from=builder --chown=1032:1032 /app/venv/bin/ltmanage /bin/
+
RUN if [ "$with_models" = "true" ]; then \
# initialize the language models
if [ ! -z "$models" ]; then \
From b3d68153230ae2adfa97750fdc7359313876f52d Mon Sep 17 00:00:00 2001
From: Jean-Michel
Date: Wed, 24 Jan 2024 16:36:18 -0500
Subject: [PATCH 009/332] moved ltmanage to /usr/bin
---
docker/Dockerfile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 985a43e..e883afd 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -30,7 +30,7 @@ USER libretranslate
COPY --from=builder --chown=1032:1032 /app /app
WORKDIR /app
-COPY --from=builder --chown=1032:1032 /app/venv/bin/ltmanage /bin/
+COPY --from=builder --chown=1032:1032 /app/venv/bin/ltmanage /usr/bin/
RUN if [ "$with_models" = "true" ]; then \
# initialize the language models
From 9a1934e45045010c3d067dba13f0243b7441ba06 Mon Sep 17 00:00:00 2001
From: victor dargallo
Date: Fri, 26 Jan 2024 08:29:56 +0000
Subject: [PATCH 010/332] Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
---
.../locales/ca/LC_MESSAGES/messages.po | 114 +++++++++---------
1 file changed, 59 insertions(+), 55 deletions(-)
diff --git a/libretranslate/locales/ca/LC_MESSAGES/messages.po b/libretranslate/locales/ca/LC_MESSAGES/messages.po
index 550afdd..0736897 100644
--- a/libretranslate/locales/ca/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ca/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-01-21 01:01+0000\n"
-"Last-Translator: dtalens \n"
+"PO-Revision-Date: 2024-01-27 09:01+0000\n"
+"Last-Translator: victor dargallo \n"
"Language-Team: Catalan \n"
"Language: ca\n"
@@ -64,23 +64,25 @@ msgstr ""
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Sol·licitud no vàlida: falta el paràmetre %(name)s"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
+"Sol·licitud no vàlida: la sol·licitud (%(size)s) supera el límit de text "
+"(%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "El %(lang)s no és compatible"
#: libretranslate/app.py:594
#, python-format
msgid "%(format)s format is not supported"
-msgstr ""
+msgstr "El format %(format)s no està implementat"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -88,179 +90,181 @@ msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
+"%(tname)s (%(tcode)s) no està disponible com a llengua de destí des de "
+"%(sname)s (%(scode)s)"
#: libretranslate/app.py:647
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr ""
+msgstr "No es pot traduir el text: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr ""
+msgstr "La traducció de fitxers està deshabilitada en aquest servidor."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
-msgstr ""
+msgstr "Sol·licitud no vàlida: fitxer buit"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
-msgstr ""
+msgstr "Sol·licitud no vàlida: el format del fitxer no està implementat"
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr ""
+msgstr "Nom de fitxer no vàlid"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
-msgstr ""
+msgstr "Els suggeriments estan deshabilitats en aquest servidor."
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr ""
+msgstr "anglès"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
-msgstr ""
+msgstr "àrab"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
-msgstr ""
+msgstr "àzeri"
#: libretranslate/locales/.langs.py:4
msgid "Chinese"
-msgstr ""
+msgstr "xinès"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr ""
+msgstr "txec"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
-msgstr ""
+msgstr "danès"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr ""
+msgstr "holandès"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr ""
+msgstr "esperanto"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
-msgstr ""
+msgstr "finès"
#: libretranslate/locales/.langs.py:10
msgid "French"
-msgstr ""
+msgstr "francès"
#: libretranslate/locales/.langs.py:11
msgid "German"
-msgstr ""
+msgstr "alemany"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
-msgstr ""
+msgstr "grec"
#: libretranslate/locales/.langs.py:13
msgid "Hebrew"
-msgstr ""
+msgstr "hebreu"
#: libretranslate/locales/.langs.py:14
msgid "Hindi"
-msgstr ""
+msgstr "hindi"
#: libretranslate/locales/.langs.py:15
msgid "Hungarian"
-msgstr ""
+msgstr "hongarès"
#: libretranslate/locales/.langs.py:16
msgid "Indonesian"
-msgstr ""
+msgstr "indonesi"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr ""
+msgstr "irlandès"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
-msgstr ""
+msgstr "italià"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr ""
+msgstr "japonès"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
-msgstr ""
+msgstr "coreà"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr ""
+msgstr "persa"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
-msgstr ""
+msgstr "polonès"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
-msgstr ""
+msgstr "portuguès"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
-msgstr ""
+msgstr "rus"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr ""
+msgstr "eslovac"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
-msgstr ""
+msgstr "castellà"
#: libretranslate/locales/.langs.py:27
msgid "Swedish"
-msgstr ""
+msgstr "suec"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
-msgstr ""
+msgstr "turc"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
-msgstr ""
+msgstr "ucraïnès"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
-msgstr ""
+msgstr "vietnamita"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Recupera la llista d'idiomes compatibles"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Llista d'idiomes"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr ""
+msgstr "traduir"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr ""
+msgstr "Traduir text d'un idioma a un altre"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
-msgstr ""
+msgstr "Text traduït"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
-msgstr ""
+msgstr "Petició no vàlida"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
-msgstr ""
+msgstr "S'ha produït un error de traducció"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
@@ -268,31 +272,31 @@ msgstr ""
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr ""
+msgstr "Prohibit"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr ""
+msgstr "Hola món!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr ""
+msgstr "Text(s) a traduir"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr ""
+msgstr "Codi de l'idioma font"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
-msgstr ""
+msgstr "Codi de l'idioma objectiu"
#: libretranslate/locales/.swag.py:14
msgid "text"
-msgstr ""
+msgstr "text"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr ""
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
From 6228706d5b80f2fdcf2871f4aa03836cd24e0002 Mon Sep 17 00:00:00 2001
From: r5jyhte
Date: Tue, 30 Jan 2024 15:22:26 +0000
Subject: [PATCH 011/332] Translated using Weblate (Polish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pl/
---
.../locales/pl/LC_MESSAGES/messages.po | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/libretranslate/locales/pl/LC_MESSAGES/messages.po b/libretranslate/locales/pl/LC_MESSAGES/messages.po
index 47dbff7..5b95466 100644
--- a/libretranslate/locales/pl/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/pl/LC_MESSAGES/messages.po
@@ -9,14 +9,17 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-09-01 11:56+0000\n"
-"Last-Translator: Wojtek Jurkowlaniec \n"
-"Language-Team: Polish \n"
+"PO-Revision-Date: 2024-01-30 16:01+0000\n"
+"Last-Translator: r5jyhte \n"
+"Language-Team: Polish \n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -541,7 +544,7 @@ msgstr "Edyta"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr "Toggle dark/light mode"
+msgstr "Przełącz tryb ciemny/jasny"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
@@ -601,16 +604,16 @@ msgstr "File"
#: libretranslate/templates/index.html:268
msgid "Remove file"
-msgstr "Remove plik"
+msgstr "Usuń plik"
#: libretranslate/templates/index.html:275
msgid "Translate"
-msgstr "Translat"
+msgstr "Tłumacz"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
msgid "Download"
-msgstr "Download"
+msgstr "Pobierz"
#: libretranslate/templates/index.html:295
msgid "Request"
From 349284d6c28accd5e9efad38e29428c1813b1f66 Mon Sep 17 00:00:00 2001
From: Yanjun Chen
Date: Mon, 29 Jan 2024 15:02:35 +0000
Subject: [PATCH 012/332] Translated using Weblate (Chinese (Simplified))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
---
.../locales/zh/LC_MESSAGES/messages.po | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/libretranslate/locales/zh/LC_MESSAGES/messages.po b/libretranslate/locales/zh/LC_MESSAGES/messages.po
index d87fa27..f6ed782 100644
--- a/libretranslate/locales/zh/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/zh/LC_MESSAGES/messages.po
@@ -9,19 +9,21 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-02-02 18:50+0000\n"
-"Last-Translator: Poesty Li \n"
-"Language-Team: Chinese (Simplified) \n"
+"PO-Revision-Date: 2024-01-30 16:01+0000\n"
+"Last-Translator: Yanjun Chen \n"
+"Language-Team: Chinese (Simplified) \n"
"Language: zh\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr "无效的JSON格式"
+msgstr "无效的 JSON 格式"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
@@ -37,16 +39,16 @@ msgstr "请求次数过多超过限制"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr "无效的API密钥"
+msgstr "无效的 API 密钥"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "请联系服务器管理员以获取API密钥"
+msgstr "请联系服务器管理员以获取 API 密钥"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr "访问 %(url)s 以获取API密钥"
+msgstr "访问 %(url)s 以获取 API 密钥"
#: libretranslate/app.py:318
msgid "Slowdown:"
From 0c6fd67e40aec6b73e2082f86f3d75c9a2b4fd64 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Priit=20J=C3=B5er=C3=BC=C3=BCt?=
Date: Wed, 31 Jan 2024 00:40:59 +0100
Subject: [PATCH 013/332] Added translation using Weblate (Estonian)
---
.../locales/et/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/et/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/et/LC_MESSAGES/messages.po b/libretranslate/locales/et/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..9b04f03
--- /dev/null
+++ b/libretranslate/locales/et/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: et\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 611c548db53d14782f4527227d97f4b09283aed4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Priit=20J=C3=B5er=C3=BC=C3=BCt?=
Date: Tue, 30 Jan 2024 23:42:12 +0000
Subject: [PATCH 014/332] Translated using Weblate (Estonian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/et/
---
.../locales/et/LC_MESSAGES/messages.po | 181 +++++++++---------
1 file changed, 92 insertions(+), 89 deletions(-)
diff --git a/libretranslate/locales/et/LC_MESSAGES/messages.po b/libretranslate/locales/et/LC_MESSAGES/messages.po
index 9b04f03..52ac7a1 100644
--- a/libretranslate/locales/et/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/et/LC_MESSAGES/messages.po
@@ -9,26 +9,29 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-01-31 16:22+0000\n"
+"Last-Translator: Priit Jõerüüt \n"
+"Language-Team: Estonian \n"
"Language: et\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Vigane JSON-vorming"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "Tuvasta keel automaatselt"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "Pole lubatud"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
@@ -36,16 +39,16 @@ msgstr ""
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Vigane API võti"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr ""
+msgstr "Palun küsi serveri haldajalt API võtit"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "API võtme saamiseks palun vaata seda urli - %(url)s"
#: libretranslate/app.py:318
msgid "Slowdown:"
@@ -111,131 +114,131 @@ msgstr ""
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr ""
+msgstr "inglise"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
-msgstr ""
+msgstr "araabia"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
-msgstr ""
+msgstr "aserbaidžaani"
#: libretranslate/locales/.langs.py:4
msgid "Chinese"
-msgstr ""
+msgstr "hiina"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr ""
+msgstr "tšehhi"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
-msgstr ""
+msgstr "taani"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr ""
+msgstr "hollandi"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr ""
+msgstr "esperanto"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
-msgstr ""
+msgstr "soome"
#: libretranslate/locales/.langs.py:10
msgid "French"
-msgstr ""
+msgstr "prantsuse"
#: libretranslate/locales/.langs.py:11
msgid "German"
-msgstr ""
+msgstr "saksa"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
-msgstr ""
+msgstr "kreeka"
#: libretranslate/locales/.langs.py:13
msgid "Hebrew"
-msgstr ""
+msgstr "heebrea"
#: libretranslate/locales/.langs.py:14
msgid "Hindi"
-msgstr ""
+msgstr "hindi"
#: libretranslate/locales/.langs.py:15
msgid "Hungarian"
-msgstr ""
+msgstr "ungari"
#: libretranslate/locales/.langs.py:16
msgid "Indonesian"
-msgstr ""
+msgstr "indoneesia"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr ""
+msgstr "iiri"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
-msgstr ""
+msgstr "itaalia"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr ""
+msgstr "jaapani"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
-msgstr ""
+msgstr "korea"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr ""
+msgstr "pärsia"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
-msgstr ""
+msgstr "poola"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
-msgstr ""
+msgstr "portugali"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
-msgstr ""
+msgstr "vene"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr ""
+msgstr "slovaki"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
-msgstr ""
+msgstr "hispaania"
#: libretranslate/locales/.langs.py:27
msgid "Swedish"
-msgstr ""
+msgstr "rootsi"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
-msgstr ""
+msgstr "türgi"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
-msgstr ""
+msgstr "ukraina"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
-msgstr ""
+msgstr "vietnami"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Laadi kasutatavate keelte loend"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Keelte loend"
#: libretranslate/locales/.swag.py:3
msgid "translate"
@@ -251,11 +254,11 @@ msgstr ""
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
-msgstr ""
+msgstr "Vigane päring"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
-msgstr ""
+msgstr "Tõlkeviga"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
@@ -263,31 +266,31 @@ msgstr ""
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr ""
+msgstr "Keelatud"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr ""
+msgstr "Tere maailm!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr ""
+msgstr "Tõlgitav tekst"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr ""
+msgstr "Lähtekeele kood"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
-msgstr ""
+msgstr "Tõlkekeele kood"
#: libretranslate/locales/.swag.py:14
msgid "text"
-msgstr ""
+msgstr "tekst"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr ""
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -298,11 +301,11 @@ msgstr ""
#: libretranslate/locales/.swag.py:17
msgid "API key"
-msgstr ""
+msgstr "API võti"
#: libretranslate/locales/.swag.py:18
msgid "Translate file from a language to another"
-msgstr ""
+msgstr "Tõlgi fail ühest keelest teise"
#: libretranslate/locales/.swag.py:19
msgid "Translated file"
@@ -310,19 +313,19 @@ msgstr ""
#: libretranslate/locales/.swag.py:20
msgid "File to translate"
-msgstr ""
+msgstr "Tõlgitav fail"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr ""
+msgstr "Tuvasta ühe teksti keel"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
-msgstr ""
+msgstr "Tuvastamise tulemused"
#: libretranslate/locales/.swag.py:23
msgid "Detection error"
-msgstr ""
+msgstr "Viga tuvastamisel"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
@@ -436,7 +439,7 @@ msgstr ""
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr ""
+msgstr "Kopeeri tekst"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -458,7 +461,7 @@ msgstr ""
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr ""
+msgstr "Kopeeritud"
#: libretranslate/templates/app.js.template:331
msgid ""
@@ -486,7 +489,7 @@ msgstr ""
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr ""
+msgstr "Vaba ja avatud lähtekoodiga masintõlke API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -497,39 +500,39 @@ msgstr ""
#: libretranslate/templates/index.html:11
msgid "translation"
-msgstr ""
+msgstr "tõlge"
#: libretranslate/templates/index.html:11
msgid "api"
-msgstr ""
+msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
-msgstr ""
+msgstr "API kirjeldus"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
-msgstr ""
+msgstr "Osta API võti"
#: libretranslate/templates/index.html:69
msgid "GitHub"
-msgstr ""
+msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
-msgstr ""
+msgstr "Lisa API võti"
#: libretranslate/templates/index.html:73
msgid "Change language"
-msgstr ""
+msgstr "Vaheta keelt"
#: libretranslate/templates/index.html:79
msgid "Edit"
-msgstr ""
+msgstr "Muuda"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr ""
+msgstr "Vaheta kujundust: tume/hele"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
@@ -537,80 +540,80 @@ msgstr ""
#: libretranslate/templates/index.html:171
msgid "Translation API"
-msgstr ""
+msgstr "TõlkeAPI"
#: libretranslate/templates/index.html:175
msgid "Translate Text"
-msgstr ""
+msgstr "Tõlgi teksti"
#: libretranslate/templates/index.html:179
msgid "Translate Files"
-msgstr ""
+msgstr "Tõlgi faile"
#: libretranslate/templates/index.html:185
msgid "Translate from"
-msgstr ""
+msgstr "Lähtekeel"
#: libretranslate/templates/index.html:195
msgid "Swap source and target languages"
-msgstr ""
+msgstr "Vaheta lähte- ja tõlkekeeled"
#: libretranslate/templates/index.html:198
msgid "Translate into"
-msgstr ""
+msgstr "Tõlkekeel"
#: libretranslate/templates/index.html:210
msgid "Text to translate"
-msgstr ""
+msgstr "Tõlgitav tekst"
#: libretranslate/templates/index.html:213
msgid "Delete text"
-msgstr ""
+msgstr "Kustuta tekst"
#: libretranslate/templates/index.html:226
msgid "Suggest translation"
-msgstr ""
+msgstr "Soovita paremat tõlget"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr ""
+msgstr "Katkesta"
#: libretranslate/templates/index.html:233
msgid "Send"
-msgstr ""
+msgstr "Saada"
#: libretranslate/templates/index.html:249
msgid "Supported file formats:"
-msgstr ""
+msgstr "Kasutatavad failivormingud:"
#: libretranslate/templates/index.html:253
msgid "File"
-msgstr ""
+msgstr "Fail"
#: libretranslate/templates/index.html:268
msgid "Remove file"
-msgstr ""
+msgstr "Eemalda fail"
#: libretranslate/templates/index.html:275
msgid "Translate"
-msgstr ""
+msgstr "Tõlgi"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
msgid "Download"
-msgstr ""
+msgstr "Laadi alla"
#: libretranslate/templates/index.html:295
msgid "Request"
-msgstr ""
+msgstr "Päring"
#: libretranslate/templates/index.html:300
msgid "Response"
-msgstr ""
+msgstr "Vastus"
#: libretranslate/templates/index.html:315
msgid "Open Source Machine Translation API"
-msgstr ""
+msgstr "Avatud lähtekoodiga masintõlke API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
@@ -618,11 +621,11 @@ msgstr ""
#: libretranslate/templates/index.html:335
msgid "LibreTranslate"
-msgstr ""
+msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
msgid "License:"
-msgstr ""
+msgstr "Litsents:"
#: libretranslate/templates/index.html:340
#, python-format
From 4419d5ec755c06be89c49a1d4eed2ad8b3318cdc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Priit=20J=C3=B5er=C3=BC=C3=BCt?=
Date: Wed, 31 Jan 2024 17:21:58 +0000
Subject: [PATCH 015/332] Translated using Weblate (Estonian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/et/
---
.../locales/et/LC_MESSAGES/messages.po | 125 ++++++++++--------
1 file changed, 73 insertions(+), 52 deletions(-)
diff --git a/libretranslate/locales/et/LC_MESSAGES/messages.po b/libretranslate/locales/et/LC_MESSAGES/messages.po
index 52ac7a1..a0ab8a8 100644
--- a/libretranslate/locales/et/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/et/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-01-31 16:22+0000\n"
+"PO-Revision-Date: 2024-02-01 18:01+0000\n"
"Last-Translator: Priit Jõerüüt \n"
"Language-Team: Estonian \n"
@@ -35,7 +35,7 @@ msgstr "Pole lubatud"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "Liiga palju päringuid ühes ajaühikus"
#: libretranslate/app.py:257
msgid "Invalid API key"
@@ -52,7 +52,7 @@ msgstr "API võtme saamiseks palun vaata seda urli - %(url)s"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr ""
+msgstr "Võtame nüüd tempot alla:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -62,23 +62,25 @@ msgstr ""
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Vigane päring: puuduv parameeter „%(name)s“"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
+"Vigane päring: päringu (%(size)s) suurus ületab tekstipäringutele lubatud "
+"ülempiiri (%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "%(lang)s keel ei ole veel tõlgitav"
#: libretranslate/app.py:594
#, python-format
msgid "%(format)s format is not supported"
-msgstr ""
+msgstr "%(format)s vorming ei ole veel toetatud"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -86,31 +88,33 @@ msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
+"%(tname)s keel (%(tcode)s) ei ole veel kasutatav sihtkeelena kui lähtekeel "
+"on %(sname)s keel (%(scode)s)"
#: libretranslate/app.py:647
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr ""
+msgstr "Teksti tõlkimine ei õnnestu: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr ""
+msgstr "Failide tõlkimine ei ole selles serveris lubatud."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
-msgstr ""
+msgstr "Vigane päring: tühi fail"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
-msgstr ""
+msgstr "Vigane päring: failivorming pole toetatud"
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr ""
+msgstr "Vigane failinimi"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
-msgstr ""
+msgstr "Tõlkesoovituste võimalus ei ole selles serveris kasutusel."
#: libretranslate/locales/.langs.py:1
msgid "English"
@@ -242,15 +246,15 @@ msgstr "Keelte loend"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr ""
+msgstr "tõlkimine"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr ""
+msgstr "Tõlgi tekst ühest keelest teise"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
-msgstr ""
+msgstr "Tõlgitud tekst"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
@@ -262,7 +266,7 @@ msgstr "Tõlkeviga"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr ""
+msgstr "Aeglustame päringuid"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
@@ -298,6 +302,9 @@ msgid ""
" * `text` - Plain text\n"
" * `html` - HTML markup\n"
msgstr ""
+"Lähteteksti vorming:\n"
+" * `text` - vormindamata tekst\n"
+" * `html` - HTML-vormingus tekst\n"
#: libretranslate/locales/.swag.py:17
msgid "API key"
@@ -309,7 +316,7 @@ msgstr "Tõlgi fail ühest keelest teise"
#: libretranslate/locales/.swag.py:19
msgid "Translated file"
-msgstr ""
+msgstr "Tõlgitud fail"
#: libretranslate/locales/.swag.py:20
msgid "File to translate"
@@ -329,111 +336,113 @@ msgstr "Viga tuvastamisel"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr ""
+msgstr "Tekst, kust peaksime keele tuvastama"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
-msgstr ""
+msgstr "Päring kasutajaliidese seadistuste vaatamiseks"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
-msgstr ""
+msgstr "kasutajaliidese seadistused"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr ""
+msgstr "kasutajaliides"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr ""
+msgstr "Võimalus ettepanekute saatmiseks tõlke parandamise nimel"
#: libretranslate/locales/.swag.py:29
msgid "Success"
-msgstr ""
+msgstr "Päring õnnestus"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
-msgstr ""
+msgstr "Päring pole lubatud"
#: libretranslate/locales/.swag.py:31
msgid "Original text"
-msgstr ""
+msgstr "Lähtetekst"
#: libretranslate/locales/.swag.py:32
msgid "Suggested translation"
-msgstr ""
+msgstr "Ettepanek tõlke parandamiseks"
#: libretranslate/locales/.swag.py:33
msgid "Language of original text"
-msgstr ""
+msgstr "Teksti lähtekeel"
#: libretranslate/locales/.swag.py:34
msgid "Language of suggested translation"
-msgstr ""
+msgstr "Teksti tõlkekeel"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
-msgstr ""
+msgstr "tagasiside"
#: libretranslate/locales/.swag.py:36
msgid "Language code"
-msgstr ""
+msgstr "Keelekood"
#: libretranslate/locales/.swag.py:37
msgid "Human-readable language name (in English)"
-msgstr ""
+msgstr "Inimloetav keele nimi (inglise keeles)"
#: libretranslate/locales/.swag.py:38
msgid "Supported target language codes"
-msgstr ""
+msgstr "Tõetatud tõlkekeelte koodid"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr ""
+msgstr "Tõlgitud tekst(id)"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
-msgstr ""
+msgstr "Veateade"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
-msgstr ""
+msgstr "Päringute aeglustamise põhjus"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
-msgstr ""
+msgstr "Tõlgitud faili url"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
-msgstr ""
+msgstr "Usaldusväärsuse väärtus"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
+"Lähteteksti tähemärkide mahu ülempiir selle keele kohta (-1 märgib ülempiiri "
+"puudumist)"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr ""
+msgstr "Tõlkepäringu aegumine kasutajaliideses"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
-msgstr ""
+msgstr "Kas API võtmete andmebaas on kasutusel."
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
-msgstr ""
+msgstr "Kas API võtme kasutamine on nõutav."
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
-msgstr ""
+msgstr "Kas tõlkesoovituste saatmine on kasutusel."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
-msgstr ""
+msgstr "Toetatud failivormingud"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
-msgstr ""
+msgstr "Kas tõlkesoovituse saatmine õnnstus"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
@@ -450,14 +459,14 @@ msgstr "Kopeeri tekst"
#: libretranslate/templates/app.js.template:479
#, python-format
msgid "Cannot load %(url)s"
-msgstr ""
+msgstr "%(url)s urli laadimine ei õnnestunud"
#: libretranslate/templates/app.js.template:264
#: libretranslate/templates/app.js.template:334
#: libretranslate/templates/app.js.template:412
#: libretranslate/templates/app.js.template:423
msgid "Unknown error"
-msgstr ""
+msgstr "Tundmatu viga"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
@@ -468,23 +477,26 @@ msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
+"Täname tõlke parandusettepaneku eest. Palun arvesta, et ta ei tule koheselt "
+"kasutusele."
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
msgstr ""
+"Ühtegi keelt pole saadaval. Kas sa keelemudelid paigaldasid korrektselt?"
#: libretranslate/templates/app.js.template:522
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr ""
+msgstr "Sisesta siia oma API võti. Kui sul API võti on puudu, %(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
-msgstr ""
+msgstr "klõpsi linki „Osta API võti“."
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
-msgstr ""
+msgstr "võta ühendust serveri haldajaga."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
@@ -497,6 +509,9 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
+"Vaba ja avatud lähtekoodiga masintõlke API. Majutatav oma serveris, toimib "
+"ka võrguühenduseta ja on hõlpsasti seadistatav. Võta oma API server "
+"kasutusele vaid mõne minutiga."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -536,7 +551,7 @@ msgstr "Vaheta kujundust: tume/hele"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
-msgstr ""
+msgstr "Loobu"
#: libretranslate/templates/index.html:171
msgid "Translation API"
@@ -618,6 +633,7 @@ msgstr "Avatud lähtekoodiga masintõlke API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr ""
+"Majutatav oma serveris. Toimib ka võrguühenduseta. Hõlpsasti seadistatav."
#: libretranslate/templates/index.html:335
msgid "LibreTranslate"
@@ -634,21 +650,26 @@ msgid ""
"If you're going to run an application in production, please "
"%(host_server)s or %(get_api_key)s."
msgstr ""
+"Palun kasuta seda avalikku API't testimiseks, isiklikel eesmärkidel või "
+"muudel harvadel juhtudel. Kui tahad kasutada API't mõnes "
+"produktsioonirakenduses, siis palun %(host_server)s või %(get_api_key)s."
#: libretranslate/templates/index.html:340
msgid "host your own server"
-msgstr ""
+msgstr "pane püsti oma server"
#: libretranslate/templates/index.html:340
msgid "get an API key"
-msgstr ""
+msgstr "või osta meie serveri API võti"
#: libretranslate/templates/index.html:348
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
+"Tehtud suure %(heart)s'ga, millesse panustasid %(contributors)s ning "
+"sisulise töö teeb ära %(engine)s"
#: libretranslate/templates/index.html:348
#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr ""
+msgstr "%(libretranslate)s kaasautorid"
From 8d4fa40acd2950fae683729703d788165d38bdda Mon Sep 17 00:00:00 2001
From: ShareASmile
Date: Thu, 1 Feb 2024 19:22:17 +0000
Subject: [PATCH 016/332] Translated using Weblate (Hindi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hi/
---
libretranslate/locales/hi/LC_MESSAGES/messages.po | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/libretranslate/locales/hi/LC_MESSAGES/messages.po b/libretranslate/locales/hi/LC_MESSAGES/messages.po
index 45e8498..b6816e8 100644
--- a/libretranslate/locales/hi/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/hi/LC_MESSAGES/messages.po
@@ -9,24 +9,25 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-09-23 14:04+0000\n"
+"PO-Revision-Date: 2024-02-02 20:01+0000\n"
"Last-Translator: ShareASmile \n"
+"Language-Team: Hindi \n"
"Language: hi\n"
-"Language-Team: Hindi "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr "Invalid JSON प्रारूप"
+msgstr "अमान्य JSON प्रारूप"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr "ऑटो"
+msgstr "ऑटो डिटेक्ट करें"
#: libretranslate/app.py:232
msgid "Unauthorized"
@@ -668,4 +669,3 @@ msgstr "%(libretranslate)s योगदानकर्ता"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
-
From b522a0f76386490f980cbae0079d62a03be9b0ba Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 5 Feb 2024 15:03:27 -0500
Subject: [PATCH 017/332] Add --req-time-cost
---
libretranslate/app.py | 23 +++++++++++++++++++----
libretranslate/default_values.py | 5 +++++
libretranslate/main.py | 7 +++++++
3 files changed, 31 insertions(+), 4 deletions(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 17f15c5..4ea7be0 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -1,4 +1,5 @@
import io
+import math
import os
import re
import tempfile
@@ -219,6 +220,13 @@ def create_app(args):
from flask_limiter import Limiter
+ def limits_cost():
+ req_cost = getattr(request, 'req_cost', 1)
+ if args.req_time_cost > 0:
+ return max(req_cost, int(math.ceil(getattr(request, 'duration', 0) / args.req_time_cost)))
+ else:
+ return req_cost
+
limiter = Limiter(
key_func=get_remote_address,
default_limits=get_routes_limits(
@@ -226,7 +234,7 @@ def create_app(args):
),
storage_uri=args.req_limit_storage,
default_limits_deduct_when=lambda req: True, # Force cost to be called after the request
- default_limits_cost=lambda: getattr(request, 'req_cost', 1)
+ default_limits_cost=limits_cost
)
else:
from .no_limiter import Limiter
@@ -325,12 +333,19 @@ def create_app(args):
status = e.code
raise e
finally:
- duration = max(default_timer() - start_t, 0)
- measure_request.labels(request.path, status, ip, ak).observe(duration)
+ request.duration = max(default_timer() - start_t, 0)
+ measure_request.labels(request.path, status, ip, ak).observe(request.duration)
g.dec()
return measure_func
else:
- return func
+ @wraps(func)
+ def time_func(*a, **kw):
+ start_t = default_timer()
+ try:
+ return func(*a, **kw)
+ finally:
+ request.duration = max(default_timer() - start_t, 0)
+ return time_func
@bp.errorhandler(400)
def invalid_api(e):
diff --git a/libretranslate/default_values.py b/libretranslate/default_values.py
index 96a833e..b93cd76 100644
--- a/libretranslate/default_values.py
+++ b/libretranslate/default_values.py
@@ -81,6 +81,11 @@ _default_options_objects = [
'default_value': -1,
'value_type': 'int'
},
+ {
+ 'name': 'REQ_TIME_COST',
+ 'default_value': -1,
+ 'value_type': 'int'
+ },
{
'name': 'BATCH_LIMIT',
'default_value': -1,
diff --git a/libretranslate/main.py b/libretranslate/main.py
index 581e4f5..8337c70 100644
--- a/libretranslate/main.py
+++ b/libretranslate/main.py
@@ -63,6 +63,13 @@ def get_args():
metavar="",
help="Set the maximum number of request limit offences that a client can exceed before being banned. (%(default)s)",
)
+ parser.add_argument(
+ "--req-time-cost",
+ default=DEFARGS['REQ_TIME_COST'],
+ type=int,
+ metavar="",
+ help="Considers a time cost (in seconds) for request limiting purposes. If a request takes 10 seconds and this value is set to 5, the request cost is either 2 or the actual request cost (whichever is greater). (%(default)s)",
+ )
parser.add_argument(
"--batch-limit",
default=DEFARGS['BATCH_LIMIT'],
From 1e50dc92bfd4ca637f5ccd6c691b9f9c248ff074 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 5 Feb 2024 15:13:20 -0500
Subject: [PATCH 018/332] Update README
---
README.md | 41 +++++++++++++++++++++--------------------
1 file changed, 21 insertions(+), 20 deletions(-)
diff --git a/README.md b/README.md
index 85de97b..e23fda1 100644
--- a/README.md
+++ b/README.md
@@ -165,26 +165,27 @@ Arguments passed to the process or set via environment variables are split into
### Configuration Parameters
-| Argument | Description | Default Parameter | Env. name |
-|-----------------------------|-------------------------------------------------------------------------------------------------------------| -------------------- |------------------------------|
-| --host | Set host to bind the server to | `127.0.0.1` | LT_HOST |
-| --port | Set port to bind the server to | `5000` | LT_PORT |
-| --char-limit | Set character limit | `No limit` | LT_CHAR_LIMIT |
-| --req-limit | Set maximum number of requests per minute per client (outside of limits set by api keys) | `No limit` | LT_REQ_LIMIT |
-| --req-limit-storage | Storage URI to use for request limit data storage. See [Flask Limiter](https://flask-limiter.readthedocs.io/en/stable/configuration.html) | `memory://` | LT_REQ_LIMIT_STORAGE |
-| --batch-limit | Set maximum number of texts to translate in a batch request | `No limit` | LT_BATCH_LIMIT |
-| --ga-id | Enable Google Analytics on the API client page by providing an ID | `Empty (no tracking)` | LT_GA_ID |
-| --frontend-language-source | Set frontend default language - source | `auto` | LT_FRONTEND_LANGUAGE_SOURCE |
-| --frontend-language-target | Set frontend default language - target | `locale` (match site's locale) | LT_FRONTEND_LANGUAGE_TARGET |
-| --frontend-timeout | Set frontend translation timeout | `500` | LT_FRONTEND_TIMEOUT |
-| --api-keys-db-path | Use a specific path inside the container for the local database. Can be absolute or relative | `db/api_keys.db` | LT_API_KEYS_DB_PATH |
-| --api-keys-remote | Use this remote endpoint to query for valid API keys instead of using the local database | `Empty (use local db instead)` | LT_API_KEYS_REMOTE |
-| --get-api-key-link | Show a link in the UI where to direct users to get an API key | `Empty (no link shown on web ui)` | LT_GET_API_KEY_LINK |
-| --shared-storage | Shared storage URI to use for multi-process data sharing (e.g. when using gunicorn) | `memory://` | LT_SHARED_STORAGE |
-| --load-only | Set available languages | `Empty (use all from argostranslate)` | LT_LOAD_ONLY |
-| --threads | Set number of threads | `4` | LT_THREADS |
-| --metrics-auth-token | Protect the /metrics endpoint by allowing only clients that have a valid Authorization Bearer token | `Empty (no auth required)` | LT_METRICS_AUTH_TOKEN |
-| --url-prefix | Add prefix to URL: example.com:5000/url-prefix/ | `/` | LT_URL_PREFIX |
+| Argument | Description | Default Parameter | Env. name |
+| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | --------------------------- |
+| --host | Set host to bind the server to | `127.0.0.1` | LT_HOST |
+| --port | Set port to bind the server to | `5000` | LT_PORT |
+| --char-limit | Set character limit | `No limit` | LT_CHAR_LIMIT |
+| --req-limit | Set maximum number of requests per minute per client (outside of limits set by api keys) | `No limit` | LT_REQ_LIMIT |
+| --req-limit-storage | Storage URI to use for request limit data storage. See [Flask Limiter](https://flask-limiter.readthedocs.io/en/stable/configuration.html) | `memory://` | LT_REQ_LIMIT_STORAGE |
+| --req-time-cost | Considers a time cost (in seconds) for request limiting purposes. If a request takes 10 seconds and this value is set to 5, the request cost is either 2 or the actual request cost (whichever is greater). | `No time cost` | LT_REQ_TIME_COST |
+| --batch-limit | Set maximum number of texts to translate in a batch request | `No limit` | LT_BATCH_LIMIT |
+| --ga-id | Enable Google Analytics on the API client page by providing an ID | `Empty (no tracking)` | LT_GA_ID |
+| --frontend-language-source | Set frontend default language - source | `auto` | LT_FRONTEND_LANGUAGE_SOURCE |
+| --frontend-language-target | Set frontend default language - target | `locale` (match site's locale) | LT_FRONTEND_LANGUAGE_TARGET |
+| --frontend-timeout | Set frontend translation timeout | `500` | LT_FRONTEND_TIMEOUT |
+| --api-keys-db-path | Use a specific path inside the container for the local database. Can be absolute or relative | `db/api_keys.db` | LT_API_KEYS_DB_PATH |
+| --api-keys-remote | Use this remote endpoint to query for valid API keys instead of using the local database | `Empty (use local db instead)` | LT_API_KEYS_REMOTE |
+| --get-api-key-link | Show a link in the UI where to direct users to get an API key | `Empty (no link shown on web ui)` | LT_GET_API_KEY_LINK |
+| --shared-storage | Shared storage URI to use for multi-process data sharing (e.g. when using gunicorn) | `memory://` | LT_SHARED_STORAGE |
+| --load-only | Set available languages | `Empty (use all from argostranslate)` | LT_LOAD_ONLY |
+| --threads | Set number of threads | `4` | LT_THREADS |
+| --metrics-auth-token | Protect the /metrics endpoint by allowing only clients that have a valid Authorization Bearer token | `Empty (no auth required)` | LT_METRICS_AUTH_TOKEN |
+| --url-prefix | Add prefix to URL: example.com:5000/url-prefix/ | `/` | LT_URL_PREFIX |
### Notes:
From 176d37df737ae9db20e67bcd2c9ab9298da21a89 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 5 Feb 2024 15:16:32 -0500
Subject: [PATCH 019/332] Remove trailing whitespace test
---
.pre-commit-config.yaml | 2 --
1 file changed, 2 deletions(-)
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 55e8f4b..fee2cd1 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -9,8 +9,6 @@ repos:
name: " ✔️ Check TOML"
- id: check-json
name: " ✔️ Check JSON"
- - id: trailing-whitespace
- name: " ✂️ Trim trailing whitespaces"
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: v0.0.277
hooks:
From 45266554cb209de5fd5fad380eb85d9166ebe52f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=9F=B3=E4=B8=B8=E5=81=A5=E5=A4=AA=E9=83=8E?=
Date: Fri, 9 Feb 2024 03:46:34 +0000
Subject: [PATCH 020/332] Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
---
.../locales/ja/LC_MESSAGES/messages.po | 74 +++++++++----------
1 file changed, 34 insertions(+), 40 deletions(-)
diff --git a/libretranslate/locales/ja/LC_MESSAGES/messages.po b/libretranslate/locales/ja/LC_MESSAGES/messages.po
index f2456be..b623a19 100644
--- a/libretranslate/locales/ja/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ja/LC_MESSAGES/messages.po
@@ -9,14 +9,16 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-01-10 09:57+0000\n"
-"Last-Translator: Allan Nordhøy \n"
-"Language-Team: Japanese \n"
+"PO-Revision-Date: 2024-02-10 04:01+0000\n"
+"Last-Translator: 石丸健太郎 \n"
+"Language-Team: Japanese \n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -33,20 +35,20 @@ msgstr "無許可"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr "あまりにも多くのリクエストは違反を制限します"
+msgstr "リクエストが多すぎます。"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr "Invalid API キー"
+msgstr "無効な API キー"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "サーバ管理者に連絡して、APIキーを取得する"
+msgstr "サーバ管理者に連絡して、APIキーを取得してください。"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr "アクセス %(url)s API キーを取得する"
+msgstr "%(url)sにアクセスして API キーを取得する"
#: libretranslate/app.py:318
msgid "Slowdown:"
@@ -58,20 +60,20 @@ msgstr "スローダウン:"
#: libretranslate/app.py:896 libretranslate/app.py:1053
#: libretranslate/app.py:1055 libretranslate/app.py:1057
#: libretranslate/app.py:1059
-#, fuzzy, python-format
+#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr "無効な要求: 欠落 %(name)s パラメータ"
+msgstr "無効な要求: %(name)s パラメータが欠落している"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr "無効な要求: 要求(%(size)s) テキストの制限を超えた (%(limit)s)"
+msgstr "無効な要求: 要求(%(size)s)がテキストの制限(%(limit)s)超えている"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr "%(lang)s サポートされていません"
+msgstr "%(lang)s はサポートされていません"
#: libretranslate/app.py:594
#, python-format
@@ -86,7 +88,7 @@ msgid ""
msgstr "%(tname)s (%(tcode)s) 対象言語は対象言語として利用できません。 %(sname)s (%(scode)s)"
#: libretranslate/app.py:647
-#, fuzzy, python-format
+#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "テキストを翻訳できません。 %(text)s"
@@ -112,15 +114,15 @@ msgstr "このサーバーで提案が無効になっています。."
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr "日本語 English"
+msgstr "日本語"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
-msgstr "ログイン"
+msgstr "アラビア語"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
-msgstr "アゼルバイジャン"
+msgstr "アゼルバイジャン語"
#: libretranslate/locales/.langs.py:4
msgid "Chinese"
@@ -140,7 +142,7 @@ msgstr "オランダ語"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr "エスペラント"
+msgstr "エスペラント語"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
@@ -152,7 +154,7 @@ msgstr "フランス語"
#: libretranslate/locales/.langs.py:11
msgid "German"
-msgstr "ドイツ人"
+msgstr "ドイツ語"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
@@ -276,19 +278,16 @@ msgid "Text(s) to translate"
msgstr "翻訳するテキスト"
#: libretranslate/locales/.swag.py:12
-#, fuzzy
msgid "Source language code"
-msgstr "言語コード"
+msgstr "ソース言語コード"
#: libretranslate/locales/.swag.py:13
-#, fuzzy
msgid "Target language code"
-msgstr "ターゲット言語コードをサポート"
+msgstr "ターゲット言語コード"
#: libretranslate/locales/.swag.py:14
-#, fuzzy
msgid "text"
-msgstr "テキストのコピー"
+msgstr "テキスト"
#: libretranslate/locales/.swag.py:15
msgid "html"
@@ -305,9 +304,8 @@ msgstr ""
"* `html` - HTML マークアップ\n"
#: libretranslate/locales/.swag.py:17
-#, fuzzy
msgid "API key"
-msgstr "ログイン"
+msgstr "APIキー"
#: libretranslate/locales/.swag.py:18
msgid "Translate file from a language to another"
@@ -318,9 +316,8 @@ msgid "Translated file"
msgstr "翻訳ファイル"
#: libretranslate/locales/.swag.py:20
-#, fuzzy
msgid "File to translate"
-msgstr "翻訳するテキスト"
+msgstr "翻訳するファイル"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
@@ -335,9 +332,8 @@ msgid "Detection error"
msgstr "検出エラー"
#: libretranslate/locales/.swag.py:24
-#, fuzzy
msgid "Text to detect"
-msgstr "自動検出"
+msgstr "検出するテキスト"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
@@ -368,19 +364,16 @@ msgid "Original text"
msgstr "オリジナルテキスト"
#: libretranslate/locales/.swag.py:32
-#, fuzzy
msgid "Suggested translation"
-msgstr "翻訳の提案"
+msgstr "提案された翻訳"
#: libretranslate/locales/.swag.py:33
-#, fuzzy
msgid "Language of original text"
-msgstr "単一のテキストの言語を検出する"
+msgstr "オリジナルテキストの言語"
#: libretranslate/locales/.swag.py:34
-#, fuzzy
msgid "Language of suggested translation"
-msgstr "翻訳の提案"
+msgstr "提案された翻訳の言語"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
@@ -642,14 +635,15 @@ msgid "License:"
msgstr "ライセンス:"
#: libretranslate/templates/index.html:340
-#, fuzzy, python-format
+#, python-format
msgid ""
"This public API should be used for testing, personal or infrequent use. If "
"you're going to run an application in production, please %(host_server)s or "
"%(get_api_key)s."
msgstr ""
-"このパブリック API は、テスト、個人的、または不適切な使用に使用されます。 制作中のアプリケーションを実行する場合は、%(host_server)s"
-" または %(get_api_key)s."
+"この公開API はテストまたは個人的、頻繁でない用途に使用してください。製品のア"
+"プリケーションに使用する場合は、%(host_server)s または "
+"%(get_api_key)sしてください。"
#: libretranslate/templates/index.html:340
msgid "host your own server"
@@ -660,9 +654,9 @@ msgid "get an API key"
msgstr "aPI キーを取得する"
#: libretranslate/templates/index.html:348
-#, fuzzy, python-format
+#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "作りました %(heart)s によって %(contributors)s スタッフ %(engine)s"
+msgstr "%(heart)sと%(contributors)sによって作成され、%(engine)sにより作動しています。"
#: libretranslate/templates/index.html:348
#, python-format
From d0f1cdfc96e1122903194d30cd8441506cc44e27 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Sun, 11 Feb 2024 14:28:22 -0500
Subject: [PATCH 021/332] Update README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 5479dfe..522998c 100644
--- a/README.md
+++ b/README.md
@@ -658,7 +658,7 @@ console.log(await res.json());
## Contributing
-We welcome contributions! Here's some ideas:
+We welcome contributions! Here's some ideas that take less than 90 hours:
* Train a new language model using [Locomotive](https://github.com/LibreTranslate/Locomotive). For example, [Estonian](https://community.libretranslate.com/t/help-wanted-estonian-model-for-argos-translate/875/2) and many others are still missing.
* Can you beat the performance of our language models? Train a new one and let's compare it.
From abbfb3561d344575150c0550da839c6ed2aba9a2 Mon Sep 17 00:00:00 2001
From: Argos Open Tech <48267258+argosopentech@users.noreply.github.com>
Date: Tue, 13 Feb 2024 07:53:11 -0600
Subject: [PATCH 022/332] Improve model contributing doc
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 522998c..d691ff7 100644
--- a/README.md
+++ b/README.md
@@ -660,8 +660,8 @@ console.log(await res.json());
We welcome contributions! Here's some ideas that take less than 90 hours:
-* Train a new language model using [Locomotive](https://github.com/LibreTranslate/Locomotive). For example, [Estonian](https://community.libretranslate.com/t/help-wanted-estonian-model-for-argos-translate/875/2) and many others are still missing.
-* Can you beat the performance of our language models? Train a new one and let's compare it.
+* Train a new language model using [Locomotive](https://github.com/LibreTranslate/Locomotive). For example, we want to train improved neural networks for [German](https://community.libretranslate.com/t/help-wanted-improve-en-de-translation/935) and many other languages.
+* Can you beat the performance of our language models? Train a new one and let's compare it. To submit your model make a post on the [community forum](https://community.libretranslate.com/) with a link to download your .argosmodel file and some sample text that your model has translated.
* Pick an [issue](https://github.com/LibreTranslate/LibreTranslate/issues) to work on.
## Credits
From b0f372638e6cab2aa3d0658579c974db6c0db394 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 13 Feb 2024 10:36:06 -0500
Subject: [PATCH 023/332] Update README.md
---
README.md | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/README.md b/README.md
index d691ff7..b66b213 100644
--- a/README.md
+++ b/README.md
@@ -472,6 +472,10 @@ In short, yes, [but only if you buy an API key](https://portal.libretranslate.co
By default language models are loaded from the [argos-index](https://github.com/argosopentech/argospm-index). Sometimes we deploy models on libretranslate.com that haven't been added to the argos-index yet, such as those converted from OPUS ([thread](https://community.libretranslate.com/t/opus-mt-language-models-port-thread/757))
+### Where are the language models saved?
+
+In `$HOME/.local/share/argos-translate/packages`. On Windows that's `C:\Users\youruser\.local\share\argos-translate\packages`.
+
### Can I use LibreTranslate behind a reverse proxy, like Apache2 or Caddy?
Yes, here are config examples for Apache2 and Caddy that redirect a subdomain (with HTTPS certificate) to LibreTranslate running on a docker at localhost.
From 718297d74a4a5d02801f5dae705c46e87e7f2912 Mon Sep 17 00:00:00 2001
From: Salif Mehmed
Date: Wed, 14 Feb 2024 18:02:43 +0100
Subject: [PATCH 024/332] Added translation using Weblate (Bulgarian)
---
.../locales/bg/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/bg/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/bg/LC_MESSAGES/messages.po b/libretranslate/locales/bg/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..0ff59b6
--- /dev/null
+++ b/libretranslate/locales/bg/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: bg\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From cbe8d91a8efc6c20da9cb2569cfd345047665606 Mon Sep 17 00:00:00 2001
From: Salif Mehmed
Date: Wed, 14 Feb 2024 18:30:15 +0000
Subject: [PATCH 025/332] Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
---
.../locales/bg/LC_MESSAGES/messages.po | 273 +++++++++---------
1 file changed, 141 insertions(+), 132 deletions(-)
diff --git a/libretranslate/locales/bg/LC_MESSAGES/messages.po b/libretranslate/locales/bg/LC_MESSAGES/messages.po
index 0ff59b6..df37a4a 100644
--- a/libretranslate/locales/bg/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/bg/LC_MESSAGES/messages.po
@@ -9,26 +9,29 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-02-15 18:02+0000\n"
+"Last-Translator: Salif Mehmed \n"
+"Language-Team: Bulgarian \n"
"Language: bg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.4-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Невалиден JSON формат"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "Разпознаване"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "Неоторизиран"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
@@ -36,20 +39,20 @@ msgstr ""
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Невалиден API ключ"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr ""
+msgstr "Моля, свържете се с оператора на сървъра, за да получите API ключ"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "Посетете %(url)s, за да получите API ключ"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr ""
+msgstr "Забавяне:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -59,23 +62,25 @@ msgstr ""
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Невалидна заявка: липсващ %(name)s параметър"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
+"Невалидна заявка: заявката (%(size)s) надвишава ограничението за текст "
+"(%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "%(lang)s не се поддържа"
#: libretranslate/app.py:594
#, python-format
msgid "%(format)s format is not supported"
-msgstr ""
+msgstr "Форматът %(format)s не се поддържа"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -83,211 +88,212 @@ msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
+"%(tname)s (%(tcode)s) не е наличен като целеви език от %(sname)s (%(scode)s)"
#: libretranslate/app.py:647
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr ""
+msgstr "Не може да се преведе текстът: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr ""
+msgstr "Превеждането на файлове е изключено на този сървър."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
-msgstr ""
+msgstr "Невалидна заявка: празен файл"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
-msgstr ""
+msgstr "Невалидна заявка: файловият формат не се поддържа"
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr ""
+msgstr "Невалидно име на файла"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
-msgstr ""
+msgstr "Предложенията са изключени на този сървър."
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr ""
+msgstr "Английски"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
-msgstr ""
+msgstr "Арабски"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
-msgstr ""
+msgstr "Азербайджански"
#: libretranslate/locales/.langs.py:4
msgid "Chinese"
-msgstr ""
+msgstr "Китайски"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr ""
+msgstr "Чешки"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
-msgstr ""
+msgstr "Датски"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr ""
+msgstr "Нидерландски"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr ""
+msgstr "Есперанто"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
-msgstr ""
+msgstr "Финландски"
#: libretranslate/locales/.langs.py:10
msgid "French"
-msgstr ""
+msgstr "Френски"
#: libretranslate/locales/.langs.py:11
msgid "German"
-msgstr ""
+msgstr "Немски"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
-msgstr ""
+msgstr "Гръцки"
#: libretranslate/locales/.langs.py:13
msgid "Hebrew"
-msgstr ""
+msgstr "Иврит"
#: libretranslate/locales/.langs.py:14
msgid "Hindi"
-msgstr ""
+msgstr "Хинди"
#: libretranslate/locales/.langs.py:15
msgid "Hungarian"
-msgstr ""
+msgstr "Унгарски"
#: libretranslate/locales/.langs.py:16
msgid "Indonesian"
-msgstr ""
+msgstr "Индонезийски"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr ""
+msgstr "Ирландски"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
-msgstr ""
+msgstr "Италиански"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr ""
+msgstr "Японски"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
-msgstr ""
+msgstr "Корейски"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr ""
+msgstr "Персийски"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
-msgstr ""
+msgstr "Полски"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
-msgstr ""
+msgstr "Португалски"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
-msgstr ""
+msgstr "Руски"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr ""
+msgstr "Словашки"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
-msgstr ""
+msgstr "Испански"
#: libretranslate/locales/.langs.py:27
msgid "Swedish"
-msgstr ""
+msgstr "Шведски"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
-msgstr ""
+msgstr "Турски"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
-msgstr ""
+msgstr "Украински"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
-msgstr ""
+msgstr "Виетнамски"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Извличане на списък с поддържани езици"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Списък с езици"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr ""
+msgstr "превеждане"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr ""
+msgstr "Превеждане на текст от един език на друг"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
-msgstr ""
+msgstr "Преведен текст"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
-msgstr ""
+msgstr "Невалидна заявка"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
-msgstr ""
+msgstr "Грешка при превода"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr ""
+msgstr "Забавяне"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr ""
+msgstr "Блокиран"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr ""
+msgstr "Здравей, свят!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr ""
+msgstr "Текст(ове) за превод"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr ""
+msgstr "Код на изходния език"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
-msgstr ""
+msgstr "Код на целевия език"
#: libretranslate/locales/.swag.py:14
msgid "text"
-msgstr ""
+msgstr "text"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr ""
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -295,110 +301,113 @@ msgid ""
" * `text` - Plain text\n"
" * `html` - HTML markup\n"
msgstr ""
+"Формат на изходния текст:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
msgid "API key"
-msgstr ""
+msgstr "API ключ"
#: libretranslate/locales/.swag.py:18
msgid "Translate file from a language to another"
-msgstr ""
+msgstr "Превеждане на файл от един език на друг"
#: libretranslate/locales/.swag.py:19
msgid "Translated file"
-msgstr ""
+msgstr "Преведен файл"
#: libretranslate/locales/.swag.py:20
msgid "File to translate"
-msgstr ""
+msgstr "Файл за превод"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr ""
+msgstr "Разпознаване на езика на единичен текст"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
-msgstr ""
+msgstr "Разпознавания"
#: libretranslate/locales/.swag.py:23
msgid "Detection error"
-msgstr ""
+msgstr "Грешка при разпознаване"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr ""
+msgstr "Текст за разпознаване"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
-msgstr ""
+msgstr "Извличане на специфични за клиентска част настройки"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
-msgstr ""
+msgstr "настройки на клиентската част"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr ""
+msgstr "клиентска част"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr ""
+msgstr "Изпрати предложение за подобряване на превода"
#: libretranslate/locales/.swag.py:29
msgid "Success"
-msgstr ""
+msgstr "Успех"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
-msgstr ""
+msgstr "Не оторизиран"
#: libretranslate/locales/.swag.py:31
msgid "Original text"
-msgstr ""
+msgstr "Оригинален текст"
#: libretranslate/locales/.swag.py:32
msgid "Suggested translation"
-msgstr ""
+msgstr "Предложен превод"
#: libretranslate/locales/.swag.py:33
msgid "Language of original text"
-msgstr ""
+msgstr "Език на оригиналния текст"
#: libretranslate/locales/.swag.py:34
msgid "Language of suggested translation"
-msgstr ""
+msgstr "Език на предложения превод"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
-msgstr ""
+msgstr "обратна връзка"
#: libretranslate/locales/.swag.py:36
msgid "Language code"
-msgstr ""
+msgstr "Езиков код"
#: libretranslate/locales/.swag.py:37
msgid "Human-readable language name (in English)"
-msgstr ""
+msgstr "Човекоразбираемо име на езика (на английски)"
#: libretranslate/locales/.swag.py:38
msgid "Supported target language codes"
-msgstr ""
+msgstr "Поддържани целеви езикови кодове"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr ""
+msgstr "Преведен(и) текст(ове)"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
-msgstr ""
+msgstr "Съобщение за грешка"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
-msgstr ""
+msgstr "Причина за забавяне"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
-msgstr ""
+msgstr "Адрес на преведен файл"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
@@ -426,7 +435,7 @@ msgstr ""
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
-msgstr ""
+msgstr "Поддържан файлов формат"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
@@ -436,7 +445,7 @@ msgstr ""
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr ""
+msgstr "Копиране на текста"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -447,18 +456,18 @@ msgstr ""
#: libretranslate/templates/app.js.template:479
#, python-format
msgid "Cannot load %(url)s"
-msgstr ""
+msgstr "Не може да се зареди %(url)s"
#: libretranslate/templates/app.js.template:264
#: libretranslate/templates/app.js.template:334
#: libretranslate/templates/app.js.template:412
#: libretranslate/templates/app.js.template:423
msgid "Unknown error"
-msgstr ""
+msgstr "Неизвестна грешка"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr ""
+msgstr "Копиран"
#: libretranslate/templates/app.js.template:331
msgid ""
@@ -473,11 +482,11 @@ msgstr ""
#: libretranslate/templates/app.js.template:522
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr ""
+msgstr "Въведете своя API ключ. Ако имате нужда от API ключ, %(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
-msgstr ""
+msgstr "натиснете връзката „Получаване на API ключ“."
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
@@ -497,132 +506,132 @@ msgstr ""
#: libretranslate/templates/index.html:11
msgid "translation"
-msgstr ""
+msgstr "превод"
#: libretranslate/templates/index.html:11
msgid "api"
-msgstr ""
+msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
-msgstr ""
+msgstr "API Документация"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
-msgstr ""
+msgstr "Получаване на API ключ"
#: libretranslate/templates/index.html:69
msgid "GitHub"
-msgstr ""
+msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
-msgstr ""
+msgstr "Задаване на API ключ"
#: libretranslate/templates/index.html:73
msgid "Change language"
-msgstr ""
+msgstr "Промяна на езика"
#: libretranslate/templates/index.html:79
msgid "Edit"
-msgstr ""
+msgstr "Редактиране"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr ""
+msgstr "Превключване на тъмен/светъл режим"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
-msgstr ""
+msgstr "Отхвърляне"
#: libretranslate/templates/index.html:171
msgid "Translation API"
-msgstr ""
+msgstr "API за превеждане"
#: libretranslate/templates/index.html:175
msgid "Translate Text"
-msgstr ""
+msgstr "Превод на текст"
#: libretranslate/templates/index.html:179
msgid "Translate Files"
-msgstr ""
+msgstr "Превод на файлове"
#: libretranslate/templates/index.html:185
msgid "Translate from"
-msgstr ""
+msgstr "Превеждане от"
#: libretranslate/templates/index.html:195
msgid "Swap source and target languages"
-msgstr ""
+msgstr "Размяна на изходния и целевия език"
#: libretranslate/templates/index.html:198
msgid "Translate into"
-msgstr ""
+msgstr "Превеждане на"
#: libretranslate/templates/index.html:210
msgid "Text to translate"
-msgstr ""
+msgstr "Текст за превод"
#: libretranslate/templates/index.html:213
msgid "Delete text"
-msgstr ""
+msgstr "Изтриване на текста"
#: libretranslate/templates/index.html:226
msgid "Suggest translation"
-msgstr ""
+msgstr "Предлагане на превод"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr ""
+msgstr "Отказ"
#: libretranslate/templates/index.html:233
msgid "Send"
-msgstr ""
+msgstr "Изпращане"
#: libretranslate/templates/index.html:249
msgid "Supported file formats:"
-msgstr ""
+msgstr "Поддържани файлови формати:"
#: libretranslate/templates/index.html:253
msgid "File"
-msgstr ""
+msgstr "Файл"
#: libretranslate/templates/index.html:268
msgid "Remove file"
-msgstr ""
+msgstr "Премахване на файла"
#: libretranslate/templates/index.html:275
msgid "Translate"
-msgstr ""
+msgstr "Превеждане"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
msgid "Download"
-msgstr ""
+msgstr "Изтегляне"
#: libretranslate/templates/index.html:295
msgid "Request"
-msgstr ""
+msgstr "Заявка"
#: libretranslate/templates/index.html:300
msgid "Response"
-msgstr ""
+msgstr "Отговор"
#: libretranslate/templates/index.html:315
msgid "Open Source Machine Translation API"
-msgstr ""
+msgstr "API с отворен код за машинен превод"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr ""
+msgstr "Самостоятелен хостинг. Офлайн способност. Лесен за настройка."
#: libretranslate/templates/index.html:335
msgid "LibreTranslate"
-msgstr ""
+msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
msgid "License:"
-msgstr ""
+msgstr "Лицензия:"
#: libretranslate/templates/index.html:340
#, python-format
@@ -638,14 +647,14 @@ msgstr ""
#: libretranslate/templates/index.html:340
msgid "get an API key"
-msgstr ""
+msgstr "получаване на API ключ"
#: libretranslate/templates/index.html:348
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr ""
+msgstr "Направено с %(heart)s от %(contributors)s и задвижвано от %(engine)s"
#: libretranslate/templates/index.html:348
#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr ""
+msgstr "%(libretranslate)s Сътрудници"
From c671bad1abc3cbd16cf2dbf6685c316dd84f930b Mon Sep 17 00:00:00 2001
From: Salif Mehmed
Date: Fri, 16 Feb 2024 10:07:08 +0000
Subject: [PATCH 026/332] Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
---
.../locales/bg/LC_MESSAGES/messages.po | 36 ++++++++++++-------
1 file changed, 23 insertions(+), 13 deletions(-)
diff --git a/libretranslate/locales/bg/LC_MESSAGES/messages.po b/libretranslate/locales/bg/LC_MESSAGES/messages.po
index df37a4a..0649798 100644
--- a/libretranslate/locales/bg/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/bg/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-02-15 18:02+0000\n"
+"PO-Revision-Date: 2024-02-17 02:36+0000\n"
"Last-Translator: Salif Mehmed \n"
"Language-Team: Bulgarian \n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.4\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -35,7 +35,7 @@ msgstr "Неоторизиран"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "Твърде много нарушения на ограниченията на заявките"
#: libretranslate/app.py:257
msgid "Invalid API key"
@@ -411,27 +411,29 @@ msgstr "Адрес на преведен файл"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
-msgstr ""
+msgstr "Стойност на увереност"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
+"Ограничение за въвеждане на символи за този език (-1 означава, че няма "
+"ограничение)"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr ""
+msgstr "Време за изчакване на превода през клиентската част"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
-msgstr ""
+msgstr "Дали базата данни с API ключове е включена."
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
-msgstr ""
+msgstr "Дали API ключ е задължителен."
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
-msgstr ""
+msgstr "Дали изпращането на предложения е включено."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
@@ -439,7 +441,7 @@ msgstr "Поддържан файлов формат"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
-msgstr ""
+msgstr "Дали подаването е било успешно"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
@@ -474,10 +476,12 @@ msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
+"Благодарности за поправката. Имайте предвид, че предложението няма да влезе "
+"в сила веднага."
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
-msgstr ""
+msgstr "Няма налични езици. Правилно ли инсталирахте моделите?"
#: libretranslate/templates/app.js.template:522
#, python-format
@@ -490,12 +494,12 @@ msgstr "натиснете връзката „Получаване на API к
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
-msgstr ""
+msgstr "свържете се с оператора на сървъра."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr ""
+msgstr "Свободен API с отворен код за машинен превод"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -503,6 +507,9 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
+"Свободен API с отворен код за машинен превод. Самостоятелен хостинг, офлайн "
+"способност и лесен за настройка. Стартирайте свой собствен API сървър само "
+"за няколко минути."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -640,10 +647,13 @@ msgid ""
"If you're going to run an application in production, please "
"%(host_server)s or %(get_api_key)s."
msgstr ""
+"Този публичен API трябва да се използва за тестване, лична или рядка "
+"употреба. Ако възнамерявате да стартирате приложение в продукция, моля "
+"%(host_server)s или %(get_api_key)s."
#: libretranslate/templates/index.html:340
msgid "host your own server"
-msgstr ""
+msgstr "хоствайте свой собствен сървър"
#: libretranslate/templates/index.html:340
msgid "get an API key"
From 2b59e5d2fcd3d0d90e7ed9317de414a678fa3e0f Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Sat, 17 Feb 2024 15:09:14 -0500
Subject: [PATCH 027/332] Reviewed Bulgarian
---
libretranslate/locales/bg/meta.json | 4 ++++
1 file changed, 4 insertions(+)
create mode 100644 libretranslate/locales/bg/meta.json
diff --git a/libretranslate/locales/bg/meta.json b/libretranslate/locales/bg/meta.json
new file mode 100644
index 0000000..f2d8b98
--- /dev/null
+++ b/libretranslate/locales/bg/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Bulgarian",
+ "reviewed": true
+}
From a7910dd61c13228a01e06eca0cb493708cc60cd8 Mon Sep 17 00:00:00 2001
From: Liam Johnson
Date: Mon, 19 Feb 2024 08:00:22 +0100
Subject: [PATCH 028/332] Added translation using Weblate (Uyghur)
---
.../locales/ug/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/ug/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/ug/LC_MESSAGES/messages.po b/libretranslate/locales/ug/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..a0b1a2a
--- /dev/null
+++ b/libretranslate/locales/ug/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ug\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 49787d8b449849618e717a3a34e87d1cee7d32ed Mon Sep 17 00:00:00 2001
From: Thomas Derflinger
Date: Mon, 19 Feb 2024 22:00:12 +0100
Subject: [PATCH 029/332] Added TypeScript language binding library.
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index b66b213..f4f0018 100644
--- a/README.md
+++ b/README.md
@@ -331,6 +331,7 @@ You can use the LibreTranslate API using the following bindings:
- Rust:
- Node.js:
+- TypeScript:
- .Net:
- Go:
- Python:
From da9837f833d93f97a9ee4a30c4d369521400671f Mon Sep 17 00:00:00 2001
From: Liam Johnson
Date: Mon, 19 Feb 2024 07:01:06 +0000
Subject: [PATCH 030/332] Translated using Weblate (Uyghur)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ug/
---
.../locales/ug/LC_MESSAGES/messages.po | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/libretranslate/locales/ug/LC_MESSAGES/messages.po b/libretranslate/locales/ug/LC_MESSAGES/messages.po
index a0b1a2a..e997380 100644
--- a/libretranslate/locales/ug/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ug/LC_MESSAGES/messages.po
@@ -9,34 +9,37 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-02-20 07:02+0000\n"
+"Last-Translator: Liam Johnson \n"
+"Language-Team: Uyghur \n"
"Language: ug\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "ئىناۋەتسىز JSON فورماتى"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "ئاپتوماتىك تەكشۈرۈش"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "ھوقۇق بېرىلمىگەن"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "ئىلتىماس سانى چەكتىن ئاشتى"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "API ئاچقۇچ ئىناۋەتسىز"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
From 51cefcfb4ed08717dd4db6746effa28b47d533aa Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 20 Feb 2024 13:17:13 -0500
Subject: [PATCH 031/332] Update README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index f4f0018..d64d27e 100644
--- a/README.md
+++ b/README.md
@@ -663,7 +663,7 @@ console.log(await res.json());
## Contributing
-We welcome contributions! Here's some ideas that take less than 90 hours:
+We welcome contributions! Here's some ideas:
* Train a new language model using [Locomotive](https://github.com/LibreTranslate/Locomotive). For example, we want to train improved neural networks for [German](https://community.libretranslate.com/t/help-wanted-improve-en-de-translation/935) and many other languages.
* Can you beat the performance of our language models? Train a new one and let's compare it. To submit your model make a post on the [community forum](https://community.libretranslate.com/) with a link to download your .argosmodel file and some sample text that your model has translated.
From 631317532146c5a9123107189d92c2c0a089ddfa Mon Sep 17 00:00:00 2001
From: Scrambled777
Date: Fri, 23 Feb 2024 16:59:11 +0000
Subject: [PATCH 032/332] Translated using Weblate (Hindi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hi/
---
.../locales/hi/LC_MESSAGES/messages.po | 102 +++++++++---------
1 file changed, 51 insertions(+), 51 deletions(-)
diff --git a/libretranslate/locales/hi/LC_MESSAGES/messages.po b/libretranslate/locales/hi/LC_MESSAGES/messages.po
index b6816e8..226ec59 100644
--- a/libretranslate/locales/hi/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/hi/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-02-02 20:01+0000\n"
-"Last-Translator: ShareASmile \n"
+"PO-Revision-Date: 2024-02-24 17:01+0000\n"
+"Last-Translator: Scrambled777 \n"
"Language-Team: Hindi \n"
"Language: hi\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -39,20 +39,20 @@ msgstr "बहुत से अनुरोध सीमा उल्लंघ
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr "Invalid API key"
+msgstr "अमान्य API कुंजी"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "एपीआई कुंजी प्राप्त करने के लिए सर्वर ऑपरेटर से संपर्क करें"
+msgstr "API कुंजी प्राप्त करने के लिए कृपया सर्वर ऑपरेटर से संपर्क करें"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr "यात्रा %(url)s एक API कुंजी प्राप्त करने के लिए"
+msgstr "API कुंजी प्राप्त करने के लिए %(url)s पर जाएं"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr "नीचे:"
+msgstr "गति कम करो:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -62,12 +62,12 @@ msgstr "नीचे:"
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr "अवैध अनुरोध: लापता %(name)s पैरामीटर"
+msgstr "अमान्य अनुरोध: %(name)s पैरामीटर अनुपलब्ध है"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr "अनुरोध%(size)s) पाठ सीमा से अधिक है (%(limit)s)"
+msgstr "अमान्य अनुरोध: अनुरोध (%(size)s) पाठ सीमा (%(limit)s) से अधिक है"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
@@ -108,7 +108,7 @@ msgstr "अमान्य अनुरोध: फ़ाइल प्रार
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr "Invalid filename"
+msgstr "अमान्य फ़ाइलनाम"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
@@ -144,7 +144,7 @@ msgstr "डच"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr "एस्परांतो"
+msgstr "एस्पेरांतो"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
@@ -228,7 +228,7 @@ msgstr "तुर्की"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
-msgstr "यूनानी"
+msgstr "यूक्रेनी"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
@@ -264,15 +264,15 @@ msgstr "अनुवाद त्रुटि"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr "नीचे"
+msgstr "गति कम करो"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr "बंधा"
+msgstr "प्रतिबंधित"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr "नमस्कार!"
+msgstr "नमस्ते दुनिया!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
@@ -292,7 +292,7 @@ msgstr "पाठ"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr "एचटीएमएल"
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -301,8 +301,8 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"स्रोत पाठ का प्रारूप:\n"
-"* `text` - सादा पाठ\n"
-"एचटीएमएल\n"
+" * `पाठ` - सादा पाठ\n"
+" * `html` - HTML मार्कअप\n"
#: libretranslate/locales/.swag.py:17
msgid "API key"
@@ -338,15 +338,15 @@ msgstr "डिटेक्ट करने के लिए पाठ"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
-msgstr "Retrieve frontend विशिष्ट सेटिंग्स"
+msgstr "Frontend विशिष्ट सेटिंग्स पुनर्प्राप्त करें"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
-msgstr "फ्रंटएंड सेटिंग्स"
+msgstr "Frontend सेटिंग्स"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr "फ्रंटएंड"
+msgstr "Frontend"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
@@ -394,7 +394,7 @@ msgstr "समर्थित लक्ष्य भाषा कोड"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr "अनुवादित पाठ(s)"
+msgstr "अनुवादित पाठ(ओं)"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
@@ -402,15 +402,15 @@ msgstr "त्रुटि संदेश"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
-msgstr "धीमा करने के लिए कारण"
+msgstr "गति धीमी होने का कारण"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
-msgstr "अनुवादित फ़ाइल यूआरएल"
+msgstr "अनुवादित फ़ाइल url"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
-msgstr "गोपनीयता नीति"
+msgstr "आत्मविश्वास मूल्य"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
@@ -418,15 +418,15 @@ msgstr "इस भाषा के लिए चरित्र इनपुट
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr "फ्रंटेंड अनुवाद टाइमआउट"
+msgstr "Frontend अनुवाद टाइमआउट"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
-msgstr "क्या एपीआई कुंजी डेटाबेस सक्षम है।."
+msgstr "क्या API कुंजी डेटाबेस सक्षम है।।"
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
-msgstr "क्या एक एपीआई कुंजी की आवश्यकता है।."
+msgstr "क्या एक API कुंजी की आवश्यकता है।।"
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
@@ -438,7 +438,7 @@ msgstr "समर्थित फाइलें प्रारूप"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
-msgstr "चाहे जमा करना सफल हो"
+msgstr "क्या सबमिशन सफल रहा"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
@@ -455,7 +455,7 @@ msgstr "पाठ कॉपी करें"
#: libretranslate/templates/app.js.template:479
#, python-format
msgid "Cannot load %(url)s"
-msgstr "Cannot लोड %(url)s"
+msgstr "%(url)s लोड नहीं किया जा सकता"
#: libretranslate/templates/app.js.template:264
#: libretranslate/templates/app.js.template:334
@@ -466,7 +466,7 @@ msgstr "अज्ञात त्रुटि"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr "Copied"
+msgstr "कॉपी किया गया"
#: libretranslate/templates/app.js.template:331
msgid ""
@@ -482,12 +482,12 @@ msgstr "कोई भाषा उपलब्ध नहीं है। क्
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
-"अपने एपीआई कुंजी में टाइप करें। यदि आपको API कुंजी की आवश्यकता है, "
+"अपने API कुंजी में टाइप करें। यदि आपको API कुंजी की आवश्यकता है, "
"%(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
-msgstr "\"Get API कुंजी\" लिंक दबाएँ।."
+msgstr "\"API कुंजी प्राप्त करें\" लिंक दबाएं।"
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
@@ -496,7 +496,7 @@ msgstr "सर्वर ऑपरेटर से संपर्क करे
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr "फ्री एंड ओपन सोर्स मशीन ट्रांसलेशन एपीआई"
+msgstr "मुफ़्त और मुक्त स्रोत मशीन अनुवाद API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -504,8 +504,8 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"फ्री एंड ओपन सोर्स मशीन ट्रांसलेशन एपीआई। स्व-होस्टेड, ऑफ़लाइन सक्षम और "
-"सेटअप करने में आसान। कुछ ही मिनटों में अपना खुद का API सर्वर चलाएं।."
+"मुफ़्त और मुक्त स्रोत मशीन अनुवाद एपीआई। स्व-होस्टेड, ऑफ़लाइन सक्षम और सेटअप "
+"करने में आसान। कुछ ही मिनटों में अपना स्वयं का API सर्वर चलाएं।"
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -513,23 +513,23 @@ msgstr "अनुवाद"
#: libretranslate/templates/index.html:11
msgid "api"
-msgstr "एपीआई"
+msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
-msgstr "एपीआई डॉक"
+msgstr "API दस्तावेज़"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
-msgstr "एपीआई प्राप्त करें कुंजी"
+msgstr "API प्राप्त करें कुंजी"
#: libretranslate/templates/index.html:69
msgid "GitHub"
-msgstr "गिटहब"
+msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
-msgstr "एपीआई सेट कुंजी"
+msgstr "API सेट कुंजी"
#: libretranslate/templates/index.html:73
msgid "Change language"
@@ -545,11 +545,11 @@ msgstr "टॉगल डार्क / लाइट मोड"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
-msgstr "Dismis"
+msgstr "खारिज"
#: libretranslate/templates/index.html:171
msgid "Translation API"
-msgstr "अनुवाद एपीआई"
+msgstr "अनुवाद API"
#: libretranslate/templates/index.html:175
msgid "Translate Text"
@@ -565,7 +565,7 @@ msgstr "से अनुवाद करें"
#: libretranslate/templates/index.html:195
msgid "Swap source and target languages"
-msgstr "स्वैप स्रोत और लक्ष्य भाषाओं"
+msgstr "स्रोत और लक्ष्य भाषाओं की अदला-बदली करें"
#: libretranslate/templates/index.html:198
msgid "Translate into"
@@ -577,15 +577,15 @@ msgstr "अनुवाद करने के लिए पाठ"
#: libretranslate/templates/index.html:213
msgid "Delete text"
-msgstr "पाठ संपादित करें"
+msgstr "पाठ हटाएँ"
#: libretranslate/templates/index.html:226
msgid "Suggest translation"
-msgstr "अनुवाद सुझाव"
+msgstr "अनुवाद सुझाएँ"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr "रद्द करना"
+msgstr "रद्द करें"
#: libretranslate/templates/index.html:233
msgid "Send"
@@ -622,7 +622,7 @@ msgstr "जवाब"
#: libretranslate/templates/index.html:315
msgid "Open Source Machine Translation API"
-msgstr "ओपन सोर्स मशीन अनुवाद एपीआई"
+msgstr "ओपन सोर्स मशीन अनुवाद API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
@@ -643,8 +643,8 @@ msgid ""
"If you're going to run an application in production, please "
"%(host_server)s or %(get_api_key)s."
msgstr ""
-"इस सार्वजनिक एपीआई का उपयोग परीक्षण, व्यक्तिगत या गलत उपयोग के लिए किया "
-"जाना चाहिए। यदि आप उत्पादन में आवेदन चला रहे हैं, तो कृपया ध्यान दें। "
+"इस सार्वजनिक API का उपयोग परीक्षण, व्यक्तिगत या गलत उपयोग के लिए किया जाना "
+"चाहिए। यदि आप उत्पादन में आवेदन चला रहे हैं, तो कृपया ध्यान दें। "
"%(host_server)s या %(get_api_key)s।"
#: libretranslate/templates/index.html:340
@@ -653,7 +653,7 @@ msgstr "अपने सर्वर को होस्ट करें"
#: libretranslate/templates/index.html:340
msgid "get an API key"
-msgstr "एपीआई कुंजी प्राप्त करें"
+msgstr "API कुंजी प्राप्त करें"
#: libretranslate/templates/index.html:348
#, python-format
From 4549a2b3d6dc1cb0067b17fc694c04bf42ee6815 Mon Sep 17 00:00:00 2001
From: Max Lee
Date: Tue, 27 Feb 2024 14:36:41 +0100
Subject: [PATCH 033/332] Specify the supported color schemes
---
libretranslate/templates/index.html | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libretranslate/templates/index.html b/libretranslate/templates/index.html
index f53f14b..c0a69d8 100644
--- a/libretranslate/templates/index.html
+++ b/libretranslate/templates/index.html
@@ -49,6 +49,8 @@
+
+
From 7b5303c8754cca9939c85a3bac8a24ee2ce81200 Mon Sep 17 00:00:00 2001
From: myanesp <17320863+myanesp@users.noreply.github.com>
Date: Wed, 28 Feb 2024 19:59:31 +0000
Subject: [PATCH 034/332] add: R binding
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index d64d27e..441ced1 100644
--- a/README.md
+++ b/README.md
@@ -342,6 +342,7 @@ You can use the LibreTranslate API using the following bindings:
- Shell:
- Java:
- Ruby:
+- R:
## Discourse Plugin
From b25ed7aae475f5452cce3dbecc4ab5839e93cd66 Mon Sep 17 00:00:00 2001
From: Cyril Levis
Date: Wed, 6 Mar 2024 10:37:47 +0100
Subject: [PATCH 035/332] fix: make libretranslate with ipv6
---
docker/Dockerfile | 2 +-
docker/arm.Dockerfile | 2 +-
docker/cuda.Dockerfile | 2 +-
scripts/healthcheck.py | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index e883afd..8787b57 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -42,4 +42,4 @@ RUN if [ "$with_models" = "true" ]; then \
fi
EXPOSE 5000
-ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "0.0.0.0" ]
+ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "::" ]
diff --git a/docker/arm.Dockerfile b/docker/arm.Dockerfile
index f60c8ad..934df26 100644
--- a/docker/arm.Dockerfile
+++ b/docker/arm.Dockerfile
@@ -40,4 +40,4 @@ RUN if [ "$with_models" = "true" ]; then \
fi
EXPOSE 5000
-ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "0.0.0.0" ]
+ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "::" ]
diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile
index 1b29547..3ab10a1 100644
--- a/docker/cuda.Dockerfile
+++ b/docker/cuda.Dockerfile
@@ -42,4 +42,4 @@ RUN pip3 install Babel==2.12.1 && python3 scripts/compile_locales.py \
# ENV LD_LIBRARY_PATH=/usr/local/cuda/lib:/usr/local/cuda/lib64
EXPOSE 5000
-ENTRYPOINT [ "libretranslate", "--host", "0.0.0.0" ]
+ENTRYPOINT [ "libretranslate", "--host", "::" ]
diff --git a/scripts/healthcheck.py b/scripts/healthcheck.py
index 07bcaa4..aa5fcaf 100644
--- a/scripts/healthcheck.py
+++ b/scripts/healthcheck.py
@@ -1,7 +1,7 @@
import requests
response = requests.post(
- url='http://0.0.0.0:5000/translate',
+ url='http://[::1]:5000/translate',
headers={'Content-Type': 'application/json'},
json={
'q': 'Hello World!',
From 732e984382d424ceeab2c9e32ea160d770180d9e Mon Sep 17 00:00:00 2001
From: Cyril Levis
Date: Wed, 6 Mar 2024 15:46:29 +0100
Subject: [PATCH 036/332] fix: make libretranslate with ipv6
---
libretranslate/main.py | 4 ++++
scripts/healthcheck.py | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/libretranslate/main.py b/libretranslate/main.py
index 8337c70..6866a55 100644
--- a/libretranslate/main.py
+++ b/libretranslate/main.py
@@ -215,6 +215,10 @@ def main():
if '--wsgi' in sys.argv:
return app
else:
+ if args.debug and args.host == "*":
+ # '::' will listen on both ipv6 and ipv4
+ args.host = "::"
+
if args.debug:
app.run(host=args.host, port=args.port)
else:
diff --git a/scripts/healthcheck.py b/scripts/healthcheck.py
index aa5fcaf..2f0d22f 100644
--- a/scripts/healthcheck.py
+++ b/scripts/healthcheck.py
@@ -1,7 +1,7 @@
import requests
response = requests.post(
- url='http://[::1]:5000/translate',
+ url='http://localhost:5000/translate',
headers={'Content-Type': 'application/json'},
json={
'q': 'Hello World!',
From 3bfb8342a0ced779d51e6a1a42f10f7d2c788f4c Mon Sep 17 00:00:00 2001
From: Cyril Levis
Date: Wed, 6 Mar 2024 16:30:28 +0100
Subject: [PATCH 037/332] fix: also change entrypoint
---
docker/Dockerfile | 2 +-
docker/arm.Dockerfile | 2 +-
docker/cuda.Dockerfile | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 8787b57..a785bed 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -42,4 +42,4 @@ RUN if [ "$with_models" = "true" ]; then \
fi
EXPOSE 5000
-ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "::" ]
+ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "*" ]
diff --git a/docker/arm.Dockerfile b/docker/arm.Dockerfile
index 934df26..8a6831e 100644
--- a/docker/arm.Dockerfile
+++ b/docker/arm.Dockerfile
@@ -40,4 +40,4 @@ RUN if [ "$with_models" = "true" ]; then \
fi
EXPOSE 5000
-ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "::" ]
+ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "*" ]
diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile
index 3ab10a1..a9d44ae 100644
--- a/docker/cuda.Dockerfile
+++ b/docker/cuda.Dockerfile
@@ -42,4 +42,4 @@ RUN pip3 install Babel==2.12.1 && python3 scripts/compile_locales.py \
# ENV LD_LIBRARY_PATH=/usr/local/cuda/lib:/usr/local/cuda/lib64
EXPOSE 5000
-ENTRYPOINT [ "libretranslate", "--host", "::" ]
+ENTRYPOINT [ "libretranslate", "--host", "*" ]
From 0478cce2812f17f871682e5352ee557a14b78cab Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Wed, 6 Mar 2024 11:37:20 -0500
Subject: [PATCH 038/332] Bump version
---
VERSION | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/VERSION b/VERSION
index 9075be4..eac1e0a 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.5.5
+1.5.6
From fcbf627b5be6e9813033b16f69c5af763b237155 Mon Sep 17 00:00:00 2001
From: d
Date: Wed, 6 Mar 2024 07:37:23 +0000
Subject: [PATCH 039/332] Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
---
libretranslate/locales/ca/LC_MESSAGES/messages.po | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/libretranslate/locales/ca/LC_MESSAGES/messages.po b/libretranslate/locales/ca/LC_MESSAGES/messages.po
index 0736897..42f899f 100644
--- a/libretranslate/locales/ca/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ca/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-01-27 09:01+0000\n"
-"Last-Translator: victor dargallo \n"
+"PO-Revision-Date: 2024-03-07 08:01+0000\n"
+"Last-Translator: d \n"
"Language-Team: Catalan \n"
"Language: ca\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -351,7 +351,7 @@ msgstr ""
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr ""
+msgstr "Envia un suggeriment per millorar una traducció"
#: libretranslate/locales/.swag.py:29
msgid "Success"
@@ -363,15 +363,15 @@ msgstr ""
#: libretranslate/locales/.swag.py:31
msgid "Original text"
-msgstr ""
+msgstr "Text original"
#: libretranslate/locales/.swag.py:32
msgid "Suggested translation"
-msgstr ""
+msgstr "Traducció suggerida"
#: libretranslate/locales/.swag.py:33
msgid "Language of original text"
-msgstr ""
+msgstr "Idioma del text original"
#: libretranslate/locales/.swag.py:34
msgid "Language of suggested translation"
From 950d68f44d9e16cb1badadc80a52b63bc676a25a Mon Sep 17 00:00:00 2001
From: symegac <97731141+symegac@users.noreply.github.com>
Date: Mon, 11 Mar 2024 21:33:57 +0000
Subject: [PATCH 040/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
libretranslate/locales/da/LC_MESSAGES/messages.po | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 890f690..bab6c6a 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-01-15 00:06+0000\n"
+"PO-Revision-Date: 2024-03-12 22:01+0000\n"
"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n"
"Language-Team: Danish \n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -34,9 +34,8 @@ msgid "Unauthorized"
msgstr "Uautoriseret"
#: libretranslate/app.py:250
-#, fuzzy
msgid "Too many request limits violations"
-msgstr "For mange anmodninger begrænser overtrædelser"
+msgstr "For mange overtrædelser af anmodningsbegrænsninger"
#: libretranslate/app.py:257
msgid "Invalid API key"
From c0ce429163e750b8bd0341d2f219d94ce3719d50 Mon Sep 17 00:00:00 2001
From: cat <158170307+cultcats@users.noreply.github.com>
Date: Tue, 12 Mar 2024 17:40:00 +0000
Subject: [PATCH 041/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
.../locales/da/LC_MESSAGES/messages.po | 90 +++++++++----------
1 file changed, 45 insertions(+), 45 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index bab6c6a..01039ea 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
"PO-Revision-Date: 2024-03-12 22:01+0000\n"
-"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n"
+"Last-Translator: cat <158170307+cultcats@users.noreply.github.com>\n"
"Language-Team: Danish \n"
"Language: da\n"
@@ -27,7 +27,7 @@ msgstr "Ugyldig JSON format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr "Autodetektor"
+msgstr "Auto detektor"
#: libretranslate/app.py:232
msgid "Unauthorized"
@@ -43,16 +43,16 @@ msgstr "Ugyldig API-nøgle"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "Kontakt serveroperatøren for at få en API-nøgle"
+msgstr "Kontakt venligst serveroperatøren for at få en API-nøgle"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr "Besøg %(url)s at få en API-nøgle"
+msgstr "Besøg %(url)s for at få en API-nøgle"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr "Langlægning:"
+msgstr "Afmatning:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -102,7 +102,7 @@ msgstr "Filer oversættelse er deaktiveret på denne server."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
-msgstr "Ugyldig anmodning: tomt fil"
+msgstr "Ugyldig anmodning: tom fil"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
@@ -110,7 +110,7 @@ msgstr "Ugyldig anmodning: filformat ikke understøttet"
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr "Ugyldig filnavn"
+msgstr "Ugyldigt filnavn"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
@@ -142,7 +142,7 @@ msgstr "Dansk"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr "Hollandske"
+msgstr "Hollandsk"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
@@ -246,7 +246,7 @@ msgstr "Liste over sprog"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr "oversætter"
+msgstr "oversæt"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
@@ -324,7 +324,7 @@ msgstr "Fil at oversætte"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr "Angiv sproget for en enkelt tekst"
+msgstr "Registrér sproget i en enkelt tekst"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
@@ -336,11 +336,11 @@ msgstr "Registreringsfejl"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr "Tekst at opdage"
+msgstr "Tekst til registrering"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
-msgstr "Hent frontend specifikke indstillinger"
+msgstr "Hent frontend-specifikke indstillinger"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
@@ -352,7 +352,7 @@ msgstr "frontend"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr "Indsend et forslag til at forbedre en oversættelse"
+msgstr "Indsend et forslag til forbedring af en oversættelse"
#: libretranslate/locales/.swag.py:29
msgid "Success"
@@ -360,7 +360,7 @@ msgstr "Succes"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
-msgstr "Ikke godkendt"
+msgstr "Ikke autoriseret"
#: libretranslate/locales/.swag.py:31
msgid "Original text"
@@ -376,11 +376,11 @@ msgstr "Originaltekstens sprog"
#: libretranslate/locales/.swag.py:34
msgid "Language of suggested translation"
-msgstr "Foreslået oversættelses sprog"
+msgstr "Sprog i foreslået oversættelse"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
-msgstr "tilbagemelding"
+msgstr "feedback"
#: libretranslate/locales/.swag.py:36
msgid "Language code"
@@ -396,7 +396,7 @@ msgstr "Understøttede sprogkoder"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr "Oversat tekst(r)"
+msgstr "Oversat tekst(er)"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
@@ -404,23 +404,23 @@ msgstr "Fejlmeddelelse"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
-msgstr "Reason for langsom ned"
+msgstr "Årsag til nedbremsning"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
-msgstr "Oversætt fil url"
+msgstr "Oversat fil-url"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
-msgstr "Konsekvensværdi"
+msgstr "Konfidensværdi"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr "Karakterindgangsgrænse for dette sprog (-1 angiver ingen grænse)"
+msgstr "Grænse for tegninput for dette sprog (-1 angiver ingen grænse)"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr "Frontend oversættelsestidspunktout"
+msgstr "Timeout for frontend-oversættelse"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
@@ -428,7 +428,7 @@ msgstr "Om API-nøgledatabasen er aktiveret."
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
-msgstr "Om en API-nøgle kræves."
+msgstr "Om en API-nøgle er påkrævet."
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
@@ -446,7 +446,7 @@ msgstr "Om indsendelse var vellykket"
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr "Kopier tekst"
+msgstr "Kopiér tekst"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -475,8 +475,8 @@ msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-"Tak for din korrektion. Bemærk, at forslaget ikke vil tage virkning med "
-"det samme."
+"Tak for din rettelse. Bemærk, at forslaget ikke vil træde i kraft med det "
+"samme."
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
@@ -498,7 +498,7 @@ msgstr "kontakt serveroperatøren."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr "Gratis og Open Source Machine Oversættelse API"
+msgstr "Gratis og Open Source Maskinoversættelse API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -506,13 +506,13 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Gratis og Open Source Machine Oversættelse API. Self-hosted, offline i "
-"stand og let at konfigurere. Kør din egen API-server på blot et par "
+"Gratis og Open Source Maskinoversættelse API. Selv-hosted, kan bruges "
+"offline og er let at opsætte. Kør din egen API-server på blot et par "
"minutter."
#: libretranslate/templates/index.html:11
msgid "translation"
-msgstr "oversættelse af oversættelse"
+msgstr "oversættelse"
#: libretranslate/templates/index.html:11
msgid "api"
@@ -524,7 +524,7 @@ msgstr "API Docs"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
-msgstr "Få API Nøglenøgle"
+msgstr "Få API-nøgle"
#: libretranslate/templates/index.html:69
msgid "GitHub"
@@ -532,7 +532,7 @@ msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
-msgstr "Indstil API Nøglenøgle"
+msgstr "Indstil API-nøgle"
#: libretranslate/templates/index.html:73
msgid "Change language"
@@ -540,15 +540,15 @@ msgstr "Skift sprog"
#: libretranslate/templates/index.html:79
msgid "Edit"
-msgstr "Rediger redigering"
+msgstr "Redigér"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr "Skift mørke/lysetilstand"
+msgstr "Skift mellem mørk/lys tilstand"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
-msgstr "Begrænsninger"
+msgstr "Afvis"
#: libretranslate/templates/index.html:171
msgid "Translation API"
@@ -588,7 +588,7 @@ msgstr "Foreslå oversættelse"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr "Annuller"
+msgstr "Annullér"
#: libretranslate/templates/index.html:233
msgid "Send"
@@ -613,11 +613,11 @@ msgstr "Oversæt"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
msgid "Download"
-msgstr "Download"
+msgstr "Hent"
#: libretranslate/templates/index.html:295
msgid "Request"
-msgstr "Anmod om forespørgsel"
+msgstr "Anmod"
#: libretranslate/templates/index.html:300
msgid "Response"
@@ -625,11 +625,11 @@ msgstr "Svar"
#: libretranslate/templates/index.html:315
msgid "Open Source Machine Translation API"
-msgstr "Maskinoversættelses-API med åben kildekode"
+msgstr "Open Source Maskinoversættelse API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr "Self-Hosted. Offline Capable. Nem at konfigurere."
+msgstr "Selv-Hosted. Kan bruges offline. Nem at opsætte."
#: libretranslate/templates/index.html:335
msgid "LibreTranslate"
@@ -646,9 +646,9 @@ msgid ""
"If you're going to run an application in production, please "
"%(host_server)s or %(get_api_key)s."
msgstr ""
-"Denne offentlige API skal bruges til test, personlig eller sjælden brug. "
-"Hvis du vil køre en ansøgning i produktionen, bedes du venligst "
-"%(host_server)s eller %(get_api_key)s."
+"Denne offentlige API bør bruges til test, personlig eller sjælden brug. Hvis "
+"du har tænkt dig at køre en applikation i produktion, venligst %(host_server)"
+"s eller %(get_api_key)s."
#: libretranslate/templates/index.html:340
msgid "host your own server"
@@ -661,12 +661,12 @@ msgstr "få en API-nøgle"
#: libretranslate/templates/index.html:348
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "Lavet med %(heart)s af by %(contributors)s og drevet af %(engine)s"
+msgstr "Lavet med %(heart)s af %(contributors)s og drevet af %(engine)s"
#: libretranslate/templates/index.html:348
#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr "%(libretranslate)s-bidragsydere"
+msgstr "%(libretranslate)s Bidragsydere"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
From 540df02a212475ab047d54b5fdac03fb9141f85f Mon Sep 17 00:00:00 2001
From: cat <158170307+cultcats@users.noreply.github.com>
Date: Thu, 14 Mar 2024 09:36:11 +0000
Subject: [PATCH 042/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
.../locales/da/LC_MESSAGES/messages.po | 26 +++++++++----------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 01039ea..217e2b8 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-03-12 22:01+0000\n"
+"PO-Revision-Date: 2024-03-15 10:01+0000\n"
"Last-Translator: cat <158170307+cultcats@users.noreply.github.com>\n"
"Language-Team: Danish \n"
@@ -52,7 +52,7 @@ msgstr "Besøg %(url)s for at få en API-nøgle"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr "Afmatning:"
+msgstr "Nedbremsning:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -106,7 +106,7 @@ msgstr "Ugyldig anmodning: tom fil"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
-msgstr "Ugyldig anmodning: filformat ikke understøttet"
+msgstr "Ugyldig anmodning: filformat understøttes ikke"
#: libretranslate/app.py:796
msgid "Invalid filename"
@@ -286,7 +286,7 @@ msgstr "Kildesprogkode"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
-msgstr "Målsprogkoder"
+msgstr "Målsprogkode"
#: libretranslate/locales/.swag.py:14
msgid "text"
@@ -303,7 +303,7 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"Format af kildetekst:\n"
-"* 'tekst' - almindeligt tekst\n"
+"* 'tekst' - almindelig tekst\n"
"* `html' - HTML-markup\n"
#: libretranslate/locales/.swag.py:17
@@ -336,7 +336,7 @@ msgstr "Registreringsfejl"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr "Tekst til registrering"
+msgstr "Tekst at registrere"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
@@ -392,7 +392,7 @@ msgstr "Menneskeligt læseligt sprognavn (på engelsk)"
#: libretranslate/locales/.swag.py:38
msgid "Supported target language codes"
-msgstr "Understøttede sprogkoder"
+msgstr "Understøttede målsprogkoder"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
@@ -498,7 +498,7 @@ msgstr "kontakt serveroperatøren."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr "Gratis og Open Source Maskinoversættelse API"
+msgstr "Gratis og Open Source Maskinoversættelses-API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -506,7 +506,7 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Gratis og Open Source Maskinoversættelse API. Selv-hosted, kan bruges "
+"Gratis og Open Source Maskinoversættelses-API. Selv-hosted, kan bruges "
"offline og er let at opsætte. Kør din egen API-server på blot et par "
"minutter."
@@ -556,11 +556,11 @@ msgstr "Oversættelses-API"
#: libretranslate/templates/index.html:175
msgid "Translate Text"
-msgstr "Oversæt tekst"
+msgstr "Oversæt Tekst"
#: libretranslate/templates/index.html:179
msgid "Translate Files"
-msgstr "Oversæt filer"
+msgstr "Oversæt Filer"
#: libretranslate/templates/index.html:185
msgid "Translate from"
@@ -568,7 +568,7 @@ msgstr "Oversæt fra"
#: libretranslate/templates/index.html:195
msgid "Swap source and target languages"
-msgstr "Skift kilde- og målsprog"
+msgstr "Byt om på kilde- og målsprog"
#: libretranslate/templates/index.html:198
msgid "Translate into"
@@ -625,7 +625,7 @@ msgstr "Svar"
#: libretranslate/templates/index.html:315
msgid "Open Source Machine Translation API"
-msgstr "Open Source Maskinoversættelse API"
+msgstr "Open Source Maskinoversættelses-API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
From 619e6593ef49b324fde5b71e0b3721f4f42e580f Mon Sep 17 00:00:00 2001
From: Kaleido Scope
Date: Thu, 21 Mar 2024 16:11:18 +0100
Subject: [PATCH 043/332] Added translation using Weblate (Norwegian Nynorsk)
---
.../locales/nn/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/nn/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/nn/LC_MESSAGES/messages.po b/libretranslate/locales/nn/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..cb6933c
--- /dev/null
+++ b/libretranslate/locales/nn/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: nn\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 65609a6bcfc9da25c257be176d8a5e236f0e8fad Mon Sep 17 00:00:00 2001
From: Kaleido Scope
Date: Thu, 21 Mar 2024 15:14:38 +0000
Subject: [PATCH 044/332] Translated using Weblate (Norwegian Nynorsk)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nn/
---
.../locales/nn/LC_MESSAGES/messages.po | 27 ++++++++++---------
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/libretranslate/locales/nn/LC_MESSAGES/messages.po b/libretranslate/locales/nn/LC_MESSAGES/messages.po
index cb6933c..74cb9ab 100644
--- a/libretranslate/locales/nn/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/nn/LC_MESSAGES/messages.po
@@ -9,47 +9,50 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-03-22 16:01+0000\n"
+"Last-Translator: Kaleido Scope \n"
+"Language-Team: Norwegian Nynorsk \n"
"Language: nn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Ugyldig JSON-format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "Oppdag automatisk"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "Ikkje godkjent"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "For mange førespurnadar"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Ugyldig API-nykel"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr ""
+msgstr "Ta kontakt med sørvardministrator for å få API-nykel"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "Besøk %(url)s for å få ein API-nykel"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr ""
+msgstr "Nedbremsing:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -59,7 +62,7 @@ msgstr ""
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Ugyldig førespurnad: manglande %(name)s-parameter"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
From 5d9506c4bd039bae48dfa7485e9026c11eef8d23 Mon Sep 17 00:00:00 2001
From: VorHerre
Date: Sun, 24 Mar 2024 23:55:20 +0000
Subject: [PATCH 045/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
.../locales/da/LC_MESSAGES/messages.po | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 217e2b8..762afe6 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-03-15 10:01+0000\n"
-"Last-Translator: cat <158170307+cultcats@users.noreply.github.com>\n"
+"PO-Revision-Date: 2024-03-25 12:01+0000\n"
+"Last-Translator: VorHerre \n"
"Language-Team: Danish \n"
"Language: da\n"
@@ -98,7 +98,7 @@ msgstr "Kan ikke oversætte tekst: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr "Filer oversættelse er deaktiveret på denne server."
+msgstr "File oversættelse er deaktiveret på denne server."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
@@ -278,7 +278,7 @@ msgstr "Hej verden!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr "Tekst(er) at oversætte"
+msgstr "Tekst(er) til oversættelse"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
@@ -324,7 +324,7 @@ msgstr "Fil at oversætte"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr "Registrér sproget i en enkelt tekst"
+msgstr "Registrer sproget i en enkelt tekst"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
@@ -336,7 +336,7 @@ msgstr "Registreringsfejl"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr "Tekst at registrere"
+msgstr "Tekst at finde"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
@@ -446,7 +446,7 @@ msgstr "Om indsendelse var vellykket"
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr "Kopiér tekst"
+msgstr "Kopier tekst"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -540,7 +540,7 @@ msgstr "Skift sprog"
#: libretranslate/templates/index.html:79
msgid "Edit"
-msgstr "Redigér"
+msgstr "Rediger"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
@@ -588,7 +588,7 @@ msgstr "Foreslå oversættelse"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr "Annullér"
+msgstr "annullere"
#: libretranslate/templates/index.html:233
msgid "Send"
From 1d8fbfda0a99ba4d790f4d5a1db13df91eb67c1f Mon Sep 17 00:00:00 2001
From: symegac <97731141+symegac@users.noreply.github.com>
Date: Sun, 24 Mar 2024 23:57:48 +0000
Subject: [PATCH 046/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
libretranslate/locales/da/LC_MESSAGES/messages.po | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 762afe6..f59d8a1 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
"PO-Revision-Date: 2024-03-25 12:01+0000\n"
-"Last-Translator: VorHerre \n"
+"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n"
"Language-Team: Danish \n"
"Language: da\n"
@@ -348,7 +348,7 @@ msgstr "frontend indstillinger"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr "frontend"
+msgstr "grænseflade"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
From 01a82975fda4e58ff8e727a96ed2721387b02ac3 Mon Sep 17 00:00:00 2001
From: cat <158170307+cultcats@users.noreply.github.com>
Date: Mon, 25 Mar 2024 00:00:32 +0000
Subject: [PATCH 047/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
libretranslate/locales/da/LC_MESSAGES/messages.po | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index f59d8a1..21e9b31 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -10,7 +10,7 @@ msgstr ""
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
"PO-Revision-Date: 2024-03-25 12:01+0000\n"
-"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n"
+"Last-Translator: cat <158170307+cultcats@users.noreply.github.com>\n"
"Language-Team: Danish \n"
"Language: da\n"
@@ -436,7 +436,7 @@ msgstr "Om indsendelse af forslag er aktiveret."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
-msgstr "Understøttet filformat"
+msgstr "Understøttede filformater"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
From 87beef971d1592f788758df8dc4fbe86f5bca832 Mon Sep 17 00:00:00 2001
From: Kaleido Scope
Date: Sun, 24 Mar 2024 11:55:45 +0000
Subject: [PATCH 048/332] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?=
=?UTF-8?q?an=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nb_NO/
---
libretranslate/locales/nb_NO/LC_MESSAGES/messages.po | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po b/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po
index f28f1f3..01330bf 100644
--- a/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-01-06 17:52-0500\n"
-"PO-Revision-Date: 2023-06-03 02:40+0000\n"
-"Last-Translator: \"T. Alexander\" \n"
+"PO-Revision-Date: 2024-03-25 12:01+0000\n"
+"Last-Translator: Kaleido Scope \n"
"Language-Team: Norwegian Bokmål \n"
"Language: nb_NO\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.18-dev\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.11.0\n"
#: libretranslate/app.py:60
@@ -36,7 +36,7 @@ msgstr "Ikke godkjent"
#: libretranslate/app.py:211
#, fuzzy
msgid "Too many request limits violations"
-msgstr "For mange forespørsler"
+msgstr "For mange brudd på forespørselsgrensene"
#: libretranslate/app.py:220
msgid "Invalid API key"
@@ -278,7 +278,7 @@ msgstr "Bannlyst"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr "Hei verden."
+msgstr "Hei verden!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
@@ -297,7 +297,6 @@ msgid "text"
msgstr "tekst"
#: libretranslate/locales/.swag.py:15
-#, fuzzy
msgid "html"
msgstr "HTML"
From 887b282c6ae0b3d3168ef3b9663440029f4387ae Mon Sep 17 00:00:00 2001
From: Kaleido Scope
Date: Sun, 24 Mar 2024 12:00:57 +0000
Subject: [PATCH 049/332] Translated using Weblate (Norwegian Nynorsk)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nn/
---
.../locales/nn/LC_MESSAGES/messages.po | 84 +++++++++----------
1 file changed, 42 insertions(+), 42 deletions(-)
diff --git a/libretranslate/locales/nn/LC_MESSAGES/messages.po b/libretranslate/locales/nn/LC_MESSAGES/messages.po
index 74cb9ab..ef369fb 100644
--- a/libretranslate/locales/nn/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/nn/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-03-22 16:01+0000\n"
+"PO-Revision-Date: 2024-03-25 12:01+0000\n"
"Last-Translator: Kaleido Scope \n"
"Language-Team: Norwegian Nynorsk \n"
@@ -43,7 +43,7 @@ msgstr "Ugyldig API-nykel"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "Ta kontakt med sørvardministrator for å få API-nykel"
+msgstr "Ta kontakt med sørvaradministrator for å få API-nykel"
#: libretranslate/app.py:278
#, python-format
@@ -114,131 +114,131 @@ msgstr ""
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr ""
+msgstr "Engelsk"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
-msgstr ""
+msgstr "Arabisk"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
-msgstr ""
+msgstr "Azeri"
#: libretranslate/locales/.langs.py:4
msgid "Chinese"
-msgstr ""
+msgstr "Mandarin"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr ""
+msgstr "Tjekkisk"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
-msgstr ""
+msgstr "Dansk"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr ""
+msgstr "Nederlandsk"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr ""
+msgstr "Esperanto"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
-msgstr ""
+msgstr "Finsk"
#: libretranslate/locales/.langs.py:10
msgid "French"
-msgstr ""
+msgstr "Fransk"
#: libretranslate/locales/.langs.py:11
msgid "German"
-msgstr ""
+msgstr "Tysk"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
-msgstr ""
+msgstr "Gresk"
#: libretranslate/locales/.langs.py:13
msgid "Hebrew"
-msgstr ""
+msgstr "Hebraisk"
#: libretranslate/locales/.langs.py:14
msgid "Hindi"
-msgstr ""
+msgstr "Hindi"
#: libretranslate/locales/.langs.py:15
msgid "Hungarian"
-msgstr ""
+msgstr "Ungarsk"
#: libretranslate/locales/.langs.py:16
msgid "Indonesian"
-msgstr ""
+msgstr "Indonesisk"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr ""
+msgstr "Irsk"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
-msgstr ""
+msgstr "Italiensk"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr ""
+msgstr "Japansk"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
-msgstr ""
+msgstr "Koreansk"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr ""
+msgstr "Farsi"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
-msgstr ""
+msgstr "Polsk"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
-msgstr ""
+msgstr "Portugisisk"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
-msgstr ""
+msgstr "Russisk"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr ""
+msgstr "Slovakisk"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
-msgstr ""
+msgstr "Spansk"
#: libretranslate/locales/.langs.py:27
msgid "Swedish"
-msgstr ""
+msgstr "Svensk"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
-msgstr ""
+msgstr "Tyrkisk"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
-msgstr ""
+msgstr "Ukrainsk"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
-msgstr ""
+msgstr "Vietnamesisk"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Hent liste over støtta språk"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Språkliste"
#: libretranslate/locales/.swag.py:3
msgid "translate"
@@ -246,35 +246,35 @@ msgstr ""
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr ""
+msgstr "Omset tekst frå eit språk til eit anna"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
-msgstr ""
+msgstr "Omsette tekst"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
-msgstr ""
+msgstr "Ugyldig førespurnad"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
-msgstr ""
+msgstr "Omsetningsfeil"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr ""
+msgstr "Senk farten"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr ""
+msgstr "Utestengd"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr ""
+msgstr "Hei verda!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr ""
+msgstr "Tekst til omsetning"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
From 94f87cdac12fd5c6a639616b38ee58c37975e131 Mon Sep 17 00:00:00 2001
From: Zach DeCook
Date: Tue, 26 Mar 2024 09:24:16 -0400
Subject: [PATCH 050/332] Documentataion: /detect returns an integer 0-100, not
a float
---
libretranslate/app.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 4ea7be0..74d53c8 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -858,7 +858,7 @@ def create_app(args):
name: q
schema:
type: string
- example: Hello world!
+ example: What language is this?
required: true
description: Text to detect
- in: formData
@@ -879,11 +879,11 @@ def create_app(args):
properties:
confidence:
type: number
- format: float
+ format: integer
minimum: 0
- maximum: 1
+ maximum: 100
description: Confidence value
- example: 0.6
+ example: 100
language:
type: string
description: Language code
From 508cff36f85d6e0aca8a276e46b744866d71f206 Mon Sep 17 00:00:00 2001
From: I Just Me
Date: Wed, 27 Mar 2024 20:04:35 +0000
Subject: [PATCH 051/332] Translated using Weblate (Chinese (Traditional))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
---
libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
index 3c7b1af..f8ddc5c 100644
--- a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-01-06 17:52-0500\n"
-"PO-Revision-Date: 2023-05-18 17:53+0000\n"
-"Last-Translator: Peter Dave Hello \n"
+"PO-Revision-Date: 2024-03-28 21:01+0000\n"
+"Last-Translator: I Just Me \n"
"Language-Team: Chinese (Traditional) \n"
"Language: zh_Hant\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.18-dev\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.11.0\n"
#: libretranslate/app.py:60
@@ -320,7 +320,7 @@ msgstr "需要翻譯的檔案"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr "檢測單一文字的語言"
+msgstr "检测单一案文的措辞"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
From cabf2294b26547b22038cc57b62e195c5d1ed105 Mon Sep 17 00:00:00 2001
From: rferee
Date: Tue, 2 Apr 2024 22:03:03 +0200
Subject: [PATCH 052/332] Added translation using Weblate (Belarusian)
---
.../locales/be/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/be/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/be/LC_MESSAGES/messages.po b/libretranslate/locales/be/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..72bf445
--- /dev/null
+++ b/libretranslate/locales/be/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: be\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 51ef2b5915920f6f5901ec0b57b19ce88332f87f Mon Sep 17 00:00:00 2001
From: rferee
Date: Tue, 2 Apr 2024 20:06:13 +0000
Subject: [PATCH 053/332] Translated using Weblate (Belarusian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/be/
---
.../locales/be/LC_MESSAGES/messages.po | 233 ++++++++++--------
1 file changed, 124 insertions(+), 109 deletions(-)
diff --git a/libretranslate/locales/be/LC_MESSAGES/messages.po b/libretranslate/locales/be/LC_MESSAGES/messages.po
index 72bf445..69551af 100644
--- a/libretranslate/locales/be/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/be/LC_MESSAGES/messages.po
@@ -9,47 +9,51 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-04-02 23:12+0000\n"
+"Last-Translator: rferee \n"
+"Language-Team: Belarusian \n"
"Language: be\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Памылковы JSON-фармат"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "Аўтавызначэнне"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "Патрэбна аўтарызацыя"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "Перавышаны ліміт запытаў"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Памылковы API ключ"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr ""
+msgstr "Калі ласка звяжыцеся з аператарам сэрверу каб атрымаць API ключ"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "Наведайце %(url)s каб атрымаць API ключ"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr ""
+msgstr "Запаволенне:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -59,23 +63,25 @@ msgstr ""
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Памылковы запыт: параметар %(name)s адсутнічае"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
+"Памылковы запыт: запыт (%(size)s) перавышае дазволены ліміт тэксту "
+"(%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "%(lang)s не падтрымліваецца"
#: libretranslate/app.py:594
#, python-format
msgid "%(format)s format is not supported"
-msgstr ""
+msgstr "Фармат %(format)s не падтрымліваеецца"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -83,211 +89,212 @@ msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
+"%(tname)s (%(tcode)s) не даступная як мова перакладу з %(sname)s (%(scode)s)"
#: libretranslate/app.py:647
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr ""
+msgstr "Не атрымалася перакласці тэкст: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr ""
+msgstr "Переклад файлаў вымкнуты на гэтым сэрвере."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
-msgstr ""
+msgstr "Памылковы запыт: пусты файл"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
-msgstr ""
+msgstr "Памылковы запыт: фармат файла не падтрымліваецца"
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr ""
+msgstr "Няслушная назва файла"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
-msgstr ""
+msgstr "Прапанаванні выключаны на гэтым сэрверы."
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr ""
+msgstr "Англійская"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
-msgstr ""
+msgstr "Арабская"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
-msgstr ""
+msgstr "Азербайджанская"
#: libretranslate/locales/.langs.py:4
msgid "Chinese"
-msgstr ""
+msgstr "Кітайская"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr ""
+msgstr "Чешская"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
-msgstr ""
+msgstr "Дацкая"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr ""
+msgstr "Нідэрландская"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr ""
+msgstr "Эсперанта"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
-msgstr ""
+msgstr "Фінская"
#: libretranslate/locales/.langs.py:10
msgid "French"
-msgstr ""
+msgstr "Французская"
#: libretranslate/locales/.langs.py:11
msgid "German"
-msgstr ""
+msgstr "Нямецкая"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
-msgstr ""
+msgstr "Грэчаская"
#: libretranslate/locales/.langs.py:13
msgid "Hebrew"
-msgstr ""
+msgstr "Іўрыт"
#: libretranslate/locales/.langs.py:14
msgid "Hindi"
-msgstr ""
+msgstr "Хіндзі"
#: libretranslate/locales/.langs.py:15
msgid "Hungarian"
-msgstr ""
+msgstr "Венгерская"
#: libretranslate/locales/.langs.py:16
msgid "Indonesian"
-msgstr ""
+msgstr "Інданезійская"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr ""
+msgstr "Ірландская"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
-msgstr ""
+msgstr "Італьянская"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr ""
+msgstr "Японская"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
-msgstr ""
+msgstr "Карэйская"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr ""
+msgstr "Персідская"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
-msgstr ""
+msgstr "Польская"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
-msgstr ""
+msgstr "Партугальская"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
-msgstr ""
+msgstr "Руская"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr ""
+msgstr "Славацкая"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
-msgstr ""
+msgstr "Іспанская"
#: libretranslate/locales/.langs.py:27
msgid "Swedish"
-msgstr ""
+msgstr "Шведская"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
-msgstr ""
+msgstr "Турэцкая"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
-msgstr ""
+msgstr "Украінская"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
-msgstr ""
+msgstr "В’етнамская"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Атрымаць спіс падтрыманых моў"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Спіс моў"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr ""
+msgstr "пераклад"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr ""
+msgstr "Перакласць тэкст з адной мовы на іншую"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
-msgstr ""
+msgstr "Перакладзены тэкст"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
-msgstr ""
+msgstr "Памылковы запыт"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
-msgstr ""
+msgstr "Памылка перакладу"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr ""
+msgstr "Запаволенне"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr ""
+msgstr "Заблакавана"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr ""
+msgstr "Прывітанне, свет!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr ""
+msgstr "Тэкст(а) для перакладу"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr ""
+msgstr "Код мовы арыгінала"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
-msgstr ""
+msgstr "Код мовы пераклада"
#: libretranslate/locales/.swag.py:14
msgid "text"
-msgstr ""
+msgstr "тэкст"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr ""
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -295,148 +302,153 @@ msgid ""
" * `text` - Plain text\n"
" * `html` - HTML markup\n"
msgstr ""
+"Фармат выточнага тэксту:\n"
+"* `text` - Звычайны тэкст\n"
+"* `html` - HTML-разметка\n"
#: libretranslate/locales/.swag.py:17
msgid "API key"
-msgstr ""
+msgstr "API ключ"
#: libretranslate/locales/.swag.py:18
msgid "Translate file from a language to another"
-msgstr ""
+msgstr "Перакласць файл з адной мовы на іншую"
#: libretranslate/locales/.swag.py:19
msgid "Translated file"
-msgstr ""
+msgstr "Перакладзены файл"
#: libretranslate/locales/.swag.py:20
msgid "File to translate"
-msgstr ""
+msgstr "Файл для перакладу"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr ""
+msgstr "Вызначыць мову аднаго тэксту"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
-msgstr ""
+msgstr "Вызначэння"
#: libretranslate/locales/.swag.py:23
msgid "Detection error"
-msgstr ""
+msgstr "Памылка вызначэння"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr ""
+msgstr "Тэкст для вызначэння"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
-msgstr ""
+msgstr "Атрымаць налады для інтэрфэйсу"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
-msgstr ""
+msgstr "налады інтэрфэйсу"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr ""
+msgstr "інтэрфейс"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr ""
+msgstr "Запрапанаваць як палепшыць пераклад"
#: libretranslate/locales/.swag.py:29
msgid "Success"
-msgstr ""
+msgstr "Поспех"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
-msgstr ""
+msgstr "Не аўтаразаваны"
#: libretranslate/locales/.swag.py:31
msgid "Original text"
-msgstr ""
+msgstr "Арыгінальны тэкст"
#: libretranslate/locales/.swag.py:32
msgid "Suggested translation"
-msgstr ""
+msgstr "Запрапанаваны пераклад"
#: libretranslate/locales/.swag.py:33
msgid "Language of original text"
-msgstr ""
+msgstr "Мова арыгінальнага тэкста"
#: libretranslate/locales/.swag.py:34
msgid "Language of suggested translation"
-msgstr ""
+msgstr "Мова прапанаванага перакладу"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
-msgstr ""
+msgstr "зваротная сувязь"
#: libretranslate/locales/.swag.py:36
msgid "Language code"
-msgstr ""
+msgstr "Код мовы"
#: libretranslate/locales/.swag.py:37
msgid "Human-readable language name (in English)"
-msgstr ""
+msgstr "Чалавекачытальная назва мовы (па-ангельску)"
#: libretranslate/locales/.swag.py:38
msgid "Supported target language codes"
-msgstr ""
+msgstr "Коды падтрымліваемых моў"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr ""
+msgstr "Перакладзены(-я) тэкст(-а)"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
-msgstr ""
+msgstr "Паведамленне пра абмылу"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
-msgstr ""
+msgstr "Прычына запаволення"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
-msgstr ""
+msgstr "URL-адрэса перакладзенага файла"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
-msgstr ""
+msgstr "Ровень упэўненасці"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
+"Абмежаванне колькаскі знакаў для гэтай мовы (-1 азначае адсутнасць "
+"абмежаванняў)"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr ""
+msgstr "Час перакладу інтэрфэйсу перавышаны"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
-msgstr ""
+msgstr "Ці увамкнёная база дадзеных API ключоў."
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
-msgstr ""
+msgstr "Ці патрэбен API ключ."
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
-msgstr ""
+msgstr "Ці ўвамкненна магчымасць адпраўляць прапановы."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
-msgstr ""
+msgstr "Падтрымліваемыя фарматы файлаў"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
-msgstr ""
+msgstr "Ці было адсыланне паспяховым"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr ""
+msgstr "Скапіяваць тэкст"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -447,57 +459,60 @@ msgstr ""
#: libretranslate/templates/app.js.template:479
#, python-format
msgid "Cannot load %(url)s"
-msgstr ""
+msgstr "Немагчыма спампаваць %(url)s"
#: libretranslate/templates/app.js.template:264
#: libretranslate/templates/app.js.template:334
#: libretranslate/templates/app.js.template:412
#: libretranslate/templates/app.js.template:423
msgid "Unknown error"
-msgstr ""
+msgstr "Невядомая памылка"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr ""
+msgstr "Скапіявана"
#: libretranslate/templates/app.js.template:331
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
+"Дзякуй за вашу заўвагу. Прыміце да ўвагі: Ваша прапанова не адразу набудзе "
+"моц."
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
-msgstr ""
+msgstr "Няма даступных моў. Вы слушна ўсталявалі мадэлі?"
#: libretranslate/templates/app.js.template:522
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr ""
+msgstr "Увядзіце ваш API ключ. Калі вам патрэбен API ключ, %(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
-msgstr ""
+msgstr "націсніце на спасылку \"Атрымаць API ключ\"."
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
-msgstr ""
+msgstr "звяжыцеся з аператарам сэрвера."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr ""
+msgstr "Бясплатнае API для машыннага перакладу з адкрытым выточным кодам"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
+#, fuzzy
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
-msgstr ""
+msgstr "Бясплатнае API для машыннага перакладу з адкрытым выточным кодам."
#: libretranslate/templates/index.html:11
msgid "translation"
-msgstr ""
+msgstr "пераклад"
#: libretranslate/templates/index.html:11
msgid "api"
From 71b24e0631319f3ec8177670b7fcba193e9c8550 Mon Sep 17 00:00:00 2001
From: searinminecraft <114207889+searinminecraft@users.noreply.github.com>
Date: Wed, 3 Apr 2024 03:50:00 +0200
Subject: [PATCH 054/332] Added translation using Weblate (Filipino)
---
.../locales/fil/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/fil/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/fil/LC_MESSAGES/messages.po b/libretranslate/locales/fil/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..b64b3ab
--- /dev/null
+++ b/libretranslate/locales/fil/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: fil\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 7fdde99b4889f06040bd99bdfb9a183c17bd24aa Mon Sep 17 00:00:00 2001
From: searinminecraft <114207889+searinminecraft@users.noreply.github.com>
Date: Wed, 3 Apr 2024 01:50:51 +0000
Subject: [PATCH 055/332] Translated using Weblate (Filipino)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fil/
---
.../locales/fil/LC_MESSAGES/messages.po | 53 +++++++++++--------
1 file changed, 31 insertions(+), 22 deletions(-)
diff --git a/libretranslate/locales/fil/LC_MESSAGES/messages.po b/libretranslate/locales/fil/LC_MESSAGES/messages.po
index b64b3ab..8a89df9 100644
--- a/libretranslate/locales/fil/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/fil/LC_MESSAGES/messages.po
@@ -9,47 +9,52 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-04-03 08:46+0000\n"
+"Last-Translator: searinminecraft <114207889+searinminecraft@users.noreply."
+"github.com>\n"
+"Language-Team: Filipino \n"
"Language: fil\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1 && n != 2 && n != 3 && (n % 10 == 4 "
+"|| n % 10 == 6 || n % 10 == 9);\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Hindi wastong JSON format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr ""
+msgstr "I-auto Detect"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr ""
+msgstr "Hindi awtorisado"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
-msgstr ""
+msgstr "Masyadong maraming paglalabag sa limitasyon ng hiling"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Hindi wastong API key"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr ""
+msgstr "Makipag-ugnayan sa operator ng server para makakuha ng API key"
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "Bisitahin ang %(url)s para makakuha ng API key"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr ""
+msgstr "Slowdown:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -59,23 +64,25 @@ msgstr ""
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Hindi wastong hiling: nawawalang %(name)s na parameter"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
+"Hindi wastong hiling: lumalagpas ang hiling (%(size)s) ang limitasyon ng "
+"text (%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "Hindi sinusuportahan ang %(lang)s"
#: libretranslate/app.py:594
#, python-format
msgid "%(format)s format is not supported"
-msgstr ""
+msgstr "Hindi sinusuportahan ang %(format)s na format"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -83,31 +90,33 @@ msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
+"Ang %(tname)s (%(tcode)s) ay hindi available bilang target na wika galing sa "
+"%(sname)s (%(scode)s)"
#: libretranslate/app.py:647
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr ""
+msgstr "Hindi masalin ang text: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr ""
+msgstr "Ang pagsalin ng file ay naka-disable sa server na ito."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
-msgstr ""
+msgstr "Hindi wastong hiling: walang laman na file"
#: libretranslate/app.py:751
msgid "Invalid request: file format not supported"
-msgstr ""
+msgstr "Hindi wastong hiling: hindi sinusuportahan ang file format"
#: libretranslate/app.py:796
msgid "Invalid filename"
-msgstr ""
+msgstr "Hindi wastong filename"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
-msgstr ""
+msgstr "Naka-disable ang mga mungkahi sa server na ito."
#: libretranslate/locales/.langs.py:1
msgid "English"
@@ -231,11 +240,11 @@ msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Kunin ang listahan ng mga sinusuportahang wika"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Listahan ng mga wika"
#: libretranslate/locales/.swag.py:3
msgid "translate"
From 847235e33b63be361f1deb590da4ec99ddfaba77 Mon Sep 17 00:00:00 2001
From: Ilya
Date: Sat, 6 Apr 2024 14:13:44 +0000
Subject: [PATCH 056/332] Translated using Weblate (Persian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fa/
---
.../locales/fa/LC_MESSAGES/messages.po | 45 +++++++++----------
1 file changed, 22 insertions(+), 23 deletions(-)
diff --git a/libretranslate/locales/fa/LC_MESSAGES/messages.po b/libretranslate/locales/fa/LC_MESSAGES/messages.po
index 5d11894..c72663e 100644
--- a/libretranslate/locales/fa/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/fa/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-12-26 21:08+0000\n"
-"Last-Translator: Moji Norouzi zadeh \n"
+"PO-Revision-Date: 2024-04-07 09:57+0000\n"
+"Last-Translator: Ilya \n"
"Language-Team: Persian \n"
"Language: fa\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -62,14 +62,13 @@ msgstr "کاهش سرعت:"
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr "درخواست نامعتبر است: پارامتر %(name)s وجود ندارد"
+msgstr "درخواست نامعتبر: پارامتر %(name)s وجود ندارد"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"درخواست نامعتبر است: درخواست (%(size)s) از محدودیت متنی (%(limit)s) فراتر"
-" رفت"
+"درخواست نامعتبر: درخواست (%(size)s) از محدودیت متنی (%(limit)s) فراتر رفت"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
@@ -88,8 +87,8 @@ msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
-"(%(tcode)s) (%(tname)s) از (%(scode)s) (%(sname)s)بهعنوان یک زبان هدف در"
-" دسترس نیست"
+"(%(tcode)s) (%(tname)s) از (%(scode)s) (%(sname)s) به عنوان یک زبان هدف در "
+"دسترس نیست"
#: libretranslate/app.py:647
#, python-format
@@ -134,7 +133,7 @@ msgstr "چینی"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr "چکی"
+msgstr "(کشور) چک"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
@@ -198,7 +197,7 @@ msgstr "کرهای"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr "فارسی"
+msgstr "پارسی"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
@@ -304,7 +303,7 @@ msgid ""
msgstr ""
"فرمت متن منبع:\n"
"* text - متن ساده\n"
-"* html - کدهای اچ تی ام ال\n"
+"* html - حالت های html\n"
#: libretranslate/locales/.swag.py:17
msgid "API key"
@@ -340,15 +339,15 @@ msgstr "متن برای شناسایی"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
-msgstr "بازیابی تنظیمات ویژه نما"
+msgstr "بازیابی تنظیمات ظاهری ویژه"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
-msgstr "تنظیمات صفحه نما"
+msgstr "تنظیمات ظاهری"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr "صفحه نما"
+msgstr "نما ظاهری"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
@@ -356,7 +355,7 @@ msgstr "پیشنهادی برای بهبود ترجمه ثبت نمایید"
#: libretranslate/locales/.swag.py:29
msgid "Success"
-msgstr "موفقیتآمیز بود"
+msgstr "موفقیتآمیز"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
@@ -416,11 +415,11 @@ msgstr "ضریب اطمینان"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr "محدودیت کاراکتر برای این زبان (-1 یعنی بدون محدودیتت)"
+msgstr "محدودیت کاراکتر برای این زبان (-1 یعنی بدون محدودیت)"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr "محدودیت زمانی ترجمه برای صفحه نما"
+msgstr "محدودیت زمانی ترجمه برای نمای ظاهری"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
@@ -436,7 +435,7 @@ msgstr "اینکه (آیا) ارسال پیشنهادات ممکن است."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
-msgstr "قالب فایلهای پشتیبانی شده"
+msgstr "فرمت فایلهای پشتیبانی شده"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
@@ -491,7 +490,7 @@ msgstr ""
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
-msgstr "بر روی \"دریافت کلید API\" کلیک کنید."
+msgstr "بر روی لینک \"دریافت کلید API\" کلیک کنید."
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
@@ -529,7 +528,7 @@ msgstr "دریافت کلید API"
#: libretranslate/templates/index.html:69
msgid "GitHub"
-msgstr "گیتهاب"
+msgstr "گیتهاب"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
@@ -545,7 +544,7 @@ msgstr "ویرایش"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr "تغییر به حالت تیره / روشن"
+msgstr "تغییر به حالت تیره/روشن"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
@@ -647,13 +646,13 @@ msgid ""
"If you're going to run an application in production, please "
"%(host_server)s or %(get_api_key)s."
msgstr ""
-"این API عمومی باید برای آزمایش، کاربری شخصی یا اختصاصی است. اگر قرار است "
+"این API عمومی باید برای آزمایش، استفاده شخصی یا اختصاصی است. اگر قرار است "
"برنامهای که برای محصول است با آن اجرا کنید، لطفا %(host_server)s یا "
"%(get_api_key)s."
#: libretranslate/templates/index.html:340
msgid "host your own server"
-msgstr "سرور خود را میزبانی کنید"
+msgstr "در سرور خود میزبانی کنید"
#: libretranslate/templates/index.html:340
msgid "get an API key"
From a6e8ee4af0425313e9aa13851a1faaafb85c27cd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A1s=20Farkas?=
<68812986+Netesfiu@users.noreply.github.com>
Date: Wed, 17 Apr 2024 10:51:35 +0200
Subject: [PATCH 057/332] Mark hungarian a reviewed
I've just finished reviewing the strings. It should be usable at this state.
---
libretranslate/locales/hu/meta.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libretranslate/locales/hu/meta.json b/libretranslate/locales/hu/meta.json
index fd1996e..a7f59d9 100644
--- a/libretranslate/locales/hu/meta.json
+++ b/libretranslate/locales/hu/meta.json
@@ -1,4 +1,4 @@
{
"name": "Hungarian",
- "reviewed": false
-}
\ No newline at end of file
+ "reviewed": true
+}
From 1bc6a3061c28a8f45200eb5d2fa4e099b37c4cb7 Mon Sep 17 00:00:00 2001
From: Netesfiu
Date: Wed, 17 Apr 2024 07:40:35 +0000
Subject: [PATCH 058/332] Translated using Weblate (Hungarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hu/
---
.../locales/hu/LC_MESSAGES/messages.po | 140 +++++++++---------
1 file changed, 72 insertions(+), 68 deletions(-)
diff --git a/libretranslate/locales/hu/LC_MESSAGES/messages.po b/libretranslate/locales/hu/LC_MESSAGES/messages.po
index b773e35..72b55be 100644
--- a/libretranslate/locales/hu/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/hu/LC_MESSAGES/messages.po
@@ -9,15 +9,16 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-02-25 11:36+0000\n"
-"Last-Translator: ebela \n"
+"PO-Revision-Date: 2024-04-18 08:04+0000\n"
+"Last-Translator: Netesfiu \n"
+"Language-Team: Hungarian \n"
"Language: hu\n"
-"Language-Team: Hungarian "
-"\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 5.5-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -30,7 +31,7 @@ msgstr "Automatikus felismerés"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr "Nem engedélyezett"
+msgstr "Nincs jogosultsága"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
@@ -49,7 +50,7 @@ msgstr ""
#: libretranslate/app.py:278
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr "Látogatás %(url)s API kulcsot kapni"
+msgstr "Látogasson el a(z) %(url)s címre, API kulcshoz"
#: libretranslate/app.py:318
msgid "Slowdown:"
@@ -69,14 +70,14 @@ msgstr "Érvénytelen kérés: hiányzik a(z) %(name)s paraméter"
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"Érvénytelen kérés: kérés (%(size)s) meghaladja a szövegkorlátot "
+"Érvénytelen kérés: a kérés mérete (%(size)s) meghaladja a szövegkorlátot "
"(%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
#, python-format
msgid "%(lang)s is not supported"
-msgstr "%(lang)s nem támogatott"
+msgstr "%(lang)s nyelv nem támogatott"
#: libretranslate/app.py:594
#, python-format
@@ -99,7 +100,7 @@ msgstr "Nem fordítható szöveg: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr "Files fordítás letiltása ezen a szerveren."
+msgstr "Fájlok fordítása kikapcsolva ezen a szerveren."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
@@ -115,7 +116,7 @@ msgstr "Érvénytelen fájlnév"
#: libretranslate/app.py:1038
msgid "Suggestions are disabled on this server."
-msgstr "A javaslatok fogyatékkal élők ezen a szerveren."
+msgstr "A javaslatok kikapcsolva ezen a szerveren."
#: libretranslate/locales/.langs.py:1
msgid "English"
@@ -135,7 +136,7 @@ msgstr "Kínai"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr "Csehország"
+msgstr "Cseh"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
@@ -143,11 +144,11 @@ msgstr "Dán"
#: libretranslate/locales/.langs.py:7
msgid "Dutch"
-msgstr "Hollandia"
+msgstr "Holland"
#: libretranslate/locales/.langs.py:8
msgid "Esperanto"
-msgstr "Esperanto"
+msgstr "Eszperantó"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
@@ -183,7 +184,7 @@ msgstr "Indonéz"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr "Írország"
+msgstr "Ír"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
@@ -191,7 +192,7 @@ msgstr "Olasz"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr "Japán japán"
+msgstr "Japán"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
@@ -207,7 +208,7 @@ msgstr "Lengyel"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
-msgstr "Portugália"
+msgstr "Portugál"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
@@ -215,7 +216,7 @@ msgstr "Orosz"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr "Szlovákia"
+msgstr "Szlovák"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
@@ -223,7 +224,7 @@ msgstr "Spanyol"
#: libretranslate/locales/.langs.py:27
msgid "Swedish"
-msgstr "Svédország"
+msgstr "Svéd"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
@@ -239,7 +240,7 @@ msgstr "Vietnami"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr "A támogatott nyelvek újraindítása"
+msgstr "A támogatott nyelvek listájának lekérése"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
@@ -267,11 +268,11 @@ msgstr "Fordítási hiba"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr "Lassabb"
+msgstr "Lassabban"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr "Betiltott"
+msgstr "Tiltott"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
@@ -304,7 +305,7 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"Formátum forrás szöveg:\n"
-"* `text' - Plain szöveg\n"
+"* `text' - egyszerű szöveg\n"
"* `html' - HTML markup\n"
#: libretranslate/locales/.swag.py:17
@@ -325,7 +326,7 @@ msgstr "Fájl fordítása"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr "Védje meg egyetlen szöveg nyelvét"
+msgstr "A szöveg nyelvének észlelése"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
@@ -349,11 +350,11 @@ msgstr "frontend beállítások"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr "fénykép"
+msgstr "frontend"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr "Javaslatot nyújt be a fordítás javítására"
+msgstr "Küldjön javaslatot a fordítés javításához"
#: libretranslate/locales/.swag.py:29
msgid "Success"
@@ -405,7 +406,7 @@ msgstr "Hibaüzenet"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
-msgstr "Oka lassú le"
+msgstr "A lelassulás oka"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
@@ -413,7 +414,7 @@ msgstr "Fordított fájl url"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
-msgstr "Biztonsági érték"
+msgstr "Bizalmi érték"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
@@ -421,19 +422,19 @@ msgstr "Jellemző bemeneti határértéke ennek a nyelvnek (-1 nem jelzi a hatá
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
-msgstr "Frontend fordítási idő"
+msgstr "Frontend fordítás időtúllépés"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
-msgstr "Függetlenül attól, hogy az API kulcsfontosságú adatbázisa engedélyezett-e."
+msgstr "Függetlenül attól, hogy az API kulcs adatbázisa engedélyezett-e."
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
-msgstr "Függetlenül attól, hogy egy API kulcsra van szükség."
+msgstr "Szükséges-e API kulcs."
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
-msgstr "Akár javaslatok benyújtása engedélyezett."
+msgstr "Ha javaslatok benyújtásá engedélyezett."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
@@ -441,13 +442,13 @@ msgstr "Támogatott fájlformátum"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
-msgstr "Akár sikeres volt a benyújtás"
+msgstr "Amennyiben a beküldsé sikeres volt"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr "Másolás szöveg"
+msgstr "Szöveg másolása"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -458,7 +459,7 @@ msgstr "Másolás szöveg"
#: libretranslate/templates/app.js.template:479
#, python-format
msgid "Cannot load %(url)s"
-msgstr "Nem tölthet %(url)s"
+msgstr "Nem tölthető be a(z) %(url)s"
#: libretranslate/templates/app.js.template:264
#: libretranslate/templates/app.js.template:334
@@ -469,24 +470,25 @@ msgstr "Ismeretlen hiba"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr "Második"
+msgstr "Másolva"
#: libretranslate/templates/app.js.template:331
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-"Köszönöm a korrekciót. Ne feledje, hogy a javaslat nem fog azonnal "
+"Köszönöm a korrekciót. Vegye figyelembe, hogy a javaslata nem fog azonnal "
"hatályba lépni."
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
-msgstr "Nincsenek nyelvek. Helyesen telepítette a modelleket?"
+msgstr "Nincsenek elérhető nyelvek. Helyesen telepítette a modelleket?"
#: libretranslate/templates/app.js.template:522
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr "Típus az API kulcsodban. Ha szüksége van egy API kulcsra, %(instructions)s"
+msgstr ""
+"Írja be az API kulcsot. Ha szüksége van egy API kulcsra, %(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
@@ -499,7 +501,7 @@ msgstr "lépjen kapcsolatba a szerver-üzemeltetővel."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:336
msgid "Free and Open Source Machine Translation API"
-msgstr "Ingyenes és nyílt forráskódú gép fordítás API"
+msgstr "Ingyenes és nyílt forráskódú gépi fordító API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -507,8 +509,9 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Ingyenes és nyílt forráskódú gép fordítás API. Önálló, offline képes és "
-"könnyen telepíthető. Futtassa saját API szerverét néhány perc alatt."
+"Ingyenes és nyílt forráskódú gépi fordító API. Helyileg telepített, offline "
+"működő és könnyen telepíthető. Futtassa saját API szerverét néhány perc "
+"alatt."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -520,11 +523,11 @@ msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
-msgstr "API Docs"
+msgstr "API Dokumentáció"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
-msgstr "Szerezd meg az API-t Key"
+msgstr "Szerezzen API kucsot"
#: libretranslate/templates/index.html:69
msgid "GitHub"
@@ -532,11 +535,11 @@ msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
-msgstr "Állítsa be az API-t Key"
+msgstr "Állítsa be az API kulcsot"
#: libretranslate/templates/index.html:73
msgid "Change language"
-msgstr "Változási nyelv"
+msgstr "Nyelv módosítása"
#: libretranslate/templates/index.html:79
msgid "Edit"
@@ -544,51 +547,51 @@ msgstr "Szerkesztés"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr "Toggle sötét / fény mód"
+msgstr "Váltás sötét/világos módra"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
-msgstr "Elbocsátások"
+msgstr "elvetés"
#: libretranslate/templates/index.html:171
msgid "Translation API"
-msgstr "Fordítás API"
+msgstr "Fordító API"
#: libretranslate/templates/index.html:175
msgid "Translate Text"
-msgstr "Fordító szöveg"
+msgstr "Szöveg Fordítása"
#: libretranslate/templates/index.html:179
msgid "Translate Files"
-msgstr "Fordító fájlok"
+msgstr "File-ok fordítása"
#: libretranslate/templates/index.html:185
msgid "Translate from"
-msgstr "Fordítsd le"
+msgstr "Fordítási ürlap"
#: libretranslate/templates/index.html:195
msgid "Swap source and target languages"
-msgstr "Swap forrás és célnyelvek"
+msgstr "Forrás és célnyelv felcserélése"
#: libretranslate/templates/index.html:198
msgid "Translate into"
-msgstr "Fordítsd le"
+msgstr "Fordítsd le ebbe"
#: libretranslate/templates/index.html:210
msgid "Text to translate"
-msgstr "Fordítás szövege"
+msgstr "Fordítandó szöveg"
#: libretranslate/templates/index.html:213
msgid "Delete text"
-msgstr "Törlés szöveg"
+msgstr "szöveg törlése"
#: libretranslate/templates/index.html:226
msgid "Suggest translation"
-msgstr "Legjobb fordítás"
+msgstr "Javasolj fordítást"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr "Törlés"
+msgstr "mégse"
#: libretranslate/templates/index.html:233
msgid "Send"
@@ -604,7 +607,7 @@ msgstr "File"
#: libretranslate/templates/index.html:268
msgid "Remove file"
-msgstr "Távolítsa el a fájlt"
+msgstr "File eltávolítása"
#: libretranslate/templates/index.html:275
msgid "Translate"
@@ -629,7 +632,7 @@ msgstr "Nyilt Forráskódú Gépi Fordító API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr "Önmagát választotta. Offline Képes. Könnyű a beállításhoz."
+msgstr "Helyben futtatható, offline működő. Könnyen beállítható."
#: libretranslate/templates/index.html:335
msgid "LibreTranslate"
@@ -637,7 +640,7 @@ msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
msgid "License:"
-msgstr "Engedély:"
+msgstr "Licenc:"
#: libretranslate/templates/index.html:340
#, python-format
@@ -646,22 +649,24 @@ msgid ""
"If you're going to run an application in production, please "
"%(host_server)s or %(get_api_key)s."
msgstr ""
-"Ezt a nyilvános API-t tesztelésre, személyes vagy alkalmankénti "
-"használatra használhatod. Amennyiben az alkalmazásod éles környezetben "
-"fogod használni úgy használd a %(host_server)s-t vagy %(get_api_key)s-t."
+"Ezt a nyilvános API-t tesztelésre, személyes vagy alkalmi használatra "
+"használandó. Amennyiben az alkalmazásod éles környezetben fogod használni "
+"úgy használd a %(host_server)s-t vagy %(get_api_key)s-t."
#: libretranslate/templates/index.html:340
msgid "host your own server"
-msgstr "fogadja el saját szerverét"
+msgstr "Hosztold a saját szervered"
#: libretranslate/templates/index.html:340
msgid "get an API key"
-msgstr "kap egy API kulcsot"
+msgstr "API kulcs szerzése"
#: libretranslate/templates/index.html:348
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "Made with %(heart)s által %(contributors)s és erőteljes %(engine)s"
+msgstr ""
+"%(heart)s-el készítve. Közreműködtek %(contributors)s működtetve ezzel: "
+"%(engine)s"
#: libretranslate/templates/index.html:348
#, python-format
@@ -670,4 +675,3 @@ msgstr "%(libretranslate)s Közreműködők"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
-
From 79836663ecee8b1d4bb51e5af440a128a1be97ee Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=86=A1=EC=A7=84=ED=98=84?=
Date: Mon, 22 Apr 2024 01:04:36 +0900
Subject: [PATCH 059/332] update readme.md(add language List)
---
README.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git a/README.md b/README.md
index 441ced1..5b9cddd 100644
--- a/README.md
+++ b/README.md
@@ -38,6 +38,56 @@ Response:
}
```
+codeNameList:
+
+```javascript
+codeNameList = {
+ 'ar': 'Arabic',
+ 'az': 'Azerbaijani',
+ 'bg': 'Bulgarian',
+ 'bn': 'Bengali',
+ 'ca': 'Catalan',
+ 'cs': 'Czech',
+ 'da': 'Danish',
+ 'de': 'German',
+ 'el': 'Greek',
+ 'en': 'English',
+ 'eo': 'Esperanto',
+ 'es': 'Spanish',
+ 'et': 'Estonian',
+ 'fa': 'Persian',
+ 'fi': 'Finnish',
+ 'fr': 'French',
+ 'ga': 'Irish',
+ 'he': 'Hebrew',
+ 'hi': 'Hindi',
+ 'hu': 'Hungarian',
+ 'id': 'Indonesian',
+ 'it': 'Italian',
+ 'ja': 'Japanese',
+ 'ko': 'Korean',
+ 'lt': 'Lithuanian',
+ 'lv': 'Latvian',
+ 'ms': 'Malay',
+ 'nb': 'Norwegian',
+ 'nl': 'Dutch',
+ 'pl': 'Polish',
+ 'pt': 'Portuguese',
+ 'ro': 'Romanian',
+ 'ru': 'Russian',
+ 'sk': 'Slovak',
+ 'sl': 'Slovenian',
+ 'sq': 'Albanian',
+ 'sv': 'Swedish',
+ 'th': 'Thai',
+ 'tl': 'Tagalog',
+ 'tr': 'Turkish',
+ 'uk': 'Ukranian',
+ 'ur': 'Urdu',
+ 'zh': 'Chinese',
+ 'zt': 'Chinese (traditional)'
+}
+```
### Auto Detect Language
Request:
From df78c333c90a526f5965573a06d2a5adf3c520e3 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Sun, 21 Apr 2024 12:20:01 -0400
Subject: [PATCH 060/332] Update README.md
---
README.md | 50 +-------------------------------------------------
1 file changed, 1 insertion(+), 49 deletions(-)
diff --git a/README.md b/README.md
index 5b9cddd..b62f81c 100644
--- a/README.md
+++ b/README.md
@@ -38,56 +38,8 @@ Response:
}
```
-codeNameList:
+List of language codes: https://libretranslate.com/languages
-```javascript
-codeNameList = {
- 'ar': 'Arabic',
- 'az': 'Azerbaijani',
- 'bg': 'Bulgarian',
- 'bn': 'Bengali',
- 'ca': 'Catalan',
- 'cs': 'Czech',
- 'da': 'Danish',
- 'de': 'German',
- 'el': 'Greek',
- 'en': 'English',
- 'eo': 'Esperanto',
- 'es': 'Spanish',
- 'et': 'Estonian',
- 'fa': 'Persian',
- 'fi': 'Finnish',
- 'fr': 'French',
- 'ga': 'Irish',
- 'he': 'Hebrew',
- 'hi': 'Hindi',
- 'hu': 'Hungarian',
- 'id': 'Indonesian',
- 'it': 'Italian',
- 'ja': 'Japanese',
- 'ko': 'Korean',
- 'lt': 'Lithuanian',
- 'lv': 'Latvian',
- 'ms': 'Malay',
- 'nb': 'Norwegian',
- 'nl': 'Dutch',
- 'pl': 'Polish',
- 'pt': 'Portuguese',
- 'ro': 'Romanian',
- 'ru': 'Russian',
- 'sk': 'Slovak',
- 'sl': 'Slovenian',
- 'sq': 'Albanian',
- 'sv': 'Swedish',
- 'th': 'Thai',
- 'tl': 'Tagalog',
- 'tr': 'Turkish',
- 'uk': 'Ukranian',
- 'ur': 'Urdu',
- 'zh': 'Chinese',
- 'zt': 'Chinese (traditional)'
-}
-```
### Auto Detect Language
Request:
From 0a83fd29bd09a1d8804e9b89dc54acb1d4526a66 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 22 Apr 2024 13:13:47 -0400
Subject: [PATCH 061/332] Include mo files
---
pyproject.toml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/pyproject.toml b/pyproject.toml
index d6717d8..7e2c4a5 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -81,6 +81,8 @@ Documentation = "https://github.com/LibreTranslate/LibreTranslate"
Tracker = "https://github.com/LibreTranslate/LibreTranslate/issues"
History = "https://github.com/LibreTranslate/LibreTranslate/releases"
+[tool.hatch.build]
+artifacts = ["*.mo"]
# ENVIRONMENTS AND SCRIPTS
[tool.hatch.envs.default]
From a403ba7e3a5b288f2a2489a5750b0c49197b1952 Mon Sep 17 00:00:00 2001
From: Peter Dave Hello
Date: Mon, 22 Apr 2024 19:48:55 +0000
Subject: [PATCH 062/332] Translated using Weblate (Chinese (Traditional))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
---
libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
index f8ddc5c..287be7b 100644
--- a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-01-06 17:52-0500\n"
-"PO-Revision-Date: 2024-03-28 21:01+0000\n"
-"Last-Translator: I Just Me \n"
+"PO-Revision-Date: 2024-04-23 20:07+0000\n"
+"Last-Translator: Peter Dave Hello \n"
"Language-Team: Chinese (Traditional) \n"
"Language: zh_Hant\n"
@@ -320,7 +320,7 @@ msgstr "需要翻譯的檔案"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
-msgstr "检测单一案文的措辞"
+msgstr "檢測單一文字的語言"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
From f1195d9d1314c0a95e25f213ecfc9ea3cf7981aa Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Sun, 28 Apr 2024 11:50:36 -0400
Subject: [PATCH 063/332] Bump version
---
VERSION | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/VERSION b/VERSION
index eac1e0a..f01291b 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.5.6
+1.5.7
From c8360d03595c30fcc36e272a3c9dee4c53d2419f Mon Sep 17 00:00:00 2001
From: "P.J. Finlay"
Date: Mon, 29 Apr 2024 12:58:32 -0500
Subject: [PATCH 064/332] Update Argos Translate to v1.9.4
This fixes an issue in SentencePiece where the packaging is broken for newer versions of Python.
https://github.com/argosopentech/argos-translate/issues/405
---
pyproject.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyproject.toml b/pyproject.toml
index 7e2c4a5..a695f1f 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -33,7 +33,7 @@ classifiers = [
dynamic = ["version"]
dependencies = [
- "argostranslate ==1.9.1",
+ "argostranslate ==1.9.4",
"Flask ==2.2.5",
"flask-swagger ==0.2.14",
"flask-swagger-ui ==4.11.1",
From 9dde1e0142241b4fc5703887654021ad5aac3323 Mon Sep 17 00:00:00 2001
From: "P.J. Finlay"
Date: Tue, 30 Apr 2024 16:46:20 -0500
Subject: [PATCH 065/332] Upgrade to Argos Translate v1.9.6
- Upgrade CTranslate2 to v4 for CUDA 12 support (https://github.com/argosopentech/argos-translate/pull/404)
- Fix deprecation error for CTranslate2 TranslationResult (https://github.com/argosopentech/argos-translate/pull/404)
---
pyproject.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyproject.toml b/pyproject.toml
index a695f1f..ef8a84c 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -33,7 +33,7 @@ classifiers = [
dynamic = ["version"]
dependencies = [
- "argostranslate ==1.9.4",
+ "argostranslate ==1.9.6",
"Flask ==2.2.5",
"flask-swagger ==0.2.14",
"flask-swagger-ui ==4.11.1",
From 7722984df57c847d7f5b2a02012f57da70a6bbde Mon Sep 17 00:00:00 2001
From: Peter Dave Hello
Date: Wed, 1 May 2024 17:57:27 +0800
Subject: [PATCH 066/332] Update Dockerfile base image to Python v3.11.9
---
docker/Dockerfile | 4 ++--
docker/arm.Dockerfile | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index a785bed..08cf090 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -1,4 +1,4 @@
-FROM python:3.10.10-slim-bullseye as builder
+FROM python:3.11.9-slim-bullseye as builder
WORKDIR /app
@@ -19,7 +19,7 @@ RUN ./venv/bin/pip install Babel==2.12.1 && ./venv/bin/python scripts/compile_lo
&& ./venv/bin/pip install . \
&& ./venv/bin/pip cache purge
-FROM python:3.10.10-slim-bullseye
+FROM python:3.11.9-slim-bullseye
ARG with_models=false
ARG models=""
diff --git a/docker/arm.Dockerfile b/docker/arm.Dockerfile
index 8a6831e..2d7eb99 100644
--- a/docker/arm.Dockerfile
+++ b/docker/arm.Dockerfile
@@ -1,4 +1,4 @@
-FROM arm64v8/python:3.10.10-slim-bullseye as builder
+FROM arm64v8/python:3.11.9-slim-bullseye as builder
WORKDIR /app
@@ -19,7 +19,7 @@ RUN ./venv/bin/pip install Babel==2.12.1 && ./venv/bin/python scripts/compile_lo
&& ./venv/bin/pip install . \
&& ./venv/bin/pip cache purge
-FROM arm64v8/python:3.10.10-slim-bullseye
+FROM arm64v8/python:3.11.9-slim-bullseye
ARG with_models=false
ARG models=""
From 16ae59aa438028ce4d6b43c03654b158718b7291 Mon Sep 17 00:00:00 2001
From: Savion Lee <9041739+savionlee@users.noreply.github.com>
Date: Mon, 6 May 2024 14:06:40 -0500
Subject: [PATCH 067/332] Update cuda.Dockerfile to CUDA 12
---
docker/cuda.Dockerfile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile
index a9d44ae..7fa877d 100644
--- a/docker/cuda.Dockerfile
+++ b/docker/cuda.Dockerfile
@@ -1,4 +1,4 @@
-FROM nvidia/cuda:11.2.2-devel-ubuntu20.04
+FROM nvidia/cuda:12.4.1-devel-ubuntu20.04
ENV ARGOS_DEVICE_TYPE cuda
ARG with_models=false
From ba8b8d97a118a27d3556af521003edb1f5b96540 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 3 Jun 2024 12:42:32 -0400
Subject: [PATCH 068/332] Feat: support for alternative translations
---
VERSION | 2 +-
libretranslate/app.py | 81 +++++++++++++++---------
libretranslate/default_values.py | 5 ++
libretranslate/main.py | 7 ++
libretranslate/templates/app.js.template | 2 +
5 files changed, 66 insertions(+), 31 deletions(-)
diff --git a/VERSION b/VERSION
index f01291b..dc1e644 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.5.7
+1.6.0
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 74d53c8..72077f8 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -148,6 +148,10 @@ def get_routes_limits(args, api_keys_db):
return res
+def unique_list(seq):
+ seen = set()
+ seen_add = seen.add
+ return [x for x in seq if not (x in seen or seen_add(x))]
def create_app(args):
from libretranslate.init import boot
@@ -496,6 +500,14 @@ def create_app(args):
Format of source text:
* `text` - Plain text
* `html` - HTML markup
+ - in: formData
+ name: alternatives
+ schema:
+ type: integer
+ default: 0
+ example: 3
+ required: false
+ description: Preferred number of alternative translations
- in: formData
name: api_key
schema:
@@ -558,11 +570,13 @@ def create_app(args):
source_lang = json.get("source")
target_lang = json.get("target")
text_format = json.get("format")
+ num_alternatives = int(json.get("alternatives", 0))
else:
q = request.values.get("q")
source_lang = request.values.get("source")
target_lang = request.values.get("target")
text_format = request.values.get("format")
+ num_alternatives = request.values.get("alternatives", 0)
if not q:
abort(400, description=_("Invalid request: missing %(name)s parameter", name='q'))
@@ -570,6 +584,14 @@ def create_app(args):
abort(400, description=_("Invalid request: missing %(name)s parameter", name='source'))
if not target_lang:
abort(400, description=_("Invalid request: missing %(name)s parameter", name='target'))
+
+ try:
+ num_alternatives = max(0, int(num_alternatives))
+ except ValueError:
+ abort(400, description=_("Invalid request: %(name)s parameter is not a number", name='alternatives'))
+
+ if args.alternatives_limit != -1 and num_alternatives > args.alternatives_limit:
+ abort(400, description=_("Invalid request: %(name)s parameter must be <= %(value)s", name='alternatives', value=args.alternatives_limit))
if not request.is_json:
# Normalize line endings to UNIX style (LF) only so we can consistently
@@ -626,54 +648,53 @@ def create_app(args):
try:
if batch:
- results = []
+ batch_results = []
+ batch_alternatives = []
for text in q:
translator = src_lang.get_translation(tgt_lang)
if translator is None:
abort(400, description=_("%(tname)s (%(tcode)s) is not available as a target language from %(sname)s (%(scode)s)", tname=_lazy(tgt_lang.name), tcode=tgt_lang.code, sname=_lazy(src_lang.name), scode=src_lang.code))
if text_format == "html":
- translated_text = str(translate_html(translator, text))
+ translated_text = unescape(str(translate_html(translator, text)))
+ alternatives = [] # Not supported for html yet
else:
- translated_text = improve_translation_formatting(text, translator.translate(text))
+ hypotheses = translator.hypotheses(text, num_alternatives + 1)
+ translated_text = unescape(improve_translation_formatting(text, hypotheses[0].value))
+ alternatives = unique_list([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))])
+
+ batch_results.append(translated_text)
+ batch_alternatives.append(alternatives)
+
+ result = {"translatedText": batch_results}
- results.append(unescape(translated_text))
if source_lang == "auto":
- return jsonify(
- {
- "translatedText": results,
- "detectedLanguage": [detected_src_lang] * len(q)
- }
- )
- else:
- return jsonify(
- {
- "translatedText": results
- }
- )
+ result["detectedLanguage"] = [detected_src_lang] * len(q)
+ if num_alternatives > 0:
+ result["alternatives"] = batch_alternatives
+
+ return jsonify(result)
else:
translator = src_lang.get_translation(tgt_lang)
if translator is None:
abort(400, description=_("%(tname)s (%(tcode)s) is not available as a target language from %(sname)s (%(scode)s)", tname=_lazy(tgt_lang.name), tcode=tgt_lang.code, sname=_lazy(src_lang.name), scode=src_lang.code))
if text_format == "html":
- translated_text = str(translate_html(translator, q))
+ translated_text = unescape(str(translate_html(translator, q)))
+ alternatives = [] # Not supported for html yet
else:
- translated_text = improve_translation_formatting(q, translator.translate(q))
+ hypotheses = translator.hypotheses(q, num_alternatives + 1)
+ translated_text = unescape(improve_translation_formatting(q, hypotheses[0].value))
+ alternatives = unique_list([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))])
+
+ result = {"translatedText": translated_text}
if source_lang == "auto":
- return jsonify(
- {
- "translatedText": unescape(translated_text),
- "detectedLanguage": detected_src_lang
- }
- )
- else:
- return jsonify(
- {
- "translatedText": unescape(translated_text)
- }
- )
+ result["detectedLanguage"] = detected_src_lang
+ if num_alternatives > 0:
+ result["alternatives"] = alternatives
+
+ return jsonify(result)
except Exception as e:
raise e
abort(500, description=_("Cannot translate text: %(text)s", text=str(e)))
diff --git a/libretranslate/default_values.py b/libretranslate/default_values.py
index b93cd76..2231a70 100644
--- a/libretranslate/default_values.py
+++ b/libretranslate/default_values.py
@@ -161,6 +161,11 @@ _default_options_objects = [
'default_value': None,
'value_type': 'str'
},
+ {
+ 'name': 'ALTERNATIVES_LIMIT',
+ 'default_value': -1,
+ 'value_type': 'int'
+ },
{
'name': 'THREADS',
'default_value': 4,
diff --git a/libretranslate/main.py b/libretranslate/main.py
index 6866a55..a342710 100644
--- a/libretranslate/main.py
+++ b/libretranslate/main.py
@@ -161,6 +161,13 @@ def get_args():
metavar="",
help="Set available languages (ar,de,en,es,fr,ga,hi,it,ja,ko,pt,ru,zh)",
)
+ parser.add_argument(
+ "--alternatives-limit",
+ default=DEFARGS['ALTERNATIVES_LIMIT'],
+ type=int,
+ metavar="",
+ help="Set the maximum number of supported alternative translations (%(default)s)",
+ )
parser.add_argument(
"--threads",
default=DEFARGS['THREADS'],
diff --git a/libretranslate/templates/app.js.template b/libretranslate/templates/app.js.template
index 6377724..7727451 100644
--- a/libretranslate/templates/app.js.template
+++ b/libretranslate/templates/app.js.template
@@ -134,6 +134,7 @@ document.addEventListener('DOMContentLoaded', function(){
' source: ' + this.$options.filters.escape(this.sourceLang) + ',',
' target: ' + this.$options.filters.escape(this.targetLang) + ',',
' format: "' + (this.isHtml ? "html" : "text") + '",',
+ ' alternatives: 3,',
' api_key: "' + (localStorage.getItem("api_key") || "") + '"',
' }),',
' headers: { "Content-Type": "application/json" }',
@@ -241,6 +242,7 @@ document.addEventListener('DOMContentLoaded', function(){
data.append("source", self.sourceLang);
data.append("target", self.targetLang);
data.append("format", self.isHtml ? "html" : "text");
+ data.append("alternatives", 3);
data.append("api_key", localStorage.getItem("api_key") || "");
if (self.apiSecret) data.append("secret", self.apiSecret);
From 86d15118ca948acfb0a1f89938c1b2dc34394c9b Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 3 Jun 2024 12:55:35 -0400
Subject: [PATCH 069/332] Fix indendation
---
libretranslate/app.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 72077f8..8a2b3d0 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -586,12 +586,12 @@ def create_app(args):
abort(400, description=_("Invalid request: missing %(name)s parameter", name='target'))
try:
- num_alternatives = max(0, int(num_alternatives))
+ num_alternatives = max(0, int(num_alternatives))
except ValueError:
- abort(400, description=_("Invalid request: %(name)s parameter is not a number", name='alternatives'))
+ abort(400, description=_("Invalid request: %(name)s parameter is not a number", name='alternatives'))
if args.alternatives_limit != -1 and num_alternatives > args.alternatives_limit:
- abort(400, description=_("Invalid request: %(name)s parameter must be <= %(value)s", name='alternatives', value=args.alternatives_limit))
+ abort(400, description=_("Invalid request: %(name)s parameter must be <= %(value)s", name='alternatives', value=args.alternatives_limit))
if not request.is_json:
# Normalize line endings to UNIX style (LF) only so we can consistently
From cb6b324478e4c456dee86c39d5c6a9dc31ee8247 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 3 Jun 2024 13:08:16 -0400
Subject: [PATCH 070/332] Update README.md
---
README.md | 34 +++++++++++++++++++++++++++++++++-
1 file changed, 33 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index b62f81c..11ae2d8 100644
--- a/README.md
+++ b/README.md
@@ -70,7 +70,7 @@ Response:
}
```
-### HTML (beta)
+### HTML
Request:
@@ -97,6 +97,38 @@ Response:
}
```
+### Alternative Translations
+
+Request:
+
+```javascript
+const res = await fetch("https://libretranslate.com/translate", {
+ method: "POST",
+ body: JSON.stringify({
+ q: "Hello",
+ source: "en",
+ target: "it",
+ format: "text",
+ alternatives: 3
+ }),
+ headers: { "Content-Type": "application/json" }
+});
+
+console.log(await res.json());
+```
+
+Response:
+
+```javascript
+{
+ "alternatives": [
+ "Salve",
+ "Pronto"
+ ],
+ "translatedText": "Ciao"
+}
+```
+
## Install and Run
You can run your own API server with just a few lines of setup!
From df3680c280bc727f0848381597b73bbe56258366 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 3 Jun 2024 13:11:42 -0400
Subject: [PATCH 071/332] Fix alternatives unique comparison
---
libretranslate/app.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 8a2b3d0..59c05f7 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -148,8 +148,8 @@ def get_routes_limits(args, api_keys_db):
return res
-def unique_list(seq):
- seen = set()
+def unique_list(seq, extra):
+ seen = set({extra})
seen_add = seen.add
return [x for x in seq if not (x in seen or seen_add(x))]
@@ -661,7 +661,7 @@ def create_app(args):
else:
hypotheses = translator.hypotheses(text, num_alternatives + 1)
translated_text = unescape(improve_translation_formatting(text, hypotheses[0].value))
- alternatives = unique_list([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))])
+ alternatives = unique_list([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
batch_results.append(translated_text)
batch_alternatives.append(alternatives)
@@ -685,7 +685,7 @@ def create_app(args):
else:
hypotheses = translator.hypotheses(q, num_alternatives + 1)
translated_text = unescape(improve_translation_formatting(q, hypotheses[0].value))
- alternatives = unique_list([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))])
+ alternatives = unique_list([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
result = {"translatedText": translated_text}
From f0fb4218e7a5bfe7e03c81e251601e7c534c5c50 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 3 Jun 2024 13:11:59 -0400
Subject: [PATCH 072/332] Bump version
---
VERSION | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/VERSION b/VERSION
index dc1e644..9c6d629 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.6.0
+1.6.1
From 8bbda1949dee085639b0ab450d8eac14a6c2d0ad Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Mon, 3 Jun 2024 13:20:48 -0400
Subject: [PATCH 073/332] Filter empty strings
---
libretranslate/app.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 59c05f7..c95700d 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -148,8 +148,8 @@ def get_routes_limits(args, api_keys_db):
return res
-def unique_list(seq, extra):
- seen = set({extra})
+def filter_unique(seq, extra):
+ seen = set({extra, ""})
seen_add = seen.add
return [x for x in seq if not (x in seen or seen_add(x))]
@@ -661,7 +661,7 @@ def create_app(args):
else:
hypotheses = translator.hypotheses(text, num_alternatives + 1)
translated_text = unescape(improve_translation_formatting(text, hypotheses[0].value))
- alternatives = unique_list([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
+ alternatives = filter_unique([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
batch_results.append(translated_text)
batch_alternatives.append(alternatives)
@@ -685,7 +685,7 @@ def create_app(args):
else:
hypotheses = translator.hypotheses(q, num_alternatives + 1)
translated_text = unescape(improve_translation_formatting(q, hypotheses[0].value))
- alternatives = unique_list([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
+ alternatives = filter_unique([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
result = {"translatedText": translated_text}
From d530b628d0e44b167b8cc525f14f0d9818b77cf8 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Fri, 7 Jun 2024 11:17:45 -0400
Subject: [PATCH 074/332] Update issue-triage.yml
---
.github/workflows/issue-triage.yml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/issue-triage.yml b/.github/workflows/issue-triage.yml
index 47856ba..c8344a3 100644
--- a/.github/workflows/issue-triage.yml
+++ b/.github/workflows/issue-triage.yml
@@ -19,12 +19,13 @@ jobs:
- Q: "A question about using a software or seeking guidance on doing something?"
- B: "Reporting an issue, an exception, a stack trace, or a software bug?"
- T: "Reporting a problem with an inaccurate, awkward or erroneous translation?"
- - E: "Contains a suggestion for an improvement or a feature request?"
+ - E: "Reporting about some missing feature or functionality?"
- SC: "Describes an issue related to compiling or building source code?"
logic: |
- "Q and (not B) and (not E) and (not SC)": [comment: "Could we move this conversation over to the forum at https://community.libretranslate.com? :pray: The forum is the right place to ask questions (we try to keep the GitHub issue tracker for feature requests and bugs only). Thank you! :+1:", close: true, stop: true]
- "B and (not T) and (not E) and (not SC)": [label: "possible bug", stop: true]
- - "T or E": [label: "enhancement", stop: true]
+ - "T and (not E)": [label: "model improvement", stop: true]
+ - "E": [label: "enhancement", stop: true]
- "SC": [label: "possible bug"]
signature: "p.s. I'm just an automated script, not a human being."
From e237d063496dc698ad28623cf39cc80709600aeb Mon Sep 17 00:00:00 2001
From: Wahyu Hamdani
Date: Sat, 8 Jun 2024 04:20:44 +0000
Subject: [PATCH 075/332] Translated using Weblate (Indonesian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/id/
---
.../locales/id/LC_MESSAGES/messages.po | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/libretranslate/locales/id/LC_MESSAGES/messages.po b/libretranslate/locales/id/LC_MESSAGES/messages.po
index 1ff87bb..3af983c 100644
--- a/libretranslate/locales/id/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/id/LC_MESSAGES/messages.po
@@ -9,24 +9,25 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-09-06 11:02+0000\n"
-"Last-Translator: Reza Almanda \n"
+"PO-Revision-Date: 2024-06-08 12:27+0000\n"
+"Last-Translator: Wahyu Hamdani \n"
+"Language-Team: Indonesian \n"
"Language: id\n"
-"Language-Team: Indonesian "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.6-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr "Format JSON tidak valid"
+msgstr "Format JSON tidak sah"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr "Deteksi Otomatis"
+msgstr "Mendeteksi Otomatis"
#: libretranslate/app.py:232
msgid "Unauthorized"
@@ -669,4 +670,3 @@ msgstr "Kontributor %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
-
From 4088b271eee80d17b352a9a549ed520d00aec8a8 Mon Sep 17 00:00:00 2001
From: Luna
Date: Sat, 8 Jun 2024 16:42:35 +0000
Subject: [PATCH 076/332] Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
---
.../locales/da/LC_MESSAGES/messages.po | 39 +++++++++----------
1 file changed, 19 insertions(+), 20 deletions(-)
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 21e9b31..51abcb5 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-03-25 12:01+0000\n"
-"Last-Translator: cat <158170307+cultcats@users.noreply.github.com>\n"
+"PO-Revision-Date: 2024-06-09 17:09+0000\n"
+"Last-Translator: Luna \n"
"Language-Team: Danish \n"
"Language: da\n"
@@ -18,16 +18,16 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.5-dev\n"
+"X-Generator: Weblate 5.6-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr "Ugyldig JSON format"
+msgstr "Ugyldigt JSON-format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr "Auto detektor"
+msgstr "Auto-registrer"
#: libretranslate/app.py:232
msgid "Unauthorized"
@@ -52,7 +52,7 @@ msgstr "Besøg %(url)s for at få en API-nøgle"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr "Nedbremsning:"
+msgstr "Nedsættelse:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -80,7 +80,7 @@ msgstr "%(lang)s understøttes ikke"
#: libretranslate/app.py:594
#, python-format
msgid "%(format)s format is not supported"
-msgstr "%(format)s format understøttes ikke"
+msgstr "%(format)s-format understøttes ikke"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -98,7 +98,7 @@ msgstr "Kan ikke oversætte tekst: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
msgid "Files translation are disabled on this server."
-msgstr "File oversættelse er deaktiveret på denne server."
+msgstr "Oversættelse af filer er deaktiveret på denne server."
#: libretranslate/app.py:748
msgid "Invalid request: empty file"
@@ -278,7 +278,7 @@ msgstr "Hej verden!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr "Tekst(er) til oversættelse"
+msgstr "Tekst(er) at oversætte"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
@@ -303,8 +303,8 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"Format af kildetekst:\n"
-"* 'tekst' - almindelig tekst\n"
-"* `html' - HTML-markup\n"
+" * `tekst` - Almindelig tekst\n"
+" * `html` - HTML-markup\n"
#: libretranslate/locales/.swag.py:17
msgid "API key"
@@ -336,7 +336,7 @@ msgstr "Registreringsfejl"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
-msgstr "Tekst at finde"
+msgstr "Tekst at registrere"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
@@ -344,11 +344,11 @@ msgstr "Hent frontend-specifikke indstillinger"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
-msgstr "frontend indstillinger"
+msgstr "frontend-indstillinger"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
-msgstr "grænseflade"
+msgstr "frontend"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
@@ -408,7 +408,7 @@ msgstr "Årsag til nedbremsning"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
-msgstr "Oversat fil-url"
+msgstr "Oversat fil-URL"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
@@ -446,7 +446,7 @@ msgstr "Om indsendelse var vellykket"
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr "Kopier tekst"
+msgstr "Kopiér tekst"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -475,8 +475,7 @@ msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-"Tak for din rettelse. Bemærk, at forslaget ikke vil træde i kraft med det "
-"samme."
+"Tak for din rettelse. Bemærk, at forslaget ikke træder i kraft med det samme."
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
@@ -520,7 +519,7 @@ msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
-msgstr "API Docs"
+msgstr "API-dokumenter"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
@@ -588,7 +587,7 @@ msgstr "Foreslå oversættelse"
#: libretranslate/templates/index.html:230
msgid "Cancel"
-msgstr "annullere"
+msgstr "Annuller"
#: libretranslate/templates/index.html:233
msgid "Send"
From 11ba0ffafc4717b0031aef2640de13b287cb74b9 Mon Sep 17 00:00:00 2001
From: lotigara <105482918+lotigara@users.noreply.github.com>
Date: Fri, 14 Jun 2024 14:33:12 +0300
Subject: [PATCH 077/332] Add a customized LibreTranslate instance to the
README.md
---
README.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/README.md b/README.md
index 11ae2d8..d87e2a5 100644
--- a/README.md
+++ b/README.md
@@ -419,6 +419,7 @@ URL |API Key Required | Links
[translate.terraprint.co](https://translate.terraprint.co/)|-
[trans.zillyhuhn.com](https://trans.zillyhuhn.com/)|-
[libretranslate.eownerdead.dedyn.io](https://libretranslate.eownerdead.dedyn.io)|-
+[translate.lotigara.ru](https://translate.lotigara.ru)|-
## TOR/i2p Mirrors
From d8ff2de3c3744e643fd114b1daee03e5db01cc40 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?D=C6=B0=C6=A1ng=20Nguy=E1=BB=85n=20V=C3=B5=20Qu=E1=BB=91c?=
Date: Fri, 14 Jun 2024 16:11:35 +0000
Subject: [PATCH 078/332] Translated using Weblate (Vietnamese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/vi/
---
.../locales/vi/LC_MESSAGES/messages.po | 49 ++++++++++---------
1 file changed, 25 insertions(+), 24 deletions(-)
diff --git a/libretranslate/locales/vi/LC_MESSAGES/messages.po b/libretranslate/locales/vi/LC_MESSAGES/messages.po
index a469bc4..350e7c4 100644
--- a/libretranslate/locales/vi/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/vi/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-12-16 08:07+0000\n"
-"Last-Translator: tuanta \n"
+"PO-Revision-Date: 2024-06-14 16:33+0000\n"
+"Last-Translator: Dương Nguyễn Võ Quốc \n"
"Language-Team: Vietnamese \n"
"Language: vi\n"
@@ -18,12 +18,12 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.3\n"
+"X-Generator: Weblate 5.6-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
msgid "Invalid JSON format"
-msgstr "Định dạng JSON không hợp lệ"
+msgstr "Không đúng định dạng dữ liệu JSON"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
@@ -31,7 +31,7 @@ msgstr "Tự động phát hiện"
#: libretranslate/app.py:232
msgid "Unauthorized"
-msgstr "Không được phép"
+msgstr "Truy cập không hợp lệ."
#: libretranslate/app.py:250
msgid "Too many request limits violations"
@@ -181,7 +181,7 @@ msgstr "Indonesia"
#: libretranslate/locales/.langs.py:17
msgid "Irish"
-msgstr "Ireland"
+msgstr "irish"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
@@ -225,7 +225,7 @@ msgstr "Thụy Điển"
#: libretranslate/locales/.langs.py:28
msgid "Turkish"
-msgstr "Thổ"
+msgstr "Thổ nhỉ kỳ"
#: libretranslate/locales/.langs.py:29
msgid "Ukranian"
@@ -233,7 +233,7 @@ msgstr "Ukraina"
#: libretranslate/locales/.langs.py:30
msgid "Vietnamese"
-msgstr "Việt Nam"
+msgstr "Tiếng Việt"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -249,11 +249,11 @@ msgstr "dịch"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr "Dịch ngôn ngữ sang ngôn ngữ khác"
+msgstr "Dịch từ sang một ngôn ngữ khác"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
-msgstr "Văn bản dịch"
+msgstr "Văn bản đã dịch"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
@@ -277,7 +277,7 @@ msgstr "Xin chào thế giới!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr "Chữ để dịch"
+msgstr "(Các) văn bản cần dịch"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
@@ -387,7 +387,7 @@ msgstr "Mã ngôn ngữ"
#: libretranslate/locales/.swag.py:37
msgid "Human-readable language name (in English)"
-msgstr "Tên ngôn ngữ (để người đọc)"
+msgstr "Tên ngôn ngữ con người có thể đọc được (bằng tiếng Anh)"
#: libretranslate/locales/.swag.py:38
msgid "Supported target language codes"
@@ -395,7 +395,7 @@ msgstr "Các mã ngôn ngữ đích được hỗ trợ"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
-msgstr "Chữ đã dịch"
+msgstr "(Các) văn bản đã dịch"
#: libretranslate/locales/.swag.py:40
msgid "Error message"
@@ -445,7 +445,7 @@ msgstr "Đã gửi thành công hay chưa"
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
msgid "Copy text"
-msgstr "Copy chữ"
+msgstr "Sao chép chữ"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
@@ -467,7 +467,7 @@ msgstr "Lỗi không rõ"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr "Đã copy"
+msgstr "Đã sao chép"
#: libretranslate/templates/app.js.template:331
msgid ""
@@ -477,7 +477,8 @@ msgstr "Cảm ơn đã sửa. Lưu ý đề xuất sẽ không có tác dụng n
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
-msgstr "Không có ngôn ngữ nào. Bạn đã cài đặt các bản mẫu (model) đúng chưa?"
+msgstr ""
+"Không có ngôn ngữ có sẵn. Bạn đã cài đặt các mô hình một cách chính xác?"
#: libretranslate/templates/app.js.template:522
#, python-format
@@ -486,7 +487,7 @@ msgstr "Nhập mã API của bạn. Nếu bạn cần lấy mã API, %(instructi
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
-msgstr "nhấn liên kết \"Lấy khóa\"."
+msgstr "nhấn liên kết \"Lấy mã API\"."
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
@@ -504,8 +505,8 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline capable "
"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"API dịch thuật máy miễn phí và nguồn mở. Tự host, có thể sử dụng offline và "
-"dễ cài đặt. Tự chạy máy chủ API của bạn chỉ trong vài phút."
+"API dịch thuật máy miễn phí và nguồn mở. Tự lưu trữ, có thể sử dụng ngoại "
+"tuyến và dễ cài đặt. Tự chạy máy chủ API của bạn chỉ trong vài phút."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -553,7 +554,7 @@ msgstr "API dịch"
#: libretranslate/templates/index.html:175
msgid "Translate Text"
-msgstr "Chữ được dịch"
+msgstr "Dịch văn bản"
#: libretranslate/templates/index.html:179
msgid "Translate Files"
@@ -565,7 +566,7 @@ msgstr "Dịch từ"
#: libretranslate/templates/index.html:195
msgid "Swap source and target languages"
-msgstr "Đổi ngôn ngữ nguồn và đích"
+msgstr "Hoán đổi ngôn ngữ nguồn và đích"
#: libretranslate/templates/index.html:198
msgid "Translate into"
@@ -644,12 +645,12 @@ msgid ""
"%(get_api_key)s."
msgstr ""
"API công khai này chỉ nên dùng để thử nghiệm, sử dụng cá nhân hay không "
-"thường xuyên. Nếu bạn muốn sử dụng cho mục đích khác, hãy %(host_server)s "
-"hoặc %(get_api_key)s."
+"thường xuyên. Nếu bạn muốn chạy ứng dụng cho quá trình sản xuất, hãy "
+"%(host_server)s hoặc %(get_api_key)s."
#: libretranslate/templates/index.html:340
msgid "host your own server"
-msgstr "tự lưu máy chủ của chính bạn"
+msgstr "lưu trữ máy chủ của chính bạn"
#: libretranslate/templates/index.html:340
msgid "get an API key"
From 92424bbba8b51d78ae53238457434dc92df99444 Mon Sep 17 00:00:00 2001
From: "Michael R. Lawrence"
Date: Wed, 3 Jul 2024 20:02:08 +0200
Subject: [PATCH 079/332] Added translation using Weblate (Miami)
---
.../locales/mia/LC_MESSAGES/messages.po | 651 ++++++++++++++++++
1 file changed, 651 insertions(+)
create mode 100644 libretranslate/locales/mia/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/mia/LC_MESSAGES/messages.po b/libretranslate/locales/mia/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..a09a486
--- /dev/null
+++ b/libretranslate/locales/mia/LC_MESSAGES/messages.po
@@ -0,0 +1,651 @@
+# Translations template for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2023.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: mia\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.12.1\n"
+
+#: libretranslate/app.py:79
+msgid "Invalid JSON format"
+msgstr ""
+
+#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+msgid "Auto Detect"
+msgstr ""
+
+#: libretranslate/app.py:232
+msgid "Unauthorized"
+msgstr ""
+
+#: libretranslate/app.py:250
+msgid "Too many request limits violations"
+msgstr ""
+
+#: libretranslate/app.py:257
+msgid "Invalid API key"
+msgstr ""
+
+#: libretranslate/app.py:276
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:278
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr ""
+
+#: libretranslate/app.py:318
+msgid "Slowdown:"
+msgstr ""
+
+#: libretranslate/app.py:525 libretranslate/app.py:527
+#: libretranslate/app.py:529 libretranslate/app.py:741
+#: libretranslate/app.py:743 libretranslate/app.py:745
+#: libretranslate/app.py:896 libretranslate/app.py:1053
+#: libretranslate/app.py:1055 libretranslate/app.py:1057
+#: libretranslate/app.py:1059
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+
+#: libretranslate/app.py:544 libretranslate/app.py:553
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+
+#: libretranslate/app.py:583 libretranslate/app.py:588
+#: libretranslate/app.py:758 libretranslate/app.py:763
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr ""
+
+#: libretranslate/app.py:594
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr ""
+
+#: libretranslate/app.py:602 libretranslate/app.py:626
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+
+#: libretranslate/app.py:647
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr ""
+
+#: libretranslate/app.py:734 libretranslate/app.py:788
+msgid "Files translation are disabled on this server."
+msgstr ""
+
+#: libretranslate/app.py:748
+msgid "Invalid request: empty file"
+msgstr ""
+
+#: libretranslate/app.py:751
+msgid "Invalid request: file format not supported"
+msgstr ""
+
+#: libretranslate/app.py:796
+msgid "Invalid filename"
+msgstr ""
+
+#: libretranslate/app.py:1038
+msgid "Suggestions are disabled on this server."
+msgstr ""
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:2
+msgid "Arabic"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
+msgid "Azerbaijani"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:4
+msgid "Chinese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:5
+msgid "Czech"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Danish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Dutch"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
+msgid "Esperanto"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:9
+msgid "Finnish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
+msgid "French"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:11
+msgid "German"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:12
+msgid "Greek"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:13
+msgid "Hebrew"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:14
+msgid "Hindi"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
+msgid "Hungarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:16
+msgid "Indonesian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:17
+msgid "Irish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:18
+msgid "Italian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:19
+msgid "Japanese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:20
+msgid "Korean"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:21
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:22
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:23
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:24
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:25
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:26
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:27
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Vietnamese"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+msgid "Translated text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:17
+msgid "API key"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
+msgid "Translate file from a language to another"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translated file"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:20
+msgid "File to translate"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:21
+msgid "Detect the language of a single text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detections"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detection error"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:24
+msgid "Text to detect"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:25
+msgid "Retrieve frontend specific settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:26
+msgid "frontend settings"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:28
+msgid "Submit a suggestion to improve a translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:29
+msgid "Success"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:30
+msgid "Not authorized"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:31
+msgid "Original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:32
+msgid "Suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:33
+msgid "Language of original text"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of suggested translation"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:35
+msgid "feedback"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:36
+msgid "Language code"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:37
+msgid "Human-readable language name (in English)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:38
+msgid "Supported target language codes"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:39
+msgid "Translated text(s)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:40
+msgid "Error message"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:41
+msgid "Reason for slow down"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:42
+msgid "Translated file url"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:43
+msgid "Confidence value"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:44
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:45
+msgid "Frontend translation timeout"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:46
+msgid "Whether the API key database is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether an API key is required."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether submitting suggestions is enabled."
+msgstr ""
+
+#: libretranslate/locales/.swag.py:49
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:50
+msgid "Whether submission was successful"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:286
+#: libretranslate/templates/app.js.template:290
+msgid "Copy text"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:273
+#: libretranslate/templates/app.js.template:343
+#: libretranslate/templates/app.js.template:431
+#: libretranslate/templates/app.js.template:479
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:264
+#: libretranslate/templates/app.js.template:334
+#: libretranslate/templates/app.js.template:412
+#: libretranslate/templates/app.js.template:423
+msgid "Unknown error"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:287
+msgid "Copied"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:331
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:455
+msgid "No languages available. Did you install the models correctly?"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "press the \"Get API Key\" link."
+msgstr ""
+
+#: libretranslate/templates/app.js.template:522
+msgid "contact the server operator."
+msgstr ""
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:336
+msgid "Free and Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr ""
+
+#: libretranslate/templates/index.html:65
+msgid "API Docs"
+msgstr ""
+
+#: libretranslate/templates/index.html:67
+msgid "Get API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:69
+msgid "GitHub"
+msgstr ""
+
+#: libretranslate/templates/index.html:71
+msgid "Set API Key"
+msgstr ""
+
+#: libretranslate/templates/index.html:73
+msgid "Change language"
+msgstr ""
+
+#: libretranslate/templates/index.html:79
+msgid "Edit"
+msgstr ""
+
+#: libretranslate/templates/index.html:81
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:157
+msgid "Dismiss"
+msgstr ""
+
+#: libretranslate/templates/index.html:171
+msgid "Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:175
+msgid "Translate Text"
+msgstr ""
+
+#: libretranslate/templates/index.html:179
+msgid "Translate Files"
+msgstr ""
+
+#: libretranslate/templates/index.html:185
+msgid "Translate from"
+msgstr ""
+
+#: libretranslate/templates/index.html:195
+msgid "Swap source and target languages"
+msgstr ""
+
+#: libretranslate/templates/index.html:198
+msgid "Translate into"
+msgstr ""
+
+#: libretranslate/templates/index.html:210
+msgid "Text to translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:213
+msgid "Delete text"
+msgstr ""
+
+#: libretranslate/templates/index.html:226
+msgid "Suggest translation"
+msgstr ""
+
+#: libretranslate/templates/index.html:230
+msgid "Cancel"
+msgstr ""
+
+#: libretranslate/templates/index.html:233
+msgid "Send"
+msgstr ""
+
+#: libretranslate/templates/index.html:249
+msgid "Supported file formats:"
+msgstr ""
+
+#: libretranslate/templates/index.html:253
+msgid "File"
+msgstr ""
+
+#: libretranslate/templates/index.html:268
+msgid "Remove file"
+msgstr ""
+
+#: libretranslate/templates/index.html:275
+msgid "Translate"
+msgstr ""
+
+#: libretranslate/templates/index.html:276
+#: libretranslate/templates/index.html:320
+msgid "Download"
+msgstr ""
+
+#: libretranslate/templates/index.html:295
+msgid "Request"
+msgstr ""
+
+#: libretranslate/templates/index.html:300
+msgid "Response"
+msgstr ""
+
+#: libretranslate/templates/index.html:315
+msgid "Open Source Machine Translation API"
+msgstr ""
+
+#: libretranslate/templates/index.html:316
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr ""
+
+#: libretranslate/templates/index.html:335
+msgid "LibreTranslate"
+msgstr ""
+
+#: libretranslate/templates/index.html:337
+msgid "License:"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+#, python-format
+msgid ""
+"This public API should be used for testing, personal or infrequent use. "
+"If you're going to run an application in production, please "
+"%(host_server)s or %(get_api_key)s."
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "host your own server"
+msgstr ""
+
+#: libretranslate/templates/index.html:340
+msgid "get an API key"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+
+#: libretranslate/templates/index.html:348
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr ""
From 93219a3809b9d9b61d7c5afd2d225b2f5ac6a447 Mon Sep 17 00:00:00 2001
From: "Michael R. Lawrence"
Date: Wed, 3 Jul 2024 18:06:52 +0000
Subject: [PATCH 080/332] Translated using Weblate (Miami)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/mia/
---
.../locales/mia/LC_MESSAGES/messages.po | 27 +++++++++++--------
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/libretranslate/locales/mia/LC_MESSAGES/messages.po b/libretranslate/locales/mia/LC_MESSAGES/messages.po
index a09a486..a22c5ca 100644
--- a/libretranslate/locales/mia/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/mia/LC_MESSAGES/messages.po
@@ -9,26 +9,31 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2024-07-04 18:09+0000\n"
+"Last-Translator: \"Michael R. Lawrence\" \n"
+"Language-Team: Miami \n"
"Language: mia\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
+#, fuzzy
msgid "Invalid JSON format"
-msgstr ""
+msgstr "moochi eelaamweekaneewiki JSON kiikoo"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
msgstr ""
#: libretranslate/app.py:232
+#, fuzzy
msgid "Unauthorized"
-msgstr ""
+msgstr "moochi koteelilo"
#: libretranslate/app.py:250
msgid "Too many request limits violations"
@@ -36,7 +41,7 @@ msgstr ""
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr ""
+msgstr "Moochi API paahpahaakani"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
@@ -49,7 +54,7 @@ msgstr ""
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr ""
+msgstr "weekiyosiko"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -62,15 +67,15 @@ msgid "Invalid request: missing %(name)s parameter"
msgstr ""
#: libretranslate/app.py:544 libretranslate/app.py:553
-#, python-format
+#, fuzzy, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr ""
+msgstr "maci kiikoo : kiikoo (%(size)s) mihši awikawiko limit (%(limit)s)"
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
-#, python-format
+#, fuzzy, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "moochi supported"
#: libretranslate/app.py:594
#, python-format
From fa8d96b638ad509aab01423bc3ee95ed23fc9104 Mon Sep 17 00:00:00 2001
From: silentoplayz <50341825+silentoplayz@users.noreply.github.com>
Date: Fri, 5 Jul 2024 02:11:54 +0000
Subject: [PATCH 081/332] Update Dockerfile
Added numpy<2
---
docker/Dockerfile | 1 +
1 file changed, 1 insertion(+)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 08cf090..856390e 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -16,6 +16,7 @@ COPY . .
# Install package from source code, compile translations
RUN ./venv/bin/pip install Babel==2.12.1 && ./venv/bin/python scripts/compile_locales.py \
&& ./venv/bin/pip install torch==2.0.1 --extra-index-url https://download.pytorch.org/whl/cpu \
+ && ./venv/bin/pip install "numpy<2" \
&& ./venv/bin/pip install . \
&& ./venv/bin/pip cache purge
From b7e424c5f1134c57b398ed45a5ab4a483d67705d Mon Sep 17 00:00:00 2001
From: silentoplayz <50341825+silentoplayz@users.noreply.github.com>
Date: Fri, 5 Jul 2024 02:12:32 +0000
Subject: [PATCH 082/332] Update arm.Dockerfile
Added numpy<2 package
---
docker/arm.Dockerfile | 1 +
1 file changed, 1 insertion(+)
diff --git a/docker/arm.Dockerfile b/docker/arm.Dockerfile
index 2d7eb99..a4d3c50 100644
--- a/docker/arm.Dockerfile
+++ b/docker/arm.Dockerfile
@@ -16,6 +16,7 @@ COPY . .
# Install package from source code, compile translations
RUN ./venv/bin/pip install Babel==2.12.1 && ./venv/bin/python scripts/compile_locales.py \
&& ./venv/bin/pip install torch==2.0.1 --extra-index-url https://download.pytorch.org/whl/cpu \
+ && ./venv/bin/pip install "numpy<2" \
&& ./venv/bin/pip install . \
&& ./venv/bin/pip cache purge
From e6e851821b85cb51da34e5e15fe3c7c2099522ac Mon Sep 17 00:00:00 2001
From: silentoplayz <50341825+silentoplayz@users.noreply.github.com>
Date: Fri, 5 Jul 2024 02:23:45 +0000
Subject: [PATCH 083/332] Update cuda.Dockerfile
Added numpy<2 package
---
docker/cuda.Dockerfile | 1 +
1 file changed, 1 insertion(+)
diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile
index 7fa877d..db490e5 100644
--- a/docker/cuda.Dockerfile
+++ b/docker/cuda.Dockerfile
@@ -34,6 +34,7 @@ RUN if [ "$with_models" = "true" ]; then \
# Install package from source code
RUN pip3 install Babel==2.12.1 && python3 scripts/compile_locales.py \
+ && ./venv/bin/pip install "numpy<2" \
&& pip3 install . \
&& pip3 cache purge
From ece74c0f7e28c19eb68b1b8159b846cb0ea92236 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Aindri=C3=BA=20Mac=20Giolla=20Eoin?=
Date: Fri, 5 Jul 2024 09:43:45 +0000
Subject: [PATCH 084/332] Translated using Weblate (Irish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ga/
---
.../locales/ga/LC_MESSAGES/messages.po | 79 ++++++++-----------
1 file changed, 35 insertions(+), 44 deletions(-)
diff --git a/libretranslate/locales/ga/LC_MESSAGES/messages.po b/libretranslate/locales/ga/LC_MESSAGES/messages.po
index 6a03428..2f4acb6 100644
--- a/libretranslate/locales/ga/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ga/LC_MESSAGES/messages.po
@@ -9,16 +9,17 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-01-10 09:57+0000\n"
-"Last-Translator: Allan Nordhøy \n"
+"PO-Revision-Date: 2024-07-06 08:18+0000\n"
+"Last-Translator: Aindriú Mac Giolla Eoin \n"
+"Language-Team: Irish \n"
"Language: ga\n"
-"Language-Team: Irish "
-"\n"
-"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 "
-":(n>6 && n<11) ? 3 : 4;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :("
+"n>6 && n<11) ? 3 : 4;\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -52,7 +53,7 @@ msgstr "Tabhair cuairt ar %(url)s a fháil eochair API"
#: libretranslate/app.py:318
msgid "Slowdown:"
-msgstr "Slowdown:"
+msgstr "Tóg go bog é:"
#: libretranslate/app.py:525 libretranslate/app.py:527
#: libretranslate/app.py:529 libretranslate/app.py:741
@@ -60,9 +61,9 @@ msgstr "Slowdown:"
#: libretranslate/app.py:896 libretranslate/app.py:1053
#: libretranslate/app.py:1055 libretranslate/app.py:1057
#: libretranslate/app.py:1059
-#, fuzzy, python-format
+#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr "Iarratas neamhbhailí: ar iarraidh %(name)s paraiméadar"
+msgstr "Iarratas neamhbhailí: paraiméadar %(name)s in easnamh"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
@@ -73,14 +74,14 @@ msgstr ""
#: libretranslate/app.py:583 libretranslate/app.py:588
#: libretranslate/app.py:758 libretranslate/app.py:763
-#, fuzzy, python-format
+#, python-format
msgid "%(lang)s is not supported"
-msgstr "%(lang)s Níl tacaíocht"
+msgstr "Ní thacaítear le %(lang)s"
#: libretranslate/app.py:594
-#, fuzzy, python-format
+#, python-format
msgid "%(format)s format is not supported"
-msgstr "%(format)s Níl formáid tacaíocht"
+msgstr "Ní thacaítear le formáid %(format)s"
#: libretranslate/app.py:602 libretranslate/app.py:626
#, python-format
@@ -170,7 +171,7 @@ msgstr "Eabhrais"
#: libretranslate/locales/.langs.py:14
msgid "Hindi"
-msgstr "Déan teagmháil linn"
+msgstr "Hiondúis"
#: libretranslate/locales/.langs.py:15
msgid "Hungarian"
@@ -186,7 +187,7 @@ msgstr "Gaeilge"
#: libretranslate/locales/.langs.py:18
msgid "Italian"
-msgstr "Taiseachas aeir: fliuch"
+msgstr "Iodálach"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
@@ -270,31 +271,27 @@ msgstr "Sreabhadh síos"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr "Inis dúinn, le do thoil.."
+msgstr "Cosc"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
msgstr "Dia duit domhan!"
#: libretranslate/locales/.swag.py:11
-#, fuzzy
msgid "Text(s) to translate"
-msgstr "Téacs a aistriú"
+msgstr "Téacs(í) le haistriú"
#: libretranslate/locales/.swag.py:12
-#, fuzzy
msgid "Source language code"
-msgstr "Cód teanga"
+msgstr "Cód teanga foinse"
#: libretranslate/locales/.swag.py:13
-#, fuzzy
msgid "Target language code"
-msgstr "Tacú le cóid sprioctheanga"
+msgstr "Cód teanga sprice"
#: libretranslate/locales/.swag.py:14
-#, fuzzy
msgid "text"
-msgstr "Téacs Cóip"
+msgstr "téacs"
#: libretranslate/locales/.swag.py:15
msgid "html"
@@ -311,9 +308,8 @@ msgstr ""
"* html ` - HTML marcóir\n"
#: libretranslate/locales/.swag.py:17
-#, fuzzy
msgid "API key"
-msgstr "taiseachas aeir: fliuch"
+msgstr "Eochair API"
#: libretranslate/locales/.swag.py:18
msgid "Translate file from a language to another"
@@ -324,9 +320,8 @@ msgid "Translated file"
msgstr "Aistrithe comhad"
#: libretranslate/locales/.swag.py:20
-#, fuzzy
msgid "File to translate"
-msgstr "Téacs a aistriú"
+msgstr "Comhad le haistriú"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
@@ -341,9 +336,8 @@ msgid "Detection error"
msgstr "Earráid bhrath"
#: libretranslate/locales/.swag.py:24
-#, fuzzy
msgid "Text to detect"
-msgstr "Déan teagmháil Linn"
+msgstr "Téacs le brath"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
@@ -374,19 +368,16 @@ msgid "Original text"
msgstr "Téacs bunaidh"
#: libretranslate/locales/.swag.py:32
-#, fuzzy
msgid "Suggested translation"
-msgstr "Mol aistriúcháin"
+msgstr "Aistriúchán molta"
#: libretranslate/locales/.swag.py:33
-#, fuzzy
msgid "Language of original text"
-msgstr "An teanga téacs amháin a bhrath"
+msgstr "Teanga an bhuntéacs"
#: libretranslate/locales/.swag.py:34
-#, fuzzy
msgid "Language of suggested translation"
-msgstr "Mol aistriúcháin"
+msgstr "Teanga an aistriúcháin molta"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
@@ -478,7 +469,7 @@ msgstr "Earráid aitheanta"
#: libretranslate/templates/app.js.template:287
msgid "Copied"
-msgstr "Copied"
+msgstr "Cóipeáladh"
#: libretranslate/templates/app.js.template:331
msgid ""
@@ -493,9 +484,10 @@ msgid "No languages available. Did you install the models correctly?"
msgstr "Níl aon teangacha ar fáil. An raibh tú a shuiteáil na samhlacha i gceart?"
#: libretranslate/templates/app.js.template:522
-#, fuzzy, python-format
+#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr "Cineál i do API key. Más gá duit eochair API, %(instructions)s"
+msgstr ""
+"Clóscríobh isteach d'Eochair API. Má tá eochair API uait, %(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
@@ -537,7 +529,7 @@ msgstr "Faigh API Uisce agus Séarachas"
#: libretranslate/templates/index.html:69
msgid "GitHub"
-msgstr "Déan teagmháil linn"
+msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
@@ -617,7 +609,7 @@ msgstr "Bain comhad"
#: libretranslate/templates/index.html:275
msgid "Translate"
-msgstr "Taiseachas aeir: fliuch"
+msgstr "Aistrigh"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
@@ -675,10 +667,9 @@ msgstr ""
"%(engine)s"
#: libretranslate/templates/index.html:348
-#, fuzzy, python-format
+#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr "%(libretranslate)s Seirbhís do Chustaiméirí"
+msgstr "%(libretranslate)s Rannpháirtithe"
#~ msgid "multipart/form-data"
#~ msgstr "ilpháirt / form-sonraí"
-
From 8ffc3a4b1be6466d8e0265c77fa2c2e0102bfead Mon Sep 17 00:00:00 2001
From: "Carlos M. Silva"
Date: Sun, 14 Jul 2024 19:31:48 +0000
Subject: [PATCH 085/332] Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
---
.../locales/pt/LC_MESSAGES/messages.po | 53 ++++++++++---------
1 file changed, 27 insertions(+), 26 deletions(-)
diff --git a/libretranslate/locales/pt/LC_MESSAGES/messages.po b/libretranslate/locales/pt/LC_MESSAGES/messages.po
index c2d45d4..c8e5cc4 100644
--- a/libretranslate/locales/pt/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/pt/LC_MESSAGES/messages.po
@@ -9,14 +9,16 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2023-06-20 11:29+0000\n"
-"Last-Translator: Jessica Patricio \n"
-"Language-Team: Portuguese \n"
+"PO-Revision-Date: 2024-07-15 20:09+0000\n"
+"Last-Translator: \"Carlos M. Silva\" \n"
+"Language-Team: Portuguese \n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -25,7 +27,7 @@ msgstr "Formato JSON inválido"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
msgid "Auto Detect"
-msgstr "Detecção automática"
+msgstr "Deteção automática"
#: libretranslate/app.py:232
msgid "Unauthorized"
@@ -41,7 +43,7 @@ msgstr "Chave de API inválida"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "Entre em contato com o operador do servidor para obter uma chave API"
+msgstr "Entre em contacto com o operador do servidor para obter uma chave API"
#: libretranslate/app.py:278
#, python-format
@@ -60,7 +62,7 @@ msgstr "Devagar:"
#: libretranslate/app.py:1059
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr "Pedido inválido: parâmetro %(name)s faltando"
+msgstr "Pedido inválido: parâmetro %(name)s em falta"
#: libretranslate/app.py:544 libretranslate/app.py:553
#, python-format
@@ -131,7 +133,7 @@ msgstr "Chinês"
#: libretranslate/locales/.langs.py:5
msgid "Czech"
-msgstr "Tcheco"
+msgstr "Checo"
#: libretranslate/locales/.langs.py:6
msgid "Danish"
@@ -247,7 +249,7 @@ msgstr "traduzir"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr "Traduzir texto de uma língua para outra"
+msgstr "Traduzir texto de um indioma para outro"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
@@ -309,15 +311,15 @@ msgstr "Chave API"
#: libretranslate/locales/.swag.py:18
msgid "Translate file from a language to another"
-msgstr "Traduzir arquivo de um idioma para outro"
+msgstr "Traduzir ficheiro de um idioma para outro"
#: libretranslate/locales/.swag.py:19
msgid "Translated file"
-msgstr "Arquivo traduzido"
+msgstr "Ficheiro traduzido"
#: libretranslate/locales/.swag.py:20
msgid "File to translate"
-msgstr "Arquivo para traduzir"
+msgstr "Ficheiro a traduzir"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
@@ -329,7 +331,7 @@ msgstr "Detecções"
#: libretranslate/locales/.swag.py:23
msgid "Detection error"
-msgstr "Erro de detecção"
+msgstr "Erro de deteção"
#: libretranslate/locales/.swag.py:24
msgid "Text to detect"
@@ -349,7 +351,7 @@ msgstr "frontend"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr "Enviar uma sugestão para melhorar uma tradução"
+msgstr "Envie uma sugestão para melhorar uma tradução"
#: libretranslate/locales/.swag.py:29
msgid "Success"
@@ -434,7 +436,7 @@ msgstr "Se enviar sugestões está ativado."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
-msgstr "Formatos de arquivo suportados"
+msgstr "Formatos de ficheiros suportados"
#: libretranslate/locales/.swag.py:50
msgid "Whether submission was successful"
@@ -478,13 +480,12 @@ msgstr ""
#: libretranslate/templates/app.js.template:455
msgid "No languages available. Did you install the models correctly?"
-msgstr "Não há idiomas disponíveis. Você instalou os modelos corretamente?"
+msgstr "Não há idiomas disponíveis. Instalou os modelos corretamente?"
#: libretranslate/templates/app.js.template:522
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr ""
-"Digite sua chave API. Se você precisar de uma chave API, %(instructions)s"
+msgstr "Digite sua chave API. Se precisar de uma chave API, %(instructions)s"
#: libretranslate/templates/app.js.template:522
msgid "press the \"Get API Key\" link."
@@ -492,7 +493,7 @@ msgstr "pressione o link \"Obter Chave API\"."
#: libretranslate/templates/app.js.template:522
msgid "contact the server operator."
-msgstr "contate o operador do servidor."
+msgstr "contacte o operador do servidor."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
@@ -544,11 +545,11 @@ msgstr "Editar"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr "Alternar o modo escuro/luz"
+msgstr "Alternar o modo escuro/claro"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
-msgstr "Recusar"
+msgstr "Dispensar"
#: libretranslate/templates/index.html:171
msgid "Translation API"
@@ -560,7 +561,7 @@ msgstr "Traduzir texto"
#: libretranslate/templates/index.html:179
msgid "Translate Files"
-msgstr "Traduzir arquivos"
+msgstr "Traduzir ficheiros"
#: libretranslate/templates/index.html:185
msgid "Translate from"
@@ -596,15 +597,15 @@ msgstr "Enviar"
#: libretranslate/templates/index.html:249
msgid "Supported file formats:"
-msgstr "Formatos de arquivo suportados:"
+msgstr "Formatos de ficheiros suportados:"
#: libretranslate/templates/index.html:253
msgid "File"
-msgstr "Arquivo"
+msgstr "Ficheiro"
#: libretranslate/templates/index.html:268
msgid "Remove file"
-msgstr "Remover arquivo"
+msgstr "Remover ficheiro"
#: libretranslate/templates/index.html:275
msgid "Translate"
@@ -613,11 +614,11 @@ msgstr "Traduzir"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
msgid "Download"
-msgstr "Baixar"
+msgstr "Descarregar"
#: libretranslate/templates/index.html:295
msgid "Request"
-msgstr "Requisição"
+msgstr "Pedido"
#: libretranslate/templates/index.html:300
msgid "Response"
From aaff4dd5887650db41a3a1b31f780280a5ce528b Mon Sep 17 00:00:00 2001
From: ButterflyOfFire
Date: Mon, 15 Jul 2024 14:29:35 +0000
Subject: [PATCH 086/332] Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
---
libretranslate/locales/kab/LC_MESSAGES/messages.po | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/libretranslate/locales/kab/LC_MESSAGES/messages.po b/libretranslate/locales/kab/LC_MESSAGES/messages.po
index 88076ff..a115119 100644
--- a/libretranslate/locales/kab/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/kab/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-01-06 17:52-0500\n"
-"PO-Revision-Date: 2023-01-23 15:12+0000\n"
-"Last-Translator: Selyan Sliman Amiri \n"
+"PO-Revision-Date: 2024-07-15 20:09+0000\n"
+"Last-Translator: ButterflyOfFire \n"
"Language-Team: Kabyle \n"
"Language: kab\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.16-dev\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.11.0\n"
#: libretranslate/app.py:60
@@ -563,7 +563,7 @@ msgstr "Semmeskel aɣbalu d tutlayt tasaḍast"
#: libretranslate/templates/index.html:195
msgid "Translate into"
-msgstr "Suqqel deg"
+msgstr "Suqqel ɣer"
#: libretranslate/templates/index.html:207
msgid "Text to translate"
@@ -638,12 +638,12 @@ msgid ""
"%(host_server)s or %(get_api_key)s."
msgstr ""
"API-a azayaz ilaq ad yettuseqdec i usekyed, i useqdec uslig neɣ i useqdec ur "
-"negzi. Ma yella tesnekkreḍ asnas id-yettfarasen , ttxil-k·m seqdec "
+"negzi. Ma yella tesnekkreḍ asnas id-yettfarasen, ttxil-k·m seqdec "
"%(host_server)s neɣ %(get_api_key)s."
#: libretranslate/templates/index.html:337
msgid "host your own server"
-msgstr "Sezdeɣ aqeddac inek•inem"
+msgstr "Sezdeɣ aqeddac inek·inem"
#: libretranslate/templates/index.html:337
msgid "get an API key"
@@ -653,7 +653,7 @@ msgstr "Awi tasarut API"
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
-"Yettufeṣṣel s %(heart)s s %(contributors)s, yella-d s lmendad n %(engine)s"
+"Yettufeṣṣel s %(heart)s sɣur %(contributors)s, yella-d s lmendad n %(engine)s"
#: libretranslate/templates/index.html:345
#, python-format
From 7b75dad479c0ff6736667b3bb537172004358991 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 16 Jul 2024 15:11:41 -0400
Subject: [PATCH 087/332] Use fixed window elastic expiry strategy for limiter
---
libretranslate/app.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index c95700d..ab7171e 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -238,7 +238,8 @@ def create_app(args):
),
storage_uri=args.req_limit_storage,
default_limits_deduct_when=lambda req: True, # Force cost to be called after the request
- default_limits_cost=limits_cost
+ default_limits_cost=limits_cost,
+ strategy="fixed-window-elastic-expiry",
)
else:
from .no_limiter import Limiter
From 8e85c04558160237d9fd1ded634a325b2d5966cf Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 16 Jul 2024 15:33:51 -0400
Subject: [PATCH 088/332] Use moving window strategy for limiter
---
libretranslate/app.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index ab7171e..4e115cc 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -239,7 +239,7 @@ def create_app(args):
storage_uri=args.req_limit_storage,
default_limits_deduct_when=lambda req: True, # Force cost to be called after the request
default_limits_cost=limits_cost,
- strategy="fixed-window-elastic-expiry",
+ strategy="moving-window",
)
else:
from .no_limiter import Limiter
From c827d442ec489cc863b7c200de71979a909e150c Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 16 Jul 2024 15:58:20 -0400
Subject: [PATCH 089/332] Encode secret
---
libretranslate/app.py | 2 +-
libretranslate/secret.py | 4 ++++
libretranslate/templates/app.js.template | 2 +-
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/libretranslate/app.py b/libretranslate/app.py
index 4e115cc..80c3b2a 100644
--- a/libretranslate/app.py
+++ b/libretranslate/app.py
@@ -402,7 +402,7 @@ def create_app(args):
response = Response(render_template("app.js.template",
url_prefix=args.url_prefix,
get_api_key_link=args.get_api_key_link,
- api_secret=secret.get_current_secret() if args.require_api_key_secret else ""), content_type='application/javascript; charset=utf-8')
+ api_secret=secret.get_current_secret_b64() if args.require_api_key_secret else ""), content_type='application/javascript; charset=utf-8')
if args.require_api_key_secret:
response.headers['Last-Modified'] = http_date(datetime.now())
diff --git a/libretranslate/secret.py b/libretranslate/secret.py
index 8778ff7..048910d 100644
--- a/libretranslate/secret.py
+++ b/libretranslate/secret.py
@@ -1,3 +1,4 @@
+import base64
import random
import string
@@ -21,6 +22,9 @@ def secret_match(secret):
def get_current_secret():
return get_storage().get_str("secret_1")
+def get_current_secret_b64():
+ return base64.b64encode(get_current_secret().encode("utf-8")).decode("utf-8")
+
def setup(args):
if args.api_keys and args.require_api_key_secret:
s = get_storage()
diff --git a/libretranslate/templates/app.js.template b/libretranslate/templates/app.js.template
index 7727451..b2f5c39 100644
--- a/libretranslate/templates/app.js.template
+++ b/libretranslate/templates/app.js.template
@@ -41,7 +41,7 @@ document.addEventListener('DOMContentLoaded', function(){
filesTranslation: true,
frontendTimeout: 500,
- apiSecret: "{{ api_secret }}"
+ apiSecret: atob("{{ api_secret }}")
},
mounted: function() {
const self = this;
From 8ba054c786cfed447132f6d03fd36274364535fb Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 16 Jul 2024 15:59:33 -0400
Subject: [PATCH 090/332] Encode secret
---
libretranslate/templates/app.js.template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libretranslate/templates/app.js.template b/libretranslate/templates/app.js.template
index b2f5c39..ca1eb96 100644
--- a/libretranslate/templates/app.js.template
+++ b/libretranslate/templates/app.js.template
@@ -41,7 +41,7 @@ document.addEventListener('DOMContentLoaded', function(){
filesTranslation: true,
frontendTimeout: 500,
- apiSecret: atob("{{ api_secret }}")
+ apiSecret: "{{ api_secret }}"
},
mounted: function() {
const self = this;
@@ -244,7 +244,7 @@ document.addEventListener('DOMContentLoaded', function(){
data.append("format", self.isHtml ? "html" : "text");
data.append("alternatives", 3);
data.append("api_key", localStorage.getItem("api_key") || "");
- if (self.apiSecret) data.append("secret", self.apiSecret);
+ if (self.apiSecret) data.append("secret", atob(self.apiSecret));
request.open('POST', BaseUrl + '/translate', true);
From 9184c382db8f0331530e946cd3baa5b385f13528 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 16 Jul 2024 16:03:22 -0400
Subject: [PATCH 091/332] Fix div by zero error
---
libretranslate/language.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libretranslate/language.py b/libretranslate/language.py
index 407f695..0709cad 100644
--- a/libretranslate/language.py
+++ b/libretranslate/language.py
@@ -72,7 +72,7 @@ def detect_languages(text):
# sort the candidates descending based on the detected confidence
candidates.sort(
- key=lambda l: (l.confidence * l.text_length) / text_length_total, reverse=True
+ key=lambda l: 0 if text_length_total == 0 else (l.confidence * l.text_length) / text_length_total, reverse=True
)
return [{"confidence": l.confidence, "language": l.code} for l in candidates]
From 236eee1774e223c81b1100e4ed5dca75e1db0991 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Tue, 16 Jul 2024 17:06:49 -0400
Subject: [PATCH 092/332] Remove offline mirror
---
README.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/README.md b/README.md
index d87e2a5..1d13c21 100644
--- a/README.md
+++ b/README.md
@@ -418,7 +418,6 @@ URL |API Key Required | Links
[libretranslate.com](https://libretranslate.com)|:heavy_check_mark:|[ [Get API Key](https://portal.libretranslate.com) ] [ [Service Status](https://status.libretranslate.com/) ]
[translate.terraprint.co](https://translate.terraprint.co/)|-
[trans.zillyhuhn.com](https://trans.zillyhuhn.com/)|-
-[libretranslate.eownerdead.dedyn.io](https://libretranslate.eownerdead.dedyn.io)|-
[translate.lotigara.ru](https://translate.lotigara.ru)|-
## TOR/i2p Mirrors
From 2f8ede54d77ead79214e522e10d0ff17ade7020b Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Fri, 19 Jul 2024 14:14:25 -0400
Subject: [PATCH 093/332] Add --secondary arg
---
README.md | 1 +
libretranslate/default_values.py | 5 +++++
libretranslate/main.py | 6 ++++++
libretranslate/scheduler.py | 4 ++--
4 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 1d13c21..f8ba4c4 100644
--- a/README.md
+++ b/README.md
@@ -216,6 +216,7 @@ Arguments passed to the process or set via environment variables are split into
| --api-keys-remote | Use this remote endpoint to query for valid API keys instead of using the local database | `Empty (use local db instead)` | LT_API_KEYS_REMOTE |
| --get-api-key-link | Show a link in the UI where to direct users to get an API key | `Empty (no link shown on web ui)` | LT_GET_API_KEY_LINK |
| --shared-storage | Shared storage URI to use for multi-process data sharing (e.g. when using gunicorn) | `memory://` | LT_SHARED_STORAGE |
+| --secondary | Mark this instance as a secondary instance to avoid conflicts with the primary node in multi-node setups | `Primary node` | LT_SECONDARY |
| --load-only | Set available languages | `Empty (use all from argostranslate)` | LT_LOAD_ONLY |
| --threads | Set number of threads | `4` | LT_THREADS |
| --metrics-auth-token | Protect the /metrics endpoint by allowing only clients that have a valid Authorization Bearer token | `Empty (no auth required)` | LT_METRICS_AUTH_TOKEN |
diff --git a/libretranslate/default_values.py b/libretranslate/default_values.py
index 2231a70..2c79611 100644
--- a/libretranslate/default_values.py
+++ b/libretranslate/default_values.py
@@ -156,6 +156,11 @@ _default_options_objects = [
'default_value': 'memory://',
'value_type': 'str'
},
+ {
+ 'name': 'SECONDARY',
+ 'default_value': False,
+ 'value_type': 'bool'
+ },
{
'name': 'LOAD_ONLY',
'default_value': None,
diff --git a/libretranslate/main.py b/libretranslate/main.py
index a342710..b6b6a03 100644
--- a/libretranslate/main.py
+++ b/libretranslate/main.py
@@ -154,6 +154,12 @@ def get_args():
metavar="",
help="Shared storage URI to use for multi-process data sharing (e.g. via gunicorn)",
)
+ parser.add_argument(
+ "--secondary",
+ default=DEFARGS['SECONDARY'],
+ action="store_true",
+ help="Mark this instance as a secondary instance to avoid conflicts with the primary node in multi-node setups",
+ )
parser.add_argument(
"--load-only",
type=operator.methodcaller("split", ","),
diff --git a/libretranslate/scheduler.py b/libretranslate/scheduler.py
index 932718e..836a3ea 100644
--- a/libretranslate/scheduler.py
+++ b/libretranslate/scheduler.py
@@ -13,10 +13,10 @@ def setup(args):
if scheduler is None:
scheduler = BackgroundScheduler()
- if args.req_flood_threshold > 0:
+ if not args.secondary and args.req_flood_threshold > 0:
scheduler.add_job(func=forgive_banned, trigger="interval", minutes=10)
- if args.api_keys and args.require_api_key_secret:
+ if not args.secondary and args.api_keys and args.require_api_key_secret:
scheduler.add_job(func=rotate_secrets, trigger="interval", minutes=30)
scheduler.start()
From 5322708061fd4d50eab58ec7e0595e418aa91bf8 Mon Sep 17 00:00:00 2001
From: naskya
Date: Sun, 21 Jul 2024 03:38:58 +0000
Subject: [PATCH 094/332] Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
---
libretranslate/locales/ja/LC_MESSAGES/messages.po | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/libretranslate/locales/ja/LC_MESSAGES/messages.po b/libretranslate/locales/ja/LC_MESSAGES/messages.po
index b623a19..862b3ac 100644
--- a/libretranslate/locales/ja/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ja/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-02-10 04:01+0000\n"
-"Last-Translator: 石丸健太郎 \n"
+"PO-Revision-Date: 2024-07-22 04:09+0000\n"
+"Last-Translator: naskya \n"
"Language-Team: Japanese \n"
"Language: ja\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -273,7 +273,6 @@ msgid "Hello world!"
msgstr "こんにちは!"
#: libretranslate/locales/.swag.py:11
-#, fuzzy
msgid "Text(s) to translate"
msgstr "翻訳するテキスト"
From dfe96743d517bddeeb70a3f139ab29d02723241d Mon Sep 17 00:00:00 2001
From: Alisson Lauffer
Date: Sun, 21 Jul 2024 22:48:58 +0000
Subject: [PATCH 095/332] Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
---
libretranslate/locales/pt/LC_MESSAGES/messages.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libretranslate/locales/pt/LC_MESSAGES/messages.po b/libretranslate/locales/pt/LC_MESSAGES/messages.po
index c8e5cc4..6052f53 100644
--- a/libretranslate/locales/pt/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/pt/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-07-15 20:09+0000\n"
-"Last-Translator: \"Carlos M. Silva\" \n"
+"PO-Revision-Date: 2024-07-22 04:09+0000\n"
+"Last-Translator: Alisson Lauffer \n"
"Language-Team: Portuguese \n"
"Language: pt\n"
@@ -249,7 +249,7 @@ msgstr "traduzir"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr "Traduzir texto de um indioma para outro"
+msgstr "Traduzir texto de um idioma para outro"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
msgid "Translated text"
From 9c6eea19fda210965d200c01e0d549cb33074556 Mon Sep 17 00:00:00 2001
From: John Ngai
Date: Sun, 21 Jul 2024 09:16:43 +0000
Subject: [PATCH 096/332] Translated using Weblate (Chinese (Simplified))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
---
libretranslate/locales/zh/LC_MESSAGES/messages.po | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/libretranslate/locales/zh/LC_MESSAGES/messages.po b/libretranslate/locales/zh/LC_MESSAGES/messages.po
index f6ed782..40b50e2 100644
--- a/libretranslate/locales/zh/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/zh/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-01-30 16:01+0000\n"
-"Last-Translator: Yanjun Chen \n"
+"PO-Revision-Date: 2024-07-22 04:09+0000\n"
+"Last-Translator: John Ngai \n"
"Language-Team: Chinese (Simplified) \n"
"Language: zh\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.4-dev\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -242,7 +242,7 @@ msgstr "语言列表"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr "翻译"
+msgstr "在文档中用作标签.这是“翻译”类别."
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
@@ -536,7 +536,7 @@ msgstr "编辑"
#: libretranslate/templates/index.html:81
msgid "Toggle dark/light mode"
-msgstr "D. 黑暗/轻度"
+msgstr "切换暗黑/明亮模式"
#: libretranslate/templates/index.html:157
msgid "Dismiss"
@@ -600,7 +600,7 @@ msgstr "删除文件"
#: libretranslate/templates/index.html:275
msgid "Translate"
-msgstr "翻译"
+msgstr "命令, 例如\"翻译\""
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
From 3310387ab6e9feecbfd57752f126bdf27d9e47a1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Aur=C3=A9lien=20Joga?=
Date: Mon, 22 Jul 2024 17:48:47 +0200
Subject: [PATCH 097/332] Fix typo in README.md
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index f8ba4c4..410ed93 100644
--- a/README.md
+++ b/README.md
@@ -162,7 +162,7 @@ run.bat [args]
## Build and Run
-See [CONTIRBUTING.md](./CONTRIBUTING.md) for information on how to build and run the project yourself.
+See [CONTRIBUTING.md](./CONTRIBUTING.md) for information on how to build and run the project yourself.
### CUDA
From 2e5af544c4a5f22cacb6b25058ca6dd5716cadb1 Mon Sep 17 00:00:00 2001
From: justin_driggers
Date: Tue, 23 Jul 2024 14:17:21 -0400
Subject: [PATCH 098/332] cuda dockerfile does not have a "venv/" folder
---
docker/cuda.Dockerfile | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile
index db490e5..5be8327 100644
--- a/docker/cuda.Dockerfile
+++ b/docker/cuda.Dockerfile
@@ -32,9 +32,10 @@ RUN if [ "$with_models" = "true" ]; then \
fi \
fi
+RUN python -mvenv venv && ./venv/bin/pip install --no-cache-dir --upgrade pip
# Install package from source code
RUN pip3 install Babel==2.12.1 && python3 scripts/compile_locales.py \
- && ./venv/bin/pip install "numpy<2" \
+ && pip3 install "numpy<2" \
&& pip3 install . \
&& pip3 cache purge
From 79a2b47fcad2528cc34438f40ca0d4eb4fa8e3e4 Mon Sep 17 00:00:00 2001
From: Jose Delvani
Date: Wed, 24 Jul 2024 01:27:28 +0000
Subject: [PATCH 099/332] Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
---
.../locales/pt_BR/LC_MESSAGES/messages.po | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po b/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po
index bd9f480..7c501dd 100644
--- a/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-01-06 17:52-0500\n"
-"PO-Revision-Date: 2023-06-20 11:29+0000\n"
-"Last-Translator: Jessica Patricio \n"
+"PO-Revision-Date: 2024-07-25 02:09+0000\n"
+"Last-Translator: Jose Delvani \n"
"Language-Team: Portuguese (Brazil) \n"
"Language: pt_BR\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.18.1\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.11.0\n"
#: libretranslate/app.py:60
@@ -31,7 +31,7 @@ msgstr "Detecção automática"
#: libretranslate/app.py:193
msgid "Unauthorized"
-msgstr "Desautorizado"
+msgstr "Sem autorização"
#: libretranslate/app.py:211
msgid "Too many request limits violations"
@@ -380,7 +380,7 @@ msgstr "Idioma da tradução sugerida"
#: libretranslate/locales/.swag.py:35
msgid "feedback"
-msgstr "opinião"
+msgstr "feedback"
#: libretranslate/locales/.swag.py:36
msgid "Language code"
@@ -548,7 +548,7 @@ msgstr "Editar"
#: libretranslate/templates/index.html:154
msgid "Dismiss"
-msgstr "Dispensar"
+msgstr "Descartar"
#: libretranslate/templates/index.html:168
msgid "Translation API"
@@ -613,7 +613,7 @@ msgstr "Traduzir"
#: libretranslate/templates/index.html:273
#: libretranslate/templates/index.html:317
msgid "Download"
-msgstr "Baixar"
+msgstr "Download"
#: libretranslate/templates/index.html:292
msgid "Request"
@@ -661,7 +661,7 @@ msgstr "obtenha uma chave de API"
#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "Feito com %(heart)s por %(contributors)s e alimentado por %(engine)s"
+msgstr "Feito com %(heart)s por %(contributors)s e desenvolvido por %(engine)s"
#: libretranslate/templates/index.html:345
#, python-format
From 94e1530e3442bbb50ea6b76279470d2eb2aed067 Mon Sep 17 00:00:00 2001
From: MjavadH
Date: Thu, 25 Jul 2024 15:44:05 +0000
Subject: [PATCH 100/332] Translated using Weblate (Persian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fa/
---
libretranslate/locales/fa/LC_MESSAGES/messages.po | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libretranslate/locales/fa/LC_MESSAGES/messages.po b/libretranslate/locales/fa/LC_MESSAGES/messages.po
index c72663e..b298664 100644
--- a/libretranslate/locales/fa/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/fa/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-04-07 09:57+0000\n"
-"Last-Translator: Ilya \n"
+"PO-Revision-Date: 2024-07-26 07:54+0000\n"
+"Last-Translator: MjavadH \n"
"Language-Team: Persian \n"
"Language: fa\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.5-dev\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
@@ -197,7 +197,7 @@ msgstr "کرهای"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
-msgstr "پارسی"
+msgstr "فارسی"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
From a0ddbdf73f3a6c4fc942d048714d6e78f9cd5edc Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Fri, 2 Aug 2024 15:15:16 -0400
Subject: [PATCH 101/332] Update screenshot
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 410ed93..81cabf2 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations. Instead, its translation engine is powered by the open source [Argos Translate](https://github.com/argosopentech/argos-translate) library.
-
+
[Try it online!](https://libretranslate.com) | [API Docs](https://libretranslate.com/docs)
From d5ab8d5b7414b80e643357efe322a5f6cd481e3f Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Fri, 2 Aug 2024 15:16:28 -0400
Subject: [PATCH 102/332] Update screenshot
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 81cabf2..ef57fbc 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations. Instead, its translation engine is powered by the open source [Argos Translate](https://github.com/argosopentech/argos-translate) library.
-
+
[Try it online!](https://libretranslate.com) | [API Docs](https://libretranslate.com/docs)
From 4ed587ce99a6e952f8227023c46ce278a0987795 Mon Sep 17 00:00:00 2001
From: SA99100
Date: Mon, 5 Aug 2024 05:14:29 +0000
Subject: [PATCH 103/332] Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
---
.../locales/ja/LC_MESSAGES/messages.po | 38 +++++++++----------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/libretranslate/locales/ja/LC_MESSAGES/messages.po b/libretranslate/locales/ja/LC_MESSAGES/messages.po
index 862b3ac..ff4b27f 100644
--- a/libretranslate/locales/ja/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ja/LC_MESSAGES/messages.po
@@ -9,8 +9,8 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
-"PO-Revision-Date: 2024-07-22 04:09+0000\n"
-"Last-Translator: naskya \n"
+"PO-Revision-Date: 2024-08-06 00:09+0000\n"
+"Last-Translator: SA99100 \n"
"Language-Team: Japanese \n"
"Language: ja\n"
@@ -39,11 +39,11 @@ msgstr "リクエストが多すぎます。"
#: libretranslate/app.py:257
msgid "Invalid API key"
-msgstr "無効な API キー"
+msgstr "無効なAPIキー"
#: libretranslate/app.py:276
msgid "Please contact the server operator to get an API key"
-msgstr "サーバ管理者に連絡して、APIキーを取得してください。"
+msgstr "APIキーを取得するにはサーバ管理者に連絡してください。"
#: libretranslate/app.py:278
#, python-format
@@ -158,7 +158,7 @@ msgstr "ドイツ語"
#: libretranslate/locales/.langs.py:12
msgid "Greek"
-msgstr "ギリシャ人"
+msgstr "ギリシャ語"
#: libretranslate/locales/.langs.py:13
msgid "Hebrew"
@@ -186,11 +186,11 @@ msgstr "イタリア"
#: libretranslate/locales/.langs.py:19
msgid "Japanese"
-msgstr "日本語 English"
+msgstr "日本語"
#: libretranslate/locales/.langs.py:20
msgid "Korean"
-msgstr "韓国人"
+msgstr "韓国語"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
@@ -198,7 +198,7 @@ msgstr "ペルシア語"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
-msgstr "ポーランド"
+msgstr "ポーランド語"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
@@ -206,11 +206,11 @@ msgstr "ポルトガル語"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
-msgstr "ロシア人"
+msgstr "ロシア語"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
-msgstr "ログイン"
+msgstr "スロヴァキア語"
#: libretranslate/locales/.langs.py:26
msgid "Spanish"
@@ -242,7 +242,7 @@ msgstr "言語リスト"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr "ログイン"
+msgstr "翻訳"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
@@ -278,7 +278,7 @@ msgstr "翻訳するテキスト"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr "ソース言語コード"
+msgstr "翻訳元の言語コード"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
@@ -290,7 +290,7 @@ msgstr "テキスト"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr "ツイート"
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -312,7 +312,7 @@ msgstr "言語から別の言語にファイルを翻訳する"
#: libretranslate/locales/.swag.py:19
msgid "Translated file"
-msgstr "翻訳ファイル"
+msgstr "翻訳されたファイル"
#: libretranslate/locales/.swag.py:20
msgid "File to translate"
@@ -324,7 +324,7 @@ msgstr "単一のテキストの言語を検出する"
#: libretranslate/locales/.swag.py:22
msgid "Detections"
-msgstr "検出の検出"
+msgstr "検出"
#: libretranslate/locales/.swag.py:23
msgid "Detection error"
@@ -348,15 +348,15 @@ msgstr "フロントエンド"
#: libretranslate/locales/.swag.py:28
msgid "Submit a suggestion to improve a translation"
-msgstr "翻訳を改善するための提案を提出する"
+msgstr "翻訳を改善するために提案を提出する"
#: libretranslate/locales/.swag.py:29
msgid "Success"
-msgstr "成功事例"
+msgstr "成功"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
-msgstr "許可されていない"
+msgstr "認証されていません"
#: libretranslate/locales/.swag.py:31
msgid "Original text"
@@ -650,7 +650,7 @@ msgstr "自分のサーバーをホストする"
#: libretranslate/templates/index.html:340
msgid "get an API key"
-msgstr "aPI キーを取得する"
+msgstr "APIキーを取得"
#: libretranslate/templates/index.html:348
#, python-format
From 65c64e065c26e29f898865998e7ba3b57ea87ed8 Mon Sep 17 00:00:00 2001
From: justin_driggers
Date: Mon, 5 Aug 2024 20:45:36 -0400
Subject: [PATCH 104/332] removed non-functional pip command
---
docker/cuda.Dockerfile | 1 -
1 file changed, 1 deletion(-)
diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile
index 5be8327..57b52c6 100644
--- a/docker/cuda.Dockerfile
+++ b/docker/cuda.Dockerfile
@@ -32,7 +32,6 @@ RUN if [ "$with_models" = "true" ]; then \
fi \
fi
-RUN python -mvenv venv && ./venv/bin/pip install --no-cache-dir --upgrade pip
# Install package from source code
RUN pip3 install Babel==2.12.1 && python3 scripts/compile_locales.py \
&& pip3 install "numpy<2" \
From 771c3d84cc80c2af402f5d84bcb4ccdf81a20d62 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Thu, 8 Aug 2024 13:28:40 -0400
Subject: [PATCH 105/332] Update locales
---
.../locales/ar/LC_MESSAGES/messages.po | 415 +++++-----
.../locales/az/LC_MESSAGES/messages.po | 415 +++++-----
.../locales/bg/LC_MESSAGES/messages.po | 416 ++++++----
.../locales/bn/LC_MESSAGES/messages.po | 721 +++++++++++++++++
libretranslate/locales/bn/meta.json | 4 +
.../locales/ca/LC_MESSAGES/messages.po | 570 ++++++++------
libretranslate/locales/ca/meta.json | 4 +
.../locales/cs/LC_MESSAGES/messages.po | 411 ++++++----
.../locales/da/LC_MESSAGES/messages.po | 416 ++++++----
.../locales/de/LC_MESSAGES/messages.po | 393 ++++++----
.../locales/el/LC_MESSAGES/messages.po | 426 +++++-----
.../locales/eo/LC_MESSAGES/messages.po | 393 ++++++----
.../locales/es/LC_MESSAGES/messages.po | 394 ++++++----
.../locales/et/LC_MESSAGES/messages.po | 417 +++++-----
libretranslate/locales/et/meta.json | 4 +
.../locales/fa/LC_MESSAGES/messages.po | 414 +++++-----
.../locales/fi/LC_MESSAGES/messages.po | 415 ++++++----
.../locales/fr/LC_MESSAGES/messages.po | 403 ++++++----
.../locales/ga/LC_MESSAGES/messages.po | 427 +++++-----
.../locales/he/LC_MESSAGES/messages.po | 413 ++++++----
.../locales/hi/LC_MESSAGES/messages.po | 422 +++++-----
.../locales/hu/LC_MESSAGES/messages.po | 414 ++++++----
.../locales/id/LC_MESSAGES/messages.po | 430 +++++-----
.../locales/it/LC_MESSAGES/messages.po | 428 +++++-----
.../locales/ja/LC_MESSAGES/messages.po | 392 ++++++----
.../locales/ko/LC_MESSAGES/messages.po | 416 ++++++----
.../locales/lt/LC_MESSAGES/messages.po | 716 +++++++++++++++++
libretranslate/locales/lt/meta.json | 4 +
.../locales/lv/LC_MESSAGES/messages.po | 719 +++++++++++++++++
libretranslate/locales/lv/meta.json | 4 +
libretranslate/locales/messages.pot | 372 +++++----
.../locales/ms/LC_MESSAGES/messages.po | 734 ++++++++++++++++++
libretranslate/locales/ms/meta.json | 4 +
.../locales/nb/LC_MESSAGES/messages.po | 718 +++++++++++++++++
libretranslate/locales/nb/meta.json | 4 +
.../locales/nl/LC_MESSAGES/messages.po | 393 ++++++----
.../locales/pl/LC_MESSAGES/messages.po | 396 ++++++----
.../locales/pt/LC_MESSAGES/messages.po | 428 +++++-----
.../locales/ro/LC_MESSAGES/messages.po | 423 +++++-----
libretranslate/locales/ro/meta.json | 4 +
.../locales/ru/LC_MESSAGES/messages.po | 426 +++++-----
.../locales/sk/LC_MESSAGES/messages.po | 389 ++++++----
.../locales/sl/LC_MESSAGES/messages.po | 714 +++++++++++++++++
libretranslate/locales/sl/meta.json | 4 +
.../locales/sq/LC_MESSAGES/messages.po | 693 +++++++++--------
libretranslate/locales/sq/meta.json | 4 +
.../locales/sv/LC_MESSAGES/messages.po | 405 ++++++----
.../locales/th/LC_MESSAGES/messages.po | 714 +++++++++++++++++
libretranslate/locales/th/meta.json | 4 +
.../locales/tl/LC_MESSAGES/messages.po | 725 +++++++++++++++++
libretranslate/locales/tl/meta.json | 4 +
.../locales/tr/LC_MESSAGES/messages.po | 391 ++++++----
.../locales/uk/LC_MESSAGES/messages.po | 492 ++++++------
.../locales/ur/LC_MESSAGES/messages.po | 718 +++++++++++++++++
libretranslate/locales/ur/meta.json | 4 +
.../locales/zh/LC_MESSAGES/messages.po | 389 ++++++----
.../locales/zh_Hant/LC_MESSAGES/messages.po | 410 ++++++----
libretranslate/locales/zh_Hant/meta.json | 4 +
scripts/update_locales.py | 22 +-
59 files changed, 15192 insertions(+), 6212 deletions(-)
create mode 100644 libretranslate/locales/bn/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/bn/meta.json
create mode 100644 libretranslate/locales/ca/meta.json
create mode 100644 libretranslate/locales/et/meta.json
create mode 100644 libretranslate/locales/lt/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/lt/meta.json
create mode 100644 libretranslate/locales/lv/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/lv/meta.json
create mode 100644 libretranslate/locales/ms/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/ms/meta.json
create mode 100644 libretranslate/locales/nb/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/nb/meta.json
create mode 100644 libretranslate/locales/ro/meta.json
create mode 100644 libretranslate/locales/sl/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/sl/meta.json
create mode 100644 libretranslate/locales/sq/meta.json
create mode 100644 libretranslate/locales/th/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/th/meta.json
create mode 100644 libretranslate/locales/tl/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/tl/meta.json
create mode 100644 libretranslate/locales/ur/LC_MESSAGES/messages.po
create mode 100644 libretranslate/locales/ur/meta.json
create mode 100644 libretranslate/locales/zh_Hant/meta.json
diff --git a/libretranslate/locales/ar/LC_MESSAGES/messages.po b/libretranslate/locales/ar/LC_MESSAGES/messages.po
index f02ab4a..73a1c8c 100644
--- a/libretranslate/locales/ar/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ar/LC_MESSAGES/messages.po
@@ -8,108 +8,115 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-11-02 04:00+0000\n"
"Last-Translator: Rex_sa \n"
-"Language-Team: Arabic \n"
+"Language-Team: Arabic \n"
"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
-"&& n%100<=10 ? 3 : n%100>=0 && n%100<=2 ? 4 : 5);\n"
-"X-Generator: Weblate 5.2-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=0 && n%100<=2 ? 4 : 5);\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "تنسيق JSON غير صالح"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "اكتشاف تلقائي"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "غير مصرح به"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "تم تجاوز عدد الطلبات المسموح بها"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "مفتاح API غير صحيح"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "يرجى الاتصال بالسيرفر للحصول على مفتاح API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "زيارة%(url)s للحصول على مفتاح API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "التباطؤ:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "طلب غير صالح: المعامل %(name)s مفقود"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "عدم وجود طلب: صفر البارامترات ليست رقم %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "عدم وجود طلب: صفر البارامترات يجب أن تكون %(value)s %(name)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "الطلب خاطئ: الطلب (%(size)s) تتجاوز حدود النص (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s غير مدعوم"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s الشكل غير مدعوم"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr "%(tname)s %(tcode)sغير متاحة كلغة هدف من %(sname)s %(scode)s"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "لا يمكن ترجمة النص: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "ترجمة الملفات معطلة على هذا الخادم."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "طلب خاطئ: ملف فارغ"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "طلب غير صحيح: صيغة الملف غير مدعومة"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "اسم الملف غير صالح"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "الاقتراحات معطلة على هذا الخادم."
@@ -118,120 +125,176 @@ msgid "English"
msgstr "الإنجليزية"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "ألبانيا"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "العربية"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "أذربيجان"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "بنغالي"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "بلغاريا"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalan"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "الصينية"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "الصينية (التقليدية)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "التشيكية"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "الدنمارك"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "هولندا"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "إستونيا"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "فنلندا"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "الفرنسية"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "ألمانيا"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "يوناني"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "العبرية"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "الهندية"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "هنغاريا"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "الإندونيسية"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "أيرلندا"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "إيطاليا"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "اليابان"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "كوريا"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "لاتفيا"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "ليتوانيا"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "مالي"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "النرويج"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persian"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "بولندا"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "البرتغال"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "رومانيا"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "الروسية"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "سلوفاكيا"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "سلوفينيا(ن)"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "الإسبانية"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "السويد"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "تايلند"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "تركيا"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "الأوكرانية"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamese"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -249,7 +312,7 @@ msgstr "ترجمة"
msgid "Translate text from a language to another"
msgstr "ترجمة النص من لغة إلى أخرى"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "النص المترجمة"
@@ -304,205 +367,210 @@ msgstr ""
"* html - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "العدد المفضَّل من الترجمات البديلة"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "مفتاح API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "ترجمة ملف من لغة إلى أخرى"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "ملف مراجع"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "ملف للترجمة"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "الكشف عن لغة نص ما"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "الكشف"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "الخطأ"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "النص المراد الكشف عنه"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "استرداد إعدادات محددة للواجهة الأمامية"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "اعدادات الواجهة الأمامية"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "الواجهة"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "تقديم اقتراح لتحسين الترجمة"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "تم بنجاح"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "غيرمرخص به"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "النص الأصلي"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "الترجمة المقترَحة"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "لغة النص الأصلي"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "لغة الترجمة المقترَحة"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "التعليقات"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "رمز اللغة"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "اسم لغة قابلة للقراءة البشرية (باللغة الإنكليزية)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "رموز اللغات المستهدفة المدعومة"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "النص/النثوص المترجمة"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "رسالة خطأ"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "سبب التباطؤ"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "عنوان ملف مترجمة"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "قيمة الثقة"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "الحد الأقصى للمدخلات التعريفية لهذه اللغة (-1 لا يشير إلى حد أقصى)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "وقت واجهة الترجمة"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "ما إذا كانت قاعدة البيانات الرئيسية متاحة."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "ما إذا كان من المطلوب وجود مفتاح."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "وسواء أمكن تقديم الاقتراحات."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "استمارة الملفات المدعومة"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "ما إذا كان التقديم ناجحاً"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "نسخ النص"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "لا يمكن تحميل %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "خطأ غير معروف"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "تم نسخه"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr "شكراً على تصحيحك ملاحظة الاقتراح لن يبدأ تطبيقه في الحال."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "لا توجد لغات متاحة. هل قمت بتثبيت النماذج بشكل صحيح؟?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "ادخل مفتاحك إذا كنت بحاجة إلى مفتاح API، %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "اضغط على رابط \"المفاتيح\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "اتصل بمشغل الخادم."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "واجهة برمجة تطبيقات حرة ومفتوحة المصدر للترجمة الآلية"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Free and Open Source Machine Translation API. ذاتي الاستيعاب، غير مباشر "
-"قادر وسهل التجهيز أدير خادمك الخاص في غضون دقائق."
+"Free and Open Source Machine Translation API. ذاتي الاستيعاب، غير مباشر قادر"
+" وسهل التجهيز أدير خادمك الخاص في غضون دقائق."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -512,155 +580,154 @@ msgstr "ترجمة"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API مستندات"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "الحصول على مفتاح API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "تعيين مفتاح API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "تغيير اللغة"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "تعديل"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "الظلمة/الضوء"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "تجاهل"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "الترجمة API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "ترجمة النص"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "ترجمة الملفات"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "ترجمة من"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "تبديل المصدر واللغات المستهدفة"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "ترجمة الى"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "نص للترجمة"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "حذف النص"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "اقتراح ترجمة"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "إلغاء"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "أرسل"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "صيغ الملفات المدعومة:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "ملف"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "حذف الملف"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "ترجمة"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "تحميل"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "الطلب"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "الرد"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "api ترجمة آلي مفتوح المصدر"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "استضافة شخصية. غيرمتصل سهل الاعداد."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "ترجمة حرة"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "الرخصة:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"يجب استخدام واجهة برمجة التطبيقات العامة هذه للاختبار أو للاستخدام الشخصي"
-" أو غير المتكرر. إذا كنت تريد تشغيل تطبيق إنتاجي ، من فضلك استخدم "
-"%(host_server)s أو %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "تستضيف خادمك الخاص"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "الحصول على مفتاح API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "مصنوعة %(heart)s من قبل %(contributors)s ومدعومة بواسطة %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s المساهمون"
#~ msgid "multipart/form-data"
#~ msgstr "البيانات المتعددة الجوانب/الرسمية"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamese"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "يجب استخدام واجهة برمجة التطبيقات العامة هذه للاختبار أو للاستخدام الشخصي أو"
+#~ " غير المتكرر. إذا كنت تريد تشغيل تطبيق إنتاجي ، من فضلك استخدم "
+#~ "%(host_server)s أو %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "تستضيف خادمك الخاص"
+
+#~ msgid "get an API key"
+#~ msgstr "الحصول على مفتاح API"
diff --git a/libretranslate/locales/az/LC_MESSAGES/messages.po b/libretranslate/locales/az/LC_MESSAGES/messages.po
index 10a4dee..601f0c4 100644
--- a/libretranslate/locales/az/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/az/LC_MESSAGES/messages.po
@@ -8,106 +8,116 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-08-31 07:05+0000\n"
"Last-Translator: Ali Evcil \n"
+"Language-Team: Azerbaijani \n"
"Language: az\n"
-"Language-Team: Azerbaijani "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Invalid JSON format"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Avtomatik simptomlar"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Uşaq"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Ən çox məlumat limitləri"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Invalid API əsas"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Bir API əsas almaq üçün server operatorla əlaqə edin"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Bakı %(url)s Bir API əsas almaq"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Yavaşlama:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Invalid tərəfindən: eksik %(name)s Qeydiyyat"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Ad Soyad: Qeydiyyat parametr bir sayı deyil %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Ad Soyad: Qeydiyyat parametr <= %(value)s %(name)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, fuzzy, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Invalid tərəfindən: (%(size)s) / (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s Yadda saxla"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s format dəstəkləmir"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, fuzzy, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
-msgstr "%(tname)s (%(tcode)s Ətraf dili kimi mövcud deyil %(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
+msgstr ""
+"%(tname)s (%(tcode)s Ətraf dili kimi mövcud deyil %(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Qeyd çevirmə: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Bu server üzərində faylları silinir."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Invalid istə: boş fayl"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Invalid tərəfindən: fayl format əlavə etmir"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Ad Soyad"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Proqramlar bu server üzrə dəstəklənir."
@@ -116,120 +126,176 @@ msgid "English"
msgstr "İngilis dili"
#: libretranslate/locales/.langs.py:2
-msgid "Arabic"
+msgid "Albanian"
msgstr "Bakı"
#: libretranslate/locales/.langs.py:3
-msgid "Azerbaijani"
+msgid "Arabic"
msgstr "Bakı"
#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Bakı"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Qalereya"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Rusiya"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Kateqoriya"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Çin"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Çin (traditional)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Çex dili"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Danimarka"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Rusiya"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estoniya"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Qeydiyyat"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Fransız"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Almaniya"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Yunanıstan"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Elan"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Qeydiyyat"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Bakı"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Qeydiyyat"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Rusiya"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Rusiya"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Yapon"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreya"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr " Latvia"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Rusiya"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Bakı"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Rusiya"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Axtar"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Bakı"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr " Portuguese"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr " Romanian"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Rusiya"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Qeydiyyat"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Sloveniya"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "İspaniya"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Bakı"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Axtarış"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr " Thai"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Türkiyə"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr " U"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr " Vietnamese"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Bakı"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -247,7 +313,7 @@ msgstr " translate"
msgid "Translate text from a language to another"
msgstr "Bir dildən digər məsləhət"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Tarix"
@@ -305,208 +371,213 @@ msgstr ""
"* 'html' - HTML qeydiyyat\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Alternat ünvanı"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Axtarış"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Bir dildən digər fayl"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Proqram"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
#, fuzzy
msgid "File to translate"
msgstr "Tarix"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Bir məhsul dilinin tanınması"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Axtarış"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "İmtahan"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
#, fuzzy
msgid "Text to detect"
msgstr "Avtomatik simptomlar"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Yadda saxla"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr " front"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr " front"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Müəlliflik hüquququ"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Qeydiyyat"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Qeyd olun"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr " Original"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Qeydiyyat"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
#, fuzzy
msgid "Language of original text"
msgstr "Bir məhsul dilinin tanınması"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Müəlliflik"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr " feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Dil kodu"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Human-readable dil adı (in English)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "İctimai kodları"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Xüsusi məhsullar"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Yadda saxla"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Yavaş aşağı qaldırmaq"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Url url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Konfiqurasiya"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Bu dil üçün simvol giriş limiti (-1 heç bir limit göstərir)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Qeydiyyat vaxtı"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "API əsas verilən veriləndirilməsi."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Bir API əsas tələb olun."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Təkliflərin təklif edilməsi mümkündür."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "E-poçt ünvanı"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Yadda saxla"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Elanlar"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Qeydiyyat %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Xüsusi məlumat"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Elan"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr "Sizin düzeltmeniz üçün. Müəlliflik hüququqları qorunur."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Heç bir dil mövcuddur. Siz modelləri düzgün quraşdırdı?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, fuzzy, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "API key növü. Bir API əsas lazım varsa, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "\"Get API Key\" linkini basın."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "server operatoru əlaqə edin."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Pulsuz və Açıq Source Machine Translation API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Pulsuz və Open Source Machine Translation API. Self-səfərli, offline və "
-"asan quraşdırmaq. Yalnız bir neçə dərhal öz API server çalışır."
+"Pulsuz və Open Source Machine Translation API. Self-səfərli, offline və asan"
+" quraşdırmaq. Yalnız bir neçə dərhal öz API server çalışır."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -516,152 +587,133 @@ msgstr " translation"
msgid "api"
msgstr " a"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API Qeydiyyat"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API Qeydiyyat"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Dil"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Tarix"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Qızıl / iş rejimi"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Axtarış"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Axtarış"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Proqramlar"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Qeydiyyatdan"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Swap məhsul və hedef dillər"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Axtarış"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Tarix"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Delete"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Tarix"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "E-poçt"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Dəstəklənən fayl formatları:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Proqram"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Axtarış"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Pulsuz"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr " Response"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source Machine Translation API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted. Offline Capable. Avadanlıq."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "Qeydiyyat"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Lisenziya:"
-#: libretranslate/templates/index.html:340
-#, fuzzy, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Bu ictimai API test üçün istifadə olunmalıdır, xüsusi və ya infrequent "
-"istifadə. istehsalda bir proqram işləyirsinizsə, lütfen %(host_server)s "
-"ya %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "öz serverinizə baxın"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "bir API əsas almaq"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, fuzzy, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Yaponiya %(heart)s by %(contributors)s və tərəfdaşlıq %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, fuzzy, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Kontributors"
@@ -669,3 +721,20 @@ msgstr "%(libretranslate)s Kontributors"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+#~ msgid "Vietnamese"
+#~ msgstr " Vietnamese"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Bu ictimai API test üçün istifadə olunmalıdır, xüsusi və ya infrequent "
+#~ "istifadə. istehsalda bir proqram işləyirsinizsə, lütfen %(host_server)s ya "
+#~ "%(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "öz serverinizə baxın"
+
+#~ msgid "get an API key"
+#~ msgstr "bir API əsas almaq"
diff --git a/libretranslate/locales/bg/LC_MESSAGES/messages.po b/libretranslate/locales/bg/LC_MESSAGES/messages.po
index 0649798..7fdc7aa 100644
--- a/libretranslate/locales/bg/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/bg/LC_MESSAGES/messages.po
@@ -1,4 +1,4 @@
-# Translations template for LibreTranslate.
+# Bulgarian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@@ -8,110 +8,120 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-02-17 02:36+0000\n"
"Last-Translator: Salif Mehmed \n"
-"Language-Team: Bulgarian \n"
"Language: bg\n"
+"Language-Team: Bulgarian "
+"\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.4\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Невалиден JSON формат"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Разпознаване"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Неоторизиран"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Твърде много нарушения на ограниченията на заявките"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Невалиден API ключ"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Моля, свържете се с оператора на сървъра, за да получите API ключ"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Посетете %(url)s, за да получите API ключ"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Забавяне:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Невалидна заявка: липсващ %(name)s параметър"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Невалидна заявка: заявката (%(size)s) надвишава ограничението за текст "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s не се поддържа"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "Форматът %(format)s не се поддържа"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
-"%(tname)s (%(tcode)s) не е наличен като целеви език от %(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) не е наличен като целеви език от %(sname)s "
+"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Не може да се преведе текстът: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Превеждането на файлове е изключено на този сървър."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Невалидна заявка: празен файл"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Невалидна заявка: файловият формат не се поддържа"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Невалидно име на файла"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Предложенията са изключени на този сървър."
@@ -120,120 +130,176 @@ msgid "English"
msgstr "Английски"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Арабски"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Азербайджански"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Китайски"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Чешки"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Датски"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Нидерландски"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Есперанто"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Финландски"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Френски"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Немски"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Гръцки"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Иврит"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Хинди"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Унгарски"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Индонезийски"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Ирландски"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Италиански"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Японски"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Корейски"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Персийски"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Полски"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Португалски"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Руски"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Словашки"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Испански"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Шведски"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Турски"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Украински"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Виетнамски"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +317,7 @@ msgstr "превеждане"
msgid "Translate text from a language to another"
msgstr "Превеждане на текст от един език на друг"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Преведен текст"
@@ -306,198 +372,202 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API ключ"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Превеждане на файл от един език на друг"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Преведен файл"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Файл за превод"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Разпознаване на езика на единичен текст"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Разпознавания"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Грешка при разпознаване"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Текст за разпознаване"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Извличане на специфични за клиентска част настройки"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "настройки на клиентската част"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "клиентска част"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Изпрати предложение за подобряване на превода"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Успех"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Не оторизиран"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Оригинален текст"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Предложен превод"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Език на оригиналния текст"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Език на предложения превод"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "обратна връзка"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Езиков код"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Човекоразбираемо име на езика (на английски)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Поддържани целеви езикови кодове"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Преведен(и) текст(ове)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Съобщение за грешка"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Причина за забавяне"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Адрес на преведен файл"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Стойност на увереност"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Ограничение за въвеждане на символи за този език (-1 означава, че няма "
"ограничение)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Време за изчакване на превода през клиентската част"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Дали базата данни с API ключове е включена."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Дали API ключ е задължителен."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Дали изпращането на предложения е включено."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Поддържан файлов формат"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Дали подаването е било успешно"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Копиране на текста"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Не може да се зареди %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Неизвестна грешка"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Копиран"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-"Благодарности за поправката. Имайте предвид, че предложението няма да влезе "
-"в сила веднага."
+"Благодарности за поправката. Имайте предвид, че предложението няма да "
+"влезе в сила веднага."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Няма налични езици. Правилно ли инсталирахте моделите?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Въведете своя API ключ. Ако имате нужда от API ключ, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "натиснете връзката „Получаване на API ключ“."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "свържете се с оператора на сървъра."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Свободен API с отворен код за машинен превод"
@@ -507,9 +577,9 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Свободен API с отворен код за машинен превод. Самостоятелен хостинг, офлайн "
-"способност и лесен за настройка. Стартирайте свой собствен API сървър само "
-"за няколко минути."
+"Свободен API с отворен код за машинен превод. Самостоятелен хостинг, "
+"офлайн способност и лесен за настройка. Стартирайте свой собствен API "
+"сървър само за няколко минути."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -519,152 +589,156 @@ msgstr "превод"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Документация"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Получаване на API ключ"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Задаване на API ключ"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Промяна на езика"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Редактиране"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Превключване на тъмен/светъл режим"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Отхвърляне"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API за превеждане"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Превод на текст"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Превод на файлове"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Превеждане от"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Размяна на изходния и целевия език"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Превеждане на"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Текст за превод"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Изтриване на текста"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Предлагане на превод"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Отказ"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Изпращане"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Поддържани файлови формати:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Файл"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Премахване на файла"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Превеждане"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Изтегляне"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Заявка"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Отговор"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API с отворен код за машинен превод"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Самостоятелен хостинг. Офлайн способност. Лесен за настройка."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Лицензия:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Този публичен API трябва да се използва за тестване, лична или рядка "
-"употреба. Ако възнамерявате да стартирате приложение в продукция, моля "
-"%(host_server)s или %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "хоствайте свой собствен сървър"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "получаване на API ключ"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Направено с %(heart)s от %(contributors)s и задвижвано от %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Сътрудници"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Виетнамски"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Този публичен API трябва да се "
+#~ "използва за тестване, лична или рядка"
+#~ " употреба. Ако възнамерявате да стартирате"
+#~ " приложение в продукция, моля "
+#~ "%(host_server)s или %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "хоствайте свой собствен сървър"
+
+#~ msgid "get an API key"
+#~ msgstr "получаване на API ключ"
+
diff --git a/libretranslate/locales/bn/LC_MESSAGES/messages.po b/libretranslate/locales/bn/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..07a7ca5
--- /dev/null
+++ b/libretranslate/locales/bn/LC_MESSAGES/messages.po
@@ -0,0 +1,721 @@
+# Bangla translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:20-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: bn \n"
+"Language: bn\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "অবৈধ JSON বিন্যাস"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "স্বয়ংক্রীয় সনাক্তকরণ"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "অনুমোদিত নয়"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "অত্যাধিক সংখ্যক সীমা লঙ্ঘন"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "ভুল API কি"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "API কি প্রাপ্ত করার উদ্দেশ্যে অনুগ্রহ করে সার্ভারের সাথে যোগাযোগ করুন"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "পরিদর্শন করুন ০ API কি প্রাপ্ত করার জন্য একটি API কি %(url)s"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "ধীর:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "অবৈধ অনুরোধ: অনুপস্থিত ০ পরামিতি %(name)s"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "অবৈধ অনুরোধ: ০ একটি নম্বর নয় %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"অবৈধ অনুরোধ: ০ পরামিতির মান হওয়া আবশ্যক ১ %(name)s %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+"অবৈধ অনুরোধ: অনুরোধ০সীমা অতিক্রান্ত১আপনি কি মনে করতে পারেন? "
+"%(size)s %(limit)s"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "০ সমর্থিত নয় %(lang)s"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "০ অসমর্থিত বিন্যাস %(format)s"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
+msgstr ""
+"০ ( চিহ্ন)১উপলব্ধ নয় ২ ( চিহ্ন)৩আপনি কি মনে "
+"করতে পারেন? %(tname)s %(tcode)s %(sname)s %(scode)s"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "টেক্সট অনুবাদ করতে ব্যর্থ: ০ %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "এই সার্ভারে ফাইল অনুবাদ নিষ্ক্রিয় ।."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "অবৈধ ফাইল: ফাঁকা ফাইল"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "অবৈধ অনুরোধ: ফাইল ফরম্যাট সমর্থিত নয়"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "ফাইলের নাম বৈধ নয়"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "এই সার্ভারের জন্য অতিরিক্ত পরামর্শ নিষ্ক্রিয় করা হয়েছে।."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "ইংরেজি"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "আলবেনীয়"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "আরবি"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "আজারবাইজানিName"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "বাংলা"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "বুলগেরিয়ানName"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "ক্যাটালানName"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "চীনি"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "চীনা (সরলীকৃত)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "চেক"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "ড্যানিশName"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "ডাচ"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "এসপারান্তোName"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "এস্তোনিয়ানName"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "ফিনিশName"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "ফরাসি"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "জার্মান"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "গ্রিক"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "হিব্রু"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "হিন্দি"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "হাঙ্গেরিয়ানName"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "ইন্দোনেশিয়ান"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "আইরিশ"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "ইতালীয়Name"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "জাপানি"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "কোরিয়ান"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "লাটভিয়ানName"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "লিথুয়েনীয়"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "মালয়Name"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "নরওয়েজিয়ান"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "ফার্সি"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "পোলিশ"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "পর্তুগীজName"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "রোমেনিয়ান"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "রুশ"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "স্লোভাকName"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "স্লোভেনিয়ান"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "স্প্যানিশ"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "সুইডিশ"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "ট্যাগু"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "থাই"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "তুর্কি"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "উরানিয়ানName"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "উর্দুName"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "সমর্থিত ভাষার তালিকা"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "ভাষা"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "অনুবাদ"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "একটি ভাষা থেকে টেক্সট অনুবাদ করুন"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "অনুবাদক টেক্সট"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "অবৈধ অনুরোধ"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "অনুবাদ সংক্রান্ত ত্রুটি"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "আস্তে যাও"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "নিষিদ্ধ করা হয়েছে"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "হ্যালো বিশ্ব!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "লেখাসমূহ"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "উৎসের কোড"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "লক্ষ্য ভাষার কোড"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "টেক্সট"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"মূল টেক্সটের ধরন:\n"
+"* লেখা - প্লেইন টেক্সট\n"
+"* `%s' - HTML markup\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "বিকল্প অনুবাদ"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "API-কি"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "অন্য একটি ভাষা থেকে ফাইল অনুবাদ করুন"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "অনুবাদক ফাইল"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "যে ফাইল অনুবাদ করা হচ্ছে"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "টেক্সটের ভাষা সনাক্ত করা হবে"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "স্বয়ংক্রীয় সনাক্তকরণ"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "সনাক্ত করা ত্রুটি"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "যে টেক্সট প্রদর্শন করা হবে"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "সুনির্দিষ্ট বৈশিষ্ট্য প্রাপ্ত করুন"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "সম্মুখপ্রান্ত সেটিংস"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "সম্মুখপ্রান্ত"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "অনুবাদ উন্নত করার জন্য একটি পরামর্শ প্রেরণ করুন"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "সাফল্য"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "অনুমোদিত নয়"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "মূল টেক্সট"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "প্রস্তাবিত অনুবাদ"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "মূল টেক্সটের ভাষা"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "অনুবাদ করার ভাষার অনুবাদ"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "প্রতিক্রিয়া"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "ভাষার কোড"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "পাঠযোগ্য নাম (ইংরেজি)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "সমর্থিত ভাষার কোড"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "অনুবাদক টেক্সট"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "ত্রুটির বার্তা"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "ধীর হওয়ার কারণ"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "অনুবাদক ফাইল url"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "মান"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "এই ভাষার জন্য অক্ষরের ইনপুট সীমা (-1-র মধ্যে সীমিত)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "সম্মুখপ্রান্ত অনুবাদ সময়সীমা"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "API- কি'র ডাটাবেস সক্রিয় করা হয়েছে কি না।."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "API-কি আবশ্যক কি না।."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "প্রস্তাবসমূহ সক্রিয় করা হয়েছে কি না."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "এই পাসওয়ার্ডটি মনে রাখা হবে"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "ডিস্কটি সফল হয়েছে কিনা"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "টেক্সট কপি করুন"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "লোড করতে ব্যর্থ ০ %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "অজানা ত্রুটি"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "অনুলিপি করা হয়েছে"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
+msgstr "সংশোধন করার জন্য ধন্যবাদ. উল্লেখ্য, এই পরামর্শ কার্যকর করা হবে না।."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "কোনো ভাষা উপলব্ধ নেই। আপনি কি মডেল সঠিকভাবে ইনস্টল করেছেন?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+"API-র মধ্যে পরিচয় পংক্তি লিখুন। যদি আপনার একটি API প্রয়োজন হয়, ০ "
+"%(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "\" API\" কি-র সাথে লিঙ্ক স্থাপন করুন।."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "সার্ভার সার্ভারের সাথে যোগাযোগ করুন ।."
+
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "মুক্ত এবং ওপেন সোর্স মেশিন অনুবাদ API"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"মুক্ত এবং ওপেন সোর্স মেশিন অনুবাদ API। স্ব-বিশ্লেষণ, অফ-লাইন অবস্থায় থাকা। "
+"কয়েক মিনিটের মধ্যে আপনার নিজস্ব API সার্ভার চালান।."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "অাপনার সিস্টেম সম্বন্ধে তথ্য দেখুনtranslation"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "অঙ্ক"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "API ডক"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "API প্রাপ্ত করুন কি"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "গিটহাব"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "API নির্ধারণ করুন কি"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "ভাষা পরিবর্তন করো"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "সম্পাদনা"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "পর্দা জুড়ে প্রদর্শন/আড়াল করা হবে"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "বাতিল"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "অনুবাদ API"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "টেক্সট অনুবাদ"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "ফাইল অনুবাদ করুন"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "অনুবাদ করো"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "Swap উৎস ও টার্গেট ভাষা ব্যবহার করুন"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "চিহ্নিত অবস্থানে স্থানান্তর করুন"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "অনুবাদ করার জন্য চিহ্নিত টেক্সট"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "টেক্সট মুছে ফেলুন"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "অনুবাদ পরামর্শ করো"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "বাতিল"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "প্রেরণ"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "সমর্থিত ফাইল ফরম্যাট:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "ফাইল"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "ফাইল মুছে ফেলুন"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "অনুবাদ"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "ডাউনলোড করা হয়েছে"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "অনুরোধ"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "প্রতিক্রিয়া"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "ওপেন সোর্স মেশিন অনুবাদ APIQuery"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "হায় খোদা! অফ-লাইন। শান্ত হও।."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibreTranslate"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "লাইসেন্স:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+"সহ ০ ধরন ১ এবং বিদারনশীল ২ %(heart)s %(contributors)s "
+"%(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "০ অংশগ্রহণকারী %(libretranslate)s"
diff --git a/libretranslate/locales/bn/meta.json b/libretranslate/locales/bn/meta.json
new file mode 100644
index 0000000..0bc3ef5
--- /dev/null
+++ b/libretranslate/locales/bn/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Bengali",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/ca/LC_MESSAGES/messages.po b/libretranslate/locales/ca/LC_MESSAGES/messages.po
index 42f899f..1a5626b 100644
--- a/libretranslate/locales/ca/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ca/LC_MESSAGES/messages.po
@@ -1,4 +1,4 @@
-# Translations template for LibreTranslate.
+# Catalan translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@@ -8,113 +8,121 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-03-07 08:01+0000\n"
"Last-Translator: d \n"
-"Language-Team: Catalan \n"
+"Language-Team: Catalan \n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.5-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Format JSON invàlid"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Detecció automàtica"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "No autoritzat"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Massa violacions de límits de la sol·licitud"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Clau API invàlida"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
"Si us plau, contacta amb l'administrador del servidor per demanar una clau "
"API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visita %(url)s per demanar una clau API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
-msgstr ""
+msgstr "Alenteix:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Sol·licitud no vàlida: falta el paràmetre %(name)s"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Petició no vàlida: %(name)s el paràmetre no és un número"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Petició no vàlida: %(name)s el paràmetre ha de ser <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Sol·licitud no vàlida: la sol·licitud (%(size)s) supera el límit de text "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "El %(lang)s no és compatible"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "El format %(format)s no està implementat"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) no està disponible com a llengua de destí des de "
"%(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "No es pot traduir el text: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "La traducció de fitxers està deshabilitada en aquest servidor."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Sol·licitud no vàlida: fitxer buit"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Sol·licitud no vàlida: el format del fitxer no està implementat"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nom de fitxer no vàlid"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Els suggeriments estan deshabilitats en aquest servidor."
@@ -123,120 +131,176 @@ msgid "English"
msgstr "anglès"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "AlbanèsName"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "àrab"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "àzeri"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "BengalíName"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "BúlgarName"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "CatalàName"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "xinès"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Xinès (tradicional)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "txec"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "danès"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "holandès"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "EstoniàName"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "finès"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "francès"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "alemany"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "grec"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "hebreu"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "hongarès"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "indonesi"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "irlandès"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "italià"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "japonès"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "coreà"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "LetóName"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "LituàName"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "MalaiName"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "NoruecName"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "persa"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "polonès"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "portuguès"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "RomanèsName"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "rus"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "eslovac"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "EslovèName"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "castellà"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "suec"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagàlog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Tai"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "turc"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "ucraïnès"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "vietnamita"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "UrdúName"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -254,7 +318,7 @@ msgstr "traduir"
msgid "Translate text from a language to another"
msgstr "Traduir text d'un idioma a un altre"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Text traduït"
@@ -268,7 +332,7 @@ msgstr "S'ha produït un error de traducció"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr ""
+msgstr "Redueix"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
@@ -304,357 +368,371 @@ msgid ""
" * `text` - Plain text\n"
" * `html` - HTML markup\n"
msgstr ""
+"Format del text del codi font:\n"
+"* handheldtext text text text_ text pla\n"
+"* htmlhtmlhtmlhtml - marca HTML\n"
#: libretranslate/locales/.swag.py:17
-msgid "API key"
-msgstr ""
+msgid "Preferred number of alternative translations"
+msgstr "Nombre preferit de traduccions alternatives"
#: libretranslate/locales/.swag.py:18
-msgid "Translate file from a language to another"
-msgstr ""
+msgid "API key"
+msgstr "Clau API"
#: libretranslate/locales/.swag.py:19
-msgid "Translated file"
-msgstr ""
+msgid "Translate file from a language to another"
+msgstr "Tradueix el fitxer des d' un idioma a un altre"
#: libretranslate/locales/.swag.py:20
-msgid "File to translate"
-msgstr ""
+msgid "Translated file"
+msgstr "Fitxer traduït"
#: libretranslate/locales/.swag.py:21
-msgid "Detect the language of a single text"
-msgstr ""
+msgid "File to translate"
+msgstr "Fitxer a traduir"
#: libretranslate/locales/.swag.py:22
-msgid "Detections"
-msgstr ""
+msgid "Detect the language of a single text"
+msgstr "Detecta l' idioma d' un únic text"
#: libretranslate/locales/.swag.py:23
-msgid "Detection error"
-msgstr ""
+msgid "Detections"
+msgstr "Detecciós"
#: libretranslate/locales/.swag.py:24
-msgid "Text to detect"
-msgstr ""
+msgid "Detection error"
+msgstr "Error de detecció"
#: libretranslate/locales/.swag.py:25
-msgid "Retrieve frontend specific settings"
-msgstr ""
+msgid "Text to detect"
+msgstr "Text a detectar"
#: libretranslate/locales/.swag.py:26
-msgid "frontend settings"
-msgstr ""
+msgid "Retrieve frontend specific settings"
+msgstr "Recupera els arranjaments específics del frontal"
#: libretranslate/locales/.swag.py:27
-msgid "frontend"
-msgstr ""
+msgid "frontend settings"
+msgstr "configuració del frontal"
#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "frontal"
+
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Envia un suggeriment per millorar una traducció"
-#: libretranslate/locales/.swag.py:29
-msgid "Success"
-msgstr ""
-
#: libretranslate/locales/.swag.py:30
-msgid "Not authorized"
-msgstr ""
+msgid "Success"
+msgstr "Èxit"
#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "No autoritzat"
+
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Text original"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Traducció suggerida"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Idioma del text original"
-#: libretranslate/locales/.swag.py:34
-msgid "Language of suggested translation"
-msgstr ""
-
#: libretranslate/locales/.swag.py:35
-msgid "feedback"
-msgstr ""
+msgid "Language of suggested translation"
+msgstr "Idioma de traducció suggerida"
#: libretranslate/locales/.swag.py:36
-msgid "Language code"
-msgstr ""
+msgid "feedback"
+msgstr "reacció"
#: libretranslate/locales/.swag.py:37
-msgid "Human-readable language name (in English)"
-msgstr ""
+msgid "Language code"
+msgstr "Codi d' idioma"
#: libretranslate/locales/.swag.py:38
-msgid "Supported target language codes"
-msgstr ""
+msgid "Human-readable language name (in English)"
+msgstr "Nom de l' idioma llegible (en anglès)"
#: libretranslate/locales/.swag.py:39
-msgid "Translated text(s)"
-msgstr ""
+msgid "Supported target language codes"
+msgstr "Codis d' idioma de destí acceptats"
#: libretranslate/locales/.swag.py:40
-msgid "Error message"
-msgstr ""
+msgid "Translated text(s)"
+msgstr "Text traduït(s)"
#: libretranslate/locales/.swag.py:41
-msgid "Reason for slow down"
-msgstr ""
+msgid "Error message"
+msgstr "Missatge d' error"
#: libretranslate/locales/.swag.py:42
-msgid "Translated file url"
-msgstr ""
+msgid "Reason for slow down"
+msgstr "Motiu per alentir- se"
#: libretranslate/locales/.swag.py:43
-msgid "Confidence value"
-msgstr ""
+msgid "Translated file url"
+msgstr "URL de fitxer traduït"
#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr ""
+msgid "Confidence value"
+msgstr "Valor de confiança"
#: libretranslate/locales/.swag.py:45
-msgid "Frontend translation timeout"
+msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
+"Límit d' entrada de caràcters per a aquest idioma (- 1 indica que no hi ha "
+"límit)"
#: libretranslate/locales/.swag.py:46
-msgid "Whether the API key database is enabled."
-msgstr ""
+msgid "Frontend translation timeout"
+msgstr "Expiració de la traducció del Frontal"
#: libretranslate/locales/.swag.py:47
-msgid "Whether an API key is required."
-msgstr ""
+msgid "Whether the API key database is enabled."
+msgstr "Si la base de dades de claus de l' API està habilitada."
#: libretranslate/locales/.swag.py:48
-msgid "Whether submitting suggestions is enabled."
-msgstr ""
+msgid "Whether an API key is required."
+msgstr "Si es requereix una clau API."
#: libretranslate/locales/.swag.py:49
-msgid "Supported files format"
-msgstr ""
+msgid "Whether submitting suggestions is enabled."
+msgstr "Si s' han d' habilitar els suggeriments d' enviament."
#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Format de fitxers acceptats"
+
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
-msgstr ""
+msgstr "Si la submissió ha estat correcta"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
-msgstr ""
+msgstr "Copia text"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
-msgstr ""
+msgstr "No s' ha pogut carregar %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
-msgstr ""
+msgstr "Error desconegut"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
-msgstr ""
+msgstr "S' ha copiat"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
+"Gràcies per la teva correcció. Noteu que el suggeriment no tindrà efecte "
+"immediatament."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
-msgstr ""
+msgstr "No hi ha idiomes disponibles. Has instal·lat correctament els models?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
+"Escriviu la vostra clau API. Si necessiteu una clau API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
-msgstr ""
+msgstr "premeu l' enllaç \"Treta la clau de l' API.\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
-msgstr ""
+msgstr "contacteu amb l' operador del servidor."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
-msgstr ""
+msgstr "API de traducció de la màquina lliure i oberta"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
+"API de traducció de la màquina lliure i oberta. Auto- màquina, fora de línia"
+" capaç de configurar. Executa el vostre servidor API en només uns minuts."
#: libretranslate/templates/index.html:11
msgid "translation"
-msgstr ""
+msgstr "traducció"
#: libretranslate/templates/index.html:11
msgid "api"
-msgstr ""
-
-#: libretranslate/templates/index.html:65
-msgid "API Docs"
-msgstr ""
+msgstr "api"
#: libretranslate/templates/index.html:67
-msgid "Get API Key"
-msgstr ""
+msgid "API Docs"
+msgstr "API Docs"
#: libretranslate/templates/index.html:69
-msgid "GitHub"
-msgstr ""
+msgid "Get API Key"
+msgstr "Obtén API Clau"
#: libretranslate/templates/index.html:71
-msgid "Set API Key"
-msgstr ""
+msgid "GitHub"
+msgstr "GitHub"
#: libretranslate/templates/index.html:73
-msgid "Change language"
-msgstr ""
+msgid "Set API Key"
+msgstr "Estableix l' API Clau"
-#: libretranslate/templates/index.html:79
-msgid "Edit"
-msgstr ""
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Canvia l' idioma"
#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Edita"
+
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
-msgstr ""
+msgstr "Commuta el mode fosc/ clar"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
-msgstr ""
+msgstr "Descarta"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
-msgstr ""
+msgstr "API de traducció"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
-msgstr ""
+msgstr "Tradueix el text"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
-msgstr ""
+msgstr "Tradueix fitxers"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
-msgstr ""
+msgstr "Tradueix des de"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
-msgstr ""
+msgstr "Intercanvia idiomes font i objectiu"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
-msgstr ""
+msgstr "Tradueix dins"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
-msgstr ""
+msgstr "Text a traduir"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
-msgstr ""
+msgstr "Esborra text"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
-msgstr ""
+msgstr "Suggereix traducció"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
-msgstr ""
+msgstr "Cancel· la"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
-msgstr ""
+msgstr "Envia"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
-msgstr ""
+msgstr "Formats de fitxer acceptats:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
-msgstr ""
+msgstr "Fitxer"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
-msgstr ""
+msgstr "Elimina fitxer"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
-msgstr ""
+msgstr "Tradueix"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
-msgstr ""
+msgstr "Descarrega"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
-msgstr ""
+msgstr "Sol· licita"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
-msgstr ""
+msgstr "Resposta"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
-msgstr ""
+msgstr "Obre l' API de traducció de la màquina d' origen"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr ""
-
-#: libretranslate/templates/index.html:335
-msgid "LibreTranslate"
-msgstr ""
+msgstr "Ha acabat. Capable fora de línia. Fàcil de configurar."
#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "Librescue"
+
+#: libretranslate/templates/index.html:339
msgid "License:"
-msgstr ""
+msgstr "Llicència:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr ""
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr ""
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr ""
+msgstr "Fet amb %(heart)s per %(contributors)s i alimentat per %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr ""
+msgstr "%(libretranslate)s Col· laboradors"
+
+#~ msgid "Vietnamese"
+#~ msgstr "vietnamita"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+
+#~ msgid "host your own server"
+#~ msgstr ""
+
+#~ msgid "get an API key"
+#~ msgstr ""
diff --git a/libretranslate/locales/ca/meta.json b/libretranslate/locales/ca/meta.json
new file mode 100644
index 0000000..acbb6a6
--- /dev/null
+++ b/libretranslate/locales/ca/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Catalan",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/cs/LC_MESSAGES/messages.po b/libretranslate/locales/cs/LC_MESSAGES/messages.po
index 453ae19..7107f79 100644
--- a/libretranslate/locales/cs/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/cs/LC_MESSAGES/messages.po
@@ -8,80 +8,90 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-01-23 14:01+0000\n"
"Last-Translator: Michal Čihař \n"
-"Language-Team: Czech \n"
"Language: cs\n"
+"Language-Team: Czech "
+"\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-"X-Generator: Weblate 5.4-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Neplatný formát JSON"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Automaticky rozpoznat"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Neoprávněné"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Příliš mnoho omezení požadavků"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Neplatný API klíč"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Obraťte se na provozovatele serveru pro získání API klíče"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Navštivte %(url)s pro získání API klíče"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Zpomalení:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Neplatný požadavek: chybějící parametr %(name)s"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"Neplatná požadavek: požadavek (%(size)s) překračuje limit textu (%(limit)s)"
+"Neplatná požadavek: požadavek (%(size)s) překračuje limit textu "
+"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s není podporováno"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formát není podporován"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@@ -90,28 +100,28 @@ msgstr ""
"%(tname)s (%(tcode)s) není k dispozici jako cílový jazyk od %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nelze přeložit text: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Překlady souborů jsou na tomto serveru zakázány."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Neplatný požadavek: prázdný soubor"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Neplatný požadavek: formát souboru není podporován"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Neplatný název souboru"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Návrhy jsou na tomto serveru zakázány."
@@ -120,120 +130,176 @@ msgid "English"
msgstr "Angličtina"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabština"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Ázerbájdžánština"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Čínština"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Čeština"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dánština"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holandština"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finština"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francouzština"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Němčina"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Řečtina"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebrejština"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindština"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Maďarština"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonéština"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irština"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italština"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japonština"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Korejština"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Perština"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polština"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugalština"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Ruština"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovenština"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Španělština"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Švédština"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turečtina"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukrajinština"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamština"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +317,7 @@ msgstr "překlady"
msgid "Translate text from a language to another"
msgstr "Přeložit text do jiného jazyka"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Přeložený text"
@@ -306,194 +372,198 @@ msgstr ""
"* `html` - HTML kód\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API klíč"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Přeložit soubor do jiného jazyka"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Přeložený soubor"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Soubor k překladu"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Rozpozná jazyk jediného textu"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Rozpoznání"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Chyba rozpoznání"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Text pro rozpoznání"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Načíst nastavení specifické pro rozhraní"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "nastavení rozhraní"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "rozhraní"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Odeslat návrh na zlepšení překladu"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Hledat"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Chybí oprávnění"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Původní text"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Navrhovaný překlad"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Jazyk původního textu"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Jazyk navrhovaného překladu"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "zpětná vazba"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Kód jazyka"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Lidsky čitelný název jazyka (v angličtině)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Podporované cílové jazykové kódy"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Přeložený text(y)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Chybová zpráva"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Důvod pro zpomalení"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL přeloženého souboru"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Míra jistoty"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Omezení počtu znaků pro tento jazyk (-1 označuje žádný limit)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Časový limit překladu rozhraní"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Jestli je dostupná databáze API klíčů."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Jestli je vyžadován API klíč."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Jestli je povoleno podání návrhů."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Podporované formáty souborů"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Jestli bylo podání úspěšné"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopírovat text"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Nelze načíst %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Neznámá chyba"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Zkopírováno"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr "Díky za opravu. Všimněte si, že návrh nebude mít vliv hned."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Žádné jazyky. Nainstalovali jste modely správně?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Zadejte ve svém API klíč. Pokud potřebujete klíč API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "následujte odkaz „Získejte API klíč“."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "obraťte se na provozovatele serveru."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Zdarma a Open Source API strojového překladu"
@@ -503,9 +573,9 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Zdarma a Open Source API strojového překladu. Vlastní hostovaní, použitelné "
-"bez připojení a snadno nastavitelné. Spusťte si vlastní API server během "
-"několika minut."
+"Zdarma a Open Source API strojového překladu. Vlastní hostovaní, "
+"použitelné bez připojení a snadno nastavitelné. Spusťte si vlastní API "
+"server během několika minut."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -515,155 +585,160 @@ msgstr "překlad"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API dokumentace"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Získejte API klíč"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Nastavit API klíč"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Změnit jazyk"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editace"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Přepnout tmavý / světlý režim"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Odmítnout"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Překladové API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Přeložit text"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Přeložit soubory"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Přeložit z"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Vyměnit zdroj a cílové jazyky"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Přeložit do"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Text překládat"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Smazat text"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Navrhnout překlad"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Hledat"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Odeslat"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Podporované formáty souborů:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Soubor"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Odebrat soubor"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Přeložit"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Stáhnout"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Požadavek"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Odpoveď"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source API strojového překladu"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Vlastní hostovnání. Použitelné bez připojení. Snadné nastavení."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licence:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Toto veřejné API by měl být použito jen pro testování, osobní nebo pro "
-"občasné použití. Pokud se chystáte spustit aplikaci v ostrém provozu, prosím "
-"%(host_server)s nebo %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "hostujte vlastní server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "získejte API klíč"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Vyrobeno s %(heart)s %(contributors)s a poháněno %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s přispěvateli"
#~ msgid "multipart/form-data"
#~ msgstr "vícepart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamština"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Toto veřejné API by měl být "
+#~ "použito jen pro testování, osobní nebo"
+#~ " pro občasné použití. Pokud se "
+#~ "chystáte spustit aplikaci v ostrém "
+#~ "provozu, prosím %(host_server)s nebo "
+#~ "%(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "hostujte vlastní server"
+
+#~ msgid "get an API key"
+#~ msgstr "získejte API klíč"
+
diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po
index 51abcb5..ea3fa19 100644
--- a/libretranslate/locales/da/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/da/LC_MESSAGES/messages.po
@@ -8,111 +8,121 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-06-09 17:09+0000\n"
"Last-Translator: Luna \n"
-"Language-Team: Danish \n"
+"Language-Team: Danish \n"
"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.6-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Ugyldigt JSON-format"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Auto-registrer"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Uautoriseret"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "For mange overtrædelser af anmodningsbegrænsninger"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Ugyldig API-nøgle"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Kontakt venligst serveroperatøren for at få en API-nøgle"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Besøg %(url)s for at få en API-nøgle"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Nedsættelse:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Ugyldig anmodning: manglende %(name)s-parameter"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Ugyldig anmodning: %(name)s parameter er ikke et nummer"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Ugyldig anmodning: %(name)s parameter skal være <= 1 1 1 1 "
+"%(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Ugyldig anmodning: anmodningen (%(size)s) overskrider tekstgrænsen "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s understøttes ikke"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s-format understøttes ikke"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) er ikke tilgængelig som målsprog fra %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Kan ikke oversætte tekst: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Oversættelse af filer er deaktiveret på denne server."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Ugyldig anmodning: tom fil"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Ugyldig anmodning: filformat understøttes ikke"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Ugyldigt filnavn"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Forslag er deaktiveret på denne server."
@@ -121,120 +131,176 @@ msgid "English"
msgstr "Engelsk"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albanien"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabisk"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Aserbajdsjan"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgarsk"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalansk"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Kinesisk"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kinesisk (traditionelt)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tjekkisk"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dansk"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Hollandsk"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estisk"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finsk"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Fransk"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Tysk"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Græsk"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebræisk"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Ungarsk"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesisk"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irsk"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiensk"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japansk"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreansk"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Lettisk let lettisk"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litauen"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norge"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persisk"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polsk"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugisisk"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumænsk"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Russisk"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovakisk"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovensk slovensk"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spansk"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Svensk"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Billeder af Thai"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Tyrkisk"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukrainsk"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamesisk"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -252,7 +318,7 @@ msgstr "oversæt"
msgid "Translate text from a language to another"
msgstr "Oversæt tekst fra et sprog til et andet"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Oversat tekst"
@@ -307,203 +373,210 @@ msgstr ""
" * `html` - HTML-markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Antal alternative oversættelser"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API-nøgle"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Oversæt fil fra et sprog til et andet"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Oversat fil"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fil at oversætte"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Registrer sproget i en enkelt tekst"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Registreringer"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Registreringsfejl"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tekst at registrere"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Hent frontend-specifikke indstillinger"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "frontend-indstillinger"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Indsend et forslag til forbedring af en oversættelse"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Succes"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ikke autoriseret"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Original tekst"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Foreslået oversættelse"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Originaltekstens sprog"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Sprog i foreslået oversættelse"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Sprogkode"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Menneskeligt læseligt sprognavn (på engelsk)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Understøttede målsprogkoder"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Oversat tekst(er)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Fejlmeddelelse"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Årsag til nedbremsning"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Oversat fil-URL"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Konfidensværdi"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Grænse for tegninput for dette sprog (-1 angiver ingen grænse)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Timeout for frontend-oversættelse"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Om API-nøgledatabasen er aktiveret."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Om en API-nøgle er påkrævet."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Om indsendelse af forslag er aktiveret."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Understøttede filformater"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Om indsendelse var vellykket"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopiér tekst"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Kan ikke indlæse %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Ukendt fejl"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopieret"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
-"Tak for din rettelse. Bemærk, at forslaget ikke træder i kraft med det samme."
+"Tak for din rettelse. Bemærk, at forslaget ikke træder i kraft med det "
+"samme."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Ingen tilgængelige sprog. Har du installeret modellerne korrekt?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr "Indtast din API-nøgle. Hvis du har brug for en API-nøgle, %(instructions)s"
+msgstr ""
+"Indtast din API-nøgle. Hvis du har brug for en API-nøgle, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "tryk på linket \"Get API Key\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "kontakt serveroperatøren."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Gratis og Open Source Maskinoversættelses-API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Gratis og Open Source Maskinoversættelses-API. Selv-hosted, kan bruges "
"offline og er let at opsætte. Kør din egen API-server på blot et par "
@@ -517,155 +590,154 @@ msgstr "oversættelse"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API-dokumenter"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Få API-nøgle"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Indstil API-nøgle"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Skift sprog"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Rediger"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Skift mellem mørk/lys tilstand"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Afvis"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Oversættelses-API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Oversæt Tekst"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Oversæt Filer"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Oversæt fra"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Byt om på kilde- og målsprog"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Oversæt til"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Tekst at oversætte"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Slet tekst"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Foreslå oversættelse"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Annuller"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Send"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Understøttede filformater:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Fil"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Fjern fil"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Oversæt"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Hent"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Anmod"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Svar"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source Maskinoversættelses-API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Selv-Hosted. Kan bruges offline. Nem at opsætte."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licens:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Denne offentlige API bør bruges til test, personlig eller sjælden brug. Hvis "
-"du har tænkt dig at køre en applikation i produktion, venligst %(host_server)"
-"s eller %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "host din egen server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "få en API-nøgle"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Lavet med %(heart)s af %(contributors)s og drevet af %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Bidragsydere"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamesisk"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Denne offentlige API bør bruges til test, personlig eller sjælden brug. Hvis"
+#~ " du har tænkt dig at køre en applikation i produktion, venligst "
+#~ "%(host_server)s eller %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "host din egen server"
+
+#~ msgid "get an API key"
+#~ msgstr "få en API-nøgle"
diff --git a/libretranslate/locales/de/LC_MESSAGES/messages.po b/libretranslate/locales/de/LC_MESSAGES/messages.po
index 25c3329..334996a 100644
--- a/libretranslate/locales/de/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/de/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-08-04 17:04+0000\n"
"Last-Translator: Simon Hahne \n"
"Language: de\n"
@@ -18,70 +18,80 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Ungültiges JSON-Format"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Auto-Erkennung"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Unbefugt"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Zu viele Verstöße gegen die Anfragelimits"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Ungültiger API-Schlüssel"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
"Bitte kontaktieren Sie den Serverbetreiber, um einen API-Schlüssel zu "
"erhalten"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Besuchen Sie %(url)s, um einen API-Schlüssel zu erhalten"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Verlangsamung:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Ungültige Anfrage: fehlender Parameter %(name)s"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Ungültige Anfrage: Anfrage (%(size)s) überschreitet Textlimit (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s wird nicht unterstützt"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "„%(format)s“-Format wird nicht unterstützt"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@@ -90,28 +100,28 @@ msgstr ""
"%(tname)s (%(tcode)s) ist nicht als Zielsprache von %(sname)s (%(scode)s)"
" verfügbar"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Konnte Text nicht übersetzen: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Die Übersetzung von Dateien ist auf diesem Server deaktiviert."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Ungültige Anfrage: leere Datei"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Ungültige Anfrage: Dateiformat nicht unterstützt"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Ungültiger Dateiname"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Vorschläge sind auf diesem Server deaktiviert."
@@ -120,120 +130,176 @@ msgid "English"
msgstr "Englisch"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabisch"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Aserbaidschanisch"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chinesisch"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tschechisch"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dänisch"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Niederländisch"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finnisch"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Französisch"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Deutsch"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Griechisch"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebräisch"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Ungarisch"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesisch"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irisch"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italienisch"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japanisch"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreanisch"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persisch"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polnisch"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugiesisch"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Russisch"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slowakisch"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spanisch"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Schwedisch"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Türkisch"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukrainisch"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamesisch"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +317,7 @@ msgstr "übersetzen"
msgid "Translate text from a language to another"
msgstr "Übersetzen von Text aus einer Sprache in eine andere"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Übersetzter Text"
@@ -306,170 +372,174 @@ msgstr ""
" * `html` – HTML-Markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API-Schlüssel"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Datei von einer Sprache in eine andere übersetzen"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Übersetzte Datei"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Datei zum Übersetzen"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Sprache eines einzelnen Textes erkennen"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Erkennungen"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Erkennungsfehler"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Zu erkennender Text"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Abrufen frontendspezifischer Einstellungen"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "Frontend-Einstellungen"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "Frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Einen Vorschlag zur Verbesserung einer Übersetzung einreichen"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Erfolg"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Nicht autorisiert"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Ursprünglicher Text"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Vorgeschlagene Übersetzung"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Sprache des Originaltextes"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Sprache der vorgeschlagenen Übersetzung"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "Feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Sprachencode"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Vom Menschen lesbare Sprachbezeichnung (auf Englisch)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Unterstützte Zielsprachencodes"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Übersetzter Text(e)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Fehlermeldung"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Gründe für die Verlangsamung"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL der übersetzten Datei"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Konfidenzwert"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Zeicheneingabegrenze für diese Sprache (-1 bedeutet unbegrenzt)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Zeitüberschreitung der Frontend-Übersetzung"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Ob die API-Schlüsseldatenbank aktiviert ist."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Ob ein API-Schlüssel erforderlich ist."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Ob die Einreichung von Vorschlägen aktiviert ist."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Unterstütztes Dateiformat"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Ob die Einreichung erfolgreich war"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Text kopieren"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Kann %(url)s nicht laden"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Unbekannter Fehler"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopiert"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@@ -477,27 +547,27 @@ msgstr ""
"Danke für Ihre Korrektur. Beachten Sie, dass der Vorschlag nicht sofort "
"wirksam wird."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Keine Sprachen verfügbar. Haben Sie die Modelle richtig installiert?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Geben Sie Ihren API-Schlüssel ein. Wenn Sie einen API-Schlüssel "
"benötigen, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "folgen Sie dem Link „API-Schlüssel erhalten“."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "kontaktieren Sie den Serverbetreiber."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Freie und quelloffene API für maschinelle Übersetzung"
@@ -519,152 +589,133 @@ msgstr "Übersetzung"
msgid "api"
msgstr "API"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API-Doku"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API-Schlüssel erhalten"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API-Schlüssel festlegen"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Sprache ändern"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Bearbeiten"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Dunkler/Lichtmodus"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Ablehnen"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Übersetzungs-API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Text übersetzen"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Dateien übersetzen"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Übersetzen von"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Quell- und Zielsprache vertauschen"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Übersetzen in"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Text zum Übersetzen"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Text löschen"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Übersetzung vorschlagen"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Abbrechen"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Senden"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Unterstützte Dateiformate:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Datei"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Datei entfernen"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Übersetzen"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Herunterladen"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Anfrage"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Antwort"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open-Source-API für maschinelle Übersetzung"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Selbstgehostet. Offline-fähig. Einfach einzurichten."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Lizenz:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Diese öffentliche API sollte zum Testen, persönlichen oder seltenen "
-"Gebrauch verwendet werden. Wenn Sie eine Anwendung produktiv betreiben "
-"wollen, bitte %(host_server)s oder %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "hosten Sie Ihren eigenen Server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "holen Sie sich einen API-Schlüssel"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Mit %(heart)s gemacht von %(contributors)s und betrieben mit %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "den %(libretranslate)s-Mitwirkenden"
@@ -672,3 +723,25 @@ msgstr "den %(libretranslate)s-Mitwirkenden"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamesisch"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Diese öffentliche API sollte zum Testen,"
+#~ " persönlichen oder seltenen Gebrauch "
+#~ "verwendet werden. Wenn Sie eine "
+#~ "Anwendung produktiv betreiben wollen, bitte"
+#~ " %(host_server)s oder %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "hosten Sie Ihren eigenen Server"
+
+#~ msgid "get an API key"
+#~ msgstr "holen Sie sich einen API-Schlüssel"
+
diff --git a/libretranslate/locales/el/LC_MESSAGES/messages.po b/libretranslate/locales/el/LC_MESSAGES/messages.po
index fde27d4..cb48831 100644
--- a/libretranslate/locales/el/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/el/LC_MESSAGES/messages.po
@@ -8,110 +8,120 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-09-30 09:00+0000\n"
"Last-Translator: Michael Lewnton \n"
+"Language-Team: Greek \n"
"Language: el\n"
-"Language-Team: Greek "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Άκυρη JSON μορφή"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Αυτόματη Ανίχνευση"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Μη εξουσιοδοτημένο"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Υπερβολικά αιτημάτα, περιορισμός παραβιάσεων"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Μη έγκυρο κλειδί API"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Επικοινωνήστε με τον χειριστή server για να πάρετε ένα API κλειδί"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Επισκεφθείτε τον σύνδεσμο %(url)s για να πάρετε ένα κλειδί API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Επιβράδυνση:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Άκυρο αίτημα: ελλιπής παράμετρος %(name)s"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Μη έγκυρη αίτηση: %(name)s η παράμετρος δεν είναι αριθμός"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Μη έγκυρη αίτηση: %(name)s η παράμετρος πρέπει να είναι <= > %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"Άκυρο αίτημα: το αίτημα(%(size)s) υπερβαίνει το όριο χαρακτήρων του "
-"κειμένου (%(limit)s)"
+"Άκυρο αίτημα: το αίτημα(%(size)s) υπερβαίνει το όριο χαρακτήρων του κειμένου"
+" (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "Δεν υποστηρίζoνται %(lang)s"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "Η μορφή %(format)s δεν υποστηρίζεται"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) δεν είναι διαθέσιμη ως γλώσσα-στόχος από %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Το κείμενο: %(text)s δεν μπορεί να μεταφράστει"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Η μετάφραση αρχείων ειναί απενεργοποιημένη σε αυτόν τον διακομιστή."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Μη έγκυρο αίτημα: Το αρχείο είναι άδειο"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Ακυρωμένη αίτηση: μορφή αρχείου που δεν υποστηρίζεται"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Μη έγκυρο όνομα αρχείου"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Οι προτάσεις απενεργοποιούνται σε αυτόν τον server."
@@ -120,120 +130,176 @@ msgid "English"
msgstr "Αγγλικά"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Αλβανικά"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Αραβικά"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Αζερμπαϊτζάν"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Μπενγκάλι"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Βουλγαρικά"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Καταλανικά"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Κινέζοι"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Κινέζικα (παραδοσιακά)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Τσεχική"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Δανία"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Ολλανδ Ολλανδία"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Εσθονικά"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Φινλανδός"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Γάλλος"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Γερμανός"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Ελληνικά"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Εβραϊκή εβραϊκή"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Ούγγρος"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Ινδονησία"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Ιρλανδία"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Ιταλός"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Ιάπωνες"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Κορεατική Κορέα"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Λετονικά"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Λιθουανικά"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Μαλαϊκή"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Νορβηγικά"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Πέρσες"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Πολωνία Πολωνίας"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Πορτογαλικά"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Ρουμανία"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Ρώσοι"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Σλοβά"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Σλοβενία"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Ισπανικά ισπανικά"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Σουηδικά"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Ταγκαλόγκ"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Ταϊλάνδη"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Το τουρκικό Τουρκ Τουρκίας"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ουκρανίας"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Βιετναμ Βιετνάμ"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Ούρντου"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +317,7 @@ msgstr "μετέφρασε"
msgid "Translate text from a language to another"
msgstr "Μεταφράστε κείμενο από γλώσσα σε άλλη"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Μεταφρασμένο κείμενο"
@@ -306,208 +372,212 @@ msgstr ""
"* \"html\" - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Προτιμώμενος αριθμός εναλλακτικών μεταφράσεων"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Κλειδί API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Επίπεδο από γλώσσα σε άλλη"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Μεταφρασμένο αρχείο"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Αρχείο για μετάφραση"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Περιγράψτε τη γλώσσα ενός ενιαίου κειμένου"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Ανιχνεύεται"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Ανίχνευση σφάλματος"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Κείμενο για ανίχνευση"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Επανάκτηση συγκεκριμένων ρυθμίσεων"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "ρυθμίσεις frontend"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "πρόσωψη"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Υποβολή πρότασης για βελτίωση της μετάφρασης"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Επιτυχία"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Όχι εξουσιοδοτημένος"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Πρωτότυπο κείμενο"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Προτεινόμενη μετάφραση"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Γλώσσα αρχικού κειμένου"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Γλώσσα προτεινόμενης μετάφρασης"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "ανατροφοδότηση"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Κωδικός γλώσσας"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Ανθρώπινο αναγνώσιμο όνομα γλώσσας (στα αγγλικά)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Υποστηριζόμενη γλώσσα-στόχος"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Μεταφρασμένο κείμενο(s)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Μήνυμα σφάλματος"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Λόγος για επιβράδυνση"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Μεταφρασμένο αρχείο url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Εμπιστοσύνη αξία"
-#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr "Χαρακτηριστικά όρια εισόδου για αυτή τη γλώσσα (-1 δεν υποδεικνύει όριο)"
-
#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+"Χαρακτηριστικά όρια εισόδου για αυτή τη γλώσσα (-1 δεν υποδεικνύει όριο)"
+
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Frontend μετάφραση timeout"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Είτε η βάση δεδομένων API είναι ενεργοποιημένη."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Είτε απαιτείται κλειδί API."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Είτε η υποβολή προτάσεων είναι ενεργοποιημένη."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Υποστηριζόμενη μορφή αρχείων"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Είτε η υποβολή ήταν επιτυχής"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Αντιγραφή κειμένου"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Δεν μπορεί να φορτώσει φορτίο %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Άγνωστο λάθος"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Συνήγοροι"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
-"Χάρη στη διόρθωση σας. Σημειώστε ότι η πρόταση δεν θα τεθεί σε ισχύ "
-"αμέσως."
+"Χάρη στη διόρθωση σας. Σημειώστε ότι η πρόταση δεν θα τεθεί σε ισχύ αμέσως."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Δεν υπάρχουν διαθέσιμες γλώσσες. εγκαταστήσετε σωστά τα μοντέλα?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Τύπος στο API Key. Εάν χρειάζεστε ένα API key, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "πατήστε το σύνδεσμο \"Get API Key\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "επικοινωνήστε με τον διαχειριστή server."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Δωρεάν και Open Source Machine μετάφραση API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Δωρεάν και Open Source Machine Translation API. Self-hosted, offline "
-"ικανή και εύκολη στη ρύθμιση. Πατήστε το δικό σας διακομιστή API σε λίγα "
-"λεπτά."
+"Δωρεάν και Open Source Machine Translation API. Self-hosted, offline ικανή "
+"και εύκολη στη ρύθμιση. Πατήστε το δικό σας διακομιστή API σε λίγα λεπτά."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -517,154 +587,135 @@ msgstr "μετάφραση"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Docs"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Λήψη κλειδιού API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Ορισμός κλειδιού API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Αλλαγή γλώσσας"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Επεξεργασία επεξεργασίας"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toggle dark/light mode"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Απ"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Μετάφραση API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Μετάφραση κειμένου"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Αρχεία μετάφρασης"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Μεταφράστε από"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Η πηγή Swap και οι γλώσσες-στόχος"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Μετάβαση σε"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Κείμενο για μετάφραση"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Διαγράψτε κείμενο"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Πρότεινε μετάφραση"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Ακύρωση"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Αποστολή"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Υποστηριζόμενη μορφή αρχείων:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "File"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Αφαιρέστε αρχείο αρχείων"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Μετάφρασε"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Λήψη"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Αίτηση αιτήματος"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Απάντηση"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Άνοιγμα API Πηγιαίου Μηχανίματος Μετάφρασης"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Αυτο-Hosted. Offline Capable. Εύκολο στη ρύθμιση."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Άδεια:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Αυτό το δημόσιο API θα πρέπει να χρησιμοποιείται για δοκιμές, προσωπική ή"
-" σπάνια χρήση. Εάν πρόκειται να εκτελέσετε μια εφαρμογή στην παραγωγή, "
-"παρακαλούμε %(host_server)s ή %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "φιλοξενήσει το δικό σας διακομιστή"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "πάρετε ένα API key"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"Δημιουργήθηκε με %(heart)s από %(contributors)s και τροφοδοτείται από "
"%(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Συμβαλλόμενοι"
@@ -672,3 +723,20 @@ msgstr "%(libretranslate)s Συμβαλλόμενοι"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+#~ msgid "Vietnamese"
+#~ msgstr "Βιετναμ Βιετνάμ"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Αυτό το δημόσιο API θα πρέπει να χρησιμοποιείται για δοκιμές, προσωπική ή "
+#~ "σπάνια χρήση. Εάν πρόκειται να εκτελέσετε μια εφαρμογή στην παραγωγή, "
+#~ "παρακαλούμε %(host_server)s ή %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "φιλοξενήσει το δικό σας διακομιστή"
+
+#~ msgid "get an API key"
+#~ msgstr "πάρετε ένα API key"
diff --git a/libretranslate/locales/eo/LC_MESSAGES/messages.po b/libretranslate/locales/eo/LC_MESSAGES/messages.po
index d817bdc..473e000 100644
--- a/libretranslate/locales/eo/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/eo/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-05-02 19:52+0000\n"
"Last-Translator: Jorge Maldonado Ventura \n"
"Language: eo\n"
@@ -18,68 +18,78 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Nevalida JSON-aranĝo"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Aŭtomata Detekto"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Ne rajtigita"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Tro da petaj limmalobservoj"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Invalid API-ŝlosilo"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Bonvolu kontakti la servilo operatoro por akiri API-ŝlosilon"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Vizitu %(url)s por akiri API-ŝlosilon"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Malrapidiĝo:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Nevalida peto: mankas %(name)s parametro"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Nevalida peto: peto (%(size)s) superas tekstlimon (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s ne estas subtenata"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s-aranĝo ne estas subtenata"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@@ -88,28 +98,28 @@ msgstr ""
"%(tname)s (%(tcode)s) ne estas disponebla kiel cellingvo de %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Ne povas traduki tekston: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Dosier-tradukoj estas malebligitaj en ĉi tiu servilo."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Nevalida peto: malplena dosiero"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Nevalida peto: dosieraranĝo ne subtenata"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nevalida dosiernomo"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Sugestoj estas malebligitaj en ĉi tiu servilo."
@@ -118,120 +128,176 @@ msgid "English"
msgstr "Angla"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Araba"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbajĝana"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Ĉina"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Ĉeĥa"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dana"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Nederlanda"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finna"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Franca"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Germana"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Greka"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebrea"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindia"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Hungara"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonezia"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlanda"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Itala"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japana"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Korea"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persa"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Pola"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugala"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Rusa"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovaka"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Hispana"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Sveda"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turka"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukraina"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vjetnama"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -249,7 +315,7 @@ msgstr "traduki"
msgid "Translate text from a language to another"
msgstr "Traduki tekston de lingvo al alia"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Tradukita teksto"
@@ -304,194 +370,198 @@ msgstr ""
" * `html` - HTML-markado\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API-ŝlosilo"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Traduki dosieron de lingvo al alia"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Tradukita dosiero"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Dosiero por traduki"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detekti la lingvon de ununura teksto"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Ekkonoj"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Ekkona eraro"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Ekkonota teksto"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Ricevu agordojn specifajn de la fasado"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "agordoj de la fasado"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "fasado"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Submeti sugeston por plibonigi tradukon"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Sukceso"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ne rajtigita"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Origina teksto"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Proponita traduko"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Lingvo de la origina teksto"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Lingvo de la proponita traduko"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "prikomentado"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Lingvokodo"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Hom-legebla lingvonomo (en la angla)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Subtenitaj cellingvokodoj"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Tradukita(j) teksto(j)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Erarmesaĝo"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Kaŭzo de malrapido"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL de tradukita dosiero"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Konfidencvaloro"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Limo de signaj enigoj por ĉi tiu lingvo (-1 indikas neniun limon)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tempolimo de fasada traduko"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Ĉu la datumbazo de la API-ŝlosilo estas ebligita."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Ĉu API-ŝlosilo estas postulata."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Ĉu submeti proponojn estas ebligita."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Aranĝo de subtenataj dosieroj"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Ĉu submetado estis sukcesa"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopii tekston"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Ne povas ŝarĝi %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Nekonata eraro"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopiita"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr "Dankon pro via korekto. Notu, ke la propono ne ekvalidos tuj."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Neniu lingvo disponebla. Ĉu vi ĝuste instalis la modelojn?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Tajpu vian API-ŝlosilon. Se vi bezonas API-ŝlosilon, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "premu la «Akiri API-ŝlosilon» ligilon."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "kontaktu la servilan operatoron."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Libera kaj malfermitkoda API de maŝina tradukado"
@@ -513,152 +583,133 @@ msgstr "traduko"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API-dokumentaro"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Akiri API-ŝlosilon"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Agordi API-ŝlosilon"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Ŝanĝi la lingvon"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Redakti"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toggle malhela/luma reĝimo"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Malakcepti"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Tradukado-API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Traduki tekston"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Traduki dosierojn"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Tradukita de"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Interŝanĝi fontajn kaj celajn lingvojn"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Traduki al"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Teksto por traduki"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Forigi tekston"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Proponita traduko"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Nuligi"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Sendi"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Subtenitaj dosierformatoj:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Dosiero"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Forigi dosieron"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Traduku"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Elŝuti"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Peto"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Respondo"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API de malfermitkoda maŝina tradukado"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Mem-gastigita. Senkonekte funkciebla. Facile instalebla."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Permesilo:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Ĉi tiu publika API devus esti uzita por testado, persona aŭ malofta uzo. "
-"Se vi rulos apon en produkta medio, bonvolu %(host_server)s aŭ "
-"%(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "gastigi vian propran servilon"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "akiri API-ŝlosilon"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Farita per %(heart)s de %(contributors)s kaj funkciigita per %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Kontribuantoj"
@@ -666,3 +717,25 @@ msgstr "%(libretranslate)s Kontribuantoj"
#~ msgid "multipart/form-data"
#~ msgstr "multiparta/forma-datumoj"
+#~ msgid "Vietnamese"
+#~ msgstr "Vjetnama"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Ĉi tiu publika API devus esti "
+#~ "uzita por testado, persona aŭ malofta"
+#~ " uzo. Se vi rulos apon en "
+#~ "produkta medio, bonvolu %(host_server)s aŭ "
+#~ "%(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "gastigi vian propran servilon"
+
+#~ msgid "get an API key"
+#~ msgstr "akiri API-ŝlosilon"
+
diff --git a/libretranslate/locales/es/LC_MESSAGES/messages.po b/libretranslate/locales/es/LC_MESSAGES/messages.po
index 5b23d77..5167ff7 100644
--- a/libretranslate/locales/es/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/es/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-01-25 02:06+0000\n"
"Last-Translator: José Alberto Justiniani \n"
"Language: es\n"
@@ -18,72 +18,82 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Formato JSON inválido"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Detección automática"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "No autorizado"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Demasiadas violaciones a los límites de la solicitud"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Clave API inválida"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
"Por favor, contacte con el operador del servidor para obtener una clave "
"API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visita %(url)s para conseguir una clave API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Ralentización:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Solicitud inválida: falta %(name)s parámetro"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Solicitud inválida: el %(size)s) de la solicitud excede el límite de "
"(%(limit)s) de texto"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "el %(lang)s no es compatible"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "formato(s) %(format)s no compatible(s)"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@@ -92,28 +102,28 @@ msgstr ""
"%(tname)s (%(tcode)s) no está disponible como idioma de destino para "
"%(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "No se puede traducir el texto: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "La traducción de archivos está deshabilitada en este servidor."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Solicitud inválida: archivo vacío"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Solicitud inválida: formato de archivo no compatible"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nombre de archivo inválido"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Las sugerencias están deshabilitadas en este servidor."
@@ -122,120 +132,176 @@ msgid "English"
msgstr "Inglés"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Árabe"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaijani"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chino"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Checo"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Danés"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holandés"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finlandés"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francés"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Alemán"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Griego"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebreo"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Húngaro"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesio"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandés"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiano"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japonés"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Coreano"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persa"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polaco"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugués"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Ruso"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Eslovaco"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Español"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Suecia"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turco"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ucraniano"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamita"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -253,7 +319,7 @@ msgstr "traducir"
msgid "Translate text from a language to another"
msgstr "Traducir texto de un idioma a otro"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Texto traducido"
@@ -308,170 +374,174 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Clave API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Traducir archivo de un idioma a otro"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Archivo traducido"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Archivo a traducir"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detectar el idioma de un solo texto"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Detecciones"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Error de detección"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Texto a detectar"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Recuperar configuración específica de la interfaz"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "configuración de la interfaz"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "interfaz"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Presentar una sugerencia para mejorar la traducción"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Todo salió bien"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "No autorizado"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Texto original"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Traducción propuesta"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Idioma del texto original"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Idioma de la traducción sugerida"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "opinión"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Código de idioma"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nombre del idioma comprensible por el ser humano (en inglés)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Códigos de idiomas de destino compatibles"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Texto(s) traducido(s)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Mensaje de error"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Razón para reducir la velocidad"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Archivo traducido url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valor de confianza"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Límite de entrada de caracteres para este idioma (-1 indica sin límite)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tiempo de traducción de interfaz"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Si la base de datos clave API está habilitada."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Si se necesita una clave API."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Si se permite presentar sugerencias."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formato de archivos compatibles"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Si el envío tuvo éxito"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Copiar texto"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "No se puede cargar %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Error desconocido"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Copiado"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@@ -479,25 +549,25 @@ msgstr ""
"Gracias por tu corrección. Ten en cuenta que la sugerencia no tendrá "
"efecto inmediatamente."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "No hay idiomas disponibles. ¿Instalaste los modelos correctamente?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Introduce tu clave de API. Si necesitas una clave de API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "presiona el enlace \"Obtener Clave API\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "comunícate con el operador del servidor."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "API de traducción automática gratuita y de código abierto"
@@ -519,152 +589,133 @@ msgstr "traducción"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Docs"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Obtener Clave API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Establecer Clave API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Cambiar el idioma"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editar"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Modo oscuro/ligero"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Desestimar"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API de Traducción"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Traducir texto"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Traducir archivos"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Traducir del"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Cambiar idioma de origen y destino"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Traducir al"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Texto para traducir"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Borrar el texto"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Sugerir traducción"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Cancelar"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Enviar"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formatos de archivo compatibles:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Archivo"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Eliminar el archivo"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Traducir"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Descargar"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Solicitud"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Respuesta"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API de Traducción de Código Abierto"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Autónoma. Funciona Sin Conexión. Fácil de Configurar."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licencia:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Esta API pública debería ser utilizada sólo para hacer pruebas y para el "
-"uso personal o poco frecuente. Si vas a ejecutar una aplicación en "
-"producción, por favor %(host_server)s u %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "aloja tu propio servidor"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "obtén una clave API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Hecho con %(heart)s por %(contributors)s e impulsado por %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Colaboradores de %(libretranslate)s"
@@ -672,3 +723,26 @@ msgstr "Colaboradores de %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamita"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Esta API pública debería ser utilizada"
+#~ " sólo para hacer pruebas y para "
+#~ "el uso personal o poco frecuente. "
+#~ "Si vas a ejecutar una aplicación "
+#~ "en producción, por favor %(host_server)s "
+#~ "u %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "aloja tu propio servidor"
+
+#~ msgid "get an API key"
+#~ msgstr "obtén una clave API"
+
diff --git a/libretranslate/locales/et/LC_MESSAGES/messages.po b/libretranslate/locales/et/LC_MESSAGES/messages.po
index a0ab8a8..278f456 100644
--- a/libretranslate/locales/et/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/et/LC_MESSAGES/messages.po
@@ -1,4 +1,4 @@
-# Translations template for LibreTranslate.
+# Estonian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@@ -8,111 +8,119 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-02-01 18:01+0000\n"
"Last-Translator: Priit Jõerüüt \n"
-"Language-Team: Estonian \n"
+"Language-Team: Estonian \n"
"Language: et\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.4-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Vigane JSON-vorming"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Tuvasta keel automaatselt"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Pole lubatud"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Liiga palju päringuid ühes ajaühikus"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Vigane API võti"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Palun küsi serveri haldajalt API võtit"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "API võtme saamiseks palun vaata seda urli - %(url)s"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Võtame nüüd tempot alla:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Vigane päring: puuduv parameeter „%(name)s“"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Vigane taotlus: %(name)s parameeter ei ole arv"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Vigane taotlus: %(name)s parameeter peab olema ≤ %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Vigane päring: päringu (%(size)s) suurus ületab tekstipäringutele lubatud "
"ülempiiri (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s keel ei ole veel tõlgitav"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s vorming ei ole veel toetatud"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"%(tname)s keel (%(tcode)s) ei ole veel kasutatav sihtkeelena kui lähtekeel "
"on %(sname)s keel (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Teksti tõlkimine ei õnnestu: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Failide tõlkimine ei ole selles serveris lubatud."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Vigane päring: tühi fail"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Vigane päring: failivorming pole toetatud"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Vigane failinimi"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Tõlkesoovituste võimalus ei ole selles serveris kasutusel."
@@ -121,120 +129,176 @@ msgid "English"
msgstr "inglise"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albaania"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "araabia"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "aserbaidžaani"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgaaria"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Kataloonia"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "hiina"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Hiina (traditsiooniline)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "tšehhi"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "taani"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "hollandi"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Eesti"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "soome"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "prantsuse"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "saksa"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "kreeka"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "heebrea"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "ungari"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "indoneesia"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "iiri"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "itaalia"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "jaapani"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "korea"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Läti"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Leedu"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norra"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "pärsia"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "poola"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "portugali"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumeenlane"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "vene"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "slovaki"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Sloveenia"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "hispaania"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "rootsi"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalogi"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Tai"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "türgi"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "ukraina"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "vietnami"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -252,7 +316,7 @@ msgstr "tõlkimine"
msgid "Translate text from a language to another"
msgstr "Tõlgi tekst ühest keelest teise"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Tõlgitud tekst"
@@ -307,207 +371,213 @@ msgstr ""
" * `html` - HTML-vormingus tekst\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Alternatiivsete tõlgete eelistatud arv"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API võti"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Tõlgi fail ühest keelest teise"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Tõlgitud fail"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Tõlgitav fail"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Tuvasta ühe teksti keel"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Tuvastamise tulemused"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Viga tuvastamisel"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tekst, kust peaksime keele tuvastama"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Päring kasutajaliidese seadistuste vaatamiseks"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "kasutajaliidese seadistused"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "kasutajaliides"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Võimalus ettepanekute saatmiseks tõlke parandamise nimel"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Päring õnnestus"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Päring pole lubatud"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Lähtetekst"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Ettepanek tõlke parandamiseks"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Teksti lähtekeel"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Teksti tõlkekeel"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "tagasiside"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Keelekood"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Inimloetav keele nimi (inglise keeles)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Tõetatud tõlkekeelte koodid"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Tõlgitud tekst(id)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Veateade"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Päringute aeglustamise põhjus"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Tõlgitud faili url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Usaldusväärsuse väärtus"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
-"Lähteteksti tähemärkide mahu ülempiir selle keele kohta (-1 märgib ülempiiri "
-"puudumist)"
+"Lähteteksti tähemärkide mahu ülempiir selle keele kohta (-1 märgib ülempiiri"
+" puudumist)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tõlkepäringu aegumine kasutajaliideses"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Kas API võtmete andmebaas on kasutusel."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Kas API võtme kasutamine on nõutav."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Kas tõlkesoovituste saatmine on kasutusel."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Toetatud failivormingud"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Kas tõlkesoovituse saatmine õnnstus"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopeeri tekst"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s urli laadimine ei õnnestunud"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Tundmatu viga"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopeeritud"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
"Täname tõlke parandusettepaneku eest. Palun arvesta, et ta ei tule koheselt "
"kasutusele."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr ""
"Ühtegi keelt pole saadaval. Kas sa keelemudelid paigaldasid korrektselt?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr "Sisesta siia oma API võti. Kui sul API võti on puudu, %(instructions)s"
+msgstr ""
+"Sisesta siia oma API võti. Kui sul API võti on puudu, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "klõpsi linki „Osta API võti“."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "võta ühendust serveri haldajaga."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Vaba ja avatud lähtekoodiga masintõlke API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Vaba ja avatud lähtekoodiga masintõlke API. Majutatav oma serveris, toimib "
"ka võrguühenduseta ja on hõlpsasti seadistatav. Võta oma API server "
@@ -521,155 +591,154 @@ msgstr "tõlge"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API kirjeldus"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Osta API võti"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Lisa API võti"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Vaheta keelt"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Muuda"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Vaheta kujundust: tume/hele"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Loobu"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "TõlkeAPI"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Tõlgi teksti"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Tõlgi faile"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Lähtekeel"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Vaheta lähte- ja tõlkekeeled"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Tõlkekeel"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Tõlgitav tekst"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Kustuta tekst"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Soovita paremat tõlget"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Katkesta"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Saada"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Kasutatavad failivormingud:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Fail"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Eemalda fail"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Tõlgi"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Laadi alla"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Päring"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Vastus"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Avatud lähtekoodiga masintõlke API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr ""
"Majutatav oma serveris. Toimib ka võrguühenduseta. Hõlpsasti seadistatav."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Litsents:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Palun kasuta seda avalikku API't testimiseks, isiklikel eesmärkidel või "
-"muudel harvadel juhtudel. Kui tahad kasutada API't mõnes "
-"produktsioonirakenduses, siis palun %(host_server)s või %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "pane püsti oma server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "või osta meie serveri API võti"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"Tehtud suure %(heart)s'ga, millesse panustasid %(contributors)s ning "
"sisulise töö teeb ära %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s kaasautorid"
+
+#~ msgid "Vietnamese"
+#~ msgstr "vietnami"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Palun kasuta seda avalikku API't testimiseks, isiklikel eesmärkidel või "
+#~ "muudel harvadel juhtudel. Kui tahad kasutada API't mõnes "
+#~ "produktsioonirakenduses, siis palun %(host_server)s või %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "pane püsti oma server"
+
+#~ msgid "get an API key"
+#~ msgstr "või osta meie serveri API võti"
diff --git a/libretranslate/locales/et/meta.json b/libretranslate/locales/et/meta.json
new file mode 100644
index 0000000..01f9bd4
--- /dev/null
+++ b/libretranslate/locales/et/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Estonian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/fa/LC_MESSAGES/messages.po b/libretranslate/locales/fa/LC_MESSAGES/messages.po
index b298664..f9e523c 100644
--- a/libretranslate/locales/fa/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/fa/LC_MESSAGES/messages.po
@@ -8,110 +8,118 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-07-26 07:54+0000\n"
"Last-Translator: MjavadH \n"
-"Language-Team: Persian \n"
+"Language-Team: Persian \n"
"Language: fa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.7-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "فرمت JSON نامعتبر است"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "تشخیص خودکار"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "غیرمجاز"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "تعداد درخواستها بیش از حد مجاز است"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "کلید API نامعتبر است"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "لطفاً برای دریافت کلید API با اپراتور سرور تماس بگیرید"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "برای دریافت کلید API از %(url)s بازدید نمایید"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "کاهش سرعت:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "درخواست نامعتبر: پارامتر %(name)s وجود ندارد"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "درخواست Invalid: %(name)s پارامتر یک عدد نیست"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "درخواست Invalid: %(name)s پارامتر باید <= 1 1 %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"درخواست نامعتبر: درخواست (%(size)s) از محدودیت متنی (%(limit)s) فراتر رفت"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s پشتیبانی نمیشود"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "فرمت %(format)s پشتیبانی نمیشود"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"(%(tcode)s) (%(tname)s) از (%(scode)s) (%(sname)s) به عنوان یک زبان هدف در "
"دسترس نیست"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "متن قابل ترجمه نیست: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "ترجمه فایل در این سرور غیرفعال است."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "درخواست نامعتبر: فایل خالی است"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "درخواست نامعتبر: فرمت فایل پشتیبانی نمیشود"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "نام فایل نامعتبر است"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "پیشنهادات در این سرور غیرفعال است."
@@ -120,120 +128,176 @@ msgid "English"
msgstr "انگلیسی"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "آلبانی"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "عربی"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "آذری"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "بنگالی"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "بلغاری"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "کاتالونیا"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "چینی"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "چینی ( سنتی)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "(کشور) چک"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "دانمارکی"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "هلندی"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "اسپرانتور"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "استونی"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "فنلاندی"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "فرانسوی"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "آلمانی"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "یونانی"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "عبری"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "هندی"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "مجارستانی"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "اندونزیایی"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "ایرلندی"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "ایتالیایی"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "ژاپنی"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "کرهای"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "لتونی"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "لیتوانی"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "مالزیایی"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "نروژی"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "فارسی"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "لهستانی"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "پرتغالی"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "رومانی"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "روسی"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "اسلواکی"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "اسلوونی"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "اسپانیایی"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "سوئدی"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "تایلند"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "ترکی"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "اوکراینی"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "ویتنامی"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "اردو"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +315,7 @@ msgstr "ترجمه"
msgid "Translate text from a language to another"
msgstr "ترجمه متن از یک زبان به زبان دیگر"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "متن ترجمه شده"
@@ -306,206 +370,210 @@ msgstr ""
"* html - حالت های html\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "تعداد ترجمه های جایگزین"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "کلید API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "ترجمه فایل از یک زبان به زبان دیگر"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "فایل ترجمه شده"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "فایل برای ترجمه"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "تشخیص زبان یک متن"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "شناسایی ها"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "خطای شناسایی"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "متن برای شناسایی"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "بازیابی تنظیمات ظاهری ویژه"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "تنظیمات ظاهری"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "نما ظاهری"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "پیشنهادی برای بهبود ترجمه ثبت نمایید"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "موفقیتآمیز"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "مجاز نیست"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "متن اصلی"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "ترجمه پیشنهادی"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "زبان متن اصلی"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "زبان ترجمه پیشنهادی"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "بازخورد"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "کد زبان"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "نام زبان قابل خواندن برای انسان (به انگلیسی)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "کدهای زبان هدف پشتیبانی شده"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "متن(های) ترجمه شده"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "پیام خطا"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "دلیل کاهش سرعت"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "نشانی فایل ترجمه شده"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "ضریب اطمینان"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "محدودیت کاراکتر برای این زبان (-1 یعنی بدون محدودیت)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "محدودیت زمانی ترجمه برای نمای ظاهری"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "اینکه (آیا) پایگاه داده مربوط به کلید API فعال است."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "اینکه (آیا) کلید API مورد نیاز است."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "اینکه (آیا) ارسال پیشنهادات ممکن است."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "فرمت فایلهای پشتیبانی شده"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "اینکه (آیا) ارسال موفقیتآمیز بود"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "کپی متن"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s بارگیری نمیشود"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "خطای ناشناخته"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "کپی شد"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
"از تصحیح شما سپاسگزاریم. توجه داشته باشید که این پیشنهاد بلافاصله اجرا "
"نخواهد شد."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "هیچ زبانی در دسترس نیست. آیا مدلها را بهدرستی نصب کردهاید؟"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
-"کلید API خود را وارد نمایید. اگر به یک کلید API نیاز دارید، "
-"%(instructions)s"
+"کلید API خود را وارد نمایید. اگر به یک کلید API نیاز دارید، %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "بر روی لینک \"دریافت کلید API\" کلیک کنید."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "با اپراتور سرور تماس بگیرید."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "API ترجمه ماشینی رایگان و متن باز"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API ترجمه ماشینی رایگان و متن باز. خود میزبان، با قابلیت راهاندازی آسان و "
"آفلاین. سرور API خود را تنها در چند دقیقه اجرا کنید."
@@ -518,155 +586,155 @@ msgstr "ترجمه"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "داکیومنت های API"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "دریافت کلید API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "گیتهاب"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "تنظیم کلید API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "تغییر زبان"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "ویرایش"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "تغییر به حالت تیره/روشن"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "انصراف"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API ترجمه"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "ترجمه متن"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "ترجمه فایل ها"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "ترجمه از"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "جابجایی زبان مبدا و هدف"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "ترجمه به"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "متن برای ترجمه"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "حذف متن"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "پیشنهاد ترجمه"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "لغو"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "ارسال"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "فرمتهای فایل پشتیبانی شده:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "فایل"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "حذف فایل"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "ترجمه کن"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "بارگیری (دانلود)"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "درخواست"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "پاسخ"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API ترجمه ماشینی متن باز"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "خود میزبان. قابلیت کار آفلاین. با قابلیت راهاندازی آسان."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "لیبر ترنسلیت"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "مجوز:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"این API عمومی باید برای آزمایش، استفاده شخصی یا اختصاصی است. اگر قرار است "
-"برنامهای که برای محصول است با آن اجرا کنید، لطفا %(host_server)s یا "
-"%(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "در سرور خود میزبانی کنید"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "یک کلید API بگیرید"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "ساخته شده با %(heart)s توسط %(contributors)s و قدرت گرفته از %(engine)s"
+msgstr ""
+"ساخته شده با %(heart)s توسط %(contributors)s و قدرت گرفته از %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "مشارکتکنندگان %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "ویتنامی"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "این API عمومی باید برای آزمایش، استفاده شخصی یا اختصاصی است. اگر قرار است "
+#~ "برنامهای که برای محصول است با آن اجرا کنید، لطفا %(host_server)s یا "
+#~ "%(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "در سرور خود میزبانی کنید"
+
+#~ msgid "get an API key"
+#~ msgstr "یک کلید API بگیرید"
diff --git a/libretranslate/locales/fi/LC_MESSAGES/messages.po b/libretranslate/locales/fi/LC_MESSAGES/messages.po
index 55a49e2..b67f1c0 100644
--- a/libretranslate/locales/fi/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/fi/LC_MESSAGES/messages.po
@@ -8,106 +8,118 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-02-27 19:38+0000\n"
"Last-Translator: Marko Korhonen \n"
+"Language-Team: Finnish \n"
"Language: fi\n"
-"Language-Team: Finnish "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Virheellinen JSON formaatti"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Automaattinen havaitseminen"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Luvaton"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Liikaa pyyntöjä rajoittaa rikkomuksia"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Virheellinen API avain"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Ota yhteyttä palvelimen ylläpitäjään saadaksesi API-avaimen"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Vieraile %(url)s hankkiaksesi API avaimen"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Hidasta:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Virheellinen pyyntö: Kadonnut %(name)s parametri"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Virheellinen pyyntö: %(name)s Parametri ei ole numero"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Virheellinen pyyntö: %(name)s Parametrin on oltava 1 1 %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr "Virheellinen pyyntö: pyyntö (%(size)s ylittää tekstin rajan (%(limit)s)"
+msgstr ""
+"Virheellinen pyyntö: pyyntö (%(size)s ylittää tekstin rajan (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s ei ole tuettu"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formaattia ei tueta"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
-msgstr "%(tname)s (%(tcode)s) ei ole saatavilla kohdekielenä %(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
+msgstr ""
+"%(tname)s (%(tcode)s) ei ole saatavilla kohdekielenä %(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Ei voi kääntää tekstiä: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Tiedostojen kääntäminen on poistettu käytöstä tällä palvelimella."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Virheellinen pyyntö: tyhjä tiedosto"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Virheellinen pyyntö: tiedostomuotoa ei tueta"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Virheellinen tiedostonimi"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Ehdotukset on poistettu käytöstä tällä palvelimella."
@@ -116,120 +128,176 @@ msgid "English"
msgstr "Englanti"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albanialaiset"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabian kieli"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaidžanin"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgarian"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalonian"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Kiina"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kiinalainen (perinteinen)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tšekki"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Tanska"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Hollanti"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Viron"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Suomi"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Ranska"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Saksa"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Kreikka"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Heprea"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Unkari"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesia"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlanti"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italia"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japani"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Korea"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latvialaiset"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Liettua"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malesia"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norjalainen"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persia"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Puola"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugali"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Romanian"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Venäjä"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovakia"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenia"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Espanja"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Ruotsi"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalogi"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thaimaa"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turkki"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukraina"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnami"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -247,7 +315,7 @@ msgstr "käännökset"
msgid "Translate text from a language to another"
msgstr "Käännä teksti kielestä toiseen"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Käännetty teksti"
@@ -302,202 +370,207 @@ msgstr ""
"HTML-merkintä\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Vaihtoehtoisia käännöksiä suositellaan"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API-avain"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Tiedoston kääntäminen kielestä toiseen"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Käännetty tiedosto"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Käännettävä tiedosto"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Tunnista yhden tekstin kieli"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Havainnot"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Tunnistusvirhe"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tunnistettava teksti"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Etsi rintamakohtaisia asetuksia"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "etusivu asetukset"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "etusivu"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Ehdota parannusta käännökseen"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Onnistui"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ei todennettu"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Alkuperäinen teksti"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Käännösehdotus"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Alkuperäisen tekstin kieli"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Ehdotetun käännöksen kieli"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "palaute"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Kielikoodi"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Ihmisen luettava kieli (englanniksi)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Tuettu kohdekielikoodi"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Käännetty teksti"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Virheviesti"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Hidastuksen syy"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Käännetyn tiedoston URL"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Luottamusarvo"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Merkkien syöttörajoitus tälle kielelle (-1 = ei rajaa)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Käyttöliittymän käännöksen aikakatkaisu"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Onko API avaintietokanta käytössä."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Tarvitaanko API-avain."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Onko ehdotusten esittäminen mahdollista."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Tuettu tiedostomuoto"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Onnistuiko lähetys"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopioi teksti"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Ei voi ladata %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Tuntematon virhe"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopioitiin"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr "Kiitos korjauksesta. Huomaa, että ehdotus ei tule heti voimaan."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Ei kieliä saatavilla. Oletko asentanut mallit oikein?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Kirjoita API-avaimeesi. Jos tarvitset API-avaimen, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "paina \"Get API Key\" -linkkiä."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "ota yhteyttä palvelimen ylläpitäjään."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Ilmainen ja avoimen lähdekoodin konekäännösrajapinta"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Ilmainen ja avoimen lähdekoodin konekäännösrajapinta. Itseisännöity, "
"offline-tilassa toimiva ja helppo asentaa. Käytä omaa API-palvelintasi "
@@ -511,152 +584,133 @@ msgstr "käännös"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Dokumentaatio"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Hanki API-avain"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Aseta API-avain"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Vaihda kieltä"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Muokkaa"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Tumma/kevyt tila"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Hylkää"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Käännös API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Käännä teksti"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Käännä tiedosto"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Käännökset"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Vaihda lähde ja kohdekielet"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Käännä kielelle"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Käännettävä teksti"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Poista teksti"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Ehdota käännöstä"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Peru"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Lähetä"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Tuetut tiedostomuodot:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Tiedosto"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Poista tiedosto"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Käännökset"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Lataa"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Pyyntö"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Vastaus"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Avoimen lähdekoodin käännös konekäännösrajapinta"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Itseisännöity. Offline-yhteensopiva. Helppo asentaa."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Lisenssi:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Tämä julkinen API on käytettävissä testaamiseen, henkilökohtaiseen tai "
-"harvaan käyttöön. Jos aiot käyttää sovellusta tuotannossa, ole hyvä "
-"%(host_server)s tai %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "isännöi oma palvelin"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "hanki API-avain"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, fuzzy, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Valmistettu %(heart)s By %(contributors)s ja voimalla %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Osallistujat"
@@ -664,3 +718,20 @@ msgstr "%(libretranslate)s Osallistujat"
#~ msgid "multipart/form-data"
#~ msgstr "monipuolinen/form-data"
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnami"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Tämä julkinen API on käytettävissä testaamiseen, henkilökohtaiseen tai "
+#~ "harvaan käyttöön. Jos aiot käyttää sovellusta tuotannossa, ole hyvä "
+#~ "%(host_server)s tai %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "isännöi oma palvelin"
+
+#~ msgid "get an API key"
+#~ msgstr "hanki API-avain"
diff --git a/libretranslate/locales/fr/LC_MESSAGES/messages.po b/libretranslate/locales/fr/LC_MESSAGES/messages.po
index f5dc01e..171eff0 100644
--- a/libretranslate/locales/fr/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/fr/LC_MESSAGES/messages.po
@@ -8,81 +8,90 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-01-04 00:08+0000\n"
"Last-Translator: EGuillemot \n"
-"Language-Team: French \n"
"Language: fr\n"
+"Language-Team: French "
+"\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 5.4-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Format JSON incorrect"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Détection automatique"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Non autorisé"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Dépassement de la limite du nombre de requêtes"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Clé API incorrecte"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Veuillez contacter l'opérateur du serveur pour obtenir une clé API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visitez %(url)s pour obtenir une clé API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Ralentissement :"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Requête incorrecte : le paramètre %(name)s est manquant"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Requête non valide : la requête (%(size)s) dépasse la limite de texte "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s n'est pas prise en charge"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "le format %(format)s n'est pas pris en charge"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@@ -91,28 +100,28 @@ msgstr ""
"%(tname)s (%(tcode)s) n'est pas disponible comme langue cible pour "
"%(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Impossible de traduire le texte : %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "La traduction de fichiers est désactivée sur ce serveur."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Requête invalide : le fichier est vide"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Requête non valide : le format de ce fichier n'est pas pris en charge"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nom de fichier invalide"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Les suggestions sont désactivées sur ce serveur."
@@ -121,120 +130,176 @@ msgid "English"
msgstr "Anglais"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "arabe"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "azéri"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "chinois"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "tchèque"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "danois"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "néerlandais"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "espéranto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "finnois"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "français"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "allemand"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "grec"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "hébreux"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "hongrois"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "indonésien"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "irlandais"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "italien"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "japonais"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "coréen"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "perse"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "polonais"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "portugais"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "russe"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "slovaque"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "espagnol"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "suédois"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "turque"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "ukrainien"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "vietnamien"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -252,7 +317,7 @@ msgstr "traduction"
msgid "Translate text from a language to another"
msgstr "Traduire du texte d’une langue à l'autre"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Texte traduit"
@@ -307,170 +372,174 @@ msgstr ""
" * `html` - Balises HTML\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Clé API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Traduire un fichier d'une langue à une autre"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Fichier traduit"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fichier à traduire"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Détecter la langue d'un seul texte"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Détections"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Erreur de détection"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Texte à détecter"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Récupérer les paramètres spécifiques à l’interface"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "paramètres de l’interface"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "interface"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Soumettre une suggestion pour améliorer une traduction"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Succès"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Autorisation manquante"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Texte original"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Traduction proposée"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Langue du texte original"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Langue de la traduction proposée"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "commentaire"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Code de la langue"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nom de la langue lisible par un humain (en anglais)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Codes de langues cibles pris en charge"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Texte(s) traduit(s)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Message d'erreur"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Raison du ralentissement"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL du fichier traduit"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valeur de confiance"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Limite de caractères pour cette langue (-1 indique aucune limite)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Expiration du délai d'attente pour l'interface de traduction"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Indique si la base de données de clés API est activée."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Indique si une clé API est requise."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Indique si l'envoi de suggestions est activé."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formats de fichier pris en charge"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Si l'envoi a réussi"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Copier le texte"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Impossible de charger %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Erreur inconnue"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Copié"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@@ -478,25 +547,25 @@ msgstr ""
"Merci pour votre correction. Notez que la suggestion ne prendra pas effet"
" immédiatement."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Pas de langues disponibles. Avez-vous installé les modèles correctement ?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Entrez votre clé API. Si vous avez besoin d'une clé API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "appuyez sur le lien « Obtenir une clé d'API »."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "contactez l'opérateur du serveur."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "API de Traduction Automatique libre et ouverte"
@@ -518,156 +587,160 @@ msgstr "traduction"
msgid "api"
msgstr "API"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Documentation de l'API"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Obtenir une clé d'API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Définir la clé d'API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Changer de langue"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Modifier"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Basculer en mode sombre/clair"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Ignorer"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API de traduction"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Traduire du texte"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Traduire des fichiers"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Traduire depuis"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Échanger la langue source et la langue cible"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Traduire en"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Texte à traduire"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Supprimer le texte"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Suggérer une traduction"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Annuler"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Envoyer"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formats de fichiers pris en charge :"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Fichier"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Supprimer le fichier"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Traduire"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Télécharger"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Requête"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Réponse"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API ouverte de traduction automatique"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Auto-hébergé. Mode hors ligne. Facile à configurer."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licence :"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Cette API publique ne devrait être utilisée que pour des tests, de "
-"manière personnelle ou occasionnelle. Si vous souhaitez l'utiliser avec "
-"une application en production, veuillez %(host_server)s ou "
-"%(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "héberger votre propre serveur"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "obtenir une clé d'API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Conçu avec %(heart)s par %(contributors)s et propulsé par %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Contributeurs %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "vietnamien"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Cette API publique ne devrait être "
+#~ "utilisée que pour des tests, de "
+#~ "manière personnelle ou occasionnelle. Si "
+#~ "vous souhaitez l'utiliser avec une "
+#~ "application en production, veuillez "
+#~ "%(host_server)s ou %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "héberger votre propre serveur"
+
+#~ msgid "get an API key"
+#~ msgstr "obtenir une clé d'API"
+
diff --git a/libretranslate/locales/ga/LC_MESSAGES/messages.po b/libretranslate/locales/ga/LC_MESSAGES/messages.po
index 2f4acb6..6914883 100644
--- a/libretranslate/locales/ga/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ga/LC_MESSAGES/messages.po
@@ -8,112 +8,121 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-07-06 08:18+0000\n"
"Last-Translator: Aindriú Mac Giolla Eoin \n"
-"Language-Team: Irish \n"
+"Language-Team: Irish \n"
"Language: ga\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :("
-"n>6 && n<11) ? 3 : 4;\n"
-"X-Generator: Weblate 5.7-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :(n>6 && n<11) ? 3 : 4;\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Formáid JSON marcáilte"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Déan teagmháil Linn"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Gan údarás"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Go leor sáruithe teorainneacha a iarraidh"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Eochair API luachmhar"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Téigh i dteagmháil leis an oibreoir freastalaí a fháil eochair API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Tabhair cuairt ar %(url)s a fháil eochair API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Tóg go bog é:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Iarratas neamhbhailí: paraiméadar %(name)s in easnamh"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Iarratas neamhbhailí: 0 0 Níl an paraiméadar uimhir %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Iarratas neamhbhailí: 0 0 Ní mór paraiméadar a bheith r = 1 1 "
+"%(name)s %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Iarratas neamhbhailí: iarratas (%(size)s) níos mó ná teorainn téacs "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "Ní thacaítear le %(lang)s"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "Ní thacaítear le formáid %(format)s"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) nach bhfuil ar fáil mar sprioctheanga ó %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Ní féidir téacs a aistriú: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Comhaid aistriúcháin atá faoi mhíchumas ar an bhfreastalaí."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Iarratas neamhbhailí: comhad folamh"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Iarratas neamhbhailí: formáid comhaid nach bhfuil tacaíocht"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Ainm comhaid luachmhar"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Tá moltaí faoi mhíchumas ar an bhfreastalaí."
@@ -122,120 +131,176 @@ msgid "English"
msgstr "Gaeilge agus Béarla"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "An Albáinis"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Araibis"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "An Asarbaiseáin"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Inis dúinn, le do thoil.."
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Riachtanais uisce: measartha"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalónach na Catalóine"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Sínis"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Sínis (traditional)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "An Danmhairgis"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "An Danmhairgis"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "An Ollainnis"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Seirbhís do Chustaiméirí"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Riachtanais uisce: measartha"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Fionlainnis"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Franc na hEilvéise"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Gearmáinis"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Cineál gas: in airde"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Eabhrais"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hiondúis"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Foirm duille: oval"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Bláthanna faoi dhíon"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Gaeilge"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Iodálach"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Bláthanna cumhra: cumhráin"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Bláthanna Gairdín"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Taiseachas aeir: fliuch"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "An Liotuáin"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Cineál gas: in airde"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Cineál gas: in airde"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Cineál gas: in airde"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Cineál gas: in airde"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Bláthanna faoi dhíon"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "An Rómáin"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Bláthanna cumhra: cumhráin"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "An tSlÃ3ivéin"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slóivéinis"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Riachtanais uisce: measartha"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Sualainnis"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Féachaint ar Fholúntais"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Téalainnis"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Tuircis"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Cónaidhm na Rúise"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vítneaimis Víneaimis"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Riachtanais uisce: measartha"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -253,7 +318,7 @@ msgstr "aistriú"
msgid "Translate text from a language to another"
msgstr "Téacs Translate ó theanga go ceann eile"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Téacs Aistrithe"
@@ -308,208 +373,214 @@ msgstr ""
"* html ` - HTML marcóir\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Líon Rogha na n-aistriúcháin malartacha"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Eochair API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Aistrithe comhad ó theanga go ceann eile"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Aistrithe comhad"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Comhad le haistriú"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "An teanga téacs amháin a bhrath"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Ailtireacht"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Earráid bhrath"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Téacs le brath"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Retrive suímh tosaigh ar leith"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "socruithe tosaigh"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "tosaigh"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Cuir moladh chun aistriúchán a fheabhsú"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Rath agus Rath"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Nach bhfuil údaraithe"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Téacs bunaidh"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Aistriúchán molta"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Teanga an bhuntéacs"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Teanga an aistriúcháin molta"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "aiseolas"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Cód teanga"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Ainm teanga an duine inléite (i mBéarla)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Tacú le cóid sprioctheanga"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Téacs(í) traslatáilte"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Teachtaireacht Earráid"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Cúis le mall síos"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Aistrithe comhad"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Luach minicíochta"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Teorainn ionchuir Carachtar don teanga seo (-1 léiríonn aon teorainn)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Amchlár aistriúcháin Frontend"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Cibé an bhfuil an bunachar sonraí eochair API ar chumas."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Cibé an bhfuil eochair API ag teastáil."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Cibé an bhfuil moltaí a chur isteach ar chumas."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formáid comhaid Tacaithe"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Cibé an raibh aighneacht rathúil"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Téacs Cóip"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Ní féidir ualach %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Earráid aitheanta"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Cóipeáladh"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
-"Go raibh maith agat as do cheartú. Tabhair faoi deara nach mbeidh an "
-"moladh i bhfeidhm ar shiúl."
+"Go raibh maith agat as do cheartú. Tabhair faoi deara nach mbeidh an moladh "
+"i bhfeidhm ar shiúl."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
-msgstr "Níl aon teangacha ar fáil. An raibh tú a shuiteáil na samhlacha i gceart?"
+msgstr ""
+"Níl aon teangacha ar fáil. An raibh tú a shuiteáil na samhlacha i gceart?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Clóscríobh isteach d'Eochair API. Má tá eochair API uait, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "brúigh an nasc \"Get API Key\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "teagmháil a dhéanamh leis an oibreoir freastalaí."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Saor in Aisce agus Oscailte Foinse Meaisín Aistriúchán API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Saor in aisce agus Oscailte Foinse Meaisín API. Féin-óstáil, as líne in "
-"ann agus éasca a thus. Rith do fhreastalaí API féin i ach cúpla nóiméad."
+"Saor in aisce agus Oscailte Foinse Meaisín API. Féin-óstáil, as líne in ann "
+"agus éasca a thus. Rith do fhreastalaí API féin i ach cúpla nóiméad."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -519,157 +590,155 @@ msgstr "aistriúchán"
msgid "api"
msgstr "taiseachas aeir: fliuch"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Docs API"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Faigh API Uisce agus Séarachas"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Socraigh API Uisce agus Séarachas"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Athraigh teanga"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Inis dúinn, le do thoil.."
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toggle dorcha / mód éadrom"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Díroghnaigh gach rud"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Aistriúchán API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Translate Téacs"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Aistrithe Comhad"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Translate ó"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Swap foinse agus sprioctheangacha"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Translate isteach"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Téacs a aistriú"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Scrios téacs"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Mol aistriúcháin"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Cealaigh"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Seol do theachtaireacht a chur chugainn"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formáidí comhaid Tacaithe:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Déan Teagmháil Linn"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Bain comhad"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Aistrigh"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Íoslódáil"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Iarratas a Dhéanamh"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Plandaí faoi dhíon"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Oscailte Foinse Meaisín API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Féin-Hosted. In ann. Éasca le Socrú."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "Déan teagmháil anois"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Ceadúnas:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Ba cheart an API poiblí seo a úsáid le haghaidh tástála, úsáide pearsanta"
-" nó go minic. Má tá tú ag dul a reáchtáil iarratas i dtáirgeadh, le do "
-"thoil %(host_server)s nó %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "óstach do fhreastalaí féin"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "a fháil eochair API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
-"Déanta le %(heart)s ag an %(contributors)s agus faoi thiomáint ag "
-"%(engine)s"
+"Déanta le %(heart)s ag an %(contributors)s agus faoi thiomáint ag %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Rannpháirtithe"
#~ msgid "multipart/form-data"
#~ msgstr "ilpháirt / form-sonraí"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vítneaimis Víneaimis"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Ba cheart an API poiblí seo a úsáid le haghaidh tástála, úsáide pearsanta nó"
+#~ " go minic. Má tá tú ag dul a reáchtáil iarratas i dtáirgeadh, le do thoil "
+#~ "%(host_server)s nó %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "óstach do fhreastalaí féin"
+
+#~ msgid "get an API key"
+#~ msgstr "a fháil eochair API"
diff --git a/libretranslate/locales/he/LC_MESSAGES/messages.po b/libretranslate/locales/he/LC_MESSAGES/messages.po
index 07813ad..f9d929f 100644
--- a/libretranslate/locales/he/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/he/LC_MESSAGES/messages.po
@@ -8,106 +8,117 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-05-01 11:52+0000\n"
"Last-Translator: Tamir Ben-Arie \n"
+"Language-Team: Hebrew \n"
"Language: he\n"
-"Language-Team: Hebrew "
-"\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "פורמט JSON"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "זיהוי אוטומטי"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "לא מורשה"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "יותר מדי בקשות מגבילות הפרות"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "מפתח API"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "צור קשר עם מפעיל השרת כדי לקבל מפתח API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "בקר ב-%(url)s להשגת מפתח API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "האטה:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "בקשה לא חוקית: פרמטר %(name)s חסר"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "בקשה לא חוקית: 0 0 0 פרמטר הוא לא מספר %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"בקשה לא חוקית: 0 0 0 פרמטר חייב להיות <= 1 1 %(name)s "
+"%(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "בקשה לא חוקית: בקשה (%(size)s) מעבר למגבלת טקסט (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s לא נתמך"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "פורמט %(format)s אינו נתמך"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr "(%(tname)s) (%(tcode)s)לא זמינה כשפת מטרה מהשפה %(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "לא ניתן לתרגם טקסט: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "תרגום קבצים מוגבל בשרת זה."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "בקשה לא חוקית: קובץ ריק"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "בקשה לא חוקית: פורמט קובץ לא נתמך"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "שם הקובץ Invalid"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "הצעות מוגבלות בשרת זה."
@@ -116,120 +127,176 @@ msgid "English"
msgstr "אנגלית"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "אלב האלבני"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "ערבית"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "אזרבייג'ן"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "בולגריה"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "קטלוניה"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "סינית"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "סינית (מסורתית)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "צ'כיה צ'כיה"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "דנמרק"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "הולנד הולנדית"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "אספרנטו"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "אסטוניה"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "הפינית"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "צרפתית"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "גרמניה גרמנית"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "יווני"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "עברית"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "הינד"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "הונגריה"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "אינדונזיה"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "אירלנד"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "איטלקי"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "יפן יפנית"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "קוריאה הקוריאנית"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "לטביה"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "ליטא"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "מלאי המלאי"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "נורוויג'ן Norwegian Norwegian"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "הפרס"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "פולני"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "פורטוגזית"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "רומניה"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "רוסיה"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "סלובקיה"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "סלובניה"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "ספרדית"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "שוודיה"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Taglog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "תאילנד"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "טורקיה"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "אוקראה"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "וייטנאם"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -247,7 +314,7 @@ msgstr "תרגום"
msgid "Translate text from a language to another"
msgstr "תרגום טקסט משפה לאחר"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "תרגום הטקסט"
@@ -302,205 +369,210 @@ msgstr ""
"\"html\" - קוד HTML\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "מספר מועדף של תרגומים חלופיים"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "מפתח API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "תרגום קובץ משפה אחת לאחרת"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "הקובץ המתורגם"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "קובץ לתרגום"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "זהה את השפה של טקסט בודד"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "זיהויים"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "שגיאת זיהוי"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "טקסט לזיהוי"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "אחזר הגדרות frontend"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "הגדרות frontend"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "צד לקוח (frontend)"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "הגשת הצעה לשיפור תרגום"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "הצלחה"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "לא מורשה"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "טקסט מקורי"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "הצעות תרגום"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "שפת הטקסט המקורי"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "שפת התרגום המוצע"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "משוב"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "קוד שפה"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "שם שפה לקריאה אנושית (באנגלית)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "קוד שפת היעד"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "תרגום טקסט(s)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "הודעת שגיאה"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "סיבה להאט"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "קובץ url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "ערך אמון"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "הגבלת קלט תווים לשפה זו (-1 לא מצביעה על גבול)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "זמן תרגום מיידי"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "בין אם מסד הנתונים מפתח API מופעל."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "בין אם נדרש מפתח API."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "בין אם ניתן להגיש הצעות."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "פורמט קבצים נתמך"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "אם ההגשה הייתה מוצלחת"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "העתק טקסט"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "לא ניתן לטעון את %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "טעות לא ידועה"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "שוטרים"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr "תודה על התיקון שלך. שימו לב שההצעה לא תיכנס לתוקף מיד."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "אין שפות זמינות. האם התקנת נכון את המודלים?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "הזמן את מפתח ה-API שלך. אם אתה זקוק למפתח API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "לחצו על הקישור \"Get API Key\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "צור קשר עם מפעיל השרת."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Free and Open Source Machine"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Free and Open Source Machine Translation API עוין עצמי, לא מקוון מסוגל "
-"וקל להגדרה. הפעילו את שרת ה- API שלכם תוך מספר דקות בלבד."
+"Free and Open Source Machine Translation API עוין עצמי, לא מקוון מסוגל וקל "
+"להגדרה. הפעילו את שרת ה- API שלכם תוך מספר דקות בלבד."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -510,152 +582,133 @@ msgstr "תרגום התרגום"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Docs"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "קבלת מפתח API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "הגדר מפתח API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "שינוי השפה"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editעריכה"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "מצב כהה/אור"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "משמעת"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "תרגום API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "תרגום טקסט"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "תרגום קבצים"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "תרגום"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "מקור ושפת היעד"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "לתרגם"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "טקסט לתרגם"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "למחוק טקסט"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "הצעות תרגום"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "ביטול"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "שלח"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "פורמטי קבצים תומכים:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "File"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "הסרת קובץ"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "תרגום"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "הורד Download"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "בקשה"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "תגובה"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "קוד פתוח תרגום API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "מוגן. Offline Capable קל להגדרה."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "רישיון:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"ממשק API ציבורי זה משמש לבדיקה, שימוש אישי או בלתי צפוי בלבד. אם אתה הולך"
-" להפעיל יישום בסביבת פעילות מלאה, בבקשה %(host_server)s או "
-"%(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "מארח את השרת שלך"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "מפתח API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "מיוצר עם %(heart)s על ידי %(contributors)s ומופעל על ידי %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "תורמי %(libretranslate)s"
@@ -663,3 +716,19 @@ msgstr "תורמי %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+#~ msgid "Vietnamese"
+#~ msgstr "וייטנאם"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "ממשק API ציבורי זה משמש לבדיקה, שימוש אישי או בלתי צפוי בלבד. אם אתה הולך "
+#~ "להפעיל יישום בסביבת פעילות מלאה, בבקשה %(host_server)s או %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "מארח את השרת שלך"
+
+#~ msgid "get an API key"
+#~ msgstr "מפתח API"
diff --git a/libretranslate/locales/hi/LC_MESSAGES/messages.po b/libretranslate/locales/hi/LC_MESSAGES/messages.po
index 226ec59..25554b4 100644
--- a/libretranslate/locales/hi/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/hi/LC_MESSAGES/messages.po
@@ -8,109 +8,117 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-02-24 17:01+0000\n"
"Last-Translator: Scrambled777 \n"
-"Language-Team: Hindi \n"
+"Language-Team: Hindi \n"
"Language: hi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.5-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "अमान्य JSON प्रारूप"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "ऑटो डिटेक्ट करें"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "अनधिकृत"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "बहुत से अनुरोध सीमा उल्लंघन"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "अमान्य API कुंजी"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "API कुंजी प्राप्त करने के लिए कृपया सर्वर ऑपरेटर से संपर्क करें"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "API कुंजी प्राप्त करने के लिए %(url)s पर जाएं"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "गति कम करो:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "अमान्य अनुरोध: %(name)s पैरामीटर अनुपलब्ध है"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "अमान्य अनुरोध: %(name)s पैरामीटर संख्या नहीं है"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "अमान्य अनुरोध: %(name)s पैरामीटर होना चाहिए <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "अमान्य अनुरोध: अनुरोध (%(size)s) पाठ सीमा (%(limit)s) से अधिक है"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s समर्थित नहीं है"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s प्रारूप समर्थित नहीं है"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
-"%(tname)s (d)%(tcode)s) से लक्ष्य भाषा के रूप में उपलब्ध नहीं है "
-"%(sname)s (d)%(scode)s)"
+"%(tname)s (d)%(tcode)s) से लक्ष्य भाषा के रूप में उपलब्ध नहीं है %(sname)s "
+"(d)%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "पाठ का अनुवाद नहीं कर सकते: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "इस सर्वर पर फ़ाइलें अनुवाद अक्षम हैं।."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "अमान्य अनुरोध: खाली फ़ाइल"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "अमान्य अनुरोध: फ़ाइल प्रारूप समर्थित नहीं है"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "अमान्य फ़ाइलनाम"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "इस सर्वर पर सुझाव अक्षम हैं।."
@@ -119,120 +127,176 @@ msgid "English"
msgstr "अंग्रेज़ी"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "अल्बानियाई"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "अरबी"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "अज़रबैजानी"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "बंगाली"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "बल्गेरियन"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "कैटलन"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "चीनी"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "चीनी (पारंपरिक)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "चेक"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "डैनिश"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "डच"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "एस्पेरांतो"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "एस्टोनियाई"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "फिनिश"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "फ्रेंच"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "जर्मन"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "यूनानी"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "हिब्रू"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "हिन्दी"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "हंगेरियन"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "इंडोनेशिया"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "आयरिश"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "इतालवी"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "जापानी"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "कोरियाई"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "लातवियाई"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "लेबनान"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "मलय"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "नॉर्वे"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "फ़ारसी"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "पोलिश"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "पुर्तगाली"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "रोमानियाई"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "रूसी"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "स्लोवाक"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "स्लोवेनियाई"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "स्पेनिश"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "स्वीडिश"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "टैगलॉग"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "थाई"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "तुर्की"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "यूक्रेनी"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "वियतनामी"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "उर्दू"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -250,7 +314,7 @@ msgstr "अनुवाद"
msgid "Translate text from a language to another"
msgstr "पाठ को एक भाषा से दूसरे में अनुवाद करें"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "अनुवादित पाठ"
@@ -305,207 +369,214 @@ msgstr ""
" * `html` - HTML मार्कअप\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "वैकल्पिक अनुवादों की पसंदीदा संख्या"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API कुंजी"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "किसी भाषा से किसी अन्य भाषा में फ़ाइल ट्रांसलेट करें"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "अनुवादित फाइल"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "अनुवाद करने के लिए फाइल"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "एकल पाठ की भाषा का पता लगाएं"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "जांच"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "जांच त्रुटि"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "डिटेक्ट करने के लिए पाठ"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Frontend विशिष्ट सेटिंग्स पुनर्प्राप्त करें"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "Frontend सेटिंग्स"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "Frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "अनुवाद को बेहतर बनाने के लिए सुझाव देना"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "सफलता"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "अधिकृत नहीं"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "मूल पाठ"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "सुझाया गया अनुवाद"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "मूल पाठ की भाषा"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "सुझाए गए अनुवाद की भाषा"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "प्रतिक्रिया"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "भाषा कोड"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "मानव पठनीय भाषा का नाम (अंग्रेजी में)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "समर्थित लक्ष्य भाषा कोड"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "अनुवादित पाठ(ओं)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "त्रुटि संदेश"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "गति धीमी होने का कारण"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "अनुवादित फ़ाइल url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "आत्मविश्वास मूल्य"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "इस भाषा के लिए चरित्र इनपुट सीमा (-1 इंगित करता है कि कोई सीमा नहीं)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Frontend अनुवाद टाइमआउट"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "क्या API कुंजी डेटाबेस सक्षम है।।"
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "क्या एक API कुंजी की आवश्यकता है।।"
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "क्या सुझाव देना संभव है।."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "समर्थित फाइलें प्रारूप"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "क्या सबमिशन सफल रहा"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "पाठ कॉपी करें"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s लोड नहीं किया जा सकता"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "अज्ञात त्रुटि"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "कॉपी किया गया"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
-msgstr "आपके सुधार के लिए धन्यवाद। ध्यान दें कि सुझाव तुरंत प्रभावी नहीं होगा।."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
+msgstr ""
+"आपके सुधार के लिए धन्यवाद। ध्यान दें कि सुझाव तुरंत प्रभावी नहीं होगा।."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
-msgstr "कोई भाषा उपलब्ध नहीं है। क्या आप मॉडल को सही ढंग से स्थापित कर सकते हैं?"
+msgstr ""
+"कोई भाषा उपलब्ध नहीं है। क्या आप मॉडल को सही ढंग से स्थापित कर सकते हैं?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"अपने API कुंजी में टाइप करें। यदि आपको API कुंजी की आवश्यकता है, "
"%(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "\"API कुंजी प्राप्त करें\" लिंक दबाएं।"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "सर्वर ऑपरेटर से संपर्क करें।."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "मुफ़्त और मुक्त स्रोत मशीन अनुवाद API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"मुफ़्त और मुक्त स्रोत मशीन अनुवाद एपीआई। स्व-होस्टेड, ऑफ़लाइन सक्षम और सेटअप "
-"करने में आसान। कुछ ही मिनटों में अपना स्वयं का API सर्वर चलाएं।"
+"मुफ़्त और मुक्त स्रोत मशीन अनुवाद एपीआई। स्व-होस्टेड, ऑफ़लाइन सक्षम और सेटअप"
+" करने में आसान। कुछ ही मिनटों में अपना स्वयं का API सर्वर चलाएं।"
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -515,157 +586,156 @@ msgstr "अनुवाद"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API दस्तावेज़"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API प्राप्त करें कुंजी"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API सेट कुंजी"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "भाषा बदलें"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "संपादित करें"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "टॉगल डार्क / लाइट मोड"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "खारिज"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "अनुवाद API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "पाठ अनुवाद"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "फ़ाइलें अनुवाद"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "से अनुवाद करें"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "स्रोत और लक्ष्य भाषाओं की अदला-बदली करें"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "में अनुवाद"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "अनुवाद करने के लिए पाठ"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "पाठ हटाएँ"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "अनुवाद सुझाएँ"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "रद्द करें"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "भेजें"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "समर्थित फ़ाइल प्रारूप:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "फ़ाइल"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "फ़ाइल निकालें"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "अनुवाद"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "डाउनलोड"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "अनुरोध"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "जवाब"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "ओपन सोर्स मशीन अनुवाद API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "स्व-होस्टेड। ऑफलाइन सक्षम। सेटअप करने में आसान।."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "लाइसेंस:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"इस सार्वजनिक API का उपयोग परीक्षण, व्यक्तिगत या गलत उपयोग के लिए किया जाना "
-"चाहिए। यदि आप उत्पादन में आवेदन चला रहे हैं, तो कृपया ध्यान दें। "
-"%(host_server)s या %(get_api_key)s।"
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "अपने सर्वर को होस्ट करें"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "API कुंजी प्राप्त करें"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"%(contributors)s द्वारा %(heart)s के साथ बनाया गया और %(engine)s द्वारा "
"संचालित"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s योगदानकर्ता"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "वियतनामी"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "इस सार्वजनिक API का उपयोग परीक्षण, व्यक्तिगत या गलत उपयोग के लिए किया जाना "
+#~ "चाहिए। यदि आप उत्पादन में आवेदन चला रहे हैं, तो कृपया ध्यान दें। "
+#~ "%(host_server)s या %(get_api_key)s।"
+
+#~ msgid "host your own server"
+#~ msgstr "अपने सर्वर को होस्ट करें"
+
+#~ msgid "get an API key"
+#~ msgstr "API कुंजी प्राप्त करें"
diff --git a/libretranslate/locales/hu/LC_MESSAGES/messages.po b/libretranslate/locales/hu/LC_MESSAGES/messages.po
index 72b55be..0d1c56d 100644
--- a/libretranslate/locales/hu/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/hu/LC_MESSAGES/messages.po
@@ -8,83 +8,92 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-04-18 08:04+0000\n"
"Last-Translator: Netesfiu \n"
-"Language-Team: Hungarian \n"
"Language: hu\n"
+"Language-Team: Hungarian "
+"\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.5-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Érvénytelen JSON formátum"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Automatikus felismerés"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Nincs jogosultsága"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Túl sok kérelem korlátozza a jogsértéseket"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Érvénytelen API kulcs"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
"Kérjük, vegye fel a kapcsolatot a szerver-üzemeltetővel, hogy megkapja az"
" API kulcsot"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Látogasson el a(z) %(url)s címre, API kulcshoz"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Lassulás:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Érvénytelen kérés: hiányzik a(z) %(name)s paraméter"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Érvénytelen kérés: a kérés mérete (%(size)s) meghaladja a szövegkorlátot "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s nyelv nem támogatott"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formátum nem támogatott"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@@ -93,28 +102,28 @@ msgstr ""
"%(tname)s (%(tcode)s) nem áll rendelkezésre célnyelvként %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nem fordítható szöveg: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Fájlok fordítása kikapcsolva ezen a szerveren."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Érvénytelen kérés: üres fájl"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Érvénytelen kérés: fájlformátum nem támogatott"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Érvénytelen fájlnév"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "A javaslatok kikapcsolva ezen a szerveren."
@@ -123,120 +132,176 @@ msgid "English"
msgstr "Angol"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arab"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbajdzsán"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Kínai"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Cseh"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dán"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holland"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Eszperantó"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finn"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francia"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Német"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Görög"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Héber"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Magyar"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonéz"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Ír"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Olasz"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japán"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreai"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Perzsa"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Lengyel"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugál"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Orosz"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Szlovák"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spanyol"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Svéd"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Török"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukrán"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnami"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -254,7 +319,7 @@ msgstr "fordítás"
msgid "Translate text from a language to another"
msgstr "Fordítson szöveget egy nyelvről egy másikra"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Fordított szöveg"
@@ -309,197 +374,200 @@ msgstr ""
"* `html' - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API kulcs"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Fájl fordítása egy nyelvről egy másikra"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Fordított fájl"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fájl fordítása"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "A szöveg nyelvének észlelése"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Észlelések"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Detection hiba"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Felismerendő szöveg"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Visszakeresni a frontend specifikus beállításokat"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "frontend beállítások"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Küldjön javaslatot a fordítés javításához"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Siker"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Nem engedélyezett"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Eredeti szöveg"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Javasolt fordítás"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Eredeti szöveg nyelve"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "A javasolt fordítás nyelve"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "visszajelzés"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Nyelvkód"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Emberi olvasható nyelv neve (angolul)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Támogatott célnyelvi kódok"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Fordított szöveg(ek)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Hibaüzenet"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "A lelassulás oka"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Fordított fájl url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Bizalmi érték"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Jellemző bemeneti határértéke ennek a nyelvnek (-1 nem jelzi a határt)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Frontend fordítás időtúllépés"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Függetlenül attól, hogy az API kulcs adatbázisa engedélyezett-e."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Szükséges-e API kulcs."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Ha javaslatok benyújtásá engedélyezett."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Támogatott fájlformátum"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Amennyiben a beküldsé sikeres volt"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Szöveg másolása"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Nem tölthető be a(z) %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Ismeretlen hiba"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Másolva"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-"Köszönöm a korrekciót. Vegye figyelembe, hogy a javaslata nem fog azonnal "
-"hatályba lépni."
+"Köszönöm a korrekciót. Vegye figyelembe, hogy a javaslata nem fog azonnal"
+" hatályba lépni."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Nincsenek elérhető nyelvek. Helyesen telepítette a modelleket?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr ""
-"Írja be az API kulcsot. Ha szüksége van egy API kulcsra, %(instructions)s"
+msgstr "Írja be az API kulcsot. Ha szüksége van egy API kulcsra, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "nyomja meg a \"Get API Key\" linket."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "lépjen kapcsolatba a szerver-üzemeltetővel."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Ingyenes és nyílt forráskódú gépi fordító API"
@@ -509,9 +577,9 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Ingyenes és nyílt forráskódú gépi fordító API. Helyileg telepített, offline "
-"működő és könnyen telepíthető. Futtassa saját API szerverét néhány perc "
-"alatt."
+"Ingyenes és nyílt forráskódú gépi fordító API. Helyileg telepített, "
+"offline működő és könnyen telepíthető. Futtassa saját API szerverét "
+"néhány perc alatt."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -521,157 +589,161 @@ msgstr "fordítás"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Dokumentáció"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Szerezzen API kucsot"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Állítsa be az API kulcsot"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Nyelv módosítása"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Szerkesztés"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Váltás sötét/világos módra"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "elvetés"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Fordító API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Szöveg Fordítása"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "File-ok fordítása"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Fordítási ürlap"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Forrás és célnyelv felcserélése"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Fordítsd le ebbe"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Fordítandó szöveg"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "szöveg törlése"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Javasolj fordítást"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "mégse"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Küldés"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Támogatott fájlformátumok:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "File"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "File eltávolítása"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Fordítás"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Letöltés"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Kérés"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Válasz"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Nyilt Forráskódú Gépi Fordító API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Helyben futtatható, offline működő. Könnyen beállítható."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licenc:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Ezt a nyilvános API-t tesztelésre, személyes vagy alkalmi használatra "
-"használandó. Amennyiben az alkalmazásod éles környezetben fogod használni "
-"úgy használd a %(host_server)s-t vagy %(get_api_key)s-t."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "Hosztold a saját szervered"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "API kulcs szerzése"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"%(heart)s-el készítve. Közreműködtek %(contributors)s működtetve ezzel: "
"%(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Közreműködők"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnami"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Ezt a nyilvános API-t tesztelésre, "
+#~ "személyes vagy alkalmi használatra "
+#~ "használandó. Amennyiben az alkalmazásod éles"
+#~ " környezetben fogod használni úgy használd"
+#~ " a %(host_server)s-t vagy %(get_api_key)s-t."
+
+#~ msgid "host your own server"
+#~ msgstr "Hosztold a saját szervered"
+
+#~ msgid "get an API key"
+#~ msgstr "API kulcs szerzése"
+
diff --git a/libretranslate/locales/id/LC_MESSAGES/messages.po b/libretranslate/locales/id/LC_MESSAGES/messages.po
index 3af983c..f9ef1b2 100644
--- a/libretranslate/locales/id/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/id/LC_MESSAGES/messages.po
@@ -8,111 +8,122 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-06-08 12:27+0000\n"
"Last-Translator: Wahyu Hamdani \n"
-"Language-Team: Indonesian \n"
+"Language-Team: Indonesian \n"
"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.6-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Format JSON tidak sah"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Mendeteksi Otomatis"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Tidak Diizinkan"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Terlalu banyak pelanggaran batas permintaan"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Kunci API tidak valid"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Silakan hubungi operator server untuk mendapatkan kunci API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Kunjungi %(url)s untuk mendapatkan kunci API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Pelan-pelan:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Permintaan tidak valid: parameter %(name)s tidak ada"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+"permintaan tidak valid: Sitemap parameter bukan jumlah %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"permintaan tidak valid: Sitemap parameter harus <= 1 "
+"Artikel %(name)s %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Permintaan tidak valid: permintaan (%(size)s) melebihi batas teks "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s tidak didukung"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s format tidak didukung"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
-"%(tname)s (%(tcode)s) tidak tersedia sebagai bahasa target dari %(sname)s"
-" (%(scode)s)"
+"%(tname)s (%(tcode)s) tidak tersedia sebagai bahasa target dari %(sname)s "
+"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Tidak dapat menerjemahkan teks: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Terjemahan file dinonaktifkan di server ini."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Permintaan tidak valid: file kosong"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Permintaan tidak valid: format file tidak didukung"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nama file tidak valid"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Saran dinonaktifkan di server ini."
@@ -121,120 +132,176 @@ msgid "English"
msgstr "Bahasa Inggris"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Indonesia"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Bahasa Arab"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Bahasa Zerbaijani"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Bahasa Cina"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kitajka (traditional)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Bahasa Czech"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Bahasa Danish"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Bahasa Belanda"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Bahasa Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Bahasa Suomi"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Bahasa Perancis"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Bahasa Jerman"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Bahasa Yunani"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Bahasa Yahudi"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Bahasa India"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Bahasa Hungaria"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Bahasa Indonesia"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Bahasa Irlandia"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Bahasa Italy"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Bahasa Jepang"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Bahasa Korea"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Bahasa Persia"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Bahasa Polish"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugis"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Rusia"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovak"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spanyol"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Swedia"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Login"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turki"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukraina"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnam"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Login"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -252,7 +319,7 @@ msgstr "terjemahkan"
msgid "Translate text from a language to another"
msgstr "Terjemahkan teks dari bahasa ke bahasa lain"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Teks yang diterjemahkan"
@@ -307,204 +374,211 @@ msgstr ""
"* `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Sejumlah alternatif terjemahan"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Kunci API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Terjemahkan file dari bahasa ke bahasa lain"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "File yang diterjemahkan"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "File untuk diterjemahkan"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Mendeteksi bahasa teks tunggal"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Deteksi"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Kesalahan deteksi"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Teks untuk dideteksi"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Lihat pengaturan spesifik frontend"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "pengaturan frontend"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Kirim saran untuk meningkatkan terjemahan"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Berhasil"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Tidak sah"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Teks asli"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Terjemahan yang disarankan"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Bahasa teks asli"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Bahasa terjemahan yang disarankan"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "umpan balik"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Bahasa"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nama bahasa yang dapat dibaca manusia (dalam bahasa Inggris)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Mendukung kode bahasa target"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Teks yang telah diterjemahkan"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Pesan kesalahan"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Alasan untuk memperlambat"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Diterjemahkan url file"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Nilai kepercayaan"
-#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr "Batas input karakter untuk bahasa ini (-1 menunjukkan tidak ada batasan)"
-
#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+"Batas input karakter untuk bahasa ini (-1 menunjukkan tidak ada batasan)"
+
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Sitemap"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Apakah database kunci API diaktifkan."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Apakah kunci API diperlukan."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Apakah pengiriman saran diaktifkan."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Format file yang didukung"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Apakah pengajuan berhasil"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Fotokopi"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Tidak bisa memuat %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Kesalahan tidak diketahui"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Disalin"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
-"Terima kasih atas koreksi Anda. Perhatikan saran tidak akan mengambil "
-"efek segera."
+"Terima kasih atas koreksi Anda. Perhatikan saran tidak akan mengambil efek "
+"segera."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
-msgstr "Tidak ada bahasa yang tersedia. Apakah Anda menginstal model dengan benar?"
+msgstr ""
+"Tidak ada bahasa yang tersedia. Apakah Anda menginstal model dengan benar?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Ketikkan kunci API. Jika Anda memerlukan kunci API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "tekan tautan \"Get API Key\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "hubungi operator server."
-#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "API Translation API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Gratis dan Open Source Machine Translation API. Secara mandiri, offline "
"mampu dan mudah diatur. Jalankan server API Anda sendiri hanya dalam "
@@ -518,155 +592,155 @@ msgstr "sitemap"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Documents"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Dapatkan Kunci API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Tetapkan Kunci API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Mengubah bahasa"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Sunting"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Mode gelap / ringan"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Tutup"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Terjemahkan Teks"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Terjemahkan File"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Terjemahkan dari"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Sumber swap dan bahasa target"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Terjemahkan ke"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Teks untuk diterjemahkan"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Hapus teks"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Sarankan terjemahan"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Batal"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Kirim"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Format file yang didukung:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "File"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Hapus file"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Terjemahkan"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Unduh"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Minta"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Respons"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API documentation"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Hosting mandiri. Bisa Offline. Mudah Disiapkan."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Lisensi:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"API publik ini harus digunakan untuk pengujian, penggunaan pribadi, atau "
-"jarang dipakai. Jika Anda akan menjalankan aplikasi dalam tahap produksi,"
-" silakan %(host_server)s atau %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "host server anda sendiri"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "dapatkan kunci API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "Dibuat dengan %(heart)s oleh %(contributors)s dan didukung oleh %(engine)s"
+msgstr ""
+"Dibuat dengan %(heart)s oleh %(contributors)s dan didukung oleh %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Kontributor %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnam"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "API publik ini harus digunakan untuk pengujian, penggunaan pribadi, atau "
+#~ "jarang dipakai. Jika Anda akan menjalankan aplikasi dalam tahap produksi, "
+#~ "silakan %(host_server)s atau %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "host server anda sendiri"
+
+#~ msgid "get an API key"
+#~ msgstr "dapatkan kunci API"
diff --git a/libretranslate/locales/it/LC_MESSAGES/messages.po b/libretranslate/locales/it/LC_MESSAGES/messages.po
index 4d62b02..ed38fbf 100644
--- a/libretranslate/locales/it/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/it/LC_MESSAGES/messages.po
@@ -8,110 +8,120 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-01-07 13:03+0000\n"
"Last-Translator: Piero Toffanin \n"
-"Language-Team: Italian \n"
"Language: it\n"
+"Language-Team: Italian "
+"\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Formato JSON non valido"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Rileva Automaticamente"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Non autorizzato"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Violazione da troppe richieste"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Chiave API non valida"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
-msgstr ""
-"Si prega di contattare l'operatore del server per ottenere una chiave API"
+msgstr "Si prega di contattare l'operatore del server per ottenere una chiave API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visita %(url)s per ottenere una chiave API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Rallenta:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Richiesta non valida: parametro %(name)s mancante"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Richiesta non valida: richiesta (%(size)s) supera i limiti di testo "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s non è supportato"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "il formato %(format)s non è supportato"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
-"(%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) non è disponibile come lingua di destinazione da "
"%(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Non è possible tradurre il testo: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "La traduzione dei files è disabilitata su questo server."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Richiesta non valida: file vuoto"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Richiesta non valida: formato del file non supportato"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nome del file non valido"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "I suggerimenti sono disabilitati su questo server."
@@ -120,120 +130,176 @@ msgid "English"
msgstr "Inglese"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabo"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azero"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Cinese"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Ceco"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Danese"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Olandese"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finlandese"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francese"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Tedesco"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Greco"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Ebraico"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Ungherese"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesiano"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandese"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiano"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Giapponese"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Coreano"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persiano"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polacco"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portoghese"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Russo"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovacco"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spagnolo"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Svedese"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turco"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ucraino"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamita"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +317,7 @@ msgstr "traduzione"
msgid "Translate text from a language to another"
msgstr "Traduce testo da una lingua a un'altra"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Testo tradotto"
@@ -306,210 +372,214 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Chiave API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Traduce file da una lingua a un'altra"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "File tradotto"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "File da tradurre"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Rileva la lingua di un singolo testo"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Rilevazioni"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Errore di rilevamento"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Testo da rilevare"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Recupera le impostazioni del frontend"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "impostazioni del frontend"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Invia un suggerimento per migliorare una traduzione"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Successo"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Non autorizzato"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Testo originale"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Traduzione suggerita"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Lingua del testo originale"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Lingua della traduzione suggerita"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Codice lingua"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nome della lingua (in Inglese)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Codici lingua di destinazione supportati"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Testo/i tradotto/i"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Messaggio di errore"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Ragione del rallentamento"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL del file tradotto"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valore di confidenza"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Limite di caratteri per questa lingua (-1 indica nessun limite)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tempo limite di traduzione sul frontend"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Se il database di chiavi API è abilitato."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Se è richiesta una chiave API."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Se l'invio di suggerimenti è abilitato."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formati files supportati"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Se l'invio è stato di successo"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Copia testo"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Non riesco a caricare %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Errore sconosciuto"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Copiato"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect right "
-"away."
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
msgstr ""
-"Grazie per la tua correzione. Si noti che il suggerimento non avrà effetto "
-"subito."
+"Grazie per la tua correzione. Si noti che il suggerimento non avrà "
+"effetto subito."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Nessuna lingua disponibile. Hai installato correttamente i modelli?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
-"Digita la tua chiave API. Se hai bisogno di una chiave API, %(instructions)s"
+"Digita la tua chiave API. Se hai bisogno di una chiave API, "
+"%(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "premi il link \"Ottieni Chiave API\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "contatta l'operatore del server."
-#: libretranslate/templates/index.html:9
-#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "API di traduzione automatica libera e open source"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline capable "
-"and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API di traduzione automatica libera e open source. Self-hosted, funziona "
-"anche offline e facile da configurare. Fai girare il tuo server API in pochi"
-" minuti."
+"anche offline e facile da configurare. Fai girare il tuo server API in "
+"pochi minuti."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -519,155 +589,159 @@ msgstr "traduzione"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Ottieni Chiave API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Imposta Chiave API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Cambia lingua"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Modifica"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Cambia modalità scura/chiara"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Chiudi"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API di Traduzione"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Traduci Testo"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Traduci Files"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Traduci da"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Scambia lingua sorgente e di destinazione"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Traduci in"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Testo da tradurre"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Elimina testo"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Suggerisci una traduzione"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Annulla"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Invia"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formati files supportati:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "File"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Rimuovi file"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Traduci"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Scarica"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Richiesta"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Risposta"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API di Traduzione Automatica Open Source"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted. Funziona anche offline. Facile da Configurare."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licenza:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Questa API pubblica può essere utilizzata per fare prove, per uso personale "
-"o infrequente. Se hai intenzione di utilizzarla in produzione, per favore "
-"%(host_server)s o %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "hosta un server tuo"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "ottieni una chiave API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Realizzato con %(heart)s da %(contributors)s e powered by %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Contributori di %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamita"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Questa API pubblica può essere "
+#~ "utilizzata per fare prove, per uso "
+#~ "personale o infrequente. Se hai "
+#~ "intenzione di utilizzarla in produzione, "
+#~ "per favore %(host_server)s o %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "hosta un server tuo"
+
+#~ msgid "get an API key"
+#~ msgstr "ottieni una chiave API"
+
diff --git a/libretranslate/locales/ja/LC_MESSAGES/messages.po b/libretranslate/locales/ja/LC_MESSAGES/messages.po
index ff4b27f..fa846b8 100644
--- a/libretranslate/locales/ja/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ja/LC_MESSAGES/messages.po
@@ -8,107 +8,115 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-08-06 00:09+0000\n"
"Last-Translator: SA99100 \n"
-"Language-Team: Japanese \n"
+"Language-Team: Japanese \n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.7-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "無効なJSON形式"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "自動検出"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "無許可"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "リクエストが多すぎます。"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "無効なAPIキー"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "APIキーを取得するにはサーバ管理者に連絡してください。"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "%(url)sにアクセスして API キーを取得する"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "スローダウン:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "無効な要求: %(name)s パラメータが欠落している"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "無効な要求: ツイート パラメータは数値ではありません %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "無効な要求: ツイート パラメータは <= %(value)s %(name)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "無効な要求: 要求(%(size)s)がテキストの制限(%(limit)s)超えている"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s はサポートされていません"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s フォーマットはサポートされていません"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
"(%(scode)s)"
msgstr "%(tname)s (%(tcode)s) 対象言語は対象言語として利用できません。 %(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "テキストを翻訳できません。 %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "このサーバーではファイル翻訳が無効になっています。."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "無効なリクエスト:空のファイル"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "無効なリクエスト: ファイルがサポートされていない形式"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "無効なファイル名"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "このサーバーで提案が無効になっています。."
@@ -117,120 +125,176 @@ msgid "English"
msgstr "日本語"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "アルバニア語"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "アラビア語"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "アゼルバイジャン語"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "ベンガル語"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "インドネシア"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "カタロニア"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "中国語(簡体)"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "中国語(繁体)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "チェコ語"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "デンマーク語"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "オランダ語"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "エスペラント語"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "エストニア語"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "フィンランド語"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "フランス語"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "ドイツ語"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "ギリシャ語"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "ヘブライ語"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "ヒンディー語"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "ハンガリー"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "インドネシア"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "アイルランド"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "イタリア"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "日本語"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "韓国語"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "ラトビアの"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "リトアニア語"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "マレー語"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "ノルウェー語"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "ペルシア語"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "ポーランド語"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "ポルトガル語"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "ルーマニア"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "ロシア語"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "スロヴァキア語"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "スロベニア語"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "スペイン語"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "スウェーデン語"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "タガログ"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "タイ"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "トルコ語"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "ウクラニアン"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "ベトナム"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "ウルドゥー"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -248,7 +312,7 @@ msgstr "翻訳"
msgid "Translate text from a language to another"
msgstr "言語から別の言語にテキストを翻訳する"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "翻訳テキスト"
@@ -303,195 +367,199 @@ msgstr ""
"* `html` - HTML マークアップ\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "代替翻訳の優先数"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "APIキー"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "言語から別の言語にファイルを翻訳する"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "翻訳されたファイル"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "翻訳するファイル"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "単一のテキストの言語を検出する"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "検出"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "検出エラー"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "検出するテキスト"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "フロントエンドの特定の設定を取得する"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "フロントエンドの設定"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "フロントエンド"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "翻訳を改善するために提案を提出する"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "成功"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "認証されていません"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "オリジナルテキスト"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "提案された翻訳"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "オリジナルテキストの言語"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "提案された翻訳の言語"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "フィードバック"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "言語コード"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "読みやすい言語名(英語)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "ターゲット言語コードをサポート"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "翻訳されたテキスト(s)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "エラーメッセージ"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "遅くなる理由"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "翻訳されたファイル url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "機密価値"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "この言語の文字入力制限(-1は制限なし)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "フロントエンドの翻訳タイムアウト"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "API キーデータベースが有効になっているかどうか。."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "API キーが要求されるかどうか。."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "提案を提出するかどうかが有効になっています。."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "サポートされているファイル形式"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "投稿が成功したかどうか"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "テキストのコピー"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "負荷無し %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "未知のエラー"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "コピッド"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr "あなたの修正をありがとう。 提案はすぐに影響しません。."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "多言語対応 モデルを正しくインストールしましたか?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "APIキーを入力します。 API キーが必要な場合は、%(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "「APIキーの取得」リンクを押します。."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "サーバ オペレータに連絡して下さい。."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "オープンソース・マシン・トランスレーション・API"
@@ -512,155 +580,153 @@ msgstr "インフォメーション"
msgid "api"
msgstr "ログイン"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API ドキュメント"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API の取得 キーキー"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHubで"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "APIの設定 キーキー"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "言語変更"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "編集"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "ダークモード/ライトモードを切り替える"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "免責事項"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "翻訳 API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "テキストの翻訳"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "ファイル翻訳"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "翻訳から"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "スワップソースとターゲット言語"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "翻訳する"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "翻訳するテキスト"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "テキストの削除"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "翻訳の提案"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "キャンセル"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "お問い合わせ"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "サポートされているファイル形式:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "ファイル"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "ファイルを削除します。"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "ログイン"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "ダウンロード"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "リクエスト"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "ソリューション"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "オープンソース機械翻訳 API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "セルフホスト。 オフライン対応 簡単にセットアップできます。."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "ライブラリ"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "ライセンス:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"この公開API はテストまたは個人的、頻繁でない用途に使用してください。製品のア"
-"プリケーションに使用する場合は、%(host_server)s または "
-"%(get_api_key)sしてください。"
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "自分のサーバーをホストする"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "APIキーを取得"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "%(heart)sと%(contributors)sによって作成され、%(engine)sにより作動しています。"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s 貢献者"
#~ msgid "multipart/form-data"
#~ msgstr "マルチパート/フォームデータ"
+
+#~ msgid "Vietnamese"
+#~ msgstr "ベトナム"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "この公開API はテストまたは個人的、頻繁でない用途に使用してください。製品のアプリケーションに使用する場合は、%(host_server)s または "
+#~ "%(get_api_key)sしてください。"
+
+#~ msgid "host your own server"
+#~ msgstr "自分のサーバーをホストする"
+
+#~ msgid "get an API key"
+#~ msgstr "APIキーを取得"
diff --git a/libretranslate/locales/ko/LC_MESSAGES/messages.po b/libretranslate/locales/ko/LC_MESSAGES/messages.po
index c5b8776..9aa3bd3 100644
--- a/libretranslate/locales/ko/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ko/LC_MESSAGES/messages.po
@@ -8,105 +8,116 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-06-19 20:49+0000\n"
"Last-Translator: Sungjoon Moon \n"
-"Language-Team: Korean \n"
"Language: ko\n"
+"Language-Team: Korean "
+"\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "잘못된 JSON 형식"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "자동 감지"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "인증되지 않음"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "요청이 너무 많음"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "잘못된 API 키"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "API 키를 얻기 위해 서버 연산자에 문의하시기 바랍니다"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "%(url)s 에서 API 키 받기"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "속도가 느림:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "잘못된 요청: %(name)s 파라미터 누락"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "잘못된 요청: 텍스트 제한 (%(limit)s) 초과하는 요청 (%(size)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s 지원되지 않음"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s 형식은 지원되지 않습니다"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
-"(%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
msgstr "%(sname)s (%(scode)s)에서 %(tname)s (%(tcode)s)로 번역할 수 없습니다"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "텍스트를 번역할 수 없습니다: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "현재 서버에서 파일 번역이 비활성화 되어 있습니다."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "잘못된 요청: 빈 파일"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "잘못된 요청: 파일 형식 지원되지 않음"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "잘못된 파일명"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "현재 서버에서 제안이 비활성화 되어 있습니다."
@@ -115,120 +126,176 @@ msgid "English"
msgstr "영어"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "아랍어"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "아제르바이잔어"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "중국어"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "체코어"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "덴마크어"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "네덜란드어"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "에스페란토"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "핀란드어"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "프랑스어"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "독일어"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "그리스어"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "히브리어"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "힌디어"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "헝가리어"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "인도네시아어"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "아일랜드어"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "이탈리아어"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "일본어"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "한국어"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "페르시아어"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "폴란드어"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "포르투칼어"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "러시아어"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "슬로바키아어"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "스패인어"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "스웨덴어"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "터키어"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "우크라이나어"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "베트남어"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -246,7 +313,7 @@ msgstr "번역"
msgid "Translate text from a language to another"
msgstr "다른 언어로 텍스트를 번역"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "번역된 텍스트"
@@ -301,206 +368,209 @@ msgstr ""
"* `html` - HTML 마크 업\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API 키"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "다른 언어로 파일을 번역"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "번역된 파일"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "번역할 파일"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "단일 텍스트의 언어를 감지"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "감지 내용"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "감지 오류"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "감지할 텍스트"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "프론트엔드의 특정 설정을 검색"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "프론트엔드 설정"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "프론트엔드"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "번역을 개선하기 위해 제안을 제출"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "성공"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "권한 없음"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "원문"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "제안된 번역"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "원문의 언어"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "제안된 번역의 언어"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "피드백"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "언어 코드"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "사람이 읽을 수 있는 언어 이름 (영어로)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "지원하는 언어 코드"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "번역된 텍스트"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "오류 메시지"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "느려지는 이유"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "번역된 파일 url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "신뢰치"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "이 언어의 문자 입력 제한 (-1은 제한이 없음을 의미)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "프론트엔드 번역 시간 초과"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "API 키 데이터베이스가 활성화되었는지 여부."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "API 키가 필요하든."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "자주 묻는 질문."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "지원된 파일 형식"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "제출이 성공했는지 여부"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "텍스트 복사"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s를 읽어들일 수 없음"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "알려지지 않은 오류"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "복사됨"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect right "
-"away."
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
msgstr "수정해 주셔서 감사합니다. 제안은 즉시 반영되지 않을 수 있습니다."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "가능한 언어가 없음. 언어 모델을 제대로 설치하셨나요?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "API 키 입력. API 키가 필요한 경우, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "\"Get API Key\" 링크를 누릅니다."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "서버 운영자에게 문의하세요."
-#: libretranslate/templates/index.html:9
-#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "자유 오픈 소스 기계 번역 API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline capable "
-"and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"자유 오픈 소스 기계 번역 API. 셀프 호스팅, 오프라인에서 사용이 가능하며, 설치가 쉽습니다. 단 몇 분 만 투자하여 자신의 API "
-"서버를 돌려보세요."
+"자유 오픈 소스 기계 번역 API. 셀프 호스팅, 오프라인에서 사용이 가능하며, 설치가 쉽습니다. 단 몇 분 만 투자하여 자신의 "
+"API 서버를 돌려보세요."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -510,154 +580,158 @@ msgstr "번역"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API 문서"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API 키 획득"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API 키 설정"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "언어 선택"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "수정"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "어두운 색/빛 모드"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "닫기"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "번역 API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "텍스트 번역하기"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "파일 번역하기"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "~로 부터 번역하기"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "출발 언어, 도착 언어 서로 바꾸기"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "~로 번역하기"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "번역할 텍스트"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "텍스트 삭제"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "번역 제안하기"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "취소"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "보내기"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "지원되는 파일 형식:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "파일"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "파일 삭제"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "번역"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "다운로드"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "요청"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "응답"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "오픈 소스 기계 번역 API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "셀프 호스팅. 오프라인 이용 가능. 설정하기 쉬움."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "라이센스:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"이 공개 API는 테스트 또는 개인적인 용도로만 사용되어야 하며, 잦은 요청을 지양합니다. 운영 환경에서 응용 프로그램을 실행할 경우, "
-"%(host_server)s 또는 %(get_api_key)s을 참조하십시오."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "자신만의 서버 호스팅"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "API 키 획득"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "%(contributors)s의 손으로 %(heart)s와 함께 만들었으며, %(engine)s에 의해 제공됨"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s 기여자"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form 자료"
+
+#~ msgid "Vietnamese"
+#~ msgstr "베트남어"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "이 공개 API는 테스트 또는 개인적인 용도로만 "
+#~ "사용되어야 하며, 잦은 요청을 지양합니다. 운영 환경에서"
+#~ " 응용 프로그램을 실행할 경우, %(host_server)s 또는"
+#~ " %(get_api_key)s을 참조하십시오."
+
+#~ msgid "host your own server"
+#~ msgstr "자신만의 서버 호스팅"
+
+#~ msgid "get an API key"
+#~ msgstr "API 키 획득"
+
diff --git a/libretranslate/locales/lt/LC_MESSAGES/messages.po b/libretranslate/locales/lt/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..c2b7bd4
--- /dev/null
+++ b/libretranslate/locales/lt/LC_MESSAGES/messages.po
@@ -0,0 +1,716 @@
+# Lithuanian translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: lt\n"
+"Language-Team: lt \n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"(n%100<10 || n%100>=20) ? 1 : 2);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "Blogas JSON formatas"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "Automatinis aptikimas"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "Neleidžiama"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "NAME OF TRANSLATORS"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "Blogas API raktas"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "Prašome susisiekti su serverio operatoriumi, kad gautumėte API raktą"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "Apsilankymas %(url)s gauti API raktą"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "Lėčiau:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "Blogas prašymas: trūksta %(name)s parametras"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Klaidingas prašymas: %(name)s parametras nėra skaičius"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Klaidingas prašymas: %(name)s parametras turi būti < = %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr "Blogas prašymas: prašymas (%(size)s) viršija teksto ribą (%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s nepalaikoma"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s formatas nepalaikomas"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr "%(tname)s (%(tcode)s) nėra kaip tikslinės kalbos iš %(sname)s (%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "Nepavyko išversti teksto: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "Failų vertimas šiame serveryje yra išjungtas."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "Blogas prašymas: tuščias failas"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "Klaidingas prašymas: failo formatas nepalaikomas"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "Klaidingas failo pavadinimas"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "Siūlymai yra išjungti šiame serveryje."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "Anglų"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albanijos"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "Arabų"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Azerbaidžanas"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgarų"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalonų"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "Kinų"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kinų (tradicinė)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "Čekų"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "Danų"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "Olandų"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "Esperanto"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estų"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "Suomių"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "Prancūzų"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "Vokiečių"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "Graikų"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "Hebrajų"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "Hindis"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "Vengrų"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "Indoneziečių"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "Airių"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "Italų"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "Japonų"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "Korėjiečių"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latvių"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Lietuvių"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "MalajusCountry name"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norvegų"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Persų"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Lenkų"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portugalų"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumunų"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Rusų"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Slovakų"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovėnų"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Ispanų"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Švedų"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalogas"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thai"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Turkų"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "UkranijName"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "Gauti palaikomų kalbų sąrašą"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "Kalbų sąrašas"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "translate"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "Versti tekstą iš kalbos į kitą"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "Tekstas išvertus"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "Klaidingas prašymas"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "Vertimo klaida"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "Lėčiau"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "Konservuoti"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "Labas pasaulis!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "Verstinas (-i) tekstas (-ai)"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "Šaltinio kalbos kodas"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "Paskirties kalbos kodas"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "tekstas"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"Šaltinio teksto formatas:\n"
+"* tekstas - plonas tekstas\n"
+"* 'html' - HTML žymėjimas\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Pageidautinas alternatyvių vertimų skaičius"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "API raktas"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "Klubui buvo priskirtas žaidėjas dėl per mažo jų skaičiaus"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "Išverstas failas"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "Failas išversti"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "NAME OF TRANSLATORS"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "III PRIEDAS"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "Nustatymo klaida"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "Name"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "@ info: whatsthis"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "frontent nustatymai"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "frontent"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "Siūlymą patobulinti vertimą"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "Sėkmė"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "Neleidžiama"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "Originalus tekstas"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "Siūlomas vertimas"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "Originalaus teksto kalba"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "Siūlomo vertimo kalba"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "grįžtamoji informacija"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "Kalbos kodas"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "Humanitarinės kalbos pavadinimas (anglų kalba)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "NAME OF TRANSLATORS"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "Išverstas (-i) tekstas (-ai)"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "Klaidos pranešimas"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "Vėlavimo priežastis"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "Išverstas failas url"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "Patikimumo vertė"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "Simbolių įvedimo riba šiai kalbai (-1 reiškia, kad ribų nėra)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "Name"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "NAME OF TRANSLATORS."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "NAME OF TRANSLATORS."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "@ info: status."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Palaikomas failų formatas"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "@ info: whatsthis"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "Kopijuoti tekstą"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "Nepavyko įkelti %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "Nežinoma klaida"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "Kopijuota"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+"Ačiū, kad pataisei. Atkreipkite dėmesį, pasiūlymas nebus įsigalioti iš "
+"karto."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "Kalbų nėra. Tu teisingai įdiegei modelius?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr "Įveskite savo API raktą. Jums reikia API rakto, %(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "paspauskite nuorodą \"Gauk API raktą\"."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "susisiekti su serverio operatoriumi."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "Nemokamas ir atvirojo kodo mašinos vertimas API"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"Nemokamai ir Open Source Machine Translation API. Savarankiškai "
+"patalpintas, atsijungęs gali ir lengvai nustatyti. Bėk savo API serverį "
+"po kelių minučių."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "vertimas"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "api"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "API dokumentai"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "Gauk API Raktas"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "GitHub"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "Nustatyti API Raktas"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Keisti kalbą"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Keisti"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Perjungti tamsios (šviesos) veikseną"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "Naikinti"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "Vertimo API"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "Versti tekstą"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "Name"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "Žaisti iš"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "Sukeisti šaltinį ir tikslines kalbas"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "Pereiti į"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "Verstinas tekstas"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "Trinti"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "Siūlomas vertimas"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "Atsisakyti"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "Siųsti"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "Palaikomi failų formatai:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "Failas"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "Pašalinti failą"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "Transliuoti"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "Atsisiųsti"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Prašymas"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "Atsakas"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "Open Source Machine Translation API"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "Selfas Hostedas. Galimi atsijungimai. Lengva susitvarkyti."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "Name"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "Licencija:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr "Lovatiesės %(heart)s pagal %(contributors)s ir varomas %(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s Pagalbininkai"
+
diff --git a/libretranslate/locales/lt/meta.json b/libretranslate/locales/lt/meta.json
new file mode 100644
index 0000000..df73c99
--- /dev/null
+++ b/libretranslate/locales/lt/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Lithuanian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/lv/LC_MESSAGES/messages.po b/libretranslate/locales/lv/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..ed5a8bb
--- /dev/null
+++ b/libretranslate/locales/lv/LC_MESSAGES/messages.po
@@ -0,0 +1,719 @@
+# Latvian translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: lv\n"
+"Language-Team: lv \n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 :"
+" 2);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "Nederīgs JSON formāts"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "Automātiski noteikt"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "Neautorizēts"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "Pārāk daudz pieprasījumu ierobežo pārkāpumus"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "Nederīga API atslēga"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "Lūdzu sazinieties ar servera operatoru, lai iegūtu API atslēgu"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "Apmeklējums %(url)s API atslēga"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "Lejupvērst:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "Nederīgs pieprasījums: trūkst %(name)s parametrs"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Nederīgs pieprasījums: %(name)s parametrs nav skaitlis"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Nederīgs pieprasījums: %(name)s parametram jābūt > %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr "Nederīgs pieprasījums (%(size)s) pārsniedz teksta limitu (%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s nav atbalstīts"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s formāts nav atbalstīts"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+"%(tname)s (%(tcode)s) nav pieejams kā mērķa valoda no %(sname)s "
+"(%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "Nevar tulkot tekstu: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "Šajā serverī ir atslēgts failu tulkojums."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "Nederīgs pieprasījums: tukšs fails"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "Nederīgs pieprasījums: faila formāts nav atbalstīts"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "Nederīgs faila nosaukums"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "Serverī ir atslēgti ieteikumi."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "Angļu"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albāņu"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "Arābu"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Azerbaidžāna"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "BengāļuName"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgāru"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Kataloņu"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "Ķīniešu"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Ķīniešu (tradicionālie)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "Čehu"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "Dāņu"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "Holandiešu"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "Esperanto"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Igauņu"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "Somu"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "Franču"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "Vācu"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "Grieķu"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "Ebreju"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "Hindi"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "Ungāru"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "Indonēziešu"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "Īru"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "Itāļu"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "Japānas"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "Korejiešu"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latviešu"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Lietuviešu"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malāvija"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Latviešu"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Persiešu"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Poļu"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portugāļu"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumāņu"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Krievu"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Slovāku"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovēņu"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Spāņu"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Zviedru"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalogs"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Taizemiešu"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Turku"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "Ukraņu"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "Ielādēt atbalstīto valodu sarakstu"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "Valodu saraksts"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "tulkot"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "Tulkot tekstu no valodas uz citu"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "Tulkots teksts"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "Nederīgs pieprasījums"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "Tulkošanas kļūda"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "Lēnāk"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "Konservēti"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "Labdien!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "Teksts(-i), ko tulkot"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "Izcelsmes valodas kods"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "Mērķa valodas kods"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "teksts"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"Avota teksta formāts:\n"
+"* `teksts` - vienkāršs teksts\n"
+"* `html` - HTML marķējums\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Vēlamais alternatīvo tulkojumu skaits"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "API atslēga"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "Tulkot failu no valodas uz citu"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "Tulkots fails"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "Fails, ko tulkot"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "Noteikt viena teksta valodu"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "Noteikšana"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "Noteikšanas kļūda"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "Nosakāmais teksts"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "Ielādēt priekšpuses īpašos iestatījumus"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "priekšpuses iestatījumi"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "priekšpuse"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "Iesniegt ierosinājumu uzlabot tulkojumu"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "Panākumi"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "Nav atļauts"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "Oriģinālais teksts"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "Ierosinātais tulkojums"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "Oriģināla teksta valoda"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "Ierosinātā tulkojuma valoda"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "atsauksmes"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "Valodas kods"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "Cilvēkam salasāms valodas nosaukums (angliski)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "Pamatotie mērķa valodu kodi"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "Tulkots(i) teksts(i)"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "Kļūdas paziņojums"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "Palēninājuma iemesls"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "Tulkots faila URL"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "Ticamības vērtība"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+"Rakstzīmju ievades ierobežojums šai valodai (-1 norāda, ka nav "
+"ierobežojuma)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "Priekšpuses tulkošanas noildze"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "Vai ir ieslēgta API atslēgu datubāze."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "Vai nepieciešama API atslēga."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "Vai ir ieslēgta ieteikumu nosūtīšana."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Atbalstīto failu formāts"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "Vai iesniegšana bija veiksmīga"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "Kopēt tekstu"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "Nevar ielādēt %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "Nezināma kļūda"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "Nokopēts"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr "Paldies par korekciju. Ņemiet vērā, ka ierosinājums stāsies spēkā uzreiz."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "Valodas nav pieejamas. Vai jūs pareizi uzstādījāt modeļus?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+"Ierakstiet savā API atslēgā. Ja jums ir nepieciešama API atslēga, "
+"%(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "nospiediet \"Get API Key\" saiti."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "sazinieties ar servera operatoru."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "Bezmaksas un atvērtā pirmkoda mašīntulkošanas API"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"Bezmaksas un atvērtā pirmkoda mašīntulkošanas API. Self-hosted, bezsaistē"
+" spēj un viegli uzstādīt. Palaist savu API serveri tikai dažas minūtes."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "tulkošana"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "api"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "API dokumenti"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "Saņemt API Atslēga"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "GitHub"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "Uzstādīt API Atslēga"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Mainīt valodu"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Rediģēt"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Slēgt Tumšo/ Gaismu"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "Noņemt"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "Tulkošanas API"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "Tulkot tekstu"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "Tulkot failus"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "Tulkot no"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "Maiņvietas avots un mērķa valodas"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "Tulkot uz"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "Tulkojamais teksts"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "Dzēst tekstu"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "Ieteikt tulkojumu"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "Atcelt"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "Sūtīt"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "Atbalstītie failu formāti:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "Fails"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "Izņemt failu"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "Tulkot"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "Lejupielādēt"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Pieprasījums"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "Atbildes reakcija"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "Atvērt pirmkoda mašīnas tulkošanas API"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "Pašaizliedzies. Bezsaistes Spēj. Viegli iestatīt."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibreTulkot"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "Licence:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr "Izgatavots no %(heart)s līdz %(contributors)s un darbina %(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s Atbalstītāji"
+
diff --git a/libretranslate/locales/lv/meta.json b/libretranslate/locales/lv/meta.json
new file mode 100644
index 0000000..d5bd3b2
--- /dev/null
+++ b/libretranslate/locales/lv/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Latvian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/messages.pot b/libretranslate/locales/messages.pot
index f2b734b..304d1d9 100644
--- a/libretranslate/locales/messages.pot
+++ b/libretranslate/locales/messages.pot
@@ -1,111 +1,121 @@
# Translations template for LibreTranslate.
-# Copyright (C) 2023 LibreTranslate Authors
+# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
-# FIRST AUTHOR , 2023.
+# FIRST AUTHOR , 2024.
#
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: LibreTranslate 1.3.12\n"
+"Project-Id-Version: LibreTranslate 1.6.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr ""
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr ""
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr ""
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr ""
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr ""
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr ""
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr ""
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr ""
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr ""
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr ""
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr ""
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr ""
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr ""
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr ""
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr ""
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr ""
@@ -114,119 +124,175 @@ msgid "English"
msgstr ""
#: libretranslate/locales/.langs.py:2
-msgid "Arabic"
+msgid "Albanian"
msgstr ""
#: libretranslate/locales/.langs.py:3
-msgid "Azerbaijani"
+msgid "Arabic"
msgstr ""
#: libretranslate/locales/.langs.py:4
-msgid "Chinese"
+msgid "Azerbaijani"
msgstr ""
#: libretranslate/locales/.langs.py:5
-msgid "Czech"
+msgid "Bengali"
msgstr ""
#: libretranslate/locales/.langs.py:6
-msgid "Danish"
+msgid "Bulgarian"
msgstr ""
#: libretranslate/locales/.langs.py:7
-msgid "Dutch"
+msgid "Catalan"
msgstr ""
#: libretranslate/locales/.langs.py:8
-msgid "Esperanto"
+msgid "Chinese"
msgstr ""
#: libretranslate/locales/.langs.py:9
-msgid "Finnish"
+msgid "Chinese (traditional)"
msgstr ""
#: libretranslate/locales/.langs.py:10
-msgid "French"
+msgid "Czech"
msgstr ""
#: libretranslate/locales/.langs.py:11
-msgid "German"
+msgid "Danish"
msgstr ""
#: libretranslate/locales/.langs.py:12
-msgid "Greek"
+msgid "Dutch"
msgstr ""
#: libretranslate/locales/.langs.py:13
-msgid "Hebrew"
+msgid "Esperanto"
msgstr ""
#: libretranslate/locales/.langs.py:14
-msgid "Hindi"
+msgid "Estonian"
msgstr ""
#: libretranslate/locales/.langs.py:15
-msgid "Hungarian"
+msgid "Finnish"
msgstr ""
#: libretranslate/locales/.langs.py:16
-msgid "Indonesian"
+msgid "French"
msgstr ""
#: libretranslate/locales/.langs.py:17
-msgid "Irish"
+msgid "German"
msgstr ""
#: libretranslate/locales/.langs.py:18
-msgid "Italian"
+msgid "Greek"
msgstr ""
#: libretranslate/locales/.langs.py:19
-msgid "Japanese"
+msgid "Hebrew"
msgstr ""
#: libretranslate/locales/.langs.py:20
-msgid "Korean"
+msgid "Hindi"
msgstr ""
#: libretranslate/locales/.langs.py:21
-msgid "Persian"
+msgid "Hungarian"
msgstr ""
#: libretranslate/locales/.langs.py:22
-msgid "Polish"
+msgid "Indonesian"
msgstr ""
#: libretranslate/locales/.langs.py:23
-msgid "Portuguese"
+msgid "Irish"
msgstr ""
#: libretranslate/locales/.langs.py:24
-msgid "Russian"
+msgid "Italian"
msgstr ""
#: libretranslate/locales/.langs.py:25
-msgid "Slovak"
+msgid "Japanese"
msgstr ""
#: libretranslate/locales/.langs.py:26
-msgid "Spanish"
+msgid "Korean"
msgstr ""
#: libretranslate/locales/.langs.py:27
-msgid "Swedish"
+msgid "Latvian"
msgstr ""
#: libretranslate/locales/.langs.py:28
-msgid "Turkish"
+msgid "Lithuanian"
msgstr ""
#: libretranslate/locales/.langs.py:29
-msgid "Ukranian"
+msgid "Malay"
msgstr ""
#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
msgstr ""
#: libretranslate/locales/.swag.py:1
@@ -245,7 +311,7 @@ msgstr ""
msgid "Translate text from a language to another"
msgstr ""
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr ""
@@ -297,194 +363,198 @@ msgid ""
msgstr ""
#: libretranslate/locales/.swag.py:17
-msgid "API key"
+msgid "Preferred number of alternative translations"
msgstr ""
#: libretranslate/locales/.swag.py:18
-msgid "Translate file from a language to another"
+msgid "API key"
msgstr ""
#: libretranslate/locales/.swag.py:19
-msgid "Translated file"
+msgid "Translate file from a language to another"
msgstr ""
#: libretranslate/locales/.swag.py:20
-msgid "File to translate"
+msgid "Translated file"
msgstr ""
#: libretranslate/locales/.swag.py:21
-msgid "Detect the language of a single text"
+msgid "File to translate"
msgstr ""
#: libretranslate/locales/.swag.py:22
-msgid "Detections"
+msgid "Detect the language of a single text"
msgstr ""
#: libretranslate/locales/.swag.py:23
-msgid "Detection error"
+msgid "Detections"
msgstr ""
#: libretranslate/locales/.swag.py:24
-msgid "Text to detect"
+msgid "Detection error"
msgstr ""
#: libretranslate/locales/.swag.py:25
-msgid "Retrieve frontend specific settings"
+msgid "Text to detect"
msgstr ""
#: libretranslate/locales/.swag.py:26
-msgid "frontend settings"
+msgid "Retrieve frontend specific settings"
msgstr ""
#: libretranslate/locales/.swag.py:27
-msgid "frontend"
+msgid "frontend settings"
msgstr ""
#: libretranslate/locales/.swag.py:28
-msgid "Submit a suggestion to improve a translation"
+msgid "frontend"
msgstr ""
#: libretranslate/locales/.swag.py:29
-msgid "Success"
+msgid "Submit a suggestion to improve a translation"
msgstr ""
#: libretranslate/locales/.swag.py:30
-msgid "Not authorized"
+msgid "Success"
msgstr ""
#: libretranslate/locales/.swag.py:31
-msgid "Original text"
+msgid "Not authorized"
msgstr ""
#: libretranslate/locales/.swag.py:32
-msgid "Suggested translation"
+msgid "Original text"
msgstr ""
#: libretranslate/locales/.swag.py:33
-msgid "Language of original text"
+msgid "Suggested translation"
msgstr ""
#: libretranslate/locales/.swag.py:34
-msgid "Language of suggested translation"
+msgid "Language of original text"
msgstr ""
#: libretranslate/locales/.swag.py:35
-msgid "feedback"
+msgid "Language of suggested translation"
msgstr ""
#: libretranslate/locales/.swag.py:36
-msgid "Language code"
+msgid "feedback"
msgstr ""
#: libretranslate/locales/.swag.py:37
-msgid "Human-readable language name (in English)"
+msgid "Language code"
msgstr ""
#: libretranslate/locales/.swag.py:38
-msgid "Supported target language codes"
+msgid "Human-readable language name (in English)"
msgstr ""
#: libretranslate/locales/.swag.py:39
-msgid "Translated text(s)"
+msgid "Supported target language codes"
msgstr ""
#: libretranslate/locales/.swag.py:40
-msgid "Error message"
+msgid "Translated text(s)"
msgstr ""
#: libretranslate/locales/.swag.py:41
-msgid "Reason for slow down"
+msgid "Error message"
msgstr ""
#: libretranslate/locales/.swag.py:42
-msgid "Translated file url"
+msgid "Reason for slow down"
msgstr ""
#: libretranslate/locales/.swag.py:43
-msgid "Confidence value"
+msgid "Translated file url"
msgstr ""
#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
+msgid "Confidence value"
msgstr ""
#: libretranslate/locales/.swag.py:45
-msgid "Frontend translation timeout"
+msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
#: libretranslate/locales/.swag.py:46
-msgid "Whether the API key database is enabled."
+msgid "Frontend translation timeout"
msgstr ""
#: libretranslate/locales/.swag.py:47
-msgid "Whether an API key is required."
+msgid "Whether the API key database is enabled."
msgstr ""
#: libretranslate/locales/.swag.py:48
-msgid "Whether submitting suggestions is enabled."
+msgid "Whether an API key is required."
msgstr ""
#: libretranslate/locales/.swag.py:49
-msgid "Supported files format"
+msgid "Whether submitting suggestions is enabled."
msgstr ""
#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr ""
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr ""
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr ""
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr ""
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr ""
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr ""
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr ""
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr ""
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr ""
@@ -503,149 +573,133 @@ msgstr ""
msgid "api"
msgstr ""
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr ""
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr ""
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr ""
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr ""
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr ""
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr ""
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr ""
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr ""
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr ""
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr ""
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr ""
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr ""
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr ""
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr ""
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr ""
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr ""
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr ""
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr ""
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr ""
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr ""
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr ""
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr ""
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr ""
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr ""
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr ""
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr ""
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr ""
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr ""
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr ""
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr ""
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr ""
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr ""
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr ""
diff --git a/libretranslate/locales/ms/LC_MESSAGES/messages.po b/libretranslate/locales/ms/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..2ca9641
--- /dev/null
+++ b/libretranslate/locales/ms/LC_MESSAGES/messages.po
@@ -0,0 +1,734 @@
+# Malay translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: ms\n"
+"Language-Team: ms \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "Format JSON tidak sah"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "Autokesan"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "Tidak dibenarkan"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "Terlalu banyak permintaan yang membatasi pelanggaran"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "Kunci API tidak sah"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "Sila hubungi operator server untuk mendapatkan kunci API"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "Lawati WANITA 0 Diambil kunci API %(url)s"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "Perlahan:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr ""
+"Permintaan tidak sah: hilang WANITA 0 Parameter month= yang tidak "
+"diketahui akan diabaikan %(name)s"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+"Permintaan tidak sah: WANITA 0 Parameter gnona bukanlah sebuah "
+"angka %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Permintaan tidak sah: WANITA 0 parameter harus <= "
+"Perancis %(name)s %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+"Permintaan tidak sah: permintaan (request)WANITA 0) melebihi batas"
+" teks (Perancis) %(size)s %(limit)s"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "WANITA 0 Pautan simbolik tidak disokong %(lang)s"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "WANITA 0 Format wourne tidak didukung %(format)s"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+"WANITA 0 ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ("
+" ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
+"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (.Perancis) "
+"tidak tersedia sebagai bahasa target dari %(sname)s ( ( ( ( ( ( ( ( ( ( ("
+" ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
+"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ("
+" ( ( ( ( ( ( ( ( (.Fiji 3) %(tname)s %(tcode)s %(scode)s"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "Tidak dapat menerjemahkan teks: WANITA 0 %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "Penerjemahan berkas-berkas translasi tidak aktif pada server ini."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "Permintaan tidak sah: fail kosong"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "Permintaan tidak sah: format berkas tidak disokong"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "Nama berkas tidak sah"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "Cadang ringan dinonaktifkan pada server ini."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "Bahasa Inggris"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albania"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "Arab"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Azerbaijan"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgaria"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalan"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "Perancis"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Bahasa Tionghoa (tradisional)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "Czech"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "Denmark"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "Hindia Belanda"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "Esperanto"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estonia"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "Finlandia"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "Perancis"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "Jerman"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "Yunani"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "Ibrani"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "Hindi"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "Hongaria"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "Bahasa Indonesia"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "Ireland"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "Italia"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "Jepang"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "Korea"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latvia"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Lithuania"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Bahasa Melayu"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norwegia"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Persia"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Polish"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portugis"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumania"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Rusia"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Slovak"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenia"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Spanyol"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Swedish"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thai"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Turki"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "Ukrainian"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "Daftar bahasa yang didukung"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "Bahasa"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "terjemahkan"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "Terjemahkan teks dari bahasa ke bahasa lain"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "Terjemahkan teks"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "Permintaan tidak sah"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "Kesalahan terjemahan terjemahan terjemahan"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "Perlahan"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "Diban"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "Halo dunia!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "Teks untuk diterjemahkan"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "Kode bahasa sumber"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "Kode bahasa sasaran"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "teks"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"Format teks sumber:\n"
+"Teks biasa\n"
+"* * `html` - Markup HTML\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Jumlah terjemahan alternatif yang lebih disukai"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "Kunci API"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "Terjemahkan file dari bahasa ke bahasa lain"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "Berkas terterjemah terjemahan"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "Berkas untuk diterjemahkan"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "Kesan bahasa teks tunggal"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "Mengesankan"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "Kesalahan pengesanan efek"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "Teks untuk dideteksi"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "Pengaturan spesifik frontend boochi Retrievee"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "pengaturan frontend xahole"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "bagian depan *"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "Berikan saran untuk meningkatkan terjemahan"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "Sukses"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "Tidak berwenang"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "Teks Asal"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "Terjemahan yang disarankan"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "Bahasa Mandarin dari teks asli"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "Bahasa dari terjemahan yang disarankan"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "umpan balik tidak merata"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "Bahasa"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "Nama bahasa Human-readable (dalam bahasa Inggris)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "Kode bahasa sasaran yang didukung"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "Teks Terjemah Terjemahkan"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "Pesan kesalahan"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "Alasan untuk memperlambat"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "URL berkas terterjemahan Terjemahkan"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "Nilai percaya diri"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "Batas input karakter bagi bahasa ini (-1 menunjukkan tidak ada batas)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "Terjemahan bahasa Jerman"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "Apakah database kunci API diaktifkan."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "Apakah anak kunci API diperlukan."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "Tidak soal apakah saran - saran yang diajukan diaktifkan."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Format berkas yang didukung"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "Apakah pengerahan kata berhasil"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "Salin teks"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "Tidak dapat memuat WANITA 0 %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "Tidak diketahui error"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "Copied"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+"Terima kasih atas pembetulanmu. Perhatikan saran tidak akan mengambil "
+"efek segera."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "197 bahasa tidak tersedia. Apa kau memasang model dengan benar?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+"Ketik di kunci API-mu. Jika Anda membutuhkan kunci API, WANITA 0 "
+"%(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "tekan « Get API Key\" link."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "hubungi operator server."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "API Terjemahan Mesin Jerman"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"API Terjemahan Mesin Sumber Terbuka dan Bebas Wadah Free dan Open Source."
+" Kepemilikan diri, offline mampu dan mudah diatur. Liat server API "
+"sendiri dalam beberapa menit."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "terjemahan fedora"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "afrika"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "Dok API"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "Dapatkan API Kunci"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "GitHub"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "API Set Kunci"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Bahasa"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Edit"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Togol mode gelap/cahaya"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "[Salah]"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "API Terjemahan Bahasa Indonesia"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "Terjemahan"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "Terjemahkan Berkas"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "Terjemahan dari"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "S Swap sumber dan bahasa target SHAPD"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "Terjemahkan kedalam"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "Teks untuk diterjemahkan"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "Teks Delete"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "Saran terjemahan"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "Batal"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "Kirim"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "Format berkas yang didukung:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "Berkas"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "Mengeluarkan berkas"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "Terjemahan"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "Muaturun"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Permintaan"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "Sambutan"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "API Terjemahan Mesin Sumber Terbuka"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "Self-Hosted. Kemampuan Luar Talian. Mudah diatur."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibreTranslate"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "Lisensi:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+"Dibuat dengan WANITA 0 Oleh: Perancis Ditenagai oleh "
+"%(engine)s %(heart)s %(contributors)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "WANITA 0 Kontributor %(libretranslate)s"
+
diff --git a/libretranslate/locales/ms/meta.json b/libretranslate/locales/ms/meta.json
new file mode 100644
index 0000000..7e2741a
--- /dev/null
+++ b/libretranslate/locales/ms/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Malay",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/nb/LC_MESSAGES/messages.po b/libretranslate/locales/nb/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..ce02905
--- /dev/null
+++ b/libretranslate/locales/nb/LC_MESSAGES/messages.po
@@ -0,0 +1,718 @@
+# Norwegian Bokmål translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: nb\n"
+"Language-Team: nb \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "Ugyldig JSON-format"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "Autodeteksjon"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "Uautorisert"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "For mange forespørselsgrenser"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "Ugyldig API-nøkkel"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "Kontakt serveroperatøren for å få en API-nøkkel"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "Besøk %(url)s å få en API-nøkkel"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "Nedsettelse:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "Ugyldig forespørsel: mangler %(name)s parameter"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Ugyldig forespørsel: %(name)s parameteren er ikke et tall"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Ugyldig forespørsel: %(name)s Parameteren må være <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+"Ugyldig forespørsel: forespørsel (%(size)s) overstiger tekstgrensen "
+"(%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s er ikke støttet"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s Format støttes ikke"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+"%(tname)s (%(tcode)s) er ikke tilgjengelig som målspråk fra %(sname)s "
+"(%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "Kan ikke oversette tekst: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "Filoversettelsen er deaktivert på denne serveren."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "Ugyldig forespørsel: tom fil"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "Ugyldig forespørsel: Filformatet støttes ikke"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "Ugyldig filnavn"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "Forslag er deaktivert på denne serveren."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "Engelsk"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albansk"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "Arabisk"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Aserbajdsjansk"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgarsk"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalansk"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "Kinesisk"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kinesisk (tradisjonell)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "Tsjekkisk"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "Dansk"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "Nederlandsk"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "Esperanto"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estisk"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "Finsk"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "Fransk"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "Tysk"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "Gresk"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "Hebraisk"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "Hindi"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "Ungarsk"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "Indonesisk"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "Irsk"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "Italiensk"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "Japansk"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "Koreansk"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latvisk"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litauisk"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norsk"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Persisk"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Polsk"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portugisisk"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumensk"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Russisk"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Slovakisk"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovensk"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Spansk"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Svensk"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thailandsk"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Tyrkisk"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "Ukrainsk"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "Hent listen over støttede språk"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "Liste over språk"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "oversett"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "Oversett tekst fra et språk til et annet"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "Oversatt tekst"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "Ugyldig forespørsel"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "Oversettelsesfeil"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "Sakte ned"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "Forbudt"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "Hei verden!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "Tekst(er) å oversette"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "Kildespråkkode"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "Målspråkkode"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "tekst"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"Format for kildetekst:\n"
+"* `tekst` - vanlig tekst\n"
+"* `html` - HTML-merking\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Foretrukket antall alternative oversettelser"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "API-nøkkel"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "Oversett fil fra et språk til et annet"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "Oversatt fil"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "Fil å oversette"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "Finn språket i en enkelt tekst"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "Oppdagelser"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "Oppdagingsfeil"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "Tekst å oppdage"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "Hent spesifikke innstillinger"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "frontend innstillinger"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "frontend"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "Send et forslag til forbedring av oversettelsen"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "Suksess"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "Ikke autorisert"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "Opprinnelig tekst"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "Foreslått oversettelse"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "Språk i originaltekst"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "Språk av foreslått oversettelse"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "tilbakemelding"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "Språkkode"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "Navn på menneskeleselig språk (på engelsk)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "Støttede målspråkkoder"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "Oversatt tekst(er)"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "Feilmelding"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "Grunn til å bremse"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "Oversatt fil url"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "Tillitsverdi"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "Inngangsgrense for tegn for dette språket (-1 indikerer ingen grense)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "Frontend oversettelse tidsavbrudd"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "Om API-nøkkeldatabasen er aktivert."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "Hvorvidt det kreves en API-nøkkel."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "Om det er mulig å sende inn forslag."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Støttet filformat"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "Hvorvidt innleveringen var vellykket"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "Kopier tekst"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "Kan ikke laste %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "Ukjend feil"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "Kopiert"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+"Takk for rettelsen. Legg merke til at forslaget ikke vil tre i kraft "
+"umiddelbart."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "Ingen språk tilgjengelig. Har du installert modellene riktig?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr "Skriv inn API-nøkkelen. Hvis du trenger en API-nøkkel, %(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "trykk på \"Get API-tasten\" lenke."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "kontakt serveroperatøren."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "Gratis og åpen kilde Machine Oversettelse API"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"Gratis og åpen kildemaskin Oversettelse API. Selvvært, offline kapabel og"
+" enkel å konfigurere. Kjør din egen API-server på bare noen minutter."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "oversettelse"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "api"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "API Docs"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "Få API Nøkkel"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "GitHub"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "Sett API Nøkkel"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Endre språk"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Rediger"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Slå av/på mørk/lysmodus"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "Utstyr"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "Oversettelse API"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "Oversett tekst"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "Oversett filer"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "Oversett fra"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "Bytt kilde- og målspråk"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "Oversett til"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "Tekst å oversette"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "Slett tekst"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "Foreslå oversettelse"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "Avbryt"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "Send"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "Støttede filformater:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "Fil"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "Fjern fil"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "Oversett"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "Last ned"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Forespørsel"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "Svar"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "Open Source Machine Oversettelse API"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "Selvvært. Offline Capable. Lett å konfigurere."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibreTranslate"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "Lisens:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr "Laget med %(heart)s av %(contributors)s og drevet av %(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s Bidragsytere"
+
diff --git a/libretranslate/locales/nb/meta.json b/libretranslate/locales/nb/meta.json
new file mode 100644
index 0000000..7dd39d7
--- /dev/null
+++ b/libretranslate/locales/nb/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Norwegian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/nl/LC_MESSAGES/messages.po b/libretranslate/locales/nl/LC_MESSAGES/messages.po
index 0faa873..50eed06 100644
--- a/libretranslate/locales/nl/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/nl/LC_MESSAGES/messages.po
@@ -8,80 +8,88 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-12-09 21:07+0000\n"
"Last-Translator: ArnoldCordewiner \n"
-"Language-Team: Dutch \n"
+"Language-Team: Dutch \n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.3-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Onjuist JSON formaat"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Automatisch Detecteren"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Niet bevoegd"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Overschrijding maximaal aantal verzoeken"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Ongeldige API sleutel"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Neem contact op met de server-beheerder om een API sleutel te krijgen"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Ga naar %(url)s om een API sleutel te krijgen"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Vertraging:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Ongeldig verzoek: %(name)s parameter ontbreekt"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Ongeldig verzoek: %(name)s parameter is geen getal"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Ongeldig verzoek: %(name)s parameter moet zijn %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Ongeldig verzoek: verzoek (%(size)s) overschrijdt tekstlimiet (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s wordt niet ondersteund"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formaat wordt niet ondersteund"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
@@ -90,28 +98,28 @@ msgstr ""
"%(tname)s (%(tcode)s) Is niet beschikbaar als een doeltaal van %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Kan tekst niet vertalen: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Bestanden vertalen is uitgeschakeld op deze server."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Ongeldig verzoek: leeg bestand"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Ongeldig verzoek: bestandsformaat wordt niet ondersteund"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Ongeldige bestandsnaam"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Suggesties zijn uitgeschakeld op deze server."
@@ -120,120 +128,176 @@ msgid "English"
msgstr "Engels"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albanezen"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabisch"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbeidzjaans"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengaals"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgaars"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalaans"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chinees"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Chinees (traditioneel)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tsjechisch"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Deens"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Nederlands"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Ests"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Fins"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Frans"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Duits"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Grieks"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebreeuws"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Hongaars"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesisch"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Iers"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiaans"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japans"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreaans"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Lets"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litouws"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Maleis"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Noors"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Perzisch"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Pools"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugees"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Roemeens"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Russisch"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovaaks"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Sloveens"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spaans"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Zweeds"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thais"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turks"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Oekraïens"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamees"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +315,7 @@ msgstr "vertaal"
msgid "Translate text from a language to another"
msgstr "Vertaal tekst van de ene taal naar een andere"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Vertaalde tekst"
@@ -306,197 +370,201 @@ msgstr ""
"HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Voorkeursaantal alternatieve vertalingen"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API sleutel"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Vertaal een bestand van de ene taal naar de andere"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Vertaald bestand"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Bestand om te vertalen"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Vernietig de taal van een enkele sms"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Detecties"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Detectie fout"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tekst om te detecteren"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Verwijder de frontend specifieke instellingen"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "frontend instellingen"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Doe een suggestie voor het verbeteren van een vertaling"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Succes"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Niet goedgekeurd"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Originele SMS"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Voorgestelde vertaling"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Taal van de oorspronkelijke tekst"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Taal van de voorgestelde vertaling"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Taalcode"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Menselijke taalnaam (in Engels)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Codes van ondersteunde doeltalen"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Vertaald bericht"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Error bericht"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Reason"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL van het vertaalde bestand"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Vertrouwelijke waarde"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Character input limiet voor deze taal"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Frontend vertaling timeout"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Of de API-sleutel database in staat is."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Of een API-sleutel nodig is."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Of het indienen van suggesties in staat is."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Ondersteunde bestandsformaten"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Of het nu succesvol was"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Begrepen"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Kan niet laden %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Onbekende fout"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Copi"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr ""
"Bedankt voor je correctie. Let op dat de suggestie niet meteen zal werken."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Geen talen beschikbaar. Heb je de modellen correct geïnstalleerd?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Voer je API sleutel in. Als je een API sleutel nodig hebt, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "druk op de \"Get API Key\" link."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "neem contact op met de server."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Vrij en open Source Machine Vertaling"
@@ -517,156 +585,155 @@ msgstr "vertaling"
msgid "api"
msgstr "♪"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Doc"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Haal API Sleutel"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API Sleutel"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Verander de taal"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Ed"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toggle dark/light modus"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Ingerukt"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Vertalings-API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Vertaal Tekst"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Vertaal Bestanden"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Vertaal uit"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Zwembron en doel talen"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Vertaal naar"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Text om te vertalen"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Verwijder bericht"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Voorgestelde vertaling"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Annuleren"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Versturen"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Ondersteunde bestandsformaten:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Bestand"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Verwijder bestand"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Vertaal"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Download"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Verzoek"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Antwoord"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source Machine Vertaling API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Zelf gehost. Offline Capable. Makkelijk te configureren."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licentie:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Deze publieke API moet worden gebruikt voor testen, persoonlijk of "
-"infrequent gebruik. Als je een applicatie in productie laat lopen, dan aub "
-"%(host_server)s of... %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "host je eigen server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "verkrijg een API sleutel"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"Gemaakt met %(heart)s door %(contributors)s enmet de kracht van %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Bijdragers"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamees"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Deze publieke API moet worden gebruikt voor testen, persoonlijk of "
+#~ "infrequent gebruik. Als je een applicatie in productie laat lopen, dan aub "
+#~ "%(host_server)s of... %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "host je eigen server"
+
+#~ msgid "get an API key"
+#~ msgstr "verkrijg een API sleutel"
diff --git a/libretranslate/locales/pl/LC_MESSAGES/messages.po b/libretranslate/locales/pl/LC_MESSAGES/messages.po
index 5b95466..efb28cf 100644
--- a/libretranslate/locales/pl/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/pl/LC_MESSAGES/messages.po
@@ -8,82 +8,89 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-01-30 16:01+0000\n"
"Last-Translator: r5jyhte \n"
-"Language-Team: Polish \n"
+"Language-Team: Polish \n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
-"|| n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 5.4-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Nieprawidłowy format JSON"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Wykryj automatycznie"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Brak uwierzytelnienia"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Przekroczono limit ilości zapytań"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Nieprawidłowy klucz API"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Proszę skontaktować się z operatorem serwera, aby uzyskać klucz API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Przejdź do %(url)s aby uzyskać klucz API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Spowolnienie:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Nieprawidłowe zapytanie: brakuje parametru %(name)s"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Nieprawidłowy wniosek: %(name)s parametr nie jest liczbą"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Nieprawidłowy wniosek: %(name)s parametr musi być < = %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Nieprawidłowe zapytanie: zapytanie (%(size)s) przekracza limit znaków "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s nie jest wspierany"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "format %(format)s nie jest wspierany"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
@@ -92,28 +99,28 @@ msgstr ""
"%(tname)s (%(tcode)s) nie jest dostępny jako język docelowy z języka "
"%(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nie można przetłumaczyć tekstu: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Translacje plików są wyłączone na serwerze."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Nieprawidłowe zapytanie: pusty plik"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Nieprawidłowe zapytanie: format pliku nie jest wspierany"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nieprawidłowa nazwa pliku"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Sugestie są wyłączone na serwerze."
@@ -122,120 +129,176 @@ msgid "English"
msgstr "Angielski"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albański"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabski"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbejdżański"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "BengalskiName"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bułgarski"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Kataloński"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chiński"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Chiński (tradycyjny)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Czeski"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Duński"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holenderski"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estoński"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Fiński"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francuski"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Niemiecki"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Grecki"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebrajski"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Węgierski"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonezyjski"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandzki"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Włoski"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japoński"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreański"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Łotwa"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litewski"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malajski"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norweski"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Perski"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polski"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugalski"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumuński"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Rosyjski"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Słowacki"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Słowenia"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Hiszpański"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Szwedzki"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Tajski"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turecki"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukrański"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Wietnamski"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -253,7 +316,7 @@ msgstr "tłumaczenie"
msgid "Translate text from a language to another"
msgstr "Tekst tłumaczenia z języka na inny język"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Przetłumaczony tekst"
@@ -308,196 +371,200 @@ msgstr ""
"* `html' – znaczniki HTML\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Preferowana liczba tłumaczeń alternatywnych"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Klucz API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Przetłumaczone pliki z języka do innego języka"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Przetłumaczony plik"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Plik do przetłumaczenia"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Wykryj język pojedynczego tekstu"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Wykryto"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Błąd detekcji"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tekst do detekcji"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Pobierz ustawienia frontendu"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "ustawienia frontendu"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Zgłoś sugestię do poprawy tłumaczenia"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Sukces"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Brak autoryzacji"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Oryginalny tekst"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Zgłoszone tłumaczenie"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Język tekstu oryginalnego"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Język sugerowanego tłumaczenia"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "informacja zwrotna"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Kod języka"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nazwa języka (w języku angielskim)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Wspierane kody językowe"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Przetłumaczone tekst(y)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Błąd"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Powód"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Przetłumaczony url pliku"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Poziom ufności"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Limit znaków dla tego języka (-1 oznacza brak limitu)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Przekroczono czas oczekiwania na tłumaczenie"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Czy baza kluczy API jest włączona."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Czy klucz API jest wymagany."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Umożliwia to, że sugestie mogą być poddane."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Plik multimedialny"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Współzałożycielstwo odniosło sukces"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Tekst Copy"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "ładunek %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Nieznany błąd"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Skopiowano"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr "Dzięki korekcji. Zasugerowanie nie będzie realizowane."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Żadne języki nie są dostępne. Czy można poprawnie stosować modele?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Wprowadź swój klucz API. Jeśli potrzebujesz klucza API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "prasa \"Get API Key\" (ang.)."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "skontaktuje się z operatorem serwera."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Free and Open Source Machine Translation API (ang.)"
@@ -518,155 +585,154 @@ msgstr "transkrypcja"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Docs"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API Key"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Ustaw klucz API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Język zmienny"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Edyta"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Przełącz tryb ciemny/jasny"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Dyskusja"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Tłumaczenie API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Przekład"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Translate File"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Przetłumaczenie"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Źródło i języki docelowe"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Przetłumaczyć"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Tekst tłumaczenia"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Tekst Delete"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Suggest"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Anuluj"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Send"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formaty plików:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "File"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Usuń plik"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Tłumacz"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Pobierz"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Zapytanie"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Odpowiedź"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source Machine Translation API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted (ang.). Offline Capable (ang.). Łatwe do realizacji."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslation"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licencja:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"To publiczne API powinno być wykorzystywane do testowania, osobistego lub "
-"rzadkiego użytku. Jeśli zamierzasz uruchomić aplikację w produkcji, proszę "
-"%(host_server)s lub %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "serwer"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "uzyskaj klucz API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "zrealizować %(heart)s by %(contributors)s zasilany %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Contributor"
#~ msgid "multipart/form-data"
#~ msgstr "wieloczęściowy/formowy"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Wietnamski"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "To publiczne API powinno być wykorzystywane do testowania, osobistego lub "
+#~ "rzadkiego użytku. Jeśli zamierzasz uruchomić aplikację w produkcji, proszę "
+#~ "%(host_server)s lub %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "serwer"
+
+#~ msgid "get an API key"
+#~ msgstr "uzyskaj klucz API"
diff --git a/libretranslate/locales/pt/LC_MESSAGES/messages.po b/libretranslate/locales/pt/LC_MESSAGES/messages.po
index 6052f53..abea168 100644
--- a/libretranslate/locales/pt/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/pt/LC_MESSAGES/messages.po
@@ -8,110 +8,118 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-07-22 04:09+0000\n"
"Last-Translator: Alisson Lauffer \n"
-"Language-Team: Portuguese \n"
"Language: pt\n"
+"Language-Team: Portuguese "
+"\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.7-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Formato JSON inválido"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Deteção automática"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Não autorizado"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Muitas violações do limite de requisições"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Chave de API inválida"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Entre em contacto com o operador do servidor para obter uma chave API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visite %(url)s para obter uma chave API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Devagar:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Pedido inválido: parâmetro %(name)s em falta"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr ""
-"Pedido inválido: pedido (%(size)s) excede o limite de texto (%(limit)s)"
+msgstr "Pedido inválido: pedido (%(size)s) excede o limite de texto (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s não é suportado"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formato não é suportado"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
-"(%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) não está disponível como uma linguagem alvo de "
"%(sname)s (%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Não é possível traduzir o texto: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "A tradução de arquivos está desativada neste servidor."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Pedido inválido: arquivo vazio"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Pedido inválido: formato de arquivo não suportado"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nome de arquivo inválido"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Sugestões estão desativadas neste servidor."
@@ -120,120 +128,176 @@ msgid "English"
msgstr "Inglês"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Árabe"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaijão"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chinês"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Checo"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dinamarquês"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holandês (Países Baixos)"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finlandês"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francês"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Alemão"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Grego"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebraico"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Indiano (Hindi)"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Húngaro"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonésio"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandês"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiano"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japonês"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Coreano"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persa"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polonês"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Português"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Russo"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Eslovaco"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Espanhol"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Sueco"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turco"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ucraniano"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamita"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -251,7 +315,7 @@ msgstr "traduzir"
msgid "Translate text from a language to another"
msgstr "Traduzir texto de um idioma para outro"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Texto traduzido"
@@ -306,210 +370,212 @@ msgstr ""
"* `html` - marcação HTML\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Chave API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Traduzir ficheiro de um idioma para outro"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Ficheiro traduzido"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Ficheiro a traduzir"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detectar a linguagem de um único texto"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Detecções"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Erro de deteção"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Texto para detectar"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Recupere configurações específicas do frontend"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "configurações de frontend"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Envie uma sugestão para melhorar uma tradução"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Sucesso"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Não autorizado"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Texto original"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Tradução sugerida"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Idioma do texto original"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Idioma da tradução sugerida"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Código de linguagem"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nome do idioma legível para humanos (em inglês)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Códigos de idioma alvo suportados"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Texto(s) traduzido(s)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Mensagem de erro"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Motivo da lentidão"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Url do arquivo traduzido"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valor de confiança"
-#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr ""
-"Limite de entrada de caracteres para esta língua (-1 indica sem limite)"
-
#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "Limite de entrada de caracteres para esta língua (-1 indica sem limite)"
+
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tempo de tradução do frontend"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Se o banco de dados de chave API está ativado."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Se uma chave API é necessária."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Se enviar sugestões está ativado."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formatos de ficheiros suportados"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Se a submissão foi bem sucedida"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Copiar texto"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Não foi possível carregar %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Erro desconhecido"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Copiado"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect right "
-"away."
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
msgstr ""
"Obrigado por sua correção. Note que a sugestão não terá efeito "
"imediatamente."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Não há idiomas disponíveis. Instalou os modelos corretamente?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Digite sua chave API. Se precisar de uma chave API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "pressione o link \"Obter Chave API\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "contacte o operador do servidor."
-#: libretranslate/templates/index.html:9
-#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "API de tradução em máquina gratuita e de código aberto"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline capable "
-"and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API de tradução em máquina gratuita e de código aberto. Auto-hospedável, "
-"off-line e fácil de configurar. Execute seu próprio servidor API em apenas "
-"alguns minutos."
+"off-line e fácil de configurar. Execute seu próprio servidor API em "
+"apenas alguns minutos."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -519,155 +585,159 @@ msgstr "tradução"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Documentação API"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Obter Chave API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Definir Chave API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Alterar idioma"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editar"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Alternar o modo escuro/claro"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Dispensar"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API de tradução"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Traduzir texto"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Traduzir ficheiros"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Traduzir de"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Inverter linguagens de origem e destino"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Traduzir para"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Texto para traduzir"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Excluir texto"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Sugerir tradução"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Cancelar"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Enviar"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formatos de ficheiros suportados:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Ficheiro"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Remover ficheiro"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Traduzir"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Descarregar"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Pedido"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Resposta"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API de tradução em máquina de código aberto"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Auto-Hospedável. Funciona Offline. Fácil de configurar."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licença:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Esta API pública deve ser usada para testes, uso pessoal ou infrequente. Se "
-"você vai executar uma aplicação em produção, por favor %(host_server)s ou "
-"%(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "hospede seu próprio servidor"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "obter uma chave API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Feito com %(heart)s por %(contributors)s e alimentado por %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Contribuintes %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamita"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Esta API pública deve ser usada "
+#~ "para testes, uso pessoal ou infrequente."
+#~ " Se você vai executar uma aplicação"
+#~ " em produção, por favor %(host_server)s "
+#~ "ou %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "hospede seu próprio servidor"
+
+#~ msgid "get an API key"
+#~ msgstr "obter uma chave API"
+
diff --git a/libretranslate/locales/ro/LC_MESSAGES/messages.po b/libretranslate/locales/ro/LC_MESSAGES/messages.po
index 0baf730..0be991e 100644
--- a/libretranslate/locales/ro/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ro/LC_MESSAGES/messages.po
@@ -1,4 +1,4 @@
-# Translations template for LibreTranslate.
+# Romanian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@@ -8,112 +8,119 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-01-06 17:52-0500\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-02-27 19:38+0000\n"
"Last-Translator: Simona Iacob \n"
-"Language-Team: Romanian \n"
+"Language-Team: Romanian \n"
"Language: ro\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
-"20)) ? 1 : 2;\n"
-"X-Generator: Weblate 4.16-dev\n"
-"Generated-By: Babel 2.11.0\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2;\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:60
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Format JSON invalid"
-#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Detectare automată"
-#: libretranslate/app.py:193
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Neautorizat"
-#: libretranslate/app.py:211
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Prea multe încălcări ale limitelor de solicitare"
-#: libretranslate/app.py:220
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Cheie API invalidă"
-#: libretranslate/app.py:227
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
"Vă rugăm să contactați operatorul serverului pentru a obține o cheie API"
-#: libretranslate/app.py:229
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Vizitați %(url)s pentru a obține o cheie API"
-#: libretranslate/app.py:269
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Încetinire:"
-#: libretranslate/app.py:467 libretranslate/app.py:469
-#: libretranslate/app.py:471 libretranslate/app.py:683
-#: libretranslate/app.py:685 libretranslate/app.py:687
-#: libretranslate/app.py:838 libretranslate/app.py:987
-#: libretranslate/app.py:989 libretranslate/app.py:991
-#: libretranslate/app.py:993
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Cerere invalidă: lipsește parametrul %(name)s"
-#: libretranslate/app.py:480 libretranslate/app.py:492
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Cerere nevalidă: %(name)s parametrul nu este un număr"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Cerere nevalidă: %(name)s parametrul trebuie să fie > %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Cerere invalidă: cererea (%(size)s) depășește limita de text (%(limit)s)"
-#: libretranslate/app.py:525 libretranslate/app.py:530
-#: libretranslate/app.py:700 libretranslate/app.py:705
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s nu este acceptat"
-#: libretranslate/app.py:536
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formatul nu este acceptat"
-#: libretranslate/app.py:544 libretranslate/app.py:568
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) nu este disponibilă ca limbă țintă din %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:589
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nu se poate traduce textul: %(text)s"
-#: libretranslate/app.py:676 libretranslate/app.py:730
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Traducerea fișierelor este dezactivată pe acest server."
-#: libretranslate/app.py:690
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Cerere invalidă: fișier gol"
-#: libretranslate/app.py:693
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Cerere invalidă: formatul de fișier nu este acceptat"
-#: libretranslate/app.py:738
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Nume de fișier invalid"
-#: libretranslate/app.py:979
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Sugestiile sunt dezactivate pe acest server."
@@ -122,120 +129,176 @@ msgid "English"
msgstr "Engleză"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albaneză"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabă"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaidjan"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgară"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalană"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chineză"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Chineză (tradițională)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Cehă"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Daneză"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Olandeză"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estoniană"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finlandeză"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Franceză"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Germană"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Greacă"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Ebraică"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindusă"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Maghiară"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indoneziană"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandezii"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiană"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japoneză"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Coreeană"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Letonia"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Lituaniană"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malaezia"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norvegiană"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persană"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Poloneză"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugheză"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Română"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Rusă"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovacă"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovacă"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spaniolă"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Suedeză"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thailandeză"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turcă"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ucraineană"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnameză"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -253,7 +316,7 @@ msgstr "traduceți"
msgid "Translate text from a language to another"
msgstr "Traduceți text dintr-o limbă în alta"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Text tradus"
@@ -308,210 +371,215 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Numărul preferat de traduceri alternative"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Cheia API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Traduceți fișierul dintr-o limbă în alta"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Fișier tradus"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fișier de tradus"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detectarea limbii unui singur text"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Detecții"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Eroare de detectare"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Text de detectat"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Preluarea setărilor specifice frontend-ului"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "setări frontend"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "partea din față"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Trimiteți o sugestie pentru a îmbunătăți o traducere"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Succes"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Nu este autorizat"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Textul original"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Traducere sugerată"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Limba în care a fost redactat textul original"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Limba de traducere propusă"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "feedback"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Cod de limbă"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Denumirea limbii lizibile de către om (în limba engleză)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Coduri de limbă țintă acceptate"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Text(e) tradus"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Mesaj de eroare"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Motivul încetinirii"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Traducere fișier url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valoarea de încredere"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Limita de introducere a caracterelor pentru această limbă (-1 indică faptul "
"că nu există limită)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Timeout de traducere frontală"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Dacă este activată baza de date cu chei API."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Dacă este necesară o cheie API."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Dacă este activată trimiterea de sugestii."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formatul fișierelor acceptate"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Dacă depunerea a avut succes"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:275
-#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Copiați textul"
-#: libretranslate/templates/app.js.template:72
-#: libretranslate/templates/app.js.template:78
-#: libretranslate/templates/app.js.template:83
-#: libretranslate/templates/app.js.template:262
-#: libretranslate/templates/app.js.template:332
-#: libretranslate/templates/app.js.template:402
-#: libretranslate/templates/app.js.template:447
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Nu se poate încărca %(url)s"
-#: libretranslate/templates/app.js.template:253
-#: libretranslate/templates/app.js.template:323
-#: libretranslate/templates/app.js.template:385
-#: libretranslate/templates/app.js.template:395
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Eroare necunoscută"
-#: libretranslate/templates/app.js.template:276
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Copiat"
-#: libretranslate/templates/app.js.template:320
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
"Vă mulțumim pentru corecție. Rețineți că sugestia nu va avea efect imediat."
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Nu există limbi disponibile. Ați instalat corect modelele?"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Introduceți cheia API. Dacă aveți nevoie de o cheie API, %(instructions)s"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "apăsați linkul \"Get API Key\"."
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "contactați operatorul serverului."
-#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25
-#: libretranslate/templates/index.html:333
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Gratuit și Open Source Machine Translation API"
#: libretranslate/templates/index.html:10
-#: libretranslate/templates/index.html:29
+#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API de traducere automată gratuită și cu sursă deschisă. Self-hosted, "
-"capabil de offline și ușor de configurat. Rulați propriul server API în doar "
-"câteva minute."
+"capabil de offline și ușor de configurat. Rulați propriul server API în doar"
+" câteva minute."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -521,142 +589,127 @@ msgstr "traducere"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:64
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Docs"
-#: libretranslate/templates/index.html:66
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Obțineți cheia API"
-#: libretranslate/templates/index.html:68
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:70
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Setați cheia API"
-#: libretranslate/templates/index.html:72
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Schimbați limba"
-#: libretranslate/templates/index.html:78
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editați"
-#: libretranslate/templates/index.html:154
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Comută modul întuneric/lumină"
+
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Respingeți"
-#: libretranslate/templates/index.html:168
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API de traducere"
-#: libretranslate/templates/index.html:172
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Traduceți textul"
-#: libretranslate/templates/index.html:176
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Traducere fișiere"
-#: libretranslate/templates/index.html:182
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Traducere din"
-#: libretranslate/templates/index.html:192
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Schimbați limbile sursă și țintă"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Traduceți în"
-#: libretranslate/templates/index.html:207
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Text de tradus"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Ștergeți textul"
-#: libretranslate/templates/index.html:223
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Sugerați o traducere"
-#: libretranslate/templates/index.html:227
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Anulează"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Trimiteți"
-#: libretranslate/templates/index.html:246
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Formate de fișiere acceptate:"
-#: libretranslate/templates/index.html:250
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Fișier"
-#: libretranslate/templates/index.html:265
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Eliminați fișierul"
-#: libretranslate/templates/index.html:272
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Traducere"
-#: libretranslate/templates/index.html:273
-#: libretranslate/templates/index.html:317
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Descărcați"
-#: libretranslate/templates/index.html:292
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Cerere"
-#: libretranslate/templates/index.html:297
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Răspuns"
-#: libretranslate/templates/index.html:312
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source Machine Translation API"
-#: libretranslate/templates/index.html:313
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted. Capabil offline. Ușor de instalat."
-#: libretranslate/templates/index.html:332
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:334
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licență:"
-#: libretranslate/templates/index.html:337
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Această API publică ar trebui să fie utilizată pentru testare, pentru uz "
-"personal sau pentru utilizări rare. Dacă aveți de gând să rulați o aplicație "
-"în producție, vă rugăm să folosiți %(host_server)s sau %(get_api_key)s."
-
-#: libretranslate/templates/index.html:337
-msgid "host your own server"
-msgstr "găzduiți propriul server"
-
-#: libretranslate/templates/index.html:337
-msgid "get an API key"
-msgstr "obțineți o cheie API"
-
#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
@@ -666,3 +719,21 @@ msgstr "Realizat cu %(heart)s de %(contributors)s și propulsat de %(engine)s"
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Colaboratori"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnameză"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Această API publică ar trebui să fie utilizată pentru testare, pentru uz "
+#~ "personal sau pentru utilizări rare. Dacă aveți de gând să rulați o aplicație"
+#~ " în producție, vă rugăm să folosiți %(host_server)s sau %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "găzduiți propriul server"
+
+#~ msgid "get an API key"
+#~ msgstr "obțineți o cheie API"
diff --git a/libretranslate/locales/ro/meta.json b/libretranslate/locales/ro/meta.json
new file mode 100644
index 0000000..c0dd6d6
--- /dev/null
+++ b/libretranslate/locales/ro/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Romanian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/ru/LC_MESSAGES/messages.po b/libretranslate/locales/ru/LC_MESSAGES/messages.po
index 7386318..7a914fe 100644
--- a/libretranslate/locales/ru/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ru/LC_MESSAGES/messages.po
@@ -8,108 +8,121 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-09-05 11:54+0000\n"
"Last-Translator: Blueberry \n"
-"Language-Team: Russian \n"
"Language: ru\n"
+"Language-Team: Russian "
+"\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Недействительный формат JSON"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "автоопределённого языка"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Несанкционированно"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Слишком много ограничений по запросу"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Недействительный ключ API"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Пожалуйста, свяжитесь с оператором сервера, чтобы получить ключ API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Посетите %(url)s для получения ключа API"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Притормозите:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Недействительный запрос: отсутствует параметр «%(name)s»"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Недействительный запрос: запрос (%(size)s) превышает ограничение текста "
"(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s не поддерживается"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "Формат %(format)s не поддерживается"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
-"(%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
msgstr ""
-"%(tname)s (%(tcode)s) не доступен как целевой язык от %(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) не доступен как целевой язык от %(sname)s "
+"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Не удаётся перевести текст: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Перевод файлов отключён на этом сервере."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Недействительный запрос: пустой файл"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Недействительный запрос: формат файла не поддерживается"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Неверное имя файла"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Предложения отключены на этом сервере."
@@ -118,120 +131,176 @@ msgid "English"
msgstr "английский"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "арабский"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "азербайджанский"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "китайский"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "чешский"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "датский"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "голландский"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "эсперанто"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "финский"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "французский"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "немецкий"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "греческий"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "иврит"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "хинди"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "венгерский"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "индонезийский"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "ирландский"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "итальянский"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "японский"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "корейский"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "персидский"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "польский"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "португальский"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "русский"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "словацкий"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "испанский"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "шведский"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "турецкий"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "украинский"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "вьетнамский"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -249,7 +318,7 @@ msgstr "перевод"
msgid "Translate text from a language to another"
msgstr "Перевести текст с языка на другой"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Перевод текста"
@@ -304,209 +373,213 @@ msgstr ""
" * `html` - HTML-разметка\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Ключ API"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Перевести файл с языка на другой"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "При переведённом файле"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Файл для перевода"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Обнаружение языка одного текста"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Обнаружения"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "При ошибке обнаружения"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Текст для обнаружения"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Получение конкретных настроек интерфейса (frontend)"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "При настройке интерфейса (frontend)"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Подать предложение для улучшения перевода"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "При отправке"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Если пользователь не авторизован"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Изначальный текст"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Предлагаемый перевод"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Язык изначального текста"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Язык предлагаемого перевода"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "обратная связь"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Языковой код"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Человеческое название языка (на английском языке)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Поддерживаемые языковые коды"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Перевод текста"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Сообщение ошибки"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Причина замедления"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL переведённого файла"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Уровень достоверности"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Предел вводимых символов для этого языка (-1 не указывает на предел)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Превышаемое время ожидания перевода интерфейса (frontend)"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "При включённой базе данных ключей API."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "При требовании ключа API."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "При включенном предложения перевода."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Поддерживаемый формат файлов"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "При отправке предложения"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Копировать текст"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Невозможно загрузить %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Неизвестная ошибка"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Скопировано"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect right "
-"away."
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
msgstr ""
"Спасибо за вашу поправку. Обратите внимание, что предложение не будет "
"действовать сразу."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Нет языков. Вы правильно установили модели?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Введите ваш ключ API. Если вам нужен ключ API — %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "нажмите на ссылку «Получить ключ API»."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "связаться с оператором сервера."
-#: libretranslate/templates/index.html:9
-#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Бесплатный и открытый источник машинного перевода с помощью API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline capable "
-"and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Бесплатный и открытый источник машинного перевода с помощью API. "
-"Самостоятельный хостинг, возможность работы в автономном режиме и простота "
-"настройки. Запустите свой собственный сервер API всего за несколько минут."
+"Самостоятельный хостинг, возможность работы в автономном режиме и "
+"простота настройки. Запустите свой собственный сервер API всего за "
+"несколько минут."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -516,158 +589,161 @@ msgstr "перевод"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Документация API"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Получить ключ API"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Установить ключ API"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Изменить язык"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Изменить"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toggle темно-легкий режим"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Закрыть"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Перевод с помощью API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Перевести текст"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Перевести файлы"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Перевести с"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Поменять местами исходный и целевой языки"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Перевести на"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Текст для перевода"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Удалить текст"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Предложить перевод"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Отмена"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Отправить"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Поддерживаемые форматы файлов:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Файл"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Удалить файл"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Перевести"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Скачать"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Запрос"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Ответ"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API машинного перевода с открытым исходным кодом"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr ""
"Самостоятельный хостинг. Возможность работы в автономном режиме. Легко "
"настраивается."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Лицензия:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Этот публичный API должен использоваться для тестирования, личного или "
-"нечастого использования. Если вы собираетесь запустить приложение в "
-"производстве, пожалуйста %(host_server)s или %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "разместите собственный сервер"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "получите ключ API"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr ""
-"Сделано с %(heart)s благодаря %(contributors)s и работает на %(engine)s"
+msgstr "Сделано с %(heart)s благодаря %(contributors)s и работает на %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "участникам, внёсшим вклад в разработку %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-данные"
+
+#~ msgid "Vietnamese"
+#~ msgstr "вьетнамский"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Этот публичный API должен использоваться "
+#~ "для тестирования, личного или нечастого "
+#~ "использования. Если вы собираетесь запустить"
+#~ " приложение в производстве, пожалуйста "
+#~ "%(host_server)s или %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "разместите собственный сервер"
+
+#~ msgid "get an API key"
+#~ msgstr "получите ключ API"
+
diff --git a/libretranslate/locales/sk/LC_MESSAGES/messages.po b/libretranslate/locales/sk/LC_MESSAGES/messages.po
index fb1175b..af3d9e0 100644
--- a/libretranslate/locales/sk/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/sk/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-08-10 21:59+0000\n"
"Last-Translator: Milan Šalka \n"
"Language-Team: Slovak \n"
@@ -17,69 +17,79 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Neplatný formát JSON"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Auto Detect"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Neoprávnené"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Príliš veľa porušení limitov žiadostí"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Neplatný API kľúč"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Prosím, kontaktujte operátora servera, aby ste dostali kľúč API"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Návšteva %(url)s získať API kľúč"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Spomaľovanie:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Neplatná požiadavka: chýba %(name)s parameter"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Neplatná požiadavka: %(name)s parameter nie je číslo"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Neplatná požiadavka: %(name)s parameter musí byť <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Neplatná požiadavka: žiadosť (%(size)s) presahuje limit textu (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s nie je podporovaný"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formát nie je podporovaný"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
@@ -88,28 +98,28 @@ msgstr ""
"%(tname)s ()%(tcode)s) nie je k dispozícii ako cieľový jazyk od %(sname)s "
"()%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nemožno preložiť text: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Preklady sú zakázané na tomto serveri."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Neplatná požiadavka: prázdny súbor"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Neplatná požiadavka: formát súboru nie je podporovaný"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Neplatné meno"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Návrhy sú zakázané na tomto serveri."
@@ -118,120 +128,176 @@ msgid "English"
msgstr "Angličtina"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albánsko"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabčina"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaština"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengálčina"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalánsky"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Čínske"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Čínština (tradičná)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Čeština"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Dánčina"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Dánština"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Fínština"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francúzština"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Nemčina"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Gréčtina"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebrejčina"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Všeobecný"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Madarčina"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonézske"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Írština"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Taliančina"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japonština"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Kórejština"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Zuzana"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Perzština"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polština"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugalština"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Ruština"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovenčina"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenčina"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Španiečina"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Švédština"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thajské"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turečtina"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukrajinčina"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamčina"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -249,7 +315,7 @@ msgstr "preložiť"
msgid "Translate text from a language to another"
msgstr "Preložiť text z jazyka do druhého"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Preklad"
@@ -304,195 +370,199 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Preferovaný počet alternatívnych prekladov"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API kľúč"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Preložiť súbor z jedného jazyka do iného"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Preložený súbor"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Súbor na preloženie"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detegovať jazyk jedného kusu textu"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Detekcie"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Chyba detekcie"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Text na detekciu"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Získať nastavenia špecifické pre rozhranie"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "Nastavenia rozhrania"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Poslať návrh na zlepšenie prekladu"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Úspech"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Chýba oprávnenie"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Pôvodný text"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Navrhnutý preklad"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Jazyk pôvodného textu"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Jazyk navrhovaného prekladu"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "spätná väzba"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Kód jazyka"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Ľudské meno jazyka (v angličtine)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Podporované cieľové jazykové kódy"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Preložený text(y)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Chybová správa"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Dôvod spomalenia"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Url preloženého súboru"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Miera istoty"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Limit vloženia znakov pre tento jazyk (-1 označuje žiadny limit)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Časový limit prekladu rozhrania"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Či je povolená databáza API kľúčov."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Či je potrebný API kľúč."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Či je povolené posielanie návrhov."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Podporovaný formát súborov"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Či bolo podanie úspešné"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopírovať text"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Nemožno načítať %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Neznáma chyba"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Skopírované"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr "Vďaka za vašu korekciu. Všimnite si, že návrh nebude mať vplyv hneď."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "K dispozícii nie sú žiadne jazyky. Nainštalovali ste modely správne?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Zadajte svoje API kľúč. Ak potrebujete kľúč API, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "stlačte odkaz „Get API Key“."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "kontaktujte operátora servera."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Zadarmo a Open Source strojový preklad API"
@@ -513,155 +583,154 @@ msgstr "preklad"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API dokumentácia"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Získať API kľúč"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Nastaviť API kľúč"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Zmeniť jazyk"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Upraviť"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toggle tmavý / svetelný režim"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Odmietnuť"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Prekladové API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Preložiť text"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Preložiť súbory"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Preložiť z"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Zameniť zdrojový a cieľový jazyk"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Preložiť do"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Text na preloženie"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Odstrániť text"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Navrhnúť preklad"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Zrušiť"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Odoslať"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Podporované formáty súborov:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Súbor"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Odstrániť súbor"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Preložiť"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Stiahnuť"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Žiadosť"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Odpoveď"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Open Source strojového prekladu API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Samostatne. Offline Capable. Jednoduché nastavenie."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licencia:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Toto verejné API by malo byť použité pre testovanie, osobné alebo zriedkavé "
-"použitie. Ak sa chystáte spustiť aplikáciu vo výrobe, prosím %(host_server)s"
-" alebo %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "hostiť svoj vlastný server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "získať API kľúč"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Vyrobené s %(heart)s za pomoci %(contributors)s a poháňaný %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Prispievatelia"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/formátové údaje"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamčina"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Toto verejné API by malo byť použité pre testovanie, osobné alebo zriedkavé "
+#~ "použitie. Ak sa chystáte spustiť aplikáciu vo výrobe, prosím %(host_server)s"
+#~ " alebo %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "hostiť svoj vlastný server"
+
+#~ msgid "get an API key"
+#~ msgstr "získať API kľúč"
diff --git a/libretranslate/locales/sl/LC_MESSAGES/messages.po b/libretranslate/locales/sl/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..6f51a40
--- /dev/null
+++ b/libretranslate/locales/sl/LC_MESSAGES/messages.po
@@ -0,0 +1,714 @@
+# Slovenian translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: sl\n"
+"Language-Team: sl \n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 "
+"|| n%100==4 ? 2 : 3);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "Neveljavna oblika JSON"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "Samodejno zaznaj"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "Nepooblaščen"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "Preveč zahtevkov omejuje kršitve"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "Neveljaven ključ API"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "Prosimo kontaktirajte operaterja strežnika, da dobite API ključ"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "Obisk %(url)s dobiti API ključ"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "Upočasni:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "Neveljaven zahtevek: manjka %(name)s parameter"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Neveljavna zahteva: %(name)s parameter ni številka"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Neveljavna zahteva: %(name)s Parameter mora biti pomanjkljiv %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr "Neveljavna zahteva: zahteva (%(size)s) presega mejo besedila (%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s ni podprto"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s oblika ni podprta"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr "%(tname)s (%(tcode)s) ni na voljo kot ciljni jezik %(sname)s (%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "Ni moč prevesti besedila: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "Prevajanje datotek je onemogočeno na tem strežniku."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "Neveljavna zahteva: prazna datoteka"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "Neveljaven zahtevek: oblika datoteke ni podprta"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "Neveljavno ime datoteke"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "Predlogi so onemogočeni na tem strežniku."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "Angleščina"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "AlbanskoName"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "Arabščina"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Azerbajdžan"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengalska"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bolgarščina"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalonščina"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "Kitajska"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kitajska (tradicionalna)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "Češka"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "Danski"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "Nizozemska"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "Esperanto"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estonščina"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "Finska"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "Francoski"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "Nemščina"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "Grščina"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "Hebrejsko"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "Hindi"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "Madžarska"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "Indonezijski"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "Irska"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "Italijanska"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "Japonka"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "Korejska"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latvijščina"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litva"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norveška"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Perzijščina"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Poljska"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portugalščina"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Romunska"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Ruščina"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Slovaščina"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenski"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Španščina"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Švedska"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Tajska"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Turška"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "Ukranian"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "Pridobi seznam podprtih jezikov"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "Seznam jezikov"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "prevedi"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "Prevedi besedilo iz jezika v jezik"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "Prevedeno besedilo"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "Neveljavna zahteva"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "Napaka pri prevajanju"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "Počasi"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "Prepovedano"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "Pozdravljen svet!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "Besedilo za prevajanje"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "Koda izvornega jezika"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "Oznaka ciljnega jezika"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "besedilo"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"Oblika izvornega besedila:\n"
+"* `besedilo' - navadno besedilo\n"
+"* `html' - pribitek HTML\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Prednostna številka alternativnih prevodov"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "Ključ API"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "Prevedi datoteko iz jezika v drug jezik"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "Prevedena datoteka"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "Datoteka za prevajanje"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "Zaznaj jezik enega besedila"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "Odkrivanje"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "Napaka pri odkrivanju"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "Besedilo za odkrivanje"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "Pridobi posebne nastavitve za prednji konec"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "nastavitve prednjega okna"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "začelje"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "Predloži predlog za izboljšanje prevoda"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "Uspeh"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "Ni dovoljeno"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "Originalno besedilo"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "Predlagani prevod"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "Jezik izvirnega besedila"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "Jezik predlaganega prevajanja"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "povratne informacije"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "Jezikovna koda"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "Ime jezika, ki ga je mogoče brati (v angleščini)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "Podprte ciljne jezikovne kode"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "Prevedena besedila"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "Sporočilo o napaki"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "Razlog za upočasnitev"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "Prevedena datoteka url"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "Vrednost zaupanja"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "Omejitev vnosa znakov za ta jezik (-1 označuje brez omejitve)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "Zakasnitev prevajanja v začetku"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "Ali je omogočena zbirka ključev API."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "Ali je potreben ključ API."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "Ali je predlog omogočen."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Oblika podprtih datotek"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "Ali je bila vloga uspešna"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "Kopiraj besedilo"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "Ni moč naložiti %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "Neznana napaka"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "Kopirano"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr "Hvala za popravek. Upoštevajte, da predlog ne bo takoj začel veljati."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "Jeziki niso na voljo. Ste pravilno namestili modele?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr "Vtipkaj svoj API ključ. Če potrebujete API ključ, %(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "pritisnite » Get API Key«."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "kontaktirajte operaterja strežnika."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "Brezplačno in odprtokodno strojno prevajanje API"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"Brezplačno in odprtokodno strojno prevajanje API. Samo-gostitelj, brez "
+"povezave sposoben in enostaven za namestitev. Poženite svoj API strežnik "
+"v samo nekaj minutah."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "prevod"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "api"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "API Docs"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "Dobi API Ključ"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "GitHub"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "Nastavi API Ključ"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Spremeni jezik"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Uredi"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Preklopi temen/lahek način"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "Prosto"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "Prevod API"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "Prevedi besedilo"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "Prevedi datoteke"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "Prevedi iz"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "Zamenjaj izvorne in ciljne jezike"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "Prevedi v"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "Besedilo za prevajanje"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "Zbriši besedilo"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "Predlog za prevod"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "Prekliči"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "Pošlji"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "Podprti formati datotek:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "Datoteka"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "Odstrani datoteko"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "Prevedi"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "Prenesi"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Zahtevek"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "Odziv"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "API za prevajanje odprtokodnega stroja"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "Samosvoj. Nesposobna. Enostavna nastavitev."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibrePrevajanje"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "Licenca:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr "Narejeno z %(heart)s z %(contributors)s in napajajo %(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s Prispevki"
+
diff --git a/libretranslate/locales/sl/meta.json b/libretranslate/locales/sl/meta.json
new file mode 100644
index 0000000..9e71525
--- /dev/null
+++ b/libretranslate/locales/sl/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Slovenian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/sq/LC_MESSAGES/messages.po b/libretranslate/locales/sq/LC_MESSAGES/messages.po
index bcd00a9..ca9dcc1 100644
--- a/libretranslate/locales/sq/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/sq/LC_MESSAGES/messages.po
@@ -1,4 +1,4 @@
-# Translations template for LibreTranslate.
+# Albanian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-01-06 17:52-0500\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@@ -16,278 +16,347 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.11.0\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:60
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
-msgstr ""
+msgstr "Format i pavlefshëm JSON"
-#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
-msgstr ""
+msgstr "Auto"
-#: libretranslate/app.py:193
+#: libretranslate/app.py:273
msgid "Unauthorized"
-msgstr ""
+msgstr "I paautorizuar"
-#: libretranslate/app.py:211
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
-msgstr ""
+msgstr "Tepër kërkojnë shkelje të kufizimeve"
-#: libretranslate/app.py:220
+#: libretranslate/app.py:298
msgid "Invalid API key"
-msgstr ""
+msgstr "Kyç i pavlefshëm"
-#: libretranslate/app.py:227
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
-msgstr ""
+msgstr "Vihu në kontakt me operatorin e serverit për të marrë një kyç API"
-#: libretranslate/app.py:229
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr ""
+msgstr "Vizitim %(url)s merr a"
-#: libretranslate/app.py:269
+#: libretranslate/app.py:366
msgid "Slowdown:"
-msgstr ""
+msgstr "Ngadalë:"
-#: libretranslate/app.py:467 libretranslate/app.py:469
-#: libretranslate/app.py:471 libretranslate/app.py:683
-#: libretranslate/app.py:685 libretranslate/app.py:687
-#: libretranslate/app.py:838 libretranslate/app.py:987
-#: libretranslate/app.py:989 libretranslate/app.py:991
-#: libretranslate/app.py:993
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr ""
+msgstr "Kërkesë e pavlefshme: mungon %(name)s Parametër"
-#: libretranslate/app.py:480 libretranslate/app.py:492
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Kërkesë e pavlefshme: %(name)s nuk a"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Kërkesë e pavlefshme: %(name)s Parametri duhet të jetë <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
+"Kërkesë e pavlefshme: %s%(size)s) tejkaloi kufirin e tekstit (%(limit)s)"
-#: libretranslate/app.py:525 libretranslate/app.py:530
-#: libretranslate/app.py:700 libretranslate/app.py:705
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
-msgstr ""
+msgstr "%(lang)s nuk suportohet"
-#: libretranslate/app.py:536
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
-msgstr ""
+msgstr "%(format)s Format i pasuportuar"
-#: libretranslate/app.py:544 libretranslate/app.py:568
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
-msgstr ""
+"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
+"(%(scode)s)"
+msgstr "%(tname)s (%(tcode)snuk është a %(sname)s (%(scode)s)"
-#: libretranslate/app.py:589
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr ""
+msgstr "I pamundur përkthimi i tekstit: %s %(text)s"
-#: libretranslate/app.py:676 libretranslate/app.py:730
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
-msgstr ""
+msgstr "File në server j."
-#: libretranslate/app.py:690
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
-msgstr ""
+msgstr "Kërkesë e pavlefshme: file bosh"
-#: libretranslate/app.py:693
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
-msgstr ""
+msgstr "Kërkesë e pavlefshme: Format i pasuportuar file"
-#: libretranslate/app.py:738
+#: libretranslate/app.py:857
msgid "Invalid filename"
-msgstr ""
+msgstr "Emri"
-#: libretranslate/app.py:979
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
-msgstr ""
+msgstr "Propozimet në këtë server janë të çaktivizuar."
#: libretranslate/locales/.langs.py:1
msgid "English"
-msgstr ""
+msgstr "Anglisht"
#: libretranslate/locales/.langs.py:2
-msgid "Arabic"
-msgstr ""
+msgid "Albanian"
+msgstr "Shqip"
#: libretranslate/locales/.langs.py:3
-msgid "Azerbaijani"
-msgstr ""
+msgid "Arabic"
+msgstr "Arabisht"
#: libretranslate/locales/.langs.py:4
-msgid "Chinese"
-msgstr ""
+msgid "Azerbaijani"
+msgstr "Azerbaixhani"
#: libretranslate/locales/.langs.py:5
-msgid "Czech"
-msgstr ""
+msgid "Bengali"
+msgstr "Bengali"
#: libretranslate/locales/.langs.py:6
-msgid "Danish"
-msgstr ""
+msgid "Bulgarian"
+msgstr "Bullgarisht"
#: libretranslate/locales/.langs.py:7
-msgid "Dutch"
-msgstr ""
+msgid "Catalan"
+msgstr "Katalane"
#: libretranslate/locales/.langs.py:8
-msgid "Esperanto"
-msgstr ""
+msgid "Chinese"
+msgstr "Kineze"
#: libretranslate/locales/.langs.py:9
-msgid "Finnish"
-msgstr ""
+msgid "Chinese (traditional)"
+msgstr "Kineze"
#: libretranslate/locales/.langs.py:10
-msgid "French"
-msgstr ""
+msgid "Czech"
+msgstr "Çekisht"
#: libretranslate/locales/.langs.py:11
-msgid "German"
-msgstr ""
+msgid "Danish"
+msgstr "Danisht"
#: libretranslate/locales/.langs.py:12
-msgid "Greek"
-msgstr ""
+msgid "Dutch"
+msgstr "Hollandeze"
#: libretranslate/locales/.langs.py:13
-msgid "Hebrew"
-msgstr ""
+msgid "Esperanto"
+msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
-msgid "Hindi"
-msgstr ""
+msgid "Estonian"
+msgstr "Estonisht"
#: libretranslate/locales/.langs.py:15
-msgid "Hungarian"
-msgstr ""
+msgid "Finnish"
+msgstr "Finlandeze"
#: libretranslate/locales/.langs.py:16
-msgid "Indonesian"
-msgstr ""
+msgid "French"
+msgstr "Frengjisht"
#: libretranslate/locales/.langs.py:17
-msgid "Irish"
-msgstr ""
+msgid "German"
+msgstr "Gjermanisht"
#: libretranslate/locales/.langs.py:18
-msgid "Italian"
-msgstr ""
+msgid "Greek"
+msgstr "Greqisht"
#: libretranslate/locales/.langs.py:19
-msgid "Japanese"
-msgstr ""
+msgid "Hebrew"
+msgstr "Hebraike"
#: libretranslate/locales/.langs.py:20
-msgid "Korean"
-msgstr ""
+msgid "Hindi"
+msgstr "Hindi"
#: libretranslate/locales/.langs.py:21
-msgid "Persian"
-msgstr ""
+msgid "Hungarian"
+msgstr "Hungarisht"
#: libretranslate/locales/.langs.py:22
-msgid "Polish"
-msgstr ""
+msgid "Indonesian"
+msgstr "Indoneziane"
#: libretranslate/locales/.langs.py:23
-msgid "Portuguese"
-msgstr ""
+msgid "Irish"
+msgstr "Irlandeze"
#: libretranslate/locales/.langs.py:24
-msgid "Russian"
-msgstr ""
+msgid "Italian"
+msgstr "Italisht"
#: libretranslate/locales/.langs.py:25
-msgid "Slovak"
-msgstr ""
+msgid "Japanese"
+msgstr "Japonisht"
#: libretranslate/locales/.langs.py:26
-msgid "Spanish"
-msgstr ""
+msgid "Korean"
+msgstr "Koreane"
#: libretranslate/locales/.langs.py:27
-msgid "Swedish"
-msgstr ""
+msgid "Latvian"
+msgstr "Letonisht"
#: libretranslate/locales/.langs.py:28
-msgid "Turkish"
-msgstr ""
+msgid "Lithuanian"
+msgstr "Lituaniane"
#: libretranslate/locales/.langs.py:29
-msgid "Ukranian"
-msgstr ""
+msgid "Malay"
+msgstr "Malay"
#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr ""
+msgid "Norwegian"
+msgstr "Norvegjeze"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Persiane"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Polonisht"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portugalisht"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumanisht"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Rusisht"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Sllovak"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Sllovene"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Spanjisht"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Suedisht"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Tailandeze"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Turqisht"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "Ukraneze"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr ""
+msgstr "Duke marrë listën e gjuhëve të suportuara"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr ""
+msgstr "Lista e gjuhëve"
#: libretranslate/locales/.swag.py:3
msgid "translate"
-msgstr ""
+msgstr "për"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr ""
+msgstr "Përkthe tekstin nga një gjuhë në një tjetër"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
-msgstr ""
+msgstr "Teksti i përkthyer"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
-msgstr ""
+msgstr "Kërkesë e pavlefshme"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
-msgstr ""
+msgstr "Gabim në përkthimin"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
-msgstr ""
+msgstr "Ngadalë"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr ""
+msgstr "Ndaluar"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
-msgstr ""
+msgstr "Përshëndetje botë!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
-msgstr ""
+msgstr "Teksti"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr ""
+msgstr "Kodi i gjuhës së buruesit"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
-msgstr ""
+msgstr "Objektivi kodi"
#: libretranslate/locales/.swag.py:14
msgid "text"
-msgstr ""
+msgstr "tekst"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr ""
+msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -295,353 +364,369 @@ msgid ""
" * `text` - Plain text\n"
" * `html` - HTML markup\n"
msgstr ""
+"Formati i tekstit burim:\n"
+"* tekst i thjeshtë\n"
+"* Hhtml-Spanj HTML\n"
#: libretranslate/locales/.swag.py:17
-msgid "API key"
-msgstr ""
+msgid "Preferred number of alternative translations"
+msgstr "Numri i preferuar i përkthimeve alternative"
#: libretranslate/locales/.swag.py:18
-msgid "Translate file from a language to another"
-msgstr ""
+msgid "API key"
+msgstr "Pulsanti API"
#: libretranslate/locales/.swag.py:19
-msgid "Translated file"
-msgstr ""
+msgid "Translate file from a language to another"
+msgstr "Përkthe skedarët nga një gjuhë tek tjetra"
#: libretranslate/locales/.swag.py:20
-msgid "File to translate"
-msgstr ""
+msgid "Translated file"
+msgstr "Përkther file"
#: libretranslate/locales/.swag.py:21
-msgid "Detect the language of a single text"
-msgstr ""
+msgid "File to translate"
+msgstr "File nga"
#: libretranslate/locales/.swag.py:22
-msgid "Detections"
-msgstr ""
+msgid "Detect the language of a single text"
+msgstr "Dekto gjuhën e një teksti të vetëm"
#: libretranslate/locales/.swag.py:23
-msgid "Detection error"
-msgstr ""
+msgid "Detections"
+msgstr "Deteksione"
#: libretranslate/locales/.swag.py:24
-msgid "Text to detect"
-msgstr ""
+msgid "Detection error"
+msgstr "Gabim në shmangje"
#: libretranslate/locales/.swag.py:25
-msgid "Retrieve frontend specific settings"
-msgstr ""
+msgid "Text to detect"
+msgstr "Teksti që duhet zbuluar"
#: libretranslate/locales/.swag.py:26
-msgid "frontend settings"
-msgstr ""
+msgid "Retrieve frontend specific settings"
+msgstr "Duke marrë rregullimet e prezgjedhura"
#: libretranslate/locales/.swag.py:27
-msgid "frontend"
-msgstr ""
+msgid "frontend settings"
+msgstr "parametrat"
#: libretranslate/locales/.swag.py:28
-msgid "Submit a suggestion to improve a translation"
-msgstr ""
+msgid "frontend"
+msgstr "frontend"
#: libretranslate/locales/.swag.py:29
-msgid "Success"
-msgstr ""
+msgid "Submit a suggestion to improve a translation"
+msgstr "A"
#: libretranslate/locales/.swag.py:30
-msgid "Not authorized"
-msgstr ""
+msgid "Success"
+msgstr "Me sukses"
#: libretranslate/locales/.swag.py:31
-msgid "Original text"
-msgstr ""
+msgid "Not authorized"
+msgstr "Nuk është i autorizuar"
#: libretranslate/locales/.swag.py:32
-msgid "Suggested translation"
-msgstr ""
+msgid "Original text"
+msgstr "Tekst origjinal"
#: libretranslate/locales/.swag.py:33
-msgid "Language of original text"
-msgstr ""
+msgid "Suggested translation"
+msgstr "Sugjerim për përkthimin"
#: libretranslate/locales/.swag.py:34
-msgid "Language of suggested translation"
-msgstr ""
+msgid "Language of original text"
+msgstr "Gjuha e tekstit origjinal"
#: libretranslate/locales/.swag.py:35
-msgid "feedback"
-msgstr ""
+msgid "Language of suggested translation"
+msgstr "Gjuha e përkthimit të sugjeruar"
#: libretranslate/locales/.swag.py:36
-msgid "Language code"
-msgstr ""
+msgid "feedback"
+msgstr "release"
#: libretranslate/locales/.swag.py:37
-msgid "Human-readable language name (in English)"
-msgstr ""
+msgid "Language code"
+msgstr "Kodi i gjuhës"
#: libretranslate/locales/.swag.py:38
-msgid "Supported target language codes"
-msgstr ""
+msgid "Human-readable language name (in English)"
+msgstr "Emri i gjuhës së lexueshme (në anglisht)"
#: libretranslate/locales/.swag.py:39
-msgid "Translated text(s)"
-msgstr ""
+msgid "Supported target language codes"
+msgstr "Kodi i gjuhës së synuar"
#: libretranslate/locales/.swag.py:40
-msgid "Error message"
-msgstr ""
+msgid "Translated text(s)"
+msgstr "Përkthehet teksti"
#: libretranslate/locales/.swag.py:41
-msgid "Reason for slow down"
-msgstr ""
+msgid "Error message"
+msgstr "Gabim"
#: libretranslate/locales/.swag.py:42
-msgid "Translated file url"
-msgstr ""
+msgid "Reason for slow down"
+msgstr "Arsye për të ngadalësuar"
#: libretranslate/locales/.swag.py:43
-msgid "Confidence value"
-msgstr ""
+msgid "Translated file url"
+msgstr "Përktheu file url"
#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr ""
+msgid "Confidence value"
+msgstr "Vlera e besimit"
#: libretranslate/locales/.swag.py:45
-msgid "Frontend translation timeout"
-msgstr ""
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "Për nuk"
#: libretranslate/locales/.swag.py:46
-msgid "Whether the API key database is enabled."
-msgstr ""
+msgid "Frontend translation timeout"
+msgstr "Ndërfaqe"
#: libretranslate/locales/.swag.py:47
-msgid "Whether an API key is required."
-msgstr ""
+msgid "Whether the API key database is enabled."
+msgstr "Tregon nëse është aktivizuar databaza e kyçit API."
#: libretranslate/locales/.swag.py:48
-msgid "Whether submitting suggestions is enabled."
-msgstr ""
+msgid "Whether an API key is required."
+msgstr "Nëse nevoitet një kyç API."
#: libretranslate/locales/.swag.py:49
-msgid "Supported files format"
-msgstr ""
+msgid "Whether submitting suggestions is enabled."
+msgstr "Nëse është aktivuar paraqitja e sugjerimeve."
#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Format i suportuar files"
+
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
-msgstr ""
+msgstr "Nëse nënshtrimi ishte i suksesshëm"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:275
-#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
-msgstr ""
+msgstr "Kopjo tekstin"
-#: libretranslate/templates/app.js.template:72
-#: libretranslate/templates/app.js.template:78
-#: libretranslate/templates/app.js.template:83
-#: libretranslate/templates/app.js.template:262
-#: libretranslate/templates/app.js.template:332
-#: libretranslate/templates/app.js.template:402
-#: libretranslate/templates/app.js.template:447
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
-msgstr ""
+msgstr "I pamundur ngarkimi %(url)s"
-#: libretranslate/templates/app.js.template:253
-#: libretranslate/templates/app.js.template:323
-#: libretranslate/templates/app.js.template:385
-#: libretranslate/templates/app.js.template:395
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
-msgstr ""
+msgstr "Gabim i panjohur"
-#: libretranslate/templates/app.js.template:276
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
-msgstr ""
+msgstr "Kopjuar"
-#: libretranslate/templates/app.js.template:320
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
+"Thanks for your correction. Note the suggestion will not take effect right "
+"away."
msgstr ""
+"Faleminderit për korrigjimin. Vër re se sugjerimi nuk do të ndikojë "
+"menjëherë."
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
-msgstr ""
+msgstr "Asnjë gjuhë në dispozicion. I instalove mirë modelet?"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
+"Lloji në çelësin tuaj API. Nëse ju duhet një çelës API, %(instructions)s"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
-msgstr ""
+msgstr "shtyp lidhjen \"Merr API.\"."
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
-msgstr ""
+msgstr "kontaktoni operatorin e serverit."
-#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25
-#: libretranslate/templates/index.html:333
+#: libretranslate/templates/index.html:9
+#: libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
-msgstr ""
+msgstr "Translation falas dhe i hapur i makinave"
#: libretranslate/templates/index.html:10
-#: libretranslate/templates/index.html:29
+#: libretranslate/templates/index.html:31
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline capable "
+"and easy to setup. Run your own API server in just a few minutes."
msgstr ""
+"Translation i Makinave Free dhe Open. Vetë-pritur, jashtë linje i aftë dhe i"
+" lehtë për t'u krijuar. Zbatoni serverin tuaj API për pak minuta."
#: libretranslate/templates/index.html:11
msgid "translation"
-msgstr ""
+msgstr "përkthimi"
#: libretranslate/templates/index.html:11
msgid "api"
-msgstr ""
+msgstr "api"
-#: libretranslate/templates/index.html:64
+#: libretranslate/templates/index.html:67
msgid "API Docs"
-msgstr ""
+msgstr "API Docs"
-#: libretranslate/templates/index.html:66
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
-msgstr ""
+msgstr "Merr API Kenia"
-#: libretranslate/templates/index.html:68
+#: libretranslate/templates/index.html:71
msgid "GitHub"
-msgstr ""
+msgstr "GitHub"
-#: libretranslate/templates/index.html:70
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
-msgstr ""
+msgstr "Vendose Kenia"
-#: libretranslate/templates/index.html:72
+#: libretranslate/templates/index.html:75
msgid "Change language"
-msgstr ""
+msgstr "Ndrysho gjuhën"
-#: libretranslate/templates/index.html:78
+#: libretranslate/templates/index.html:81
msgid "Edit"
-msgstr ""
+msgstr "Ndrysho"
-#: libretranslate/templates/index.html:154
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Kavo"
+
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
-msgstr ""
+msgstr "Të këqijat"
-#: libretranslate/templates/index.html:168
+#: libretranslate/templates/index.html:173
msgid "Translation API"
-msgstr ""
+msgstr "Përkthimi"
-#: libretranslate/templates/index.html:172
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
-msgstr ""
+msgstr "Përkthe tekstin"
-#: libretranslate/templates/index.html:176
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
-msgstr ""
+msgstr "Përkthe files"
-#: libretranslate/templates/index.html:182
+#: libretranslate/templates/index.html:187
msgid "Translate from"
-msgstr ""
+msgstr "Përkthe nga"
-#: libretranslate/templates/index.html:192
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
-msgstr ""
+msgstr "Dhe"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:200
msgid "Translate into"
-msgstr ""
+msgstr "Përkthe në"
-#: libretranslate/templates/index.html:207
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
-msgstr ""
+msgstr "Teksti që duhet përkthyer"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:215
msgid "Delete text"
-msgstr ""
+msgstr "Fshi tekstin"
-#: libretranslate/templates/index.html:223
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
-msgstr ""
+msgstr "Sugjerim për përkthimin"
-#: libretranslate/templates/index.html:227
+#: libretranslate/templates/index.html:232
msgid "Cancel"
-msgstr ""
+msgstr "Anullo"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:235
msgid "Send"
-msgstr ""
+msgstr "Dërgo"
-#: libretranslate/templates/index.html:246
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
-msgstr ""
+msgstr "Formatet e suportuar të file:"
-#: libretranslate/templates/index.html:250
+#: libretranslate/templates/index.html:255
msgid "File"
-msgstr ""
+msgstr "File"
-#: libretranslate/templates/index.html:265
+#: libretranslate/templates/index.html:270
msgid "Remove file"
-msgstr ""
+msgstr "Hiq file"
-#: libretranslate/templates/index.html:272
+#: libretranslate/templates/index.html:277
msgid "Translate"
-msgstr ""
+msgstr "Përkthe"
-#: libretranslate/templates/index.html:273
-#: libretranslate/templates/index.html:317
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
-msgstr ""
-
-#: libretranslate/templates/index.html:292
-msgid "Request"
-msgstr ""
+msgstr "Shkarkimi"
#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Kërkesë"
+
+#: libretranslate/templates/index.html:302
msgid "Response"
-msgstr ""
+msgstr "Përgjigje"
-#: libretranslate/templates/index.html:312
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
-msgstr ""
+msgstr "Përkthimi i Makinës Burimit"
-#: libretranslate/templates/index.html:313
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr ""
+msgstr "E vetmuar. Jashtë Kapit. E lehtë për t'u rregulluar."
-#: libretranslate/templates/index.html:332
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
-msgstr ""
+msgstr "Libre Translate"
-#: libretranslate/templates/index.html:334
+#: libretranslate/templates/index.html:339
msgid "License:"
-msgstr ""
-
-#: libretranslate/templates/index.html:337
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-
-#: libretranslate/templates/index.html:337
-msgid "host your own server"
-msgstr ""
-
-#: libretranslate/templates/index.html:337
-msgid "get an API key"
-msgstr ""
+msgstr "Liçenca:"
#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr ""
+msgstr "E bërë me %(heart)s nga %(contributors)s Dhe fuqizuar nga %(engine)s"
#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr ""
+msgstr "%(libretranslate)s Ndihmuan"
+
+#~ msgid "Vietnamese"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+
+#~ msgid "host your own server"
+#~ msgstr ""
+
+#~ msgid "get an API key"
+#~ msgstr ""
diff --git a/libretranslate/locales/sq/meta.json b/libretranslate/locales/sq/meta.json
new file mode 100644
index 0000000..b3cfa9f
--- /dev/null
+++ b/libretranslate/locales/sq/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Albanian",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/sv/LC_MESSAGES/messages.po b/libretranslate/locales/sv/LC_MESSAGES/messages.po
index 19816de..81e8c99 100644
--- a/libretranslate/locales/sv/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/sv/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-03-01 08:36+0000\n"
"Last-Translator: tygyh \n"
"Language-Team: Swedish \n"
@@ -17,68 +17,94 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Invalid JSON-format"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Identifiera Automatiskt"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Obehörig"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "För många förfrågningar begränsar överträdelser"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Invalid API nyckel"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Kontakta serveroperatören för att få en API-nyckel"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Besök %(url)s för att få en API-nyckel"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Nedsaktning:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Ogiltig begäran: parametern %(name)s saknas"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+"Ogiltig begäran: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 parameter är inte ett tal %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Ogiltig begäran: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+"0 parameter måste vara ≤ 1 1 %(name)s %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Ogiltig begäran: begäran %(size)s överstiger textgränsen (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s stöds inte"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s-formatet stöds inte"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
@@ -87,28 +113,28 @@ msgstr ""
"%(tname)s (%(tcode)s) är inte tillgängligt som målspråk från %(sname)s "
"(%(scode)s)"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Kan inte översätta text: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Filöversättning är inaktiverad på denna server."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Ogiltig begäran: tom fil"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Ogiltig begäran: filformat som inte stöds"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Invalid filnamn"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Förslag är inaktiverade på denna server."
@@ -117,120 +143,176 @@ msgid "English"
msgstr "Engelska"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albanska"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabiska"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbajdzjan"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgariska"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalanska"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Kinesiska"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Kinesiska (traditionell)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tjeckien"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Danska"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holländska"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estland"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finska finska"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Franska franska"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Tyska tyska"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Grekiska"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebreiska"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Ungerska"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesiska"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irländska"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italienska Italien"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japansk"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreanska"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Lettland"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litauen"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norska"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persiska"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polska"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugisiska"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Rumänien"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Ryska"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovakiska"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenska"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Spanska spanska"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Svenska"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thailändska"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Turkiska"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukraniska"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamesiska"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -248,7 +330,7 @@ msgstr "översättning"
msgid "Translate text from a language to another"
msgstr "Översätt text från ett språk till ett annat"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Översatt text"
@@ -303,170 +385,174 @@ msgstr ""
"\"html\" - HTML-märkning\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Föredraget antal alternativa översättningar"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API-nyckel"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Översätt fil från ett språk till ett annat"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Översatt fil"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fil att översätta"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Upptäck språket i en enda text"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Detektioner"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Detektering fel"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Text att upptäcka"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Hämta frontend specifika inställningar"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "frontend inställningar"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Skicka in ett förslag för att förbättra en översättning"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Framgång"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Inte auktoriserad"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Originaltext"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Föreslagen översättning"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Språk av originaltext"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Språk av föreslagen översättning"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "återkoppling"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Språkkod"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Mänskligt läsbart språknamn (på engelska)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Stödda målspråkskoder"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Översatt text(er)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Felmeddelande"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Reason för slow down"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Översatt fil url"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Förtroendevärde"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Teckengräns för detta språk (-1 anger ingen gräns)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Frontend översättning timeout"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Oavsett om API-nyckeldatabasen är aktiverad."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Oavsett om en API-nyckel krävs."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Oavsett om det är möjligt att lämna in förslag."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Stödda filer format"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Oavsett om inlämning var framgångsrik"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Kopiera text"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Kan inte ladda %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Okänd fel"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopierad"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
@@ -474,27 +560,27 @@ msgstr ""
"Tack för din korrigering. Observera att förslaget inte kommer att träda i "
"kraft direkt."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Inga språk tillgängliga. Har du installerat modellerna korrekt?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Skriv in din API-nyckel. Om du behöver en API-nyckel, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "tryck på länken \"Get API Key\"."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "kontakta serveroperatören."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Gratis och öppen källkod Maskinöversättning API"
@@ -515,155 +601,154 @@ msgstr "översättning"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Docs"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Få API Nyckeln"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Ställ in API Nyckeln"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Ändra språk"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Redigera"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Växla mörkt/ljusläge"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Avfärda"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Översättning API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Översätt text"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Översätt filer"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Översättning från"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Swap källa och målspråk"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Översätt till"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Text att översätta"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Ta bort text"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Föreslå översättning"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Avbokning"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Skicka"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Stödda filformat:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Fil"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Ta bort filen"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Översättning"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Ladda ner"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Begäran"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Svar"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API för maskinöversättning med öppen källkod"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Självhäftad. Offline kapabel. Lätt att ställa in."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Licens:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Detta offentliga API bör användas för testning, personlig eller sällsynt "
-"användning. Om du ska köra en ansökan i produktionen, vänligen "
-"%(host_server)s eller %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "värd din egen server"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "få en API-nyckel"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Tillverkad med %(heart)s av %(contributors)s och drivs av %(engine)s"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Bidragsgivare"
#~ msgid "multipart/form-data"
#~ msgstr "multipart/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamesiska"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Detta offentliga API bör användas för testning, personlig eller sällsynt "
+#~ "användning. Om du ska köra en ansökan i produktionen, vänligen "
+#~ "%(host_server)s eller %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "värd din egen server"
+
+#~ msgid "get an API key"
+#~ msgstr "få en API-nyckel"
diff --git a/libretranslate/locales/th/LC_MESSAGES/messages.po b/libretranslate/locales/th/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..76d2039
--- /dev/null
+++ b/libretranslate/locales/th/LC_MESSAGES/messages.po
@@ -0,0 +1,714 @@
+# Thai translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: th\n"
+"Language-Team: th \n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "รูปแบบ Json ไม่ถูกต้อง"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "ตรวจสอบอัตโนมัติ"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "ไม่มีชื่อ"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "มีการละเมิดข้อห้ามมากเกินไป"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "กุญแจ API ใช้ไม่ได้หรือไม่ถูกต้อง"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "โปรดติดต่อโอเปอเรเตอร์เพื่อรับกุญแจ API"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "ไปยัง %(url)s เพื่อเอากุญแจ API"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "ชะลอ:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "การร้องขอไม่ถูกต้อง: ไม่พบ %(name)s พารามิเตอร์"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "การร้องขอไม่ถูกต้อง: %(name)s พารามิเตอร์ไม่ใช่ตัวเลข"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "การร้องขอไม่ถูกต้อง: %(name)s พารามิเตอร์ต้องเป็น <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+"การร้องขอไม่ถูกต้อง: การร้องขอ "
+"(help)%(size)sเกินขีดจํากัดของข้อความ%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s ไม่รองรับ"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s ยังไม่รองรับการฟอร์แมต"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr "%(tname)s (%(tcode)sไม่มีภาษาเป้าหมาย %(sname)s (%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "ไม่สามารถแปลข้อความ: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "การแปลของแฟ้มถูกปิดการใช้งานบนเซิร์ฟเวอร์นี้."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "การร้องขอไม่ถูกต้อง:"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "การร้องขอไม่ถูกต้อง: ยังไม่รองรับรูปแบบของแฟ้ม"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "ชื่อแฟ้มไม่ถูกต้อง"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "คําแนะนําถูกปิดการใช้งานบนเซิร์ฟเวอร์นี้."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "อังกฤษ"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "อัลเบเนีย"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "อารบิก"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "อาร์เซอร์ไบจัน"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "เบงกาลี"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "บัลแกเรีย"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "ภาษาคาตาลันName"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "จีน"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "จีน (ประเพณี)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "ภาษาเชคName"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "เดนมาร์ก"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "ภาษาดัตช์Name"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "เอสเปรันโต"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "ภาษาเอสโตเนียName"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "ฟินแลนด์"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "ฝรั่งเศส"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "เยอรมัน"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "กรีก"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "ฮีบรู"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "ภาษาฮินดูName"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "ฮังการี"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "อินโดนีเซีย"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "ไอริชName"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "อิตาลี"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "ญี่ปุ่น"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "เกาหลี"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "ภาษาลัตเวียName"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "ภาษาลิทัวเนียName"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "ภาษามาเลย์Name"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "นอร์เวย์"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "เปอร์เซีย"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "โปแลนด์"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "โปรตุเกส"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "โรมาเนียName"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "รัสเซีย"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "ภาษาสโลวาเกียName"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "ภาษาสโลเนียName"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "สเปน"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "สวีเดน"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "ป้ายกํากับ"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "ภาษาไทยName"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "ภาษาตุรกีName"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "ภาษาอุรากวัยName"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "อูร์ดู"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "รับรายการภาษาที่รองรับ"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "รายการภาษา"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "แปล"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "แปลข้อความจากภาษาเป็นภาษาอื่น"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "ข้อความที่แปลแล้ว"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "การร้องขอไม่ถูกต้อง"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "การแปลผิดพลาด"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "ช้าลงหน่อย"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "แบน"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "สวัสดีโลก!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "ข้อความที่จะแปล"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "รหัสภาษาต้นฉบับ"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "รหัสภาษาเป้าหมาย"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "ข้อความ"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"รูปแบบข้อความต้นฉบับ:\n"
+"– ข้อความธรรมดา\n"
+"*เพลง*\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "จํานวนที่ควรใช้ในการแปลภาษา"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "กุญแจ API"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "แปลแฟ้มจากภาษาเป็นภาษาอื่น"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "แฟ้มที่แปลแล้ว"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "แฟ้มที่จะแปล"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "ตรวจจับภาษาของข้อความเดียว"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "ตรวจสอบ"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "การตรวจสอบผิดพลาด"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "ข้อความที่จะตรวจสอบ"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "รับค่าค่าหน้าจอที่กําหนด"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "ตั้งค่าด้านหน้า"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "ด้านหน้า"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "จง ส่ง ข้อ เสนอ แนะ เพื่อ ปรับ ปรุง การ แปล"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "สําเร็จ"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "ไม่ได้รับอนุญาต"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "ข้อความต้นฉบับ"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "แปลที่แนะนํา"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "ภาษาของต้นฉบับ"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "ภาษา ที่ มี การ แนะ ให้ แปล"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "การตอบกลับ"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "รหัสภาษา"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "ชื่อภาษาที่อ่านได้ของมนุษย์ (in อังกฤษ)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "รองรับรหัสภาษาเป้าหมาย"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "แปลข้อความ"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "ข้อความผิดพลาด"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "เหตุผลสําหรับช้าลง"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "แปลแฟ้ม url"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "ค่าความละเอียด"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "จํากัดการป้อนอักขระสําหรับภาษานี้ (1 แสดงถึงไม่มีข้อจํากัด)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "เวลาแปลฟร้อนท์"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "จะเปิดใช้งานฐานข้อมูลกุญแจ API หรือไม่."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "ต้องการกุญแจ API หรือไม่."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "เปิดใช้การแนะนําการส่งข้อมูลหรือไม่."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "รูปแบบแฟ้มที่รองรับ"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "การส่งล้มเหลวหรือไม่"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "คัดลอกข้อความ"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "ไม่สามารถเรียกใช้ได้ %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "เกิดข้อผิดพลาดไม่ทราบสาเหตุ"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "คัดลอก"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr "ขอบคุณที่แก้ไข โปรด สังเกต ข้อ เสนอ แนะ นี้ จะ ไม่ มี ผล กระทบ ทันที."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "ไม่มีภาษา คุณติดตั้งแบบจําลองอย่างถูกต้องหรือไม่?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr "พิมพ์กุญแจ API ของคุณ ถ้าคุณต้องการกุญแจ API %(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "กดลิงก์ \"get API คีย์\"."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "ติดต่อเครื่องแม่ข่าย."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "API ฟรีและโอเพนซอร์ส"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"API ฟรีและโอเพนซอร์ส ระบบควบคุมตัวเอง เชื่อมต่อได้ง่าย "
+"เรียกใช้เซิร์ฟเวอร์ API ของคุณเองในไม่กี่นาที."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "แปล"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "api"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "หมอ API"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "รับ API คีย์"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "กิตฮับ"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "ตั้งค่า API คีย์"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "เปลี่ยนภาษา"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "แก้ไข"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "สลับโหมดมืด/ แสง"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "ไม่สนใจ"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "แปล API"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "แปลข้อความ"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "แปลแฟ้ม"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "แปลจาก"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "เปลี่ยนแหล่งและภาษาเป้าหมาย"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "แปลเป็น"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "ข้อความที่จะแปล"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "ลบข้อความ"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "แนะนําการแปลภาษา"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "ยกเลิก"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "ส่ง"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "รูปแบบแฟ้มที่รองรับ:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "แฟ้ม"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "ลบแฟ้ม"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "แปล"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "ดาวน์โหลด"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "ต้องการ"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "ปฏิกิริยา"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "API สําหรับแปลภาษาแบบโอเพนซอร์ส"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "หลงตัวเอง ไม่มีสัญญาณ ง่ายต่อการจัดฉาก."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibreTranslate"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "สัญญาอนุญาตสิทธิ์:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr "สร้างด้วย %(heart)s โดย %(contributors)s และพลังงานโดย %(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s ผู้มีส่วนร่วม"
+
diff --git a/libretranslate/locales/th/meta.json b/libretranslate/locales/th/meta.json
new file mode 100644
index 0000000..4ae2cc0
--- /dev/null
+++ b/libretranslate/locales/th/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Thai",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/tl/LC_MESSAGES/messages.po b/libretranslate/locales/tl/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..6c81a01
--- /dev/null
+++ b/libretranslate/locales/tl/LC_MESSAGES/messages.po
@@ -0,0 +1,725 @@
+# Filipino (Philippines) translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: fil_PH\n"
+"Language-Team: fil_PH \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "Hindi tanggap na anyo ng JSON"
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "Di - Nakikitang Awto"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "Hindi awtorisado"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "Napakarami ang humihiling ng limitasyon sa mga paglabag"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "Hindi tanggap na key ng API"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr ""
+"Pakisuyong makipag - ugnayan sa opereytor ng server upang makakuha ng "
+"susi ng API"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "Pagdalaw %(url)s upang makakuha ng susing API"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "Mabagal:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "Imbalidong pangalan ng programa: bigo %(name)s parameter"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Imbalidong kahilingan: %(name)s Hindi numero ang parameter"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "Imbalidong kahilingan: %(name)s Ang parameter ay dapat <= %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr ""
+"Imbalidong pangalan ng programa: %s%(size)s) lumampas sa itinakdang "
+"teksto (%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s hindi suportado ang mga symbolic link"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s Hindi suportado ang mga symbolic link"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+"%(tname)s (%(tcode)s) ay hindi magagamit bilang isang wikang puntirya "
+"mula sa %(sname)s (%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "Hindi maisalin ang teksto: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "Ang salin ng talaksan ay may kapansanan sa server na ito."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "Imbalidong pangalan ng programa: bigong talaksan"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "Hindi suportado ang mga symbolic link"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "Hindi tanggap na hostname"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "Ang mga mungkahi ay may kapansanan sa serverg ito."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Albanian"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "Arabe"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "Azerbaijani"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgariano"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Catalan"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "Tsino"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Tsino (tradisyonal)"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "Czech"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "Danes"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "Olandes"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "Esperanto"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estoniano"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "Wikang Pinlandes"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "Pranses"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "Aleman"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "Griego"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "Hebreo"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "Hindi"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "Hungariano"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "Indonesian"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "Irlandes"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "Italyano"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "Hapones"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "Koreano"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Latviano"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Ang Lithuanian"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norwego"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "Persiano"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "Polako"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "Portuges"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Romaniano"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "Ruso"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "Slovak"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenia"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "Kastila"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "Suweko"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Thai"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "Turko"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "Ukranian"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "Retrieve list ng suportadong mga wika"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "Talaan ng mga wika"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "salin"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "Isinalin ang teksto mula sa isang wika tungo sa ibang wika"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "Isinalin na teksto"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "Imbalidong pangalan ng programa"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "Pagkakamali sa pagsasalin"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "Magmabagal"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "Ipinagbawal"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "Maganda talaga!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "Mga teksto(mga) na isasalin"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "Pinagmulan ng kodigo ng wika"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "Target language code"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "teksto"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "html"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"Pinagmulan ng teksto:\n"
+"* `text` - Plain\n"
+"* `html` - HTML markup\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Mas piniling bilang ng alternatibong mga salin"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "Susi ng API"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "Isinalin ang talaksan mula sa isang wika tungo sa ibang wika"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "Isinalin na talaksan"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "Sawi sa pagsasalin"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "Alamin ang wika ng isang teksto"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "Mga Pag - aalinlangan"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "Maling diyagnosis"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "Mag - text para malaman ito"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "Ibalik ang espesipikong mga setting"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "harapan"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "harap"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "Magpasakop sa mungkahi na pagbutihin ang isang salin"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "Tagumpay"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "Hindi awtorisado"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "Orihinal na teksto"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "Iminumungkahing salin"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "Wika ng orihinal na teksto"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "Wika ng iminungkahing salin"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "pagtanggap"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "Kodigo ng wika"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "Pangalan ng tao-basang wika (sa Ingles)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "Suportadong target na mga kodigo sa wika"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "Isinalin na teksto(s)"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "Error sa pagbasa ng mensahe"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "Dahilan para magmabagal"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "Isinalin ang talaksang url"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "Halaga ng pagtitiwala"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr ""
+"Ang character input limit para sa wikang ito (-1 ay nagpapakita ng walang"
+" hangganan)"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "Harapang pagsasalin"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "Kung baga magagawa ang API key database."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "Kung kailangan ang susing API."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "Kung baga ang pagkakapit ng mga mungkahi ay magagawa."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "Suportadong format ng mga file"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "Kung baga ang pagpapasakop ay matagumpay"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "Kopya ng teksto"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "Hindi maikarga %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "Hindi kilalang error"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "Pinagkunan"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr ""
+"Salamat sa iyong pagtutuwid. Pansinin na ang mungkahi ay hindi kaagad - "
+"agad matutupad."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "Walang makukuhang wika. Tama ba ang pagkakakabit mo sa mga modelo?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr "Uri sa iyong API Key. Kung kailangan mo ng API key, %(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "pindutin ang \"Get API Key\" link."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "makipag - ugnayan sa opereytor ng server."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "API at Open Source Machine Translation"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"Malaya at Open Source Machine Translation API. Sarili-hosted, offline may"
+" kakayahan at madaling mag-setup. Itakbo ang iyong sariling API server sa"
+" loob lamang ng ilang minuto."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "salin"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "api"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "API Docs"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "Kumuha ng API Susi"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "GitHub"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "Magtakda ng API Susi"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "Nagbabago ng wika"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "Baguhin"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "Togle dark/light mode"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "Mga Mali"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "API sa Pagsasalin"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "Saling Teksto"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "Mga Larawan ng Pagsasalin"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "Isinalin mula sa"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "Swap source at target languages"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "Isinalin sa"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "Tekstong isasalin"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "Itapon ang teksto"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "Mungkahi"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "Huwag ituloy"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "Pagpadala"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "Suportadong mga format ng talaksan:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "Sawi ang paglikha ng talaksan"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "Alisin ang talaksan"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "Pagsasalin"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "Ibaba"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "Kahilingan"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "Pagtugon"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "Open Source Machine Translation API"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "Sarili-Hosted. May Kapansanan. Madaling Itakda."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "LibreTranslate"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "Lisensiya:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+"Ginawa kasama ng %(heart)s sunod %(contributors)s at pinapatakbo ng "
+"%(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s Tagapag - abuloy"
+
diff --git a/libretranslate/locales/tl/meta.json b/libretranslate/locales/tl/meta.json
new file mode 100644
index 0000000..aea7939
--- /dev/null
+++ b/libretranslate/locales/tl/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Tagalog",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/tr/LC_MESSAGES/messages.po b/libretranslate/locales/tr/LC_MESSAGES/messages.po
index f4c8b6f..4e699a9 100644
--- a/libretranslate/locales/tr/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/tr/LC_MESSAGES/messages.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-02-27 19:38+0000\n"
"Last-Translator: Oğuz Ersen \n"
"Language-Team: Turkish \n"
@@ -17,69 +17,81 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Geçersiz JSON biçimi"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Otomatik Algıla"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Yetkisiz İşlem"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Çok fazla istekte bulunarak, istek sınırı aşıldı"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Geçersiz API anahtarı"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr ""
"Bir API anahtarı almak için lütfen sunucu yöneticisiyle iletişime geçin"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "API anahtarı almak için %(url)s adresini ziyaret edin"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Yavaşlama:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Geçersiz istek: eksik %(name)s parametresi"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "Invalid isteği: 0 0 0 0 parametre bir sayı değildir %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+"Invalid isteği: 0 0 0 0 parametre <= 1 1 1 %(name)s "
+"%(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Geçersiz istek: istek (%(size)s) metin sınırını aşıyor (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s desteklenmiyor"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s biçimi desteklenmiyor"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
@@ -88,28 +100,28 @@ msgstr ""
"%(tname)s (%(tcode)s), %(sname)s (%(scode)s) için hedef dil olarak "
"kullanılamıyor"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Metin çevrilemiyor: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Dosya çevirisi bu sunucuda devre dışı bırakıldı."
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Geçersiz istek: boş dosya"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Geçersiz istek: dosya biçimi desteklenmiyor"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Geçersiz dosya adı"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Öneriler bu sunucuda devre dışı bırakıldı."
@@ -118,120 +130,176 @@ msgid "English"
msgstr "İngilizce"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "Arnavutlar"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arapça"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerice"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "Bengali"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "Bulgar"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "Katalan"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Çince"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "Çin (geleneksel)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Çekçe"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Danca"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Felemenkçe"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "Estonya"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Fince"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Fransızca"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Almanca"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Yunanca"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "İbranice"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hintçe"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Macarca"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Endonezce"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "İrlandaca"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "İtalyanca"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japonca"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Korece"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "Letonya"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "Litvanyalı"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "Malay"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "Norveç"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Farsça"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Lehçe"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portekizce"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "Romanya"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Rusça"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Slovakça"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "Slovenyan"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "İspanyolca"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "İsveççe"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "Tagalog"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "Tayland"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Türkçe"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Ukraynaca"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamca"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -249,7 +317,7 @@ msgstr "çevir"
msgid "Translate text from a language to another"
msgstr "Bir dilden diğerine metin çevirin"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Çevirilen metin"
@@ -304,198 +372,202 @@ msgstr ""
" * `html` - HTML işaretlemesi\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "Tercih edilen sayıda alternatif çeviri"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API anahtarı"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Bir dilden diğerine dosya çevirin"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Çevrilen dosya"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Çevrilecek dosya"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Tek bir metnin dilini algıla"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Algılamalar"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Algılama hatası"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Algılanacak metin"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Ön uca özel ayarları al"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "ön uç ayarları"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "ön uç"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Bir çeviriyi iyileştirmek için öneri gönderin"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Başarılı"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Yetkili değil"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Orijinal metin"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Önerilen çeviri"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Orijinal metnin dili"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Önerilen çevirinin dili"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "geri bildirim"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Dil kodu"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Okunabilir dil adı (İngilizce olarak)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Desteklenen hedef dil kodları"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Çevirilen metin"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Hata mesajı"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Yavaşlama nedeni"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Çevrilen dosya URL'si"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Güven değeri"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Bu dil için karakter giriş sınırı (-1, sınır olmadığını gösterir)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Ön uç çeviri zaman aşımı"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "API anahtarı veri tabanının etkin olup olmadığı."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Bir API anahtarının gerekli olup olmadığı."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Öneri göndermenin etkin olup olmadığı."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Desteklenen dosya biçimi"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Gönderimin başarılı olup olmadığı"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Metni kopyala"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s yüklenemiyor"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Bilinmeyen hata"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopyalandı"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr ""
"Düzeltmeniz için teşekkürler. Önerinin hemen etkili olmayacağını unutmayın."
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Kullanılabilir dil yok. Modelleri doğru şekilde yüklediniz mi?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"API anahtarınızı yazın. Bir API anahtarına ihtiyacınız varsa, "
"%(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "\"API Anahtarı Al\" bağlantısına tıklayın."
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "sunucu yöneticisiyle iletişime geçin."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Özgür ve Açık Kaynaklı Makine Çevirisi API'si"
@@ -517,158 +589,157 @@ msgstr "çeviri"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Belgeleri"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "API Anahtarı Al"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API Anahtarını Ayarla"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Dili değiştir"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Düzenle"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Geçiş karanlık / hafif mod"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Kapat"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "Çeviri API'si"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Metin Çevir"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Dosya Çevir"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Şundan çevir"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Kaynak ve hedef dilleri değiştir"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Şuna çevir"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Çevrilecek metin"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Metni sil"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Çeviri öner"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "İptal"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Gönder"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Desteklenen dosya biçimleri:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Dosya"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Dosyayı kaldır"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Çevir"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "İndir"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "İstek"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Yanıt"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "Açık Kaynaklı Makine Çevirisi API'si"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr ""
"Kendiniz Barındırabileceğiniz. Çevrim Dışı Çalışabilen. Kurulumu Kolay."
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Lisans:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Bu herkese açık API test, kişisel veya ara sıra kullanım için "
-"kullanılmalıdır. Üretimde bir uygulama çalıştıracaksanız, lütfen "
-"%(host_server)s veya %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "kendi sunucunuzu barındırın"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "bir API anahtarı alın"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"%(contributors)s tarafından %(heart)s ile yapıldı ve %(engine)s tarafından "
"desteklenmektedir"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Katkıda Bulunanlar"
#~ msgid "multipart/form-data"
#~ msgstr "çoklu bölüm/form-data"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamca"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "Bu herkese açık API test, kişisel veya ara sıra kullanım için "
+#~ "kullanılmalıdır. Üretimde bir uygulama çalıştıracaksanız, lütfen "
+#~ "%(host_server)s veya %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "kendi sunucunuzu barındırın"
+
+#~ msgid "get an API key"
+#~ msgstr "bir API anahtarı alın"
diff --git a/libretranslate/locales/uk/LC_MESSAGES/messages.po b/libretranslate/locales/uk/LC_MESSAGES/messages.po
index c262655..08b3d36 100644
--- a/libretranslate/locales/uk/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/uk/LC_MESSAGES/messages.po
@@ -8,121 +8,119 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2023-11-26 07:04+0000\n"
"Last-Translator: Fqwe1 \n"
-"Language-Team: Ukrainian \n"
"Language: uk\n"
+"Language-Team: Ukrainian "
+"\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 5.2.1-rc\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79 libretranslate/app.py:60
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "Неправильний формат JSON"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
-#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "Автовизначення"
-#: libretranslate/app.py:232 libretranslate/app.py:193
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "Неавторизовано"
-#: libretranslate/app.py:250 libretranslate/app.py:211
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "Перевищено ліміт запитів"
-#: libretranslate/app.py:257 libretranslate/app.py:220
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "Неправильний API ключ"
-#: libretranslate/app.py:276 libretranslate/app.py:227
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "Зв'яжіться з оператором сервера, щоб отримати API ключ"
-#: libretranslate/app.py:278 libretranslate/app.py:229
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Відвідайте %(url)s, щоб отримати API ключ"
-#: libretranslate/app.py:318 libretranslate/app.py:269
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "Сповільнення:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059 libretranslate/app.py:467
-#: libretranslate/app.py:469 libretranslate/app.py:471
-#: libretranslate/app.py:683 libretranslate/app.py:685
-#: libretranslate/app.py:687 libretranslate/app.py:838
-#: libretranslate/app.py:987 libretranslate/app.py:989
-#: libretranslate/app.py:991 libretranslate/app.py:993
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Неправильний запит: відсутній параметр %(name)s"
-#: libretranslate/app.py:544 libretranslate/app.py:553
-#: libretranslate/app.py:480 libretranslate/app.py:492
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr ""
-"Неправильний запит: запит (%(size)s) перевищує ліміт тексту (%(limit)s)"
+msgstr "Неправильний запит: запит (%(size)s) перевищує ліміт тексту (%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
-#: libretranslate/app.py:525 libretranslate/app.py:530
-#: libretranslate/app.py:700 libretranslate/app.py:705
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s не підтримується"
-#: libretranslate/app.py:594 libretranslate/app.py:536
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "Формат %(format)s не підтримується"
-#: libretranslate/app.py:602 libretranslate/app.py:626
-#: libretranslate/app.py:544 libretranslate/app.py:568
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
-"(%(scode)s)"
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
msgstr ""
-"%(tname)s (%(tcode)s) не доступна, як мова перекладу з %(sname)s (%(scode)s)"
+"%(tname)s (%(tcode)s) не доступна, як мова перекладу з %(sname)s "
+"(%(scode)s)"
-#: libretranslate/app.py:647 libretranslate/app.py:589
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Не вдалося перекласти текст: %(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
-#: libretranslate/app.py:676 libretranslate/app.py:730
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "Переклад файлів на цьому сервері вимкнено."
-#: libretranslate/app.py:748 libretranslate/app.py:690
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "Неправильний запит: порожній файл"
-#: libretranslate/app.py:751 libretranslate/app.py:693
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "Неправильний запит: формат файлу не підтримується"
-#: libretranslate/app.py:796 libretranslate/app.py:738
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "Неправильна назва файлу"
-#: libretranslate/app.py:1038 libretranslate/app.py:979
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "Пропозиції на цьому сервері вимкнено."
@@ -131,120 +129,176 @@ msgid "English"
msgstr "Англійська"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Арабська"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Азербайджанська"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Китайська"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Чеська"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Данська"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Нідерландська"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Есперанто"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Фінська"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Французька"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Німецька"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Грецька"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Іврит"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Хінді"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Угорська"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Індонезійська"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Ірландська"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Італійська"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Японська"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Корейська"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Перська"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Польська"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Португальська"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "Російська"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "Словацька"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "Іспанська"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "Шведська"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "Турецька"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "Українська"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "В'єтнамська"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -262,8 +316,7 @@ msgstr "переклад"
msgid "Translate text from a language to another"
msgstr "Перекласти текст з однієї мови на іншу"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
-#: libretranslate/templates/index.html:219
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "Перекладений текст"
@@ -318,232 +371,214 @@ msgstr ""
" * `html` - HTML розмітка\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API ключ"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Перекласти файл з однієї мови на іншу"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Перекладений файл"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Файл для перекладу"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Визначити мову окремого тексту"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Визначення"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Помилка визначення"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Текст для визначення"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Отримати специфічні налаштування інтерфейсу"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "налаштування інтерфейсу"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "інтерфейс"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Подати пропозицію щодо покращення перекладу"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Успіх"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Не авторизовано"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Оригінальний текст"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Запропонований переклад"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Мова оригінального тексту"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Мова запропонованого перекладу"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "зворотний зв'язок"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Код мови"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Назва мовою, зрозумілою для людини (англійською)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Підтримувані коди мов перекладу"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Перекладений(і) текст(и)"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Повідомлення про помилку"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Причина сповільнення"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL-адреса перекладеного файлу"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Рівень достовірності"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Обмеження на введення символів для цієї мови (-1 означає відсутність "
"обмежень)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Перевищено час очікування перекладу інтерфейсу"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Чи увімкнено базу даних API ключів."
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Чи потрібен API ключ."
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Чи увімкнено подання пропозицій."
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Підтримувані формати файлів"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Чи була заявка успішною"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
-#: libretranslate/templates/app.js.template:275
-#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "Скопіювати текст"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
-#: libretranslate/templates/app.js.template:72
-#: libretranslate/templates/app.js.template:78
-#: libretranslate/templates/app.js.template:83
-#: libretranslate/templates/app.js.template:262
-#: libretranslate/templates/app.js.template:332
-#: libretranslate/templates/app.js.template:402
-#: libretranslate/templates/app.js.template:447
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "Не вдається завантажити %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
-#: libretranslate/templates/app.js.template:253
-#: libretranslate/templates/app.js.template:323
-#: libretranslate/templates/app.js.template:385
-#: libretranslate/templates/app.js.template:395
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "Невідома помилка"
-#: libretranslate/templates/app.js.template:287
-#: libretranslate/templates/app.js.template:276
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Скопійовано"
-#: libretranslate/templates/app.js.template:331
-#: libretranslate/templates/app.js.template:320
+#: libretranslate/templates/app.js.template:337
msgid ""
-"Thanks for your correction. Note the suggestion will not take effect right "
-"away."
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
msgstr ""
"Дякуємо за виправлення. Зверніть увагу, що пропозиція не набуде чинності "
"одразу."
-#: libretranslate/templates/app.js.template:455
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "Немає доступних мов. Чи правильно ви встановили моделі?"
-#: libretranslate/templates/app.js.template:522
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Введіть свій API ключ. Якщо вам потрібен API ключ, %(instructions)s"
-#: libretranslate/templates/app.js.template:522
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "натисніть на посилання \"Отримати API ключ\"."
-#: libretranslate/templates/app.js.template:522
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "зв'язатися з оператором сервера."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
-#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25
-#: libretranslate/templates/index.html:333
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "Безкоштовний API машинного перекладу з відкритим вихідним кодом"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
-#: libretranslate/templates/index.html:29
msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline capable "
-"and easy to setup. Run your own API server in just a few minutes."
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Безкоштовний API машинного перекладу з відкритим вихідним кодом. Самостійне "
-"розміщення, можливість роботи в офлайн режимі та простота налаштування. "
-"Запустіть власний API сервер всього за кілька хвилин."
+"Безкоштовний API машинного перекладу з відкритим вихідним кодом. "
+"Самостійне розміщення, можливість роботи в офлайн режимі та простота "
+"налаштування. Запустіть власний API сервер всього за кілька хвилин."
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -553,188 +588,134 @@ msgstr "переклад"
msgid "api"
msgstr "api"
-#: libretranslate/templates/index.html:65
-#: libretranslate/templates/index.html:64
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Документація до API"
-#: libretranslate/templates/index.html:67
-#: libretranslate/templates/index.html:66
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Отримати API ключ"
-#: libretranslate/templates/index.html:69
-#: libretranslate/templates/index.html:68
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
-#: libretranslate/templates/index.html:70
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Встановити API ключ"
-#: libretranslate/templates/index.html:73
-#: libretranslate/templates/index.html:72
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Змінити мову"
-#: libretranslate/templates/index.html:79
-#: libretranslate/templates/index.html:78
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Редагувати"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Перемкнути темну/світлу тему"
-#: libretranslate/templates/index.html:157
-#: libretranslate/templates/index.html:154
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Відмовитись"
-#: libretranslate/templates/index.html:171
-#: libretranslate/templates/index.html:168
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "API для перекладу"
-#: libretranslate/templates/index.html:175
-#: libretranslate/templates/index.html:172
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "Переклад тексту"
-#: libretranslate/templates/index.html:179
-#: libretranslate/templates/index.html:176
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "Переклад файлів"
-#: libretranslate/templates/index.html:185
-#: libretranslate/templates/index.html:182
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "Перекласти з"
-#: libretranslate/templates/index.html:195
-#: libretranslate/templates/index.html:192
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "Поміняти мови місцями"
-#: libretranslate/templates/index.html:198
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "Перекласти на"
-#: libretranslate/templates/index.html:210
-#: libretranslate/templates/index.html:207
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "Текст для перекладу"
-#: libretranslate/templates/index.html:213
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "Видалити текст"
-#: libretranslate/templates/index.html:226
-#: libretranslate/templates/index.html:223
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "Запропонувати переклад"
-#: libretranslate/templates/index.html:230
-#: libretranslate/templates/index.html:227
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "Скасувати"
-#: libretranslate/templates/index.html:233
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "Надіслати"
-#: libretranslate/templates/index.html:249
-#: libretranslate/templates/index.html:246
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "Підтримувані формати файлів:"
-#: libretranslate/templates/index.html:253
-#: libretranslate/templates/index.html:250
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "Файл"
-#: libretranslate/templates/index.html:268
-#: libretranslate/templates/index.html:265
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "Видалити файл"
-#: libretranslate/templates/index.html:275
-#: libretranslate/templates/index.html:272
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "Перекласти"
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
-#: libretranslate/templates/index.html:273
-#: libretranslate/templates/index.html:317
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "Завантажити"
-#: libretranslate/templates/index.html:295
-#: libretranslate/templates/index.html:292
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "Запит"
-#: libretranslate/templates/index.html:300
-#: libretranslate/templates/index.html:297
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "Відповідь"
-#: libretranslate/templates/index.html:315
-#: libretranslate/templates/index.html:312
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "API машинного перекладу з відкритим вихідним кодом"
-#: libretranslate/templates/index.html:316
-#: libretranslate/templates/index.html:313
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr ""
"Самостійне розміщення. Можливість роботи в офлайн режимі. Простота "
"налаштування."
-#: libretranslate/templates/index.html:335
-#: libretranslate/templates/index.html:332
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
-#: libretranslate/templates/index.html:334
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "Ліцензія:"
-#: libretranslate/templates/index.html:340
-#: libretranslate/templates/index.html:337
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"Цей публічний API слід використовувати для тестування, особистого або "
-"нечастого використання. Якщо ви збираєтесь запустити застосунок у "
-"виробництво, будь ласка, %(host_server)s чи %(get_api_key)s."
-
-#: libretranslate/templates/index.html:340
-#: libretranslate/templates/index.html:337
-msgid "host your own server"
-msgstr "розмістіть на своєму власному сервері"
-
-#: libretranslate/templates/index.html:340
-#: libretranslate/templates/index.html:337
-msgid "get an API key"
-msgstr "отримайте API ключ"
-
-#: libretranslate/templates/index.html:348
#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Зроблено з %(heart)s %(contributors)s та працює на базі %(engine)s"
-#: libretranslate/templates/index.html:348
#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
@@ -742,3 +723,26 @@ msgstr "Спільнотою %(libretranslate)s"
#~ msgid "multipart/form-data"
#~ msgstr "мультипарт/форм-дані"
+
+#~ msgid "Vietnamese"
+#~ msgstr "В'єтнамська"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Цей публічний API слід використовувати "
+#~ "для тестування, особистого або нечастого "
+#~ "використання. Якщо ви збираєтесь запустити "
+#~ "застосунок у виробництво, будь ласка, "
+#~ "%(host_server)s чи %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "розмістіть на своєму власному сервері"
+
+#~ msgid "get an API key"
+#~ msgstr "отримайте API ключ"
+
diff --git a/libretranslate/locales/ur/LC_MESSAGES/messages.po b/libretranslate/locales/ur/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..cb485c7
--- /dev/null
+++ b/libretranslate/locales/ur/LC_MESSAGES/messages.po
@@ -0,0 +1,718 @@
+# Urdu translations for LibreTranslate.
+# Copyright (C) 2024 LibreTranslate Authors
+# This file is distributed under the same license as the LibreTranslate
+# project.
+# FIRST AUTHOR , 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
+"PO-Revision-Date: 2024-08-08 13:03-0400\n"
+"Last-Translator: FULL NAME \n"
+"Language: ur\n"
+"Language-Team: ur \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.15.0\n"
+
+#: libretranslate/app.py:80
+msgid "Invalid JSON format"
+msgstr "ایس "
+
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
+msgid "Auto Detect"
+msgstr "خود کار ڈیکاٹ"
+
+#: libretranslate/app.py:273
+msgid "Unauthorized"
+msgstr "غیر درج شدہ"
+
+#: libretranslate/app.py:291
+msgid "Too many request limits violations"
+msgstr "بہت سے طلبہ کی خلاف ورزی کی حدود ہیں۔"
+
+#: libretranslate/app.py:298
+msgid "Invalid API key"
+msgstr "اہم تجاویز"
+
+#: libretranslate/app.py:317
+msgid "Please contact the server operator to get an API key"
+msgstr "براہ کرم سرور آپریٹر سے رابطہ کریں"
+
+#: libretranslate/app.py:319
+#, python-format
+msgid "Visit %(url)s to get an API key"
+msgstr "ملاقات %(url)s ایک ایپی کلید حاصل کرنے کے لئے"
+
+#: libretranslate/app.py:366
+msgid "Slowdown:"
+msgstr "غلطی:"
+
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
+#, python-format
+msgid "Invalid request: missing %(name)s parameter"
+msgstr "غیر متصل سوال: %(name)s پیرامیٹر"
+
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "غیر متصل درخواست: %(name)s پیرامیٹر نمبر نہیں ہے"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "غیر متصل درخواست: %(name)s پیرامیٹر لازمی ہے. %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
+#, python-format
+msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
+msgstr "بے پناہ درخواست (انگریزی:%(size)s) متن حد سے تجاوز کرتا ہے۔%(limit)s)"
+
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
+#, python-format
+msgid "%(lang)s is not supported"
+msgstr "%(lang)s اور ان کی مدد نہیں کی جائے گی"
+
+#: libretranslate/app.py:648
+#, python-format
+msgid "%(format)s format is not supported"
+msgstr "%(format)s فارمیٹ کی مدد نہیں کی جاسکتی"
+
+#: libretranslate/app.py:657 libretranslate/app.py:681
+#, python-format
+msgid ""
+"%(tname)s (%(tcode)s) is not available as a target language from "
+"%(sname)s (%(scode)s)"
+msgstr ""
+"%(tname)s (%(tcode)s) سے مراد زبان کے طور پر دستیاب نہیں ہے۔ %(sname)s "
+"(%(scode)s)"
+
+#: libretranslate/app.py:701
+#, python-format
+msgid "Cannot translate text: %(text)s"
+msgstr "ترجمہ: %(text)s"
+
+#: libretranslate/app.py:788 libretranslate/app.py:849
+msgid "Files translation are disabled on this server."
+msgstr "فائل کا ترجمہ اس سرور پر معذور ہے۔."
+
+#: libretranslate/app.py:803
+msgid "Invalid request: empty file"
+msgstr "محفوظ درخواست: خالی فائل"
+
+#: libretranslate/app.py:806
+msgid "Invalid request: file format not supported"
+msgstr "محفوظ درخواست: فائل کی معاونت نہیں ہے"
+
+#: libretranslate/app.py:857
+msgid "Invalid filename"
+msgstr "نقلمکانی"
+
+#: libretranslate/app.py:1099
+msgid "Suggestions are disabled on this server."
+msgstr "اس سرور پر خدمات معطل ہیں۔."
+
+#: libretranslate/locales/.langs.py:1
+msgid "English"
+msgstr "انگریزی"
+
+#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "البانیا"
+
+#: libretranslate/locales/.langs.py:3
+msgid "Arabic"
+msgstr "عربي"
+
+#: libretranslate/locales/.langs.py:4
+msgid "Azerbaijani"
+msgstr "آذربائیجان"
+
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "بنگالی"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "بلغاریہ"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "کتالان"
+
+#: libretranslate/locales/.langs.py:8
+msgid "Chinese"
+msgstr "چین"
+
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "چینی (انگریزی:"
+
+#: libretranslate/locales/.langs.py:10
+msgid "Czech"
+msgstr "چیک"
+
+#: libretranslate/locales/.langs.py:11
+msgid "Danish"
+msgstr "دانش"
+
+#: libretranslate/locales/.langs.py:12
+msgid "Dutch"
+msgstr "ڈچ"
+
+#: libretranslate/locales/.langs.py:13
+msgid "Esperanto"
+msgstr "ایسپرانتو"
+
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "ايستان"
+
+#: libretranslate/locales/.langs.py:15
+msgid "Finnish"
+msgstr "فِش"
+
+#: libretranslate/locales/.langs.py:16
+msgid "French"
+msgstr "فر انس"
+
+#: libretranslate/locales/.langs.py:17
+msgid "German"
+msgstr "جرمني"
+
+#: libretranslate/locales/.langs.py:18
+msgid "Greek"
+msgstr "یونانی"
+
+#: libretranslate/locales/.langs.py:19
+msgid "Hebrew"
+msgstr "عبرانی"
+
+#: libretranslate/locales/.langs.py:20
+msgid "Hindi"
+msgstr "ہندی"
+
+#: libretranslate/locales/.langs.py:21
+msgid "Hungarian"
+msgstr "ه رات"
+
+#: libretranslate/locales/.langs.py:22
+msgid "Indonesian"
+msgstr "انڈونیشیا"
+
+#: libretranslate/locales/.langs.py:23
+msgid "Irish"
+msgstr "آئرش"
+
+#: libretranslate/locales/.langs.py:24
+msgid "Italian"
+msgstr "اطالوی"
+
+#: libretranslate/locales/.langs.py:25
+msgid "Japanese"
+msgstr "جاپاني"
+
+#: libretranslate/locales/.langs.py:26
+msgid "Korean"
+msgstr "کوریا"
+
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "لٹو يا"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "لتھووینیا"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "ملے"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "ناري"
+
+#: libretranslate/locales/.langs.py:31
+msgid "Persian"
+msgstr "فارسی"
+
+#: libretranslate/locales/.langs.py:32
+msgid "Polish"
+msgstr "پولش"
+
+#: libretranslate/locales/.langs.py:33
+msgid "Portuguese"
+msgstr "فر انس"
+
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "رومي"
+
+#: libretranslate/locales/.langs.py:35
+msgid "Russian"
+msgstr "رو ن"
+
+#: libretranslate/locales/.langs.py:36
+msgid "Slovak"
+msgstr "سلواک"
+
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "سلووینیا"
+
+#: libretranslate/locales/.langs.py:38
+msgid "Spanish"
+msgstr "اندلس"
+
+#: libretranslate/locales/.langs.py:39
+msgid "Swedish"
+msgstr "سو ڈا ني"
+
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "غیر متصل"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "تھائی"
+
+#: libretranslate/locales/.langs.py:42
+msgid "Turkish"
+msgstr "ترکي"
+
+#: libretranslate/locales/.langs.py:43
+msgid "Ukranian"
+msgstr "یورینس"
+
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "اُردو"
+
+#: libretranslate/locales/.swag.py:1
+msgid "Retrieve list of supported languages"
+msgstr "معاون زبانوں کی فہرست"
+
+#: libretranslate/locales/.swag.py:2
+msgid "List of languages"
+msgstr "یہ فہرست زبانوں (List of languages) ہے۔"
+
+#: libretranslate/locales/.swag.py:3
+msgid "translate"
+msgstr "ترجمہ"
+
+#: libretranslate/locales/.swag.py:4
+msgid "Translate text from a language to another"
+msgstr "زبان سے دوسری زبان تک عبارت"
+
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
+msgid "Translated text"
+msgstr "نقل و حمل"
+
+#: libretranslate/locales/.swag.py:6
+msgid "Invalid request"
+msgstr "غیر متصل درخواست"
+
+#: libretranslate/locales/.swag.py:7
+msgid "Translation error"
+msgstr "ترجمہ غلطی"
+
+#: libretranslate/locales/.swag.py:8
+msgid "Slow down"
+msgstr "بند"
+
+#: libretranslate/locales/.swag.py:9
+msgid "Banned"
+msgstr "بائٹس"
+
+#: libretranslate/locales/.swag.py:10
+msgid "Hello world!"
+msgstr "ہیلو دنیا!"
+
+#: libretranslate/locales/.swag.py:11
+msgid "Text(s) to translate"
+msgstr "ترجمہ کرنے کے لئے متن(s)"
+
+#: libretranslate/locales/.swag.py:12
+msgid "Source language code"
+msgstr "ماخذ زبان کوڈ"
+
+#: libretranslate/locales/.swag.py:13
+msgid "Target language code"
+msgstr "زبانوں کا کوڈ"
+
+#: libretranslate/locales/.swag.py:14
+msgid "text"
+msgstr "متن"
+
+#: libretranslate/locales/.swag.py:15
+msgid "html"
+msgstr "حمیل"
+
+#: libretranslate/locales/.swag.py:16
+msgid ""
+"Format of source text:\n"
+" * `text` - Plain text\n"
+" * `html` - HTML markup\n"
+msgstr ""
+"ماخذ متناسقات:\n"
+"*\n"
+"*'html' - ایچ ٹی ایم ایل مارک اپ -\n"
+
+#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "متعدد متبادل ترجمے"
+
+#: libretranslate/locales/.swag.py:18
+msgid "API key"
+msgstr "کلید"
+
+#: libretranslate/locales/.swag.py:19
+msgid "Translate file from a language to another"
+msgstr "زبان سے دوسرے تک فائل"
+
+#: libretranslate/locales/.swag.py:20
+msgid "Translated file"
+msgstr "فائل حذف کی جارہی ہے"
+
+#: libretranslate/locales/.swag.py:21
+msgid "File to translate"
+msgstr "فائل کا ترجمہ"
+
+#: libretranslate/locales/.swag.py:22
+msgid "Detect the language of a single text"
+msgstr "ايک متن کي زبان کي نقل کريں"
+
+#: libretranslate/locales/.swag.py:23
+msgid "Detections"
+msgstr "حقائق"
+
+#: libretranslate/locales/.swag.py:24
+msgid "Detection error"
+msgstr "ڈیٹنگ غلطی"
+
+#: libretranslate/locales/.swag.py:25
+msgid "Text to detect"
+msgstr "معلوم کرنے کے لئے متن"
+
+#: libretranslate/locales/.swag.py:26
+msgid "Retrieve frontend specific settings"
+msgstr "حفاظتی مخصوص ترتیبات"
+
+#: libretranslate/locales/.swag.py:27
+msgid "frontend settings"
+msgstr "پیشگی ترتیبات"
+
+#: libretranslate/locales/.swag.py:28
+msgid "frontend"
+msgstr "آمنے سامنے"
+
+#: libretranslate/locales/.swag.py:29
+msgid "Submit a suggestion to improve a translation"
+msgstr "ترجمے کو بہتر بنانے کی تجویز پیش کریں"
+
+#: libretranslate/locales/.swag.py:30
+msgid "Success"
+msgstr "کامیابی"
+
+#: libretranslate/locales/.swag.py:31
+msgid "Not authorized"
+msgstr "اجازت نہیں دی گئی"
+
+#: libretranslate/locales/.swag.py:32
+msgid "Original text"
+msgstr "اصل متن"
+
+#: libretranslate/locales/.swag.py:33
+msgid "Suggested translation"
+msgstr "ترجمہ"
+
+#: libretranslate/locales/.swag.py:34
+msgid "Language of original text"
+msgstr "اصل متن کی زبان"
+
+#: libretranslate/locales/.swag.py:35
+msgid "Language of suggested translation"
+msgstr "ترجمے کی تجویز"
+
+#: libretranslate/locales/.swag.py:36
+msgid "feedback"
+msgstr "جواب"
+
+#: libretranslate/locales/.swag.py:37
+msgid "Language code"
+msgstr "زبان کا کوڈ"
+
+#: libretranslate/locales/.swag.py:38
+msgid "Human-readable language name (in English)"
+msgstr "انسانی قابل زبان نام (انگریزی میں)"
+
+#: libretranslate/locales/.swag.py:39
+msgid "Supported target language codes"
+msgstr "نشان زدہ زبان کے کوڈ کی حمایت کی۔"
+
+#: libretranslate/locales/.swag.py:40
+msgid "Translated text(s)"
+msgstr "نقل و حمل (s)"
+
+#: libretranslate/locales/.swag.py:41
+msgid "Error message"
+msgstr "خامی پیام"
+
+#: libretranslate/locales/.swag.py:42
+msgid "Reason for slow down"
+msgstr "سست کرنے کی وجہ"
+
+#: libretranslate/locales/.swag.py:43
+msgid "Translated file url"
+msgstr "فائل رولر"
+
+#: libretranslate/locales/.swag.py:44
+msgid "Confidence value"
+msgstr "اعتماد کی اہمیت"
+
+#: libretranslate/locales/.swag.py:45
+msgid "Character input limit for this language (-1 indicates no limit)"
+msgstr "حروف تہجی اس زبان کے لیے حدیث (-1 کوئی حدیث نہیں)۔"
+
+#: libretranslate/locales/.swag.py:46
+msgid "Frontend translation timeout"
+msgstr "وقت کا غلط استعمال"
+
+#: libretranslate/locales/.swag.py:47
+msgid "Whether the API key database is enabled."
+msgstr "چاہے اے پی آئی کی کلید ڈیٹا بیس کے قابل ہو۔."
+
+#: libretranslate/locales/.swag.py:48
+msgid "Whether an API key is required."
+msgstr "چاہے آپ کسی ایپی کلید کی ضرورت ہو ۔."
+
+#: libretranslate/locales/.swag.py:49
+msgid "Whether submitting suggestions is enabled."
+msgstr "خواہ پیش کرنے والے تجاویز قابلِبھروسا ہیں ۔."
+
+#: libretranslate/locales/.swag.py:50
+msgid "Supported files format"
+msgstr "فائلوں کی معاونت"
+
+#: libretranslate/locales/.swag.py:51
+msgid "Whether submission was successful"
+msgstr "خواہ اسلام کامیاب رہا"
+
+#: libretranslate/templates/app.js.template:31
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
+msgid "Copy text"
+msgstr "متن نقل کریں"
+
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
+#, python-format
+msgid "Cannot load %(url)s"
+msgstr "لوڈ نہیں ہوسکتا %(url)s"
+
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
+msgid "Unknown error"
+msgstr "نامعلوم"
+
+#: libretranslate/templates/app.js.template:293
+msgid "Copied"
+msgstr "کوس"
+
+#: libretranslate/templates/app.js.template:337
+msgid ""
+"Thanks for your correction. Note the suggestion will not take effect "
+"right away."
+msgstr "آپ کی اصلاح کا شکریہ. اِس سلسلے میں ایک مثال پر غور کریں ۔."
+
+#: libretranslate/templates/app.js.template:461
+msgid "No languages available. Did you install the models correctly?"
+msgstr "کوئی زبان دستیاب نہیں۔ آپ نے ماڈلز کو درست طور پر نصب کیا؟?"
+
+#: libretranslate/templates/app.js.template:528
+#, python-format
+msgid "Type in your API Key. If you need an API key, %(instructions)s"
+msgstr ""
+"قسم اپنی ایپی کلید میں. آپ کو ایک ایپی کلید کی ضرورت ہے تو، "
+"%(instructions)s"
+
+#: libretranslate/templates/app.js.template:528
+msgid "press the \"Get API Key\" link."
+msgstr "\"پی اے کلید\" لنک پر زور دیں."
+
+#: libretranslate/templates/app.js.template:528
+msgid "contact the server operator."
+msgstr "سرور آپریٹر سے رابطہ کریں."
+
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
+msgid "Free and Open Source Machine Translation API"
+msgstr "آزاد اور کھلے ماخذ مشین اے پی آئی"
+
+#: libretranslate/templates/index.html:10
+#: libretranslate/templates/index.html:31
+msgid ""
+"Free and Open Source Machine Translation API. Self-hosted, offline "
+"capable and easy to setup. Run your own API server in just a few minutes."
+msgstr ""
+"آزاد اور اوپن ماخذ مشین اے پی آئی۔ خود غرضی، بے قاعدہ صلاحیت اور آسانی سے"
+" نصب کرنے کے لئے. صرف چند منٹ میں اپنے ذاتی ایپی سرور چلا."
+
+#: libretranslate/templates/index.html:11
+msgid "translation"
+msgstr "ترجمہ"
+
+#: libretranslate/templates/index.html:11
+msgid "api"
+msgstr "پانی"
+
+#: libretranslate/templates/index.html:67
+msgid "API Docs"
+msgstr "اپریل"
+
+#: libretranslate/templates/index.html:69
+msgid "Get API Key"
+msgstr "توجہ حاصل کریں کلید"
+
+#: libretranslate/templates/index.html:71
+msgid "GitHub"
+msgstr "جٹوب"
+
+#: libretranslate/templates/index.html:73
+msgid "Set API Key"
+msgstr "خیال کریں کلید"
+
+#: libretranslate/templates/index.html:75
+msgid "Change language"
+msgstr "زبان تبدیل کریں"
+
+#: libretranslate/templates/index.html:81
+msgid "Edit"
+msgstr "مرتب"
+
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr "تاریکی / روشنی کا موڈ"
+
+#: libretranslate/templates/index.html:159
+msgid "Dismiss"
+msgstr "تفریق"
+
+#: libretranslate/templates/index.html:173
+msgid "Translation API"
+msgstr "ترجمہ"
+
+#: libretranslate/templates/index.html:177
+msgid "Translate Text"
+msgstr "متن"
+
+#: libretranslate/templates/index.html:181
+msgid "Translate Files"
+msgstr "فائلیں"
+
+#: libretranslate/templates/index.html:187
+msgid "Translate from"
+msgstr "عبارت سے"
+
+#: libretranslate/templates/index.html:197
+msgid "Swap source and target languages"
+msgstr "سواپ ماخذ اور ہدف زبانیں ہیں۔"
+
+#: libretranslate/templates/index.html:200
+msgid "Translate into"
+msgstr "داخل ہوں گے"
+
+#: libretranslate/templates/index.html:212
+msgid "Text to translate"
+msgstr "ترجمہ کرنے کے لئے متن"
+
+#: libretranslate/templates/index.html:215
+msgid "Delete text"
+msgstr "حذف"
+
+#: libretranslate/templates/index.html:228
+msgid "Suggest translation"
+msgstr "ترجمہ"
+
+#: libretranslate/templates/index.html:232
+msgid "Cancel"
+msgstr "منسوخ"
+
+#: libretranslate/templates/index.html:235
+msgid "Send"
+msgstr "بھیجو"
+
+#: libretranslate/templates/index.html:251
+msgid "Supported file formats:"
+msgstr "معاون فائل فارمیٹ:"
+
+#: libretranslate/templates/index.html:255
+msgid "File"
+msgstr "فائل"
+
+#: libretranslate/templates/index.html:270
+msgid "Remove file"
+msgstr "فائل حذف کریں"
+
+#: libretranslate/templates/index.html:277
+msgid "Translate"
+msgstr "عبارت"
+
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
+msgid "Download"
+msgstr "اوپر لکھیں"
+
+#: libretranslate/templates/index.html:297
+msgid "Request"
+msgstr "درخواست"
+
+#: libretranslate/templates/index.html:302
+msgid "Response"
+msgstr "دوبارہ شروع"
+
+#: libretranslate/templates/index.html:317
+msgid "Open Source Machine Translation API"
+msgstr "دستیاب مشینوں کا ترجمہ اے پی آئی"
+
+#: libretranslate/templates/index.html:318
+msgid "Self-Hosted. Offline Capable. Easy to Setup."
+msgstr "خود مختار ہو گیا۔ ممکن ہے. تیار کرنے کے لئے آسان."
+
+#: libretranslate/templates/index.html:337
+msgid "LibreTranslate"
+msgstr "لبرٹی"
+
+#: libretranslate/templates/index.html:339
+msgid "License:"
+msgstr "اجازت نامہ:"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
+msgstr ""
+"ساتھ بنایا گیا ہے %(heart)s قسم %(contributors)s جو بڑا زور آور ہے "
+"%(engine)s"
+
+#: libretranslate/templates/index.html:345
+#, python-format
+msgid "%(libretranslate)s Contributors"
+msgstr "%(libretranslate)s نقل و حمل"
+
diff --git a/libretranslate/locales/ur/meta.json b/libretranslate/locales/ur/meta.json
new file mode 100644
index 0000000..7b09468
--- /dev/null
+++ b/libretranslate/locales/ur/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Urdu",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/libretranslate/locales/zh/LC_MESSAGES/messages.po b/libretranslate/locales/zh/LC_MESSAGES/messages.po
index 40b50e2..df00c87 100644
--- a/libretranslate/locales/zh/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/zh/LC_MESSAGES/messages.po
@@ -8,107 +8,115 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-10-09 15:17-0400\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-07-22 04:09+0000\n"
"Last-Translator: John Ngai \n"
-"Language-Team: Chinese (Simplified) \n"
+"Language-Team: Chinese (Simplified) \n"
"Language: zh\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.7-dev\n"
-"Generated-By: Babel 2.12.1\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:79
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "无效的 JSON 格式"
-#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "自动检测"
-#: libretranslate/app.py:232
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "未经授权"
-#: libretranslate/app.py:250
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "请求次数过多超过限制"
-#: libretranslate/app.py:257
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "无效的 API 密钥"
-#: libretranslate/app.py:276
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "请联系服务器管理员以获取 API 密钥"
-#: libretranslate/app.py:278
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "访问 %(url)s 以获取 API 密钥"
-#: libretranslate/app.py:318
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "慢一点:"
-#: libretranslate/app.py:525 libretranslate/app.py:527
-#: libretranslate/app.py:529 libretranslate/app.py:741
-#: libretranslate/app.py:743 libretranslate/app.py:745
-#: libretranslate/app.py:896 libretranslate/app.py:1053
-#: libretranslate/app.py:1055 libretranslate/app.py:1057
-#: libretranslate/app.py:1059
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "无效的请求:丢失 %(name)s 参数"
-#: libretranslate/app.py:544 libretranslate/app.py:553
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr "无效的请求 : 0 个 参数不是一个数字 %(name)s"
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr "无效的请求 : 0 个 参数必须是QQ 1个 %(name)s %(value)s"
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "无效的请求:请求(%(size)s)超过文本限制(%(limit)s)"
-#: libretranslate/app.py:583 libretranslate/app.py:588
-#: libretranslate/app.py:758 libretranslate/app.py:763
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s 不受支持"
-#: libretranslate/app.py:594
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s 格式不受支持"
-#: libretranslate/app.py:602 libretranslate/app.py:626
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
"(%(scode)s)"
msgstr "%(tname)s(%(tcode)s)不能作为 %(sname)s (%(scode)s)的目标语言"
-#: libretranslate/app.py:647
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "无法翻译文本:%(text)s"
-#: libretranslate/app.py:734 libretranslate/app.py:788
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "文件翻译在此服务器上被禁用。"
-#: libretranslate/app.py:748
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "无效的请求:空文件"
-#: libretranslate/app.py:751
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "无效的请求:文件格式不受支持"
-#: libretranslate/app.py:796
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "无效的文件名"
-#: libretranslate/app.py:1038
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "建议在此服务器上被禁用。"
@@ -117,120 +125,176 @@ msgid "English"
msgstr "英语"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr "阿尔巴尼亚语Name"
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "阿拉伯文"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "阿塞拜疆语"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr "孟加拉语Name"
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr "保加利亚语Name"
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr "加泰罗尼亚语Name"
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "中文"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr "汉语( 传统)"
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "捷克语"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "丹麦语"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "荷兰语"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "世界语"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr "爱沙尼亚语"
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "芬兰语"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "法语"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "德语"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "希腊语"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "希伯来语"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "印地语"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "匈牙利语"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "印度尼西亚语"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "爱尔兰语"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "意大利语"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "日文"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "韩文"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr "拉脱维亚语Name"
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr "立陶宛语Name"
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr "马来语Name"
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr "挪威语"
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "波斯语"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "波兰语"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "葡萄牙语"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr "罗马尼亚语Name"
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "俄语"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "斯洛伐克语"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr "斯洛文尼亚语Name"
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "西班牙语"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "瑞典语"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr "标记"
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr "泰国语Name"
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "土耳其语"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "乌克兰语"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "越南语"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr "乌尔都语"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -248,7 +312,7 @@ msgstr "在文档中用作标签.这是“翻译”类别."
msgid "Translate text from a language to another"
msgstr "将文本从一种语言翻译成另一种语言"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "已翻译文本"
@@ -303,195 +367,199 @@ msgstr ""
" *`html` - html 标记\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr "首选译名数"
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API密钥"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "将文件从一种语言翻译成另一种语言"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "已翻译文件"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "需要翻译的文件"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "检测单个文本的语言"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "检测"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "检测出错"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "需要检测的文本"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "检索前端特定设置"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "前端设置"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "前端"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "提交建议以改善翻译"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "成功"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "未经授权"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "原文"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "建议译文"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "原始文本的语言"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "建议译文的语言"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "反馈"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "语言代码"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "人类可读的语言名称(英文)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "支持的目标语言代码"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "已翻译文本"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "错误信息"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "速度减缓的原因"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "已翻译文件的链接"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "置信度"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "此语言的字符输入限制(-1表示没有限制)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "前端翻译超时"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "是否启用了API密钥数据库。"
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "是否需要API密钥。"
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "是否启用了支持提交建议。"
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "支持的文件格式"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "提交是否成功"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:286
-#: libretranslate/templates/app.js.template:290
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "复制文本"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
-#: libretranslate/templates/app.js.template:273
-#: libretranslate/templates/app.js.template:343
-#: libretranslate/templates/app.js.template:431
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "无法加载 %(url)s"
-#: libretranslate/templates/app.js.template:264
-#: libretranslate/templates/app.js.template:334
-#: libretranslate/templates/app.js.template:412
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "未知错误"
-#: libretranslate/templates/app.js.template:287
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "复制"
-#: libretranslate/templates/app.js.template:331
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr "感谢您的更正。注意此建议不会立即生效。"
-#: libretranslate/templates/app.js.template:455
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "无可用的语言。您是否正确安装了模型?"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "输入您的API密钥。如果您需要API密钥,%(instructions)s"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "点击“获取API密钥”链接。"
-#: libretranslate/templates/app.js.template:522
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "联系服务器管理员。"
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
-#: libretranslate/templates/index.html:336
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "免费开源的机器翻译API"
@@ -510,153 +578,152 @@ msgstr "翻译"
msgid "api"
msgstr "API"
-#: libretranslate/templates/index.html:65
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API文档"
-#: libretranslate/templates/index.html:67
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "获取API密钥"
-#: libretranslate/templates/index.html:69
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:71
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "设置API密钥"
-#: libretranslate/templates/index.html:73
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "改变语言"
-#: libretranslate/templates/index.html:79
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "编辑"
-#: libretranslate/templates/index.html:81
+#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "切换暗黑/明亮模式"
-#: libretranslate/templates/index.html:157
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "忽略"
-#: libretranslate/templates/index.html:171
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "翻译API"
-#: libretranslate/templates/index.html:175
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "翻译文本"
-#: libretranslate/templates/index.html:179
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "翻译文件"
-#: libretranslate/templates/index.html:185
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "翻译自"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "交换来源语言与目标语言"
-#: libretranslate/templates/index.html:198
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "翻译为"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "需要翻译的文本"
-#: libretranslate/templates/index.html:213
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "删除文本"
-#: libretranslate/templates/index.html:226
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "建议译文"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "取消"
-#: libretranslate/templates/index.html:233
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "发送"
-#: libretranslate/templates/index.html:249
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "支持的文件格式:"
-#: libretranslate/templates/index.html:253
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "文件"
-#: libretranslate/templates/index.html:268
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "删除文件"
-#: libretranslate/templates/index.html:275
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "命令, 例如\"翻译\""
-#: libretranslate/templates/index.html:276
-#: libretranslate/templates/index.html:320
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "下载"
-#: libretranslate/templates/index.html:295
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "请求"
-#: libretranslate/templates/index.html:300
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "响应"
-#: libretranslate/templates/index.html:315
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "开源的机器翻译API"
-#: libretranslate/templates/index.html:316
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "自我托管。支持离线。易于设置。"
-#: libretranslate/templates/index.html:335
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:337
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "许可:"
-#: libretranslate/templates/index.html:340
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. If "
-"you're going to run an application in production, please %(host_server)s or "
-"%(get_api_key)s."
-msgstr ""
-"此公共API仅适用于测试,个人或不频繁的使用。如果您要在生产环境中运行应用程序,请 %(host_server)s 或 %(get_api_key)s。"
-
-#: libretranslate/templates/index.html:340
-msgid "host your own server"
-msgstr "搭建自己的服务器"
-
-#: libretranslate/templates/index.html:340
-msgid "get an API key"
-msgstr "获取API密钥"
-
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "由 %(contributors)s 用 %(heart)s 制作并且由 %(engine)s 驱动"
-#: libretranslate/templates/index.html:348
+#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s 贡献者"
#~ msgid "multipart/form-data"
#~ msgstr "多部分/非正式数据"
+
+#~ msgid "Vietnamese"
+#~ msgstr "越南语"
+
+#~ msgid ""
+#~ "This public API should be used for testing, personal or infrequent use. If "
+#~ "you're going to run an application in production, please %(host_server)s or "
+#~ "%(get_api_key)s."
+#~ msgstr ""
+#~ "此公共API仅适用于测试,个人或不频繁的使用。如果您要在生产环境中运行应用程序,请 %(host_server)s 或 %(get_api_key)s。"
+
+#~ msgid "host your own server"
+#~ msgstr "搭建自己的服务器"
+
+#~ msgid "get an API key"
+#~ msgstr "获取API密钥"
diff --git a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
index 287be7b..3f39451 100644
--- a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po
@@ -1,4 +1,4 @@
-# Translations template for LibreTranslate.
+# Chinese (Traditional) translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@@ -8,107 +8,116 @@ msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-01-06 17:52-0500\n"
+"POT-Creation-Date: 2024-08-08 13:24-0400\n"
"PO-Revision-Date: 2024-04-23 20:07+0000\n"
"Last-Translator: Peter Dave Hello \n"
-"Language-Team: Chinese (Traditional) \n"
"Language: zh_Hant\n"
+"Language-Team: Chinese (Traditional) "
+"\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 5.5-dev\n"
-"Generated-By: Babel 2.11.0\n"
+"Generated-By: Babel 2.15.0\n"
-#: libretranslate/app.py:60
+#: libretranslate/app.py:80
msgid "Invalid JSON format"
msgstr "無效的 JSON 格式"
-#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
+#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
msgstr "自動偵測"
-#: libretranslate/app.py:193
+#: libretranslate/app.py:273
msgid "Unauthorized"
msgstr "未經授權"
-#: libretranslate/app.py:211
+#: libretranslate/app.py:291
msgid "Too many request limits violations"
msgstr "請求次數過多超過限制"
-#: libretranslate/app.py:220
+#: libretranslate/app.py:298
msgid "Invalid API key"
msgstr "無效的 API 金鑰"
-#: libretranslate/app.py:227
+#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
msgstr "請聯絡伺服器管理員以取得 API 金鑰"
-#: libretranslate/app.py:229
+#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "造訪 %(url)s 以取得 API 金鑰"
-#: libretranslate/app.py:269
+#: libretranslate/app.py:366
msgid "Slowdown:"
msgstr "慢一點:"
-#: libretranslate/app.py:467 libretranslate/app.py:469
-#: libretranslate/app.py:471 libretranslate/app.py:683
-#: libretranslate/app.py:685 libretranslate/app.py:687
-#: libretranslate/app.py:838 libretranslate/app.py:987
-#: libretranslate/app.py:989 libretranslate/app.py:991
-#: libretranslate/app.py:993
+#: libretranslate/app.py:583 libretranslate/app.py:585
+#: libretranslate/app.py:587 libretranslate/app.py:796
+#: libretranslate/app.py:798 libretranslate/app.py:800
+#: libretranslate/app.py:957 libretranslate/app.py:1114
+#: libretranslate/app.py:1116 libretranslate/app.py:1118
+#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "無效的請求:遺失 %(name)s 參數"
-#: libretranslate/app.py:480 libretranslate/app.py:492
+#: libretranslate/app.py:592
+#, python-format
+msgid "Invalid request: %(name)s parameter is not a number"
+msgstr ""
+
+#: libretranslate/app.py:595
+#, python-format
+msgid "Invalid request: %(name)s parameter must be <= %(value)s"
+msgstr ""
+
+#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "無效的請求:請求(%(size)s)超過文字限制(%(limit)s)"
-#: libretranslate/app.py:525 libretranslate/app.py:530
-#: libretranslate/app.py:700 libretranslate/app.py:705
+#: libretranslate/app.py:637 libretranslate/app.py:642
+#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
msgstr "不支援 %(lang)s"
-#: libretranslate/app.py:536
+#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
msgstr "不支援 %(format)s 格式"
-#: libretranslate/app.py:544 libretranslate/app.py:568
+#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr "%(tname)s(%(tcode)s)不能作為 %(sname)s(%(scode)s)的目標語言"
-#: libretranslate/app.py:589
+#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "無法翻譯文字:%(text)s"
-#: libretranslate/app.py:676 libretranslate/app.py:730
+#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
msgstr "此伺服器上已停用檔案翻譯功能。"
-#: libretranslate/app.py:690
+#: libretranslate/app.py:803
msgid "Invalid request: empty file"
msgstr "無效的請求:空檔案"
-#: libretranslate/app.py:693
+#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
msgstr "無效的請求:不支援的檔案格式"
-#: libretranslate/app.py:738
+#: libretranslate/app.py:857
msgid "Invalid filename"
msgstr "無效的檔案名稱"
-#: libretranslate/app.py:979
+#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
msgstr "此伺服器上已停用建議功能。"
@@ -117,120 +126,176 @@ msgid "English"
msgstr "英文"
#: libretranslate/locales/.langs.py:2
+msgid "Albanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "阿拉伯文"
-#: libretranslate/locales/.langs.py:3
+#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "阿塞拜疆語"
-#: libretranslate/locales/.langs.py:4
+#: libretranslate/locales/.langs.py:5
+msgid "Bengali"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:6
+msgid "Bulgarian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:7
+msgid "Catalan"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "中文"
-#: libretranslate/locales/.langs.py:5
+#: libretranslate/locales/.langs.py:9
+msgid "Chinese (traditional)"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "捷克語"
-#: libretranslate/locales/.langs.py:6
+#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "丹麥文"
-#: libretranslate/locales/.langs.py:7
+#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "荷蘭文"
-#: libretranslate/locales/.langs.py:8
+#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "世界語"
-#: libretranslate/locales/.langs.py:9
+#: libretranslate/locales/.langs.py:14
+msgid "Estonian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "芬蘭文"
-#: libretranslate/locales/.langs.py:10
+#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "法文"
-#: libretranslate/locales/.langs.py:11
+#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "德文"
-#: libretranslate/locales/.langs.py:12
+#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "希臘文"
-#: libretranslate/locales/.langs.py:13
+#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "希伯來文"
-#: libretranslate/locales/.langs.py:14
+#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "印地語"
-#: libretranslate/locales/.langs.py:15
+#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "匈牙利文"
-#: libretranslate/locales/.langs.py:16
+#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "印尼文"
-#: libretranslate/locales/.langs.py:17
+#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "愛爾蘭文"
-#: libretranslate/locales/.langs.py:18
+#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "意大利文"
-#: libretranslate/locales/.langs.py:19
+#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "日文"
-#: libretranslate/locales/.langs.py:20
+#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "韓文"
-#: libretranslate/locales/.langs.py:21
+#: libretranslate/locales/.langs.py:27
+msgid "Latvian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:28
+msgid "Lithuanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:29
+msgid "Malay"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:30
+msgid "Norwegian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "波斯文"
-#: libretranslate/locales/.langs.py:22
+#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "波蘭文"
-#: libretranslate/locales/.langs.py:23
+#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "葡萄牙文"
-#: libretranslate/locales/.langs.py:24
+#: libretranslate/locales/.langs.py:34
+msgid "Romanian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:35
msgid "Russian"
msgstr "俄文"
-#: libretranslate/locales/.langs.py:25
+#: libretranslate/locales/.langs.py:36
msgid "Slovak"
msgstr "斯洛伐克語"
-#: libretranslate/locales/.langs.py:26
+#: libretranslate/locales/.langs.py:37
+msgid "Slovenian"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:38
msgid "Spanish"
msgstr "西班牙文"
-#: libretranslate/locales/.langs.py:27
+#: libretranslate/locales/.langs.py:39
msgid "Swedish"
msgstr "瑞典文"
-#: libretranslate/locales/.langs.py:28
+#: libretranslate/locales/.langs.py:40
+msgid "Tagalog"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:41
+msgid "Thai"
+msgstr ""
+
+#: libretranslate/locales/.langs.py:42
msgid "Turkish"
msgstr "土耳其文"
-#: libretranslate/locales/.langs.py:29
+#: libretranslate/locales/.langs.py:43
msgid "Ukranian"
msgstr "烏克蘭文"
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "越南文"
+#: libretranslate/locales/.langs.py:44
+msgid "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -248,7 +313,7 @@ msgstr "翻譯"
msgid "Translate text from a language to another"
msgstr "將文字從一種語言翻譯成另一種語言"
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219
+#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
msgstr "已翻譯文字"
@@ -303,204 +368,207 @@ msgstr ""
" *`html` - html 標記\n"
#: libretranslate/locales/.swag.py:17
+msgid "Preferred number of alternative translations"
+msgstr ""
+
+#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API 金鑰"
-#: libretranslate/locales/.swag.py:18
+#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "將檔案從一種語言翻譯成另一種語言"
-#: libretranslate/locales/.swag.py:19
+#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "已翻譯檔案"
-#: libretranslate/locales/.swag.py:20
+#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "需要翻譯的檔案"
-#: libretranslate/locales/.swag.py:21
+#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "檢測單一文字的語言"
-#: libretranslate/locales/.swag.py:22
+#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "偵測"
-#: libretranslate/locales/.swag.py:23
+#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "錯誤偵測"
-#: libretranslate/locales/.swag.py:24
+#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "需要檢測的文字"
-#: libretranslate/locales/.swag.py:25
+#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "檢索前端特定設定"
-#: libretranslate/locales/.swag.py:26
+#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "前端設定"
-#: libretranslate/locales/.swag.py:27
+#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "前端"
-#: libretranslate/locales/.swag.py:28
+#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "提交建議以改善翻譯"
-#: libretranslate/locales/.swag.py:29
+#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "成功"
-#: libretranslate/locales/.swag.py:30
+#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "未經授權"
-#: libretranslate/locales/.swag.py:31
+#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "原文"
-#: libretranslate/locales/.swag.py:32
+#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "建議譯文"
-#: libretranslate/locales/.swag.py:33
+#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "原始文字的語言"
-#: libretranslate/locales/.swag.py:34
+#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "建議譯文的語言"
-#: libretranslate/locales/.swag.py:35
+#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "意見回饋"
-#: libretranslate/locales/.swag.py:36
+#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "語言代碼"
-#: libretranslate/locales/.swag.py:37
+#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "人類可讀的語言名稱(英文)"
-#: libretranslate/locales/.swag.py:38
+#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "支援的目標語言代碼"
-#: libretranslate/locales/.swag.py:39
+#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "已翻譯文字"
-#: libretranslate/locales/.swag.py:40
+#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "錯誤訊息"
-#: libretranslate/locales/.swag.py:41
+#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "速度下降的原因"
-#: libretranslate/locales/.swag.py:42
+#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "已翻譯檔案的連結"
-#: libretranslate/locales/.swag.py:43
+#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "信心值"
-#: libretranslate/locales/.swag.py:44
+#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "此語言的字元輸入限制(-1 表示無限制)"
-#: libretranslate/locales/.swag.py:45
+#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "前端翻譯逾時"
-#: libretranslate/locales/.swag.py:46
+#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "是否啟用了 API 金鑰資料庫。"
-#: libretranslate/locales/.swag.py:47
+#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "是否需要 API 金鑰。"
-#: libretranslate/locales/.swag.py:48
+#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "是否啟用了支援提交建議。"
-#: libretranslate/locales/.swag.py:49
+#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "支援的檔案格式"
-#: libretranslate/locales/.swag.py:50
+#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "送出是否成功"
#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:275
-#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:292
+#: libretranslate/templates/app.js.template:296
msgid "Copy text"
msgstr "複製文字"
-#: libretranslate/templates/app.js.template:72
-#: libretranslate/templates/app.js.template:78
-#: libretranslate/templates/app.js.template:83
-#: libretranslate/templates/app.js.template:262
-#: libretranslate/templates/app.js.template:332
-#: libretranslate/templates/app.js.template:402
-#: libretranslate/templates/app.js.template:447
+#: libretranslate/templates/app.js.template:80
+#: libretranslate/templates/app.js.template:86
+#: libretranslate/templates/app.js.template:91
+#: libretranslate/templates/app.js.template:279
+#: libretranslate/templates/app.js.template:349
+#: libretranslate/templates/app.js.template:437
+#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
msgstr "無法載入 %(url)s"
-#: libretranslate/templates/app.js.template:253
-#: libretranslate/templates/app.js.template:323
-#: libretranslate/templates/app.js.template:385
-#: libretranslate/templates/app.js.template:395
+#: libretranslate/templates/app.js.template:270
+#: libretranslate/templates/app.js.template:340
+#: libretranslate/templates/app.js.template:418
+#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
msgstr "未知錯誤"
-#: libretranslate/templates/app.js.template:276
+#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "已複製"
-#: libretranslate/templates/app.js.template:320
+#: libretranslate/templates/app.js.template:337
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr "感謝您的更正。注意此建議將不會立即生效。"
-#: libretranslate/templates/app.js.template:423
+#: libretranslate/templates/app.js.template:461
msgid "No languages available. Did you install the models correctly?"
msgstr "無可用的語言。您是否正確安裝了模型?"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "輸入您的 API 金鑰。如果您需要 API 金鑰,%(instructions)s"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "press the \"Get API Key\" link."
msgstr "點選“取得 API 金鑰”連結。"
-#: libretranslate/templates/app.js.template:479
+#: libretranslate/templates/app.js.template:528
msgid "contact the server operator."
msgstr "聯絡伺服器管理員。"
-#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25
-#: libretranslate/templates/index.html:333
+#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
+#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
msgstr "免費開源的機器翻譯 API"
#: libretranslate/templates/index.html:10
-#: libretranslate/templates/index.html:29
+#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
-msgstr "免費開源的機器翻譯 API。自建,支援離線且易於設定。只需幾分鐘即可運行您自己的 "
-"API 伺服器。"
+msgstr "免費開源的機器翻譯 API。自建,支援離線且易於設定。只需幾分鐘即可運行您自己的 API 伺服器。"
#: libretranslate/templates/index.html:11
msgid "translation"
@@ -510,141 +578,127 @@ msgstr "翻譯"
msgid "api"
msgstr "API"
-#: libretranslate/templates/index.html:64
+#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API 文件"
-#: libretranslate/templates/index.html:66
+#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "取得 API 金鑰"
-#: libretranslate/templates/index.html:68
+#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
-#: libretranslate/templates/index.html:70
+#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "設定 API 金鑰"
-#: libretranslate/templates/index.html:72
+#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "更改語言"
-#: libretranslate/templates/index.html:78
+#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "編輯"
-#: libretranslate/templates/index.html:154
+#: libretranslate/templates/index.html:83
+msgid "Toggle dark/light mode"
+msgstr ""
+
+#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "忽略"
-#: libretranslate/templates/index.html:168
+#: libretranslate/templates/index.html:173
msgid "Translation API"
msgstr "翻譯 API"
-#: libretranslate/templates/index.html:172
+#: libretranslate/templates/index.html:177
msgid "Translate Text"
msgstr "翻譯文字"
-#: libretranslate/templates/index.html:176
+#: libretranslate/templates/index.html:181
msgid "Translate Files"
msgstr "翻譯檔案"
-#: libretranslate/templates/index.html:182
+#: libretranslate/templates/index.html:187
msgid "Translate from"
msgstr "翻譯自"
-#: libretranslate/templates/index.html:192
+#: libretranslate/templates/index.html:197
msgid "Swap source and target languages"
msgstr "來源語言與目標語言互換"
-#: libretranslate/templates/index.html:195
+#: libretranslate/templates/index.html:200
msgid "Translate into"
msgstr "翻譯成"
-#: libretranslate/templates/index.html:207
+#: libretranslate/templates/index.html:212
msgid "Text to translate"
msgstr "需要翻譯的文字"
-#: libretranslate/templates/index.html:210
+#: libretranslate/templates/index.html:215
msgid "Delete text"
msgstr "刪除文字"
-#: libretranslate/templates/index.html:223
+#: libretranslate/templates/index.html:228
msgid "Suggest translation"
msgstr "建議翻譯"
-#: libretranslate/templates/index.html:227
+#: libretranslate/templates/index.html:232
msgid "Cancel"
msgstr "取消"
-#: libretranslate/templates/index.html:230
+#: libretranslate/templates/index.html:235
msgid "Send"
msgstr "送出"
-#: libretranslate/templates/index.html:246
+#: libretranslate/templates/index.html:251
msgid "Supported file formats:"
msgstr "支援的檔案格式:"
-#: libretranslate/templates/index.html:250
+#: libretranslate/templates/index.html:255
msgid "File"
msgstr "檔案"
-#: libretranslate/templates/index.html:265
+#: libretranslate/templates/index.html:270
msgid "Remove file"
msgstr "移除檔案"
-#: libretranslate/templates/index.html:272
+#: libretranslate/templates/index.html:277
msgid "Translate"
msgstr "翻譯"
-#: libretranslate/templates/index.html:273
-#: libretranslate/templates/index.html:317
+#: libretranslate/templates/index.html:278
+#: libretranslate/templates/index.html:322
msgid "Download"
msgstr "下載"
-#: libretranslate/templates/index.html:292
+#: libretranslate/templates/index.html:297
msgid "Request"
msgstr "請求"
-#: libretranslate/templates/index.html:297
+#: libretranslate/templates/index.html:302
msgid "Response"
msgstr "回應"
-#: libretranslate/templates/index.html:312
+#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
msgstr "開源的機器翻譯 API"
-#: libretranslate/templates/index.html:313
+#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "自建。可離線。容易設定。"
-#: libretranslate/templates/index.html:332
+#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
msgstr "LibreTranslate"
-#: libretranslate/templates/index.html:334
+#: libretranslate/templates/index.html:339
msgid "License:"
msgstr "授權:"
-#: libretranslate/templates/index.html:337
-#, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"此公共 API 僅適用於測試、個人或不經常使用。如果您將在正式環境中使用,請 "
-"%(host_server)s 或 %(get_api_key)s。"
-
-#: libretranslate/templates/index.html:337
-msgid "host your own server"
-msgstr "建立自己的伺服器"
-
-#: libretranslate/templates/index.html:337
-msgid "get an API key"
-msgstr "取得 API 金鑰"
-
#: libretranslate/templates/index.html:345
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
@@ -654,3 +708,23 @@ msgstr "由 %(contributors)s 用 %(heart)s 製作並且由 %(engine)s 驅動"
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s 貢獻者"
+
+#~ msgid "Vietnamese"
+#~ msgstr "越南文"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "此公共 API 僅適用於測試、個人或不經常使用。如果您將在正式環境中使用,請 "
+#~ "%(host_server)s 或 %(get_api_key)s。"
+
+#~ msgid "host your own server"
+#~ msgstr "建立自己的伺服器"
+
+#~ msgid "get an API key"
+#~ msgstr "取得 API 金鑰"
+
diff --git a/libretranslate/locales/zh_Hant/meta.json b/libretranslate/locales/zh_Hant/meta.json
new file mode 100644
index 0000000..73e357e
--- /dev/null
+++ b/libretranslate/locales/zh_Hant/meta.json
@@ -0,0 +1,4 @@
+{
+ "name": "Chinese (Traditional)",
+ "reviewed": false
+}
\ No newline at end of file
diff --git a/scripts/update_locales.py b/scripts/update_locales.py
index 42e5490..6949456 100755
--- a/scripts/update_locales.py
+++ b/scripts/update_locales.py
@@ -9,11 +9,12 @@ import re
import polib
from babel.messages.frontend import main as pybabel
from flask_swagger import swagger
+from translatehtml import translate_html
+
from libretranslate.app import create_app, get_version
from libretranslate.language import improve_translation_formatting, load_languages
from libretranslate.locales import get_available_locale_codes, swag_eval
from libretranslate.main import get_args
-from translatehtml import translate_html
# Update strings
if __name__ == "__main__":
@@ -61,7 +62,11 @@ if __name__ == "__main__":
"-o", messagespot, "libretranslate"]
pybabel()
- lang_codes = [l.code for l in languages if l.code != "en"]
+ lang_map = {
+ 'zt': 'zh_Hant'
+ }
+ lang_codes = [lang_map.get(l.code, l.code) for l in languages if l.code != "en"]
+ review_map = {}
# Init/update
for l in lang_codes:
@@ -69,17 +74,23 @@ if __name__ == "__main__":
if os.path.isdir(os.path.join(locales_dir, l, "LC_MESSAGES")):
cmd = "update"
- sys.argv = ["", cmd, "-i", messagespot, "-d", locales_dir, "-l", l]
+ sys.argv = ["", cmd, "-i", messagespot, "-d", locales_dir, "-l", l] + (["--no-fuzzy-matching"] if cmd == "update" else [])
pybabel()
meta_file = os.path.join(locales_dir, l, "meta.json")
+ reviewed = False
if not os.path.isfile(meta_file):
with open(meta_file, 'w') as f:
f.write(json.dumps({
- 'name': next(lang.name for lang in languages if lang.code == l),
+ 'name': next(lang.name for lang in languages if lang_map.get(lang.code, lang.code) == l),
'reviewed': False
}, indent=4))
print("Wrote %s" % meta_file)
+ else:
+ with open(meta_file) as f:
+ reviewed = json.loads(f.read()).get('reviewed', False)
+
+ review_map[l] = reviewed
# Automatically translate strings with libretranslate
# when a language model is available and a string is empty
@@ -89,6 +100,9 @@ if __name__ == "__main__":
for locale in locales:
if locale == 'en':
continue
+ if review_map.get(locale):
+ # Don't automatically translate reviewed languages
+ continue
tgt_lang = next((l for l in languages if l.code == locale), None)
From b8b5994425e7a17e9592933ec70bd717295a5259 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Thu, 8 Aug 2024 13:32:59 -0400
Subject: [PATCH 106/332] Fix auto translations
---
libretranslate/locales/sq/LC_MESSAGES/messages.po | 4 ++--
libretranslate/locales/tl/LC_MESSAGES/messages.po | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/libretranslate/locales/sq/LC_MESSAGES/messages.po b/libretranslate/locales/sq/LC_MESSAGES/messages.po
index ca9dcc1..f14d35b 100644
--- a/libretranslate/locales/sq/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/sq/LC_MESSAGES/messages.po
@@ -77,7 +77,7 @@ msgstr ""
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"Kërkesë e pavlefshme: %s%(size)s) tejkaloi kufirin e tekstit (%(limit)s)"
+"Kërkesë e pavlefshme: (%(size)s) tejkaloi kufirin e tekstit (%(limit)s)"
#: libretranslate/app.py:637 libretranslate/app.py:642
#: libretranslate/app.py:811 libretranslate/app.py:816
@@ -100,7 +100,7 @@ msgstr "%(tname)s (%(tcode)snuk është a %(sname)s (%(scode)s)"
#: libretranslate/app.py:701
#, python-format
msgid "Cannot translate text: %(text)s"
-msgstr "I pamundur përkthimi i tekstit: %s %(text)s"
+msgstr "I pamundur përkthimi i tekstit: %(text)s"
#: libretranslate/app.py:788 libretranslate/app.py:849
msgid "Files translation are disabled on this server."
diff --git a/libretranslate/locales/tl/LC_MESSAGES/messages.po b/libretranslate/locales/tl/LC_MESSAGES/messages.po
index 6c81a01..9224b7a 100644
--- a/libretranslate/locales/tl/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/tl/LC_MESSAGES/messages.po
@@ -78,7 +78,7 @@ msgstr "Imbalidong kahilingan: %(name)s Ang parameter ay dapat <= %(value)s"
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"Imbalidong pangalan ng programa: %s%(size)s) lumampas sa itinakdang "
+"Imbalidong pangalan ng programa: (%(size)s) lumampas sa itinakdang "
"teksto (%(limit)s)"
#: libretranslate/app.py:637 libretranslate/app.py:642
From 279b55daaf0006eabb0417f89e0ae973013abc5d Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Thu, 8 Aug 2024 13:48:11 -0400
Subject: [PATCH 107/332] Update nb
---
.../locales/nb/LC_MESSAGES/messages.po | 221 +++---
.../locales/nb_NO/LC_MESSAGES/messages.po | 679 ------------------
2 files changed, 129 insertions(+), 771 deletions(-)
delete mode 100644 libretranslate/locales/nb_NO/LC_MESSAGES/messages.po
diff --git a/libretranslate/locales/nb/LC_MESSAGES/messages.po b/libretranslate/locales/nb/LC_MESSAGES/messages.po
index ce02905..21eb37a 100644
--- a/libretranslate/locales/nb/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/nb/LC_MESSAGES/messages.po
@@ -1,19 +1,20 @@
-# Norwegian Bokmål translations for LibreTranslate.
-# Copyright (C) 2024 LibreTranslate Authors
+# Norwegian Bokmål (Norway) translations for LibreTranslate.
+# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
-# FIRST AUTHOR , 2024.
+# FIRST AUTHOR , 2023.
#
msgid ""
msgstr ""
-"Project-Id-Version: LibreTranslate 1.6.1\n"
+"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-08-08 13:24-0400\n"
-"PO-Revision-Date: 2024-08-08 13:03-0400\n"
-"Last-Translator: FULL NAME \n"
-"Language: nb\n"
-"Language-Team: nb \n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"PO-Revision-Date: 2024-03-25 12:01+0000\n"
+"Last-Translator: Kaleido Scope \n"
+"Language: nb_NO\n"
+"Language-Team: Norwegian Bokmål "
+"\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -25,15 +26,16 @@ msgstr "Ugyldig JSON-format"
#: libretranslate/app.py:180 libretranslate/templates/app.js.template:465
msgid "Auto Detect"
-msgstr "Autodeteksjon"
+msgstr "Oppdag automatisk"
#: libretranslate/app.py:273
msgid "Unauthorized"
-msgstr "Uautorisert"
+msgstr "Ikke godkjent"
#: libretranslate/app.py:291
+#, fuzzy
msgid "Too many request limits violations"
-msgstr "For mange forespørselsgrenser"
+msgstr "For mange brudd på forespørselsgrensene"
#: libretranslate/app.py:298
msgid "Invalid API key"
@@ -41,16 +43,16 @@ msgstr "Ugyldig API-nøkkel"
#: libretranslate/app.py:317
msgid "Please contact the server operator to get an API key"
-msgstr "Kontakt serveroperatøren for å få en API-nøkkel"
+msgstr "Kontakt tjeneradministrator for å få API-nøkkel"
#: libretranslate/app.py:319
#, python-format
msgid "Visit %(url)s to get an API key"
-msgstr "Besøk %(url)s å få en API-nøkkel"
+msgstr "Besøk %(url)s for å få en API-nøkkel"
#: libretranslate/app.py:366
msgid "Slowdown:"
-msgstr "Nedsettelse:"
+msgstr "Nedsakking:"
#: libretranslate/app.py:583 libretranslate/app.py:585
#: libretranslate/app.py:587 libretranslate/app.py:796
@@ -60,35 +62,35 @@ msgstr "Nedsettelse:"
#: libretranslate/app.py:1120
#, python-format
msgid "Invalid request: missing %(name)s parameter"
-msgstr "Ugyldig forespørsel: mangler %(name)s parameter"
+msgstr "Ugyldig forespørsel: manglende %(name)s-parameter"
#: libretranslate/app.py:592
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
-msgstr "Ugyldig forespørsel: %(name)s parameteren er ikke et tall"
+msgstr ""
#: libretranslate/app.py:595
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
-msgstr "Ugyldig forespørsel: %(name)s Parameteren må være <= %(value)s"
+msgstr ""
#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
-"Ugyldig forespørsel: forespørsel (%(size)s) overstiger tekstgrensen "
+"Ugyldig forespørsel: forespørselen (%(size)s) overstiger tekstgrensen "
"(%(limit)s)"
#: libretranslate/app.py:637 libretranslate/app.py:642
#: libretranslate/app.py:811 libretranslate/app.py:816
#, python-format
msgid "%(lang)s is not supported"
-msgstr "%(lang)s er ikke støttet"
+msgstr "%(lang)s støttes ikke"
#: libretranslate/app.py:648
#, python-format
msgid "%(format)s format is not supported"
-msgstr "%(format)s Format støttes ikke"
+msgstr "%(format)s-formatet støttes ikke"
#: libretranslate/app.py:657 libretranslate/app.py:681
#, python-format
@@ -105,8 +107,9 @@ msgid "Cannot translate text: %(text)s"
msgstr "Kan ikke oversette tekst: %(text)s"
#: libretranslate/app.py:788 libretranslate/app.py:849
+#, fuzzy
msgid "Files translation are disabled on this server."
-msgstr "Filoversettelsen er deaktivert på denne serveren."
+msgstr "Filoversettelse er avskrudd på denne tjeneren."
#: libretranslate/app.py:803
msgid "Invalid request: empty file"
@@ -114,7 +117,7 @@ msgstr "Ugyldig forespørsel: tom fil"
#: libretranslate/app.py:806
msgid "Invalid request: file format not supported"
-msgstr "Ugyldig forespørsel: Filformatet støttes ikke"
+msgstr "Ugyldig forespørsel: filformatet støttes ikke"
#: libretranslate/app.py:857
msgid "Invalid filename"
@@ -122,7 +125,7 @@ msgstr "Ugyldig filnavn"
#: libretranslate/app.py:1099
msgid "Suggestions are disabled on this server."
-msgstr "Forslag er deaktivert på denne serveren."
+msgstr "Forslag er deaktivert på denne tjeneren."
#: libretranslate/locales/.langs.py:1
msgid "English"
@@ -130,7 +133,7 @@ msgstr "Engelsk"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
-msgstr "Albansk"
+msgstr ""
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
@@ -142,15 +145,15 @@ msgstr "Aserbajdsjansk"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
-msgstr "Bengali"
+msgstr ""
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
-msgstr "Bulgarsk"
+msgstr ""
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
-msgstr "Katalansk"
+msgstr ""
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
@@ -158,7 +161,7 @@ msgstr "Kinesisk"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
-msgstr "Kinesisk (tradisjonell)"
+msgstr ""
#: libretranslate/locales/.langs.py:10
msgid "Czech"
@@ -178,7 +181,7 @@ msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
-msgstr "Estisk"
+msgstr ""
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
@@ -230,19 +233,19 @@ msgstr "Koreansk"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
-msgstr "Latvisk"
+msgstr ""
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
-msgstr "Litauisk"
+msgstr ""
#: libretranslate/locales/.langs.py:29
msgid "Malay"
-msgstr "Malay"
+msgstr ""
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
-msgstr "Norsk"
+msgstr ""
#: libretranslate/locales/.langs.py:31
msgid "Persian"
@@ -258,7 +261,7 @@ msgstr "Portugisisk"
#: libretranslate/locales/.langs.py:34
msgid "Romanian"
-msgstr "Rumensk"
+msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Russian"
@@ -270,7 +273,7 @@ msgstr "Slovakisk"
#: libretranslate/locales/.langs.py:37
msgid "Slovenian"
-msgstr "Slovensk"
+msgstr ""
#: libretranslate/locales/.langs.py:38
msgid "Spanish"
@@ -282,11 +285,11 @@ msgstr "Svensk"
#: libretranslate/locales/.langs.py:40
msgid "Tagalog"
-msgstr "Tagalog"
+msgstr ""
#: libretranslate/locales/.langs.py:41
msgid "Thai"
-msgstr "Thailandsk"
+msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Turkish"
@@ -298,23 +301,24 @@ msgstr "Ukrainsk"
#: libretranslate/locales/.langs.py:44
msgid "Urdu"
-msgstr "Urdu"
+msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
-msgstr "Hent listen over støttede språk"
+msgstr "Hent liste over støttede språk"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
-msgstr "Liste over språk"
+msgstr "Språkliste"
#: libretranslate/locales/.swag.py:3
+#, fuzzy
msgid "translate"
-msgstr "oversett"
+msgstr "oversettelse"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
-msgstr "Oversett tekst fra et språk til et annet"
+msgstr "Oversett tekst fra ett språk til et annet"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:224
msgid "Translated text"
@@ -329,12 +333,13 @@ msgid "Translation error"
msgstr "Oversettelsesfeil"
#: libretranslate/locales/.swag.py:8
+#, fuzzy
msgid "Slow down"
-msgstr "Sakte ned"
+msgstr "Sakk ned"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
-msgstr "Forbudt"
+msgstr "Bannlyst"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
@@ -346,7 +351,7 @@ msgstr "Tekst(er) å oversette"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
-msgstr "Kildespråkkode"
+msgstr "Kilde-språkkode"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
@@ -358,7 +363,7 @@ msgstr "tekst"
#: libretranslate/locales/.swag.py:15
msgid "html"
-msgstr "html"
+msgstr "HTML"
#: libretranslate/locales/.swag.py:16
msgid ""
@@ -367,12 +372,12 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"Format for kildetekst:\n"
-"* `tekst` - vanlig tekst\n"
-"* `html` - HTML-merking\n"
+" * `text` — klartekst\n"
+" * `html` — HTML-oppmerking\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
-msgstr "Foretrukket antall alternative oversettelser"
+msgstr ""
#: libretranslate/locales/.swag.py:18
msgid "API key"
@@ -380,7 +385,7 @@ msgstr "API-nøkkel"
#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
-msgstr "Oversett fil fra et språk til et annet"
+msgstr "Oversett fil fra ett språk til et annet"
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
@@ -392,7 +397,7 @@ msgstr "Fil å oversette"
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
-msgstr "Finn språket i en enkelt tekst"
+msgstr "Oppdag språk for enkelt tekst"
#: libretranslate/locales/.swag.py:23
msgid "Detections"
@@ -400,7 +405,7 @@ msgstr "Oppdagelser"
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
-msgstr "Oppdagingsfeil"
+msgstr "Oppdagelsesfeil"
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
@@ -408,27 +413,27 @@ msgstr "Tekst å oppdage"
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
-msgstr "Hent spesifikke innstillinger"
+msgstr "Hent skjermflate-spesifikke innstillinger"
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
-msgstr "frontend innstillinger"
+msgstr "skjermflate-innstillinger"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
-msgstr "frontend"
+msgstr "skjermflate"
#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
-msgstr "Send et forslag til forbedring av oversettelsen"
+msgstr "Send inn et forslag om forbedring av en oversettelse"
#: libretranslate/locales/.swag.py:30
msgid "Success"
-msgstr "Suksess"
+msgstr "Vellykket"
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
-msgstr "Ikke autorisert"
+msgstr "Ikke godkjent"
#: libretranslate/locales/.swag.py:32
msgid "Original text"
@@ -440,11 +445,11 @@ msgstr "Foreslått oversettelse"
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
-msgstr "Språk i originaltekst"
+msgstr "Originaltekstens språk"
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
-msgstr "Språk av foreslått oversettelse"
+msgstr "Språk for foreslått oversettelse"
#: libretranslate/locales/.swag.py:36
msgid "feedback"
@@ -456,7 +461,7 @@ msgstr "Språkkode"
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
-msgstr "Navn på menneskeleselig språk (på engelsk)"
+msgstr "Menneskelesbart språknavn (på engelsk)"
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
@@ -464,7 +469,7 @@ msgstr "Støttede målspråkkoder"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
-msgstr "Oversatt tekst(er)"
+msgstr "Oversatt(e) tekst(er)"
#: libretranslate/locales/.swag.py:41
msgid "Error message"
@@ -472,11 +477,12 @@ msgstr "Feilmelding"
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
-msgstr "Grunn til å bremse"
+msgstr "Grunn for nedsakking"
#: libretranslate/locales/.swag.py:43
+#, fuzzy
msgid "Translated file url"
-msgstr "Oversatt fil url"
+msgstr "Oversatt fil-nettadresse"
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
@@ -484,31 +490,35 @@ msgstr "Tillitsverdi"
#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr "Inngangsgrense for tegn for dette språket (-1 indikerer ingen grense)"
+msgstr "Tegnbegrensning for dette språket (-1 indikerer ingen grense)"
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
-msgstr "Frontend oversettelse tidsavbrudd"
+msgstr "Tidsavbrudd for skjermflateoversettelse"
#: libretranslate/locales/.swag.py:47
+#, fuzzy
msgid "Whether the API key database is enabled."
-msgstr "Om API-nøkkeldatabasen er aktivert."
+msgstr "Hvorvidt API-nøkkeldatabasen er påskrudd."
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
-msgstr "Hvorvidt det kreves en API-nøkkel."
+msgstr "Hvorvidt en API-nøkkel kreves."
#: libretranslate/locales/.swag.py:49
+#, fuzzy
msgid "Whether submitting suggestions is enabled."
-msgstr "Om det er mulig å sende inn forslag."
+msgstr "Hvorvidt innsendelse av forslag tillates."
#: libretranslate/locales/.swag.py:50
+#, fuzzy
msgid "Supported files format"
-msgstr "Støttet filformat"
+msgstr "Støttede filformater"
#: libretranslate/locales/.swag.py:51
+#, fuzzy
msgid "Whether submission was successful"
-msgstr "Hvorvidt innleveringen var vellykket"
+msgstr "Hvorvidt innsendelsen var vellykket"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:292
@@ -525,48 +535,52 @@ msgstr "Kopier tekst"
#: libretranslate/templates/app.js.template:485
#, python-format
msgid "Cannot load %(url)s"
-msgstr "Kan ikke laste %(url)s"
+msgstr "Kan ikke laste inn %(url)s"
#: libretranslate/templates/app.js.template:270
#: libretranslate/templates/app.js.template:340
#: libretranslate/templates/app.js.template:418
#: libretranslate/templates/app.js.template:429
msgid "Unknown error"
-msgstr "Ukjend feil"
+msgstr "Ukjent feil"
#: libretranslate/templates/app.js.template:293
msgid "Copied"
msgstr "Kopiert"
#: libretranslate/templates/app.js.template:337
+#, fuzzy
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
-"Takk for rettelsen. Legg merke til at forslaget ikke vil tre i kraft "
+"Takk for korrigeringen. Merk at forslaget ikke vil tre i kraft "
"umiddelbart."
#: libretranslate/templates/app.js.template:461
+#, fuzzy
msgid "No languages available. Did you install the models correctly?"
-msgstr "Ingen språk tilgjengelig. Har du installert modellene riktig?"
+msgstr "Ingen tilgjengelige språk. Har du installert modellene riktig?"
#: libretranslate/templates/app.js.template:528
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr "Skriv inn API-nøkkelen. Hvis du trenger en API-nøkkel, %(instructions)s"
+msgstr "Skriv inn din API-nøkkel. Hvis du trenger en API-nøkkel, %(instructions)s"
#: libretranslate/templates/app.js.template:528
+#, fuzzy
msgid "press the \"Get API Key\" link."
-msgstr "trykk på \"Get API-tasten\" lenke."
+msgstr "trykk på «Hent API-nøkkel»-lenken."
#: libretranslate/templates/app.js.template:528
+#, fuzzy
msgid "contact the server operator."
-msgstr "kontakt serveroperatøren."
+msgstr "kontakt tjeneradministratoren."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:338
msgid "Free and Open Source Machine Translation API"
-msgstr "Gratis og åpen kilde Machine Oversettelse API"
+msgstr "Fritt maskinoversettelses-API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
@@ -574,24 +588,26 @@ msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
-"Gratis og åpen kildemaskin Oversettelse API. Selvvært, offline kapabel og"
-" enkel å konfigurere. Kjør din egen API-server på bare noen minutter."
+"Fritt maskinoversettelses-API. Selvtjent, mulighet for frakoblet modus, "
+"og enkelt oppsett. Kjør din egen API-tjener i løpet av minutter."
#: libretranslate/templates/index.html:11
msgid "translation"
msgstr "oversettelse"
#: libretranslate/templates/index.html:11
+#, fuzzy
msgid "api"
-msgstr "api"
+msgstr "API"
#: libretranslate/templates/index.html:67
+#, fuzzy
msgid "API Docs"
-msgstr "API Docs"
+msgstr "API-dokumentasjon"
#: libretranslate/templates/index.html:69
msgid "Get API Key"
-msgstr "Få API Nøkkel"
+msgstr "Hent API-nøkkel"
#: libretranslate/templates/index.html:71
msgid "GitHub"
@@ -599,7 +615,7 @@ msgstr "GitHub"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
-msgstr "Sett API Nøkkel"
+msgstr "Sett API-nøkkel"
#: libretranslate/templates/index.html:75
msgid "Change language"
@@ -611,15 +627,15 @@ msgstr "Rediger"
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
-msgstr "Slå av/på mørk/lysmodus"
+msgstr ""
#: libretranslate/templates/index.html:159
msgid "Dismiss"
-msgstr "Utstyr"
+msgstr "Avslå"
#: libretranslate/templates/index.html:173
msgid "Translation API"
-msgstr "Oversettelse API"
+msgstr "Oversettelses-API"
#: libretranslate/templates/index.html:177
msgid "Translate Text"
@@ -692,11 +708,11 @@ msgstr "Svar"
#: libretranslate/templates/index.html:317
msgid "Open Source Machine Translation API"
-msgstr "Open Source Machine Oversettelse API"
+msgstr "Fritt maskinoversettelses-API"
#: libretranslate/templates/index.html:318
msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr "Selvvært. Offline Capable. Lett å konfigurere."
+msgstr "Selvtjent. Muligheter for frakoblet modus. Enkelt oppsett."
#: libretranslate/templates/index.html:337
msgid "LibreTranslate"
@@ -714,5 +730,26 @@ msgstr "Laget med %(heart)s av %(contributors)s og drevet av %(engine)s"
#: libretranslate/templates/index.html:345
#, python-format
msgid "%(libretranslate)s Contributors"
-msgstr "%(libretranslate)s Bidragsytere"
+msgstr "%(libretranslate)s-bidgragsytere"
+
+#~ msgid "Vietnamese"
+#~ msgstr "Vietnamesisk"
+
+#~ msgid ""
+#~ "This public API should be used for"
+#~ " testing, personal or infrequent use. "
+#~ "If you're going to run an "
+#~ "application in production, please "
+#~ "%(host_server)s or %(get_api_key)s."
+#~ msgstr ""
+#~ "Dette offentlige API-et er tiltenkt "
+#~ "testing, personlig, eller sjelden bruk. "
+#~ "Hvis du vil kjøre et program i "
+#~ "produksjon, %(host_server)s, eller %(get_api_key)s."
+
+#~ msgid "host your own server"
+#~ msgstr "vertstjen din egen tjener"
+
+#~ msgid "get an API key"
+#~ msgstr "hent en API-nøkkel"
diff --git a/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po b/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po
deleted file mode 100644
index 01330bf..0000000
--- a/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po
+++ /dev/null
@@ -1,679 +0,0 @@
-# Translations template for LibreTranslate.
-# Copyright (C) 2023 LibreTranslate Authors
-# This file is distributed under the same license as the LibreTranslate
-# project.
-# FIRST AUTHOR , 2023.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: LibreTranslate 1.3.9\n"
-"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2023-01-06 17:52-0500\n"
-"PO-Revision-Date: 2024-03-25 12:01+0000\n"
-"Last-Translator: Kaleido Scope \n"
-"Language-Team: Norwegian Bokmål \n"
-"Language: nb_NO\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 5.5-dev\n"
-"Generated-By: Babel 2.11.0\n"
-
-#: libretranslate/app.py:60
-msgid "Invalid JSON format"
-msgstr "Ugyldig JSON-format"
-
-#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
-msgid "Auto Detect"
-msgstr "Oppdag automatisk"
-
-#: libretranslate/app.py:193
-msgid "Unauthorized"
-msgstr "Ikke godkjent"
-
-#: libretranslate/app.py:211
-#, fuzzy
-msgid "Too many request limits violations"
-msgstr "For mange brudd på forespørselsgrensene"
-
-#: libretranslate/app.py:220
-msgid "Invalid API key"
-msgstr "Ugyldig API-nøkkel"
-
-#: libretranslate/app.py:227
-msgid "Please contact the server operator to get an API key"
-msgstr "Kontakt tjeneradministrator for å få API-nøkkel"
-
-#: libretranslate/app.py:229
-#, python-format
-msgid "Visit %(url)s to get an API key"
-msgstr "Besøk %(url)s for å få en API-nøkkel"
-
-#: libretranslate/app.py:269
-msgid "Slowdown:"
-msgstr "Nedsakking:"
-
-#: libretranslate/app.py:467 libretranslate/app.py:469
-#: libretranslate/app.py:471 libretranslate/app.py:683
-#: libretranslate/app.py:685 libretranslate/app.py:687
-#: libretranslate/app.py:838 libretranslate/app.py:987
-#: libretranslate/app.py:989 libretranslate/app.py:991
-#: libretranslate/app.py:993
-#, python-format
-msgid "Invalid request: missing %(name)s parameter"
-msgstr "Ugyldig forespørsel: manglende %(name)s-parameter"
-
-#: libretranslate/app.py:480 libretranslate/app.py:492
-#, python-format
-msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
-msgstr ""
-"Ugyldig forespørsel: forespørselen (%(size)s) overstiger tekstgrensen "
-"(%(limit)s)"
-
-#: libretranslate/app.py:525 libretranslate/app.py:530
-#: libretranslate/app.py:700 libretranslate/app.py:705
-#, python-format
-msgid "%(lang)s is not supported"
-msgstr "%(lang)s støttes ikke"
-
-#: libretranslate/app.py:536
-#, python-format
-msgid "%(format)s format is not supported"
-msgstr "%(format)s-formatet støttes ikke"
-
-#: libretranslate/app.py:544 libretranslate/app.py:568
-#, python-format
-msgid ""
-"%(tname)s (%(tcode)s) is not available as a target language from "
-"%(sname)s (%(scode)s)"
-msgstr ""
-"%(tname)s (%(tcode)s) er ikke tilgjengelig som målspråk fra %(sname)s "
-"(%(scode)s)"
-
-#: libretranslate/app.py:589
-#, python-format
-msgid "Cannot translate text: %(text)s"
-msgstr "Kan ikke oversette tekst: %(text)s"
-
-#: libretranslate/app.py:676 libretranslate/app.py:730
-#, fuzzy
-msgid "Files translation are disabled on this server."
-msgstr "Filoversettelse er avskrudd på denne tjeneren."
-
-#: libretranslate/app.py:690
-msgid "Invalid request: empty file"
-msgstr "Ugyldig forespørsel: tom fil"
-
-#: libretranslate/app.py:693
-msgid "Invalid request: file format not supported"
-msgstr "Ugyldig forespørsel: filformatet støttes ikke"
-
-#: libretranslate/app.py:738
-msgid "Invalid filename"
-msgstr "Ugyldig filnavn"
-
-#: libretranslate/app.py:979
-msgid "Suggestions are disabled on this server."
-msgstr "Forslag er deaktivert på denne tjeneren."
-
-#: libretranslate/locales/.langs.py:1
-msgid "English"
-msgstr "Engelsk"
-
-#: libretranslate/locales/.langs.py:2
-msgid "Arabic"
-msgstr "Arabisk"
-
-#: libretranslate/locales/.langs.py:3
-msgid "Azerbaijani"
-msgstr "Aserbajdsjansk"
-
-#: libretranslate/locales/.langs.py:4
-msgid "Chinese"
-msgstr "Kinesisk"
-
-#: libretranslate/locales/.langs.py:5
-msgid "Czech"
-msgstr "Tsjekkisk"
-
-#: libretranslate/locales/.langs.py:6
-msgid "Danish"
-msgstr "Dansk"
-
-#: libretranslate/locales/.langs.py:7
-msgid "Dutch"
-msgstr "Nederlandsk"
-
-#: libretranslate/locales/.langs.py:8
-msgid "Esperanto"
-msgstr "Esperanto"
-
-#: libretranslate/locales/.langs.py:9
-msgid "Finnish"
-msgstr "Finsk"
-
-#: libretranslate/locales/.langs.py:10
-msgid "French"
-msgstr "Fransk"
-
-#: libretranslate/locales/.langs.py:11
-msgid "German"
-msgstr "Tysk"
-
-#: libretranslate/locales/.langs.py:12
-msgid "Greek"
-msgstr "Gresk"
-
-#: libretranslate/locales/.langs.py:13
-msgid "Hebrew"
-msgstr "Hebraisk"
-
-#: libretranslate/locales/.langs.py:14
-msgid "Hindi"
-msgstr "Hindi"
-
-#: libretranslate/locales/.langs.py:15
-msgid "Hungarian"
-msgstr "Ungarsk"
-
-#: libretranslate/locales/.langs.py:16
-msgid "Indonesian"
-msgstr "Indonesisk"
-
-#: libretranslate/locales/.langs.py:17
-msgid "Irish"
-msgstr "Irsk"
-
-#: libretranslate/locales/.langs.py:18
-msgid "Italian"
-msgstr "Italiensk"
-
-#: libretranslate/locales/.langs.py:19
-msgid "Japanese"
-msgstr "Japansk"
-
-#: libretranslate/locales/.langs.py:20
-msgid "Korean"
-msgstr "Koreansk"
-
-#: libretranslate/locales/.langs.py:21
-msgid "Persian"
-msgstr "Persisk"
-
-#: libretranslate/locales/.langs.py:22
-msgid "Polish"
-msgstr "Polsk"
-
-#: libretranslate/locales/.langs.py:23
-msgid "Portuguese"
-msgstr "Portugisisk"
-
-#: libretranslate/locales/.langs.py:24
-msgid "Russian"
-msgstr "Russisk"
-
-#: libretranslate/locales/.langs.py:25
-msgid "Slovak"
-msgstr "Slovakisk"
-
-#: libretranslate/locales/.langs.py:26
-msgid "Spanish"
-msgstr "Spansk"
-
-#: libretranslate/locales/.langs.py:27
-msgid "Swedish"
-msgstr "Svensk"
-
-#: libretranslate/locales/.langs.py:28
-msgid "Turkish"
-msgstr "Tyrkisk"
-
-#: libretranslate/locales/.langs.py:29
-msgid "Ukranian"
-msgstr "Ukrainsk"
-
-#: libretranslate/locales/.langs.py:30
-msgid "Vietnamese"
-msgstr "Vietnamesisk"
-
-#: libretranslate/locales/.swag.py:1
-msgid "Retrieve list of supported languages"
-msgstr "Hent liste over støttede språk"
-
-#: libretranslate/locales/.swag.py:2
-msgid "List of languages"
-msgstr "Språkliste"
-
-#: libretranslate/locales/.swag.py:3
-#, fuzzy
-msgid "translate"
-msgstr "oversettelse"
-
-#: libretranslate/locales/.swag.py:4
-msgid "Translate text from a language to another"
-msgstr "Oversett tekst fra ett språk til et annet"
-
-#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219
-msgid "Translated text"
-msgstr "Oversatt tekst"
-
-#: libretranslate/locales/.swag.py:6
-msgid "Invalid request"
-msgstr "Ugyldig forespørsel"
-
-#: libretranslate/locales/.swag.py:7
-msgid "Translation error"
-msgstr "Oversettelsesfeil"
-
-#: libretranslate/locales/.swag.py:8
-#, fuzzy
-msgid "Slow down"
-msgstr "Sakk ned"
-
-#: libretranslate/locales/.swag.py:9
-msgid "Banned"
-msgstr "Bannlyst"
-
-#: libretranslate/locales/.swag.py:10
-msgid "Hello world!"
-msgstr "Hei verden!"
-
-#: libretranslate/locales/.swag.py:11
-msgid "Text(s) to translate"
-msgstr "Tekst(er) å oversette"
-
-#: libretranslate/locales/.swag.py:12
-msgid "Source language code"
-msgstr "Kilde-språkkode"
-
-#: libretranslate/locales/.swag.py:13
-msgid "Target language code"
-msgstr "Målspråkkode"
-
-#: libretranslate/locales/.swag.py:14
-msgid "text"
-msgstr "tekst"
-
-#: libretranslate/locales/.swag.py:15
-msgid "html"
-msgstr "HTML"
-
-#: libretranslate/locales/.swag.py:16
-msgid ""
-"Format of source text:\n"
-" * `text` - Plain text\n"
-" * `html` - HTML markup\n"
-msgstr ""
-"Format for kildetekst:\n"
-" * `text` — klartekst\n"
-" * `html` — HTML-oppmerking\n"
-
-#: libretranslate/locales/.swag.py:17
-msgid "API key"
-msgstr "API-nøkkel"
-
-#: libretranslate/locales/.swag.py:18
-msgid "Translate file from a language to another"
-msgstr "Oversett fil fra ett språk til et annet"
-
-#: libretranslate/locales/.swag.py:19
-msgid "Translated file"
-msgstr "Oversatt fil"
-
-#: libretranslate/locales/.swag.py:20
-msgid "File to translate"
-msgstr "Fil å oversette"
-
-#: libretranslate/locales/.swag.py:21
-msgid "Detect the language of a single text"
-msgstr "Oppdag språk for enkelt tekst"
-
-#: libretranslate/locales/.swag.py:22
-msgid "Detections"
-msgstr "Oppdagelser"
-
-#: libretranslate/locales/.swag.py:23
-msgid "Detection error"
-msgstr "Oppdagelsesfeil"
-
-#: libretranslate/locales/.swag.py:24
-msgid "Text to detect"
-msgstr "Tekst å oppdage"
-
-#: libretranslate/locales/.swag.py:25
-msgid "Retrieve frontend specific settings"
-msgstr "Hent skjermflate-spesifikke innstillinger"
-
-#: libretranslate/locales/.swag.py:26
-msgid "frontend settings"
-msgstr "skjermflate-innstillinger"
-
-#: libretranslate/locales/.swag.py:27
-msgid "frontend"
-msgstr "skjermflate"
-
-#: libretranslate/locales/.swag.py:28
-msgid "Submit a suggestion to improve a translation"
-msgstr "Send inn et forslag om forbedring av en oversettelse"
-
-#: libretranslate/locales/.swag.py:29
-msgid "Success"
-msgstr "Vellykket"
-
-#: libretranslate/locales/.swag.py:30
-msgid "Not authorized"
-msgstr "Ikke godkjent"
-
-#: libretranslate/locales/.swag.py:31
-msgid "Original text"
-msgstr "Opprinnelig tekst"
-
-#: libretranslate/locales/.swag.py:32
-msgid "Suggested translation"
-msgstr "Foreslått oversettelse"
-
-#: libretranslate/locales/.swag.py:33
-msgid "Language of original text"
-msgstr "Originaltekstens språk"
-
-#: libretranslate/locales/.swag.py:34
-msgid "Language of suggested translation"
-msgstr "Språk for foreslått oversettelse"
-
-#: libretranslate/locales/.swag.py:35
-msgid "feedback"
-msgstr "tilbakemelding"
-
-#: libretranslate/locales/.swag.py:36
-msgid "Language code"
-msgstr "Språkkode"
-
-#: libretranslate/locales/.swag.py:37
-msgid "Human-readable language name (in English)"
-msgstr "Menneskelesbart språknavn (på engelsk)"
-
-#: libretranslate/locales/.swag.py:38
-msgid "Supported target language codes"
-msgstr "Støttede målspråkkoder"
-
-#: libretranslate/locales/.swag.py:39
-msgid "Translated text(s)"
-msgstr "Oversatt(e) tekst(er)"
-
-#: libretranslate/locales/.swag.py:40
-msgid "Error message"
-msgstr "Feilmelding"
-
-#: libretranslate/locales/.swag.py:41
-msgid "Reason for slow down"
-msgstr "Grunn for nedsakking"
-
-#: libretranslate/locales/.swag.py:42
-#, fuzzy
-msgid "Translated file url"
-msgstr "Oversatt fil-nettadresse"
-
-#: libretranslate/locales/.swag.py:43
-msgid "Confidence value"
-msgstr "Tillitsverdi"
-
-#: libretranslate/locales/.swag.py:44
-msgid "Character input limit for this language (-1 indicates no limit)"
-msgstr "Tegnbegrensning for dette språket (-1 indikerer ingen grense)"
-
-#: libretranslate/locales/.swag.py:45
-msgid "Frontend translation timeout"
-msgstr "Tidsavbrudd for skjermflateoversettelse"
-
-#: libretranslate/locales/.swag.py:46
-#, fuzzy
-msgid "Whether the API key database is enabled."
-msgstr "Hvorvidt API-nøkkeldatabasen er påskrudd."
-
-#: libretranslate/locales/.swag.py:47
-msgid "Whether an API key is required."
-msgstr "Hvorvidt en API-nøkkel kreves."
-
-#: libretranslate/locales/.swag.py:48
-#, fuzzy
-msgid "Whether submitting suggestions is enabled."
-msgstr "Hvorvidt innsendelse av forslag tillates."
-
-#: libretranslate/locales/.swag.py:49
-#, fuzzy
-msgid "Supported files format"
-msgstr "Støttede filformater"
-
-#: libretranslate/locales/.swag.py:50
-#, fuzzy
-msgid "Whether submission was successful"
-msgstr "Hvorvidt innsendelsen var vellykket"
-
-#: libretranslate/templates/app.js.template:31
-#: libretranslate/templates/app.js.template:275
-#: libretranslate/templates/app.js.template:279
-msgid "Copy text"
-msgstr "Kopier tekst"
-
-#: libretranslate/templates/app.js.template:72
-#: libretranslate/templates/app.js.template:78
-#: libretranslate/templates/app.js.template:83
-#: libretranslate/templates/app.js.template:262
-#: libretranslate/templates/app.js.template:332
-#: libretranslate/templates/app.js.template:402
-#: libretranslate/templates/app.js.template:447
-#, python-format
-msgid "Cannot load %(url)s"
-msgstr "Kan ikke laste inn %(url)s"
-
-#: libretranslate/templates/app.js.template:253
-#: libretranslate/templates/app.js.template:323
-#: libretranslate/templates/app.js.template:385
-#: libretranslate/templates/app.js.template:395
-msgid "Unknown error"
-msgstr "Ukjent feil"
-
-#: libretranslate/templates/app.js.template:276
-msgid "Copied"
-msgstr "Kopiert"
-
-#: libretranslate/templates/app.js.template:320
-#, fuzzy
-msgid ""
-"Thanks for your correction. Note the suggestion will not take effect "
-"right away."
-msgstr ""
-"Takk for korrigeringen. Merk at forslaget ikke vil tre i kraft umiddelbart."
-
-#: libretranslate/templates/app.js.template:423
-#, fuzzy
-msgid "No languages available. Did you install the models correctly?"
-msgstr "Ingen tilgjengelige språk. Har du installert modellene riktig?"
-
-#: libretranslate/templates/app.js.template:479
-#, python-format
-msgid "Type in your API Key. If you need an API key, %(instructions)s"
-msgstr ""
-"Skriv inn din API-nøkkel. Hvis du trenger en API-nøkkel, %(instructions)s"
-
-#: libretranslate/templates/app.js.template:479
-#, fuzzy
-msgid "press the \"Get API Key\" link."
-msgstr "trykk på «Hent API-nøkkel»-lenken."
-
-#: libretranslate/templates/app.js.template:479
-#, fuzzy
-msgid "contact the server operator."
-msgstr "kontakt tjeneradministratoren."
-
-#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25
-#: libretranslate/templates/index.html:333
-msgid "Free and Open Source Machine Translation API"
-msgstr "Fritt maskinoversettelses-API"
-
-#: libretranslate/templates/index.html:10
-#: libretranslate/templates/index.html:29
-msgid ""
-"Free and Open Source Machine Translation API. Self-hosted, offline "
-"capable and easy to setup. Run your own API server in just a few minutes."
-msgstr ""
-"Fritt maskinoversettelses-API. Selvtjent, mulighet for frakoblet modus, og "
-"enkelt oppsett. Kjør din egen API-tjener i løpet av minutter."
-
-#: libretranslate/templates/index.html:11
-msgid "translation"
-msgstr "oversettelse"
-
-#: libretranslate/templates/index.html:11
-#, fuzzy
-msgid "api"
-msgstr "API"
-
-#: libretranslate/templates/index.html:64
-#, fuzzy
-msgid "API Docs"
-msgstr "API-dokumentasjon"
-
-#: libretranslate/templates/index.html:66
-msgid "Get API Key"
-msgstr "Hent API-nøkkel"
-
-#: libretranslate/templates/index.html:68
-msgid "GitHub"
-msgstr "GitHub"
-
-#: libretranslate/templates/index.html:70
-msgid "Set API Key"
-msgstr "Sett API-nøkkel"
-
-#: libretranslate/templates/index.html:72
-msgid "Change language"
-msgstr "Endre språk"
-
-#: libretranslate/templates/index.html:78
-msgid "Edit"
-msgstr "Rediger"
-
-#: libretranslate/templates/index.html:154
-msgid "Dismiss"
-msgstr "Avslå"
-
-#: libretranslate/templates/index.html:168
-msgid "Translation API"
-msgstr "Oversettelses-API"
-
-#: libretranslate/templates/index.html:172
-msgid "Translate Text"
-msgstr "Oversett tekst"
-
-#: libretranslate/templates/index.html:176
-msgid "Translate Files"
-msgstr "Oversett filer"
-
-#: libretranslate/templates/index.html:182
-msgid "Translate from"
-msgstr "Oversett fra"
-
-#: libretranslate/templates/index.html:192
-msgid "Swap source and target languages"
-msgstr "Bytt kilde- og målspråk"
-
-#: libretranslate/templates/index.html:195
-msgid "Translate into"
-msgstr "Oversett til"
-
-#: libretranslate/templates/index.html:207
-msgid "Text to translate"
-msgstr "Tekst å oversette"
-
-#: libretranslate/templates/index.html:210
-msgid "Delete text"
-msgstr "Slett tekst"
-
-#: libretranslate/templates/index.html:223
-msgid "Suggest translation"
-msgstr "Foreslå oversettelse"
-
-#: libretranslate/templates/index.html:227
-msgid "Cancel"
-msgstr "Avbryt"
-
-#: libretranslate/templates/index.html:230
-msgid "Send"
-msgstr "Send"
-
-#: libretranslate/templates/index.html:246
-msgid "Supported file formats:"
-msgstr "Støttede filformater:"
-
-#: libretranslate/templates/index.html:250
-msgid "File"
-msgstr "Fil"
-
-#: libretranslate/templates/index.html:265
-msgid "Remove file"
-msgstr "Fjern fil"
-
-#: libretranslate/templates/index.html:272
-msgid "Translate"
-msgstr "Oversett"
-
-#: libretranslate/templates/index.html:273
-#: libretranslate/templates/index.html:317
-msgid "Download"
-msgstr "Last ned"
-
-#: libretranslate/templates/index.html:292
-msgid "Request"
-msgstr "Forespørsel"
-
-#: libretranslate/templates/index.html:297
-msgid "Response"
-msgstr "Svar"
-
-#: libretranslate/templates/index.html:312
-msgid "Open Source Machine Translation API"
-msgstr "Fritt maskinoversettelses-API"
-
-#: libretranslate/templates/index.html:313
-msgid "Self-Hosted. Offline Capable. Easy to Setup."
-msgstr "Selvtjent. Muligheter for frakoblet modus. Enkelt oppsett."
-
-#: libretranslate/templates/index.html:332
-msgid "LibreTranslate"
-msgstr "LibreTranslate"
-
-#: libretranslate/templates/index.html:334
-msgid "License:"
-msgstr "Lisens:"
-
-#: libretranslate/templates/index.html:337
-#, fuzzy, python-format
-msgid ""
-"This public API should be used for testing, personal or infrequent use. "
-"If you're going to run an application in production, please "
-"%(host_server)s or %(get_api_key)s."
-msgstr ""
-"Dette offentlige API-et er tiltenkt testing, personlig, eller sjelden bruk. "
-"Hvis du vil kjøre et program i produksjon, %(host_server)s, eller "
-"%(get_api_key)s."
-
-#: libretranslate/templates/index.html:337
-msgid "host your own server"
-msgstr "vertstjen din egen tjener"
-
-#: libretranslate/templates/index.html:337
-msgid "get an API key"
-msgstr "hent en API-nøkkel"
-
-#: libretranslate/templates/index.html:345
-#, python-format
-msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
-msgstr "Laget med %(heart)s av %(contributors)s og drevet av %(engine)s"
-
-#: libretranslate/templates/index.html:345
-#, python-format
-msgid "%(libretranslate)s Contributors"
-msgstr "%(libretranslate)s-bidgragsytere"
From 4c541cc513ec098d61b20c8b838874c36fef6b98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?O=C4=9Fuz=20Ersen?=
Date: Thu, 8 Aug 2024 17:48:01 +0000
Subject: [PATCH 108/332] Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
---
.../locales/tr/LC_MESSAGES/messages.po | 32 ++++++++++---------
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/libretranslate/locales/tr/LC_MESSAGES/messages.po b/libretranslate/locales/tr/LC_MESSAGES/messages.po
index 4e699a9..66d8736 100644
--- a/libretranslate/locales/tr/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/tr/LC_MESSAGES/messages.po
@@ -9,14 +9,16 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-08-08 13:24-0400\n"
-"PO-Revision-Date: 2023-02-27 19:38+0000\n"
+"PO-Revision-Date: 2024-08-08 17:48+0000\n"
"Last-Translator: Oğuz Ersen \n"
-"Language-Team: Turkish \n"
+"Language-Team: Turkish \n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.15.0\n"
#: libretranslate/app.py:80
@@ -66,14 +68,14 @@ msgstr "Geçersiz istek: eksik %(name)s parametresi"
#: libretranslate/app.py:592
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
-msgstr "Invalid isteği: 0 0 0 0 parametre bir sayı değildir %(name)s"
+msgstr "Geçersiz istek: %(name)s parametresi bir sayı değil"
#: libretranslate/app.py:595
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
-"Invalid isteği: 0 0 0 0 parametre <= 1 1 1 %(name)s "
-"%(value)s"
+"Geçersiz istek: %(name)s parametresi %(value)s değerinden küçük veya eşit "
+"olmalı"
#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
@@ -131,7 +133,7 @@ msgstr "İngilizce"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
-msgstr "Arnavutlar"
+msgstr "Arnavutça"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
@@ -143,15 +145,15 @@ msgstr "Azerice"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
-msgstr "Bengali"
+msgstr "Bengalce"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
-msgstr "Bulgar"
+msgstr "Bulgarca"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
-msgstr "Katalan"
+msgstr "Katalanca"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
@@ -159,7 +161,7 @@ msgstr "Çince"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
-msgstr "Çin (geleneksel)"
+msgstr "Çince (geleneksel)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
@@ -179,7 +181,7 @@ msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
-msgstr "Estonya"
+msgstr "Estonca"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
@@ -231,19 +233,19 @@ msgstr "Korece"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
-msgstr "Letonya"
+msgstr "Letonca"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
-msgstr "Litvanyalı"
+msgstr "Litvanyaca"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
-msgstr "Malay"
+msgstr "Malayca"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
-msgstr "Norveç"
+msgstr "Norveççe"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
From d8c3bebdfccf95e71f4c43f5148f6f385b13fa90 Mon Sep 17 00:00:00 2001
From: Fqwe1
Date: Thu, 8 Aug 2024 17:46:24 +0000
Subject: [PATCH 109/332] Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
---
.../locales/uk/LC_MESSAGES/messages.po | 28 +++++++++----------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/libretranslate/locales/uk/LC_MESSAGES/messages.po b/libretranslate/locales/uk/LC_MESSAGES/messages.po
index 08b3d36..b3a70ff 100644
--- a/libretranslate/locales/uk/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/uk/LC_MESSAGES/messages.po
@@ -9,16 +9,17 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-08-08 13:24-0400\n"
-"PO-Revision-Date: 2023-11-26 07:04+0000\n"
+"PO-Revision-Date: 2024-08-08 17:48+0000\n"
"Last-Translator: Fqwe1 \n"
+"Language-Team: Ukrainian \n"
"Language: uk\n"
-"Language-Team: Ukrainian "
-"\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.15.0\n"
#: libretranslate/app.py:80
@@ -67,12 +68,12 @@ msgstr "Неправильний запит: відсутній параметр
#: libretranslate/app.py:592
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
-msgstr ""
+msgstr "Неправильний запит: параметр %(name)s не є числом"
#: libretranslate/app.py:595
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
-msgstr ""
+msgstr "Неправильний запит: параметр %(name)s має бути <= %(value)s"
#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
@@ -130,7 +131,7 @@ msgstr "Англійська"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
-msgstr ""
+msgstr "Албанська"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
@@ -142,15 +143,15 @@ msgstr "Азербайджанська"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
-msgstr ""
+msgstr "Бенгальська"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
-msgstr ""
+msgstr "Болгарська"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
-msgstr ""
+msgstr "Каталанська"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
@@ -158,7 +159,7 @@ msgstr "Китайська"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
-msgstr ""
+msgstr "Китайська (традиційна)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
@@ -178,7 +179,7 @@ msgstr "Есперанто"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
-msgstr ""
+msgstr "Естонська"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
@@ -745,4 +746,3 @@ msgstr "Спільнотою %(libretranslate)s"
#~ msgid "get an API key"
#~ msgstr "отримайте API ключ"
-
From 1fbb49b10b293928774def294133f166008d9e82 Mon Sep 17 00:00:00 2001
From: Piero Toffanin
Date: Thu, 8 Aug 2024 17:51:24 +0000
Subject: [PATCH 110/332] Translated using Weblate (Italian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/it/
---
.../locales/it/LC_MESSAGES/messages.po | 46 +++++++++----------
1 file changed, 23 insertions(+), 23 deletions(-)
diff --git a/libretranslate/locales/it/LC_MESSAGES/messages.po b/libretranslate/locales/it/LC_MESSAGES/messages.po
index ed38fbf..1f315b1 100644
--- a/libretranslate/locales/it/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/it/LC_MESSAGES/messages.po
@@ -9,15 +9,16 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-08-08 13:24-0400\n"
-"PO-Revision-Date: 2023-01-07 13:03+0000\n"
+"PO-Revision-Date: 2024-08-08 22:34+0000\n"
"Last-Translator: Piero Toffanin \n"
+"Language-Team: Italian \n"
"Language: it\n"
-"Language-Team: Italian "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.15.0\n"
#: libretranslate/app.py:80
@@ -66,12 +67,12 @@ msgstr "Richiesta non valida: parametro %(name)s mancante"
#: libretranslate/app.py:592
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
-msgstr ""
+msgstr "Richiesta invalida: parametro %(name)s non è un numero"
#: libretranslate/app.py:595
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
-msgstr ""
+msgstr "Richiesta invalida: parametro %(name)s deve essere <= %(value)s"
#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
@@ -131,7 +132,7 @@ msgstr "Inglese"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
-msgstr ""
+msgstr "Albanese"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
@@ -143,15 +144,15 @@ msgstr "Azero"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
-msgstr ""
+msgstr "Bengali"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
-msgstr ""
+msgstr "Bulgaro"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
-msgstr ""
+msgstr "Catalano"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
@@ -159,7 +160,7 @@ msgstr "Cinese"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
-msgstr ""
+msgstr "Cinese (tradizionale)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
@@ -179,7 +180,7 @@ msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
-msgstr ""
+msgstr "Estone"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
@@ -231,19 +232,19 @@ msgstr "Coreano"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
-msgstr ""
+msgstr "Lettone"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
-msgstr ""
+msgstr "Lituano"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
-msgstr ""
+msgstr "Malese"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
-msgstr ""
+msgstr "Norvegese"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
@@ -259,7 +260,7 @@ msgstr "Portoghese"
#: libretranslate/locales/.langs.py:34
msgid "Romanian"
-msgstr ""
+msgstr "Rumeno"
#: libretranslate/locales/.langs.py:35
msgid "Russian"
@@ -271,7 +272,7 @@ msgstr "Slovacco"
#: libretranslate/locales/.langs.py:37
msgid "Slovenian"
-msgstr ""
+msgstr "Sloveno"
#: libretranslate/locales/.langs.py:38
msgid "Spanish"
@@ -283,11 +284,11 @@ msgstr "Svedese"
#: libretranslate/locales/.langs.py:40
msgid "Tagalog"
-msgstr ""
+msgstr "Tagalog"
#: libretranslate/locales/.langs.py:41
msgid "Thai"
-msgstr ""
+msgstr "Tailandese"
#: libretranslate/locales/.langs.py:42
msgid "Turkish"
@@ -299,7 +300,7 @@ msgstr "Ucraino"
#: libretranslate/locales/.langs.py:44
msgid "Urdu"
-msgstr ""
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -373,7 +374,7 @@ msgstr ""
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
-msgstr ""
+msgstr "Numero preferito di traduzioni alternative"
#: libretranslate/locales/.swag.py:18
msgid "API key"
@@ -744,4 +745,3 @@ msgstr "Contributori di %(libretranslate)s"
#~ msgid "get an API key"
#~ msgstr "ottieni una chiave API"
-
From e6bf132e18b55eaea736f367e485c3f787385041 Mon Sep 17 00:00:00 2001
From: gallegonovato
Date: Thu, 8 Aug 2024 18:30:12 +0000
Subject: [PATCH 111/332] Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
---
.../locales/es/LC_MESSAGES/messages.po | 48 +++++++++----------
1 file changed, 24 insertions(+), 24 deletions(-)
diff --git a/libretranslate/locales/es/LC_MESSAGES/messages.po b/libretranslate/locales/es/LC_MESSAGES/messages.po
index 5167ff7..f9ee7c8 100644
--- a/libretranslate/locales/es/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/es/LC_MESSAGES/messages.po
@@ -9,15 +9,16 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-08-08 13:24-0400\n"
-"PO-Revision-Date: 2023-01-25 02:06+0000\n"
-"Last-Translator: José Alberto Justiniani \n"
+"PO-Revision-Date: 2024-08-08 22:34+0000\n"
+"Last-Translator: gallegonovato \n"
+"Language-Team: Spanish \n"
"Language: es\n"
-"Language-Team: Spanish "
-"\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.7-dev\n"
"Generated-By: Babel 2.15.0\n"
#: libretranslate/app.py:80
@@ -68,12 +69,12 @@ msgstr "Solicitud inválida: falta %(name)s parámetro"
#: libretranslate/app.py:592
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
-msgstr ""
+msgstr "Solicitud no válida: El parámetro %(name)s no es un número"
#: libretranslate/app.py:595
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
-msgstr ""
+msgstr "Petición no válida: el parámetro %(name)s debe ser <= %(value)s"
#: libretranslate/app.py:612 libretranslate/app.py:622
#, python-format
@@ -133,7 +134,7 @@ msgstr "Inglés"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
-msgstr ""
+msgstr "Albanés"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
@@ -145,15 +146,15 @@ msgstr "Azerbaijani"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
-msgstr ""
+msgstr "Bengalí"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
-msgstr ""
+msgstr "Búlgaro"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
-msgstr ""
+msgstr "Catalán"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
@@ -161,7 +162,7 @@ msgstr "Chino"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
-msgstr ""
+msgstr "Chino (tradicional)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
@@ -181,7 +182,7 @@ msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
-msgstr ""
+msgstr "Estonio"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
@@ -233,19 +234,19 @@ msgstr "Coreano"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
-msgstr ""
+msgstr "Letón"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
-msgstr ""
+msgstr "Lituano"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
-msgstr ""
+msgstr "Malayo"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
-msgstr ""
+msgstr "Noruego"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
@@ -261,7 +262,7 @@ msgstr "Portugués"
#: libretranslate/locales/.langs.py:34
msgid "Romanian"
-msgstr ""
+msgstr "Rumano"
#: libretranslate/locales/.langs.py:35
msgid "Russian"
@@ -273,7 +274,7 @@ msgstr "Eslovaco"
#: libretranslate/locales/.langs.py:37
msgid "Slovenian"
-msgstr ""
+msgstr "Esloveno"
#: libretranslate/locales/.langs.py:38
msgid "Spanish"
@@ -285,11 +286,11 @@ msgstr "Suecia"
#: libretranslate/locales/.langs.py:40
msgid "Tagalog"
-msgstr ""
+msgstr "Tagalo"
#: libretranslate/locales/.langs.py:41
msgid "Thai"
-msgstr ""
+msgstr "Tailandés"
#: libretranslate/locales/.langs.py:42
msgid "Turkish"
@@ -301,7 +302,7 @@ msgstr "Ucraniano"
#: libretranslate/locales/.langs.py:44
msgid "Urdu"
-msgstr ""
+msgstr "Urdu"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@@ -375,7 +376,7 @@ msgstr ""
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
-msgstr ""
+msgstr "Número preferido de traducciones alternativas"
#: libretranslate/locales/.swag.py:18
msgid "API key"
@@ -745,4 +746,3 @@ msgstr "Colaboradores de %(libretranslate)s"
#~ msgid "get an API key"
#~ msgstr "obtén una clave API"
-
From 854a07326007a630e105c6d6abbd052674634b70 Mon Sep 17 00:00:00 2001
From: Blueberry
Date: Thu, 8 Aug 2024 18:00:57 +0000
Subject: [PATCH 112/332] Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
---
.../locales/ru/LC_MESSAGES/messages.po | 48 +++++++++----------
1 file changed, 24 insertions(+), 24 deletions(-)
diff --git a/libretranslate/locales/ru/LC_MESSAGES/messages.po b/libretranslate/locales/ru/LC_MESSAGES/messages.po
index 7a914fe..dc813cf 100644
--- a/libretranslate/locales/ru/LC_MESSAGES/messages.po
+++ b/libretranslate/locales/ru/LC_MESSAGES/messages.po
@@ -9,16 +9,17 @@ msgstr ""
"Project-Id-Version: LibreTranslate 1.3.9\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-08-08 13:24-0400\n"
-"PO-Revision-Date: 2023-09-05 11:54+0000\n"
+"PO-Revision-Date: 2024-08-08 22:34+0000\n"
"Last-Translator: Blueberry