Compare commits

...

500 commits

Author SHA1 Message Date
தமிழ்நேரம்
7a3d3e9511
Translated using Weblate (Tamil)
Some checks failed
Build and Publish Docker Image / main (push) Has been cancelled
Run tests / tests_python (3.10) (push) Has been cancelled
Run tests / tests_python (3.8) (push) Has been cancelled
Run tests / tests_python (3.9) (push) Has been cancelled
Run tests / test_docker_build (push) Has been cancelled
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ta/
2025-06-28 15:05:33 +02:00
Yen Le Diep Hoang
aa21f779f0
Translated using Weblate (Vietnamese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/vi/
2025-06-28 15:05:32 +02:00
Akin Uslu
9435aa0050
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2025-06-18 18:01:46 +02:00
GunChleoc
127ca3602b
Translated using Weblate (Gaelic)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/gd/
2025-06-16 12:01:54 +02:00
Piero Toffanin
26a64b46a1
Merge pull request #813 from DL6ER/tweak/hide_api
Hide API-related extra buttons if --hide-api is specified
2025-06-15 12:45:04 +02:00
DL6ER
88ad58271d
Re-group icons
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-15 12:31:55 +02:00
Piero Toffanin
c963594971 Simplify frontend title 2025-06-15 12:29:39 +02:00
Piero Toffanin
a63984bc9f
Merge pull request #814 from DL6ER/new/web_title
Add user-customizable <title>
2025-06-15 12:26:30 +02:00
DL6ER
73f0309df1
Hide API-related extra buttons if --hide-api is specified
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-15 12:03:43 +02:00
DL6ER
44326591df
Show custom frontend title also above textareas when defined and != LibreTranslate (the default value)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-15 11:58:18 +02:00
DL6ER
769a447f8f
Add user-customizable <title> if not web_version
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-15 11:30:56 +02:00
Piero Toffanin
2b3f51a28b
Merge pull request #812 from DL6ER/new/lt_hide_api
Add --hide-api to hide the API request/response fields from the web interface
2025-06-14 21:33:01 +02:00
Piero Toffanin
53746bc6d9
Merge pull request #811 from DL6ER/new/lt_frontend_language
Add new option --frontend-language
2025-06-14 21:30:44 +02:00
DL6ER
0dce604a7c
Add --hide-api to hide the API request/response fields from the web interface
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-14 19:35:06 +02:00
DL6ER
3913f8ea98
Add new option --frontend-language
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-14 19:00:36 +02:00
Piero Toffanin
e469dbb3c7
Merge pull request #810 from DL6ER/tweak/lt_port
Support LT_PORT in healtcheck script
2025-06-14 00:39:10 +02:00
DL6ER
042bafac2c
Support LT_PORT in healtcheck script
Signed-off-by: DL6ER <dl6er@dl6er.de>
2025-06-13 21:16:07 +02:00
Juzé
b53c5c55fb
Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
2025-06-06 06:36:50 +02:00
Anucha Lhaononkor
6d495dbb7c
Translated using Weblate (Thai)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/th/
2025-06-05 18:54:13 +02:00
Manuela Silva
7b3526b0be
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2025-06-03 01:35:19 +02:00
Piero Toffanin
fe7dcd43f1
Merge pull request #805 from AnmiTaliDev/feature/add-kazakh-locale
Add Kazakh locale to libretranslate/locales/kk/
2025-05-25 17:41:47 +02:00
AnmiTaliDev
b7a98727ce Add Kazakh locale to libretranslate/locales/kk/ 2025-05-25 19:50:05 +05:00
Salif Mehmed
f4efb72dcb
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2025-05-25 16:46:32 +02:00
Salif Mehmed
1aff222bf6
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2025-05-25 13:53:50 +02:00
Marijn Scholtus
8fb67f104a
Translated using Weblate (Dutch)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nl/
2025-05-23 21:28:56 +02:00
Justin Lin
f166809b9b
Translated using Weblate (Chinese (Traditional Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
2025-05-18 09:57:59 +02:00
Chaitanya Pandey
cbb1c3b760
Translated using Weblate (Hindi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hi/
2025-05-16 05:46:32 +02:00
Mandeep
18fa16f466
Translated using Weblate (Punjabi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pa/
2025-05-16 04:45:54 +02:00
Piero Toffanin
2d4ad34f08
Merge pull request #802 from KerySeverino/dev-docs
Synced latests.
2025-05-15 13:07:59 -04:00
Kery
a915bf773b Synced latests. 2025-05-15 10:34:32 -04:00
J
35c2a619e8
Translated using Weblate (Finnish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fi/
2025-05-15 04:15:07 +02:00
ButterflyOfFire
6372df15fe
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2025-05-13 14:02:28 +02:00
Piero Toffanin
9e8ccb9109
Update TRADEMARK.md 2025-05-12 13:57:19 -04:00
Piero Toffanin
21f6c02e76
Update README.md 2025-05-11 13:12:38 -04:00
439JBYL80IGQTF25UXNR0X1BG
f414328fe7
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2025-05-08 07:34:52 +02:00
Piero Toffanin
235cfa0fa2
Merge pull request #799 from KerySeverino/dev-docs
Added full spanish translation (CONTRIBUTING.es.md) and Synced latests.
2025-05-07 20:34:25 -04:00
Kery
92e92f335d Added full spanish translation (CONTRIBUTING.es.md) and Synced latests. 2025-05-07 19:05:08 -04:00
Do you know my name?
6bf83afd79
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2025-05-07 17:02:28 +02:00
Piero Toffanin
01109bc085
Update README.md 2025-05-03 20:15:06 -04:00
Jose Delvani
d1e4a42030
Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
2025-05-04 01:01:45 +02:00
Aindriú Mac Giolla Eoin
6e56d4013d
Translated using Weblate (Irish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ga/
2025-04-30 13:20:39 +02:00
Piero Toffanin
e6f9f57f04
Merge pull request #795 from KerySeverino/main
Added full spanish translation (TRADEMARK.es.md) and small bug fixes.
2025-04-30 02:27:17 -04:00
Kery
a67c5a44e1 Added full spanish translation (TRADEMARK.es.md) and small bug fixes. 2025-04-30 00:25:21 -04:00
Piero Toffanin
51a22e2328
Update README.md 2025-04-29 17:39:17 -04:00
Piero Toffanin
e52a723105
Merge pull request #793 from KerySeverino/dev-docs
Added full Spanish translation (README.es.md) and link in main README
2025-04-28 02:26:37 -04:00
Kery
8463720ef2 Added full Spanish translation (README.es.md) and link in main README 2025-04-28 00:18:18 -04:00
Bezruchenko Simon
d9a75d1287
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2025-04-26 23:09:28 +02:00
Wuzzy
a0a6290ce5
Translated using Weblate (German)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/de/
2025-04-26 09:29:08 +02:00
slrslr
8c211737de
Translated using Weblate (Czech)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/cs/
2025-04-25 09:48:54 +02:00
Piero Toffanin
fae51debc3
Merge pull request #790 from warren-bank/PR-01-docker-security
Add 2 variations of Dockerfile
2025-04-23 00:39:54 -04:00
Warren R. Bank
01042ab2bd Add 2 variations of Dockerfile
1. docker/root-with-sshd.Dockerfile
   - executes as user: "root"
   - supports build arguments:
     * api_key
     * root_password

2. docker/user-with-api-key.Dockerfile
   - executes as user: "libretranslate"
   - supports build arguments:
     * api_key

Build arguments are optional:

* api_key=""
  - initializes one API key with the user-defined value

* root_password=""
  - sets password for "root" user
  - installs sshd server to allow remote access to "ltmanage" command
    * enables "PermitRootLogin"
    * enables "PasswordAuthentication"

Environment variables with complimentary behavior:

* LT_REQ_LIMIT = 0
* LT_API_KEYS  = true
  - locks down server and requires an API key for all API access

Testing:

* unexpected complications
  - sudo:
    * error message:
        effective uid is not 0,
        is /usr/bin/sudo on a file system with the 'nosuid' option set
        or an NFS file system without root privileges?
    * info:
        https://unix.stackexchange.com/q/546822
    * result:
      - discarded Dockerfile variation that attempted to:
        * run entrypoint as user: "libretranslate"
        * use sudo to run sshd

* "render.com" free tier
  - notes:
    * completely free
    * no credit card required
    * can clone any public git repo and run any Dockerfile it contains
    * can NOT use SSH to access containers
  - Dockerfile variations:
    1. docker/Dockerfile
       - works perfectly
       - public API is open and unrestricted
    2. docker/root-with-sshd.Dockerfile
       - works perfectly
       - public API is only accessible to requests with "api_key"
       - SSH server is running
         * public access is blocked by container firewall
         * haven't tested on a paid tier,
           but external connections should be allowed and work
    3. docker/user-with-api-key.Dockerfile
       - works perfectly
       - public API is only accessible to requests with "api_key"
2025-04-22 14:35:07 -07:00
Piero Toffanin
0724313518
Merge pull request #789 from LTSlw/main
Mark Chinese as reviewed in the README's UI Languages list
2025-04-22 04:14:00 -04:00
LTSlw
f654e67211
Mark Chinese as reviewed in the README's UI Languages list 2025-04-22 13:55:48 +08:00
LTSlw
15dbc94783
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2025-04-21 07:58:16 +02:00
xuars
9dc1c95401
Translated using Weblate (Galician)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/gl/
2025-04-20 12:36:37 +02:00
xuars
7dd9c47767
Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
2025-04-20 12:36:37 +02:00
Marc Riera
19dadbf682
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2025-04-20 07:30:22 +00:00
Piero Toffanin
6ac429fb54 Update under attack response 2025-04-20 00:37:04 -04:00
xuars
ed8c6590c1
Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
2025-04-20 03:19:02 +02:00
LTSlw
42bf41c8aa
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2025-04-19 12:10:06 +02:00
LTSlw
1278dceca2
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2025-04-19 10:11:16 +02:00
LTSlw
c72fb9c836
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2025-04-19 08:10:30 +02:00
Ghost of Sparta
22268c1923
Translated using Weblate (Hungarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hu/
2025-04-19 08:10:29 +02:00
Piero Toffanin
411b50178e Improvement to under attack mode 2025-04-18 15:52:27 -04:00
Piero Toffanin
fd0119bf70 Fix z-index 2025-04-18 14:54:41 -04:00
Piero Toffanin
937d8f0503
Merge pull request #788 from pierotofy/fingerprint
Attack mode support
2025-04-18 14:50:25 -04:00
Piero Toffanin
58a95aecef it translation 2025-04-18 14:49:19 -04:00
Piero Toffanin
50faf4cd62 Update locales 2025-04-18 14:45:20 -04:00
Piero Toffanin
97804234f1 Merge branch 'main' of https://github.com/uav4geo/LibreTranslate into fingerprint 2025-04-18 14:41:17 -04:00
Piero Toffanin
bdb9b6a224 Under attack mode 2025-04-18 14:41:12 -04:00
Piero Toffanin
33539bbd11
Merge pull request #787 from pierotofy/fingerprint
Add fingerprinting mechanism
2025-04-18 12:41:15 -04:00
Piero Toffanin
e4eb96482f Fingerprint only if key missing 2025-04-18 12:28:12 -04:00
Piero Toffanin
d8f9121009 Tweak fingerprint 2025-04-18 12:22:56 -04:00
Piero Toffanin
f2268fe4d9 Add fingerprinting mechanism 2025-04-18 12:21:16 -04:00
LTSlw
fc4f4be24f
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2025-04-18 15:45:18 +00:00
Cengizhan Peker
c76dbcaf0a
Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
2025-04-18 15:45:17 +00:00
Piero Toffanin
da0890d60f web driver check 2025-04-18 03:49:05 -04:00
Przemek
f38dbd160d
Translated using Weblate (Polish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pl/
2025-04-17 11:53:06 +02:00
P.J. Finlay
73c20e4853
Merge pull request #786 from theUnrealSamurai/update-requirements
Update Requirements: argos-translate-files srt support
2025-04-16 20:39:09 -04:00
roshan
6522182d4a Update Requirements: argos-translate-files srt support 2025-04-17 09:30:34 +09:00
Piero Toffanin
932fe54984
Merge pull request #785 from jpralves/main
Update Dockerfile #737
2025-04-16 13:28:51 -04:00
João Alves
5c72835abb
Merge pull request #1 from jpralves/jpralves-patch-1
Update Dockerfile #737
2025-04-16 16:10:11 +01:00
João Alves
1d6338b199
Update Dockerfile #737
Fixes LibreTranslate/LibreTranslate#737 problem related with pytorch version declared in pyproject.toml dependency and venv pip install.
2025-04-16 16:09:32 +01:00
GiannosOB
9f123e1bbb
Translated using Weblate (Greek)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/el/
2025-04-12 10:53:46 +02:00
Marc Riera
a566d4556f
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2025-04-11 17:57:26 +02:00
Marc Riera
d1d9500269
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2025-04-11 14:43:36 +02:00
ButterflyOfFire
f1aeee9016
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2025-04-09 19:20:43 +00:00
Piero Toffanin
182f6063f0 ISO lang code support for --load-only 2025-04-08 22:09:08 -04:00
Piero Toffanin
29c9f39e8f Fix ISO code aliasing in /translate 2025-04-08 11:58:20 -04:00
Piero Toffanin
c6aee2bf97
Merge pull request #780 from pierotofy/iso
Support for ISO 639-1 - 15924 codes
2025-04-08 11:47:40 -04:00
Piero Toffanin
4e86bfa991 Support for ISO 639-1 - 15924 codes 2025-04-07 23:28:34 -04:00
Piero Toffanin
4fe84200fb
Merge pull request #777 from seicifarre/seicifarre-patch-1
🌏 i18n: Improve Catalan translation
2025-04-04 14:37:46 -04:00
Ivan Farré
3bcb32dcf8
🌏 i18n: Improve Catalan translation 2025-04-04 20:20:05 +02:00
Ivan Farré
ecebc94f60
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2025-04-04 19:51:18 +02:00
Stefan McKinnon Edwards
2dc443ea03
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2025-04-02 03:39:23 +02:00
Manuela Silva
75093e525f
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2025-03-30 15:01:12 +02:00
Piero Toffanin
ebbba3e4f6 Update lexilang 2025-03-28 14:24:26 -04:00
Piero Toffanin
6d43dfc504 Limiter func key with api key 2025-03-28 12:28:08 -04:00
Ohirok
c8f154561e
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2025-03-28 11:20:26 +01:00
Piero Toffanin
ae4a6ebfe6
Update README.md 2025-03-26 16:47:32 -04:00
Piero Toffanin
309db4c620
Merge pull request #770 from gigirassy/main
add blitzw.in instance
2025-03-26 16:46:38 -04:00
nune
f4d4274b5a
add blitzw.in instance 2025-03-26 16:32:01 -04:00
Piero Toffanin
06617223ae Bump version 2025-03-25 16:27:01 -04:00
Astahar
90f87ca05a
Translated using Weblate (Chuvash)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/cv/
2025-03-25 11:20:13 +01:00
Astahar
18b63401d2
Added translation using Weblate (Chuvash) 2025-03-25 10:58:22 +01:00
Erol Joudy Tooy
3d258809cb
Translated using Weblate (Indonesian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/id/
2025-03-24 12:28:23 +01:00
Piero Toffanin
4d433b6077
Merge pull request #765 from pierotofy/langexp
Catch cant detect errors in lang detection
2025-03-20 11:58:34 -04:00
Piero Toffanin
97775d1ca4 Catch cant detect errors in lang detection 2025-03-20 11:39:26 -04:00
Piero Toffanin
cfb1a92170
Merge pull request #764 from pierotofy/emoji
Detect emoji translation requests
2025-03-20 11:24:50 -04:00
Piero Toffanin
5d73e00664 Detect emoji translation requests 2025-03-20 11:11:21 -04:00
ButterflyOfFire
adecc15d16
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2025-03-05 08:12:07 +01:00
ButterflyOfFire
8466c0507e
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2025-03-05 08:12:07 +01:00
summoner001
e983619919
Translated using Weblate (Hungarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hu/
2025-03-02 19:00:05 +01:00
Yaron Shahrabani
e56c62b956
Translated using Weblate (Hebrew)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/he/
2025-03-02 14:39:42 +01:00
ButterflyOfFire
3c1312dd17
Translated using Weblate (Arabic)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ar/
2025-03-02 06:55:29 +01:00
Piero Toffanin
ba126883f6
Translated using Weblate (Italian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/it/
2025-03-01 18:02:14 +00:00
Piero Toffanin
e9e58e6b3f Fix lang selector sort 2025-02-28 12:20:38 -05:00
Piero Toffanin
b8dca4e341 Update app description 2025-02-28 12:06:15 -05:00
Piero Toffanin
42520d45f0 Make sure first lang letter is uppercase 2025-02-28 00:18:56 -05:00
Piero Toffanin
eae3ffb5e0
Merge pull request #750 from urzparat/patch-1
Removes duplicated aria-label
2025-02-27 12:31:47 -05:00
urzparat
696fec530b
Removes duplicated aria-label 2025-02-27 12:46:53 +01:00
Piero Toffanin
c119dd9427
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2025-02-21 15:18:06 +01:00
doppiagsilvi
79cbfabfac
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2025-02-20 10:09:14 +01:00
Piero Toffanin
0ca29ae061
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2025-02-19 16:56:07 +01:00
Can YM
251bd63743
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2025-02-18 12:02:34 +00:00
Piero Toffanin
7783c1821b
Merge pull request #742 from PeterDaveHello/zh_Hant
🌏 i18n: Improve Traditional Chinese translation
2025-02-13 18:16:17 +01:00
Can YM
7c03729d1f
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2025-02-13 14:01:54 +00:00
Peter Dave Hello
bd900655b6 🌏 i18n: Improve Traditional Chinese translation 2025-02-13 00:55:02 +08:00
Blueberry
1a92713339
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2025-02-04 19:02:51 +00:00
ChayapholSmile
e8080c493a
Translated using Weblate (Thai)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/th/
2025-02-02 22:36:14 +01:00
Bruno Fragoso
871674c7ac
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2025-02-01 15:01:59 +01:00
Ricky Tigg
dc243d3767
Translated using Weblate (Finnish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fi/
2025-02-01 15:01:58 +01:00
ButterflyOfFire
af1a459da2
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2025-01-31 10:02:11 +01:00
Piero Toffanin
21357a83a5
Merge pull request #738 from PeterDaveHello/UpdateDockerfile
Update Dockerfile Python base image to mitigate some security issues
2025-01-31 00:16:58 -05:00
Peter Dave Hello
4cbed58c76 Update Dockerfile Python base image to mitigate some security issues 2025-01-31 02:12:27 +08:00
Piero Toffanin
7f92c2d8ce
Merge pull request #732 from f-lombardo/changes-for-docker
Changes for docker
2025-01-25 14:45:02 -05:00
Franco Lombardo
6d8e1bd5e4 Changes for docker 2025-01-24 22:44:06 +01:00
Poesty Li
0fb8494516
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2025-01-22 06:41:53 +01:00
Piero Toffanin
08f2bb1d84
Merge pull request #728 from Enteee/feature/ARGOS_DEVICE_TYPE-to-auto
Change the default for ARGOS_DEVICE_TYPE to auto
2025-01-19 12:33:04 -05:00
Ente
24d88d162c
Change the default for ARGOS_DEVICE_TYPE to auto 2025-01-19 09:41:49 +01:00
Blueberry
39a8ce8070
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2025-01-19 01:28:07 +01:00
Sravika Padakanti (MSS2020079)
234f474022
Translated using Weblate (Hindi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hi/
2025-01-19 01:28:07 +01:00
Piero Toffanin
f36677a164 Update lexilang 2025-01-17 23:11:57 -05:00
Piero Toffanin
e0d1678b5b Bump version 2025-01-17 09:58:28 -05:00
Piero Toffanin
7c35645a88
Merge pull request #726 from pierotofy/torch
Upgrade torch
2025-01-17 09:57:32 -05:00
Piero Toffanin
243729292e Upgrade torch 2025-01-17 09:49:15 -05:00
Piero Toffanin
cfbd1e9659
Merge pull request #725 from urtzai/main
Upgrade Lexilang package to the last version
2025-01-17 09:48:40 -05:00
Urtzi Odriozola
c51266ba55
Upgrade Lexilang package to the last version
Upgrade Lexilang package dependency to the last version in order to detect basque language sentences
2025-01-17 15:41:25 +01:00
Piero Toffanin
2e6a77ff56
Merge pull request #723 from vdbhb59/patch1
Updates - PR to merge
2025-01-15 11:15:03 -05:00
vdbhb59
7eff05e257
Updates
- Updated mobile app list (android)
- Updated guide/faq for using as a systemd (for Python/PiP installed)
- Remove "required api key" for my instance. Was added by mistake initially.
2025-01-15 15:33:25 +00:00
Lav Rottweiler
e19bd20776
Translated using Weblate (Serbian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/sr/
2025-01-15 12:58:43 +01:00
Piero Toffanin
9c1d5da575
Merge pull request #722 from DatIsVinnie/patch-1
Reviewed the Dutch language!
2025-01-13 10:50:05 -05:00
Vincenzo van Wijk
cd1ac012c0
changed reviewed to true
Reviewed the Dutch language
2025-01-13 09:58:26 +01:00
Vincenzo van Wijk
1f29881506
Translated using Weblate (Dutch)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nl/
2025-01-13 09:55:16 +01:00
தமிழ்நேரம்
fe383513e1
Translated using Weblate (Tamil)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ta/
2025-01-12 21:04:45 +01:00
தமிழ்நேரம்
593cecb901
Added translation using Weblate (Tamil) 2025-01-12 06:49:56 +01:00
Piero Toffanin
a5e8530f06
Merge pull request #720 from vdbhb59/patch-1
Updated mirrors
2025-01-09 15:16:20 -05:00
vdbhb59
8e44284c9c
Updated mirrors
Removed the other 2, as they are no longer available, and added my self-hosted instance.
2025-01-09 17:01:09 +00:00
moyashi_24
b5dd9e3303
Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
2025-01-04 08:30:39 +01:00
Salif Mehmed
86c2200e6d
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2025-01-02 17:01:24 +01:00
ButterflyOfFire
61dc7b1fdd
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2024-12-21 11:46:32 +00:00
Piero Toffanin
6796e95acd Update issue triage 2024-12-03 14:57:19 -05:00
Ricky Tigg
fdbad9fec5
Translated using Weblate (Finnish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fi/
2024-12-03 13:00:27 +01:00
Quentin PAGÈS
94f96c0f92
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2024-11-29 04:07:42 +00:00
Quentin PAGÈS
ff0c257dcc
Translated using Weblate (Occitan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/oc/
2024-11-29 04:07:42 +00:00
Ricky Tigg
11aa9da16c
Translated using Weblate (Finnish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fi/
2024-11-29 04:07:41 +00:00
Piero Toffanin
521828e88d
Merge pull request #709 from ChillerDragon/pr_zilly_off
Take down offline instance trans.zillyhuhn.com
2024-11-26 09:14:51 -05:00
Chiller Dragon
4d86dd1ef2
Take down offline instance trans.zillyhuhn.com 2024-11-26 16:32:37 +08:00
Piero Toffanin
1b498fb351
Merge pull request #708 from Koberum/update_readme
Update README.md
2024-11-22 10:51:47 -05:00
Flashstart
d24d5214ec Update README.md 2024-11-22 16:20:12 +00:00
la-lh
f9976e2fec
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-11-21 12:36:27 +01:00
Yaron Shahrabani
37bc21f232
Translated using Weblate (Hebrew)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/he/
2024-11-16 08:05:36 +01:00
kowih83264
68b03131c6
Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
2024-11-12 23:23:31 +01:00
Sauce
f768a6a7b9
Translated using Weblate (Chinese (Traditional Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
2024-11-12 23:23:31 +01:00
Sauce
a8bdc5892b
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-11-12 23:23:31 +01:00
gallegonovato
727f54640a
Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
2024-11-12 23:23:31 +01:00
Kfir Pshititsky
688c9afe48
Translated using Weblate (Hebrew)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/he/
2024-11-06 21:00:32 +01:00
Milan Šalka
25c559718b
Translated using Weblate (Slovak)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/sk/
2024-11-05 13:00:27 +01:00
Piero Toffanin
0d1926d7e0
Update README.md 2024-11-02 12:08:53 -04:00
Peter Dave Hello
c82cfb11e3
Translated using Weblate (Chinese (Traditional Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
2024-10-31 15:00:36 +00:00
ButterflyOfFire
e0e2633474
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2024-10-31 15:00:35 +00:00
439JBYL80IGQTF25UXNR0X1BG
bf268851c5
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2024-10-31 15:00:34 +00:00
Piero Toffanin
2998217138 Revert version 2024-10-28 16:14:22 -04:00
Piero Toffanin
e1c0255d55 Bump version 2024-10-28 16:13:57 -04:00
Piero Toffanin
4de3f7d0be
Merge pull request #705 from ng-ky/main
Add support for "auto" when translating files
2024-10-28 16:13:41 -04:00
Piero Toffanin
6f293f6013 Fix 400 error msg 2024-10-28 16:12:59 -04:00
Piero Toffanin
039f878f7f Bump argos-translate-files, fix src_lang initialization, checks 2024-10-28 16:10:27 -04:00
Ng Ky
db9f92a1c3 Add support for "auto" when translating files 2024-10-27 20:35:11 +08:00
Bezruchenko Simon
2b74c57ffa
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2024-10-26 14:15:44 +02:00
GunChleoc
54c4350a88
Translated using Weblate (Gaelic)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/gd/
2024-10-23 19:15:46 +02:00
Ghost of Sparta
d6d5e70d28
Translated using Weblate (Hungarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hu/
2024-10-23 19:15:45 +02:00
Ettore Atalan
800995f7e5
Translated using Weblate (German)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/de/
2024-10-23 19:15:44 +02:00
Piero Toffanin
22ae302f6b
Merge pull request #701 from gunchleoc/main
Fix English language name for uk locale
2024-10-22 13:25:33 -04:00
Piero Toffanin
b139dffcc9
Merge pull request #702 from gunchleoc/gd-locale
Add gd locale
2024-10-22 13:24:25 -04:00
GunChleoc
5ac7b70938
Added translation using Weblate (Gaelic) 2024-10-22 18:49:28 +02:00
GunChleoc
536c76eeed Add gd locale 2024-10-22 17:27:16 +01:00
GunChleoc
bc392441dc Fix English language name for uk locale 2024-10-22 17:22:28 +01:00
Piero Toffanin
f7c722f937
Merge pull request #700 from aindriu80/patch-1
Reviewed Irish/Gaeilge Translation
2024-10-21 11:06:41 -04:00
Aindriú Mac Giolla Eoin
79c6e80833
Reviewed Irish/Gaeilge Translation
Updated meta.json - Changed reviewed status to true after  reviewing Irish/Gaeilge on Weblate
2024-10-21 16:03:36 +01:00
Piero Toffanin
da0421a600
Merge pull request #698 from urtzai/main
add: Basque language added to the README UI language list
2024-10-18 10:52:15 -04:00
Urtzi Odriozola
ff59c5a9d6 add: Basque language added to the README UI language list 2024-10-18 12:43:04 +02:00
Piero Toffanin
5d2490bdd0
Merge pull request #697 from urtzai/main
All locales updated (including Basque and Galician)
2024-10-16 19:21:53 -04:00
Urtzi Odriozola
9c1e77620f Translations of the Basque and Galician language names 2024-10-16 23:55:57 +02:00
Urtzi Odriozola
ec3f01bdcc All locales updated (including Basque and Galician) 2024-10-16 23:51:39 +02:00
Piero Toffanin
5d6cac8715 Add funding manifest urls 2024-10-16 12:00:44 -04:00
João Palmeiro
982f02176c
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2024-10-13 15:54:13 +02:00
Urtzi Odriozola Lizaso
1e62c9fc0c
Translated using Weblate (Basque)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/eu/
2024-10-09 19:15:04 +02:00
Piero Toffanin
0c230a2f84
Merge pull request #690 from CHminggao/patch-1
Update zh meta.json
2024-10-09 10:46:27 -04:00
GM
1d3bb2adc6
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-10-09 11:41:16 +02:00
GM
2cb131f9a8
Update zh meta.json 2024-10-09 16:24:24 +08:00
Tora
aec690731f
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-10-09 07:09:16 +02:00
Peter Dave Hello
eae1ac5aa9
Translated using Weblate (Chinese (Traditional Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
2024-10-09 03:16:24 +00:00
Olivier Dragon
7429afcc6d
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2024-10-09 03:16:24 +00:00
PiationESL
e112461632
Translated using Weblate (Chinese (Simplified Han script))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-10-07 14:16:20 +02:00
Shahafbnn
6b4044aee3
Translated using Weblate (Hebrew)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/he/
2024-10-03 16:20:11 +02:00
Ghost of Sparta
5a5c88971b
Translated using Weblate (Hungarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hu/
2024-10-02 22:33:22 +02:00
Salif Mehmed
b7f661f368
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2024-10-01 22:51:39 +02:00
Piero Toffanin
46bc256d5b Check cookies 2024-09-30 12:42:02 -04:00
Piero Toffanin
930f833c35 Randomize bogus secret match 2024-09-30 12:20:07 -04:00
Piero Toffanin
19df41d537 Fix app.js 2024-09-30 12:06:08 -04:00
Piero Toffanin
1f7aac9c89 Strengthen client side security 2024-09-30 11:59:00 -04:00
XukoDev
48f29dd0c8
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2024-09-30 09:28:37 +02:00
Piero Toffanin
9deb93572f
Merge pull request #686 from eltociear/patch-2
chore: update app.js.template
2024-09-29 11:29:55 -04:00
Ikko Eltociear Ashimine
1aa4b7d79b
chore: update app.js.template
minor fix
2024-09-30 00:11:43 +09:00
Bezruchenko Simon
90670ffdf0
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2024-09-26 20:16:13 +02:00
Wuzzy
860203dabe
Translated using Weblate (German)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/de/
2024-09-26 15:57:09 +02:00
Milan Šalka
2fc96e2e96
Translated using Weblate (Slovak)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/sk/
2024-09-26 00:16:18 +02:00
Blueberry
3ac535f0be
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2024-09-26 00:16:17 +02:00
Jose Delvani
d40e5ba931
Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
2024-09-24 02:16:20 +02:00
Oğuz Ersen
ed19635d01
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2024-09-23 01:14:34 +02:00
gallegonovato
4a1c1036ef
Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
2024-09-23 01:14:34 +02:00
Piero Toffanin
8f33d6e78c Add missing lang scrings 2024-09-22 13:40:53 -04:00
Urtzi Odriozola Lizaso
67d657362c
Translated using Weblate (Basque)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/eu/
2024-09-21 23:33:57 +02:00
Urtzi Odriozola Lizaso
b950b73a88
Translated using Weblate (Basque)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/eu/
2024-09-21 23:10:16 +02:00
Jose Delvani
60fff1b2ae
Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
2024-09-21 23:10:16 +02:00
Urtzi Odriozola Lizaso
e35cd24c90
Translated using Weblate (Basque)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/eu/
2024-09-21 18:41:15 +02:00
Piero Toffanin
71d7e4aca5
Merge pull request #680 from pierotofy/locup
Update locales
2024-09-21 12:26:36 -04:00
Piero Toffanin
4df642cc29 Set numpy < 2 2024-09-21 12:24:10 -04:00
Piero Toffanin
153ac8e3c8 Set numpy < 2 2024-09-21 12:23:50 -04:00
Piero Toffanin
443ae19832 Fix conftest 2024-09-21 12:17:25 -04:00
Piero Toffanin
106594f970 Remove ruff 2024-09-21 12:04:20 -04:00
Piero Toffanin
6c796b6f03 Update locales 2024-09-21 11:58:28 -04:00
Urtzi Odriozola Lizaso
9032d245dc
Translated using Weblate (Basque)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/eu/
2024-09-21 01:03:31 +02:00
Piero Toffanin
2a270cdc04 Move meta.json 2024-09-20 18:31:55 -04:00
Piero Toffanin
1d48ea4654
Merge pull request #678 from urtzai/main
Basque localization finished and reviewed on Weblate
2024-09-20 18:29:33 -04:00
Urtzi Odriozola
6aa7b39e88
Basque localization finished and reviewed on Weblate 2024-09-21 00:22:26 +02:00
Piero Toffanin
3920c10e12
Merge pull request #677 from BoFFire/patch-3
Update README.md
2024-09-20 11:07:00 -04:00
ButterflyOfFire
a4e167ba59
Update README.md
Kabyle is reviewed.
2024-09-20 08:50:52 +01:00
ButterflyOfFire
469b3acaea
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2024-09-17 23:09:15 +02:00
Dinissantos
01137fac2d
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2024-09-17 23:09:15 +02:00
Dinissantos
d4c6cb0c65
Translated using Weblate (Azerbaijani)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/az/
2024-09-17 23:09:13 +02:00
Aindriú Mac Giolla Eoin
29ba523044
Translated using Weblate (Irish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ga/
2024-09-15 22:09:15 +02:00
VTF
0c39f31d18
Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
2024-09-06 06:09:25 +00:00
Murat Doğançay
7b7ff6f296
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2024-09-03 18:09:19 +02:00
Michał Stankiewicz
80f1db255d
Translated using Weblate (Polish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pl/
2024-09-03 18:09:19 +02:00
Nikos Merianos
0f45111e6d
Translated using Weblate (Greek)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/el/
2024-08-24 07:09:22 +00:00
Wuzzy
ffcaf7414f
Translated using Weblate (German)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/de/
2024-08-22 18:09:28 +02:00
NtskwK
2f6385a784
Translated using Weblate (Chinese (Simplified))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-08-20 19:09:34 +00:00
Piero Toffanin
4c7290cd74
Merge pull request #663 from eltociear/patch-1
docs: update README.md
2024-08-20 11:29:58 -04:00
Ikko Eltociear Ashimine
3597e916d9
docs: update README.md
Ukranian -> Ukrainian
2024-08-21 00:12:47 +09:00
Piero Toffanin
580274f1c0 Merge branch 'main' of https://github.com/uav4geo/LibreTranslate 2024-08-12 13:58:40 -04:00
Piero Toffanin
a9440a8c5c Fix bool False parameters with wsgi 2024-08-12 13:58:32 -04:00
Blueberry
faa25b5213
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2024-08-09 21:16:16 +00:00
SA99100
a7ff3944a2
Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
2024-08-09 21:16:15 +00:00
Piero Toffanin
43758bf94d
Merge pull request #658 from SA99100/main
Update meta.json for ja
2024-08-09 17:13:18 -04:00
SA99100
ca755b37f9
Update meta.json for ja
Reviewed Japanese translation
2024-08-09 14:07:40 -07:00
Salif Mehmed
7b66edb175
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2024-08-09 00:34:12 +02:00
Fqwe1
133ebc6202
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2024-08-09 00:34:12 +02:00
Oğuz Ersen
0b1f0bbf1c
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2024-08-09 00:34:12 +02:00
Blueberry
854a073260
Translated using Weblate (Russian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ru/
2024-08-09 00:34:12 +02:00
gallegonovato
e6bf132e18
Translated using Weblate (Spanish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/es/
2024-08-09 00:34:11 +02:00
Piero Toffanin
1fbb49b10b
Translated using Weblate (Italian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/it/
2024-08-09 00:34:11 +02:00
Fqwe1
d8c3bebdfc
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2024-08-08 19:48:32 +02:00
Oğuz Ersen
4c541cc513
Translated using Weblate (Turkish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/tr/
2024-08-08 19:48:32 +02:00
Piero Toffanin
279b55daaf Update nb 2024-08-08 13:48:11 -04:00
Piero Toffanin
e789d1566a
Merge pull request #657 from pierotofy/localeup
Update locales
2024-08-08 13:34:25 -04:00
Piero Toffanin
b8b5994425 Fix auto translations 2024-08-08 13:32:59 -04:00
Piero Toffanin
771c3d84cc Update locales 2024-08-08 13:28:40 -04:00
Piero Toffanin
f4d34f05a6
Merge pull request #654 from justinmdriggers/main
removed non-functional  pip command
2024-08-06 12:14:26 -04:00
justin_driggers
65c64e065c removed non-functional pip command 2024-08-05 20:45:36 -04:00
SA99100
4ed587ce99
Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
2024-08-06 02:09:17 +02:00
Piero Toffanin
d5ab8d5b74
Update screenshot 2024-08-02 15:16:28 -04:00
Piero Toffanin
a0ddbdf73f
Update screenshot 2024-08-02 15:15:16 -04:00
MjavadH
94e1530e34
Translated using Weblate (Persian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fa/
2024-07-26 09:54:17 +02:00
Jose Delvani
79a2b47fca
Translated using Weblate (Portuguese (Brazil))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt_BR/
2024-07-25 02:09:23 +00:00
Piero Toffanin
323778788d
Merge pull request #648 from justinmdriggers/cuda_dockerfile_fix
cuda dockerfile does not have a "venv/" folder
2024-07-23 16:12:56 -04:00
justin_driggers
2e5af544c4 cuda dockerfile does not have a "venv/" folder 2024-07-23 14:17:21 -04:00
Piero Toffanin
0c7d957d4e
Merge pull request #646 from ajoga/major_contirbution
Fix typo in README.md
2024-07-22 12:31:23 -04:00
Aurélien Joga
3310387ab6
Fix typo in README.md 2024-07-22 17:48:47 +02:00
John Ngai
9c6eea19fd
Translated using Weblate (Chinese (Simplified))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-07-22 06:09:17 +02:00
Alisson Lauffer
dfe96743d5
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2024-07-22 06:09:16 +02:00
naskya
5322708061
Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
2024-07-22 06:09:16 +02:00
Piero Toffanin
2f8ede54d7 Add --secondary arg 2024-07-19 14:14:25 -04:00
Piero Toffanin
236eee1774 Remove offline mirror 2024-07-16 17:06:49 -04:00
Piero Toffanin
9184c382db Fix div by zero error 2024-07-16 16:03:22 -04:00
Piero Toffanin
8ba054c786 Encode secret 2024-07-16 15:59:33 -04:00
Piero Toffanin
c827d442ec Encode secret 2024-07-16 15:58:20 -04:00
Piero Toffanin
8e85c04558 Use moving window strategy for limiter 2024-07-16 15:33:51 -04:00
Piero Toffanin
7b75dad479 Use fixed window elastic expiry strategy for limiter 2024-07-16 15:11:41 -04:00
ButterflyOfFire
aaff4dd588
Translated using Weblate (Kabyle)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/kab/
2024-07-15 22:09:36 +02:00
Carlos M. Silva
8ffc3a4b1b
Translated using Weblate (Portuguese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pt/
2024-07-15 22:09:35 +02:00
Aindriú Mac Giolla Eoin
ece74c0f7e
Translated using Weblate (Irish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ga/
2024-07-06 08:18:57 +00:00
Piero Toffanin
085234bf9c
Merge pull request #644 from silentoplayz/patch-1
Update Dockerfile to add NumPy <2
2024-07-04 23:07:14 -04:00
silentoplayz
e6e851821b
Update cuda.Dockerfile
Added numpy<2 package
2024-07-05 02:23:45 +00:00
silentoplayz
b7e424c5f1
Update arm.Dockerfile
Added numpy<2 package
2024-07-05 02:12:32 +00:00
silentoplayz
fa8d96b638
Update Dockerfile
Added numpy<2
2024-07-05 02:11:54 +00:00
Michael R. Lawrence
93219a3809
Translated using Weblate (Miami)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/mia/
2024-07-04 18:09:19 +00:00
Michael R. Lawrence
92424bbba8
Added translation using Weblate (Miami) 2024-07-03 20:02:08 +02:00
Dương Nguyễn Võ Quốc
d8ff2de3c3
Translated using Weblate (Vietnamese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/vi/
2024-06-14 18:34:08 +02:00
Piero Toffanin
0c86cc63a9
Merge pull request #634 from lotigara/main
Add a customized LibreTranslate instance to the README.md
2024-06-14 08:50:54 -04:00
lotigara
11ba0ffafc
Add a customized LibreTranslate instance to the README.md 2024-06-14 14:33:12 +03:00
Luna
4088b271ee
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-06-09 19:09:21 +02:00
Wahyu Hamdani
e237d06349
Translated using Weblate (Indonesian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/id/
2024-06-08 12:27:05 +00:00
Piero Toffanin
d530b628d0
Update issue-triage.yml 2024-06-07 11:17:45 -04:00
Piero Toffanin
8bbda1949d Filter empty strings 2024-06-03 13:20:48 -04:00
Piero Toffanin
f0fb4218e7 Bump version 2024-06-03 13:11:59 -04:00
Piero Toffanin
df3680c280 Fix alternatives unique comparison 2024-06-03 13:11:42 -04:00
Piero Toffanin
cb6b324478
Update README.md 2024-06-03 13:08:16 -04:00
Piero Toffanin
76721891b4
Merge pull request #630 from pierotofy/alternatives
Support for alternative translations
2024-06-03 13:03:19 -04:00
Piero Toffanin
86d15118ca Fix indendation 2024-06-03 12:55:35 -04:00
Piero Toffanin
ba8b8d97a1 Feat: support for alternative translations 2024-06-03 12:42:32 -04:00
Piero Toffanin
f7a35db05b
Merge pull request #622 from savionlee/patch-1
Update cuda.Dockerfile to CUDA 12
2024-05-06 16:06:16 -04:00
Savion Lee
16ae59aa43
Update cuda.Dockerfile to CUDA 12 2024-05-06 14:06:40 -05:00
P.J. Finlay
67c5348c02
Merge pull request #618 from LibreTranslate/update-argos-1_9_6
Upgrade to Argos Translate v1.9.6
2024-05-01 16:42:36 -05:00
Piero Toffanin
f167b94166
Merge pull request #619 from PeterDaveHello/UpdateDockerBaseImage
Update Dockerfile base image to Python v3.11.9
2024-05-01 09:13:59 -04:00
Peter Dave Hello
7722984df5 Update Dockerfile base image to Python v3.11.9 2024-05-01 17:57:27 +08:00
P.J. Finlay
9dde1e0142
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)
2024-04-30 16:46:20 -05:00
P.J. Finlay
c8360d0359 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
2024-04-29 14:41:12 -05:00
Piero Toffanin
f1195d9d13 Bump version 2024-04-28 11:50:36 -04:00
Peter Dave Hello
a403ba7e3a
Translated using Weblate (Chinese (Traditional))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
2024-04-23 22:07:09 +02:00
Piero Toffanin
720b5c17a7
Merge pull request #608 from LibreTranslate/mo
Fix localization on docker/pip
2024-04-22 13:23:43 -04:00
Piero Toffanin
0a83fd29bd Include mo files 2024-04-22 13:13:47 -04:00
Piero Toffanin
df78c333c9
Update README.md 2024-04-21 12:20:01 -04:00
Piero Toffanin
fd0739b85e
Merge pull request #607 from steve15963/develop
update readme.md(add language List)
2024-04-21 12:18:42 -04:00
송진현
79836663ec update readme.md(add language List) 2024-04-22 01:04:36 +09:00
Netesfiu
1bc6a3061c
Translated using Weblate (Hungarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hu/
2024-04-18 10:04:47 +02:00
Piero Toffanin
9d9e3233ba
Merge pull request #606 from Netesfiu/patch-1
Mark hungarian a reviewed
2024-04-17 08:04:28 -04:00
András Farkas
a6e8ee4af0
Mark hungarian a reviewed
I've just finished reviewing the strings. It should be usable at this state.
2024-04-17 10:51:35 +02:00
Ilya
847235e33b
Translated using Weblate (Persian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fa/
2024-04-07 11:57:44 +02:00
searinminecraft
7fdde99b48
Translated using Weblate (Filipino)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fil/
2024-04-03 10:46:50 +02:00
searinminecraft
71b24e0631
Added translation using Weblate (Filipino) 2024-04-03 03:50:00 +02:00
rferee
51ef2b5915
Translated using Weblate (Belarusian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/be/
2024-04-03 01:12:15 +02:00
rferee
cabf2294b2
Added translation using Weblate (Belarusian) 2024-04-02 22:03:03 +02:00
I Just Me
508cff36f8
Translated using Weblate (Chinese (Traditional))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hant/
2024-03-28 22:01:49 +01:00
Piero Toffanin
2007ea87e6
Merge pull request #603 from zachdecook/detect-integer
Documentation: /detect returns an integer 0-100, not a float
2024-03-26 10:47:43 -04:00
Zach DeCook
94f87cdac1 Documentataion: /detect returns an integer 0-100, not a float 2024-03-26 09:24:16 -04:00
Kaleido Scope
887b282c6a
Translated using Weblate (Norwegian Nynorsk)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nn/
2024-03-25 13:01:56 +01:00
Kaleido Scope
87beef971d
Translated using Weblate (Norwegian Bokmål)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nb_NO/
2024-03-25 13:01:55 +01:00
cat
01a82975fd
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-03-25 13:01:54 +01:00
symegac
1d8fbfda0a
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-03-25 13:01:53 +01:00
VorHerre
5d9506c4bd
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-03-25 13:01:52 +01:00
Kaleido Scope
65609a6bcf
Translated using Weblate (Norwegian Nynorsk)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nn/
2024-03-22 17:01:53 +01:00
Kaleido Scope
619e6593ef
Added translation using Weblate (Norwegian Nynorsk) 2024-03-21 16:11:18 +01:00
cat
540df02a21
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-03-15 11:01:51 +01:00
cat
c0ce429163
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-03-12 23:01:46 +01:00
symegac
950d68f44d
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-03-12 23:01:45 +01:00
d
fcbf627b5b
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2024-03-07 09:01:57 +01:00
Piero Toffanin
0478cce281 Bump version 2024-03-06 11:37:20 -05:00
Piero Toffanin
6ae0091c4b
Merge pull request #596 from cyrinux/fix/ipv6-compat
fix: make libretranslate works with ipv6
2024-03-06 11:36:34 -05:00
Cyril Levis
3bfb8342a0
fix: also change entrypoint 2024-03-06 16:30:28 +01:00
Cyril Levis
732e984382
fix: make libretranslate with ipv6 2024-03-06 15:48:24 +01:00
Cyril Levis
b25ed7aae4
fix: make libretranslate with ipv6 2024-03-06 10:37:47 +01:00
Piero Toffanin
74a7831962
Merge pull request #594 from myanesp/main
add: R binding
2024-03-01 19:03:19 +01:00
myanesp
7b5303c875 add: R binding 2024-02-28 19:59:31 +00:00
Piero Toffanin
9af842b7df
Merge pull request #593 from Phoenix616/patch-1
Specify the supported color schemes
2024-02-27 17:17:45 +01:00
Max Lee
4549a2b3d6
Specify the supported color schemes 2024-02-27 14:36:41 +01:00
Scrambled777
6313175321
Translated using Weblate (Hindi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hi/
2024-02-24 18:01:59 +01:00
Piero Toffanin
51cefcfb4e
Update README.md 2024-02-20 13:17:13 -05:00
Liam Johnson
da9837f833
Translated using Weblate (Uyghur)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ug/
2024-02-20 08:02:08 +01:00
Piero Toffanin
eaa3d58076
Merge pull request #590 from tderflinger/main
Added TypeScript language binding library.
2024-02-19 16:24:58 -05:00
Thomas Derflinger
49787d8b44 Added TypeScript language binding library. 2024-02-19 22:00:12 +01:00
Liam Johnson
a7910dd61c
Added translation using Weblate (Uyghur) 2024-02-19 08:00:25 +01:00
Piero Toffanin
2b59e5d2fc Reviewed Bulgarian 2024-02-17 15:09:14 -05:00
Salif Mehmed
c671bad1ab
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2024-02-17 03:36:14 +01:00
Salif Mehmed
cbe8d91a8e
Translated using Weblate (Bulgarian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/bg/
2024-02-15 19:02:06 +01:00
Salif Mehmed
718297d74a
Added translation using Weblate (Bulgarian) 2024-02-14 18:02:45 +01:00
Piero Toffanin
b0f372638e
Update README.md 2024-02-13 10:36:06 -05:00
Piero Toffanin
210f4cfb4f
Merge pull request #585 from argosopentech/patch-3
Improve model contributing doc
2024-02-13 10:30:48 -05:00
Argos Open Tech
abbfb3561d
Improve model contributing doc 2024-02-13 07:53:11 -06:00
Piero Toffanin
d0f1cdfc96
Update README.md 2024-02-11 14:28:22 -05:00
石丸健太郎
45266554cb
Translated using Weblate (Japanese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ja/
2024-02-10 05:01:56 +01:00
Piero Toffanin
e34687df9b
Merge pull request #584 from pierotofy/timecost
Add --req-time-cost
2024-02-05 15:22:24 -05:00
Piero Toffanin
176d37df73 Remove trailing whitespace test 2024-02-05 15:16:32 -05:00
Piero Toffanin
1e50dc92bf Update README 2024-02-05 15:13:20 -05:00
Piero Toffanin
b522a0f763 Add --req-time-cost 2024-02-05 15:03:27 -05:00
ShareASmile
8d4fa40acd
Translated using Weblate (Hindi)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/hi/
2024-02-02 21:01:50 +01:00
Priit Jõerüüt
4419d5ec75
Translated using Weblate (Estonian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/et/
2024-02-01 19:01:49 +01:00
Priit Jõerüüt
611c548db5
Translated using Weblate (Estonian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/et/
2024-01-31 17:22:03 +01:00
Priit Jõerüüt
0c6fd67e40
Added translation using Weblate (Estonian) 2024-01-31 00:40:59 +01:00
Yanjun Chen
349284d6c2
Translated using Weblate (Chinese (Simplified))
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/zh_Hans/
2024-01-30 17:01:53 +01:00
r5jyhte
6228706d5b
Translated using Weblate (Polish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/pl/
2024-01-30 17:01:52 +01:00
victor dargallo
9a1934e450
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2024-01-27 10:01:47 +01:00
Piero Toffanin
b7a273dd28
Merge pull request #580 from jmlord/main
ltmanage in bin
2024-01-24 21:54:05 -05:00
Jean-Michel
b3d6815323 moved ltmanage to /usr/bin 2024-01-24 16:36:18 -05:00
Jean-Michel
929002b0c6 ltmanage in bin
This allows using the api key instructions from the readme as-is in the docker container.
2024-01-24 16:05:01 -05:00
Piero Toffanin
a90814706a
Update README.md 2024-01-23 12:44:14 -05:00
Michal Čihař
cf2216f441
Translated using Weblate (Czech)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/cs/
2024-01-23 15:01:51 +01:00
Piero Toffanin
fa24655404 Fix remote API key database lookup 2024-01-21 13:17:07 -05:00
Piero Toffanin
c782fe108b
Merge pull request #574 from pierotofy/charlimit
Granular API key char limit support
2024-01-21 12:54:10 -05:00
Piero Toffanin
2b11e909d3 Granular API key char limit support 2024-01-21 12:48:42 -05:00
dtalens
0b139b9dac
Translated using Weblate (Catalan)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ca/
2024-01-21 02:01:49 +01:00
dtalens
3edc1883ed
Added translation using Weblate (Catalan) 2024-01-20 01:14:34 +01:00
symegac
9283bdb2d9
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2024-01-15 00:06:18 +00:00
Piero Toffanin
1d8b58e2bf Bump version 2024-01-10 13:18:20 -05:00
Piero Toffanin
6809b9ff44 Fix locale change button behavior 2024-01-10 13:15:33 -05:00
Michal Čihař
9067c38407
Translated using Weblate (Czech)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/cs/
2024-01-10 18:14:32 +00:00
Piero Toffanin
575a2d4960
Update README.md 2024-01-10 09:55:25 -05:00
Piero Toffanin
a2e73daab9
Merge pull request #572 from nijel/patch-1
Mark Czech as reviewed
2024-01-10 09:55:04 -05:00
Michal Čihař
f888d77b3a
Mark Czech as reviewed
I've just gone through the strings and fixed them. I still might have missed something, but it should be good to use now.
2024-01-10 10:37:18 +01:00
Piero Toffanin
f955583308
Merge pull request #570 from CandiedCode/security-updates
build(sca): 🔒 update dependencies to address security issues
2024-01-08 11:14:22 -05:00
Jennifer Cwagenberg
51341d92ad build(sca): 🔒 update dependencies to address security issues 2024-01-08 08:42:21 -06:00
Piero Toffanin
25b9d92a32 Remove notice in web ui 2024-01-07 10:58:26 -05:00
Piero Toffanin
300d0b0d79
Add FAQ 2024-01-06 22:06:01 -05:00
EGuillemot
f4d81ea8ba
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2024-01-04 01:08:20 +01:00
Piero Toffanin
5cb0cd6b3c Bump version 2024-01-03 13:33:01 -05:00
EGuillemot
b85378646d
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2024-01-02 23:38:10 +00:00
fail a fail
ddc46bc6f8
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2024-01-02 23:38:10 +00:00
EGuillemot
4158785089
Translated using Weblate (French)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fr/
2024-01-02 23:38:09 +00:00
Piero Toffanin
18fa24c7e6
Update mirrors list 2023-12-30 12:01:38 -05:00
Piero Toffanin
6c2ff0e389
Discourse translator link update 2023-12-29 16:10:19 -05:00
Moji Norouzi zadeh
9ae6ee7ef3
Translated using Weblate (Persian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/fa/
2023-12-26 21:08:58 +00:00
Piero Toffanin
08be64d80c
Update README.md 2023-12-26 14:05:02 -05:00
Piero Toffanin
dab87ee34c
Merge pull request #563 from SebouChu/main
Added Ruby API wrapper
2023-12-26 13:58:00 -05:00
Sébastien Gaya
0968a95391
Added Ruby API wrapper 2023-12-26 18:49:06 +01:00
Piero Toffanin
e7773f2e94
Merge pull request #561 from euberdeveloper/main
build(docker): add arm version
2023-12-24 00:40:17 -05:00
euberdeveloper
57bcae918d build(docker): add arm version
Signed-off-by: euberdeveloper <euberdeveloper@gmail.com>
2023-12-24 02:24:55 +01:00
tuanta
2855d19323
Translated using Weblate (Vietnamese)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/vi/
2023-12-16 08:07:38 +00:00
Piero Toffanin
c6be02a0c2
Merge pull request #557 from drivard/main
Removed helm chart directory. It is moved to its own repository. Upda…
2023-12-15 22:11:28 -05:00
Dominick Rivard
09f47b3ffa Update helm install command 2023-12-15 16:14:33 -05:00
Dominick Rivard
ca559711cc Removed helm chart directory. It is moved to its own repository. Updated the readme file. 2023-12-15 16:04:20 -05:00
Piero Toffanin
f1524218ce
Merge pull request #555 from drivard/main
Update README.md with Helm installation instructions
2023-12-14 20:46:21 -05:00
Dominick Rivard
55f0bbe768 Update README.md with Helm installation instructions 2023-12-14 20:26:06 -05:00
Piero Toffanin
e221721e23
Merge pull request #554 from pierotofy/salad
Workaround for salad
2023-12-11 17:23:00 -05:00
Piero Toffanin
310b71c056 Workaround for salad 2023-12-11 17:14:27 -05:00
Piero Toffanin
7508dbaa46
Merge pull request #553 from rasos/patch-1
Add k8s.yaml to kubernetes section of readme.md
2023-12-10 11:20:03 -05:00
Roland
822aa1c632
Update README.md
Add k8s.yaml to kubernetes section of readme
2023-12-10 10:12:36 +01:00
ArnoldCordewiner
08a711631b
Translated using Weblate (Dutch)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/nl/
2023-12-09 22:07:03 +01:00
Piero Toffanin
c6fe6cfdbf
Merge pull request #551 from LibreTranslate/dependabot/github_actions/actions/setup-python-5
Bump actions/setup-python from 4 to 5
2023-12-06 13:34:03 -05:00
dependabot[bot]
c186d72f27
Bump actions/setup-python from 4 to 5
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-06 16:07:07 +00:00
Aitor Salaberria
57a87f35ee
Translated using Weblate (Basque)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/eu/
2023-12-05 21:06:25 +01:00
Aitor Salaberria
a1b8b8beba
Added translation using Weblate (Basque) 2023-12-04 20:53:43 +01:00
Fqwe1
18d3a5a03c
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2023-11-26 08:04:46 +01:00
Bezruchenko Simon
65fdbe8c5f
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2023-11-22 21:02:48 +01:00
symegac
172e1e56ee
Translated using Weblate (Danish)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/da/
2023-11-18 06:03:12 +01:00
Piero Toffanin
bbb2ba3b70
Merge pull request #542 from pierotofy/decay
Add hourly decay limit
2023-11-16 15:51:28 -05:00
Piero Toffanin
6d6202de83 Add hourly decay limit 2023-11-16 15:43:47 -05:00
Piero Toffanin
a4a67b2b79 Prevent div by zero 2023-11-15 15:02:23 -05:00
Piero Toffanin
80b510b1ad
Merge pull request #541 from pierotofy/cost
Dynamic limiter costs
2023-11-15 14:59:10 -05:00
Piero Toffanin
48464938cb Fix tab 2023-11-15 14:49:53 -05:00
Piero Toffanin
9bc342a9ae Cleanup 2023-11-15 14:47:44 -05:00
Piero Toffanin
f3bf89375f Dynamic limit costs 2023-11-15 14:34:20 -05:00
Piero Toffanin
0aa4bcac7f Add FAQ 2023-11-15 13:57:54 -05:00
Piero Toffanin
b0a84f30f4
Merge pull request #540 from pierotofy/pin
Pin torch to 2.0.1
2023-11-15 13:18:43 -05:00
Piero Toffanin
e0d20c2cba Up version 2023-11-15 13:13:36 -05:00
Piero Toffanin
5120f122f1 Pin torch to 2.0.1 2023-11-15 13:11:52 -05:00
Piero Toffanin
57c7f63cce
Merge pull request #537 from pierotofy/hourly
Add hourly req limit option
2023-11-10 15:00:49 -05:00
Piero Toffanin
4903ab757c Add --hourly-req-limit 2023-11-10 14:56:52 -05:00
Piero Toffanin
7f0ae82f14
Merge pull request #534 from argosopentech/patch-2
Remove translate.argosopentech.com mirror
2023-11-09 11:03:29 -05:00
Argos Open Tech
d750584abe
Remove translate.argosopentech.com mirror
This instance is already overburdened and I want to stop directing new users to it.

I'm having a hard time keeping the translate.argosopentech.com LibreTranslate mirror up on the current server. The CPU usage is consistently at 100% because so many people are making requests. I limited requests to 3/minute per IP address but am still having issues.
2023-11-09 09:50:47 -06:00
Piero Toffanin
4761ae5c43
Merge pull request #533 from pierotofy/batchfix
Fix batch auto language detection
2023-11-08 22:04:45 -05:00
Piero Toffanin
8427f86275 Minor refactor 2023-11-08 21:58:59 -05:00
Piero Toffanin
37bd2365b9 Bump version 2023-11-08 21:57:14 -05:00
Piero Toffanin
dc194db0dd Refactor translate_file endpoint 2023-11-08 21:55:55 -05:00
Piero Toffanin
cbe1c5db71 Fix auto batch translation 2023-11-08 21:49:56 -05:00
Piero Toffanin
3ad487f4bf
Update issue-triage.yml 2023-11-08 09:07:42 -05:00
Piero Toffanin
95c4cf6466 Add issue triage 2023-11-07 17:36:36 -05:00
Rex_sa
881a0e8874
Translated using Weblate (Arabic)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/ar/
2023-11-02 04:00:21 +00:00
Piero Toffanin
92df4c3e6b
Merge pull request #528 from pierotofy/ld
Use langdetect
2023-10-30 20:54:35 -04:00
Piero Toffanin
02ea8ae011 Switch linguars for langdetect 2023-10-30 20:39:30 -04:00
Piero Toffanin
5033f58e0d Handle zt lingua case 2023-10-30 13:23:16 -04:00
Piero Toffanin
f9712c800c
Merge pull request #526 from pierotofy/langdetect
Use lingua for language detection
2023-10-30 13:14:04 -04:00
Piero Toffanin
2972292fc5 Fix string index out of range fault 2023-10-30 13:09:39 -04:00
Piero Toffanin
a9bff7929c Bump version 2023-10-30 12:53:03 -04:00
Piero Toffanin
6ff5bba000 Add lexilang for language detection on short texts 2023-10-30 12:52:33 -04:00
Piero Toffanin
c9592a236a Fix trailing whitespace 2023-10-30 00:35:40 -04:00
Piero Toffanin
3fd2abc1f9 Run ruff 2023-10-30 00:20:11 -04:00
Piero Toffanin
522b8b03d7 Fix some warnings 2023-10-30 00:09:52 -04:00
Piero Toffanin
6c5fa2a4ee Use lingua for language detection 2023-10-30 00:03:00 -04:00
Piero Toffanin
e7347c9fef
Merge pull request #525 from pierotofy/crashfix
Fix docker crash on ARM
2023-10-29 21:46:22 -04:00
Piero Toffanin
7be612419b Pin torch to 2.0.1 2023-10-29 21:40:23 -04:00
Piero Toffanin
be8637e0c6
Discourse plugin example link 2023-10-29 18:38:47 -04:00
Piero Toffanin
8e3eac60cd Merge branch 'main' of https://github.com/uav4geo/LibreTranslate 2023-10-27 10:03:14 -04:00
Piero Toffanin
001a870fbd Improve layout on mobile 2023-10-27 10:02:56 -04:00
Piero Toffanin
7a2b9a51fc
Update VERSION 2023-10-27 00:08:34 -04:00
Fqwe1
d6ebead75f
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2023-10-23 10:00:39 +02:00
Piero Toffanin
0f8afa9c19
Update VERSION 2023-10-21 22:09:37 -04:00
Fqwe1
d1fe43cc3b
Translated using Weblate (Ukrainian)
Translation: LibreTranslate/App
Translate-URL: https://hosted.weblate.org/projects/libretranslate/app/uk/
2023-10-21 21:02:12 +02:00
Piero Toffanin
27e6535014 Update argostranslate 2023-10-21 10:27:57 -04:00
Piero Toffanin
673afbb6ab
Merge pull request #520 from CandiedCode/update_actions
ci(actions): ⬆️ update github actions to the latest versions
2023-10-19 16:25:01 -04:00
Jennifer Cwagenberg
fb1772fd0f ci(actions): ⬆️ update github actions to the latest versions 2023-10-19 14:26:57 -05:00
Piero Toffanin
4abccd5ea3
Merge pull request #519 from CandiedCode/docker_cleanup
build(docker): 🔧 update dockerignore
2023-10-19 15:02:02 -04:00
Jennifer Cwagenberg
7125fb2385 build(docker): 🔧 update dockerignore to remove unused files and directories from docker images 2023-10-19 13:59:03 -05:00
Piero Toffanin
e5258d0cb6 Fix translate into sort order 2023-10-19 14:52:16 -04:00
Piero Toffanin
87322de964 Unicode title 2023-10-19 13:20:23 -04:00
Piero Toffanin
c256359ec2 Update argostranslate 2023-10-19 06:25:11 -04:00
Piero Toffanin
285ba58e29
Merge pull request #516 from Fqwe1/main
Add Ukrainian translation
2023-10-18 10:44:55 -04:00
Fqwe1
d65bc1202d
Update README.md 2023-10-18 04:40:44 +00:00
Fqwe1
d4eecca927
Update meta.json 2023-10-18 04:39:46 +00:00
Piero Toffanin
c044d52177 Merge branch 'front' 2023-10-09 16:17:49 -04:00
Piero Toffanin
09b42256a2 Fix download button color 2023-10-09 16:17:38 -04:00
155 changed files with 31654 additions and 10217 deletions

View file

@ -1,3 +1,9 @@
.git*
docker
docker*
.Dockerfile.swp
chart/
.editorconfig
*.yaml
*.md
!README.md

7
.github/dependabot.yaml vendored Normal file
View file

@ -0,0 +1,7 @@
---
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily

32
.github/workflows/issue-triage.yml vendored Normal file
View file

@ -0,0 +1,32 @@
name: Issue Triage
on:
issues:
types:
- opened
jobs:
issue_triage:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- uses: pierotofy/issuewhiz@v1
with:
ghToken: ${{ secrets.GITHUB_TOKEN }}
openAI: ${{ secrets.OPENAI_TOKEN }}
model: gpt-4o-2024-08-06
filter: |
- "#"
variables: |
- 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: "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 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."

View file

@ -12,16 +12,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v1
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
@ -33,7 +33,7 @@ jobs:
echo ::set-output name=gh-username-lower::$(echo ${{ github.repository_owner }} | tr '[:upper:]' '[:lower:]')
- name: Build and push Image
uses: docker/build-push-action@v2
uses: docker/build-push-action@v5
with:
file: ./docker/Dockerfile
platforms: linux/amd64,linux/arm64
@ -44,8 +44,24 @@ jobs:
env:
TAG: ${{ startsWith(github.ref, 'refs/tags/') && steps.get-variables.outputs.version || 'latest' }}
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
# this might remove tools that are actually needed,
# if set to "true" but frees about 6 GB
tool-cache: false
# all of these default to true, but feel free to set to
# "false" if necessary for your workflow
android: true
dotnet: true
haskell: true
large-packages: true
docker-images: true
swap-storage: true
- name: Build and push Cuda Image
uses: docker/build-push-action@v2
uses: docker/build-push-action@v5
with:
file: ./docker/cuda.Dockerfile
platforms: linux/amd64

View file

@ -18,9 +18,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.8'
- name: Install dependencies

View file

@ -22,9 +22,9 @@ jobs:
python-version: ['3.8', '3.9', '3.10']
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
@ -41,7 +41,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Docker build
run: docker build -f docker/Dockerfile -t libretranslate .

View file

@ -9,15 +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:
- id: ruff
name: " ⚡️ Formatting code with Ruff"
args:
- --fix
ci:
autofix_commit_msg: 🎨 [pre-commit] Auto format

View file

@ -0,0 +1,2 @@
https://libretranslate.com/funding.json

View file

@ -134,3 +134,7 @@ This prevents pip packages from being installed system-wide. This way, there are
References:
* [Python venv documentation](https://docs.python.org/library/venv.html)
## Other Languages
- [Español (CONTRIBUTING)](docs/CONTRIBUTING.es.md)

371
README.md
View file

@ -1,14 +1,12 @@
# LibreTranslate
[Try it online!](https://libretranslate.com) | [API Docs](https://libretranslate.com/docs) | [Community Forum](https://community.libretranslate.com/)
[Try it online!](https://libretranslate.com) | [API Docs](https://libretranslate.com/docs) | [Community Forum](https://community.libretranslate.com/) | [Bluesky](https://bsky.app/profile/libretranslate.com)
[![Python versions](https://img.shields.io/pypi/pyversions/libretranslate)](https://pypi.org/project/libretranslate) [![Run tests](https://github.com/LibreTranslate/LibreTranslate/workflows/Run%20tests/badge.svg)](https://github.com/LibreTranslate/LibreTranslate/actions?query=workflow%3A%22Run+tests%22) [![Build and Publish Docker Image](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-docker.yml/badge.svg)](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-docker.yml) [![Publish package](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-package.yml/badge.svg)](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-package.yml) [![Awesome Humane Tech](https://raw.githubusercontent.com/humanetech-community/awesome-humane-tech/main/humane-tech-badge.svg?sanitize=true)](https://codeberg.org/teaserbot-labs/delightful-humane-design)
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.
![image](https://user-images.githubusercontent.com/64697405/139015751-279f31ac-36f1-4950-9ea7-87e76bf65f51.png)
[Try it online!](https://libretranslate.com) | [API Docs](https://libretranslate.com/docs)
![Translation](https://github.com/user-attachments/assets/457696b5-dbff-40ab-a18e-7bfb152c5121)
## API Examples
@ -22,9 +20,9 @@ const res = await fetch("https://libretranslate.com/translate", {
body: JSON.stringify({
q: "Hello!",
source: "en",
target: "es"
target: "es",
}),
headers: { "Content-Type": "application/json" }
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
@ -38,6 +36,8 @@ Response:
}
```
List of language codes: https://libretranslate.com/languages
### Auto Detect Language
Request:
@ -48,9 +48,9 @@ const res = await fetch("https://libretranslate.com/translate", {
body: JSON.stringify({
q: "Ciao!",
source: "auto",
target: "en"
target: "en",
}),
headers: { "Content-Type": "application/json" }
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
@ -68,7 +68,7 @@ Response:
}
```
### HTML (beta)
### HTML
Request:
@ -79,9 +79,9 @@ const res = await fetch("https://libretranslate.com/translate", {
q: '<p class="green">Hello!</p>',
source: "en",
target: "es",
format: "html"
format: "html",
}),
headers: { "Content-Type": "application/json" }
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
@ -95,6 +95,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!
@ -108,6 +140,14 @@ libretranslate [args]
Then open a web browser to <http://localhost:5000>
By default LibreTranslate will install support for all available languages. To only load certain languages and reduce startup time, you can use the **--load-only** argument:
```bash
libretranslate --load-only en,es,fr
```
Check also all other [arguments](#settings--flags) below.
On Ubuntu 20.04 you can also use the install script available at <https://github.com/argosopentech/LibreTranslate-init>
## Run with Docker
@ -128,11 +168,11 @@ 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
You can use hardware acceleration to speed up translations on a GPU machine with CUDA 11.2 and [nvidia-docker](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) installed.
You can use hardware acceleration to speed up translations on a GPU machine with CUDA 12.4.1 and [nvidia-docker](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) installed.
Run this version with:
@ -150,41 +190,48 @@ Arguments passed to the process or set via environment variables are split into
### Settings / Flags
| Argument | Description | Default Setting | Env. name |
|-----------------------------|-------------------------------------------------------------------------------------------------------------| -------------------- |------------------------------|
| --debug | Enable debug environment | `Disabled` | LT_DEBUG |
| --ssl | Whether to enable SSL | `Disabled` | LT_SSL |
| --api-keys | Enable API keys database for per-client rate limits when --req-limit is reached | `Don't use API keys` | LT_API_KEYS |
| --require-api-key-origin | Require use of an API key for programmatic access to the API, unless the request origin matches this domain | `No restrictions on domain origin` | LT_REQUIRE_API_KEY_ORIGIN |
| --require-api-key-secret | Require use of an API key for programmatic access to the API, unless the client also sends a secret match | `No secrets required` | LT_REQUIRE_API_KEY_SECRET |
| --suggestions | Allow user suggestions | `Disabled` | LT_SUGGESTIONS |
| --disable-files-translation | Disable files translation | `File translation allowed` | LT_DISABLE_FILES_TRANSLATION |
| --disable-web-ui | Disable web ui | `Web Ui enabled` | LT_DISABLE_WEB_UI |
| --update-models | Update language models at startup | `Only on if no models found` | LT_UPDATE_MODELS |
| --metrics | Enable the /metrics endpoint for exporting [Prometheus](https://prometheus.io/) usage metrics | `Disabled` | LT_METRICS |
| Argument | Description | Default Setting | Env. name |
| ----------------------------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------- | ------------------------------ |
| --debug | Enable debug environment | `Disabled` | LT_DEBUG |
| --ssl | Whether to enable SSL | `Disabled` | LT_SSL |
| --api-keys | Enable API keys database for per-client rate limits when --req-limit is reached | `Don't use API keys` | LT_API_KEYS |
| --require-api-key-origin | Require use of an API key for programmatic access to the API, unless the request origin matches this domain | `No restrictions on domain origin` | LT_REQUIRE_API_KEY_ORIGIN |
| --require-api-key-secret | Require use of an API key for programmatic access to the API, unless the client also sends a secret match | `No secrets required` | LT_REQUIRE_API_KEY_SECRET |
| --require-api-key-fingerprint | Require use of an API key for programmatic access to the API, unless the client also matches a fingerprint | `No fingerprinting required` | LT_REQUIRE_API_KEY_FINGERPRINT |
| --under-attack | Enable under attack mode. When enabled, requests must be made with an API key | `Disabled` | LT_UNDER_ATTACK |
| --suggestions | Allow user suggestions | `Disabled` | LT_SUGGESTIONS |
| --disable-files-translation | Disable files translation | `File translation allowed` | LT_DISABLE_FILES_TRANSLATION |
| --disable-web-ui | Disable web ui | `Web Ui enabled` | LT_DISABLE_WEB_UI |
| --update-models | Update language models at startup | `Only on if no models found` | LT_UPDATE_MODELS |
| --metrics | Enable the /metrics endpoint for exporting [Prometheus](https://prometheus.io/) usage metrics | `Disabled` | LT_METRICS |
| --hide-api | Hide the API request/response section in the web UI | `Disabled` | LT_HIDE_API |
### 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-language | Set frontend web interface language | `(empty)` (auto-detect) | LT_FRONTEND_LANGUAGE |
| --frontend-title | Set frontend web interface title | `(empty)` | LT_FRONTEND_TITLE |
| --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 |
| --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 |
| --url-prefix | Add prefix to URL: example.com:5000/url-prefix/ | `/` | LT_URL_PREFIX |
### Notes:
@ -225,13 +272,29 @@ You can pass application arguments directly to Gunicorn via:
gunicorn --bind 0.0.0.0:5000 'wsgi:app(api_keys=True)'
```
## Run with Kubernetes
## Kubernetes Deployment
See ["LibreTranslate: your own translation service on Kubernetes" by JM Robles](https://jmrobles.medium.com/libretranslate-your-own-translation-service-on-kubernetes-b46c3e1af630)
See [Medium article by JM Robles](https://jmrobles.medium.com/libretranslate-your-own-translation-service-on-kubernetes-b46c3e1af630) and the improved [k8s.yaml](https://github.com/LibreTranslate/LibreTranslate/blob/main/k8s.yaml) by @rasos.
### Helm Chart
Based on @rasos work you can now install LibreTranslate on Kubernetes using Helm.
A Helm chart is now available in the [helm-chart](https://github.com/LibreTranslate/helm-chart/) repository where you can find more details.
You can quickly install LibreTranslate on Kubernetes using Helm with the following command:
```bash
helm repo add libretranslate https://libretranslate.github.io/helm-chart/
helm repo update
helm search repo libretranslate
helm install libretranslate libretranslate/libretranslate --namespace libretranslate --create-namespace
```
## 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.
@ -243,6 +306,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
@ -285,7 +354,7 @@ scrape_configs:
# Needed only if you use --metrics-auth-token
#authorization:
#credentials: "mytoken"
#credentials: "mytoken"
static_configs:
- targets: ["localhost:5000"]
@ -308,6 +377,7 @@ You can use the LibreTranslate API using the following bindings:
- Rust: <https://github.com/DefunctLizard/libretranslate-rs>
- Node.js: <https://github.com/franciscop/translate>
- TypeScript: <https://github.com/tderflinger/libretranslate-ts>
- .Net: <https://github.com/sigaloid/LibreTranslate.Net>
- Go: <https://github.com/SnakeSel/libretranslate>
- Python: <https://github.com/argosopentech/LibreTranslate-py>
@ -317,10 +387,12 @@ You can use the LibreTranslate API using the following bindings:
- Unix: <https://github.com/argosopentech/LibreTranslate-sh>
- Shell: <https://github.com/Hayao0819/Hayao-Tools/tree/master/libretranslate-sh>
- Java: <https://github.com/suuft/libretranslate-java>
- Ruby: <https://github.com/noesya/libretranslate>
- R: <https://github.com/myanesp/libretranslateR>
## Discourse Plugin
You can use this [discourse translator plugin](https://github.com/LibreTranslate/discourse-translator) to translate [Discourse](https://discourse.org) topics. To install it simply modify `/var/discourse/containers/app.yml`:
You can use the [official discourse translator plugin](https://github.com/discourse/discourse-translator) to translate [Discourse](https://discourse.org) topics with LibreTranslate. To install it simply modify `/var/discourse/containers/app.yml`:
```yaml
## Plugins go here
@ -331,15 +403,18 @@ hooks:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/LibreTranslate/discourse-translator
- git clone https://github.com/discourse/discourse-translator
...
```
Then issue `./launcher rebuild app`. From the Discourse's admin panel then select "LibreTranslate" as a translation provider and set the relevant endpoint configurations.
See it in action on this [page](https://community.libretranslate.com/t/have-you-considered-adding-the-libretranslate-discourse-translator-multilingual-to-this-forum/766).
## Mobile Apps
- [LibreTranslator](https://codeberg.org/BeoCode/LibreTranslator) is an Android app [available on the Play Store](https://play.google.com/store/apps/details?id=de.beowulf.libretranslater) and [in the F-Droid store](https://f-droid.org/packages/de.beowulf.libretranslater/) that uses the LibreTranslate API.
- [Translate You](https://github.com/you-apps/TranslateYou) is a privacy focused translator app built with MD3 available [in F-Droid Store](https://f-droid.org/packages/com.bnyro.translate/) and uses the LibreTranslate API amongst other providers.
- [LiTranslate](https://github.com/viktorkalyniuk/LiTranslate-iOS) is an iOS app [available on the App Store](https://apps.apple.com/us/app/litranslate/id1644385339) that uses the LibreTranslate API.
## Web browser
@ -351,27 +426,25 @@ Then issue `./launcher rebuild app`. From the Discourse's admin panel then selec
This is a list of public LibreTranslate instances, some require an API key. If you want to add a new URL, please open a pull request.
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.argosopentech.com](https://translate.argosopentech.com/)|-
[translate.foxhaven.cyou](https://translate.foxhaven.cyou/)|-
[translate.terraprint.co](https://translate.terraprint.co/)|-
[trans.zillyhuhn.com](https://trans.zillyhuhn.com/)|-
[libretranslate.eownerdead.dedyn.io](https://libretranslate.eownerdead.dedyn.io)|-
| 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.flossboxin.org.in](https://translate.flossboxin.org.in/) | | [ [Contact/eMail](mailto:dev@flossboxin.org.in) ] |
| [lt.blitzw.in](https://lt.blitzw.in/) | | |
## TOR/i2p Mirrors
URL |
--- |
[lt.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion](http://lt.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion/)|
[lt.vern.i2p](http://vernf45n7mxwqnp5riaax7p67pwcl7wcefdcnqqvim7ckdx4264a.b32.i2p/)|
| URL |
| ---------------------------------------------------------------------------------------------------------------------------------------------- |
| [lt.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion](http://lt.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion/) |
| [lt.vern.i2p](http://vernf45n7mxwqnp5riaax7p67pwcl7wcefdcnqqvim7ckdx4264a.b32.i2p/) |
## Adding New Language Models
You have two options to create new language models:
* [Locomotive](https://github.com/LibreTranslate/Locomotive)
* [Argos Train](https://github.com/argosopentech/argos-train) ([video tutorial](https://www.youtube.com/watch?v=Vj_qgnhOEwg))
- [Locomotive](https://github.com/LibreTranslate/Locomotive)
- [Argos Train](https://github.com/argosopentech/argos-train) ([video tutorial](https://www.youtube.com/watch?v=Vj_qgnhOEwg))
Most of the training data is from [Opus](http://opus.nlpl.eu/), which is an open source parallel corpus. Check also [NLLU](https://nllu.libretranslate.com)
@ -384,66 +457,74 @@ To help improve or review the UI translations:
- Go to <https://hosted.weblate.org/projects/libretranslate/app/#translations>. All changes are automatically pushed to this repository.
- Once all strings have been reviewed/edited, open a pull request and change `libretranslate/locales/{code}/meta.json`:
```json
```json
{
"name": "<Language>",
"reviewed": true <-- Change this from false to true
"name": "<Language>",
"reviewed": true <-- Change this from false to true
}
```
```
### UI Languages
Language | Reviewed | Weblate Link
-------- | -------- | ------------
Arabic | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ar/)
Azerbaijani | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/az/)
Chinese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/zh/)
Chinese (Traditional) | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/zh_Hant/)
Czech | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/cs/)
Danish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/da/)
Dutch | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/nl/)
English | :heavy_check_mark: | [Edit](https://hosted.weblate.org/projects/libretranslate/app/)
Esperanto | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/eo/)
Finnish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fi/)
French | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fr/)
German | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/de/)
Greek | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/el/)
Hebrew | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/he/)
Hindi | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/hi/)
Hungarian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/hu/)
Indonesian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/id/)
Irish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ga/)
Italian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/it/)
Japanese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ja/)
Kabyle | | [Edit](https://hosted.weblate.org/projects/libretranslate/app/kab/)
Korean | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ko/)
Occitan | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/oc/)
Persian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fa/)
Polish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/pl/)
Portuguese | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/pt/)
Russian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ru/)
Slovak | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/sk/)
Spanish | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/es/)
Swedish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/sv/)
Turkish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/tr/)
Ukranian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/uk/)
Vietnamese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/vi/)
| Language | Reviewed | Weblate Link |
| --------------------- | ------------------ | ------------------------------------------------------------------------ |
| Arabic | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ar/) |
| Azerbaijani | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/az/) |
| Basque | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/eu/) |
| Chinese | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/zh/) |
| Chinese (Traditional) | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/zh_Hant/) |
| Czech | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/cs/) |
| Danish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/da/) |
| Dutch | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/nl/) |
| English | :heavy_check_mark: | [Edit](https://hosted.weblate.org/projects/libretranslate/app/) |
| Esperanto | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/eo/) |
| Finnish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fi/) |
| French | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fr/) |
| German | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/de/) |
| Greek | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/el/) |
| Hebrew | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/he/) |
| Hindi | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/hi/) |
| Hungarian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/hu/) |
| Indonesian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/id/) |
| Irish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ga/) |
| Italian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/it/) |
| Japanese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ja/) |
| Kabyle | :heavy_check_mark: | [Edit](https://hosted.weblate.org/projects/libretranslate/app/kab/) |
| Korean | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ko/) |
| Occitan | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/oc/) |
| Persian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fa/) |
| Polish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/pl/) |
| Portuguese | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/pt/) |
| Russian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ru/) |
| Slovak | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/sk/) |
| Spanish | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/es/) |
| Swedish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/sv/) |
| Turkish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/tr/) |
| Ukrainian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/uk/) |
| Vietnamese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/vi/) |
## Roadmap
Help us by opening a pull request!
- [x] A docker image (thanks [@vemonet](https://github.com/vemonet) !)
- [x] Auto-detect input language (thanks [@vemonet](https://github.com/vemonet) !)
- [X] User authentication / tokens
- [ ] Language bindings for every computer language
- [ ] [Improved translations](https://community.libretranslate.com/t/the-best-way-to-train-models/172)
Any other idea is welcome also.
## FAQ
### Can I use your API server at libretranslate.com for my application in production?
In short, no. [You need to buy an API key](https://portal.libretranslate.com). You can always run LibreTranslate for free on your own server of course.
In short, yes, [but only if you buy an API key](https://portal.libretranslate.com). You can always run LibreTranslate for free on your own server of course.
### Some translations on libretranslate.com are different than the self-hosted ones. Why?
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?
@ -497,6 +578,7 @@ Remove `#` on the ErrorLog and CustomLog lines to log requests.
Add this to an existing site config, or a new file in `/etc/apache2/sites-available/new-site.conf` and run `sudo a2ensite new-site.conf`.
To get a HTTPS subdomain certificate, install `certbot` (snap), run `sudo certbot certonly --manual --preferred-challenges dns` and enter your information (with `subdomain.domain.tld` as the domain). Add a DNS TXT record with your domain registrar when asked. This will save your certificate and key to `/etc/letsencrypt/live/{subdomain.domain.tld}/`. Alternatively, comment the SSL lines out if you don't want to use HTTPS.
</details>
<details>
@ -605,6 +687,70 @@ Add this to an existing NGINX config or save it as `libretranslate` in the `/etc
</details>
### Can I run it as a systemd (default pip/python installed one)?
Yes, just create a service file in /etc/systemd/system and enable it to run at startup.
The .env (environmant) file is optional based on your setup.
Add the below to the file (change to your values as necessary) and name the file as "libretranslate.service)
```javascript
[Unit]
Description=LibreTranslate
After=network.target
[Service]
User=root
Type=idle
Restart=always
Environment="PATH=/usr/local/lib/python3.11/dist-packages/libretranslate"
ExecStart=/usr/bin/python3 /usr/local/bin/libretranslate
EnvironmentFile=/usr/local/lib/python3.11/dist-packages/libretranslate/.env
ExecReload=/bin/kill -s HUP $MAINPID
KillMode=mixed
TimeoutStopSec=1
[Install]
WantedBy=multi-user.target
```
Once saved, reload the daemon & start the service:
```javascript
systemctl daemon-reload
systemctl start libretranslate.service
systemctl enable libretranslate.service
```
### Can I do batch translations?
Yes, pass an array of strings instead of a string to the `q` field:
```javascript
const res = await fetch("https://libretranslate.com/translate", {
method: "POST",
body: JSON.stringify({
q: ["Hello", "world"],
source: "en",
target: "es",
}),
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
// {
// "translatedText": [
// "Hola",
// "mundo"
// ]
// }
```
## Contributing
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.
- 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.
@ -616,3 +762,12 @@ This work is largely possible thanks to [Argos Translate](https://github.com/arg
## Trademark
See [Trademark Guidelines](https://github.com/LibreTranslate/LibreTranslate/blob/main/TRADEMARK.md)
## Related Projects
* [LTEngine](https://github.com/LibreTranslate/LTEngine): Machine translation powered by LLMs with a LibreTranslate-compatible API
## Other Languages
- [Español (README)](docs/README.es.md)

View file

@ -5,6 +5,7 @@ LibreTranslate is an open source organization. Because we make our code availabl
Some of our trademark names include:
* LibreTranslate
* LTEngine
Some of our trademark logos include:
@ -84,3 +85,7 @@ as long as you also include the statement equally prominently:
### LibreTranslate Community Guidelines
Various permissions to use LibreTranslate Trademarks have been provided to various members of the LibreTranslate Community, and these LibreTranslate Trademark Guidelines do not alter any such previously granted permissions.
## Other Languages
- [Español (TRADEMARK)](/docs/TRADEMARK.es.md)

View file

@ -1 +1 @@
1.3.13
1.7.1

View file

@ -1,4 +0,0 @@
apiVersion: v2
name: libretranslate
description: A Helm chart for Kubernetes to deploy LibreTranslate API
version: 0.1.0

View file

@ -1,58 +0,0 @@
# LibreTranslate Helm Chart
This Helm chart deploys a LibreTranslate instance on a Kubernetes cluster using the Helm package manager.
## Prerequisites
- Kubernetes 1.12+
- Helm 3.0+
## Installing the Chart
To install the chart with the release name `libretranslate`:
```bash
helm install libretranslate ./chart --namespace libretranslate --create-namespace
```
This command deploys LibreTranslate on the Kubernetes cluster with the default configuration. The [values.yaml](values.yaml) file lists the parameters that can be configured during installation.
> **Tip**: List all releases using `helm list`
## Uninstalling the Chart
To uninstall/delete the `libretranslate` deployment:
```bash
helm delete libretranslate
```
This command removes all the Kubernetes components associated with the chart and deletes the release.
## Configuration
See [values.yaml](values.yaml) for the full list of parameters that can be configured. You can specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
```bash
helm install libretranslate ./chart --namespace libretranslate --create-namespace --set service.port=8080
```
Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,
```bash
helm install libretranslate ./chart --namespace libretranslate --create-namespace -f values.yaml
```
## Upgrade
Run the following command to upgrade your LibreTranslate installation. This command will use the Helm chart in the ./chart directory, apply the custom values from values.yaml, and deploy the upgrade to the `libretranslate` namespace:
```bash
helm upgrade --install libretranslate ./chart --namespace libretranslate -f values.yaml
```
> **Tip**: You can use the default [values.yaml](values.yaml)
# References
- [https://jmrobles.medium.com/libretranslate-your-own-translation-service-on-kubernetes-b46c3e1af630](https://jmrobles.medium.com/libretranslate-your-own-translation-service-on-kubernetes-b46c3e1af630)
- [https://github.com/LibreTranslate/LibreTranslate](https://github.com/LibreTranslate/LibreTranslate)

View file

@ -1,45 +0,0 @@
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
http{{ if .Values.ingress.tls }}s{{ end }}://{{ index .Values.ingress.hosts 0 "host" }}{{ index .Values.ingress.hosts 0 "paths" 0 "path" }}
{{- if .name }}
- http{{ if .Values.ingress.tls }}s{{ end }}://{{ .name }}{{ .path }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "libretranslate.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc -w {{ include "libretranslate.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "libretranslate.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "libretranslate.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:{{ .Values.service.port }}
{{- end }}
2. Get your admin username and password:
USER=$(kubectl get secret {{ include "libretranslate.fullname" . }}-auth -o jsonpath="{.data.username}" | base64 --decode)
PASSWORD=$(kubectl get secret {{ include "libretranslate.fullname" . }}-auth -o jsonpath="{.data.password}" | base64 --decode)
echo "Username: $USER"
echo "Password: $PASSWORD"
3. Manage your LibreTranslate API keys:
If you setted `--api-keys true` to use the api keys in the StatefulSet, you can manage them with the following commands:
# this will add an api key with a limit of 120 requests per minute
kubectl exec -it {{ include "libretranslate.fullname" . }}-0 -c {{ include "libretranslate.fullname" . }} -- /bin/bash -c "source ./venv/bin/activate && ltmanage keys add --key req-limit-120 120"
# returns a list of all api keys
kubectl exec -it {{ include "libretranslate.fullname" . }}-0 -c {{ include "libretranslate.fullname" . }} -- /bin/bash -c "source ./venv/bin/activate && ltmanage keys"
# remove an api key
kubectl exec -it {{ include "libretranslate.fullname" . }}-0 -c {{ include "libretranslate.fullname" . }} -- /bin/bash -c "source ./venv/bin/activate && ltmanage keys remove req-limit-120"
*** Be aware that the api keys are stored in a sqlite database in the pod. If you scale the pod to multiple replicas, the api keys will not be synced between the pods. You can use a shared storage to sync the api keys between the pods. For example, you can use a NFS storage class with a ReadWriteMany access mode to store the api keys in a shared perspective. ***
```

View file

@ -1,51 +0,0 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "libretranslate.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
*/}}
{{- define "libretranslate.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "libretranslate.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "libretranslate.labels" -}}
helm.sh/chart: {{ include "libretranslate.chart" . }}
{{ include "libretranslate.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "libretranslate.selectorLabels" -}}
app.kubernetes.io/name: {{ include "libretranslate.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

View file

@ -1,39 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: libretranslate-config
data:
host: {{ .Values.appConfig.host | squote }}
port: {{ .Values.appConfig.port | squote }}
charLimit: {{ .Values.appConfig.charLimit | squote }}
reqLimit: {{ .Values.appConfig.reqLimit | squote }}
reqLimitStorage: {{ .Values.appConfig.reqLimitStorage | squote }}
batchLimit: {{ .Values.appConfig.batchLimit | squote }}
gaId: {{ .Values.appConfig.gaId | squote }}
frontendLanguageSource: {{ .Values.appConfig.frontendLanguageSource | squote }}
frontendLanguageTarget: {{ .Values.appConfig.frontendLanguageTarget | squote }}
frontendTimeout: {{ .Values.appConfig.frontendTimeout | squote }}
apiKeysDbPath: {{ .Values.appConfig.apiKeysDbPath | squote }}
apiKeysRemote: {{ .Values.appConfig.apiKeysRemote | squote }}
getApiKeyLink: {{ .Values.appConfig.getApiKeyLink | squote }}
sharedStorage: {{ .Values.appConfig.sharedStorage | squote }}
loadOnly: {{ .Values.appConfig.loadOnly | squote }}
threads: {{ .Values.appConfig.threads | squote }}
metricsAuthToken: {{ .Values.appConfig.metricsAuthToken | squote }}
urlPrefix: {{ .Values.appConfig.urlPrefix | squote }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: libretranslate-appsettings
data:
debug: {{ .Values.appSettings.debug | squote }}
ssl: {{ .Values.appSettings.ssl | squote }}
apiKeys: {{ .Values.appSettings.apiKeys | squote }}
requireApiKeyOrigin: {{ .Values.appSettings.requireApiKeyOrigin | squote }}
requireApiKeySecret: {{ .Values.appSettings.requireApiKeySecret | squote }}
suggestions: {{ .Values.appSettings.suggestions | squote }}
disableFilesTranslation: {{ .Values.appSettings.disableFilesTranslation | squote }}
disableWebUi: {{ .Values.appSettings.disableWebUi | squote }}
updateModels: {{ .Values.appSettings.updateModels | squote }}
metrics: {{ .Values.appSettings.metrics | squote }}

View file

@ -1,40 +0,0 @@
{{- if .Values.ingress.enabled -}}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "libretranslate.fullname" . }}
labels:
{{- include "libretranslate.labels" . | nindent 4 }}
annotations:
{{- toYaml .Values.ingress.annotations | nindent 4 }}
spec:
{{- if .Values.ingress.className }}
ingressClassName: {{ .Values.ingress.className }}
{{- end }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- $fullName := include "libretranslate.fullname" $ }}
{{- range .paths }}
- path: {{ .path }}
pathType: {{ .pathType }}
backend:
service:
name: {{ include "libretranslate.fullname" $ }}
port:
number: {{ $.Values.service.port }}
{{- end }}
{{- end }}
{{- end }}

View file

@ -1,36 +0,0 @@
{{- if and .Values.persistence.enabled (eq .Values.persistence.db.accessMode "ReadWriteMany") }}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: db-volume
labels:
app.kubernetes.io/name: {{ include "libretranslate.name" . }}-pv
spec:
accessModes:
- {{ .Values.persistence.db.accessMode }}
resources:
requests:
storage: {{ .Values.persistence.db.size }}
{{- if .Values.persistence.db.storageClass }}
storageClassName: {{ .Values.persistence.db.storageClass | quote }}
{{- end }}
{{- end }}
{{- if and .Values.persistence.enabled (eq .Values.persistence.models.accessMode "ReadWriteMany") }}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: models-volume
labels:
app.kubernetes.io/name: {{ include "libretranslate.name" . }}-pvc
spec:
accessModes:
- {{ .Values.persistence.models.accessMode }}
resources:
requests:
storage: {{ .Values.persistence.models.size }}
{{- if .Values.persistence.models.storageClass }}
storageClassName: {{ .Values.persistence.models.storageClass | quote }}
{{- end }}
{{- end }}

View file

@ -1,9 +0,0 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ include "libretranslate.fullname" . }}-auth
type: Opaque
data:
auth: {{ .Values.adminUser.auth | quote }}
username: {{ .Values.adminUser.name | quote }}
password: {{ .Values.adminUser.password | quote }}

View file

@ -1,15 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "libretranslate.fullname" . }}
labels:
{{- include "libretranslate.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "libretranslate.selectorLabels" . | nindent 4 }}

View file

@ -1,344 +0,0 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ include "libretranslate.fullname" . }}
labels:
{{- include "libretranslate.labels" . | nindent 4 }}
{{- if .Values.annotations }}
annotations:
{{- toYaml .Values.annotations | nindent 4 }}
{{- end }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "libretranslate.selectorLabels" . | nindent 6 }}
template:
metadata:
annotations:
{{- if .Values.podAnnotations }}
{{- toYaml .Values.podAnnotations | nindent 8 }}
{{- end }}
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}
labels:
{{- include "libretranslate.selectorLabels" . | nindent 8 }}
spec:
{{- if .Values.imagePullSecrets }}
imagePullSecrets:
{{ toYaml .Values.imagePullSecrets | indent 8 }}
{{- end }}
{{- if .Values.securityContext }}
# forces the mount of the volumes to be mounted as libretranslate user and group
# and set permissions to libretranslate:libretranslate
securityContext:
{{- toYaml .Values.securityContext | nindent 8 }}
{{- end }}
{{- if .Values.persistence.enabled }}
initContainers:
- name: volume-permissions-and-pre-install-models
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
command:
- /bin/bash
- -c
- |
mkdir -p /home/libretranslate/.local/share/argos-translate/packages
chown -R 1032:1032 /home/libretranslate/.local /app/db
if [ ! "$(ls -A /home/libretranslate/.local/share/argos-translate/packages)" ]; then
echo "Installing models... this can take quite a while depending on your internet connection."
/app/venv/bin/python /app/scripts/install_models.py --load_only_lang_codes {{ .Values.appConfig.loadOnly | quote }}
else
echo "The models directory is not empty, skipping model installation."
fi
volumeMounts:
- name: models-volume
mountPath: /home/libretranslate/.local/share/argos-translate
- name: db-volume
mountPath: {{ .Values.appConfig.apiKeysDbPathMount }}
{{- if .Values.initContainerSecurityContext }}
securityContext:
# forces the mount of the volumes to be mounted as libretranslate user and group
# and set permissions to libretranslate:libretranslate
{{- toYaml .Values.initContainerSecurityContext | nindent 12 }}
{{- end }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
resources:
{{- toYaml .Values.resources | nindent 12 }}
securityContext:
{{- if .Values.podSecurityContext }}
# forces the mount of the volumes to be mounted as libretranslate user and group
# and set permissions to libretranslate:libretranslate
{{- toYaml .Values.podSecurityContext | nindent 12 }}
{{- end }}
allowPrivilegeEscalation: false
readinessProbe:
{{- toYaml .Values.readinessProbe | nindent 12 }}
livenessProbe:
{{- toYaml .Values.livenessProbe | nindent 12 }}
env:
{{- if and (.Values.appSettings.debug) (ne .Values.appSettings.debug "") }}
- name: LT_DEBUG
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: debug
{{- end }}
{{- if and (.Values.appSettings.ssl) (ne .Values.appSettings.ssl "") }}
- name: LT_SSL
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: ssl
{{- end }}
{{- if and (.Values.appSettings.apiKeys) (ne .Values.appSettings.apiKeys "") }}
- name: LT_API_KEYS
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: apiKeys
{{- end }}
{{- if and (.Values.appSettings.requireApiKeyOrigin) (ne .Values.appSettings.requireApiKeyOrigin "") }}
- name: LT_REQUIRE_API_KEY_ORIGIN
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: requireApiKeyOrigin
{{- end }}
{{- if and (.Values.appSettings.requireApiKeySecret) (ne .Values.appSettings.requireApiKeySecret "") }}
- name: LT_REQUIRE_API_KEY_SECRET
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: requireApiKeySecret
{{- end }}
{{- if and (.Values.appSettings.suggestions) (ne .Values.appSettings.suggestions "") }}
- name: LT_SUGGESTIONS
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: suggestions
{{- end }}
{{- if and (.Values.appSettings.disableFilesTranslation) (ne .Values.appSettings.disableFilesTranslation "") }}
- name: LT_DISABLE_FILES_TRANSLATION
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: disableFilesTranslation
{{- end }}
{{- if and (.Values.appSettings.disableWebUi) (ne .Values.appSettings.disableWebUi "") }}
- name: LT_DISABLE_WEB_UI
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: disableWebUi
{{- end }}
{{- if and (.Values.appSettings.updateModels) (ne .Values.appSettings.updateModels "") }}
- name: LT_UPDATE_MODELS
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: updateModels
{{- end }}
{{- if and (.Values.appSettings.metrics) (ne .Values.appSettings.metrics "") }}
- name: LT_METRICS
valueFrom:
configMapKeyRef:
name: libretranslate-appsettings
key: metrics
{{- end }}
{{- if and (.Values.appConfig.host) (ne .Values.appConfig.host "") }}
- name: LT_HOST
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: host
{{- end }}
{{- if and (.Values.appSettings.port) (ne .Values.appSettings.port "") }}
- name: LT_PORT
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: port
{{- end }}
{{- if and (.Values.appConfig.charLimit) (ne .Values.appConfig.charLimit "") }}
- name: LT_CHAR_LIMIT
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: charLimit
{{- end }}
{{- if and (.Values.appConfig.reqLimit) (ne .Values.appConfig.reqLimit "") }}
- name: LT_REQ_LIMIT
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: reqLimit
{{- end }}
{{- if and (.Values.appConfig.reqLimitStorage) (ne .Values.appConfig.reqLimitStorage "") }}
- name: LT_REQ_LIMIT_STORAGE
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: reqLimitStorage
{{- end }}
{{- if and (.Values.appConfig.batchLimit) (ne .Values.appConfig.batchLimit "") }}
- name: LT_BATCH_LIMIT
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: batchLimit
{{- end }}
{{- if and (.Values.appConfig.gaId) (ne .Values.appConfig.gaId "") }}
- name: LT_GA_ID
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: gaId
{{- end }}
{{- if and (.Values.appConfig.frontendLanguageSource) (ne .Values.appConfig.frontendLanguageSource "") }}
- name: LT_FRONTEND_LANGUAGE_SOURCE
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: frontendLanguageSource
{{- end }}
{{- if and (.Values.appConfig.frontendLanguageTarget) (ne .Values.appConfig.frontendLanguageTarget "") }}
- name: LT_FRONTEND_LANGUAGE_TARGET
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: frontendLanguageTarget
{{- end }}
{{- if and (.Values.appConfig.frontendTimeout) (ne .Values.appConfig.frontendTimeout "") }}
- name: LT_FRONTEND_TIMEOUT
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: frontendTimeout
{{- end }}
{{- if and (.Values.appSettings.apiKeysDbPath) (ne .Values.appSettings.apiKeysDbPath "") }}
- name: LT_API_KEYS_DB_PATH
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: apiKeysDbPath
{{- end }}
{{- if and (.Values.appSettings.apiKeysRemote) (ne .Values.appSettings.apiKeysRemote "") }}
- name: LT_API_KEYS_REMOTE
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: apiKeysRemote
{{- end }}
{{- if and (.Values.appConfig.getApiKeyLink) (ne .Values.appConfig.getApiKeyLink "") }}
- name: LT_GET_API_KEY_LINK
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: getApiKeyLink
{{- end }}
{{- if and (.Values.appConfig.sharedStorage) (ne .Values.appConfig.sharedStorage "") }}
- name: LT_SHARED_STORAGE
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: sharedStorage
{{- end }}
{{- if and (.Values.appConfig.loadOnly) (ne .Values.appConfig.loadOnly "") }}
- name: LT_LOAD_ONLY
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: loadOnly
{{- end }}
{{- if and (.Values.appConfig.threads) (ne .Values.appConfig.threads "") }}
- name: LT_THREADS
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: threads
{{- end }}
{{- if and (.Values.appSettings.metricsAuthToken) (ne .Values.appSettings.metricsAuthToken "") }}
- name: LT_METRICS_AUTH_TOKEN
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: metricsAuthToken
{{- end }}
{{- if and (.Values.appConfig.urlPrefix) (ne .Values.appConfig.urlPrefix "") }}
- name: LT_URL_PREFIX
valueFrom:
configMapKeyRef:
name: libretranslate-config
key: urlPrefix
{{- end }}
{{- if .Values.persistence.enabled }}
volumeMounts:
- name: db-volume
mountPath: {{ .Values.appConfig.apiKeysDbPathMount }}
- name: models-volume
mountPath: /home/libretranslate/.local/share/argos-translate
{{- end }}
{{- if and .Values.persistence.enabled (or (eq .Values.persistence.models.accessMode "ReadWriteMany") (eq .Values.persistence.db.accessMode "ReadWriteMany")) }}
volumes:
{{- if eq .Values.persistence.db.accessMode "ReadWriteMany" }}
- name: db-volume
persistentVolumeClaim:
claimName: db-volume
{{- end }}
{{- if eq .Values.persistence.models.accessMode "ReadWriteMany" }}
- name: models-volume
persistentVolumeClaim:
claimName: models-volume
{{- end }}
{{- end }}
{{- if .Values.tolerations }}
tolerations:
{{- toYaml .Values.tolerations | nindent 6 }}
{{- end }}
{{- if and .Values.persistence.enabled (or (eq .Values.persistence.models.accessMode "ReadWriteOnce") (eq .Values.persistence.db.accessMode "ReadWriteOnce")) }}
# still in beta, but this will allow us to delete the volumes when the statefulset is scaled down
persistentVolumeClaimRetentionPolicy:
whenDeleted: Retain
whenScaled: Delete
volumeClaimTemplates:
{{- if eq .Values.persistence.models.accessMode "ReadWriteOnce" }}
- metadata:
name: models-volume
labels:
{{- include "libretranslate.labels" . | nindent 8 }}
spec:
accessModes:
- {{ .Values.persistence.models.accessMode }}
resources:
requests:
storage: {{ .Values.persistence.models.size }}
{{- if .Values.persistence.models.storageClass }}
storageClassName: {{ .Values.persistence.models.storageClass | quote }}
{{- end }}
{{- end }}
{{- if eq .Values.persistence.db.accessMode "ReadWriteOnce" }}
- metadata:
name: db-volume
labels:
{{- include "libretranslate.labels" . | nindent 8 }}
spec:
accessModes:
- {{ .Values.persistence.db.accessMode }}
resources:
requests:
storage: {{ .Values.persistence.db.size }}
{{- if .Values.persistence.db.storageClass }}
storageClassName: {{ .Values.persistence.db.storageClass | quote }}
{{- end }}
{{- end }}
{{- end }}

View file

@ -1,164 +0,0 @@
# values.yaml
# Number of replicas
replicaCount: 1
# Extra annotations for pods
podAnnotations: {}
# Extra annotations
annotations: {}
# Extra tolerations for pods
tolerations: []
# Chart name override
nameOverride: ""
# Full name of the deployment to override the default one
fullnameOverride: ""
# Image settings
image:
repository: libretranslate/libretranslate
pullPolicy: Always
tag: "latest"
# Using a Private Registry
# If you want to use a custom image from a private registry, you'll need to create an image pull secret with the registry's credentials:
# kubectl create secret docker-registry my-registry-secret --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
# imagePullSecrets:
# - name: my-registry-secret
imagePullSecrets: []
# Service settings
service:
type: ClusterIP
port: 5000
# Ingress settings
ingress:
enabled: false
className: "" # set this to the name of the ingress controller class to use like nginx
annotations:
# cert-manager.io/cluster-issuer: "letsencrypt-prod"
nginx.ingress.kubernetes.io/proxy-body-size: 10m
# Check for the adminUser key below.
# This will enable basic auth for the whole site.
# nginx.ingress.kubernetes.io/auth-type: basic
# nginx.ingress.kubernetes.io/auth-secret: libretranslate-auth
# nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required'
hosts:
- host: translate.example.com
paths:
- path: /
pathType: Prefix
# tls:
# - secretName: libretranslate-secret-tls
# hosts:
# - translate.example.com
# Security Context
securityContext:
fsGroup: 1032
# Security Context for init container
initContainerSecurityContext:
runAsUser: 0
runAsGroup: 0
# Pod Security Context
podSecurityContext:
runAsUser: 1032
runAsGroup: 1032
# Persistent settings
# if you don't want to download a copy of the models per pod, you can use a shared storage like an nfs storage class
# and set it to ReadWriteMany. this way if you scale the pods later on, they will all use the same models and won't
# duplicate the space and download requests.
persistence:
enabled: false
db:
storageClass: ""
accessMode: "ReadWriteOnce"
size: "1Gi"
models:
storageClass: ""
accessMode: "ReadWriteOnce"
size: "10Gi" # as of August 2023, the models are about 6.6GB in size for all languages
# Resource limits
resources:
limits:
cpu: 1
memory: 2Gi
requests:
cpu: 500m
memory: 1Gi
# Readiness probe for kubernetes
readinessProbe:
exec:
command:
- /app/venv/bin/python
- /app/scripts/healthcheck.py
initialDelaySeconds: 10
periodSeconds: 5
# Liveness probe for kubernetes
livenessProbe:
exec:
command:
- /app/venv/bin/python
- scripts/healthcheck.py
initialDelaySeconds: 10
periodSeconds: 5
# Auth secret for basic authentication
# generate base64-user-password-pair with:
# htpasswd -nb <username> <password> | base64
#
# e.g.:
#
# htpasswd -nb admin mySecretPassword | base64
# This is used by the nginx ingress controller to enable basic auth for the whole site.
# It will create a secret with the name libretranslate-auth.
adminUser:
name: "YWRtaW4K" # copy the username in base64 as a reference
auth: "YWRtaW46JGFwcjEkYlpydmYvUFYkSHBHSlhqZU1EN0ZON2kyYndsMVRNMQoK" # copy the output from the htpasswd command here as a reference
password: "bXlTZWNyZXRQYXNzd29yZAo=" # copy the password as base64 for the admin user here as a reference
# Settings / Flags
appSettings:
debug: "false" # Enable debug environment (Default: Disabled)
ssl: "false" # Enable SSL (Default: Disabled)
apiKeys: "false" # Enable API keys database for per-client rate limits when --req-limit is reached (Default: Don't use API keys)
requireApiKeyOrigin: "" # Require use of an API key for programmatic access to the API, unless the request origin matches this domain (Default: No restrictions on domain origin)
requireApiKeySecret: "" # Require use of an API key for programmatic access to the API, unless the client also sends a secret match (Default: No secrets required)
suggestions: "false" # Allow user suggestions (Default: Disabled)
disableFilesTranslation: "false" # Disable files translation (Default: File translation allowed)
disableWebUi: "false" # Disable web ui (Default: Web Ui enabled)
updateModels: "false" # Update language models at startup (Default: Only on if no models found)
metrics: "false" # Enable the /metrics endpoint for exporting Prometheus usage metrics (Default: Disabled)
# Configuration Parameters
appConfig:
host: "0.0.0.0" # Set host to bind the server to (Default: 127.0.0.1)
port: "5000" # Set port to bind the server to (Default: 5000)
charLimit: "null" # Set character limit (Default: No limit)
reqLimit: "null" # Set maximum number of requests per minute per client (outside of limits set by api keys) (Default: No limit)
reqLimitStorage: "memory://" # Storage URI to use for request limit data storage. See Flask Limiter (Default: memory://)
batchLimit: "null" # Set maximum number of texts to translate in a batch request (Default: No limit)
gaId: "" # Enable Google Analytics on the API client page by providing an ID (Default: Empty (no tracking))
frontendLanguageSource: "auto" # Set frontend default language - source (Default: auto)
frontendLanguageTarget: "locale" # Set frontend default language - target (Default: locale (match site's locale))
frontendTimeout: "500" # Set frontend translation timeout (Default: 500)
apiKeysDbPath: "/app/db/api_keys.db" # Use a specific path inside the container for the local database. Can be absolute or relative (Default: /app/db/api_keys.db)
apiKeysDbPathMount: "/app/db" # Use a specific path inside the container for the local database. Must be the same as apiKeysDbPath (Default: /app/db)
apiKeysRemote: "" # Use this remote endpoint to query for valid API keys instead of using the local database (Default: Empty (use local db instead))
getApiKeyLink: "" # Show a link in the UI where to direct users to get an API key (Default: Empty (no link shown on web ui))
sharedStorage: "memory://" # Shared storage URI to use for multi-process data sharing (e.g. when using gunicorn) (Default: memory://)
loadOnly: "" # Set available languages (Default: Empty (use all from argostranslate))
threads: "4" # Set number of threads (Default: 4)
metricsAuthToken: "" # Protect the /metrics endpoint by allowing only clients that have a valid Authorization Bearer token (Default: Empty (no auth required))
urlPrefix: "" # Add prefix to URL: example.com:5000/url-prefix/ (Default: /)

View file

@ -1,23 +1,30 @@
version: "3"
services:
libretranslate:
container_name: libretranslate
build:
context: .
dockerfile: docker/Dockerfile
dockerfile: ./docker/Dockerfile
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']
## 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:

View file

@ -1,4 +1,4 @@
FROM python:3.10.10-slim-bullseye as builder
FROM python:3.11.11-slim-bullseye AS builder
WORKDIR /app
@ -15,11 +15,12 @@ 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 --extra-index-url https://download.pytorch.org/whl/cpu \
&& ./venv/bin/pip install torch==2.2.0 --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 python:3.10.10-slim-bullseye
FROM python:3.11.11-slim-bullseye
ARG with_models=false
ARG models=""
@ -30,6 +31,8 @@ USER libretranslate
COPY --from=builder --chown=1032:1032 /app /app
WORKDIR /app
COPY --from=builder --chown=1032:1032 /app/venv/bin/ltmanage /usr/bin/
RUN if [ "$with_models" = "true" ]; then \
# initialize the language models
if [ ! -z "$models" ]; then \
@ -40,4 +43,4 @@ RUN if [ "$with_models" = "true" ]; then \
fi
EXPOSE 5000
ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "0.0.0.0" ]
ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "*" ]

44
docker/arm.Dockerfile Normal file
View file

@ -0,0 +1,44 @@
FROM arm64v8/python:3.11.11-slim-bullseye as builder
WORKDIR /app
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update -qq \
&& apt-get -qqq install --no-install-recommends -y pkg-config gcc g++ \
&& apt-get upgrade --assume-yes \
&& apt-get clean \
&& rm -rf /var/lib/apt
RUN python -mvenv venv && ./venv/bin/pip install --no-cache-dir --upgrade pip
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 arm64v8/python:3.11.11-slim-bullseye
ARG with_models=false
ARG models=""
RUN addgroup --system --gid 1032 libretranslate && adduser --system --uid 1032 libretranslate && mkdir -p /home/libretranslate/.local && chown -R libretranslate:libretranslate /home/libretranslate/.local
USER libretranslate
COPY --from=builder --chown=1032:1032 /app /app
WORKDIR /app
RUN if [ "$with_models" = "true" ]; then \
# initialize the language models
if [ ! -z "$models" ]; then \
./venv/bin/python scripts/install_models.py --load_only_lang_codes "$models"; \
else \
./venv/bin/python scripts/install_models.py; \
fi \
fi
EXPOSE 5000
ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "*" ]

View file

@ -1,6 +1,6 @@
FROM nvidia/cuda:11.2.2-devel-ubuntu20.04
FROM nvidia/cuda:12.4.1-devel-ubuntu20.04
ENV ARGOS_DEVICE_TYPE cuda
ENV ARGOS_DEVICE_TYPE auto
ARG with_models=false
ARG models=""
@ -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 \
&& pip3 install "numpy<2" \
&& pip3 install . \
&& pip3 cache purge
@ -42,4 +43,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", "*" ]

View file

@ -0,0 +1,105 @@
FROM python:3.11.11-slim-bullseye AS builder
WORKDIR /app
ARG DEBIAN_FRONTEND=noninteractive
RUN <<EOF
apt-get update -qq
apt-get -qqq install --no-install-recommends -y pkg-config gcc g++
apt-get upgrade --assume-yes
apt-get clean
rm -rf /var/lib/apt
python -mvenv venv
./venv/bin/pip install --no-cache-dir --upgrade pip
EOF
COPY . .
# Install package from source code, compile translations
RUN <<EOF
./venv/bin/pip install Babel==2.12.1
./venv/bin/python scripts/compile_locales.py
./venv/bin/pip install torch==2.2.0 --extra-index-url https://download.pytorch.org/whl/cpu
./venv/bin/pip install "numpy<2"
./venv/bin/pip install .
./venv/bin/pip cache purge
EOF
FROM python:3.11.11-slim-bullseye
ARG with_models=false
ARG models=""
ARG root_password=""
ARG api_key=""
ENV ENABLE_SSHD=${root_password:+true}
RUN <<EOF
if [ "$ENABLE_SSHD" = "true" ]; then
# sshd
mkdir /var/run/sshd
apt-get update -qq
apt-get -qqq install --no-install-recommends -y openssh-server
apt-get clean
rm -rf /var/lib/apt
# sshd_config
echo "root:${root_password}" | chpasswd
sed -i 's/^#?\(PermitRootLogin\) .*$/\1 yes/' /etc/ssh/sshd_config
sed -i 's/^#?\(PasswordAuthentication\) .*$/\1 yes/' /etc/ssh/sshd_config
sed -i 's/^#?\(UsePAM\) .*$/\1 no/' /etc/ssh/sshd_config
fi
EOF
COPY --from=builder --chown=root:root /app /app
WORKDIR /app
COPY --from=builder --chown=root:root /app/venv/bin/ltmanage /usr/bin/
RUN <<EOF
if [ "$with_models" = "true" ]; then
# initialize the language models
if [ ! -z "$models" ]; then
./venv/bin/python scripts/install_models.py --load_only_lang_codes "$models"
else
./venv/bin/python scripts/install_models.py
fi
fi
EOF
RUN <<EOF
if [ ! -z "$api_key" ]; then
# initialize the API key database
./venv/bin/python - <<'EOPython'
from libretranslate.api_keys import Database
from libretranslate.default_values import DEFAULT_ARGUMENTS as DEFARGS
Database(DEFARGS['API_KEYS_DB_PATH'])
EOPython
# initialize one API key
ltmanage keys add 120 --key "$api_key"
fi
EOF
EXPOSE 22
EXPOSE 5000
# entry point
RUN <<EOF
cat >'/app/start.sh' <<EOENTRY
#!/bin/sh
set -e
if [ "$ENABLE_SSHD" = "true" ]; then
service ssh start &
fi
/app/venv/bin/libretranslate --host '*'
exit 0
EOENTRY
chmod 755 /app/start.sh
EOF
ENTRYPOINT [ "/app/start.sh" ]

View file

@ -0,0 +1,78 @@
FROM python:3.11.11-slim-bullseye AS builder
WORKDIR /app
ARG DEBIAN_FRONTEND=noninteractive
RUN <<EOF
apt-get update -qq
apt-get -qqq install --no-install-recommends -y pkg-config gcc g++
apt-get upgrade --assume-yes
apt-get clean
rm -rf /var/lib/apt
python -mvenv venv
./venv/bin/pip install --no-cache-dir --upgrade pip
EOF
COPY . .
# Install package from source code, compile translations
RUN <<EOF
./venv/bin/pip install Babel==2.12.1
./venv/bin/python scripts/compile_locales.py
./venv/bin/pip install torch==2.2.0 --extra-index-url https://download.pytorch.org/whl/cpu
./venv/bin/pip install "numpy<2"
./venv/bin/pip install .
./venv/bin/pip cache purge
EOF
FROM python:3.11.11-slim-bullseye
ARG with_models=false
ARG models=""
ARG api_key=""
RUN <<EOF
addgroup --system --gid 1032 libretranslate
adduser --system --uid 1032 libretranslate
mkdir -p /home/libretranslate/.local
chown -R libretranslate:libretranslate /home/libretranslate/.local
EOF
USER libretranslate
COPY --from=builder --chown=1032:1032 /app /app
WORKDIR /app
COPY --from=builder --chown=1032:1032 /app/venv/bin/ltmanage /usr/bin/
RUN <<EOF
if [ "$with_models" = "true" ]; then
# initialize the language models
if [ ! -z "$models" ]; then
./venv/bin/python scripts/install_models.py --load_only_lang_codes "$models"
else
./venv/bin/python scripts/install_models.py
fi
fi
EOF
RUN <<EOF
if [ ! -z "$api_key" ]; then
# initialize the API key database
./venv/bin/python - <<'EOPython'
from libretranslate.api_keys import Database
from libretranslate.default_values import DEFAULT_ARGUMENTS as DEFARGS
Database(DEFARGS['API_KEYS_DB_PATH'])
EOPython
# initialize one API key
ltmanage keys add 120 --key "$api_key"
fi
EOF
EXPOSE 22
EXPOSE 5000
ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "*" ]

138
docs/CONTRIBUTING.es.md Normal file
View file

@ -0,0 +1,138 @@
# Contribuyendo
Si desea modificar el código, puede compilar desde el código fuente y ejecutar la API.
## Dependencias de compilación
* cmake
### Debian / Ubuntu
```sh
sudo apt-get install cmake
```
### Fedora / RHEL
```sh
sudo dnf install cmake
```
## Primeros pasos
Instale [`hatch`](https://hatch.pypa.io) para administrar las dependencias del proyecto y ejecutar scripts de desarrollo:
```bash
pipx install hatch
```
Clonar el repositorio:
```bash
git clone https://github.com/LibreTranslate/LibreTranslate.git
cd LibreTranslate
```
Hatch instalará automáticamente las dependencias necesarias en un entorno virtual y habilitará [`pre-commit`](https://pre-commit.com/), que se ejecutará antes de cada confirmación para ejecutar el formateo. Si es necesario, puedes ignorar las comprobaciones de `pre-commit` al confirmar: `git commit --no-verify -m "Fix"`
Ejecutar en desarrollo:
```bash
hatch run dev --debug
```
Luego, abre un navegador web en <http://localhost:5000>
También puedes iniciar una nueva shell en un entorno virtual con libretranslate instalado:
```bash
hatch shell
libretranslate [args]
# O
python main.py [args]
```
> Puedes usar `pip install -e ".[test]"` directamente si no quieres usar Hatch.
## Ejecutar las pruebas
Ejecutar el conjunto de pruebas y las comprobaciones de linting:
```bash
hatch run test
```
Para mostrar todos los `print()` durante la depuración:
```bash
hatch run test -s
```
También puedes ejecutar las pruebas en varias versiones de Python:
```bash
hatch run all:test
```
Puedes limpiar el entorno virtual con:
```bash
hatch env prune
```
## Ejecutar con Docker
Linux/MacOS: `./run.sh [args]`
Windows: `run.bat [args]`
Luego, abre un navegador web en <http://localhost:5000>
## Construir con Docker
```bash
docker build -f docker/Dockerfile [--build-arg with_models=true] -t libretranslate .
```
Si quieres ejecutar la imagen de Docker en un entorno completamente sin conexión, debes agregar el parámetro `--build-arg with_models=true`. Los modelos de lenguaje se descargan durante el proceso de construcción de la imagen. De lo contrario, estos modelos se descargan durante la primera ejecución de la imagen/contenedor.
Ejecute la imagen compilada:
```bash
docker run -it -p 5000:5000 libretranslate [args]
```
O compila y ejecuta con Docker Compose:
```bash
docker compose up -d --build
```
> Puedes modificar el archivo [`docker-compose.yml`](https://github.com/LibreTranslate/LibreTranslate/blob/main/docker-compose.yml) para adaptarlo a tus necesidades de implementación o usar un archivo `docker-compose.prod.yml` adicional para la configuración de tu implementación.
>
> Los modelos se almacenan dentro del contenedor en `/home/libretranslate/.local/share` y `/home/libretranslate/.local/cache`. Puedes usar volúmenes si no quieres volver a descargar los modelos cuando se destruya el contenedor. Para actualizar los modelos, usa el argumento `--update-models`.
## Preguntas frecuentes
### Entorno administrado externamente
Algunos usuarios pueden encontrar el siguiente error al instalar paquetes:
```
error: externally-managed-environment
× Este entorno está administrado externamente
╰─> Para instalar paquetes de Python en todo el sistema, pruebe apt install python3-xyz, donde xyz es el paquete que intenta instalar.
```
Esto ocurre cuando su sistema operativo depende de Python y lo administra para su funcionalidad principal. En este caso, debe instalar y configurar venv (entornos virtuales) para administrar las dependencias del proyecto.
Esto evita que los paquetes pip se instalen en todo el sistema. De esta manera, se evita el riesgo de que los paquetes pip entren en conflicto entre varios proyectos o el sistema operativo.
Referencias:
* [Documentación de venv sobre Python](https://docs.python.org/library/venv.html)
## Otros idiomas
- [English (CONTRIBUTING)](/CONTRIBUTING.md)

748
docs/README.es.md Normal file
View file

@ -0,0 +1,748 @@
# LibreTranslate
[Pruébalo en línea!](https://libretranslate.com) | [Documentación de la API](https://libretranslate.com/docs) | [Foro de la Comunidad](https://community.libretranslate.com/) | [Bluesky](https://bsky.app/profile/libretranslate.com)
[![Versiones de python](https://img.shields.io/pypi/pyversions/libretranslate)](https://pypi.org/project/libretranslate) [![Ejecutar Pruebas](https://github.com/LibreTranslate/LibreTranslate/workflows/Run%20tests/badge.svg)](https://github.com/LibreTranslate/LibreTranslate/actions?query=workflow%3A%22Run+tests%22) [![Crear y Publicar Imagen de Docker](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-docker.yml/badge.svg)](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-docker.yml) [![Publicar paquete](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-package.yml/badge.svg)](https://github.com/LibreTranslate/LibreTranslate/actions/workflows/publish-package.yml) [![Increible Technologia Humana](https://raw.githubusercontent.com/humanetech-community/awesome-humane-tech/main/humane-tech-badge.svg?sanitize=true)](https://codeberg.org/teaserbot-labs/delightful-humane-design)
API de traducción automática gratuita y de código abierto, completamente alojada en el propio servidor. A diferencia de otras API, no depende de proveedores propietarios como Google o Azure para realizar las traducciones. En su lugar, su motor de traducción se basa en código abierto. [Argos Translate](https://github.com/argosopentech/argos-translate) libreria.
![Traducción](https://github.com/user-attachments/assets/457696b5-dbff-40ab-a18e-7bfb152c5121)
[Pruébalo en línea!](https://libretranslate.com) | [Documentación de la API](https://libretranslate.com/docs)
## Ejemplos de la API
### Básico
Solicitud:
```javascript
const res = await fetch("https://libretranslate.com/translate", {
method: "POST",
body: JSON.stringify({
q: "Hello!",
source: "en",
target: "es",
}),
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
```
Respuesta:
```javascript
{
"translatedText": "¡Hola!"
}
```
Lista de códigos de idiomas: https://libretranslate.com/languages
### Detección automática de idioma
Solicitud:
```javascript
const res = await fetch("https://libretranslate.com/translate", {
method: "POST",
body: JSON.stringify({
q: "Ciao!",
source: "auto",
target: "es",
}),
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
```
Respuesta:
```javascript
{
"detectedLanguage": {
"confidence": 83,
"language": "it"
},
"translatedText": "Adios!"
}
```
### HTML
Solicitud:
```javascript
const res = await fetch("https://libretranslate.com/translate", {
method: "POST",
body: JSON.stringify({
q: '<p class="green">Hello!</p>',
source: "en",
target: "es",
format: "html",
}),
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
```
Respuesta:
```javascript
{
"translatedText": "<p class=\"green\">¡Hola!</p>"
}
```
### Traducciones Alternativas
Solicitud:
```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());
```
Respuesta:
```javascript
{
"alternatives": [
"Salve",
"Pronto"
],
"translatedText": "Ciao"
}
```
## Instalar y Ejecutar
Puedes ejecutar tu propio servidor API con solo unas pocas líneas de configuración!
Asegúrate de tener instalado Python (se recomienda la versión 3.8 o superior) y, a continuación, simplemente ejecuta:
```bash
pip install libretranslate
libretranslate [args]
```
Luego abra un navegador web para <http://localhost:5000>
De forma predeterminada, LibreTranslate instalará compatibilidad con todos los idiomas disponibles. Para cargar solo ciertos idiomas y reducir el tiempo de inicio, puede usar el argumento **--load-only**:
```bash
libretranslate --load-only en,es,fr
```
Consulte también los demás [arguments](#settings--flags) a continuación.
En Ubuntu 20.04, también puede usar el script de instalación disponible en <https://github.com/argosopentech/LibreTranslate-init>
## Ejecutar con Docker
También puede ejecutar la aplicación con [docker](https://docker.com):
### Linux/macOS
```bash
./run.sh [args]
```
### Windows
```bash
run.bat [args]
```
## Compilación y ejecución
Consulta [CONTRIBUTING.md](./CONTRIBUTING.md) para obtener información sobre cómo compilar y ejecutar el proyecto tú mismo.
### CUDA
Puedes usar la aceleración por hardware para acelerar las traducciones en un equipo con GPU con CUDA 12.4.1 y [nvidia-docker](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) instalados.
Ejecuta esta versión con:
```bash
docker compose -f docker-compose.cuda.yml up -d --build
```
## Argumentos
Los argumentos que se pasan al proceso o se configuran mediante variables de entorno se dividen en dos tipos.
- Ajustes o indicadores de tiempo de ejecución que se utilizan para alternar modos de ejecución específicos o deshabilitar partes de la aplicación. Actúan como un interruptor al agregarse o eliminarse.
- Parámetros de configuración para establecer varios límites y configurar la aplicación. Estos requieren que se pase un parámetro para funcionar. Si se eliminan, se utilizan los parámetros predeterminados.
### Configuración / Indicadores
| Argumento | Descripción | Configuración predeterminada | Sobre nombre |
| ----------------------------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------- | ------------------------------ |
| --debug | Habilitar entorno de depuración | `Desactivado` | LT_DEBUG |
| --ssl | Si habilitar SSL | `Desactivado` | LT_SSL |
| --api-keys | Habilitar la base de datos de claves API para los límites de velocidad por cliente cuando se alcanza --req-limit | `No utilice claves API` | LT_API_KEYS |
| --require-api-key-origin | Requerir el uso de una clave API para el acceso programático a la API, a menos que el origen de la solicitud coincida con este dominio | `Sin restricciones sobre el origen del dominio` | LT_REQUIRE_API_KEY_ORIGIN |
| --require-api-key-secret | Requerir el uso de una clave API para el acceso programático a la API, a menos que el cliente también envíe una coincidencia secreta | `No se requieren secretos` | LT_REQUIRE_API_KEY_SECRET |
| --require-api-key-fingerprint | Requerir el uso de una clave API para el acceso programático a la API, a menos que el cliente también coincida con una huella digital | `No se requieren huellas digitales` | LT_REQUIRE_API_KEY_FINGERPRINT |
| --under-attack | Habilitar el modo bajo ataque. Cuando está habilitado, las solicitudes deben realizarse con una clave API. | `Desactivado` | LT_UNDER_ATTACK |
| --suggestions | Permitir sugerencias de usuarios | `Desactivado` | LT_SUGGESTIONS |
| --disable-files-translation | Deshabilitar la traducción de archivos | `Se permite la traducción de archivos` | LT_DISABLE_FILES_TRANSLATION |
| --disable-web-ui | Deshabilitar la interfaz web | `Interfaz de usuario web habilitada` | LT_DISABLE_WEB_UI |
| --update-models | Actualizar los modelos de lenguaje al inicio | `Solo se activa si no se encuentran modelos` | LT_UPDATE_MODELS |
| --metrics | Habilitar el punto final /metrics para exportar [Prometheus](https://prometheus.io/) métricas de uso | `Desactivado` | LT_METRICS |
### Parámetros de configuración
| Argumento | Descripción | Parámetro predeterminado | Sobre nombre |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | --------------------------- |
| --host | Establecer el host para vincular el servidor to | `127.0.0.1` | LT_HOST |
| --port | Establecer el puerto al que se vinculará el servidor | `5000` | LT_PORT |
| --char-limit | Establecer límite de caracteres | `Sin Limite` | LT_CHAR_LIMIT |
| --req-limit | Establecer el número máximo de solicitudes por minuto por cliente (fuera de los límites establecidos por las claves API) | `Sin Limite` | LT_REQ_LIMIT |
| --req-limit-storage | URI de almacenamiento para limitar el almacenamiento de datos de solicitudes. Ver [Flask Limiter](https://flask-limiter.readthedocs.io/en/stable/configuration.html) | `memoria://` | LT_REQ_LIMIT_STORAGE |
| --req-time-cost | Considera el coste de tiempo (en segundos) para limitar las solicitudes. Si una solicitud tarda 10 segundos y este valor se establece en 5, el coste de la solicitud es 2 o el coste real de la solicitud (el que sea mayor). | `Sin costo de tiempo` | LT_REQ_TIME_COST |
| --batch-limit | Establecer el número máximo de textos a traducir en una solicitud por lotes | `Sin Limite` | LT_BATCH_LIMIT |
| --ga-id | Habilite Google Analytics en la página del cliente API proporcionando una identificación | `Vacío (sin seguimiento)` | LT_GA_ID |
| --frontend-language-source | Establecer el idioma predeterminado del frontend - fuente | `auto` | LT_FRONTEND_LANGUAGE_SOURCE |
| --frontend-language-target | Establecer el idioma predeterminado del frontend - objetivo | `locale` (coincide con la configuración regional del sitio) | LT_FRONTEND_LANGUAGE_TARGET |
| --frontend-timeout | Establecer el tiempo de espera de traducción del frontend | `500` | LT_FRONTEND_TIMEOUT |
| --api-keys-db-path | Utilice una ruta específica dentro del contenedor para la base de datos local. Puede ser absoluta o relativa. | `db/api_keys.db` | LT_API_KEYS_DB_PATH |
| --api-keys-remote | Utilice este punto final remoto para consultar claves API válidas en lugar de utilizar la base de datos local | `Vacío (usa db local en su lugar)` | LT_API_KEYS_REMOTE |
| --get-api-key-link | Mostrar un enlace en la interfaz de usuario donde dirigir a los usuarios para obtener una clave API | `Vacío (no se muestra ningún enlace en la interfaz web)` | LT_GET_API_KEY_LINK |
| --shared-storage | URI de almacenamiento compartido que se utilizará para compartir datos entre múltiples procesos (por ejemplo, al usar gunicorn) | `memoria://` | LT_SHARED_STORAGE |
| --secondary | Marque esta instancia como una instancia secundaria para evitar conflictos con el nodo principal en configuraciones de múltiples nodos | `Nodo primario` | LT_SECONDARY |
| --load-only | Establecer idiomas disponibles | `Vacío (utilizar todo de argostranslate)` | LT_LOAD_ONLY |
| --threads | Establecer número de subprocesos | `4` | LT_THREADS |
| --metrics-auth-token | Proteja el punto final /metrics permitiendo solo clientes que tengan un token de portador de autorización válido | `Vacío (no se requiere autenticación)` | LT_METRICS_AUTH_TOKEN |
| --url-prefix | Agregar prefijo a la URL: ejemplo.com:5000/prefijo-url/ | `/` | LT_URL_PREFIX |
### Notas:
- Cada argumento tiene una variable de entorno equivalente que puede usarse en su lugar. Las variables de entorno sobrescriben los valores predeterminados, pero tienen menor prioridad que los argumentos del comando y son especialmente útiles si se usan con Docker. Los nombres de las variables de entorno son la versión en mayúsculas del nombre del argumento del comando equivalente, con el prefijo `LT`.
- Para configurar el requisito de uso de la clave API, establezca `--req-limit` en `0` y agregue el indicador `--api-keys`. Las solicitudes realizadas sin una clave API correcta serán rechazadas.
- Al establecer `--update-models`, se actualizarán los modelos independientemente de si hay actualizaciones disponibles.
## Actualización
### Software
Si instaló con pip:
`pip install -U libretranslate`
Si usa docker:
`docker pull libretranslate/libretranslate`
### Modelos de lenguaje
Inicie el programa con el argumento `--update-models`. Por ejemplo: `libretranslate --update-models` o `./run.sh --update-models`.
También puede ejecutar el script `scripts/install_models.py`.
## Ejecutar con WSGI y Gunicorn
```bash
pip install gunicorn
gunicorn --bind 0.0.0.0:5000 'wsgi:app'
```
Puedes pasar los argumentos de la aplicación directamente a Gunicorn mediante:
```bash
gunicorn --bind 0.0.0.0:5000 'wsgi:app(api_keys=True)'
```
## Implementación de Kubernetes
Consulta el [artículo Mediano de JM Robles](https://jmrobles.medium.com/libretranslate-your-own-translation-service-on-kubernetes-b46c3e1af630) y el [k8s.yaml](https://github.com/LibreTranslate/LibreTranslate/blob/main/k8s.yaml) mejorado por @rasos.
### Gráfico de Helm
Gracias al trabajo de @rasos, ahora puedes instalar LibreTranslate en Kubernetes usando Helm.
Ya hay un gráfico de Helm disponible en el repositorio [helm-chart](https://github.com/LibreTranslate/helm-chart/), donde puedes encontrar más detalles.
Puede instalar rápidamente LibreTranslate en Kubernetes usando Helm con el siguiente comando:
```bash
helm repo add libretranslate https://libretranslate.github.io/helm-chart/
helm repo update
helm search repo libretranslate
helm install libretranslate libretranslate/libretranslate --namespace libretranslate --create-namespace
```
## Administrar claves API
LibreTranslate admite cuotas límite por usuario. Por ejemplo, puede emitir claves API a los usuarios para que puedan disfrutar de mayores límites de solicitudes por minuto (si también configura `--req-limit`). De forma predeterminada, todos los usuarios tienen un límite de velocidad basado en `--req-limit`, pero al pasar un parámetro opcional `api_key` a los endpoints REST, un usuario puede disfrutar de mayores límites de solicitudes. También puede especificar diferentes límites de caracteres que omiten el valor predeterminado `--char-limit` por clave.
Para usar claves API, simplemente inicie LibreTranslate con la opción `--api-keys`. Si modificó la ruta de la base de datos de claves API con la opción `--api-keys-db-path`, debe especificar la ruta con el mismo indicador de argumento al usar el comando `ltmanage keys`.
### Agregar nuevas claves
Para emitir una nueva clave API con un límite de 120 solicitudes por minuto:
```bash
ltmanage keys add 120
```
Para emitir una nueva clave API con 120 solicitudes por minuto y un máximo de 5000 caracteres por solicitud:
```bash
ltmanage keys add 120 --char-limit 5000
```
Si cambió la ruta de la base de datos de claves API:
```bash
ltmanage keys --api-keys-db-path path/to/db/dbName.db add 120
```
### Eliminar claves
```bash
ltmanage keys remove <api-key>
```
### Ver claves
```bash
ltmanage keys
```
## Métricas de Prometheus
LibreTranslate tiene Prometheus Capacidades de [exportador](https://prometheus.io/docs/instrumenting/exporters/) cuando pasa el argumento `--metrics` al inicio (deshabilitado de manera predeterminada). Cuando las métricas están habilitadas, se monta un punto final `/metrics` en la instancia:
<http://localhost:5000/metrics>
```promql
# HELP libretranslate_http_requests_in_flight Métrica multiproceso
# TYPE libretranslate_http_requests_in_flight Indicador
libretranslate_http_requests_in_flight{api_key="",endpoint="/translate",request_ip="127.0.0.1"} 0.0
# HELP libretranslate_http_request_duration_seconds Métrica multiproceso
# TYPE libretranslate_http_request_duration_seconds Resumen
libretranslate_http_request_duration_seconds_count{api_key="",endpoint="/translate",request_ip="127.0.0.1",status="200"} 0.0
libretranslate_http_request_duration_seconds_sum{api_key="",endpoint="/translate",request_ip="127.0.0.1",status="200"} 0.0
```
Puede configurar `prometheus.yml` para leer las métricas:
```yaml
scrape_configs:
- job_name: "libretranslate"
# Solo es necesario si usas --metrics-auth-token
#authorization:
#credentials: "mytoken"
static_configs:
- targets: ["localhost:5000"]
```
Para proteger el endpoint `/metrics`, también puedes usar `--metrics-auth-token mytoken`.
Si usa Gunicorn, asegúrese de crear un directorio para almacenar las métricas de datos multiproceso y configure `PROMETHEUS_MULTIPROC_DIR`:
```bash
mkdir -p /tmp/prometheus_data
rm /tmp/prometheus_data/*
export PROMETHEUS_MULTIPROC_DIR=/tmp/prometheus_data
gunicorn -c scripts/gunicorn_conf.py --bind 0.0.0.0:5000 'wsgi:app(metrics=True)'
```
## Enlaces de lenguaje
Puedes usar el [plugin oficial de traducción de Discourse](https://github.com/discourse/discourse-translator) para traducir temas de Discourse con LibreTranslate. Para instalarlo, simplemente modifica `/var/discourse/containers/app.yml`:
```yaml
## Los plugins van aquí
## Consulta https://meta.discourse.org/t/19157 para más detalles
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/discourse-translator
...
```
Luego, ejecuta `./launcher rebuild app`. Desde el panel de administración de Discourse, selecciona "LibreTranslate" como proveedor de traducción y configura los endpoints correspondientes.
Véalo en acción en esta [página](https://community.libretranslate.com/t/have-you-considered-adding-the-libretranslate-discourse-translator-multilingual-to-this-forum/766).
## Aplicaciones móviles
- [LibreTranslator](https://codeberg.org/BeoCode/LibreTranslator) es una aplicación para Android [disponible en Play Store](https://play.google.com/store/apps/details?id=de.beowulf.libretranslater) y [en la tienda de F-Droid](https://f-droid.org/packages/de.beowulf.libretranslater/) que utiliza la API de LibreTranslate.
- [Translate You](https://github.com/you-apps/TranslateYou) es una aplicación de traducción centrada en la privacidad, desarrollada con MD3, disponible [en la tienda de F-Droid](https://f-droid.org/packages/com.bnyro.translate/) y que utiliza la API de LibreTranslate, entre otros proveedores. - [LiTranslate](https://github.com/viktorkalyniuk/LiTranslate-iOS) es una aplicación para iOS [disponible en la App Store](https://apps.apple.com/us/app/litranslate/id1644385339) que utiliza la API de LibreTranslate.
## Navegador web
- [minbrowser](https://minbrowser.org/) es un navegador web con [soporte integrado para LibreTranslate](https://github.com/argosopentech/argos-translate/discussions/158#discussioncomment-1141551).
- Un complemento de LibreTranslate para Firefox está [actualmente en desarrollo](https://github.com/LibreTranslate/LibreTranslate/issues/55).
## Espejos
Esta es una lista de instancias públicas de LibreTranslate; algunas requieren una clave API. Si desea agregar una nueva URL, abra una solicitud de extracción.
| URL | Se requiere clave API | Enlaces |
| ----------------------------------------------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------- |
| [libretranslate.com](https://libretranslate.com) | :heavy_check_mark: | [ [Get API Key](https://portal.libretranslate.com) ] [ [Service Status](https://status.libretranslate.com/) ] |
| [translate.flossboxin.org.in](https://translate.flossboxin.org.in/) | | [ [Contact/eMail](mailto:dev@flossboxin.org.in) ] |
| [lt.blitzw.in](https://lt.blitzw.in/) | | |
## TOR/i2p Espejos
| URL |
| ---------------------------------------------------------------------------------------------------------------------------------------------- |
| [lt.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion](http://lt.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion/) |
| [lt.vern.i2p](http://vernf45n7mxwqnp5riaax7p67pwcl7wcefdcnqqvim7ckdx4264a.b32.i2p/) |
## Añadiendo nuevos modelos de lenguaje
Tiene dos opciones para crear nuevos modelos de lenguaje:
- [Locomotive](https://github.com/LibreTranslate/Locomotive)
- [Argos Train](https://github.com/argosopentech/argos-train) ([videotutorial](https://www.youtube.com/watch?v=Vj_qgnhOEwg))
La mayoría de los datos de entrenamiento provienen de [Opus](http://opus.nlpl.eu/), un corpus paralelo de código abierto. Consulte también [NLLU](https://nllu.libretranslate.com)
## Localización
La interfaz web de LibreTranslate está disponible en todos los idiomas a los que LibreTranslate puede traducir. También puede (aproximadamente) [traducirse a sí mismo!](https://github.com/LibreTranslate/LibreTranslate/blob/main/scripts/update_locales.py). Es posible que algunos idiomas no aparezcan en la interfaz de usuario, ya que aún no han sido revisados por un usuario. Puedes habilitar todos los idiomas activando el modo `--debug`.
Para ayudar a mejorar o revisar las traducciones de la interfaz de usuario:
- Ve a <https://hosted.weblate.org/projects/libretranslate/app/#translations>. Todos los cambios se envían automáticamente a este repositorio.
- Una vez revisadas/editadas todas las cadenas, abre una solicitud de extracción y modifica `libretranslate/locales/{code}/meta.json`:
```json
{
"name": "<Idioma>",
"reviewed": true <-- Cambia esto de falso a verdadero
}
```
| Idioma | Revisado | Enlace de Pizarra web |
| --------------------- | ------------------ | ------------------------------------------------------------------------ |
| Arabic | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ar/) |
| Azerbaijani | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/az/) |
| Basque | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/eu/) |
| Chinese | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/zh/) |
| Chinese (Traditional) | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/zh_Hant/) |
| Czech | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/cs/) |
| Danish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/da/) |
| Dutch | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/nl/) |
| English | :heavy_check_mark: | [Edit](https://hosted.weblate.org/projects/libretranslate/app/) |
| Esperanto | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/eo/) |
| Finnish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fi/) |
| French | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fr/) |
| German | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/de/) |
| Greek | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/el/) |
| Hebrew | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/he/) |
| Hindi | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/hi/) |
| Hungarian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/hu/) |
| Indonesian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/id/) |
| Irish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ga/) |
| Italian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/it/) |
| Japanese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ja/) |
| Kabyle | :heavy_check_mark: | [Edit](https://hosted.weblate.org/projects/libretranslate/app/kab/) |
| Korean | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ko/) |
| Occitan | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/oc/) |
| Persian | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/fa/) |
| Polish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/pl/) |
| Portuguese | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/pt/) |
| Russian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/ru/) |
| Slovak | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/sk/) |
| Spanish | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/es/) |
| Swedish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/sv/) |
| Turkish | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/tr/) |
| Ukrainian | :heavy_check_mark: | [Edit](https://hosted.weblate.org/translate/libretranslate/app/uk/) |
| Vietnamese | | [Edit](https://hosted.weblate.org/translate/libretranslate/app/vi/) |
## Mapa de ruta
Ayúdanos abriendo una solicitud de extracción!
- [ ] Enlaces de lenguaje para cada lenguaje de programación
- [ ] [Traducciones mejoradas](https://community.libretranslate.com/t/the-best-way-to-train-models/172)
Cualquier otra idea es bienvenida.
## Preguntas frecuentes
### Puedo usar su servidor API en libretranslate.com para mi aplicación en producción?
En resumen, sí, [pero solo si compras una clave API](https://portal.libretranslate.com). Por supuesto, siempre puedes ejecutar LibreTranslate gratis en tu propio servidor.
### Algunas traducciones en libretranslate.com son diferentes a las alojadas por el usuario. Por qué?
Por defecto, los modelos de lenguaje se cargan desde el [argos-index](https://github.com/argosopentech/argospm-index). A veces implementamos modelos en libretranslate.com que aún no se han añadido al índice argos, como los convertidos desde OPUS ([thread](https://community.libretranslate.com/t/opus-mt-language-models-port-thread/757))
### Dónde se guardan los modelos de lenguaje?
En `$HOME/.local/share/argos-translate/packages`. En Windows, es `C:\Users\youruser\.local\share\argos-translate\packages`.
### Puedo usar LibreTranslate tras un proxy inverso, como Apache2 o Caddy?
Sí, aquí hay ejemplos de configuración para Apache2 y Caddy que redirigen un subdominio (con certificado HTTPS) a LibreTranslate ejecutándose en un contenedor en el host local.
```bash
sudo docker run -ti --rm -p 127.0.0.1:5000:5000 libretranslate/libretranslate
```
Puede eliminar `127.0.0.1` del comando anterior si desea acceder a él desde `domain.tld:5000`, además de `subdomain.domain.tld` (esto puede ser útil para determinar si hay un problema con Apache 2 o el contenedor de Docker).
Agregue `--restart unless-stopped` si desea que este contenedor se inicie al arrancar, a menos que se detenga manualmente.
<details>
<summary>Configuración de Apache</summary>
<br>
Reemplace [YOUR_DOMAIN] con su dominio completo; por ejemplo, `translate.domain.tld` o `libretranslate.domain.tld`.
Elimine `#` en las líneas ErrorLog y CustomLog para registrar las solicitudes.
```ApacheConf
#Libretranslate
#Redireccionar http a https
<VirtualHost *:80>
Nombre del servidor http://[SU_DOMINIO]
Redirigir / https://[SU_DOMINIO]
# Registro de errores ${APACHE_LOG_DIR}/error.log
# Registro personalizado ${APACHE_LOG_DIR}/tr-access.log combinado
</VirtualHost>
#https
<HostVirtual *:443>
NombreDeServidor https://[SU_DOMINIO]
PassProxy / http://127.0.0.1:5000/
PassReverseProxy / http://127.0.0.1:5000/
ProxyPreserveHost Activado
SSLEngine Activado
ArchivoDeCertificadoSSL /etc/letsencrypt/live/[SU_DOMINIO]/fullchain.pem
ArchivoDeClaveDeCertificadoSSL /etc/letsencrypt/live/[SU_DOMINIO]/privkey.pem
ArchivoDeCadenaDeCertificadoSSL /etc/letsencrypt/live/[SU_DOMINIO]/fullchain.pem
# RegistroDeErrores ${APACHE_LOG_DIR}/tr-error.log
# RegistroPersonalizado ${APACHE_LOG_DIR}/tr-access.log Combinado
</VirtualHost>
```
Agregue esto a la configuración de un sitio existente o a un nuevo archivo en `/etc/apache2/sites-available/new-site.conf` y ejecute `sudo a2ensite new-site.conf`.
Para obtener un certificado de subdominio HTTPS, instale `certbot` (snap), ejecute `sudo certbot certonly --manual --preferred-challenges dns` e ingrese su información (con `subdomain.domain.tld` como dominio). Agregue un registro DNS TXT con su registrador de dominio cuando se le solicite. Esto guardará su certificado y clave en `/etc/letsencrypt/live/{subdomain.domain.tld}/`. Como alternativa, comente las líneas SSL si no desea usar HTTPS.
</details>
<details>
<summary>Configuración de Caddy</summary>
<br>
Reemplace [SU_DOMINIO] con su dominio completo; por ejemplo, `translate.domain.tld` o `libretranslate.domain.tld`.
```Caddyfile
#Libretranslate
[SU_DOMINIO] {
reverse_proxy localhost:5000
}
```
Agregue esto a un archivo Caddyfile existente o guárdelo como `Caddyfile` en cualquier directorio y ejecute `sudo caddy reload` en ese mismo directorio.
</details>
<details>
<summary>NGINX config</summary>
<br>
Reemplace [SU_DOMINIO] con su dominio completo; por ejemplo, `translate.domain.tld` o `libretranslate.domain.tld`.
Elimine `#` en las líneas `access_log` y `error_log` para deshabilitar el registro.
```NginxConf
server {
list 80; nombre_del_servidor [SU_DOMINIO];
return 301 https://$nombre_del_servidor$uri_de_solicitud;
}
servidor {
list 443 http2 ssl;
nombre_del_servidor [SU_DOMINIO];
#registro_acceso off;
#registro_error off;
# Sección SSL
certificado_ssl /etc/letsencrypt/live/[SU_DOMINIO]/fullchain.pem;
clave_del_certificado_ssl /etc/letsencrypt/live/[SU_DOMINIO]/privkey.pem;
protocolos_ssl TLSv1.2 TLSv1.3;
# Utilizando el conjunto de cifrado recomendado de: https://wiki.mozilla.org/Security/Server_Side_TLS
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384';
ssl_session_timeout 10m;
ssl_session_cache shared:MozSSL:10m; # aproximadamente 40000 sesiones
ssl_session_tickets off;
# Especifica una curva para cifrados ECDHE.
ssl_ecdh_curve prime256v1;
# El servidor debe determinar los cifrados, no el cliente.
ssl_prefer_server_ciphers on;
# Sección de encabezado
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
add_header Referrer-Policy "strict-origin" always;
add_header X-Frame-Options "SAMEORIGIN" always; add_header X-XSS-Protection "1; modo=bloquear" siempre;
add_header X-Content-Type-Options "nosniff" siempre;
add_header X-Download-Options "noopen" siempre;
add_header X-Robots-Tag "none" siempre;
add_header Política de funciones "micrófono 'ninguno'; cámara 'ninguna'; geolocalización 'ninguna';" siempre;
# Encabezado más reciente, pero no compatible en todas partes
add_header Política de permisos "micrófono=(), cámara=(), geolocalización=()" siempre;
# Eliminar X-Powered-By, que es una fuga de información
fastcgi_hide_header X-Powered-By;
# No enviar el encabezado del servidor nginx
server_tokens off;
# Sección GZIP
gzip activado;
gzip_disable "msie6";
gzip_vary activado;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_min_length 256; gzip_types texto/xml texto/javascript fuente/ttf fuente/eot fuente/otf aplicación/x-javascript aplicación/atom+xml aplicación/javascript aplicación/json aplicación/manifiesto+json aplicación/rss+xml aplicación/x-web-app-manifest+json aplicación/xhtml+xml aplicación/xml imagen/svg+xml imagen/x-icon texto/css texto/plain;
location / {
proxy_pass http://127.0.0.1:5000/;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 0;
}
}
```
Agregue esto a una configuración de NGINX existente o guárdelo como `libretranslate` en el directorio `/etc/nginx/site-enabled` y ejecute `sudo nginx -s reload`.
</details>
### Puedo ejecutarlo como systemd (el instalado por defecto en pip/python)?
Sí, simplemente cree un archivo de servicio en `/etc/systemd/system` y habilítelo para que se ejecute al inicio.
El archivo .env (entorno) es opcional según su configuración. Agregue lo siguiente al archivo (modifique los valores según sea necesario) y nómbrelo "libretranslate.service).
```javascript
[Unidad]
Descripción=LibreTranslate
Después=network.target
[Servicio]
Usuario=root
Tipo=idle
Reiniciar=always
Environment="PATH=/usr/local/lib/python3.11/dist-packages/libretranslate"
ExecStart=/usr/bin/python3 /usr/local/bin/libretranslate
EnvironmentFile=/usr/local/lib/python3.11/dist-packages/libretranslate/.env
ExecReload=/bin/kill -s HUP $MAINPID
KillMode=mixed
TimeoutStopSec=1
[Instalar]
WantedBy=multi-user.target
```
Una vez guardado, vuelva a cargar el archivo Daemon e iniciar el servicio:
```javascript
systemctl daemon-reload
systemctl start libretranslate.service
systemctl enable libretranslate.service
```
### Puedo realizar traducciones por lotes?
Sí, pasa un array de cadenas en lugar de una cadena al campo `q`:
```javascript
const res = await fetch("https://libretranslate.com/translate", {
method: "POST",
body: JSON.stringify({
q: ["Hello", "world"],
source: "en",
target: "es",
}),
headers: { "Content-Type": "application/json" },
});
console.log(await res.json());
// {
// "translatedText": [
// "Hola",
// "mundo"
// ]
// }
```
## Contribuyendo
Agradecemos sus contribuciones! Aquí tienen algunas ideas:
- Entrenar un nuevo modelo de lenguaje usando [Locomotive](https://github.com/LibreTranslate/Locomotive). Por ejemplo, queremos entrenar redes neuronales mejoradas para [alemán](https://community.libretranslate.com/t/help-wanted-improve-en-de-translation/935) y muchos otros idiomas.
- Puedes superar el rendimiento de nuestros modelos de lenguaje? Entrena uno nuevo y comparémoslo. Para enviar tu modelo, publica en el [foro de la comunidad](https://community.libretranslate.com/) un enlace para descargar tu archivo .argosmodel y un texto de muestra que tu modelo haya traducido.
- Elige un [problema](https://github.com/LibreTranslate/LibreTranslate/issues) en el que trabajar.
## Créditos
Este trabajo es posible en gran medida gracias a [Argos Translate](https://github.com/argosopentech/argos-translate), que impulsa el motor de traducción.
## Licencia
[Licencia Pública General GNU Affero v3](https://www.gnu.org/licenses/agpl-3.0.en.html)
## Marca registrada
Consulte las [Directrices de marca registrada](https://github.com/LibreTranslate/LibreTranslate/blob/main/docs/TRADEMARK.es.md)
## Projectos Relacionados
* [LTEngine](https://github.com/LibreTranslate/LTEngine): Machine translation powered by LLMs with a LibreTranslate-compatible API
## Otros idiomas
- [English (README)](/README.md)

90
docs/TRADEMARK.es.md Normal file
View file

@ -0,0 +1,90 @@
# Directrices de marca registrada de LibreTranslate
LibreTranslate es una organización de código abierto. Dado que nuestro código está disponible para su descarga y modificación, el uso correcto de nuestras marcas registradas es esencial para informar a los usuarios si LibreTranslate respalda un producto o servicio. Al utilizar las marcas registradas de LibreTranslate (incluidos algunos nombres de productos que forman parte de nuestra organización), debe cumplir con estas Directrices de marca registrada de LibreTranslate.
Algunas de nuestras marcas registradas incluyen:
* LibreTranslate
Algunos de nuestros logotipos de marcas registradas incluyen:
![LibreTranslate](https://avatars.githubusercontent.com/u/77352747?s=200&v=4)
Sin embargo, esta no es una lista completa de nuestros nombres, logotipos y características de marca, todos los cuales están sujetos a estas directrices.
Si desea denunciar el uso indebido de una marca registrada de LibreTranslate, contáctenos a través de https://uav4geo.com/contact
## ¿Cuándo necesito un permiso específico para usar una marca registrada de LibreTranslate?
Teniendo en cuenta que el software LibreTranslate combinado o integrado en cualquier otro programa de software, incluido, entre otros, el software de automatización para ofrecer LibreTranslate como un servicio en la nube o el software de orquestación para ofrecer LibreTranslate en contenedores, se considera software LibreTranslate "modificado", puede hacer lo siguiente sin recibir permiso específico de LibreTranslate (o sus afiliados):
* Utilizar las marcas denominativas y/o logotipos de LibreTranslate en versiones sin modificar de los programas, productos, servicios y tecnologías de LibreTranslate.
* Utilizar las marcas denominativas de LibreTranslate en el texto para referirse o enlazar verazmente a programas, productos, servicios y tecnologías de LibreTranslate sin modificar.
* Utilizar los logotipos de LibreTranslate en elementos visuales para referirse o enlazar verazmente a los programas, productos, servicios y tecnologías aplicables alojados en los servidores de LibreTranslate.
* Utilizar las marcas denominativas de LibreTranslate para explicar que su software se basa en el código fuente abierto de LibreTranslate o que es compatible con él.
* Describir una cuenta, página o comunidad en redes sociales de acuerdo con las [Directrices de Redes Sociales](#social-media-guidelines).
Todos los demás usos de una marca registrada de LibreTranslate requieren nuestra autorización previa por escrito. Esto incluye cualquier uso de una marca registrada de LibreTranslate en un nombre de dominio. Contáctenos en https://uav4geo.com/contact para obtener más información.
## Cuando esté permitido, ¿cómo debo usar una marca registrada de LibreTranslate?
### Pautas generales
#### Qué hacer:
* Use la marca registrada de LibreTranslate exactamente como se muestra en la lista anterior.
* Use las marcas denominativas de LibreTranslate solo como adjetivo, nunca como sustantivo o verbo. No las use en plural ni posesivo. En su lugar, use el término genérico para el producto o servicio de LibreTranslate después de la marca registrada, por ejemplo: software de traducción LibreTranslate.
#### Qué no hacer:
* No use las marcas registradas de LibreTranslate en el nombre de su empresa, producto, servicio, aplicación, nombre de dominio, publicación u otra oferta.
* No use marcas, logotipos, nombres de empresas, eslóganes, nombres de dominio o diseños que sean confusamente similares a las marcas registradas de LibreTranslate.
* No use las marcas registradas de LibreTranslate de una manera que implique incorrectamente afiliación, patrocinio, respaldo o aprobación por parte de LibreTranslate de sus productos o servicios.
* No muestre las marcas registradas de LibreTranslate de forma más prominente que el nombre de su producto, servicio o empresa.
* No utilice las marcas registradas de LibreTranslate en productos a la venta (p. ej., venta de camisetas, tazas, etc.).
* No utilice las marcas registradas de LibreTranslate para ningún otro uso comercial (p. ej., ofrecer servicios de soporte técnico), a menos que dicho uso se limite a una referencia veraz y descriptiva (p. ej., soporte técnico independiente para el software de LibreTranslate).
* No modifique las marcas registradas de LibreTranslate, ni las abrevie, ni las combine con otros símbolos, palabras o imágenes, ni las incorpore en un eslogan o lema.
### Directrices para redes sociales
Además de las Directrices generales mencionadas anteriormente, el nombre y el nombre de usuario de su cuenta de redes sociales, así como de todas sus páginas, no pueden comenzar con una marca registrada de LibreTranslate. Asimismo, los logotipos de LibreTranslate no pueden usarse de forma que sugiera afiliación con LibreTranslate, incluyendo, entre otros, las imágenes de la cuenta, el perfil o el encabezado. La única excepción a estos requisitos es si cuenta con la autorización previa de LibreTranslate.
Por ejemplo, no puede nombrar su cuenta, página o comunidad como "Representantes de LibreTranslate" o "Software de LibreTranslate". Sin embargo, sí es aceptable nombrar su cuenta, página o comunidad como "Fans de LibreTranslate" o "Información sobre el software de LibreTranslate", siempre y cuando no utilice las marcas registradas ni los logotipos de LibreTranslate ni sugiera de cualquier otra forma alguna afiliación con LibreTranslate.
### Directrices para proyectos de código abierto
La licencia específica de cada producto y código de software de LibreTranslate especifica lo que se puede y no se puede hacer con el código, pero no autoriza el uso de las marcas registradas de LibreTranslate. Si decide desarrollar o modificar el código fuente abierto de LibreTranslate para su propio proyecto,
#### Debe:
* Seguir los términos de la(s) Licencia(s) de Código Abierto para los productos y el código de software de LibreTranslate.
* Elegir marcas, logotipos y marcas registradas que denoten su identidad única para indicar claramente a los usuarios que no existe afiliación ni respaldo por parte de LibreTranslate.
* Seguir las Directrices generales mencionadas anteriormente.
#### NO DEBE:
* Usar ninguna marca registrada de LibreTranslate en relación con el nombre o la marca de su proyecto.
* Usar ninguna marca registrada de LibreTranslate, ni parte de ella, para sugerir o dar la impresión incorrecta de que su software está publicado, afiliado o respaldado por LibreTranslate.
Por ejemplo, no nombre su proyecto [Algo]-LibreTranslate ni LibreTranslate-[Algo].
#### Puede:
* Declarar con palabras (sin usar logotipos ni imágenes) que su producto "funciona con" o "es compatible" con ciertos productos de software de LibreTranslate, si es cierto.
* Declarar con palabras (sin usar logotipos ni imágenes) que su proyecto se basa en la tecnología de código abierto de LibreTranslate, si es cierto, siempre que incluya una declaración de que su proyecto no está oficialmente asociado con LibreTranslate ni con sus productos.
Por ejemplo, puede indicar que su proyecto:
"se basa en el software de código abierto de LibreTranslate"
siempre que incluya también la siguiente declaración, de forma igualmente destacada:
"[Marca] y [Nombre del producto] no están oficialmente asociados con LibreTranslate ni con sus productos".
### Directrices de la comunidad de LibreTranslate
Se han otorgado varios permisos para utilizar las marcas comerciales de LibreTranslate a varios miembros de la comunidad de LibreTranslate, y estas Pautas de marcas comerciales de LibreTranslate no alteran ninguno de los permisos otorgados previamente.
## Otros Idiomas
- [English (TRADEMARK)](/TRADEMARK.md)

View file

@ -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()
@ -93,7 +101,12 @@ 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
self.cache[api_key] = req_limit
if res.get('error') is not None:
return None
return req_limit
req_limit = res.get('req_limit', None)
char_limit = res.get('char_limit', None)
self.cache[api_key] = (req_limit, char_limit)
return val

View file

@ -1,4 +1,5 @@
import io
import math
import os
import re
import tempfile
@ -10,7 +11,7 @@ from timeit import default_timer
import argostranslatefiles
from argostranslatefiles import get_supported_formats
from flask import Blueprint, Flask, Response, abort, jsonify, render_template, request, send_file, session, url_for
from flask import Blueprint, Flask, Response, abort, jsonify, render_template, request, send_file, session, url_for, make_response
from flask_babel import Babel
from flask_session import Session
from flask_swagger import swagger
@ -21,7 +22,7 @@ from werkzeug.http import http_date
from werkzeug.utils import secure_filename
from libretranslate import flood, remove_translated_files, scheduler, secret, security, storage
from libretranslate.language import detect_languages, improve_translation_formatting
from libretranslate.language import model2iso, iso2model, detect_languages, improve_translation_formatting
from libretranslate.locales import (
_,
_lazy,
@ -36,6 +37,19 @@ from libretranslate.locales import (
from .api_keys import Database, RemoteDatabase
from .suggestions import Database as SuggestionsDatabase
# Rough map of emoji characters
emojis = {e: True for e in \
[ord(' ')] + # Spaces
list(range(0x1F600,0x1F64F)) + # Emoticons
list(range(0x1F300,0x1F5FF)) + # Misc Symbols and Pictographs
list(range(0x1F680,0x1F6FF)) + # Transport and Map
list(range(0x2600,0x26FF)) + # Misc symbols
list(range(0x2700,0x27BF)) + # Dingbats
list(range(0xFE00,0xFE0F)) + # Variation Selectors
list(range(0x1F900,0x1F9FF)) + # Supplemental Symbols and Pictographs
list(range(0x1F1E6,0x1F1FF)) + # Flags
list(range(0x20D0,0x20FF)) # Combining Diacritical Marks for Symbols
}
def get_version():
try:
@ -88,22 +102,41 @@ def get_remote_address():
return ip
def get_fingerprint():
return request.headers.get("User-Agent", "") + request.headers.get("Cookie", "")
def get_req_limits(default_limit, api_keys_db, multiplier=1):
def get_req_limits(default_limit, api_keys_db, db_multiplier=1, multiplier=1):
req_limit = default_limit
if api_keys_db:
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 * 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 req_limit
return int(req_limit * multiplier)
def get_routes_limits(default_req_limit, daily_req_limit, api_keys_db):
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:
# TODO: better way?
default_req_limit = 9999999999999
@ -111,16 +144,43 @@ def get_routes_limits(default_req_limit, daily_req_limit, api_keys_db):
def minute_limits():
return "%s per minute" % get_req_limits(default_req_limit, api_keys_db)
def hourly_limits(n):
def func():
decay = (0.75 ** (n - 1))
return "{} per {} hour".format(get_req_limits(args.hourly_req_limit * n, api_keys_db, int(os.environ.get("LT_HOURLY_REQ_LIMIT_MULTIPLIER", 60) * n), decay), n)
return func
def daily_limits():
return "%s per day" % get_req_limits(daily_req_limit, api_keys_db, 1440)
return "%s per day" % get_req_limits(args.daily_req_limit, api_keys_db, int(os.environ.get("LT_DAILY_REQ_LIMIT_MULTIPLIER", 1440)))
res = [minute_limits]
if daily_req_limit > 0:
if args.hourly_req_limit > 0:
for n in range(1, args.hourly_req_limit_decay + 2):
res.append(hourly_limits(n))
if args.daily_req_limit > 0:
res.append(daily_limits)
return res
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))]
def detect_translatable(src_texts):
if isinstance(src_texts, list):
return any(detect_translatable(t) for t in src_texts)
for ch in src_texts:
if not (ord(ch) in emojis):
return True
# All emojis
return False
def create_app(args):
from libretranslate.init import boot
@ -186,19 +246,38 @@ def create_app(args):
api_keys_db = None
if args.req_limit > 0 or args.api_keys or args.daily_req_limit > 0:
if args.req_limit > 0 or args.api_keys or args.daily_req_limit > 0 or args.hourly_req_limit > 0:
api_keys_db = None
if args.api_keys:
api_keys_db = RemoteDatabase(args.api_keys_remote) if args.api_keys_remote else Database(args.api_keys_db_path)
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
def get_limits_key_func():
if args.api_keys:
def func():
ak = get_req_api_key()
return ak if ak else get_remote_address()
return func
else:
return get_remote_address
limiter = Limiter(
key_func=get_remote_address,
key_func=get_limits_key_func(),
default_limits=get_routes_limits(
args.req_limit, args.daily_req_limit, api_keys_db
args, api_keys_db
),
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="moving-window",
)
else:
from .no_limiter import Limiter
@ -266,12 +345,28 @@ def create_app(args):
):
need_key = True
req_secret = get_req_secret()
if (args.require_api_key_secret
and key_missing
and not secret.secret_match(get_req_secret())
and not secret.secret_match(req_secret)
):
need_key = True
if secret.secret_bogus_match(req_secret):
abort(make_response(jsonify({
'translatedText': secret.get_emoji(),
'alternatives': [],
'detectedLanguage': { 'confidence': 100, 'language': 'en' }
}), 200))
if (args.require_api_key_fingerprint
and key_missing):
if flood.fingerprint_mismatch(ip, get_fingerprint()):
need_key = True
if args.under_attack and key_missing:
need_key = True
if need_key:
description = _("Please contact the server operator to get an API key")
if args.get_api_key_link:
@ -297,12 +392,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):
@ -327,11 +429,11 @@ def create_app(args):
if args.disable_web_ui:
abort(404)
langcode = request.args.get('lang')
langcode = args.frontend_language if len(args.frontend_language) > 0 else request.args.get('lang')
if langcode and langcode in get_available_locale_codes(not args.debug):
session.update(preferred_lang=langcode)
return render_template(
resp = make_response(render_template(
"index.html",
gaId=args.ga_id,
frontendTimeout=args.frontend_timeout,
@ -340,21 +442,41 @@ def create_app(args):
web_version=os.environ.get("LT_WEB") is not None,
version=get_version(),
swagger_url=swagger_url,
available_locales=[{'code': l['code'], 'name': _lazy(l['name'])} for l in get_available_locales(not args.debug)],
available_locales=sorted([{'code': l['code'], 'name': _lazy(l['name'])} for l in get_available_locales(not args.debug)], key=lambda s: s['name']),
current_locale=get_locale(),
alternate_locales=get_alternate_locale_links()
)
alternate_locales=get_alternate_locale_links(),
under_attack=args.under_attack,
hide_api=args.hide_api,
frontend_title=args.frontend_title,
))
if args.require_api_key_secret:
resp.set_cookie('r', '1')
return resp
@bp.route("/js/app.js")
@limiter.exempt
def appjs():
if args.disable_web_ui:
abort(404)
abort(404)
api_secret = ""
bogus_api_secret = ""
if args.require_api_key_secret:
bogus_api_secret = secret.get_bogus_secret_b64()
if 'User-Agent' in request.headers and request.cookies.get('r'):
api_secret = secret.get_current_secret_js()
else:
api_secret = secret.get_bogus_secret_js()
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=api_secret,
bogus_api_secret=bogus_api_secret,
under_attack=args.under_attack), content_type='application/javascript; charset=utf-8')
if args.require_api_key_secret:
response.headers['Last-Modified'] = http_date(datetime.now())
@ -393,7 +515,10 @@ def create_app(args):
type: string
description: Supported target language codes
"""
return jsonify([{"code": l.code, "name": _lazy(l.name), "targets": language_pairs.get(l.code, [])} for l in languages])
return jsonify([{"code": model2iso(l.code),
"name": _lazy(l.name),
"targets": model2iso(language_pairs.get(l.code, []))
} for l in languages])
# Add cors
@bp.after_request
@ -453,6 +578,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:
@ -512,14 +645,16 @@ def create_app(args):
if request.is_json:
json = get_json_dict(request)
q = json.get("q")
source_lang = json.get("source")
target_lang = json.get("target")
source_lang = iso2model(json.get("source"))
target_lang = iso2model(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")
source_lang = iso2model(request.values.get("source"))
target_lang = iso2model(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'))
@ -527,6 +662,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
@ -534,6 +677,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:
@ -544,43 +689,33 @@ def create_app(args):
description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=batch_size, limit=args.batch_limit),
)
if args.char_limit != -1:
chars = sum([len(text) for text in q]) if batch else len(q)
src_texts = q if batch else [q]
if args.char_limit < chars:
abort(
400,
description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=chars, limit=args.char_limit),
)
if char_limit != -1:
for text in src_texts:
if len(text) > char_limit:
abort(
400,
description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=len(text), limit=char_limit),
)
if source_lang == "auto":
source_langs = []
auto_detect_texts = q if batch else [q]
overall_candidates = detect_languages(q)
for text_to_check in auto_detect_texts:
if len(text_to_check) > 40:
candidate_langs = detect_languages(text_to_check)
else:
# Unable to accurately detect languages for short texts
candidate_langs = overall_candidates
source_langs.append(candidate_langs[0])
if args.debug:
print(text_to_check, candidate_langs)
print("Auto detected: %s" % candidate_langs[0]["language"])
if batch:
request.req_cost = max(1, len(q))
translatable = detect_translatable(src_texts)
if translatable:
if source_lang == "auto":
candidate_langs = detect_languages(src_texts)
detected_src_lang = candidate_langs[0]
else:
detected_src_lang = {"confidence": 100.0, "language": source_lang}
else:
if batch:
source_langs = [ {"confidence": 100.0, "language": source_lang} for text in q]
else:
source_langs = [ {"confidence": 100.0, "language": source_lang} ]
detected_src_lang = {"confidence": 0.0, "language": "en"}
src_lang = next(iter([l for l in languages if l.code == detected_src_lang["language"]]), None)
src_langs = [next(iter([l for l in languages if l.code == source_lang["language"]]), None) for source_lang in source_langs]
for idx, lang in enumerate(src_langs):
if lang is None:
abort(400, description=_("%(lang)s is not supported", lang=source_langs[idx]))
if src_lang is None:
abort(400, description=_("%(lang)s is not supported", lang=source_lang))
tgt_lang = next(iter([l for l in languages if l.code == target_lang]), None)
@ -595,55 +730,63 @@ def create_app(args):
try:
if batch:
results = []
for idx, text in enumerate(q):
translator = src_langs[idx].get_translation(tgt_lang)
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_langs[idx].name), scode=src_langs[idx].code))
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))
if translatable:
if text_format == "html":
translated_text = unescape(str(translate_html(translator, text)))
alternatives = [] # Not supported for html yet
else:
hypotheses = translator.hypotheses(text, num_alternatives + 1)
translated_text = unescape(improve_translation_formatting(text, hypotheses[0].value))
alternatives = filter_unique([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
else:
translated_text = improve_translation_formatting(text, translator.translate(text))
translated_text = text # Cannot translate, send the original text back
alternatives = []
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": source_langs
}
)
else:
return jsonify(
{
"translatedText": results
}
)
result["detectedLanguage"] = [model2iso(detected_src_lang)] * len(q)
if num_alternatives > 0:
result["alternatives"] = batch_alternatives
return jsonify(result)
else:
translator = src_langs[0].get_translation(tgt_lang)
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_langs[0].name), scode=src_langs[0].code))
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))
if translatable:
if text_format == "html":
translated_text = unescape(str(translate_html(translator, q)))
alternatives = [] # Not supported for html yet
else:
hypotheses = translator.hypotheses(q, num_alternatives + 1)
translated_text = unescape(improve_translation_formatting(q, hypotheses[0].value))
alternatives = filter_unique([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text)
else:
translated_text = improve_translation_formatting(q, translator.translate(q))
translated_text = q # Cannot translate, send the original text back
alternatives = []
result = {"translatedText": translated_text}
if source_lang == "auto":
return jsonify(
{
"translatedText": unescape(translated_text),
"detectedLanguage": source_langs[0]
}
)
else:
return jsonify(
{
"translatedText": unescape(translated_text)
}
)
result["detectedLanguage"] = model2iso(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)))
@bp.post("/translate_file")
@ -733,9 +876,10 @@ def create_app(args):
if args.disable_files_translation:
abort(403, description=_("Files translation are disabled on this server."))
source_lang = request.form.get("source")
target_lang = request.form.get("target")
source_lang = iso2model(request.form.get("source"))
target_lang = iso2model(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'))
@ -750,12 +894,10 @@ def create_app(args):
if os.path.splitext(file.filename)[1] not in frontend_argos_supported_files_format:
abort(400, description=_("Invalid request: file format not supported"))
source_langs = [source_lang]
src_langs = [next(iter([l for l in languages if l.code == source_lang]), None) for source_lang in source_langs]
src_lang = next(iter([l for l in languages if l.code == source_lang]), None)
for idx, lang in enumerate(src_langs):
if lang is None:
abort(400, description=_("%(lang)s is not supported", lang=source_langs[idx]))
if src_lang is None and source_lang != "auto":
abort(400, description=_("%(lang)s is not supported", lang=source_lang))
tgt_lang = next(iter([l for l in languages if l.code == target_lang]), None)
@ -768,7 +910,23 @@ def create_app(args):
file.save(filepath)
translated_file_path = argostranslatefiles.translate_file(src_langs[0].get_translation(tgt_lang), filepath)
# Not an exact science: take the number of bytes and divide by
# the character limit. Assuming a plain text file, this will
# 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 char_limit > 0:
request.req_cost = max(1, int(os.path.getsize(filepath) / char_limit))
if source_lang == "auto":
src_texts = argostranslatefiles.get_texts(filepath)
candidate_langs = detect_languages(src_texts)
detected_src_lang = candidate_langs[0]
src_lang = next(iter([l for l in languages if l.code == detected_src_lang["language"]]), None)
if src_lang is None:
abort(400, description=_("%(lang)s is not supported", lang=detected_src_lang["language"]))
translated_file_path = argostranslatefiles.translate_file(src_lang.get_translation(tgt_lang), filepath)
translated_filename = os.path.basename(translated_file_path)
return jsonify(
@ -819,7 +977,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
@ -840,11 +998,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
@ -895,7 +1053,7 @@ def create_app(args):
if not q:
abort(400, description=_("Invalid request: missing %(name)s parameter", name='q'))
return jsonify(detect_languages(q))
return jsonify(model2iso(detect_languages(q)))
@bp.route("/frontend/settings")
@limiter.exempt
@ -1041,13 +1199,13 @@ def create_app(args):
json = get_json_dict(request)
q = json.get("q")
s = json.get("s")
source_lang = json.get("source")
target_lang = json.get("target")
source_lang = iso2model(json.get("source"))
target_lang = iso2model(json.get("target"))
else:
q = request.values.get("q")
s = request.values.get("s")
source_lang = request.values.get("source")
target_lang = request.values.get("target")
source_lang = iso2model(request.values.get("source"))
target_lang = iso2model(request.values.get("target"))
if not q:
abort(400, description=_("Invalid request: missing %(name)s parameter", name='q'))

View file

@ -61,6 +61,16 @@ _default_options_objects = [
'default_value': 'memory://',
'value_type': 'str'
},
{
'name': 'HOURLY_REQ_LIMIT',
'default_value': -1,
'value_type': 'int'
},
{
'name': 'HOURLY_REQ_LIMIT_DECAY',
'default_value': 0,
'value_type': 'int'
},
{
'name': 'DAILY_REQ_LIMIT',
'default_value': -1,
@ -71,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,
@ -101,11 +116,21 @@ _default_options_objects = [
'default_value': 'locale',
'value_type': 'str'
},
{
'name': 'FRONTEND_LANGUAGE',
'default_value': '',
'value_type': 'str'
},
{
'name': 'FRONTEND_TIMEOUT',
'default_value': 500,
'value_type': 'int'
},
{
'name': 'FRONTEND_TITLE',
'default_value': '',
'value_type': 'str'
},
{
'name': 'API_KEYS',
'default_value': False,
@ -136,16 +161,41 @@ _default_options_objects = [
'default_value': False,
'value_type': 'bool'
},
{
'name': 'UNDER_ATTACK',
'default_value': False,
'value_type': 'bool'
},
{
'name': 'REQUIRE_API_KEY_FINGERPRINT',
'default_value': False,
'value_type': 'bool'
},
{
'name': 'HIDE_API',
'default_value': False,
'value_type': 'bool'
},
{
'name': 'SHARED_STORAGE',
'default_value': 'memory://',
'value_type': 'str'
},
{
'name': 'SECONDARY',
'default_value': False,
'value_type': 'bool'
},
{
'name': 'LOAD_ONLY',
'default_value': None,
'value_type': 'str'
},
{
'name': 'ALTERNATIVES_LIMIT',
'default_value': -1,
'value_type': 'int'
},
{
'name': 'THREADS',
'default_value': 4,

View file

@ -1,83 +1,54 @@
# Originally adapted from https://github.com/aboSamoor/polyglot/blob/master/polyglot/base.py
import unicodedata
from langdetect import DetectorFactory
import pycld2 as cld2
DetectorFactory.seed = 0
from langdetect import detect_langs, LangDetectException
from langdetect.lang_detect_exception import ErrorCode
from lexilang.detector import detect as lldetect
class UnknownLanguageError(Exception):
pass
class Language:
def __init__(self, choice):
name, code, confidence, bytesize = choice
def __init__(self, code, confidence):
self.code = code
self.name = name
self.confidence = float(confidence)
self.read_bytes = int(bytesize)
def __str__(self):
return ("name: {:<12}code: {:<9}confidence: {:>5.1f} "
"read bytes:{:>6}".format(self.name, self.code,
self.confidence, self.read_bytes))
return (f"code: {self.code:<9} confidence: {self.confidence:>5.1f} ")
@staticmethod
def from_code(code):
return Language(("", code, 100, 0))
def check_lang(langcodes, lang):
return normalized_lang_code(lang) in langcodes
def normalized_lang_code(lang):
code = lang.lang
# Handle Chinese
if code == "zh-cn":
code = "zh"
elif code == "zh-tw":
code = "zt"
return code
class Detector:
""" Detect the language used in a snippet of text."""
def __init__(self, text, quiet=False):
""" Detector of the language used in `text`.
Args:
text (string): unicode string.
"""
self.__text = text
self.reliable = True
"""False if the detector used Best Effort strategy in detection."""
self.quiet = quiet
"""If true, exceptions will be silenced."""
self.detect(text)
@staticmethod
def supported_languages():
"""Returns a list of the languages that can be detected by pycld2."""
return [name.capitalize() for name,code in cld2.LANGUAGES if not name.startswith("X_")]
def __init__(self, langcodes = ()):
self.langcodes = langcodes
def detect(self, text):
"""Decide which language is used to write the text.
The method tries first to detect the language with high reliability. If
that is not possible, the method switches to best effort strategy.
Args:
text (string): A snippet of text, the longer it is the more reliable we
can detect the language used to write the text.
"""
if len(text) < 20:
code, conf = lldetect(text, self.langcodes)
if conf > 0:
return [Language(code, round(conf * 100))]
try:
reliable, index, top_3_choices = cld2.detect(text, bestEffort=False)
except cld2.error as e:
if "input contains invalid UTF-8" in str(e):
# Fix for https://github.com/LibreTranslate/LibreTranslate/issues/514
# related to https://github.com/aboSamoor/polyglot/issues/71#issuecomment-707997790
text = ''.join([l for l in text if unicodedata.category(str(l))[0] not in ('S', 'M', 'C')])
reliable, index, top_3_choices = cld2.detect(text, bestEffort=False)
top_3_choices = [lang for lang in detect_langs(text) if check_lang(self.langcodes, lang)][:3]
if not len(top_3_choices):
return [Language("en", 0)]
if top_3_choices[0].prob == 0:
return [Language("en", 0)]
except LangDetectException as e:
if e.code == ErrorCode.CantDetectError:
return [Language("en", 0)]
else:
raise e
if not reliable:
self.reliable = False
reliable, index, top_3_choices = cld2.detect(text, bestEffort=True)
return [Language(normalized_lang_code(lang), round(lang.prob * 100)) for lang in top_3_choices]
if not self.quiet and not reliable:
raise UnknownLanguageError("Try passing a longer snippet of text")
self.languages = [Language(x) for x in top_3_choices]
self.language = self.languages[0]
return self.language
def __str__(self):
text = f"Prediction is reliable: {self.reliable}\n"
text += "\n".join([f"Language {i+1}: {str(l)}"
for i,l in enumerate(self.languages)])
return text

View file

@ -45,3 +45,16 @@ def is_banned(request_ip):
# More than X offences?
return active and s.get_hash_int("banned", request_ip) >= threshold
def fingerprint_mismatch(request_ip, fingerprint):
if not isinstance(fingerprint, str) or fingerprint == "":
return True
s = get_storage()
k = f"fingerprint:{request_ip}"
expected = s.get_str(k)
if expected == "":
s.set_str(k, fingerprint, ex=300)
return False
else:
return fingerprint != expected

View file

@ -27,6 +27,8 @@ def check_and_install_models(force=False, load_only_lang_codes=None,update=False
print("Found %s models" % len(available_packages))
if load_only_lang_codes is not None:
# load_only_lang_codes: List[str] (codes)
load_only_lang_codes = libretranslate.language.iso2model(load_only_lang_codes)
# Ensure the user does not use any unavailable language code.
unavailable_lang_codes = set(load_only_lang_codes)
for pack in available_packages:

View file

@ -1,9 +1,38 @@
from functools import lru_cache
from argostranslate import translate
from libretranslate.detect import Detector, UnknownLanguageError
from libretranslate.detect import Detector
__languages = None
aliases = {
'pb': 'pt-BR',
'zh': 'zh-Hans',
'zt': 'zh-Hant',
}
rev_aliases = {v.lower(): k for k, v in aliases.items()}
def iso2model(lang):
if isinstance(lang, list):
return [iso2model(l) for l in lang]
if not isinstance(lang, str):
return lang
lang = lang.lower()
return rev_aliases.get(lang, lang)
def model2iso(lang):
if isinstance(lang, dict) and 'language' in lang:
d = dict(lang)
d['language'] = model2iso(d['language'])
return d
elif isinstance(lang, list):
return [model2iso(l) for l in lang]
lang = lang.lower()
return aliases.get(lang, lang)
def load_languages():
global __languages
@ -13,6 +42,11 @@ def load_languages():
return __languages
@lru_cache(maxsize=None)
def load_lang_codes():
languages = load_languages()
return tuple(l.code for l in languages)
def detect_languages(text):
# detect batch processing
if isinstance(text, list):
@ -21,31 +55,24 @@ def detect_languages(text):
is_batch = False
text = [text]
lang_codes = load_lang_codes()
# get the candidates
candidates = []
for t in text:
try:
d = Detector(t).languages
d = Detector(lang_codes).detect(t)
for i in range(len(d)):
d[i].text_length = len(t)
candidates.extend(d)
except UnknownLanguageError:
pass
except Exception as e:
print(str(e))
# total read bytes of the provided text
text_length_total = sum(c.text_length for c in candidates)
# Load language codes
languages = load_languages()
lang_codes = [l.code for l in languages]
# only use candidates that are supported by argostranslate
candidate_langs = list(
filter(lambda l: l.text_length != 0 and l.code in lang_codes, candidates)
)
# this happens if no language could be detected
if not candidate_langs:
if not candidates:
# use language "en" by default but with zero confidence
return [{"confidence": 0.0, "language": "en"}]
@ -55,7 +82,7 @@ def detect_languages(text):
temp_average_list = []
for lang_code in lang_codes:
# get all candidates for a specific language
lc = list(filter(lambda l: l.code == lang_code, candidate_langs))
lc = list(filter(lambda l: l.code == lang_code, candidates))
if len(lc) > 1:
# if more than one is present, calculate the average confidence
lang = lc[0]
@ -68,17 +95,17 @@ def detect_languages(text):
if temp_average_list:
# replace the list
candidate_langs = temp_average_list
candidates = temp_average_list
# sort the candidates descending based on the detected confidence
candidate_langs.sort(
key=lambda l: (l.confidence * l.text_length) / text_length_total, reverse=True
candidates.sort(
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 candidate_langs]
return [{"confidence": l.confidence, "language": l.code} for l in candidates]
def improve_translation_formatting(source, translation, improve_punctuation=True):
def improve_translation_formatting(source, translation, improve_punctuation=True, remove_single_word_duplicates=True):
source = source.strip()
if not len(source):
@ -101,12 +128,30 @@ def improve_translation_formatting(source, translation, improve_punctuation=True
elif translation_last_char in punctuation_chars:
translation = translation[:-1]
# A workaround for certain language models that output
# the single word repeated ad-infinitum (the "salad" bug)
# https://github.com/LibreTranslate/LibreTranslate/issues/46
if remove_single_word_duplicates:
if len(source) < 20 and source.count(" ") == 0 and translation.count(" ") > 0:
bow = translation.split()
count = {}
for word in bow:
count[word] = count.get(word, 0) + 1
for word in count:
if count[word] / len(count) >= 2:
translation = bow[0]
break
if source.islower():
return translation.lower()
if source.isupper():
return translation.upper()
if len(translation) == 0:
return source
if source[0].islower():
return translation[0].lower() + translation[1:]

View file

@ -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-10-09 15:17-0400\n"
"PO-Revision-Date: 2023-07-26 20:09+0000\n"
"Last-Translator: Rex_sa <rex.sa@pm.me>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-03-02 05:55+0000\n"
"Last-Translator: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>\n"
"Language-Team: Arabic <https://hosted.weblate.org/projects/libretranslate/app/ar/>\n"
"Language: ar\n"
"Language-Team: Arabic "
"<https://hosted.weblate.org/projects/libretranslate/app/ar/>\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"
"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"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "تنسيق JSON غير صالح"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "اكتشاف تلقائي"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "غير مصرح به"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "تم تجاوز عدد الطلبات المسموح بها"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "مفتاح API غير صحيح"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "يرجى الاتصال بالسيرفر للحصول على مفتاح API"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "زيارة%(url)s للحصول على مفتاح API"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "طلب غير صالح: المعامل %(name)s ‮مفقود"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "عدم وجود طلب: <x>صفر</x> البارامترات ليست رقم %(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "عدم وجود طلب: <x>صفر</x> البارامترات يجب أن تكون %(value)s %(name)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s غير مدعوم‬ة"
msgstr "%(lang)s غير مدعوم‬"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s الشكل غير مدعوم"
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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) 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "لا يمكن ترجمة النص: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "ترجمة الملفات معطلة على هذا الخادم."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "طلب خاطئ: ملف فارغ"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "طلب غير صحيح: صيغة الملف غير مدعومة"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "اسم الملف غير صالح"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "الاقتراحات معطلة على هذا الخادم."
@ -117,118 +126,190 @@ msgid "English"
msgstr "الإنجليزية"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "ألبانيا"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "العربية"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
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 "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 "الدنمارك"
msgstr "الدنماركية"
#: libretranslate/locales/.langs.py:7
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "هولندا"
msgstr "الهولندية"
#: libretranslate/locales/.langs.py:8
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
msgstr "الإسبيرنتو"
#: libretranslate/locales/.langs.py:9
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "إستونيا"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "فنلندا"
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 "ألمانيا"
msgstr "الألمانية"
#: libretranslate/locales/.langs.py:12
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "يوناني"
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 "هنغاريا"
msgstr "الهنغارية"
#: libretranslate/locales/.langs.py:16
#: libretranslate/locales/.langs.py:22
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 "Persian"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
msgstr "بولندا"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
msgstr "البرتغال"
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 "Portuguese (Brazil)"
msgstr "البرتغال (البرازيل)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "رومانيا"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "الروسية"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "سلوفاكيا"
msgstr "السلوفاكية"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "سلوفينيا(ن)"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "الإسبانية"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "السويد"
msgstr "السويدية"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "تايلند"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "تركيا"
msgstr "التركية"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "الأوكرانية"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "صربيا"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "أوكرانيا"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamese"
@ -248,7 +329,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:233
msgid "Translated text"
msgstr "النص المترجمة"
@ -303,205 +384,211 @@ 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "خطأ غير معروف"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "تم نسخه"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "لا توجد لغات متاحة. هل قمت بتثبيت النماذج بشكل صحيح؟?"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "اضغط على رابط \"المفاتيح\"."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Free and Open Source Machine Translation API. ذاتي الاستيعاب، غير مباشر "
"قادر وسهل التجهيز أدير خادمك الخاص في غضون دقائق."
"واجهة حرة ومفتوحة المصدر لبرمجة تطبيقات الترجمة الآلية. متاح للتنزيل مجانا "
"ويعمل دون اتصال بالانترنت وسهل للتثبيت. قوموا بإطلاق خادمكم الخاص في غضون "
"دقائق."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -511,152 +598,141 @@ 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
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "غيت هب"
#: 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"ونظراً لإساءة استعمال الجوز، فإن طلبات الترجمة تقتصر مؤقتاً على المستعملين "
"الذين لديهم مفتاح قانوني صالح. آسف على الإزعاج!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "الترجمة API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "ترجمة النص"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "ترجمة الملفات"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "ترجمة من"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "تبديل المصدر واللغات المستهدفة"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "ترجمة الى"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "نص للترجمة"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "حذف النص"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "اقتراح ترجمة"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "إلغاء"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "أرسل"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "صيغ الملفات المدعومة:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "ملف"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "حذف الملف"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "ترجمة"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "تحميل"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "الطلب"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "الرد"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "api ترجمة آلي مفتوح المصدر"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "استضافة شخصية. غيرمتصل سهل الاعداد."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "مجاني للتنزيل. يمكن استخدامه دون اتصال بالإنترنت. سهل الإعداد."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "ترجمة حرة"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s المساهمون"
@ -664,3 +740,26 @@ 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"
#~ msgid "Basque"
#~ msgstr "Basque"
#~ msgid "Galician"
#~ msgstr "غاليشي"

View file

@ -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"
"PO-Revision-Date: 2023-08-31 07:05+0000\n"
"Last-Translator: Ali Evcil <evcil@proton.me>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-09-17 21:09+0000\n"
"Last-Translator: Dinissantos <Dinissantos999@hotmail.com>\n"
"Language-Team: Azerbaijani <https://hosted.weblate.org/projects/libretranslate/app/az/>\n"
"Language: az\n"
"Language-Team: Azerbaijani "
"<https://hosted.weblate.org/projects/libretranslate/app/az/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Invalid JSON format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Avtomatik simptomlar"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Uşaq"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Ən çox məlumat limitləri"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Invalid API əsas"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, 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:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Ad Soyad: <x>Qeydiyyat</x> parametr bir sayı deyil %(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Ad Soyad: <x>Qeydiyyat</x> parametr &lt;= %(value)s %(name)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s Yadda saxla"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Qeyd çevirmə: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Bu server üzərində faylları silinir."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Invalid istə: boş fayl"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Invalid tərəfindən: fayl format əlavə etmir"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Ad Soyad"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Proqramlar bu server üzrə dəstəklənir."
@ -116,118 +127,190 @@ 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"
msgstr "Portuguese"
#: libretranslate/locales/.langs.py:24
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr " Portuguese (Brazil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Romanian"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Rusiya"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Qeydiyyat"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Sloveniya"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "İspaniya"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Bakı"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Axtarış"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Türkiyə"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr " U"
msgstr "U"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Bakı"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Rusiya"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukrayna"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr " Vietnamese"
@ -241,13 +324,13 @@ msgstr "Dillərin siyahısı"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr " translate"
msgstr "translate"
#: libretranslate/locales/.swag.py:4
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:233
msgid "Translated text"
msgstr "Tarix"
@ -257,7 +340,7 @@ msgstr "Ad Soyad"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr " Translation error"
msgstr "Translation error"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
@ -305,363 +388,357 @@ 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
msgid "frontend settings"
msgstr " front"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
msgstr " front"
msgid "frontend settings"
msgstr "front"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "front"
#: 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
msgid "Original text"
msgstr " Original"
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Original"
#: 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
msgid "feedback"
msgstr " feedback"
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "feedback"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Xüsusi məlumat"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Elan"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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:536
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:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, 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. Yükləmək üçün pulsuz, offline"
"asan quraşdırmaq. Yalnız bir neçə dərhal öz API server çalışır."
#: libretranslate/templates/index.html:11
msgid "translation"
msgstr " translation"
msgstr "translation"
#: libretranslate/templates/index.html:11
msgid "api"
msgstr " a"
msgstr "api"
#: 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Avtomobil istismarı ilə, çeviri məlumatları müxtəlif API key ilə "
"istifadəçilərlə əlaqədardır. Dövlət üçün gözəl!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Axtarış"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Axtarış"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Proqramlar"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Qeydiyyatdan"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Swap məhsul və hedef dillər"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Axtarış"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Tarix"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Delete"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Qeydiyyat"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Tarix"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "E-poçt"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Dəstəklənən fayl formatları:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Qeydiyyat"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Proqram"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Axtarış"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Pulsuz"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Qeydiyyat"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr " Response"
msgstr "Response"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Open Source Machine Translation API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted. Offline Capable. Avadanlıq."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Yükləmək üçün pulsuz. Offline Capable. Avadanlıq."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "Qeydiyyat"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, fuzzy, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Kontributors"
@ -669,3 +746,26 @@ 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"
#~ msgid "Basque"
#~ msgstr "Qalereya"
#~ msgid "Galician"
#~ msgstr " Gal"

View file

@ -0,0 +1,767 @@
# Belarusian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-04-02 23:12+0000\n"
"Last-Translator: rferee <rferee_subs@protonmail.com>\n"
"Language: be\n"
"Language-Team: Belarusian "
"<https://hosted.weblate.org/projects/libretranslate/app/be/>\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"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Памылковы JSON-фармат"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Аўтавызначэнне"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Патрэбна аўтарызацыя"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Перавышаны ліміт запытаў"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Памылковы API ключ"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Калі ласка звяжыцеся з аператарам сэрверу каб атрымаць API ключ"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Наведайце %(url)s каб атрымаць API ключ"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Запаволенне:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Памылковы запыт: параметар %(name)s адсутнічае"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Памылковы запыт: запыт (%(size)s) перавышае дазволены ліміт тэксту "
"(%(limit)s)"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s не падтрымліваецца"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Фармат %(format)s не падтрымліваеецца"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Не атрымалася перакласці тэкст: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Переклад файлаў вымкнуты на гэтым сэрвере."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Памылковы запыт: пусты файл"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Памылковы запыт: фармат файла не падтрымліваецца"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Няслушная назва файла"
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Руская"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Славацкая"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Іспанская"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Шведская"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Турэцкая"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Украінская"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
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:233
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"
"* `text` - Звычайны тэкст\n"
"* `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: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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Немагчыма спампаваць %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Невядомая памылка"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Скапіявана"
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
"Дзякуй за вашу заўвагу. Прыміце да ўвагі: Ваша прапанова не адразу "
"набудзе моц."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Няма даступных моў. Вы слушна ўсталявалі мадэлі?"
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "націсніце на спасылку \"Атрымаць API ключ\"."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "звяжыцеся з аператарам сэрвера."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
msgid "Free and Open Source Machine Translation API"
msgstr "Бясплатнае API для машыннага перакладу з адкрытым выточным кодам"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
#, fuzzy
msgid ""
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr "Бясплатнае API для машыннага перакладу з адкрытым выточным кодам."
#: 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
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 ""
#~ msgid "host your own server"
#~ msgstr ""
#~ msgid "get an API key"
#~ msgstr ""
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -0,0 +1,4 @@
{
"name": "be",
"reviewed": false
}

View file

@ -0,0 +1,775 @@
# Bulgarian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-05-25 14:46+0000\n"
"Last-Translator: Salif Mehmed <mail@salif.eu>\n"
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/libretranslate/"
"app/bg/>\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.12-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Невалиден JSON формат"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Разпознаване"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Неоторизиран"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Твърде много нарушения на ограниченията на заявките"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Невалиден API ключ"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Моля, свържете се с оператора на сървъра, за да получите API ключ"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Посетете %(url)s, за да получите API ключ"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Забавяне:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Невалидна заявка: липсващ %(name)s параметър"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Невалидна заявка: параметърът %(name)s не е число"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Невалидна заявка: параметърът %(name)s трябва да бъде <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Невалидна заявка: заявката (%(size)s) надвишава ограничението за текст "
"(%(limit)s)"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s не се поддържа"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Форматът %(format)s не се поддържа"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Не може да се преведе текстът: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Превеждането на файлове е изключено на този сървър."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Невалидна заявка: празен файл"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Невалидна заявка: файловият формат не се поддържа"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Невалидно име на файла"
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr "португалски (Бразилия)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "румънски"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "руски"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "словашки"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "словенски"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "испански"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "шведски"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "тагалог"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "тайски"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "турски"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "украински"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "урду"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "сръбски"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "украински"
#: libretranslate/locales/.langs.py:48
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:233
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 "text"
#: 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"
" * `text` - Plain text\n"
" * `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: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 "Адрес на преведен файл"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Не може да се зареди %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Неизвестна грешка"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Копиран"
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
"Благодарности за поправката. Имайте предвид, че предложението няма да "
"влезе в сила веднага."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Няма налични езици. Правилно ли инсталирахте моделите?"
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "натиснете връзката „Получаване на API ключ“."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "свържете се с оператора на сървъра."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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 "GitHub"
#: 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
"Поради злоупотреба с ботове, заявките за превод са временно ограничени до "
"потребители с валиден API ключ. Извинете за неудобството!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API за превеждане"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Превод на текст"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Превод на файлове"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Превеждане от"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Размяна на изходния и целевия език"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Превеждане на"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Текст за превод"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Изтриване на текста"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Предлагане на превод"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Отказ"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Изпращане"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Поддържани файлови формати:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Файл"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Премахване на файла"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Превеждане"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Изтегляне"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Заявка"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Отговор"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API с отворен код за машинен превод"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "безплатно за изтегляне. Офлайн способност. Лесен за настройка."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Лицензия:"
#: libretranslate/templates/index.html:354
#, 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:354
#, 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 ключ"
#~ msgid "Basque"
#~ msgstr "баски"
#~ msgid "Galician"
#~ msgstr "галисийски"

View file

@ -0,0 +1,4 @@
{
"name": "Bulgarian",
"reviewed": true
}

View file

@ -0,0 +1,752 @@
# Bangla translations for LibreTranslate.
# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.6.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-08-08 13:20-0400\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: bn <LL@li.org>\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.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "অবৈধ JSON বিন্যাস"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "স্বয়ংক্রীয় সনাক্তকরণ"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "অনুমোদিত নয়"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "অত্যাধিক সংখ্যক সীমা লঙ্ঘন"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "ভুল API কি"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "API কি প্রাপ্ত করার উদ্দেশ্যে অনুগ্রহ করে সার্ভারের সাথে যোগাযোগ করুন"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "পরিদর্শন করুন <x></x> API কি প্রাপ্ত করার জন্য একটি API কি %(url)s"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "ধীর:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "অবৈধ অনুরোধ: অনুপস্থিত <x></x> পরামিতি %(name)s"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "অবৈধ অনুরোধ: <x></x> একটি নম্বর নয় %(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"অবৈধ অনুরোধ: <x></x> পরামিতির মান হওয়া আবশ্যক <x>১</x> %(name)s %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"অবৈধ অনুরোধ: অনুরোধ<x></x>সীমা অতিক্রান্ত<x>১</x>আপনি কি মনে করতে পারেন? "
"%(size)s %(limit)s"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "<x></x> সমর্থিত নয় %(lang)s"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "<x></x> অসমর্থিত বিন্যাস %(format)s"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
"(%(scode)s)"
msgstr ""
"<x></x> ( চিহ্ন)<x>১</x>উপলব্ধ নয় <x>২</x> ( চিহ্ন)<x>৩</x>আপনি কি মনে "
"করতে পারেন? %(tname)s %(tcode)s %(sname)s %(scode)s"
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "টেক্সট অনুবাদ করতে ব্যর্থ: <x></x> %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "এই সার্ভারে ফাইল অনুবাদ নিষ্ক্রিয় ।."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "অবৈধ ফাইল: ফাঁকা ফাইল"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "অবৈধ অনুরোধ: ফাইল ফরম্যাট সমর্থিত নয়"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "ফাইলের নাম বৈধ নয়"
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr "পোর্তুগিজ (মোগুয়ে)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "রোমেনিয়ান"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "রুশ"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "স্লোভাকName"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "স্লোভেনিয়ান"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "স্প্যানিশ"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "সুইডিশ"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "ট্যাগু"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "থাই"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "তুর্কি"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "উরানিয়ানName"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "উর্দুName"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "সার্বিয়ান"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "ইউক্রেইনিয়"
#: libretranslate/locales/.langs.py:48
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:233
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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "লোড করতে ব্যর্থ <x></x> %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "অজানা ত্রুটি"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "অনুলিপি করা হয়েছে"
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect right "
"away."
msgstr "সংশোধন করার জন্য ধন্যবাদ. উল্লেখ্য, এই পরামর্শ কার্যকর করা হবে না।."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "কোনো ভাষা উপলব্ধ নেই। আপনি কি মডেল সঠিকভাবে ইনস্টল করেছেন?"
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"API-র মধ্যে পরিচয় পংক্তি লিখুন। যদি আপনার একটি API প্রয়োজন হয়, <x></x> "
"%(instructions)s"
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "\" API\" কি-র সাথে লিঙ্ক স্থাপন করুন।."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "সার্ভার সার্ভারের সাথে যোগাযোগ করুন ।."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"বোট অপব্যবহারের কারণে, বৈধ API কী সহ ব্যবহারকারীদের জন্য সাময়িকভাবে অনুবাদ "
"অনুরোধ করা হয়। ঝামেলার জন্য দুঃখিত!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "অনুবাদ API"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "টেক্সট অনুবাদ"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "ফাইল অনুবাদ করুন"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "অনুবাদ করো"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Swap উৎস ও টার্গেট ভাষা ব্যবহার করুন"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "চিহ্নিত অবস্থানে স্থানান্তর করুন"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "অনুবাদ করার জন্য চিহ্নিত টেক্সট"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "টেক্সট মুছে ফেলুন"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "অনুবাদ পরামর্শ করো"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "বাতিল"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "প্রেরণ"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "সমর্থিত ফাইল ফরম্যাট:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "ফাইল"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "ফাইল মুছে ফেলুন"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "অনুবাদ"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "ডাউনলোড করা হয়েছে"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "অনুরোধ"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "প্রতিক্রিয়া"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "ওপেন সোর্স মেশিন অনুবাদ APIQuery"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "হায় খোদা! অফ-লাইন। শান্ত হও।."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "লাইসেন্স:"
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"সহ <x></x> ধরন <x>১</x> এবং বিদারনশীল <x>২</x> %(heart)s %(contributors)s "
"%(engine)s"
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "<x></x> অংশগ্রহণকারী %(libretranslate)s"
#~ msgid "Basque"
#~ msgstr "বাস্ক"
#~ msgid "Galician"
#~ msgstr "অংশগ্রহণকারীদের আমন্ত্রণ জানান"

View file

@ -0,0 +1,4 @@
{
"name": "Bengali",
"reviewed": false
}

View file

@ -0,0 +1,775 @@
# Catalan translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-04-20 07:30+0000\n"
"Last-Translator: Marc Riera <marcriera@softcatala.org>\n"
"Language-Team: Catalan <https://hosted.weblate.org/projects/libretranslate/"
"app/ca/>\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.11.1-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "El format JSON no és vàlid"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Detecció automàtica"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "No autoritzat"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Massa infraccions dels límits de sol·licituds"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "La clau de l'API no és vàlida"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr ""
"Poseu-vos en contacte amb l'operador del servidor per a obtenir una clau "
"de l'API"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visiteu %(url)s per a obtenir una clau de l'API"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Reduïu el nombre de sol·licituds:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "La sol·licitud no és vàlida: falta el paràmetre %(name)s"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "La sol·licitud no és vàlida: el paràmetre %(name)s no és un nombre"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "La sol·licitud no és vàlida: el paràmetre %(name)s ha de ser <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"La sol·licitud no és vàlida: la sol·licitud (%(size)s) supera el límit de"
" text (%(limit)s)"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "No s'admet %(lang)s"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "No s'admet el format %(format)s"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
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 destinació des "
"de %(sname)s (%(scode)s)"
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "No es pot traduir el text: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "La traducció de fitxers està inhabilitada en aquest servidor."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "La sol·licitud no és vàlida: el fitxer és buit"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "La sol·licitud no és vàlida: no s'admet el format del fitxer"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nom de fitxer no vàlid"
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Els suggeriments estan inhabilitats en aquest servidor."
#: libretranslate/locales/.langs.py:1
msgid "English"
msgstr "Anglès"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albanès"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Àrab"
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Àzeri"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
msgstr "Bengalí"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Búlgar"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Català"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Xinès"
#: 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:11
msgid "Danish"
msgstr "Danès"
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Holandès"
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "Estonià"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finès"
#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Francès"
#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Alemany"
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Grec"
#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebreu"
#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindi"
#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Hongarès"
#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesi"
#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandès"
#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italià"
#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japonès"
#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Coreà"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
msgstr "Letó"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Lituà"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malai"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Noruec"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persa"
#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polonès"
#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portuguès"
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr "Portuguès (Brasil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Romanès"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Rus"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Eslovac"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Eslovè"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Castellà"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Suec"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagàlog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turc"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ucraïnès"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdú"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbi"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ucraïnès"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamita"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
msgstr "Recupera la llista de llengües admeses"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
msgstr "Llista de llengües"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr "traducció"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
msgstr "Tradueix text d'una llengua a una altra"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Text traduït"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
msgstr "Sol·licitud no vàlida"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr "S'ha produït un error de traducció"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
msgstr "Reduïu el nombre de sol·licituds"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
msgstr "Prohibit"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
msgstr "Hola món!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
msgstr "Textos a traduir"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
msgstr "Codi de la llengua d'origen"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
msgstr "Codi de la llengua de destinació"
#: libretranslate/locales/.swag.py:14
msgid "text"
msgstr "text"
#: 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 del text original:\n"
" * `text`: text sense format\n"
" * `html`: format HTML\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Nombre preferit de traduccions alternatives"
#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Clau de l'API"
#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Tradueix un fitxer d'una llengua a una altra"
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Fitxer traduït"
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fitxer a traduir"
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detecta la llengua d'un únic text"
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Deteccions"
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Error de detecció"
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Text a detectar"
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Recupera la configuració específica de la interfície"
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "configuració de la interfície"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "interfície"
#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Envia un suggeriment per a millorar una traducció"
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Correcte"
#: 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:33
msgid "Suggested translation"
msgstr "Traducció suggerida"
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Llengua del text original"
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Llengua de la traducció suggerida"
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "comentaris"
#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Codi de llengua"
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Nom de la llengua comprensible per humans (en anglès)"
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Codis de les llengües de destinació acceptades"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Textos traduïts"
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Missatge d'error"
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Motiu per a reduir el nombre de sol·licituds"
#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL del fitxer traduït"
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valor de confiança"
#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Límit d'entrada de caràcters per a aquesta llengua (-1 indica que no hi "
"ha límit)"
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Temps d'espera màxim de traducció de la interfície"
#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Indica si la base de dades de claus de l'API està habilitada."
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Indica si es requereix una clau de l'API."
#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Indica si l'enviament de suggeriments està habilitat."
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formats de fitxer acceptats"
#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Indica si l'enviament ha estat correcte"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "Copia el text"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
#: libretranslate/templates/app.js.template:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "No s'ha pogut carregar %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Error desconegut"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "S'ha copiat"
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
"Gràcies per la correcció. Tingueu en compte que el suggeriment no tindrà "
"un efecte immediat."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "No hi ha cap llengua disponible. Heu instal·lat correctament els models?"
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Escriviu la vostra clau de l'API. Si necessiteu una clau de l'API, "
"%(instructions)s"
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "premeu l'enllaç «Obtén una clau de l'API»."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "poseu-vos en contacte amb l'operador del servidor."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
msgid "Free and Open Source Machine Translation API"
msgstr "API de traducció automàtica lliure i oberta"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API de traducció automàtica gratuïta i de codi obert. Baixa gratuïta, amb"
" possibilitat d'ús fora de línia i fàcil de configurar. Executeu el "
"vostre propi servidor d'API en només uns minuts."
#: libretranslate/templates/index.html:11
msgid "translation"
msgstr "traducció"
#: libretranslate/templates/index.html:11
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Documentació de l'API"
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Obtén una clau de l'API"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Defineix la clau de l'API"
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Canvia de llengua"
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Edita"
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Canvia entre els modes fosc i clar"
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Descarta"
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
"A causa de l'abús per part de bots, les sol·licituds de traducció estan "
"limitades actualment als usuaris amb una clau de l'API. Disculpeu les "
"molèsties."
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API de traducció"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Tradueix text"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Tradueix fitxers"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Tradueix de"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Intercanvia les llengües d'origen i de destinació"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Tradueix a"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Text a traduir"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Esborra el text"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Suggereix una traducció"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Cancel·la"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Envia"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Formats de fitxer admesos:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fitxer"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Suprimeix el fitxer"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Tradueix"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Baixa"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Sol·licitud"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Resposta"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API de traducció automàtica de codi obert"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Baixada gratuïta. Possibilitat d'ús fora de línia. Fàcil de configurar."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Llicència:"
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Fet amb %(heart)s pels %(contributors)s i amb tecnologia de %(engine)s"
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "col·laboradors de %(libretranslate)s"
#~ 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 ""
#~ msgid "Basque"
#~ msgstr "Basc"
#~ msgid "Galician"
#~ msgstr "Gallec"

View file

@ -0,0 +1,4 @@
{
"name": "Catalan",
"reviewed": true
}

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
{
"name": "Czech",
"reviewed": false
}
"reviewed": true
}

View file

@ -0,0 +1,739 @@
# Chuvash translations for LibreTranslate.
# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.6.2\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-03-25 10:20+0000\n"
"Last-Translator: Astahar <p-code@mail.ru>\n"
"Language: cv\n"
"Language-Team: Chuvash "
"<https://hosted.weblate.org/projects/libretranslate/app/cv/>\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"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Йӑнӑш JSON формачӗ"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "[чӗлхесене хӑй тӗллӗн уйӑрни]"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Авторизациленмен"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr ""
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Ӗҫлемен API-ключ"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "API-ключ илес тесен, тархасшӑн, сервер операторӗпе ҫыхӑнӑр"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "API-ключ илмешкӗн %(url)s адреспа кӗрӗр"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Майӗпенленӗр:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Юрӑхсӑр запрос: «%(name)s» параметр ҫук"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Юрӑхсӑр запрос: «%(name)s» параметр число мар"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Юрӑхсӑр запрос: «%(name)s» параметр виҫи <= «%(value)s» пулмалла"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Юрӑхсӑр запрос: запрос калӑпӑшӗ (%(size)s) текст виҫинчен (%(limit)s) "
"ытларах"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s — ку чӗлхепе усӑ курма май ҫук"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s форматпа усӑ курма май ҫук"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr ""
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr ""
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr ""
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr ""
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr ""
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr ""
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr ""
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr ""
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr ""
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr ""
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr ""
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
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:233
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 "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 ""
#: 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 ""
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr ""
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr ""
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr ""
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr ""
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr ""
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr ""
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -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"
"PO-Revision-Date: 2023-01-10 09:57+0000\n"
"Last-Translator: Allan Nordhøy <epost@anotheragency.no>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-04-02 01:39+0000\n"
"Last-Translator: Stefan McKinnon Edwards <sme@iysik.com>\n"
"Language-Team: Danish <https://hosted.weblate.org/projects/libretranslate/app/da/>\n"
"Language: da\n"
"Language-Team: Danish "
"<https://hosted.weblate.org/projects/libretranslate/app/da/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Ugyldig JSON format"
msgstr "Ugyldigt JSON-format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Autodetektor"
msgstr "Auto-registrer"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Uautoriseret"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "For mange anmodninger begrænser overtrædelser"
msgstr "For mange anmodninger"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Ugyldig API-nøgle"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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
#: libretranslate/app.py:373
#, 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
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Langlægning:"
msgstr "For mange forespørgsler:"
#: 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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Ugyldig anmodning: manglende %(name)s-parameter"
msgstr "Ugyldig forespørgsel: manglende %(name)s-parameter"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Ugyldig forespørgsel: %(name)s parameter er ikke et nummer"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Ugyldig forespørgsel: %(name)s parameter skal være <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Ugyldig anmodning: anmodningen (%(size)s) overskrider tekstgrænsen "
"Ugyldig forespørgsel: forespørgslen (%(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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s understøttes ikke"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, 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:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Filer oversættelse er deaktiveret på denne server."
msgstr "Oversættelse af filer er deaktiveret på denne server."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Ugyldig anmodning: tomt fil"
msgstr "Ugyldig forespørgsel: tom fil"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Ugyldig anmodning: filformat ikke understøttet"
msgstr "Ugyldig forespørgsel: filformat understøttes ikke"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Ugyldig filnavn"
msgstr "Ugyldigt filnavn"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Forslag er deaktiveret på denne server."
@ -120,118 +130,190 @@ 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 "Hollandske"
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 "Portuguese (Brazil)"
msgstr "Portugisisk (Brasilien)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumænsk"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Russisk"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovakisk"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovensk slovensk"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spansk"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Svensk"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Billeder af Thai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Tyrkisk"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukranian"
msgstr "Ukrainsk"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbisk serbisk"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukraine"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamesisk"
@ -245,29 +327,27 @@ msgstr "Liste over sprog"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr "oversætter"
msgstr "oversæt"
#: libretranslate/locales/.swag.py:4
#, fuzzy
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:233
msgid "Translated text"
msgstr "Oversat tekst"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
msgstr "Ugyldig anmodning"
msgstr "Ugyldig forespørgsel"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr "Oversættelsesfejl"
#: libretranslate/locales/.swag.py:8
#, fuzzy
msgid "Slow down"
msgstr "Langsomt ned"
msgstr "Sænk farten"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
@ -278,9 +358,8 @@ msgid "Hello world!"
msgstr "Hej verden!"
#: libretranslate/locales/.swag.py:11
#, fuzzy
msgid "Text(s) to translate"
msgstr "Tekst til at oversætte"
msgstr "Tekst(er) at oversætte"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
@ -288,7 +367,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"
@ -305,380 +384,389 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"Format af kildetekst:\n"
"* 'tekst' - almindeligt tekst\n"
"* `html' - HTML-markup\n"
" * `tekst` - Almindelig tekst\n"
" * `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
#, fuzzy
msgid "File to translate"
msgstr "Tekst at oversætte"
#: libretranslate/locales/.swag.py:21
msgid "Detect the language of a single text"
msgstr "Angiv sproget for en enkelt tekst"
msgid "File to translate"
msgstr "Fil at oversætte"
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Registrer sproget i en enkelt tekst"
#: 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
#, fuzzy
msgid "Text to detect"
msgstr "Autodetektor"
#: libretranslate/locales/.swag.py:25
msgid "Retrieve frontend specific settings"
msgstr "Hent frontend specifikke indstillinger"
msgid "Text to detect"
msgstr "Tekst at registrere"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
msgstr "frontend indstillinger"
msgid "Retrieve frontend specific settings"
msgstr "Hent frontend-specifikke indstillinger"
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "frontend-indstillinger"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
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"
#: 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:30
msgid "Success"
msgstr "Succes"
#: libretranslate/locales/.swag.py:30
msgid "Not authorized"
msgstr "Ikke godkendt"
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ikke autoriseret"
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Original tekst"
#: libretranslate/locales/.swag.py:32
#, fuzzy
msgid "Suggested translation"
msgstr "Foreslå oversættelse"
#: libretranslate/locales/.swag.py:33
#, fuzzy
msgid "Language of original text"
msgstr "Angiv sproget for en enkelt tekst"
msgid "Suggested translation"
msgstr "Foreslået oversættelse"
#: libretranslate/locales/.swag.py:34
#, fuzzy
msgid "Language of suggested translation"
msgstr "Foreslå oversættelse"
msgid "Language of original text"
msgstr "Originaltekstens sprog"
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Sprog i foreslået oversættelse"
#: 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
msgid "Supported target language codes"
msgstr "Understøttede sprogkoder"
#: libretranslate/locales/.swag.py:39
msgid "Translated text(s)"
msgstr "Oversat tekst(r)"
msgid "Supported target language codes"
msgstr "Understøttede målsprogkoder"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Oversat tekst(er)"
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Fejlmeddelelse"
#: libretranslate/locales/.swag.py:41
msgid "Reason for slow down"
msgstr "Reason for langsom ned"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
msgstr "Oversætt fil url"
msgid "Reason for slow down"
msgstr "Årsag til nedbremsning"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
msgstr "Konsekvensværdi"
msgid "Translated file url"
msgstr "Oversat fil-URL"
#: 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)"
msgid "Confidence value"
msgstr "Konfidensværdi"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
msgstr "Frontend oversættelsestidspunktout"
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:46
msgid "Frontend translation timeout"
msgstr "Timeout for frontend-oversættelse"
#: 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
msgid "Whether an API key is required."
msgstr "Om en API-nøgle kræves."
#: 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:49
msgid "Whether submitting suggestions is enabled."
msgstr "Om indsendelse af forslag er aktiveret."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
msgstr "Understøttet filformat"
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Understøttede filformater"
#: 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:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "Kopier tekst"
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Ukendt fejl"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copied"
msgstr "Kopieret"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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 korrektion. Bemærk, at forslaget ikke vil tage virkning 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:463
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:536
#, 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:536
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:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr "Gratis og Open Source Machine Oversættelse 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 "
"Free and Open Source Machine Translation API. Free to download, 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ættelses-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"
msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
msgstr "API Docs"
#: libretranslate/templates/index.html:67
msgid "Get API Key"
msgstr "Få API Nøglenøgle"
msgid "API Docs"
msgstr "API-dokumenter"
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Få API-nøgle"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
msgstr "Indstil API Nøglenøgle"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Indstil API-nøgle"
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Skift sprog"
#: libretranslate/templates/index.html:79
msgid "Edit"
msgstr "Rediger redigering"
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Rediger"
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Skift mørke/lysetilstand"
msgstr "Skift mellem mørk/lys tilstand"
#: libretranslate/templates/index.html:157
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Begrænsninger"
msgstr "Afvis"
#: libretranslate/templates/index.html:171
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"På grund af bot-misbrug er oversættelsesanmodninger midlertidigt begrænset "
"til brugere med en gyldig API-nøgle. Desværre for ulejligheden!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Oversættelses-API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Oversæt tekst"
msgstr "Oversæt Tekst"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Oversæt filer"
msgstr "Oversæt Filer"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Oversæt fra"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
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
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Oversæt til"
#: libretranslate/templates/index.html:210
#, fuzzy
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Tekst at oversætte"
#: libretranslate/templates/index.html:213
#, fuzzy
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Slet tekst"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Foreslå oversættelse"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Annuller"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Send"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Understøttede filformater:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fil"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Fjern fil"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Oversæt"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Download"
msgstr "Hent"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Anmod om forespørgsel"
msgstr "Anmod"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Svar"
#: libretranslate/templates/index.html:315
#, fuzzy
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Frit maskinoversættelses-API"
msgstr "Open Source Maskinoversættelses-API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted. Offline Capable. Nem at konfigurere."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Selv-Hosted. Kan bruges offline. Nem at opsætte."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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 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"
#: libretranslate/templates/index.html:340
#, fuzzy
msgid "host your own server"
msgstr "værts 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:354
#, 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
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s-bidragsydere"
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"
#~ msgid "Basque"
#~ msgstr "Baskisk"
#~ msgid "Galician"
#~ msgstr "Galicien"

View file

@ -8,80 +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"
"PO-Revision-Date: 2023-08-04 17:04+0000\n"
"Last-Translator: Simon Hahne <simonhahne@web.de>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-04-26 07:29+0000\n"
"Last-Translator: Wuzzy <Wuzzy@disroot.org>\n"
"Language-Team: German <https://hosted.weblate.org/projects/libretranslate/"
"app/de/>\n"
"Language: de\n"
"Language-Team: German "
"<https://hosted.weblate.org/projects/libretranslate/app/de/>\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.12-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Ungültiges JSON-Format"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Auto-Erkennung"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Unbefugt"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Zu viele Verstöße gegen die Anfragelimits"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Ungültiger API-Schlüssel"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, 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:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Ungültige Anfrage: %(name)s-Parameter ist keine Zahl"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Ungültige Anfrage: %(name)s-Parameter muss <= %(value)s sein"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s wird nicht unterstützt"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@ -90,28 +102,28 @@ msgstr ""
"%(tname)s (%(tcode)s) ist nicht als Zielsprache von %(sname)s (%(scode)s)"
" verfügbar"
#: libretranslate/app.py:647
#: libretranslate/app.py:787
#, 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:874 libretranslate/app.py:943
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:889
msgid "Invalid request: empty file"
msgstr "Ungültige Anfrage: leere Datei"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Ungültige Anfrage: Dateiformat nicht unterstützt"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Ungültiger Dateiname"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Vorschläge sind auf diesem Server deaktiviert."
@ -120,118 +132,190 @@ msgid "English"
msgstr "Englisch"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albanisch"
#: 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 "Bengali"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Bulgarisch"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Katalanisch"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chinesisch"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Chinesisch (traditionell)"
#: 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 "Estnisch"
#: 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 "Lettisch"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Litauisch"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malayisch"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Norwegisch"
#: 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 "Portuguese (Brazil)"
msgstr "Portugiesisch (Brasilien)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumänisch"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Russisch"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slowakisch"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slowenisch"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spanisch"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Schwedisch"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Türkisch"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukrainisch"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbisch"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukrainisch"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamesisch"
@ -251,7 +335,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:233
msgid "Translated text"
msgstr "Übersetzter Text"
@ -306,170 +390,174 @@ msgstr ""
" * `html` HTML-Markup\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Bevorzugte Anzahl alternativer Übersetzungen"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Unbekannter Fehler"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopiert"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@ -477,39 +565,39 @@ 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:463
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:536
#, 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:536
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:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr "Freie und quelloffene API für maschinelle Übersetzung"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Freie und quelloffene API für maschinelle Übersetzung. Selbstgehostet, "
"offline-fähig und einfach einzurichten. Betreiben Sie Ihren eigenen API-"
"Server in nur wenigen Minuten."
"Freie und quelloffene API für maschinelle Übersetzung. Kostenlos zum "
"download, offline-fähig und einfach einzurichten. Betreiben Sie Ihren "
"eigenen API-Server in nur wenigen Minuten."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -519,152 +607,142 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
"Aufgrund von Bot-Missbrauchs werden Übersetzungsanfragen temporär auf "
"Benutzer mit einem gültigen API-Key beschränkt. Tschuldigung für die "
"Unannehmlichkeiten!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Übersetzungs-API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Text übersetzen"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Dateien übersetzen"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Übersetzen von"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Quell- und Zielsprache vertauschen"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Übersetzen in"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Text zum Übersetzen"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Text löschen"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Übersetzung vorschlagen"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Abbrechen"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Senden"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Unterstützte Dateiformate:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Datei"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Datei entfernen"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Übersetzen"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Herunterladen"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Anfrage"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Antwort"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Open-Source-API für maschinelle Übersetzung"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Selbstgehostet. Offline-fähig. Einfach einzurichten."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Kostenlos zum download. Offline-fähig. Einfach einzurichten."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "den %(libretranslate)s-Mitwirkenden"
@ -672,3 +750,30 @@ 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"
#~ msgid "Basque"
#~ msgstr "Baskisch"
#~ msgid "Galician"
#~ msgstr "Galicisch"

View file

@ -8,110 +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"
"PO-Revision-Date: 2023-09-30 09:00+0000\n"
"Last-Translator: Michael Lewnton <michaellewnton@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-04-12 08:53+0000\n"
"Last-Translator: GiannosOB <giannos2105@gmail.com>\n"
"Language-Team: Greek <https://hosted.weblate.org/projects/libretranslate/app/el/>\n"
"Language: el\n"
"Language-Team: Greek "
"<https://hosted.weblate.org/projects/libretranslate/app/el/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Άκυρη JSON μορφή"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Αυτόματη Ανίχνευση"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Μη εξουσιοδοτημένο"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Υπερβολικά αιτημάτα, περιορισμός παραβιάσεων"
msgstr "Πάρα πολλά αιτήματα περιορίζουν τις παραβιάσεις"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Μη έγκυρο κλειδί API"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Επικοινωνήστε με τον χειριστή server για να πάρετε ένα API κλειδί"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Επισκεφθείτε τον σύνδεσμο %(url)s για να πάρετε ένα κλειδί API"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Άκυρο αίτημα: ελλιπής παράμετρος %(name)s"
msgstr "Άκυρο αίτημα: απούσα η παράμετρος %(name)s"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Μη έγκυρη αίτηση: Η παράμετρος %(name)s δεν είναι αριθμός"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"Μη έγκυρη αίτηση: Η παράμετρος %(name)s πρέπει να είναι &lt;= &gt; %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "Δεν υποστηρίζoνται %(lang)s"
msgstr "%(lang)s δεν υποστηρίζετε"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Η μορφή %(format)s δεν υποστηρίζεται"
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Το κείμενο: %(text)s δεν μπορεί να μεταφράστει"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Η μετάφραση αρχείων ειναί απενεργοποιημένη σε αυτόν τον διακομιστή."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Μη έγκυρο αίτημα: Το αρχείο είναι άδειο"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Ακυρωμένη αίτηση: μορφή αρχείου που δεν υποστηρίζεται"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Μη έγκυρο όνομα αρχείου"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Οι προτάσεις απενεργοποιούνται σε αυτόν τον server."
@ -120,120 +131,192 @@ 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 "Portuguese (Brazil)"
msgstr "Πορτογαλικά (Βραζιλία)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Ρουμανία"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Ρώσοι"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Σλοβά"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Σλοβενία"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Ισπανικά ισπανικά"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Σουηδικά"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Ταγκαλόγκ"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Ταϊλάνδη"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Το τουρκικό Τουρκ Τουρκίας"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ουκρανίας"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Ούρντου"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Σερβία"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ουκρανικά"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Βιετναμ Βιετνάμ"
msgstr "Βιετναμέζικα"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -251,7 +334,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:233
msgid "Translated text"
msgstr "Μεταφρασμένο κείμενο"
@ -306,206 +389,211 @@ 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Άγνωστο λάθος"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Συνήγοροι"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Δεν υπάρχουν διαθέσιμες γλώσσες. εγκαταστήσετε σωστά τα μοντέλα?"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "πατήστε το σύνδεσμο \"Get API Key\"."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, 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 "
"Δωρεάν και Open Source Machine Translation API. Free to download, offline "
"ικανή και εύκολη στη ρύθμιση. Πατήστε το δικό σας διακομιστή API σε λίγα "
"λεπτά."
@ -517,154 +605,143 @@ 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"
msgstr "Εναλλαγή σκοτεινής/φωτεινής λειτουργίας"
#: libretranslate/templates/index.html:157
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Απ"
#: libretranslate/templates/index.html:171
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Λόγω κατάχρησης bot, τα αιτήματα μετάφρασης περιορίζονται προσωρινά σε "
"χρήστες με έγκυρο κλειδί API. Συγγνώμη για την ενόχληση!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Μετάφραση API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Μετάφραση κειμένου"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Αρχεία μετάφρασης"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Μεταφράστε από"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Η πηγή Swap και οι γλώσσες-στόχος"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Μετάβαση σε"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Κείμενο για μετάφραση"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Διαγράψτε κείμενο"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Πρότεινε μετάφραση"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Ακύρωση"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Αποστολή"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Υποστηριζόμενη μορφή αρχείων:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "File"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Αφαιρέστε αρχείο αρχείων"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Μετάφρασε"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Λήψη"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Αίτηση αιτήματος"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Απάντηση"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Άνοιγμα API Πηγιαίου Μηχανίματος Μετάφρασης"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Αυτο-Hosted. Offline Capable. Εύκολο στη ρύθμιση."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Συμβαλλόμενοι"
@ -672,3 +749,26 @@ 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"
#~ msgid "Basque"
#~ msgstr "Βασκικά"
#~ msgid "Galician"
#~ msgstr "Γαλικιακά"

View file

@ -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: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2023-05-02 19:52+0000\n"
"Last-Translator: Jorge Maldonado Ventura <jorgesumle@freakspot.net>\n"
"Language: eo\n"
@ -20,66 +20,79 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Nevalida JSON-aranĝo"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Aŭtomata Detekto"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Ne rajtigita"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Tro da petaj limmalobservoj"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Invalid API-ŝlosilo"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, 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:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Invalida peto: <x>0 0 0 0</x> parametro ne estas nombro %(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"Invalida peto: <x>0 0 0 0</x> parametro devas esti <x>1 1 1 1</x> "
"%(name)s %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s ne estas subtenata"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@ -88,28 +101,28 @@ msgstr ""
"%(tname)s (%(tcode)s) ne estas disponebla kiel cellingvo de %(sname)s "
"(%(scode)s)"
#: libretranslate/app.py:647
#: libretranslate/app.py:787
#, 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:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Dosier-tradukoj estas malebligitaj en ĉi tiu servilo."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Nevalida peto: malplena dosiero"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Nevalida peto: dosieraranĝo ne subtenata"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nevalida dosiernomo"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Sugestoj estas malebligitaj en ĉi tiu servilo."
@ -118,120 +131,192 @@ msgid "English"
msgstr "Angla"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albana albana"
#: 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 "Bengala bengala"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Bulgara Bulgaro"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Katalana kataluno"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Ĉina"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "La ĉina (tradicia)"
#: 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 "La estona"
#: 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 "La latva"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Litova litovo"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malaja"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Norvega"
#: 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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumana"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Rusa"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovaka"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovena slovena"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Hispana"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Sveda"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "La tagaloga tagalo"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tajlanda"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turka"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukraina"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "La urdua"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vjetnama"
msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -249,7 +334,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:233
msgid "Translated text"
msgstr "Tradukita teksto"
@ -304,204 +389,208 @@ msgstr ""
" * `html` - HTML-markado\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Preferita nombro de alternativaj tradukoj"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Nekonata eraro"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopiita"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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:536
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:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr "Libera kaj malfermitkoda API de maŝina tradukado"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Libera kaj malfermitkoda API de maŝina tradukado. Mem-gastigita, "
"Libera kaj malfermitkoda API de maŝina tradukado. Senpage elŝutebla, "
"senkonekte funkciebla kaj facile instalebla. Rulu vian propran API-"
"servilon en nur kelkaj minutoj."
@ -513,152 +602,139 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Tradukado-API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Traduki tekston"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Traduki dosierojn"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Tradukita de"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Interŝanĝi fontajn kaj celajn lingvojn"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Traduki al"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Teksto por traduki"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Forigi tekston"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Proponita traduko"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Nuligi"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Sendi"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Subtenitaj dosierformatoj:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Dosiero"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Forigi dosieron"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Traduku"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Elŝuti"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Peto"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Respondo"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API de malfermitkoda maŝina tradukado"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Mem-gastigita. Senkonekte funkciebla. Facile instalebla."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Senpage elŝutebla. Senkonekte funkciebla. Facile instalebla."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Kontribuantoj"
@ -666,3 +742,31 @@ 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"
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -8,82 +8,94 @@ 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"
"PO-Revision-Date: 2023-01-25 02:06+0000\n"
"Last-Translator: José Alberto Justiniani <justiniani@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-04-20 10:36+0000\n"
"Last-Translator: xuars <yago.rana.gayoso@gmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/libretranslate/"
"app/es/>\n"
"Language: es\n"
"Language-Team: Spanish "
"<https://hosted.weblate.org/projects/libretranslate/app/es/>\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.11.1-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Formato JSON inválido"
msgstr "JSON inválido"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Detección automática"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "No autorizado"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Demasiadas violaciones a los límites de la solicitud"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Clave API inválida"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, 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:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Solicitud no válida: El parámetro %(name)s no es un número"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Petición no válida: el parámetro %(name)s debe ser <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "el %(lang)s no es compatible"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@ -92,28 +104,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:787
#, 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:874 libretranslate/app.py:943
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:889
msgid "Invalid request: empty file"
msgstr "Solicitud inválida: archivo vacío"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Solicitud inválida: formato de archivo no compatible"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nombre de archivo inválido"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Las sugerencias están deshabilitadas en este servidor."
@ -122,118 +134,190 @@ msgid "English"
msgstr "Inglés"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albanés"
#: 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 "Bengalí"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Búlgaro"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Catalán"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chino"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Chino (tradicional)"
#: 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 "Estonio"
#: 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 "Letón"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Lituano"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malayo"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Noruego"
#: 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 "Portuguese (Brazil)"
msgstr "Portugués (Brasil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumano"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Ruso"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Eslovaco"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Esloveno"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Español"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Suecia"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalo"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tailandés"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turco"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ucraniano"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbio"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ucraniano"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamita"
@ -253,7 +337,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:233
msgid "Translated text"
msgstr "Texto traducido"
@ -308,170 +392,174 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Número preferido de traducciones alternativas"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Error desconocido"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copiado"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@ -479,37 +567,37 @@ 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:463
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:536
#, 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:536
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:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr "API de traducción automática gratuita y de código abierto"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API de traducción automática gratuita y de código abierto. Autónoma, con "
"capacidad para trabajar sin conexión y fácil de configurar. Aloja tu "
"propio servidor API en sólo unos minutos."
"API de traducción automática gratuita y de código abierto. Descarga "
"gratuita, con capacidad para trabajar sin conexión y fácil de configurar."
" Aloja tu propio servidor API en sólo unos minutos."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -519,152 +607,141 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
"Debido al abuso de bots, las peticiones de traducciones están temporalmente "
"limitadas a los usuarios con una clave API válida. ¡Perdón por las molestias!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API de Traducción"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Traducir texto"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Traducir archivos"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Traducir del"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Cambiar idioma de origen y destino"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Traducir al"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Texto para traducir"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Borrar el texto"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Sugerir traducción"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Cancelar"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Enviar"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Formatos de archivo compatibles:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Archivo"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Eliminar el archivo"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Traducir"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Descargar"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Solicitud"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Respuesta"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API de Traducción de Código Abierto"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Autónoma. Funciona Sin Conexión. Fácil de Configurar."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Descarga gratuita. Funciona Sin Conexión. Fácil de Configurar."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Colaboradores de %(libretranslate)s"
@ -672,3 +749,31 @@ 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"
#~ msgid "Basque"
#~ msgstr "Vasco"
#~ msgid "Galician"
#~ msgstr "Galego"

View file

@ -0,0 +1,775 @@
# Estonian translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-02-01 18:01+0000\n"
"Last-Translator: Priit Jõerüüt <hwlate@joeruut.com>\n"
"Language-Team: Estonian <https://hosted.weblate.org/projects/libretranslate/app/et/>\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"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Vigane JSON-vorming"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Tuvasta keel automaatselt"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Pole lubatud"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Liiga palju päringuid ühes ajaühikus"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Vigane API võti"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Palun küsi serveri haldajalt API võtit"
#: libretranslate/app.py:373
#, 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:420
msgid "Slowdown:"
msgstr "Võtame nüüd tempot alla:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Vigane päring: puuduv parameeter „%(name)s“"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Vigane taotlus: %(name)s parameeter ei ole arv"
#: libretranslate/app.py:669
#, 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:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s keel ei ole veel tõlgitav"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s vorming ei ole veel toetatud"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Teksti tõlkimine ei õnnestu: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Failide tõlkimine ei ole selles serveris lubatud."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Vigane päring: tühi fail"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Vigane päring: failivorming pole toetatud"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Vigane failinimi"
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Tõlkesoovituste võimalus ei ole selles serveris kasutusel."
#: libretranslate/locales/.langs.py:1
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:4
msgid "Azerbaijani"
msgstr "aserbaidžaani"
#: 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:9
msgid "Chinese (traditional)"
msgstr "Hiina (traditsiooniline)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "tšehhi"
#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "taani"
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "hollandi"
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "Eesti"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "soome"
#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "prantsuse"
#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "saksa"
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "kreeka"
#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "heebrea"
#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "hindi"
#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "ungari"
#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "indoneesia"
#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "iiri"
#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "itaalia"
#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "jaapani"
#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "korea"
#: 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:32
msgid "Polish"
msgstr "poola"
#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "portugali"
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr "Portugali (Brasiilia)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumeenlane"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "vene"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "slovaki"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Sloveenia"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "hispaania"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "rootsi"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalogi"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "türgi"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "ukraina"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbia"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukraina"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnami"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
msgstr "Laadi kasutatavate keelte loend"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
msgstr "Keelte loend"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr "tõlkimine"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
msgstr "Tõlgi tekst ühest keelest teise"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Tõlgitud tekst"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
msgstr "Vigane päring"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr "Tõlkeviga"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
msgstr "Aeglustame päringuid"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
msgstr "Keelatud"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
msgstr "Tere maailm!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
msgstr "Tõlgitav tekst"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
msgstr "Lähtekeele kood"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
msgstr "Tõlkekeele kood"
#: 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 ""
"Lähteteksti vorming:\n"
" * `text` - vormindamata tekst\n"
" * `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:19
msgid "Translate file from a language to another"
msgstr "Tõlgi fail ühest keelest teise"
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Tõlgitud fail"
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Tõlgitav fail"
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Tuvasta ühe teksti keel"
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Tuvastamise tulemused"
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Viga tuvastamisel"
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tekst, kust peaksime keele tuvastama"
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Päring kasutajaliidese seadistuste vaatamiseks"
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "kasutajaliidese seadistused"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "kasutajaliides"
#: 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:30
msgid "Success"
msgstr "Päring õnnestus"
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Päring pole lubatud"
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Lähtetekst"
#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Ettepanek tõlke parandamiseks"
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Teksti lähtekeel"
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Teksti tõlkekeel"
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "tagasiside"
#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Keelekood"
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Inimloetav keele nimi (inglise keeles)"
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Tõetatud tõlkekeelte koodid"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Tõlgitud tekst(id)"
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Veateade"
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Päringute aeglustamise põhjus"
#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Tõlgitud faili url"
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Usaldusväärsuse väärtus"
#: 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)"
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tõlkepäringu aegumine kasutajaliideses"
#: 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:48
msgid "Whether an API key is required."
msgstr "Kas API võtme kasutamine on nõutav."
#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Kas tõlkesoovituste saatmine on kasutusel."
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Toetatud failivormingud"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s urli laadimine ei õnnestunud"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Tundmatu viga"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopeeritud"
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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"
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "klõpsi linki „Osta API võti“."
#: libretranslate/templates/app.js.template:536
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:347
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. Free to download, 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"
msgstr "tõlge"
#: libretranslate/templates/index.html:11
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API kirjeldus"
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Osta API võti"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Lisa API võti"
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Vaheta keelt"
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Muuda"
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Vaheta kujundust: tume/hele"
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Loobu"
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Boti kuritarvitamise tõttu on tõlketaotlused ajutiselt piiratud kehtiva API "
"võtmega kasutajatega. Vabandust ebamugavuste pärast!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "TõlkeAPI"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Tõlgi teksti"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Tõlgi faile"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Lähtekeel"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Vaheta lähte- ja tõlkekeeled"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Tõlkekeel"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Tõlgitav tekst"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Kustuta tekst"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Soovita paremat tõlget"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Katkesta"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Saada"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Kasutatavad failivormingud:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fail"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Eemalda fail"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Tõlgi"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Laadi alla"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Päring"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Vastus"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Avatud lähtekoodiga masintõlke API"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
"Majutatav oma serveris. Toimib ka võrguühenduseta. Hõlpsasti seadistatav."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Litsents:"
#: libretranslate/templates/index.html:354
#, 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:354
#, 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"
#~ msgid "Basque"
#~ msgstr "Baski"
#~ msgid "Galician"
#~ msgstr "Galicia"

View file

@ -0,0 +1,4 @@
{
"name": "Estonian",
"reviewed": false
}

View file

@ -0,0 +1,770 @@
# Basque translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-10-09 17:15+0000\n"
"Last-Translator: Urtzi Odriozola Lizaso <urtzi.odriozola@gmail.com>\n"
"Language: eu\n"
"Language-Team: Basque "
"<https://hosted.weblate.org/projects/libretranslate/app/eu/>\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"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "JSON formatu baliogabea"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Hautemate automatikoa"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Baimenik gabe"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Eskaera-mugaren urraketa gehiegi"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "API gako baliogabea"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Mesedez, jarri harremanetan zerbitzari-operadorearekin API gakoa lortzeko"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Bisitatu %(url)s API gako bat lortzeko"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Moteltzea:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Eskaera baliogabea: %(name)s parametroa falta da"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Eskaera baliogabea: %(name)s parametroa ez da zenbakia"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Eskaera baliogabea: %(name)s parametroak <= %(value)s izan behar du"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Eskaera baliogabea: eskaerak (%(size)s) testu muga (%(limit)s) gainditzen"
" du"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s ez da bateragarria"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formatua ez da bateragarria"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
"%(tname)s (%(tcode)s) ez dago eskuragarri helburu hizkuntza moduan "
"%(sname)s-(e)tik (%(scode)s)"
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Ezin da testua itzuli: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Fitxategi itzulpenak ez daude gaituta zerbitzari honetan."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Eskaera baliogabea: fitxategi hutsa"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Eskaera baliogabea: fitxategiaren formatua ez da bateragarria"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Fitxategiaren izena baliogabea"
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Iradokizunak ez daude gaituta zerbitzari honetan."
#: libretranslate/locales/.langs.py:1
msgid "English"
msgstr "Ingelesa"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albaniera"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabiera"
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaijanera"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
msgstr "Bengalera"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Bulgariera"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Katalana"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Txinera"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Txinera (tradizionala)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Txekiera"
#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Daniera"
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Nederlandera"
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperantoa"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "Estoniera"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Finlandiera"
#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Frantsesa"
#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Alemana"
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Greziera"
#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebreera"
#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindiera"
#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Hungariera"
#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Indonesiera"
#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Irlandera"
#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Italiera"
#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Japoniera"
#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Koreera"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
msgstr "Letoniera"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Lituaniera"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malaysiera"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Norvegiera"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Persiera"
#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Poloniera"
#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugesa"
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Errumaniera"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Errusiera"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Eslovakiera"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Esloveniera"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Gaztelania"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Suediera"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagaloa"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thailandiera"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turkiera"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukrainera"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdua"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbiera"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukrainera"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamera"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
msgstr "Eskuratu bateragarriak diren hizkuntzen zerrenda"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
msgstr "Hizkuntzen zerrenda"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr "itzuli"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
msgstr "Itzuli testua hizkuntza batetik bestera"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Itzulitako testua"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
msgstr "Eskaera baliogabea"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr "Itzulpen errorea"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
msgstr "Moteldu"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
msgstr "Debekatua"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
msgstr "Kaixo mundua!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
msgstr "Itzultzeko testua(k)"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
msgstr "Jatorrizko hizkuntza kodea"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
msgstr "Helburu hizkuntza kodea"
#: libretranslate/locales/.swag.py:14
msgid "text"
msgstr "testua"
#: 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 ""
"Jatorrizko testu formatua:\n"
" * `text` - Formatu gabeko testua\n"
" * `html` - HTML etiketak\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Itzulpen alternatiboen kopuru hobetsia"
#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "API gakoa"
#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Itzuli fitxategia hizkuntza batetik bestera"
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Itzulitako fitxategia"
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Itzultzeko fitxategia"
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Hauteman testu bakar baten hizkuntza"
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Hautemateak"
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Hautemate errorea"
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Hautemateko testua"
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Eskuratu interfazeko ezarpen espezifikoak"
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "interfaze ezarpenak"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "interfazea"
#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Bidali iradokizun bat itzulpena hobetzeko"
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Arrakasta"
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Baimenik gabea"
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Jatorrizko testua"
#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Iradokitako itzulpena"
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Jatorrizko testuaren hizkuntza"
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Iradokitako itzulpenaren hizkuntza"
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "iritzia"
#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Hizkuntzaren kodea"
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Gizakiak uler dezakeen hizkuntzaren izena (ingelesez)"
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Helburuko hizkuntzen kode bateragarriak"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Itzulitako testua(k)"
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Errore mezua"
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Moteltzeko arrazoia"
#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "Itzulitako fitxategiaren url"
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Konfiantza balioa"
#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Karakterearen sarrera-muga hizkuntza honetarako (-1ek mugarik ez dagoela "
"adierazten du)"
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Interfazeko itzulpen denbora"
#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "API gakoen datu-basea gaituta dagoen ala ez."
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "API gako bat behar den ala ez."
#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Iradokizunak bidaltzea gaituta dagoen ala ez."
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Fitxategi bateragarrien formatua"
#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Bidalketa arrakastatsua izan den ala ez"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "Kopiatu testua"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
#: libretranslate/templates/app.js.template:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Ezin da %(url)s kargatu"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Errore ezezaguna"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopiatua"
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
"Eskerrik asko zuzenketagatik. Kontuan izan iradokizunak ez duela "
"berehalakoan eraginik izango."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Ez dago hizkuntza erabilgarririk. Modeloak ongi instalatu dituzu?"
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Idatzi zure API gakoa. API gako bat behar baduzu, %(instructions)s"
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "sakatu \"Lortu API Gakoa\" esteka."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "jarri zerbitzari-operadorearekin harremanetan."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
msgid "Free and Open Source Machine Translation API"
msgstr "Doako eta kode irekiko Itzulpen automatikoko APIa"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"Doako eta kode irekiko Itzulpen automatikoko APIa. Doan deskargatzeko, "
"konexio beharrik gabea eta konfiguratzeko erraza. Exekutatu zure API "
"zerbitzaria minutu gutxitan."
#: libretranslate/templates/index.html:11
msgid "translation"
msgstr "itzulpena"
#: libretranslate/templates/index.html:11
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "API Dokak"
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Lortu API Gakoa"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Ezarri API Gakoa"
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Aldatu hizkuntza"
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editatu"
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Modu iluna/argia"
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Baztertu"
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Itzulpen APIa"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Itzuli testua"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Itzuli fitxategiak"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Itzuli hemendik"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Aldatu jatorrizko eta helburuko hizkuntzak"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Itzuli hona"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Itzultzeko testua"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Ezabatu testua"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Iradoki itzulpena"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Utzi"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Bidali"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Fitxategi bateragarrien formatuak:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fitxategia"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Kendu fitxategia"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Itzuli"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Deskargatu"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Eskaera"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Erantzuna"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Kode Irekiko Itzulpen Automatikoko APIa"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Doan deskargatzeko. Konexio beharrik gabe. Konfiguratzeko erraza."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Lizentzia:"
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "%(contributors)s %(heart)sez egina eta %(engine)sk sustatua"
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Laguntzaileek"
#~ 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 publiko hau proba, erabilera "
#~ "pertsonal edo ez-ohikoetarako erabili "
#~ "behar da. Aplikazio bat ekoizpenean "
#~ "exekutatu nahi baduzu, mesedez %(host_server)s"
#~ " edo %(get_api_key)s."
#~ msgid "host your own server"
#~ msgstr "ostatatu zure zerbitzaria"
#~ msgid "get an API key"
#~ msgstr "API gako bat lortu"
#~ msgid "Basque"
#~ msgstr "Euskara"
#~ msgid "Galician"
#~ msgstr "Galiziera"

View file

@ -0,0 +1,4 @@
{
"name": "Basque",
"reviewed": true
}

View file

@ -1,4 +1,4 @@
# Translations template for LibreTranslate.
# ext translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@ -8,104 +8,115 @@ 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: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: ext\n"
"Language-Team: none\n"
"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"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:60
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr ""
#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr ""
#: libretranslate/app.py:193
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr ""
#: libretranslate/app.py:211
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr ""
#: libretranslate/app.py:220
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr ""
#: libretranslate/app.py:227
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr ""
#: libretranslate/app.py:229
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr ""
#: libretranslate/app.py:269
#: libretranslate/app.py:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr ""
#: libretranslate/app.py:480 libretranslate/app.py:492
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
#: libretranslate/app.py:525 libretranslate/app.py:530
#: libretranslate/app.py:700 libretranslate/app.py:705
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr ""
#: libretranslate/app.py:536
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr ""
#: libretranslate/app.py:544 libretranslate/app.py:568
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
#: libretranslate/app.py:589
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr ""
#: libretranslate/app.py:676 libretranslate/app.py:730
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr ""
#: libretranslate/app.py:690
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr ""
#: libretranslate/app.py:693
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr ""
#: libretranslate/app.py:738
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr ""
#: libretranslate/app.py:979
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr ""
@ -114,118 +125,190 @@ 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 "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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr ""
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr ""
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr ""
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr ""
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr ""
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr ""
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr ""
@ -245,7 +328,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:233
msgid "Translated text"
msgstr ""
@ -297,201 +380,205 @@ 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:275
#: libretranslate/templates/app.js.template:279
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr ""
#: 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr ""
#: libretranslate/templates/app.js.template:276
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr ""
#: libretranslate/templates/app.js.template:320
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr ""
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr ""
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr ""
#: 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 "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
@ -503,145 +590,163 @@ msgstr ""
msgid "api"
msgstr ""
#: libretranslate/templates/index.html:64
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr ""
#: libretranslate/templates/index.html:66
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr ""
#: libretranslate/templates/index.html:68
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr ""
#: libretranslate/templates/index.html:70
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr ""
#: 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
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:172
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:176
msgid "Translate Files"
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:192
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:207
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:223
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:227
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:246
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:250
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:265
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:272
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:273
#: libretranslate/templates/index.html:317
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:292
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:297
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:312
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:313
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:332
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:334
#: libretranslate/templates/index.html:348
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 ""
#: libretranslate/templates/index.html:345
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
#: libretranslate/templates/index.html:345
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
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 ""
#~ msgid "host your own server"
#~ msgstr ""
#~ msgid "get an API key"
#~ msgstr ""
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -0,0 +1,4 @@
{
"name": "ext",
"reviewed": false
}

View file

@ -8,110 +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"
"PO-Revision-Date: 2023-06-03 02:40+0000\n"
"Last-Translator: Surena <Arsinad93@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-07-26 07:54+0000\n"
"Last-Translator: MjavadH <m.hacker0110@gmail.com>\n"
"Language-Team: Persian <https://hosted.weblate.org/projects/libretranslate/app/fa/>\n"
"Language: fa\n"
"Language-Team: Persian "
"<https://hosted.weblate.org/projects/libretranslate/app/fa/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "فرمت JSON نامعتبر است"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "تشخیص خودکار"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "مجاز نیست"
msgstr "غیرمجاز"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "تعداد درخواست‌ها بیش از حد مجاز است"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "کلید API نامعتبر است"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "لطفاً برای دریافت کلید API با كارپرداز سرور تماس بگیرید"
msgstr "لطفاً برای دریافت کلید API با اپراتور سرور تماس بگیرید"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "برای دریافت کلید API از %(url)s بازدید نمایید"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "آهسته:"
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "درخواست نامعتبر است: پارامتر %(name)s وجود ندارد"
msgstr "درخواست نامعتبر: پارامتر %(name)s وجود ندارد"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "درخواست Invalid: %(name)s پارامتر یک عدد نیست"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "درخواست Invalid: %(name)s پارامتر باید &lt;= <x>1 1</x> %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s پشتیبانی نمی‌شود"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "فرمت %(format)s پشتیبانی نمی‌شود"
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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)به‌عنوان یک زبان هدف در"
" دسترس نیست"
"(%(tcode)s) (%(tname)s) از (%(scode)s) (%(sname)s) به عنوان یک زبان هدف در "
"دسترس نیست"
#: libretranslate/app.py:647
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "متن قابل ترجمه نیست: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "ترجمه فایل در این سرور غیرفعال است."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "درخواست نامعتبر است: فایل خالی است"
msgstr "درخواست نامعتبر: فایل خالی است"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "درخواست نامعتبر است: فرمت فایل پشتیبانی نمی‌شود"
msgstr "درخواست نامعتبر: فرمت فایل پشتیبانی نمی‌شود"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "نام فایل نامعتبر است"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "پیشنهادات در این سرور غیرفعال است."
@ -120,118 +129,190 @@ 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
msgid "Czech"
msgstr "چکی"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "چینی ( سنتی)"
#: libretranslate/locales/.langs.py:6
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "(کشور) چک"
#: 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 "Portuguese (Brazil)"
msgstr "پرتغالی (Brazil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "رومانی"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "روسی"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "اسلواکی"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "اسلوونی"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "اسپانیایی"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "سوئدی"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "تایلند"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "ترکی"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "اوکراینی"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "اردو"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "صربستان"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "اوکراین"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "ویتنامی"
@ -251,7 +332,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:233
msgid "Translated text"
msgstr "متن ترجمه شده"
@ -261,15 +342,15 @@ 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!"
@ -302,213 +383,217 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"فرمت متن منبع:\n"
"* متن - متن ساده\n"
"* html - نشانه‌گذاری HTML\n"
"* text - متن ساده\n"
"* 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
msgid "Detections"
msgstr "تشخیص‌ها"
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "شناسایی ها"
#: 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
msgid "Retrieve frontend specific settings"
msgstr "بازیابی تنظیمات زبان اولیه"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
msgstr "تنظیمات اولیه"
msgid "Retrieve frontend specific settings"
msgstr "بازیابی تنظیمات ظاهری ویژه"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
msgstr "اولیه"
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:29
msgid "Success"
msgstr "موفقیت‌آمیز بود"
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "موفقیت‌آمیز"
#: 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
msgid "Reason for slow down"
msgstr "دلیل کاهش سزعت"
#: libretranslate/locales/.swag.py:42
msgid "Translated file url"
msgstr "تارنشانی فایل ترجمه شده"
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:44
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "محدودیت ورودی نویسه برای این زبان (تا -1 محدودیتی نیست)"
#: libretranslate/locales/.swag.py:45
msgid "Frontend translation timeout"
msgstr "پایان زمان ترجمه مقدماتی"
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "محدودیت کاراکتر برای این زبان (-1 یعنی بدون محدودیت)"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
msgstr "اینکه آیا پایگاه داده کلید API فعال است یا خیر."
msgid "Frontend translation timeout"
msgstr "محدودیت زمانی ترجمه برای نمای ظاهری"
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
msgstr "اینکه آیا کلید API مورد نیاز است یا خیر."
msgid "Whether the API key database is enabled."
msgstr "اینکه (آیا) پایگاه داده مربوط به کلید API فعال است."
#: libretranslate/locales/.swag.py:48
msgid "Whether submitting suggestions is enabled."
msgstr "اینکه آیا ارسال پیشنهادات ممکن است یا خیر."
msgid "Whether an API key is required."
msgstr "اینکه (آیا) کلید API مورد نیاز است."
#: libretranslate/locales/.swag.py:49
msgid "Supported files format"
msgstr "قالب فایل‌های پشتیبانی شده"
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 "اینکه آیا ارسال موفقیت‌آمیز بود یا خیر"
msgstr "اینکه (آیا) ارسال موفقیت‌آمیز بود"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "روگرفت متن"
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "خطای ناشناخته"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "روگرفت شد"
msgstr "کپی شد"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "هیچ زبانی در دسترس نیست. آیا مدل‌ها را به‌درستی نصب کرده‌اید؟"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "تارپیوند \"دریافت کلید API\" را فشار دهید."
msgstr "بر روی لینک \"دریافت کلید API\" کلیک کنید."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "با كارپرداز سرور تماس بگیرید."
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, 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"
@ -518,152 +603,142 @@ msgstr "ترجمه"
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:65
msgid "API Docs"
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:69
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "گیت‌هاب"
#: 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 "حالت تاریک / روشن"
msgstr "تغییر به حالت تیره/روشن"
#: libretranslate/templates/index.html:157
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "انصراف"
#: libretranslate/templates/index.html:171
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"با توجه به سوء استفاده از ربات، درخواست های ترجمه به طور موقت محدود به "
"کاربران با یک کلید API معتبر است. ببخشید برای ناراحتی!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API ترجمه"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "ترجمه متن"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "فایل‌های ترجمه"
msgstr "ترجمه فایل ها"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "ترجمه از"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "جابجایی زبان مبدا و هدف"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "ترجمه به"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "متن برای ترجمه"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "حذف متن"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "پیشنهاد ترجمه"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "لغو"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "ارسال"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "فرمت‌های فایل پشتیبانی شده:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "فایل"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "حذف فایل"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "ترجمه کن"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "بارگیری"
msgstr "بارگیری (دانلود)"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "درخواست"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "پاسخ"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API ترجمه ماشینی متن باز"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "خود میزبان. قابلیت کار آفلاین. با قابلیت راه‌اندازی آسان."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
msgstr "لیبر ترنسلیت"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "مشارکت‌‌کنندگان %(libretranslate)s"
@ -671,3 +746,26 @@ 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 بگیرید"
#~ msgid "Basque"
#~ msgstr "Basque"
#~ msgid "Galician"
#~ msgstr "Galician"

View file

@ -8,106 +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"
"PO-Revision-Date: 2023-02-27 19:38+0000\n"
"Last-Translator: Marko Korhonen <github@functionalhacker.korhonen.cc>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-05-15 02:15+0000\n"
"Last-Translator: J <jalmari.matilainen@hotmail.com>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/libretranslate/"
"app/fi/>\n"
"Language: fi\n"
"Language-Team: Finnish "
"<https://hosted.weblate.org/projects/libretranslate/app/fi/>\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.12-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Virheellinen JSON formaatti"
msgstr "Virheellinen JSON-formaatti"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Automaattinen havaitseminen"
msgstr "Automaattinen tunnistus"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Luvaton"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Liikaa pyyntöjä rajoittaa rikkomuksia"
msgstr "Liikaa pyyntöjä, rajat ylitetty"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Virheellinen API avain"
msgstr "Virheellinen API-avain"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Vieraile %(url)s hankkiaksesi API avaimen"
msgstr "Vieraile %(url)s:ssa saadaksesi API-avaimen"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Hidasta:"
msgstr "Hidastus:"
#: 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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Virheellinen pyyntö: Kadonnut %(name)s parametri"
msgstr "Virheellinen pyyntö: Puuttuva %(name)s parametri"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Virheellinen pyyntö: %(name)s Parametri ei ole numero"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"Virheellinen pyyntö: %(name)s Parametrin on oltava <x>1 1</x> %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s ei ole tuettu"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, 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:787
#, 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:874 libretranslate/app.py:943
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:889
msgid "Invalid request: empty file"
msgstr "Virheellinen pyyntö: tyhjä tiedosto"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Virheellinen pyyntö: tiedostomuotoa ei tueta"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Virheellinen tiedostonimi"
msgstr "Virheellinen tiedoston nimi"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Ehdotukset on poistettu käytöstä tällä palvelimella."
@ -116,120 +131,192 @@ msgid "English"
msgstr "Englanti"
#: libretranslate/locales/.langs.py:2
msgid "Arabic"
msgstr "Arabian kieli"
msgid "Albanian"
msgstr "Albania"
#: libretranslate/locales/.langs.py:3
msgid "Azerbaijani"
msgstr "Azerbaidžanin"
msgid "Arabic"
msgstr "Arabia"
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azerbaidžan"
#: 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 "Katalonia"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Kiina"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Kiina (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 "Viro"
#: 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 "Latvia"
#: 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 "Norja"
#: 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 "Portuguese (Brazil)"
msgstr "Portugali (Brazilia)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Romania"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Venäjä"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovakia"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovenia"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Espanja"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Ruotsi"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalogi"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thaimaa"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turkki"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukraina"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbia"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukraina"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnami"
msgstr "Vietnam"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -247,7 +334,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:233
msgid "Translated text"
msgstr "Käännetty teksti"
@ -265,7 +352,7 @@ msgstr "Hidasta"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
msgstr "Kielletty"
msgstr "Bännätty"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
@ -298,205 +385,210 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"Lähdetekstin muoto:\n"
"\"Teksti\" - selkeä teksti\n"
"HTML-merkintä\n"
" * `text` - Selkoteksti\n"
" * `html` - 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
msgid "Retrieve frontend specific settings"
msgstr "Etsi rintamakohtaisia asetuksia"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
msgstr "etusivu asetukset"
msgid "Retrieve frontend specific settings"
msgstr "Etsi käyttöliittymäkohtaisia asetuksia"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
msgstr "etusivu"
msgid "frontend settings"
msgstr "käyttöliittymän asetukset"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "käyttöliittymä"
#: 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
msgid "Not authorized"
msgstr "Ei todennettu"
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ei lupaa"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Tuntematon virhe"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopioitiin"
msgstr "Kopioitu"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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"
msgstr "Kirjoita API-avaimesi. Jos tarvitset API-avaimen, %(instructions)s"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "paina \"Get API Key\" -linkkiä."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, 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, "
@ -511,152 +603,141 @@ 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"
msgstr "Tumma/vaalea tila"
#: libretranslate/templates/index.html:157
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Hylkää"
#: libretranslate/templates/index.html:171
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Bottien väärinkäytön vuoksi käännöspyynnöt rajoittuvat tilapäisesti "
"käyttäjiin, joilla on voimassa oleva API-avain. Pahoittelen häiriötä!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Käännös API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Käännä teksti"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Käännä tiedosto"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Käännökset"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Vaihda lähde ja kohdekielet"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Käännä kielelle"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Käännettävä teksti"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Poista teksti"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Ehdota käännöstä"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Peru"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Lähetä"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Tuetut tiedostomuodot:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Tiedosto"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Poista tiedosto"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Käännökset"
msgstr "Käännä"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Lataa"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Pyyntö"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Vastaus"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Avoimen lähdekoodin käännös konekäännösrajapinta"
msgstr "Avoimen lähdekoodin konekäännösrajapinta"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Itseisännöity. Offline-yhteensopiva. Helppo asentaa."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Lisenssi:"
#: libretranslate/templates/index.html:340
#: libretranslate/templates/index.html:354
#, 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
#, 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"
msgstr "%(heart)s:lla tehnyt %(contributors)s hyödyntäen %(engine)s"
#: libretranslate/templates/index.html:348
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Osallistujat"
@ -664,3 +745,26 @@ 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"
#~ msgid "Basque"
#~ msgstr "Baski"
#~ msgid "Galician"
#~ msgstr "Galician"

View file

@ -0,0 +1,760 @@
# Filipino translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-04-03 08:46+0000\n"
"Last-Translator: searinminecraft "
"<114207889+searinminecraft@users.noreply.github.com>\n"
"Language: fil\n"
"Language-Team: Filipino "
"<https://hosted.weblate.org/projects/libretranslate/app/fil/>\n"
"Plural-Forms: nplurals=2; plural=n != 1 && n != 2 && n != 3 && (n % 10 =="
" 4 || n % 10 == 6 || n % 10 == 9);\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:93
msgid "Invalid JSON format"
msgstr "Hindi wastong JSON format"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "I-auto Detect"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Hindi awtorisado"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Masyadong maraming paglalabag sa limitasyon ng hiling"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Hindi wastong API key"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Makipag-ugnayan sa operator ng server para makakuha ng API key"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Bisitahin ang %(url)s para makakuha ng API key"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Slowdown:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Hindi wastong hiling: nawawalang %(name)s na parameter"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "Hindi sinusuportahan ang %(lang)s"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Hindi sinusuportahan ang %(format)s na format"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Hindi masalin ang text: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Ang pagsalin ng file ay naka-disable sa server na ito."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Hindi wastong hiling: walang laman na file"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Hindi wastong hiling: hindi sinusuportahan ang file format"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Hindi wastong filename"
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Naka-disable ang mga mungkahi sa server na ito."
#: 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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr ""
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr ""
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr ""
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr ""
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr ""
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr ""
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
msgstr "Kunin ang listahan ng mga sinusuportahang wika"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
msgstr "Listahan ng mga wika"
#: 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:233
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 "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 ""
#: 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 ""
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr ""
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr ""
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr ""
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr ""
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr ""
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
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 ""
#~ msgid "host your own server"
#~ msgstr ""
#~ msgid "get an API key"
#~ msgstr ""
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -0,0 +1,4 @@
{
"name": "fil",
"reviewed": false
}

View file

@ -8,9 +8,10 @@ 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"
"PO-Revision-Date: 2023-09-27 02:59+0000\n"
"Last-Translator: Olivier Dragon <odragon@videotron.ca>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-03-05 07:12+0000\n"
"Last-Translator: ButterflyOfFire "
"<boffire@users.noreply.hosted.weblate.org>\n"
"Language: fr\n"
"Language-Team: French "
"<https://hosted.weblate.org/projects/libretranslate/app/fr/>\n"
@ -20,68 +21,79 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Format JSON incorrect"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Détection automatique"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Non autorisé"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Dépassement de la limite du nombre de requêtes"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Clé API incorrecte"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, 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:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Requête incorrecte : le paramètre %(name)s est manquant"
msgstr "Requête incorrecte: le paramètre %(name)s est manquant"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Requête non valide : le paramètre %(name)s n'est pas un nombre"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Requête non valide : le paramètre %(name)s doit être <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Demande non valide : la requête (%(size)s) dépasse la limite de texte "
"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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s n'est pas prise en charge"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@ -90,28 +102,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:787
#, 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:874 libretranslate/app.py:943
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:889
msgid "Invalid request: empty file"
msgstr "Requête invalide : le fichier est vide"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
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:951
msgid "Invalid filename"
msgstr "Nom de fichier invalide"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Les suggestions sont désactivées sur ce serveur."
@ -120,120 +132,192 @@ msgid "English"
msgstr "Anglais"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albanais"
#: 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 "Bengali"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Bulgare"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Catalan"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "chinois"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Chinois (traditionnel)"
#: 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 "Estonien"
#: 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 "Lettonie"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Lituanien"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malay"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Norvège"
#: 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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Roumain"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "russe"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "slovaque"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovénie"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "espagnol"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "suédois"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thaï"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "turque"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "ukrainien"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Ourdou"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbe"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukrainien"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "vietnamien"
msgstr "Vietnamien"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -251,7 +335,7 @@ msgstr "traduction"
msgid "Translate text from a language to another"
msgstr "Traduire du texte dune langue à l'autre"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Texte traduit"
@ -306,170 +390,174 @@ msgstr ""
" * `html` - Balises HTML\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Nombre préféré de traductions alternatives"
#: 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 à linterface"
#: libretranslate/locales/.swag.py:26
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "paramètres de linterface"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Erreur inconnue"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copié"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@ -477,37 +565,37 @@ 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:463
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:536
#, 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:536
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:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr "API de Traduction Automatique libre et ouverte"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API de Traduction Automatique libre et ouverte. Auto-hébergée, hors ligne"
" et facile à installer. Lancez votre propre serveur API en quelques "
"minutes."
"API de Traduction Automatique libre et ouverte. Téléchargement gratuit, "
"hors ligne et facile à installer. Lancez votre propre serveur API en "
"quelques minutes."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -517,157 +605,172 @@ 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 "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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API de traduction"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Traduire du texte"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Traduire des fichiers"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Traduire depuis"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Échanger la langue source et la langue cible"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Traduire en"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Texte à traduire"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Supprimer le texte"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Suggérer une traduction"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Annuler"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Envoyer"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Formats de fichiers pris en charge:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fichier"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Supprimer le fichier"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Traduire"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Télécharger"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Demande"
msgstr "Requête"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Réponse"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API ouverte de traduction automatique"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Auto-hébergé. Mode hors ligne. Facile à configurer."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Téléchargement gratuit. Mode hors ligne. Facile à configurer."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Contributrices et contributeurs %(libretranslate)s"
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"
#~ msgid "Basque"
#~ msgstr "Basque"
#~ msgid "Galician"
#~ msgstr "Galicien"

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
{
"name": "Irish",
"reviewed": false
}
"reviewed": true
}

View file

@ -0,0 +1,758 @@
# Scottish Gaelic translations for LibreTranslate.
# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.6.2\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-06-16 10:01+0000\n"
"Last-Translator: GunChleoc <fios@foramnagaidhlig.net>\n"
"Language-Team: Gaelic <https://hosted.weblate.org/projects/libretranslate/"
"app/gd/>\n"
"Language: gd\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : "
"(n > 2 && n < 20) ? 2 : 3;\n"
"X-Generator: Weblate 5.12-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Fòrmat JSON mì-dhligheach"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Fèin-mhothaich"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Gun chead"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Chuirear cus iarrtasan thar na tha ceadaiche"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Iuchair API mhì-dhligheach"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Cuir fios gu obraiche an fhrithealaiche airson iuchair API fhaighinn"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Tadhail air %(url)s a dhfhaighinn iuchair API"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Maille:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Iarrtas mì-dhligheach: tha am paramadair %(name)s a dhìth"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Iarrtas mì-dhligheach: chan eil am paramadair %(name)s na àireamh"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"Iarrtas mì-dhligheach: feumaidh am paramadair %(name)s a bhith <= "
"%(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Iarrtas mì-dhligheach: tha teacsa an iarrtais (%(size)s) thair na crìche "
"de (%(limit)s)"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "Chan eil taic ri %(lang)s"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Chan eil taic ris an fhòrmat %(format)s"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
"Chan eil %(tname)s (%(tcode)s) ri fhaighinn na chànan-amais o %(sname)s "
"(%(scode)s)"
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Chan urrainn dhuinn an teacsa seo eadar-theangachadh: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Tha eadar-theangachaidh fhaidhlichean à comas air an frithealaiche seo."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Iarrtas mì-dhligheach: faidhle falamh"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Iarrtas mì-dhligheach: Cha chuir sinn taic ri fòrmat an fhaidhle"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Ainm faidhle mì-dhligheach"
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Tha molaidhean à comas air an frithealaiche seo."
#: libretranslate/locales/.langs.py:1
msgid "English"
msgstr "Beurla"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albàinis"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabais"
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Asarbaideànais"
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
msgstr "Beangailis"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Bulgarais"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Catalanais"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Sìnis"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Sìnis (thradaiseanta)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Seicis"
#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Danmhairgis"
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Duitsis"
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Esperanto"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "Eastoinis"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Fionnlannais"
#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Fraingis"
#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Gearmailtis"
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Greugais"
#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Eabhra"
#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Hindis"
#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Ungairis"
#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Innd-Innsis"
#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Gaeilge"
#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Eadailtis"
#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Seapanais"
#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Coirèanais"
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
msgstr "Laitbheis"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Liotuainis"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malaidhis"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Nirribhis"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Pearsais"
#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Pòlainnis"
#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portagailis"
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Romàinis"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Ruisis"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slòbhacais"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slòbhainis"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spàinntis"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Suainis"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tàidh"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turcais"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr ""
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Ùrdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Sèirbis"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ucràinis"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Bhiet-Namais"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
msgstr "Faigh liosta nan cànan ris a bheil taic"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
msgstr "Liosta nan cànan"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr "eadar-theangaich"
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
msgstr "Eadar-theangaich teacsa on dàrna cànan gun chànan eile"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Teacsa air eadar-theangachadh"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
msgstr "Iarrtas mì-dhligheach"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr "Mearachd eadar-theangachaidh"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
msgstr "Maille"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
msgstr "Toirmeasg"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
msgstr "Shin thu, a shaoghail!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
msgstr "Teacsa no dhà ri eadar-theangachadh"
#: libretranslate/locales/.swag.py:12
msgid "Source language code"
msgstr "Còd a chanain thùsail"
#: libretranslate/locales/.swag.py:13
msgid "Target language code"
msgstr "Còd a chanain-amais"
#: libretranslate/locales/.swag.py:14
msgid "text"
msgstr "teacsa"
#: 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 ""
"Fòrmat teacsa an tùis:\n"
" * `text` Teacsa lom\n"
" * `html` Markup HTML\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "An àireamh as fheàrr de roghainnean eadar-theangachaidh"
#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Iuchair API"
#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Eadar-theangaich faidhle on dàrna cànan gun chànan eile"
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Faidhle air eadar-theangachadh"
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Am faidhle ri eadar-theangachadh"
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Mothaich do chànan aon teacsa"
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Mothachaidhean"
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Mearachd mothachaidh"
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "An teacsa ri mhothachadh"
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Faigh roghainnean sònraichte a frontend"
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "roghainnean a frontend"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "frontend"
#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Cuir a-null moladh airson piseach a thoirt air eadar-theangachadh"
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Chaidh leis"
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Gun ùghdarrachadh"
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "An teacsa tùsail"
#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "An t-eadar-theangachadh ga mholadh"
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Cànan an teacsa thùsail"
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Cànan an eadar-theangachaidh ga mholadh"
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "beachd thugainn"
#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Còd a chànain"
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Ainm a chànain a leughas daoine (sa Bheurla)"
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Còdan canain-amais ris a chuir sinn taic"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Teacsa(ichean) air eadar-theangachadh"
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Teachdaireachd na mearachd"
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Adhbhar na maille"
#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL an fhaidhle air eadar-theangachadh"
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Luach na h-earbsa"
#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Crìoch ion-chur charactaran dhan chànan seo (innsidh -1 nach bi crìoch "
"air)"
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Crìoch-ùine eadar-theangachadh a frontend"
#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Co-dhiù a bheil stòr-dàta nan iuchraichean API an comas gus nach eil."
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Co-dhiù a bheil feum air iuchair API gus nach eil."
#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Co-dhiù a bheil cur a-null mholaidhean an comas gus nach eil."
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Fòrmatan faidhle ris a bheil taic"
#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Co-dhiù an do shoirbhich leis a cur a-null gus nach do shoirbhich"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "Dèan lethbhreac dhen teacsa"
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
#: libretranslate/templates/app.js.template:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Cha ghabh %(url)s a luchdadh"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Mearachd nach aithne dhuinn"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Chaidh lethbhreac dheth a dhèanamh"
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
"Mòran taing airson do cheartachadh. Thoir an aire nach bi am moladh an "
"sàs sa bhad."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Cha eil cànan ri fhaighinn. An do stàlaich thu na modailean mar bu chòir?"
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
"Cuir a-steach an iuchair API agad. Ma tha iuchair API a dhìth ort, "
"%(instructions)s"
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "brùth air a cheangal “Faigh iuchair API”."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "cuir fios gu obraiche an fhrithealaiche."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
msgid "Free and Open Source Machine Translation API"
msgstr "API saor airson eadar-theangachadh inneil le bun-tùs fosgailte"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API saor airson eadar-theangachadh inneil le bun-tùs fosgailte. "
"Òstaichidh tu fhèin is cleachdaidh far loidhne thu e is tha e furasta a "
"shuidheachadh."
#: libretranslate/templates/index.html:11
msgid "translation"
msgstr "eadar-theangachadh"
#: libretranslate/templates/index.html:11
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Docamaideadh an API"
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Faigh iuchair API"
#: libretranslate/templates/index.html:71
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "Suidhich iuchair API"
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Atharraich an cànan"
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Deasaich"
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Toglaich am modh dorcha/soilleir"
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Leig seachad"
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API eadar-theangachaidh"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Eadar-theangaich teacsa"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Eadar-theangaich faidhlichean"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Eadar-theangaich o"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Cuir na cànanan tùsail is ri eadar-theangachadh an àite a chèile"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Eadar-theangaich gu"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "An teacsa ri eadar-theangachadh"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Sguab às an teacsa"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Mol eadar-theangachadh"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Sguir dheth"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Cuir"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Fòrmatan faidhle ris a chuir sinn taic:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Faidhle"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Thoir am faidhle air falbh"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Eadar-theangaich"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Luchdaich a-nuas"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Iarrtas"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Freagairt"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API airson eadar-theangachadh inneil le bun-tùs fosgailte"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Òstaich thu fhèin e. Comas far loidhne. Furasta a shuidheachadh."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Ceadachas:"
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"Chaidh a dhèanamh le %(heart)s le %(contributors)s s le cumhachd "
"%(engine)s"
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Co-thabhartaichean %(libretranslate)s"
#~ msgid "Basque"
#~ msgstr "Basgais"
#~ msgid "Galician"
#~ msgstr "Gailìsis"

View file

@ -0,0 +1,4 @@
{
"name": "Scottish Gaelic",
"reviewed": true
}

View file

@ -1,4 +1,4 @@
# Translations template for LibreTranslate.
# Galician translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@ -8,9 +8,9 @@ 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: 2023-01-17 09:47+0000\n"
"Last-Translator: gallegonovato <fran-carro@hotmail.es>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-04-20 10:36+0000\n"
"Last-Translator: xuars <yago.rana.gayoso@gmail.com>\n"
"Language-Team: Galician <https://hosted.weblate.org/projects/libretranslate/"
"app/gl/>\n"
"Language: gl\n"
@ -18,71 +18,84 @@ 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.15.1-dev\n"
"Generated-By: Babel 2.11.0\n"
"X-Generator: Weblate 5.11.1-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:60
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Formato JSON non válido"
#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Auto Detección"
#: libretranslate/app.py:193
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Non autorizado"
#: libretranslate/app.py:211
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Demasiadas peticións por enriba do límite"
#: libretranslate/app.py:220
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Chave API non válida"
#: libretranslate/app.py:227
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Contacte coa xerencia do servidor para obter unha chave da API"
#: libretranslate/app.py:229
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Visite %(url)s para obter unha chave API"
#: libretranslate/app.py:269
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Máis amodo:"
#: 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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Solicitude non válida: falta o parámetro %(name)s"
#: libretranslate/app.py:480 libretranslate/app.py:492
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Solicitude inválida: <x>0 0</x> O parámetro non é un número. %(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"Solicitude inválida: <x>0 0</x> O parámetro debe ser &lt;= %(value)s "
"%(name)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Solicitude non válida: solicitude (%(size)s) supera o límite de texto "
"(%(limit)s)"
#: libretranslate/app.py:525 libretranslate/app.py:530
#: libretranslate/app.py:700 libretranslate/app.py:705
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "Non hai soporte para %(lang)s"
#: libretranslate/app.py:536
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Non hai soporte para o formato %(format)s"
#: libretranslate/app.py:544 libretranslate/app.py:568
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@ -91,28 +104,28 @@ msgstr ""
"%(tname)s (%(tcode)s non está dispoñible como idioma a traducir desde "
"%(sname)s (%(scode)s)"
#: libretranslate/app.py:589
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Non se pode traducir: %(text)s"
#: libretranslate/app.py:676 libretranslate/app.py:730
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "A tradución de ficheiros está desactivada neste servidor."
#: libretranslate/app.py:690
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Solicitude non válida: ficheiro baleiro"
#: libretranslate/app.py:693
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Solicitude non válida: o formato do ficheiro non está soportado"
#: libretranslate/app.py:738
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nome de ficheiro non válido"
#: libretranslate/app.py:979
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "As suxestións están desactivadas neste servidor."
@ -121,120 +134,192 @@ msgid "English"
msgstr "Inglés"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albanés"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Árabe"
#: libretranslate/locales/.langs.py:3
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Acerbaixano"
#: libretranslate/locales/.langs.py:4
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
msgstr "Bengalí"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Búlgaro"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Catalán"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Chinés"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "China (tradicional)"
#: 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 "Neerlandé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 "Estoniano"
#: 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 "Alemán"
#: 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 "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 "Xaponé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 "Letón"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Lituano"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malaio"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Noruega"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Farsi"
#: 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 "Portuguese (Brazil)"
msgstr "Portugués (Brasil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Romanía"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Ruso"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Eslovaco"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Esloveno"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Español"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Sueco"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tailandés"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turco"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ucraniano"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbio"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ucraíno"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamita"
msgstr "Vietnam"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -252,7 +337,7 @@ msgstr "traducir"
msgid "Translate text from a language to another"
msgstr "Traducir texto dun idioma a outro"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Texto traducido"
@ -307,171 +392,174 @@ msgstr ""
" * `html`- Marcado HTML\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Número de traduccións alternativas"
#: 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 "Traducir un ficheiro dun idioma a outro"
#: libretranslate/locales/.swag.py:19
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Ficheiro traducido"
#: libretranslate/locales/.swag.py:20
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Ficheiro a traducir"
#: libretranslate/locales/.swag.py:21
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Detectar idioma dun único texto"
#: libretranslate/locales/.swag.py:22
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Deteccións"
#: libretranslate/locales/.swag.py:23
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Erro na 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 "Obter axustes específicos da interface"
#: libretranslate/locales/.swag.py:26
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "axustes da 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 "Enviar unha suxestión para mellorar a tradución"
#: libretranslate/locales/.swag.py:29
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Correcto"
#: libretranslate/locales/.swag.py:30
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Non autorizado"
#: libretranslate/locales/.swag.py:31
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Texto orixinal"
#: libretranslate/locales/.swag.py:32
#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Tradución suxerida"
#: libretranslate/locales/.swag.py:33
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Idioma do texto orixinal"
#: libretranslate/locales/.swag.py:34
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Idioma da tradución suxerida"
#: 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 "Nome do idioma en formato lexible (en Inglés)"
#: libretranslate/locales/.swag.py:38
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Códigos de idioma obxectivo soportados"
#: 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 "Mensaxe de erro"
#: libretranslate/locales/.swag.py:41
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Motivo da ralentización"
#: libretranslate/locales/.swag.py:42
#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL do ficheiro traducido"
#: libretranslate/locales/.swag.py:43
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Valor de fiabilidade"
#: libretranslate/locales/.swag.py:44
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr ""
"Límite de caracteres de entrada par este idioma (-1 significa sen límite)"
#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Límite de caracteres de entrada par este idioma (-1 significa sen límite)"
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Marxe temporal para a tradución na interface"
#: libretranslate/locales/.swag.py:46
#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Se a base de datos de chaves API está activada."
#: libretranslate/locales/.swag.py:47
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Se é precisa unha chave API."
#: libretranslate/locales/.swag.py:48
#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Se está activado o envío de suxestións."
#: libretranslate/locales/.swag.py:49
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Formatos de ficheiro soportados"
#: libretranslate/locales/.swag.py:50
#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Se o envío foi correcto"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:275
#: libretranslate/templates/app.js.template:279
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "Copiar texto"
#: 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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Non se cargou %(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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Erro descoñecido"
#: libretranslate/templates/app.js.template:276
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copiado"
#: libretranslate/templates/app.js.template:320
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
@ -479,37 +567,37 @@ msgstr ""
"Grazas pola túa corrección. Ten en conta que a suxestión non ten efectos "
"inmediatos."
#: libretranslate/templates/app.js.template:423
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Sen idiomas dispoñibles. Instalaches os módulos correctamente?"
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Escribe a túa Chave API. Se precisas unha Chave API, %(instructions)s"
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "preme na ligazón \"Obter Chave API\"."
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "contacta coa xerencia do servidor."
#: 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:347
msgid "Free and Open Source Machine Translation API"
msgstr "API da Tradución por Máquina de código Libre e Aberto"
#: 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 "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API da Tradución por Máquina de código Libre e Aberto. Auto-Hospedado, doado "
"de instalar e sen precisar conexión. Executa o teu propio servidor API en só "
"uns minutos."
"API da Tradución por Máquina de código Libre e Aberto. Auto-Hospedado, "
"doado de instalar e sen precisar conexión. Executa o teu propio servidor "
"API en só uns minutos."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -519,148 +607,169 @@ msgstr "tradución"
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:64
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Docs da API"
#: libretranslate/templates/index.html:66
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Obter Chave 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 "Establecer Chave API"
#: libretranslate/templates/index.html:72
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Cambiar de Idioma"
#: libretranslate/templates/index.html:78
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Editar"
#: libretranslate/templates/index.html:154
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Modo escuro/luz"
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Desbotar"
#: libretranslate/templates/index.html:168
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
"Debido ao abuso de bots, as peticións de traducións están temporalmente "
"limitadas a usuarios cunha clave API válida. Perdón polas molestias!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API de tradución"
#: libretranslate/templates/index.html:172
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Traducir Texto"
#: libretranslate/templates/index.html:176
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Traducir Ficheiros"
#: libretranslate/templates/index.html:182
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Traducir desde"
#: libretranslate/templates/index.html:192
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Intercambiar idiomas de orixe e obxectivo"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Traducir ao"
#: libretranslate/templates/index.html:207
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Texto a traducir"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Eliminar texto"
#: libretranslate/templates/index.html:223
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Suxerir tradución"
#: libretranslate/templates/index.html:227
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Cancelar"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Enviar"
#: libretranslate/templates/index.html:246
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Formatos de ficheiro soportados:"
#: libretranslate/templates/index.html:250
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Ficheiro"
#: libretranslate/templates/index.html:265
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Eliminar ficheiro"
#: libretranslate/templates/index.html:272
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Traduce"
#: libretranslate/templates/index.html:273
#: libretranslate/templates/index.html:317
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Descargar"
#: libretranslate/templates/index.html:292
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Solicitar"
#: libretranslate/templates/index.html:297
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Resposta"
#: libretranslate/templates/index.html:312
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API de Tradución por Máquina de Código Aberto"
#: libretranslate/templates/index.html:313
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Auto-Hospedado. Sen Conexión. Doado de Configurar."
#: libretranslate/templates/index.html:332
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:334
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Licenza:"
#: 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 ""
"Esta API pública só debe ser utilizada para probas, de xeito personal e "
"pouco frecuente. Se vas a usar unha aplicación en produción, por favor "
"%(host_server)s ou %(get_api_key)s."
#: libretranslate/templates/index.html:337
msgid "host your own server"
msgstr "instala o teu propio servidor"
#: libretranslate/templates/index.html:337
msgid "get an API key"
msgstr "obtén unha chave API"
#: libretranslate/templates/index.html:345
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr "Feito con %(heart)s por %(contributors)s e grazas a %(engine)s"
#: libretranslate/templates/index.html:345
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Colaboradoras de %(libretranslate)s"
#~ 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 só debe ser "
#~ "utilizada para probas, de xeito personal"
#~ " e pouco frecuente. Se vas a "
#~ "usar unha aplicación en produción, por"
#~ " favor %(host_server)s ou %(get_api_key)s."
#~ msgid "host your own server"
#~ msgstr "instala o teu propio servidor"
#~ msgid "get an API key"
#~ msgstr "obtén unha chave API"
#~ msgid "Basque"
#~ msgstr "Vasco"
#~ msgid "Galician"
#~ msgstr "Galego"

View file

@ -0,0 +1,4 @@
{
"name": "gl",
"reviewed": false
}

View file

@ -8,232 +8,314 @@ 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"
"PO-Revision-Date: 2023-05-01 11:52+0000\n"
"Last-Translator: Tamir Ben-Arie <tamirben1@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-03-02 13:39+0000\n"
"Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n"
"Language-Team: Hebrew <https://hosted.weblate.org/projects/libretranslate/app/he/>\n"
"Language: he\n"
"Language-Team: Hebrew "
"<https://hosted.weblate.org/projects/libretranslate/app/he/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "פורמט JSON"
msgstr "תבנית ה־JSON שגויה"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "זיהוי אוטומטי"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "לא מורשה"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "יותר מדי בקשות מגבילות הפרות"
msgstr "יותר מדי הפרות מגבלות בקשות"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "מפתח API"
msgstr "מפתח API שגוי"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "צור קשר עם מפעיל השרת כדי לקבל מפתח API"
msgstr "נא ליצור קשר עם מפעילי השרת כדי לקבל מפתח API"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "בקר ב-%(url)s להשגת מפתח API"
msgstr "נא לגשת אל %(url)s כדי להשיג מפתח API"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "בקשה לא חוקית: פרמטר %(name)s חסר"
msgstr "בקשה שגויה: המשתנה %(name)s חסר"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "בקשה שגויה: המשתנה %(name)s הוא לא מספר"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "בקשה שגויה:המשתנה %(name)s חייב להיות קטן או שווה ל־%(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s לא נתמך"
msgstr "%(lang)s לא נתמכת"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "פורמט %(format)s אינו נתמך"
msgstr "התבנית %(format)s לא נתמכת"
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "לא ניתן לתרגם טקסט: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "תרגום קבצים מוגבל בשרת זה."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "בקשה לא חוקית: קובץ ריק"
msgstr "בקשה שגויה: קובץ ריק"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "בקשה לא חוקית: פורמט קובץ לא נתמך"
msgstr "בקשה שגויה: תסדיר קובץ לא נתמך"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "שם הקובץ Invalid"
msgstr "שם הקובץ שגוי"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "הצעות מוגבלות בשרת זה."
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:3
msgid "Azerbaijani"
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:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "סינית מסורתית"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "צ'כיה צ'כיה"
msgstr "צ׳כית"
#: libretranslate/locales/.langs.py:6
#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "דנמרק"
msgstr "דנית"
#: libretranslate/locales/.langs.py:7
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "הולנד הולנדית"
msgstr "הולנדית"
#: libretranslate/locales/.langs.py:8
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "אספרנטו"
#: libretranslate/locales/.langs.py:9
msgid "Finnish"
msgstr "הפינית"
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "אסטונית"
#: libretranslate/locales/.langs.py:10
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "פינית"
#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "צרפתית"
#: libretranslate/locales/.langs.py:11
#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "גרמניה גרמנית"
msgstr "גרמנית"
#: libretranslate/locales/.langs.py:12
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "יווני"
msgstr "יוונית"
#: libretranslate/locales/.langs.py:13
#: libretranslate/locales/.langs.py:19
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 "קוריאה הקוריאנית"
msgid "Hindi"
msgstr "הינדי"
#: libretranslate/locales/.langs.py:21
msgid "Persian"
msgstr "הפרס"
msgid "Hungarian"
msgstr "הונגרית"
#: libretranslate/locales/.langs.py:22
msgid "Polish"
msgstr "פולני"
msgid "Indonesian"
msgstr "אינדונזית"
#: libretranslate/locales/.langs.py:23
msgid "Portuguese"
msgstr "פורטוגזית"
msgid "Irish"
msgstr "אירית"
#: libretranslate/locales/.langs.py:24
msgid "Russian"
msgstr "רוסיה"
msgid "Italian"
msgstr "איטלקית"
#: libretranslate/locales/.langs.py:25
msgid "Slovak"
msgstr "סלובקיה"
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 "Portuguese (Brazil)"
msgstr "פורטוגזית (Brazil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "רומנית"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "רוסית"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "סלובקית"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "סלובנית"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "ספרדית"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "שוודיה"
msgstr "שוודית"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "טאגאלוג"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "תאית"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "טורקיה"
msgstr "טורקית"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "אוקראה"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "אורדו"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "סרבית"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "אוקראינית"
#: libretranslate/locales/.langs.py:48
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"
@ -245,23 +327,23 @@ 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
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
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"
@ -297,210 +379,215 @@ msgid ""
" * `text` - Plain text\n"
" * `html` - HTML markup\n"
msgstr ""
"פורמט טקסט מקור:\n"
"\"טקסט\" - טקסט רגיל\n"
"\"html\" - קוד HTML\n"
"תבנית טקסט מקור:\n"
"„טקסט” - טקסט רגיל\n"
"„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
msgid "Detect the language of a single text"
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: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
msgid "Retrieve frontend specific settings"
msgstr "אחזר הגדרות frontend"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
msgstr "הגדרות frontend"
msgid "Retrieve frontend specific settings"
msgstr "משיכת הגדרות נקודתיות למנשק משתמש"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
msgstr "צד לקוח (frontend)"
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:29
msgid "Success"
msgstr "הצלחה"
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "הצליח"
#: 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
msgid "Suggested translation"
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: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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "טעות לא ידועה"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "שוטרים"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "אין שפות זמינות. האם התקנת נכון את המודלים?"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "לחצו על הקישור \"Get API Key\"."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, 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 +597,141 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"בשל התעללות בבוט, בקשות התרגום מוגבלות באופן זמני למשתמשים עם מפתח API תקף. "
"סליחה על אי הנוחות!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "תרגום API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "תרגום טקסט"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "תרגום קבצים"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "תרגום"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "מקור ושפת היעד"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "לתרגם"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "טקסט לתרגם"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "למחוק טקסט"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "הצעות תרגום"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "ביטול"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "שלח"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "פורמטי קבצים תומכים:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "File"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "הסרת קובץ"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "תרגום"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "הורד Download"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "בקשה"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "תגובה"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "קוד פתוח תרגום API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "מוגן. Offline Capable קל להגדרה."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "חופשי להורדה. תואם להפעלה בלי אינטנרנט. קל להגדרה."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "תורמי %(libretranslate)s"
@ -663,3 +739,25 @@ 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"
#~ msgid "Basque"
#~ msgstr "בסקית"
#~ msgid "Galician"
#~ msgstr "גליסית"

View file

@ -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"
"PO-Revision-Date: 2023-09-23 14:04+0000\n"
"Last-Translator: ShareASmile <aapshergill@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-05-16 03:46+0000\n"
"Last-Translator: Chaitanya Pandey <chaitanyapandey62@gmail.com>\n"
"Language-Team: Hindi <https://hosted.weblate.org/projects/libretranslate/app/"
"hi/>\n"
"Language: hi\n"
"Language-Team: Hindi "
"<https://hosted.weblate.org/projects/libretranslate/app/hi/>\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.12-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Invalid JSON प्रारूप"
msgstr "अमान्य JSON प्रारूप"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "ऑटो"
msgstr "ऑटो डिटेक्ट करें"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "अनधिकृत"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
#, fuzzy
msgid "Too many request limits violations"
msgstr "बहुत से अनुरोध सीमा उल्लंघन"
msgstr "बहुत से सीमा उल्लंघन अनुरोध"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Invalid API key"
msgstr "अमान्य API कुंजी"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "एपीआई कुंजी प्राप्त करने के लिए सर्वर ऑपरेटर से संपर्क करें"
msgstr "API कुंजी प्राप्त करने के लिए कृपया सर्वर ऑपरेटर से संपर्क करें"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "यात्रा %(url)s एक API कुंजी प्राप्त करने के लिए"
msgstr "API कुंजी प्राप्त करने के लिए %(url)s पर जाएं"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "नीचे:"
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "अवैध अनुरोध: लापता %(name)s पैरामीटर"
msgstr "अमान्य अनुरोध: %(name)s पैरामीटर अनुपलब्ध है"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "अमान्य अनुरोध: %(name)s पैरामीटर संख्या नहीं है"
#: libretranslate/app.py:669
#, fuzzy, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "अमान्य अनुरोध: %(name)s पैरामीटर &lt;= %(value)s होना चाहिए"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s समर्थित नहीं है"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s प्रारूप समर्थित नहीं है"
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "पाठ का अनुवाद नहीं कर सकते: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "इस सर्वर पर फ़ाइलें अनुवाद अक्षम हैं।."
msgstr "इस सर्वर पर फ़ाइलें अनुवाद अक्षम हैं।"
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "अमान्य अनुरोध: खाली फ़ाइल"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "अमान्य अनुरोध: फ़ाइल प्रारूप समर्थित नहीं है"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Invalid filename"
msgstr "अमान्य फ़ाइलनाम"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "इस सर्वर पर सुझाव अक्षम हैं।."
@ -118,118 +131,190 @@ 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 "एस्परांतो"
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 "Portuguese (Brazil)"
msgstr "पुर्तगाली (ब्राज़ील)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "रोमानियाई"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "रूसी"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "स्लोवाक"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "स्लोवेनियाई"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "स्पेनिश"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "स्वीडिश"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "टैगलॉग"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "थाई"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "तुर्की"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "यूनानी"
msgstr "यूक्रेनी"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "उर्दू"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "सर्बियाई"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "यूक्रेनियन"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "वियतनामी"
@ -249,7 +334,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:233
msgid "Translated text"
msgstr "अनुवादित पाठ"
@ -263,15 +348,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"
@ -291,7 +376,7 @@ msgstr "पाठ"
#: libretranslate/locales/.swag.py:15
msgid "html"
msgstr "एचटीएमएल"
msgstr "html"
#: libretranslate/locales/.swag.py:16
msgid ""
@ -300,211 +385,218 @@ msgid ""
" * `html` - HTML markup\n"
msgstr ""
"स्रोत पाठ का प्रारूप:\n"
"* `text` - सादा पाठ\n"
"एचटीएमएल\n"
" * `पाठ` - सादा पाठ\n"
" * `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
msgid "Retrieve frontend specific settings"
msgstr "Retrieve frontend विशिष्ट सेटिंग्स"
#: libretranslate/locales/.swag.py:26
msgid "frontend settings"
msgstr "फ्रंटएंड सेटिंग्स"
msgid "Retrieve frontend specific settings"
msgstr "Frontend विशिष्ट सेटिंग्स पुनर्प्राप्त करें"
#: libretranslate/locales/.swag.py:27
msgid "frontend"
msgstr "फ्रंटएंड"
msgid "frontend settings"
msgstr "Frontend सेटिंग्स"
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "Frontend"
#: 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
msgid "Translated text(s)"
msgstr "अनुवादित पाठ(s)"
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "अनुवादित पाठ(ओं)"
#: libretranslate/locales/.swag.py:41
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 "अनुवादित फ़ाइल यूआरएल"
msgid "Reason for slow down"
msgstr "गति धीमी होने का कारण"
#: libretranslate/locales/.swag.py:43
msgid "Confidence value"
msgstr "गोपनीयता नीति"
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:45
msgid "Frontend translation timeout"
msgstr "फ्रंटेंड अनुवाद टाइमआउट"
#: libretranslate/locales/.swag.py:46
msgid "Whether the API key database is enabled."
msgstr "क्या एपीआई कुंजी डेटाबेस सक्षम है।."
msgid "Frontend translation timeout"
msgstr "Frontend अनुवाद टाइमआउट"
#: libretranslate/locales/.swag.py:47
msgid "Whether an API key is required."
msgstr "क्या एक एपीआई कुंजी की आवश्यकता है।."
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: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 "चाहे जमा करना सफल हो"
msgstr "क्या सबमिशन सफल रहा"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:286
#: libretranslate/templates/app.js.template:290
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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
#: libretranslate/templates/app.js.template:412
#: libretranslate/templates/app.js.template:423
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "अज्ञात त्रुटि"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copied"
msgstr "कॉपी किया गया"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "कोई भाषा उपलब्ध नहीं है। क्या आप मॉडल को सही ढंग से स्थापित कर सकते हैं?"
msgstr ""
"कोई भाषा उपलब्ध नहीं है। क्या आप मॉडल को सही ढंग से स्थापित कर सकते हैं?"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "\"Get API कुंजी\" लिंक दबाएँ।."
msgstr "\"API कुंजी प्राप्त करें\" लिंक दबाएं।"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
msgid "Free and Open Source Machine Translation API"
msgstr "फ्री एंड ओपन सोर्स मशीन ट्रांसलेशन एपीआई"
msgstr "मुफ़्त और मुक्त स्रोत मशीन अनुवाद API"
#: libretranslate/templates/index.html:10
#: libretranslate/templates/index.html:31
msgid ""
"Free and Open Source Machine Translation API. Self-hosted, offline "
"Free and Open Source Machine Translation API. Free to download, 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"
@ -512,156 +604,145 @@ msgstr "अनुवाद"
#: 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 दस्तावेज़"
#: libretranslate/templates/index.html:69
msgid "GitHub"
msgstr "गिटहब"
msgid "Get API Key"
msgstr "API प्राप्त करें कुंजी"
#: libretranslate/templates/index.html:71
msgid "Set API Key"
msgstr "एपीआई सेट कुंजी"
msgid "GitHub"
msgstr "GitHub"
#: libretranslate/templates/index.html:73
msgid "Set API Key"
msgstr "API सेट कुंजी"
#: 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 "Dismis"
msgstr "खारिज"
#: libretranslate/templates/index.html:171
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"बोट के दुरुपयोग के कारण, अनुवाद अनुरोध अस्थायी रूप से उपयोगकर्ताओं को एक वैध"
" एपीआई कुंजी के साथ सीमित हैं। अज्ञानता के लिए क्षमा करें!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "अनुवाद एपीआई"
msgstr "अनुवाद API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "पाठ अनुवाद"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "फ़ाइलें अनुवाद"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "से अनुवाद करें"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "स्वैप स्रोत और लक्ष्य भाषाओं"
msgstr "स्रोत और लक्ष्य भाषाओं की अदला-बदली करें"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "में अनुवाद"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "अनुवाद करने के लिए पाठ"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "पाठ संपादित करें"
msgstr "पाठ हटाएँ"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "अनुवाद सुझा"
msgstr "अनुवाद सुझाएँ"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "रद्द करना"
msgstr "रद्द करें"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "भेजें"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "समर्थित फ़ाइल प्रारूप:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "फ़ाइल"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "फ़ाइल निकालें"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "अनुवाद"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "डाउनलोड"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "अनुरोध"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "जवाब"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "ओपन सोर्स मशीन अनुवाद एपीआई"
msgstr "ओपन सोर्स मशीन अनुवाद API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "स्व-होस्टेड। ऑफलाइन सक्षम। सेटअप करने में आसान।."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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 "एपीआई कुंजी प्राप्त करें"
#: libretranslate/templates/index.html:348
#: libretranslate/templates/index.html:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s योगदानकर्ता"
@ -669,3 +750,26 @@ 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 कुंजी प्राप्त करें"
#~ msgid "Basque"
#~ msgstr "बास्क"
#~ msgid "Galician"
#~ msgstr "गैलिशियन"

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
{
"name": "Hungarian",
"reviewed": false
}
"reviewed": true
}

View file

@ -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"
"PO-Revision-Date: 2023-09-06 11:02+0000\n"
"Last-Translator: Reza Almanda <rezaalmanda27@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-03-24 11:28+0000\n"
"Last-Translator: Erol Joudy Tooy <erol.tooy@gmail.com>\n"
"Language-Team: Indonesian <https://hosted.weblate.org/projects/libretranslate/app/id/>\n"
"Language: id\n"
"Language-Team: Indonesian "
"<https://hosted.weblate.org/projects/libretranslate/app/id/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Format JSON tidak valid"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Deteksi Otomatis"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Tidak Diizinkan"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Terlalu banyak pelanggaran batas permintaan"
msgstr "Melebihi batas permintaan yang diijinkan"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Kunci API tidak valid"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Silakan hubungi operator server untuk mendapatkan kunci API"
msgstr "Silakan hubungi operator server untuk memperoleh kunci API"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Kunjungi %(url)s untuk mendapatkan kunci API"
msgstr "Kunjungi %(url)s untuk memperoleh kunci API"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Pelan-pelan:"
msgstr "Perlahan:"
#: 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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Permintaan tidak valid: parameter %(name)s bukan berupa angka"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Permintaan tidak valid: parameter %(name)s harus &lt;= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s tidak didukung"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, 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:787
#, 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:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Terjemahan file dinonaktifkan di server ini."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Permintaan tidak valid: file kosong"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Permintaan tidak valid: format file tidak didukung"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nama file tidak valid"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Saran dinonaktifkan di server ini."
@ -120,120 +130,192 @@ 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 "Portuguese (Brazil)"
msgstr "Portugis (Brazil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Login"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Rusia"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovak"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Login"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spanyol"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Swedia"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Login"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Login"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turki"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukraina"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Login"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Login"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Login"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnam"
msgstr "Login"
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -251,7 +333,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:233
msgid "Translated text"
msgstr "Teks yang diterjemahkan"
@ -306,203 +388,210 @@ 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Kesalahan tidak diketahui"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Disalin"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "tekan tautan \"Get API Key\"."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, 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 "
@ -517,152 +606,142 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Karena penyalahgunaan bot, permintaan terjemahan terbatas pada pengguna "
"dengan kunci API yang valid. Maaf untuk ketidaknyamanan!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Terjemahkan Teks"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Terjemahkan File"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Terjemahkan dari"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Sumber swap dan bahasa target"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Terjemahkan ke"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Teks untuk diterjemahkan"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Hapus teks"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Sarankan terjemahan"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Batal"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Kirim"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Format file yang didukung:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "File"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Hapus file"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Terjemahkan"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Unduh"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Minta"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Respons"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API documentation"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Hosting mandiri. Bisa Offline. Mudah Disiapkan."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Kontributor %(libretranslate)s"
@ -670,3 +749,26 @@ 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"
#~ msgid "Basque"
#~ msgstr "Login"
#~ msgid "Galician"
#~ msgstr "Login"

View file

@ -8,110 +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"
"PO-Revision-Date: 2023-01-07 13:03+0000\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-03-01 18:02+0000\n"
"Last-Translator: Piero Toffanin <pt@masseranolabs.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/libretranslate/app/it/>\n"
"Language: it\n"
"Language-Team: Italian "
"<https://hosted.weblate.org/projects/libretranslate/app/it/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Formato JSON non valido"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Rileva Automaticamente"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Non autorizzato"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Violazione da troppe richieste"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Chiave API non valida"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
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:373
#, 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:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Richiesta invalida: parametro %(name)s non è un numero"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Richiesta invalida: parametro %(name)s deve essere <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s non è supportato"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, 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:735 libretranslate/app.py:763
#, 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:787
#, 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:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "La traduzione dei files è disabilitata su questo server."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Richiesta non valida: file vuoto"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Richiesta non valida: formato del file non supportato"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nome del file non valido"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "I suggerimenti sono disabilitati su questo server."
@ -120,118 +131,190 @@ msgid "English"
msgstr "Inglese"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Albanese"
#: 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 "Bengali"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Bulgaro"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Catalano"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Cinese"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Cinese (tradizionale)"
#: 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 "Estone"
#: 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 "Lettone"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Lituano"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Malese"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Norvegese"
#: 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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumeno"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Russo"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovacco"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Sloveno"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spagnolo"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Svedese"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Tailandese"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turco"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ucraino"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbo"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ucraino"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamita"
@ -251,7 +334,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:233
msgid "Translated text"
msgstr "Testo tradotto"
@ -306,210 +389,214 @@ msgstr ""
" * `html` - HTML markup\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Numero preferito di traduzioni alternative"
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Errore sconosciuto"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copiato"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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:536
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:536
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:347
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. Free to download, 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."
"API di traduzione automatica libera e open source. Gratis da scaricare, "
"funziona anche offline e facile da configurare. Fai girare il tuo server "
"API in pochi minuti."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -519,155 +606,171 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr "A causa di abusi di bots, le richieste di traduzione sono temporaneamente limitate agli utenti in possesso di una chiave API valida. Ci scusiamo per l'inconveniente!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API di Traduzione"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Traduci Testo"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Traduci Files"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Traduci da"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Scambia lingua sorgente e di destinazione"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Traduci in"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Testo da tradurre"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Elimina testo"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Suggerisci una traduzione"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Annulla"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Invia"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Formati files supportati:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "File"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Rimuovi file"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Traduci"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Scarica"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Richiesta"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Risposta"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API di Traduzione Automatica Open Source"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "Self-Hosted. Funziona anche offline. Facile da Configurare."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Gratis da scaricare. Funziona offline. Facile da Configurare."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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"
msgstr "Realizzato con %(heart)s da %(contributors)s e grazie a %(engine)s"
#: libretranslate/templates/index.html:348
#: libretranslate/templates/index.html:354
#, 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"
#~ msgid "Basque"
#~ msgstr "Basco"
#~ msgid "Galician"
#~ msgstr "Galiziano"

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
{
"name": "Japanese",
"reviewed": false
}
"reviewed": true
}

View file

@ -1,4 +1,4 @@
# Translations template for LibreTranslate.
# Kabyle translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@ -8,9 +8,9 @@ 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: 2023-01-23 15:12+0000\n"
"Last-Translator: Selyan Sliman Amiri <selyan.kab@gmail.com>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-05-13 12:01+0000\n"
"Last-Translator: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>\n"
"Language-Team: Kabyle <https://hosted.weblate.org/projects/libretranslate/"
"app/kab/>\n"
"Language: kab\n"
@ -18,69 +18,80 @@ 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"
"Generated-By: Babel 2.11.0\n"
"X-Generator: Weblate 5.12-dev\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:60
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Amasal JSON d arameɣtu"
#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Tifin tawurmant"
#: libretranslate/app.py:193
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Ur yettusireg ara"
#: libretranslate/app.py:211
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Aṭas n uɛeddi deg tilas n ussuter"
#: libretranslate/app.py:220
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Tasarut API d tarameɣtut"
#: libretranslate/app.py:227
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Ttxil-k·m, nermes amahal n uqeddac i wawway n tsarut API"
#: libretranslate/app.py:229
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Rzu ɣer %(url)s i wawway n tsarut API"
#: libretranslate/app.py:269
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Taẓayt:"
#: 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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Assuter arameɣtu: ixuṣṣ uɣewwar %(name)s"
#: libretranslate/app.py:480 libretranslate/app.py:492
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Asuter ur yettwaqbal ara: asefran %(name)s mačči d uṭun"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Asuter ur yettwaqbal ara: asefran %(name)s yessefk ad yili d <= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Assuter d arameɣtu: assuter(%(size)s) iɛedda tilas n uḍris (%(limit)s)"
#: libretranslate/app.py:525 libretranslate/app.py:530
#: libretranslate/app.py:700 libretranslate/app.py:705
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s ur yettusefrak ara"
#: libretranslate/app.py:536
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "Amasal %(format)s ur yettusefrak ara"
#: libretranslate/app.py:544 libretranslate/app.py:568
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
@ -89,28 +100,28 @@ msgstr ""
"%(tname)s (%(tcode)s) ur yelli ara am tutlayt tasaḍast n %(sname)s "
"(%(scode)s)"
#: libretranslate/app.py:589
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Ur yizmir asuqel n uḍṛis: %(text)s"
#: libretranslate/app.py:676 libretranslate/app.py:730
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Asuqqel n yifuyla yensa ɣef uqeddac-a."
#: libretranslate/app.py:690
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Assuter arameɣtu: afaylu d ilem"
#: libretranslate/app.py:693
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Assuter d arameɣtu: amasal n ufaylu ur yettusefrak ara"
#: libretranslate/app.py:738
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Isem n ufaylu d armeɣtu"
#: libretranslate/app.py:979
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Isumar nsan ɣef uqeddac-a."
@ -119,118 +130,190 @@ msgid "English"
msgstr "Taglizit"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr "Talbanit"
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Taɛrabt"
#: libretranslate/locales/.langs.py:3
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Tazerbiǧanit"
#: libretranslate/locales/.langs.py:4
#: libretranslate/locales/.langs.py:5
msgid "Bengali"
msgstr "Tabengalit"
#: libretranslate/locales/.langs.py:6
msgid "Bulgarian"
msgstr "Tabulgarit"
#: libretranslate/locales/.langs.py:7
msgid "Catalan"
msgstr "Takaṭalant"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Tacinwatt"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Tacinwat (tamansayt)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tačikit"
#: libretranslate/locales/.langs.py:6
#: libretranslate/locales/.langs.py:11
msgid "Danish"
msgstr "Tadanit"
#: libretranslate/locales/.langs.py:7
#: libretranslate/locales/.langs.py:12
msgid "Dutch"
msgstr "Tahulandit"
#: libretranslate/locales/.langs.py:8
#: libretranslate/locales/.langs.py:13
msgid "Esperanto"
msgstr "Taspirantit"
#: libretranslate/locales/.langs.py:9
#: libretranslate/locales/.langs.py:14
msgid "Estonian"
msgstr "Tasṭunit"
#: libretranslate/locales/.langs.py:15
msgid "Finnish"
msgstr "Tafinit"
#: libretranslate/locales/.langs.py:10
#: libretranslate/locales/.langs.py:16
msgid "French"
msgstr "Tafṛansist"
#: libretranslate/locales/.langs.py:11
#: libretranslate/locales/.langs.py:17
msgid "German"
msgstr "Talmanit"
#: libretranslate/locales/.langs.py:12
#: libretranslate/locales/.langs.py:18
msgid "Greek"
msgstr "Tagrigit"
#: libretranslate/locales/.langs.py:13
#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Taɛebranit"
#: libretranslate/locales/.langs.py:14
#: libretranslate/locales/.langs.py:20
msgid "Hindi"
msgstr "Tahendit"
#: libretranslate/locales/.langs.py:15
#: libretranslate/locales/.langs.py:21
msgid "Hungarian"
msgstr "Tahungaṛit"
#: libretranslate/locales/.langs.py:16
#: libretranslate/locales/.langs.py:22
msgid "Indonesian"
msgstr "Tandunizit"
#: libretranslate/locales/.langs.py:17
#: libretranslate/locales/.langs.py:23
msgid "Irish"
msgstr "Tirlandit"
#: libretranslate/locales/.langs.py:18
#: libretranslate/locales/.langs.py:24
msgid "Italian"
msgstr "Taṭelyanit"
#: libretranslate/locales/.langs.py:19
#: libretranslate/locales/.langs.py:25
msgid "Japanese"
msgstr "Tajapunit"
#: libretranslate/locales/.langs.py:20
#: libretranslate/locales/.langs.py:26
msgid "Korean"
msgstr "Takurit"
#: libretranslate/locales/.langs.py:21
#: libretranslate/locales/.langs.py:27
msgid "Latvian"
msgstr "Talitunit"
#: libretranslate/locales/.langs.py:28
msgid "Lithuanian"
msgstr "Talitwanit"
#: libretranslate/locales/.langs.py:29
msgid "Malay"
msgstr "Tamalayt"
#: libretranslate/locales/.langs.py:30
msgid "Norwegian"
msgstr "Tanurvijit"
#: libretranslate/locales/.langs.py:31
msgid "Persian"
msgstr "Tafarsit"
#: libretranslate/locales/.langs.py:22
#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Tapulunit"
#: libretranslate/locales/.langs.py:23
#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Tapurtugit"
#: libretranslate/locales/.langs.py:24
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr "Tapurtugit (Brizil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Tarumanit"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Tarusit"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Tasluvakt"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Tasluvinit"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Taspenyulit"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Taswidit"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tatagalugt"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Taṭaylandit"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Taṭurkit"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Takrinit"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Turdut"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Tasiṛbit"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Tukranit"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Tavyiṭnamit"
@ -250,7 +333,7 @@ msgstr "suqel"
msgid "Translate text from a language to another"
msgstr "Asuqqel n uḍris seg tutlayt ɣer tayeḍ"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Aḍris yettwasuqqlen"
@ -305,205 +388,210 @@ msgstr ""
" * `html` - Taṛekkazt HTML\n"
#: libretranslate/locales/.swag.py:17
msgid "Preferred number of alternative translations"
msgstr "Amḍan-ik·im ufrin n tsuqilin timlellayin"
#: libretranslate/locales/.swag.py:18
msgid "API key"
msgstr "Tasarutt API"
#: libretranslate/locales/.swag.py:18
#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Asuqqel n ufaylu seg tutlayt ɣer tayeḍ"
#: libretranslate/locales/.swag.py:19
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Afaylu yettwasuqqlen"
#: libretranslate/locales/.swag.py:20
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Afaylu ara yettwasuqqlen"
#: libretranslate/locales/.swag.py:21
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Tifin n tutlayt n kra n uḍris"
#: libretranslate/locales/.swag.py:22
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Tifin"
#: libretranslate/locales/.swag.py:23
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Tuccḍa deg tifin"
#: libretranslate/locales/.swag.py:24
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Aḍris ara yettwafen"
#: libretranslate/locales/.swag.py:25
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Err-d iɣewwaren imaẓlayen n ugrudem"
#: libretranslate/locales/.swag.py:26
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "iɣewwaren n ugrudem"
#: libretranslate/locales/.swag.py:27
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "agrudem"
#: libretranslate/locales/.swag.py:28
#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Azen asumer i usnerni n tsuqqilt"
#: libretranslate/locales/.swag.py:29
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Awwaḍ"
#: libretranslate/locales/.swag.py:30
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ur yettusireg ara"
#: libretranslate/locales/.swag.py:31
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Aḍris aɣbalu"
#: libretranslate/locales/.swag.py:32
#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Tasuqqilt i d-yettwasumren"
#: libretranslate/locales/.swag.py:33
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Tutlayt n uḍris aɣbalu"
#: libretranslate/locales/.swag.py:34
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Tutlayt n tsuqqilt i d-yettwasumren"
#: libretranslate/locales/.swag.py:35
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "tamawt"
#: libretranslate/locales/.swag.py:36
#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Tangalt n tutlayt"
#: libretranslate/locales/.swag.py:37
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Isem n tutlayt igezzu umdan (s teglizit)"
#: libretranslate/locales/.swag.py:38
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Tingalin n tutlayin tisaḍasin i yettwasefraken"
#: libretranslate/locales/.swag.py:39
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Aḍris(iḍrisen) yettwasuqqlen"
#: libretranslate/locales/.swag.py:40
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Izen n tuccḍa"
#: libretranslate/locales/.swag.py:41
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Ssebba n taẓayt"
#: libretranslate/locales/.swag.py:42
#: libretranslate/locales/.swag.py:43
msgid "Translated file url"
msgstr "URL n ufaylu i yettwasuqqlen"
#: libretranslate/locales/.swag.py:43
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Azal n teflest"
#: libretranslate/locales/.swag.py:44
#: libretranslate/locales/.swag.py:45
msgid "Character input limit for this language (-1 indicates no limit)"
msgstr "Talast n unekcum n yisekkilen i tutlayt-a (-1 ur d-iskan kra n talast)"
#: libretranslate/locales/.swag.py:45
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Akud n tsuqqilt ɣef ugrudem"
#: libretranslate/locales/.swag.py:46
#: libretranslate/locales/.swag.py:47
msgid "Whether the API key database is enabled."
msgstr "Yeskan ma yella taffa n yisefka n tsura API termed."
#: libretranslate/locales/.swag.py:47
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Yeskan-d ma tettwasra tasarut n API."
#: libretranslate/locales/.swag.py:48
#: libretranslate/locales/.swag.py:49
msgid "Whether submitting suggestions is enabled."
msgstr "Yeskan ma yella tuzna n yisumar termed."
#: libretranslate/locales/.swag.py:49
#: libretranslate/locales/.swag.py:50
msgid "Supported files format"
msgstr "Imasalen n yifuyla i yettwasefraken"
#: libretranslate/locales/.swag.py:50
#: libretranslate/locales/.swag.py:51
msgid "Whether submission was successful"
msgstr "Ma yella tuzna tɛedda"
#: libretranslate/templates/app.js.template:31
#: libretranslate/templates/app.js.template:275
#: libretranslate/templates/app.js.template:279
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
msgid "Copy text"
msgstr "Nɣel aḍris"
#: 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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "D awezɣi asali n %(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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Tuccḍa d tarussint"
#: libretranslate/templates/app.js.template:276
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Yettwanɣel"
#: libretranslate/templates/app.js.template:320
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr "Tanemmirt ɣef useɣti. Ẓer belli asumer ur iteṭṭef ara imir kan."
#: libretranslate/templates/app.js.template:423
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Ulac tutlayin i yellan. Tesbeddeḍ tineɣrufin akken iwata?"
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr "Sekcem tasarut-ik•im API. Ma yella tesriḍ tasarut API, %(instructions)s"
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "sit ɣef useɣwen \"Awi tasarut API\"."
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "nermes amahal n uqeddac."
#: 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:347
msgid "Free and Open Source Machine Translation API"
msgstr "API n tsuqqilt tawurmant tilellit, n uɣbalu yeldin"
#: 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 "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
"API n tsuqqilt tawurmant tilellit, n uɣbalu yeldin. Yezdeɣ i yiman-is, s war "
"tuqqna, fessus i usebded. Senker aqeddac-ik•im API deg kra n tesdatin."
"API n tsuqqilt tawurmant tilellit, n uɣbalu yeldin. Yezdeɣ i yiman-is, s "
"war tuqqna, fessus i usebded. Senker aqeddac-ik·im API deg kra n "
"tesdatin."
#: libretranslate/templates/index.html:11
msgid "translation"
@ -513,149 +601,171 @@ msgstr "tasuqqilt"
msgid "api"
msgstr "api"
#: libretranslate/templates/index.html:64
#: libretranslate/templates/index.html:67
msgid "API Docs"
msgstr "Tasemlit API"
#: libretranslate/templates/index.html:66
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Awi tasarut 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 "Sbadu tasarut API"
#: libretranslate/templates/index.html:72
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Beddel tutlayt"
#: libretranslate/templates/index.html:78
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Ẓreg"
#: libretranslate/templates/index.html:154
#: libretranslate/templates/index.html:83
msgid "Toggle dark/light mode"
msgstr "Uɣal ɣer uskar aberkan neɣ aceɛlal"
#: libretranslate/templates/index.html:159
msgid "Dismiss"
msgstr "Zgel"
#: libretranslate/templates/index.html:168
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
"Ɣef lǧal n tḥeqranit n iṛubuyen, issutren n tsuqilt ttwalessen seg leɛḍil i "
"yiseqdacen yesɛan kan tasarut API tameɣtut. Suref-t-aɣ ɣef aya!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API n usuqqel"
#: libretranslate/templates/index.html:172
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Suqqel aḍris"
#: libretranslate/templates/index.html:176
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Suqqel ifuyla"
#: libretranslate/templates/index.html:182
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Suqqel seg"
#: libretranslate/templates/index.html:192
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Semmeskel aɣbalu d tutlayt tasaḍast"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Suqqel deg"
msgstr "Suqqel ɣer"
#: libretranslate/templates/index.html:207
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Aḍris ara yettwasuqqlen"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Kkes aḍris"
#: libretranslate/templates/index.html:223
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Sumer tasuqqilt"
#: libretranslate/templates/index.html:227
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Sefsex"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Azen"
#: libretranslate/templates/index.html:246
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Imasalen n ufaylu i yettwasefraken:"
#: libretranslate/templates/index.html:250
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Afaylu"
#: libretranslate/templates/index.html:265
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Kkes afaylu"
#: libretranslate/templates/index.html:272
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Suqqel"
#: libretranslate/templates/index.html:273
#: libretranslate/templates/index.html:317
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Sader"
#: libretranslate/templates/index.html:292
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Assuter"
#: libretranslate/templates/index.html:297
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Tiririt"
#: libretranslate/templates/index.html:312
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API n usuqqel awurman n uɣbalu yeldin"
#: libretranslate/templates/index.html:313
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Yettwasezdeɣ i yiman-is. Iteddu s war tuqqna. Fessus i usesteb."
#: libretranslate/templates/index.html:332
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:334
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Turagt:"
#: 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-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 "
"%(host_server)s neɣ %(get_api_key)s."
#: libretranslate/templates/index.html:337
msgid "host your own server"
msgstr "Sezdeɣ aqeddac inek•inem"
#: libretranslate/templates/index.html:337
msgid "get an API key"
msgstr "Awi tasarut API"
#: libretranslate/templates/index.html:345
#: libretranslate/templates/index.html:354
#, 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
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "Imttekkiyen n %(libretranslate)s"
#~ msgid "Vietnamese"
#~ msgstr "Tavyiṭnamit"
#~ 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-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 "
#~ "%(host_server)s neɣ %(get_api_key)s."
#~ msgid "host your own server"
#~ msgstr "Sezdeɣ aqeddac inek·inem"
#~ msgid "get an API key"
#~ msgstr "Awi tasarut API"
#~ msgid "Basque"
#~ msgstr "Tabaskit"
#~ msgid "Galician"
#~ msgstr "Tagalisyant"

View file

@ -0,0 +1,675 @@
# Translations template for LibreTranslate.
# Copyright (C) 2025 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.7.1\n"
"Report-Msgid-Bugs-To: https://github.com/LibreTranslate/LibreTranslate/issues\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2025-05-25 19:35+0500\n"
"Last-Translator: AnmiTaliDev <anmitali198@gmail.com>\n"
"Language-Team: \n"
"Language: kk_KZ\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"
"X-Generator: Poedit 3.6\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "JSON форматы дұрыс емес"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Тілді автоматты анықтау"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Рұқсат етілмеген"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Сұраныс шектеулерін тым көп бұзу"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "API кілті жарамсыз"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "API кілтін алу үшін сервер әкімшісіне хабарласыңыз"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "API кілтін алу үшін мына мекенжайға кіріңіз: %(url)s"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Баяулау:"
#: libretranslate/app.py:657 libretranslate/app.py:659 libretranslate/app.py:661 libretranslate/app.py:882 libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208 libretranslate/app.py:1210 libretranslate/app.py:1212 libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Жарамсыз сұраныс: %(name)s параметрі жетіспейді"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "Жарамсыз сұрау: %(name)s параметрі сан емес"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Жарамсыз сұрау: %(name)s параметрі %(value)s мәнінен кем немесе тең болуы керек"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "Жарамсыз сұрау: сұраныс (%(size)s) мәтін шегінен (%(limit)s) асып кетті"
#: libretranslate/app.py:715 libretranslate/app.py:720 libretranslate/app.py:897 libretranslate/app.py:902 libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s тілі қолдау таппайды"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s пішімі қолдау таппайды"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid "%(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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Мәтінді аудару мүмкін емес: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Бұл серверде файлдарды аудару өшірілген."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Жарамсыз сұрау: бос файл"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Жарамсыз сұрау: файл пішімі қолдау таппайды"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Файл атауы жарамсыз"
#: libretranslate/app.py:1193
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 "Эстондық тілі"
msgid "Finnish"
msgstr "Фин тілі"
msgid "French"
msgstr "Француз тілі"
msgid "German"
msgstr "Неміс тілі"
msgid "Greek"
msgstr "Грек тілі"
msgid "Hebrew"
msgstr "Иврит тілі"
msgid "Hindi"
msgstr "Хинди тілі"
msgid "Hungarian"
msgstr "Венгр тілі"
msgid "Indonesian"
msgstr "Индонезия тілі"
msgid "Irish"
msgstr "Ирланд тілі"
msgid "Italian"
msgstr "Итальян тілі"
msgid "Japanese"
msgstr "Жапон тілі"
msgid "Korean"
msgstr "Кәріс тілі"
msgid "Latvian"
msgstr "Латыш тілі"
msgid "Lithuanian"
msgstr "Литва тілі"
msgid "Malay"
msgstr "Малай тілі"
msgid "Norwegian"
msgstr "Норвег тілі"
msgid "Persian"
msgstr "Парсы тілі"
msgid "Polish"
msgstr "Поляк тілі"
msgid "Portuguese"
msgstr "Португал тілі"
msgid "Portuguese (Brazil)"
msgstr "Португал тілі (Бразилия)"
msgid "Romanian"
msgstr "Румын тілі"
msgid "Russian"
msgstr "Орыс тілі"
msgid "Slovak"
msgstr "Словак тілі"
msgid "Slovenian"
msgstr "Словен тілі"
msgid "Spanish"
msgstr "Испан тілі"
msgid "Swedish"
msgstr "Швед тілі"
msgid "Tagalog"
msgstr "Тагалог тілі"
msgid "Thai"
msgstr "Тай тілі"
msgid "Turkish"
msgstr "Түрік тілі"
msgid "Ukranian"
msgstr "Украин тілі\" # ← Тут ошибка в оригинале! Правильно msgid \"Ukrainian"
msgid "Urdu"
msgstr "Урду тілі"
msgid "Serbian"
msgstr "Серб тілі"
msgid "Ukrainian"
msgstr "Украин тілі"
#: libretranslate/locales/.langs.py:48
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:233
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"
" * `text` - Қарапайым мәтін\n"
" * `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: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 "Аударылған файл сілтемесі"
#: 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:294 libretranslate/templates/app.js.template:298
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:281 libretranslate/templates/app.js.template:351 libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "%(url)s жүктелмеді"
#: libretranslate/templates/app.js.template:272 libretranslate/templates/app.js.template:342 libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Белгісіз қате"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Көшірілді"
#: libretranslate/templates/app.js.template:339
msgid "Thanks for your correction. Note the suggestion will not take effect right away."
msgstr "Түзетулеріңіз үшін рахмет. Ұсыныс бірден қолданылмайтынын ескеріңіз."
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Тілдер қолжетімді емес. Модельдерді дұрыс орнаттыңыз ба?"
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "\"API кілтін алу\" сілтемесін басыңыз."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "сервер әкімшісіне хабарласыңыз."
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27 libretranslate/templates/index.html:347
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. Free to download, 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 "GitHub"
#: 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:177
msgid "Due to bot abuse, translation requests are temporarily limited to users with a valid API key. Sorry for the inconvenience!"
msgstr "Из-за злоупотреблений со стороны ботов, запросы на перевод временно доступны только пользователям с действительным ключом API. Приносим извинения за неудобства!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API перевода"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Перевести текст"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Перевести файлы"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Перевести с"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Поменять языки местами"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Перевести на"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Текст для перевода"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Удалить текст"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Предложить перевод"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Отмена"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Отправить"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Поддерживаемые форматы файлов:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Файл"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Удалить файл"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Перевести"
#: libretranslate/templates/index.html:287 libretranslate/templates/index.html:331
msgid "Download"
msgstr "Скачать"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Запрос"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Ответ"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Открытый API для машинного перевода"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Бесплатно. Работает офлайн. Лёгкая установка."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Лицензия:"
#: libretranslate/templates/index.html:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s үлес қосушылары"

View file

@ -0,0 +1,4 @@
{
"name": "Kazakh",
"reviewed": false
}

View file

@ -8,105 +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: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2023-06-19 20:49+0000\n"
"Last-Translator: Sungjoon Moon <sumoon@seoulsaram.org>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/libretranslate/app/ko/>\n"
"Language: ko\n"
"Language-Team: Korean "
"<https://hosted.weblate.org/projects/libretranslate/app/ko/>\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"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "잘못된 JSON 형식"
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "자동 감지"
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "인증되지 않음"
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "요청이 너무 많음"
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "잘못된 API 키"
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "API 키를 얻기 위해 서버 연산자에 문의하시기 바랍니다"
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "%(url)s 에서 API 키 받기"
#: libretranslate/app.py:318
#: libretranslate/app.py:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "잘못된 요청: %(name)s 파라미터 누락"
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr "잘못된 요청: <x>0 댓글</x> 매개변수는 수 없습니다 %(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "잘못된 요청: <x>0 댓글</x> 매개 변수는 &lt;= <x>1명 1명</x> %(name)s %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s 지원되지 않음"
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s 형식은 지원되지 않습니다"
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "텍스트를 번역할 수 없습니다: %(text)s"
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "현재 서버에서 파일 번역이 비활성화 되어 있습니다."
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "잘못된 요청: 빈 파일"
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "잘못된 요청: 파일 형식 지원되지 않음"
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "잘못된 파일명"
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "현재 서버에서 제안이 비활성화 되어 있습니다."
@ -115,120 +127,192 @@ 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 "한국어 (Korean)"
#: 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 "담당자: Ms"
#: 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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "한국어"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "러시아어"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "슬로바키아어"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "한국어"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "스패인어"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "스웨덴어"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "다운로드"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "뚱 베어"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "터키어"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "우크라이나어"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "채용 정보"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "베트남어"
msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
@ -246,7 +330,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:233
msgid "Translated text"
msgstr "번역된 텍스트"
@ -301,206 +385,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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "알려지지 않은 오류"
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "복사됨"
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "가능한 언어가 없음. 언어 모델을 제대로 설치하셨나요?"
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "\"Get API Key\" 링크를 누릅니다."
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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. Free to download, 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 +597,170 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "번역 API"
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "텍스트 번역하기"
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "파일 번역하기"
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "~로 부터 번역하기"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "출발 언어, 도착 언어 서로 바꾸기"
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "~로 번역하기"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "번역할 텍스트"
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "텍스트 삭제"
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "번역 제안하기"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "취소"
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "보내기"
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "지원되는 파일 형식:"
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "파일"
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "파일 삭제"
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "번역"
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "다운로드"
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "요청"
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "응답"
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "오픈 소스 기계 번역 API"
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
msgstr "셀프 호스팅. 오프라인 이용 가능. 설정하기 쉬움."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "무료로 다운로드 가능. 오프라인 이용 가능. 설정하기 쉬움."
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, 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 키 획득"
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -0,0 +1,747 @@
# Lithuanian translations for LibreTranslate.
# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.6.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-08-08 13:03-0400\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: lt <LL@li.org>\n"
"Language: lt\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%100<10 || n%100>=20) ? 1 : 2);\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Blogas JSON formatas"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Automatinis aptikimas"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Neleidžiama"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "NAME OF TRANSLATORS"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Blogas API raktas"
#: libretranslate/app.py:371
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:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Apsilankymas %(url)s gauti API raktą"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Lėčiau:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Blogas prašymas: trūksta %(name)s parametras"
#: libretranslate/app.py:666
#, 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:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Klaidingas prašymas: %(name)s parametras turi būti &lt; = %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s nepalaikoma"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formatas nepalaikomas"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nepavyko išversti teksto: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Failų vertimas šiame serveryje yra išjungtas."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Blogas prašymas: tuščias failas"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Klaidingas prašymas: failo formatas nepalaikomas"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Klaidingas failo pavadinimas"
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr "Portugalų (Brazilija)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumunų"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Rusų"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovakų"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovėnų"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Ispanų"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Švedų"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalogas"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turkų"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "UkranijName"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbų"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukrainiečių"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamiečių"
#: 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:233
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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Nepavyko įkelti %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Nežinoma klaida"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopijuota"
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr "Kalbų nėra. Tu teisingai įdiegei modelius?"
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "paspauskite nuorodą \"Gauk API raktą\"."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "susisiekti su serverio operatoriumi."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Bot piktnaudžiavimo, vertimo prašymai laikinai tik vartotojams su "
"galiojančiu API klavišą. Atleisk už nepatogumus!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Vertimo API"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Versti tekstą"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Name"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Žaisti iš"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Sukeisti šaltinį ir tikslines kalbas"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Pereiti į"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Verstinas tekstas"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Trinti"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Siūlomas vertimas"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Atsisakyti"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Siųsti"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Palaikomi failų formatai:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Failas"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Pašalinti failą"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Transliuoti"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Atsisiųsti"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Prašymas"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Atsakas"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Open Source Machine Translation API"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Selfas Hostedas. Galimi atsijungimai. Lengva susitvarkyti."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "Name"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Licencija:"
#: libretranslate/templates/index.html:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Pagalbininkai"
#~ msgid "Basque"
#~ msgstr "Baskij"
#~ msgid "Galician"
#~ msgstr "GalisName"

View file

@ -0,0 +1,4 @@
{
"name": "Lithuanian",
"reviewed": false
}

View file

@ -0,0 +1,749 @@
# Latvian translations for LibreTranslate.
# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.6.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-08-08 13:03-0400\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: lv <LL@li.org>\n"
"Language: lv\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 != 0 ? 1 : 2);\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Nederīgs JSON formāts"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Automātiski noteikt"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Neautorizēts"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Pārāk daudz pieprasījumu ierobežo pārkāpumus"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Nederīga API atslēga"
#: libretranslate/app.py:371
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:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Apmeklējums %(url)s API atslēga"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Lejupvērst:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Nederīgs pieprasījums: trūkst %(name)s parametrs"
#: libretranslate/app.py:666
#, 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:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Nederīgs pieprasījums: %(name)s parametram jābūt &gt; %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s nav atbalstīts"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s formāts nav atbalstīts"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Nevar tulkot tekstu: %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Šajā serverī ir atslēgts failu tulkojums."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Nederīgs pieprasījums: tukšs fails"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Nederīgs pieprasījums: faila formāts nav atbalstīts"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nederīgs faila nosaukums"
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr "Portugāļu (Brazīlija)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumāņu"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Krievu"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovāku"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovēņu"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spāņu"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Zviedru"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalogs"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Taizemiešu"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turku"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukraņu"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbu"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukraiņu"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vjetnamiešu"
#: 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:233
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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Nevar ielādēt %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Nezināma kļūda"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Nokopēts"
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr "nospiediet \"Get API Key\" saiti."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "sazinieties ar servera operatoru."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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. Free to download, "
"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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Bota ļaunprātīgas izmantošanas dēļ tulkošanas pieprasījumi uz laiku attiecas"
" tikai uz lietotājiem ar derīgu API atslēgu. Atvainojiet par neērtībām!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Tulkošanas API"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Tulkot tekstu"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Tulkot failus"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Tulkot no"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Maiņvietas avots un mērķa valodas"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Tulkot uz"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Tulkojamais teksts"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Dzēst tekstu"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Ieteikt tulkojumu"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Atcelt"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Sūtīt"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Atbalstītie failu formāti:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fails"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Izņemt failu"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Tulkot"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Lejupielādēt"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Pieprasījums"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Atbildes reakcija"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Atvērt pirmkoda mašīnas tulkošanas API"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Pašaizliedzies. Bezsaistes Spēj. Viegli iestatīt."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTulkot"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Licence:"
#: libretranslate/templates/index.html:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "%(libretranslate)s Atbalstītāji"
#~ msgid "Basque"
#~ msgstr "BaskuName"
#~ msgid "Galician"
#~ msgstr "Galisiešu"

View file

@ -0,0 +1,4 @@
{
"name": "Latvian",
"reviewed": false
}

View file

@ -1,15 +1,15 @@
# Translations template for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# Copyright (C) 2025 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Project-Id-Version: LibreTranslate 1.7.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2023-10-09 15:17-0400\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -18,94 +18,105 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:79
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr ""
#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr ""
#: libretranslate/app.py:232
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr ""
#: libretranslate/app.py:250
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr ""
#: libretranslate/app.py:257
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr ""
#: libretranslate/app.py:276
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr ""
#: libretranslate/app.py:278
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr ""
#: libretranslate/app.py:318
#: libretranslate/app.py:420
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:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr ""
#: libretranslate/app.py:544 libretranslate/app.py:553
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr ""
#: libretranslate/app.py:594
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr ""
#: libretranslate/app.py:602 libretranslate/app.py:626
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr ""
#: libretranslate/app.py:734 libretranslate/app.py:788
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr ""
#: libretranslate/app.py:748
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr ""
#: libretranslate/app.py:751
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr ""
#: libretranslate/app.py:796
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr ""
#: libretranslate/app.py:1038
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr ""
@ -114,118 +125,190 @@ 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 "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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr ""
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr ""
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr ""
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr ""
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr ""
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr ""
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr ""
@ -245,7 +328,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:233
msgid "Translated text"
msgstr ""
@ -297,201 +380,205 @@ 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr ""
#: libretranslate/templates/app.js.template:287
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr ""
#: libretranslate/templates/app.js.template:331
#: libretranslate/templates/app.js.template:339
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:463
msgid "No languages available. Did you install the models correctly?"
msgstr ""
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
#, 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:536
msgid "press the \"Get API Key\" link."
msgstr ""
#: libretranslate/templates/app.js.template:522
#: libretranslate/templates/app.js.template:536
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:347
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 "
"Free and Open Source Machine Translation API. Free to download, offline "
"capable and easy to setup. Run your own API server in just a few minutes."
msgstr ""
@ -503,149 +590,139 @@ 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:175
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:179
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:185
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:198
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:213
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:226
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:233
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:249
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:253
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:268
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:275
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:276
#: libretranslate/templates/index.html:320
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:295
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:300
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:315
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:316
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:335
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:337
#: libretranslate/templates/index.html:348
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:354
#, 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:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr ""

View file

@ -0,0 +1,755 @@
# mia translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-07-04 18:09+0000\n"
"Last-Translator: \"Michael R. Lawrence\" <michaellonewolf359@gmail.com>\n"
"Language: mia\n"
"Language-Team: Miami "
"<https://hosted.weblate.org/projects/libretranslate/app/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:93
#, fuzzy
msgid "Invalid JSON format"
msgstr "moochi eelaamweekaneewiki JSON kiikoo"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr ""
#: libretranslate/app.py:311
#, fuzzy
msgid "Unauthorized"
msgstr "moochi koteelilo"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr ""
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Moochi API paahpahaakani"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr ""
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr ""
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "weekiyosiko"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr ""
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
#: libretranslate/app.py:686 libretranslate/app.py:696
#, fuzzy, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr "maci kiikoo : kiikoo (%(size)s) mihši awikawiko limit (%(limit)s)"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, fuzzy, python-format
msgid "%(lang)s is not supported"
msgstr "moochi supported"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr ""
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr ""
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr ""
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr ""
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr ""
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr ""
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr ""
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr ""
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr ""
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr ""
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr ""
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr ""
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
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:233
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 "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 ""
#: 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 ""
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr ""
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr ""
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr ""
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr ""
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr ""
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
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 ""
#~ msgid "host your own server"
#~ msgstr ""
#~ msgid "get an API key"
#~ msgstr ""
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

View file

@ -0,0 +1,4 @@
{
"name": "mia",
"reviewed": false
}

View file

@ -0,0 +1,765 @@
# Malay translations for LibreTranslate.
# Copyright (C) 2024 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.6.1\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-08-08 13:03-0400\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: ms <LL@li.org>\n"
"Language: ms\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"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Format JSON tidak sah"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Autokesan"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Tidak dibenarkan"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "Terlalu banyak permintaan yang membatasi pelanggaran"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Kunci API tidak sah"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Sila hubungi operator server untuk mendapatkan kunci API"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Lawati <x>WANITA 0</x> Diambil kunci API %(url)s"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Perlahan:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr ""
"Permintaan tidak sah: hilang <x>WANITA 0</x> Parameter month= yang tidak "
"diketahui akan diabaikan %(name)s"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
"Permintaan tidak sah: <x>WANITA 0</x> Parameter gnona bukanlah sebuah angka "
"%(name)s"
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
"Permintaan tidak sah: <x>WANITA 0</x> parameter harus &lt;= <x>Perancis</x> "
"%(name)s %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
"Permintaan tidak sah: permintaan (request)<x>WANITA 0</x>) melebihi batas "
"teks (<x>Perancis</x>) %(size)s %(limit)s"
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "<x>WANITA 0</x> Pautan simbolik tidak disokong %(lang)s"
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "<x>WANITA 0</x> Format wourne tidak didukung %(format)s"
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from %(sname)s "
"(%(scode)s)"
msgstr ""
"<x>WANITA 0</x> ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (.<x>Perancis</x>) tidak "
"tersedia sebagai bahasa target dari %(sname)s ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "
"( (.<x>Fiji 3</x>) %(tname)s %(tcode)s %(scode)s"
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Tidak dapat menerjemahkan teks: <x>WANITA 0</x> %(text)s"
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr "Penerjemahan berkas-berkas translasi tidak aktif pada server ini."
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Permintaan tidak sah: fail kosong"
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Permintaan tidak sah: format berkas tidak disokong"
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Nama berkas tidak sah"
#: libretranslate/app.py:1193
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 "Portuguese (Brazil)"
msgstr "Portugis Portugis (Brazil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumania"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Rusia"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovak"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovenia"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spanyol"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Swedish"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thai"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Turki"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukrainian"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbia"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukraina"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnam"
#: 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:233
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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr "Tidak dapat memuat <x>WANITA 0</x> %(url)s"
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Tidak diketahui error"
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Copied"
#: libretranslate/templates/app.js.template:339
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:463
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:536
#, 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, <x>WANITA 0</x> "
"%(instructions)s"
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr "tekan « Get API Key\" link."
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr "hubungi operator server."
#: libretranslate/templates/index.html:9
#: libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"Karena penyalahgunaan bot, permintaan terjemahan dibatasi sementara oleh "
"pengguna dengan kunci API yang valid. Maaf atas ketidaknyamanan ini!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "API Terjemahan Bahasa Indonesia"
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Terjemahan"
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Terjemahkan Berkas"
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Terjemahan dari"
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "S Swap sumber dan bahasa target SHAPD"
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Terjemahkan kedalam"
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Teks untuk diterjemahkan"
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Teks Delete"
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Saran terjemahan"
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Batal"
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Kirim"
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Format berkas yang didukung:"
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Berkas"
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Mengeluarkan berkas"
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Terjemahan"
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Muaturun"
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Permintaan"
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Sambutan"
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "API Terjemahan Mesin Sumber Terbuka"
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Free to download. Kemampuan Luar Talian. Mudah diatur."
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr "Lisensi:"
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
"Dibuat dengan <x>WANITA 0</x> Oleh: <x>Perancis</x> Ditenagai oleh "
"%(engine)s %(heart)s %(contributors)s"
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr "<x>WANITA 0</x> Kontributor %(libretranslate)s"
#~ msgid "Basque"
#~ msgstr "Basque"
#~ msgid "Galician"
#~ msgstr "Galisia"

View file

@ -0,0 +1,4 @@
{
"name": "Malay",
"reviewed": false
}

View file

@ -1,4 +1,4 @@
# Translations template for LibreTranslate.
# Norwegian Bokmål (Norway) translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
@ -8,113 +8,122 @@ 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: 2023-06-03 02:40+0000\n"
"Last-Translator: \"T. Alexander\" <theools@gmail.com>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/"
"libretranslate/app/nb_NO/>\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-03-25 12:01+0000\n"
"Last-Translator: Kaleido Scope <senpai@firemail.cc>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/libretranslate/app/nb_NO/>\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 4.18-dev\n"
"Generated-By: Babel 2.11.0\n"
"Generated-By: Babel 2.12.1\n"
#: libretranslate/app.py:60
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Ugyldig JSON-format"
#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Oppdag automatisk"
#: libretranslate/app.py:193
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Ikke godkjent"
#: libretranslate/app.py:211
#: libretranslate/app.py:329
#, fuzzy
msgid "Too many request limits violations"
msgstr "For mange forespørsler"
msgstr "For mange brudd på forespørselsgrensene"
#: libretranslate/app.py:220
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Ugyldig API-nøkkel"
#: libretranslate/app.py:227
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Kontakt tjeneradministrator for å få API-nøkkel"
#: libretranslate/app.py:229
#: libretranslate/app.py:373
#, 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
#: libretranslate/app.py:420
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
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, 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
#: libretranslate/app.py:666
#, 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:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr "Ugyldig forespørsel: %(name)s Parameteren må være &lt;= %(value)s"
#: libretranslate/app.py:686 libretranslate/app.py:696
#, 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
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr "%(lang)s støttes ikke"
#: libretranslate/app.py:536
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr "%(format)s-formatet støttes ikke"
#: libretranslate/app.py:544 libretranslate/app.py:568
#: libretranslate/app.py:735 libretranslate/app.py:763
#, 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 tilgjengelig som målspråk fra %(sname)s "
"(%(scode)s)"
#: libretranslate/app.py:589
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr "Kan ikke oversette tekst: %(text)s"
#: libretranslate/app.py:676 libretranslate/app.py:730
#: libretranslate/app.py:874 libretranslate/app.py:943
#, fuzzy
msgid "Files translation are disabled on this server."
msgstr "Filoversettelse er avskrudd på denne tjeneren."
#: libretranslate/app.py:690
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr "Ugyldig forespørsel: tom fil"
#: libretranslate/app.py:693
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr "Ugyldig forespørsel: filformatet støttes ikke"
#: libretranslate/app.py:738
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr "Ugyldig filnavn"
#: libretranslate/app.py:979
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr "Forslag er deaktivert på denne tjeneren."
@ -123,118 +132,190 @@ 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:3
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Aserbajdsjansk"
#: 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 "Katalansk"
#: libretranslate/locales/.langs.py:8
msgid "Chinese"
msgstr "Kinesisk"
#: libretranslate/locales/.langs.py:5
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr "Kinesisk (tradisjonell)"
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tsjekkisk"
#: 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 "Nederlandsk"
#: 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 "Gresk"
#: libretranslate/locales/.langs.py:13
#: libretranslate/locales/.langs.py:19
msgid "Hebrew"
msgstr "Hebraisk"
#: 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 "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: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 "Portuguese (Brazil)"
msgstr "Portugisisk (Brazil)"
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr "Rumensk"
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Russisk"
#: libretranslate/locales/.langs.py:25
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovakisk"
#: libretranslate/locales/.langs.py:26
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr "Slovensk"
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spansk"
#: libretranslate/locales/.langs.py:27
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Svensk"
#: libretranslate/locales/.langs.py:28
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr "Tagalog"
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr "Thailandsk"
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Tyrkisk"
#: libretranslate/locales/.langs.py:29
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukrainsk"
#: libretranslate/locales/.langs.py:30
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr "Urdu"
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr "Serbisk"
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr "Ukrainsk"
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr "Vietnamesisk"
@ -255,7 +336,7 @@ msgstr "oversettelse"
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
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Oversatt tekst"
@ -278,7 +359,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 +378,6 @@ msgid "text"
msgstr "tekst"
#: libretranslate/locales/.swag.py:15
#, fuzzy
msgid "html"
msgstr "HTML"
@ -312,212 +392,217 @@ msgstr ""
" * `html` — HTML-oppmerking\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:18
#: libretranslate/locales/.swag.py:19
msgid "Translate file from a language to another"
msgstr "Oversett fil fra ett språk til et annet"
#: libretranslate/locales/.swag.py:19
#: libretranslate/locales/.swag.py:20
msgid "Translated file"
msgstr "Oversatt fil"
#: libretranslate/locales/.swag.py:20
#: libretranslate/locales/.swag.py:21
msgid "File to translate"
msgstr "Fil å oversette"
#: libretranslate/locales/.swag.py:21
#: libretranslate/locales/.swag.py:22
msgid "Detect the language of a single text"
msgstr "Oppdag språk for enkelt tekst"
#: libretranslate/locales/.swag.py:22
#: libretranslate/locales/.swag.py:23
msgid "Detections"
msgstr "Oppdagelser"
#: libretranslate/locales/.swag.py:23
#: libretranslate/locales/.swag.py:24
msgid "Detection error"
msgstr "Oppdagelsesfeil"
#: libretranslate/locales/.swag.py:24
#: libretranslate/locales/.swag.py:25
msgid "Text to detect"
msgstr "Tekst å oppdage"
#: libretranslate/locales/.swag.py:25
#: libretranslate/locales/.swag.py:26
msgid "Retrieve frontend specific settings"
msgstr "Hent skjermflate-spesifikke innstillinger"
#: libretranslate/locales/.swag.py:26
#: libretranslate/locales/.swag.py:27
msgid "frontend settings"
msgstr "skjermflate-innstillinger"
#: libretranslate/locales/.swag.py:27
#: libretranslate/locales/.swag.py:28
msgid "frontend"
msgstr "skjermflate"
#: libretranslate/locales/.swag.py:28
#: libretranslate/locales/.swag.py:29
msgid "Submit a suggestion to improve a translation"
msgstr "Send inn et forslag om forbedring av en oversettelse"
#: libretranslate/locales/.swag.py:29
#: libretranslate/locales/.swag.py:30
msgid "Success"
msgstr "Vellykket"
#: libretranslate/locales/.swag.py:30
#: libretranslate/locales/.swag.py:31
msgid "Not authorized"
msgstr "Ikke godkjent"
#: libretranslate/locales/.swag.py:31
#: libretranslate/locales/.swag.py:32
msgid "Original text"
msgstr "Opprinnelig tekst"
#: libretranslate/locales/.swag.py:32
#: libretranslate/locales/.swag.py:33
msgid "Suggested translation"
msgstr "Foreslått oversettelse"
#: libretranslate/locales/.swag.py:33
#: libretranslate/locales/.swag.py:34
msgid "Language of original text"
msgstr "Originaltekstens språk"
#: libretranslate/locales/.swag.py:34
#: libretranslate/locales/.swag.py:35
msgid "Language of suggested translation"
msgstr "Språk for foreslått oversettelse"
#: libretranslate/locales/.swag.py:35
#: libretranslate/locales/.swag.py:36
msgid "feedback"
msgstr "tilbakemelding"
#: libretranslate/locales/.swag.py:36
#: libretranslate/locales/.swag.py:37
msgid "Language code"
msgstr "Språkkode"
#: libretranslate/locales/.swag.py:37
#: libretranslate/locales/.swag.py:38
msgid "Human-readable language name (in English)"
msgstr "Menneskelesbart språknavn (på engelsk)"
#: libretranslate/locales/.swag.py:38
#: libretranslate/locales/.swag.py:39
msgid "Supported target language codes"
msgstr "Støttede målspråkkoder"
#: libretranslate/locales/.swag.py:39
#: libretranslate/locales/.swag.py:40
msgid "Translated text(s)"
msgstr "Oversatt(e) tekst(er)"
#: libretranslate/locales/.swag.py:40
#: libretranslate/locales/.swag.py:41
msgid "Error message"
msgstr "Feilmelding"
#: libretranslate/locales/.swag.py:41
#: libretranslate/locales/.swag.py:42
msgid "Reason for slow down"
msgstr "Grunn for nedsakking"
#: libretranslate/locales/.swag.py:42
#: libretranslate/locales/.swag.py:43
#, fuzzy
msgid "Translated file url"
msgstr "Oversatt fil-nettadresse"
#: libretranslate/locales/.swag.py:43
#: libretranslate/locales/.swag.py:44
msgid "Confidence value"
msgstr "Tillitsverdi"
#: libretranslate/locales/.swag.py:44
#: libretranslate/locales/.swag.py:45
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
#: libretranslate/locales/.swag.py:46
msgid "Frontend translation timeout"
msgstr "Tidsavbrudd for skjermflateoversettelse"
#: libretranslate/locales/.swag.py:46
#: libretranslate/locales/.swag.py:47
#, fuzzy
msgid "Whether the API key database is enabled."
msgstr "Hvorvidt API-nøkkeldatabasen er påskrudd."
#: libretranslate/locales/.swag.py:47
#: libretranslate/locales/.swag.py:48
msgid "Whether an API key is required."
msgstr "Hvorvidt en API-nøkkel kreves."
#: libretranslate/locales/.swag.py:48
#: libretranslate/locales/.swag.py:49
#, fuzzy
msgid "Whether submitting suggestions is enabled."
msgstr "Hvorvidt innsendelse av forslag tillates."
#: libretranslate/locales/.swag.py:49
#: libretranslate/locales/.swag.py:50
#, fuzzy
msgid "Supported files format"
msgstr "Støttede filformater"
#: libretranslate/locales/.swag.py:50
#: libretranslate/locales/.swag.py:51
#, 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
#: libretranslate/templates/app.js.template:294
#: libretranslate/templates/app.js.template:298
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
#: libretranslate/templates/app.js.template:80
#: libretranslate/templates/app.js.template:86
#: libretranslate/templates/app.js.template:91
#: libretranslate/templates/app.js.template:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, 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
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr "Ukjent feil"
#: libretranslate/templates/app.js.template:276
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr "Kopiert"
#: libretranslate/templates/app.js.template:320
#: libretranslate/templates/app.js.template:339
#, fuzzy
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 ""
"Takk for korrigeringen. Merk at forslaget ikke vil tre i kraft umiddelbart."
#: libretranslate/templates/app.js.template:423
#: libretranslate/templates/app.js.template:463
#, 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
#: libretranslate/templates/app.js.template:536
#, 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
#: libretranslate/templates/app.js.template:536
#, fuzzy
msgid "press the \"Get API Key\" link."
msgstr "trykk på «Hent API-nøkkel»-lenken."
#: libretranslate/templates/app.js.template:479
#: libretranslate/templates/app.js.template:536
#, fuzzy
msgid "contact the server operator."
msgstr "kontakt tjeneradministratoren."
#: 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:347
msgid "Free and Open Source Machine Translation API"
msgstr "Fritt maskinoversettelses-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 "
"Free and Open Source Machine Translation API. Free to download, 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 "
@ -532,149 +617,166 @@ msgstr "oversettelse"
msgid "api"
msgstr "API"
#: libretranslate/templates/index.html:64
#: libretranslate/templates/index.html:67
#, fuzzy
msgid "API Docs"
msgstr "API-dokumentasjon"
#: libretranslate/templates/index.html:66
#: libretranslate/templates/index.html:69
msgid "Get API Key"
msgstr "Hent API-nøkkel"
#: 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 "Sett API-nøkkel"
#: libretranslate/templates/index.html:72
#: libretranslate/templates/index.html:75
msgid "Change language"
msgstr "Endre språk"
#: libretranslate/templates/index.html:78
#: libretranslate/templates/index.html:81
msgid "Edit"
msgstr "Rediger"
#: libretranslate/templates/index.html:154
#: 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 "Avslå"
#: libretranslate/templates/index.html:168
#: libretranslate/templates/index.html:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users with"
" a valid API key. Sorry for the inconvenience!"
msgstr ""
"På grunn av botmisbruk er oversettelsesforespørsler midlertidig begrenset "
"til brukere med en gyldig API-nøkkel. Beklager ulempen!"
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr "Oversettelses-API"
#: libretranslate/templates/index.html:172
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr "Oversett tekst"
#: libretranslate/templates/index.html:176
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr "Oversett filer"
#: libretranslate/templates/index.html:182
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr "Oversett fra"
#: libretranslate/templates/index.html:192
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr "Bytt kilde- og målspråk"
#: libretranslate/templates/index.html:195
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr "Oversett til"
#: libretranslate/templates/index.html:207
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr "Tekst å oversette"
#: libretranslate/templates/index.html:210
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr "Slett tekst"
#: libretranslate/templates/index.html:223
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr "Foreslå oversettelse"
#: libretranslate/templates/index.html:227
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr "Avbryt"
#: libretranslate/templates/index.html:230
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr "Send"
#: libretranslate/templates/index.html:246
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr "Støttede filformater:"
#: libretranslate/templates/index.html:250
#: libretranslate/templates/index.html:264
msgid "File"
msgstr "Fil"
#: libretranslate/templates/index.html:265
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr "Fjern fil"
#: libretranslate/templates/index.html:272
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr "Oversett"
#: libretranslate/templates/index.html:273
#: libretranslate/templates/index.html:317
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr "Last ned"
#: libretranslate/templates/index.html:292
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr "Forespørsel"
#: libretranslate/templates/index.html:297
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr "Svar"
#: libretranslate/templates/index.html:312
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr "Fritt maskinoversettelses-API"
#: libretranslate/templates/index.html:313
msgid "Self-Hosted. Offline Capable. Easy to Setup."
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr "Selvtjent. Muligheter for frakoblet modus. Enkelt oppsett."
#: libretranslate/templates/index.html:332
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr "LibreTranslate"
#: libretranslate/templates/index.html:334
#: libretranslate/templates/index.html:348
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
#: libretranslate/templates/index.html:354
#, 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
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
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"
#~ msgid "Basque"
#~ msgstr "Baskisk"
#~ msgid "Galician"
#~ msgstr "Galicisk"

View file

@ -0,0 +1,4 @@
{
"name": "Norwegian",
"reviewed": false
}

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
{
"name": "Dutch",
"reviewed": false
}
"reviewed": true
}

View file

@ -0,0 +1,754 @@
# Norwegian Nynorsk translations for LibreTranslate.
# Copyright (C) 2023 LibreTranslate Authors
# This file is distributed under the same license as the LibreTranslate
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2023.
#
msgid ""
msgstr ""
"Project-Id-Version: LibreTranslate 1.3.12\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-04-18 14:43-0400\n"
"PO-Revision-Date: 2024-03-25 12:01+0000\n"
"Last-Translator: Kaleido Scope <senpai@firemail.cc>\n"
"Language: nn\n"
"Language-Team: Norwegian Nynorsk "
"<https://hosted.weblate.org/projects/libretranslate/app/nn/>\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"
#: libretranslate/app.py:93
msgid "Invalid JSON format"
msgstr "Ugyldig JSON-format"
#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473
msgid "Auto Detect"
msgstr "Oppdag automatisk"
#: libretranslate/app.py:311
msgid "Unauthorized"
msgstr "Ikkje godkjent"
#: libretranslate/app.py:329
msgid "Too many request limits violations"
msgstr "For mange førespurnadar"
#: libretranslate/app.py:336
msgid "Invalid API key"
msgstr "Ugyldig API-nykel"
#: libretranslate/app.py:371
msgid "Please contact the server operator to get an API key"
msgstr "Ta kontakt med sørvaradministrator for å få API-nykel"
#: libretranslate/app.py:373
#, python-format
msgid "Visit %(url)s to get an API key"
msgstr "Besøk %(url)s for å få ein API-nykel"
#: libretranslate/app.py:420
msgid "Slowdown:"
msgstr "Nedbremsing:"
#: libretranslate/app.py:657 libretranslate/app.py:659
#: libretranslate/app.py:661 libretranslate/app.py:882
#: libretranslate/app.py:884 libretranslate/app.py:886
#: libretranslate/app.py:1051 libretranslate/app.py:1208
#: libretranslate/app.py:1210 libretranslate/app.py:1212
#: libretranslate/app.py:1214
#, python-format
msgid "Invalid request: missing %(name)s parameter"
msgstr "Ugyldig førespurnad: manglande %(name)s-parameter"
#: libretranslate/app.py:666
#, python-format
msgid "Invalid request: %(name)s parameter is not a number"
msgstr ""
#: libretranslate/app.py:669
#, python-format
msgid "Invalid request: %(name)s parameter must be <= %(value)s"
msgstr ""
#: libretranslate/app.py:686 libretranslate/app.py:696
#, python-format
msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)"
msgstr ""
#: libretranslate/app.py:715 libretranslate/app.py:720
#: libretranslate/app.py:897 libretranslate/app.py:902
#: libretranslate/app.py:924
#, python-format
msgid "%(lang)s is not supported"
msgstr ""
#: libretranslate/app.py:726
#, python-format
msgid "%(format)s format is not supported"
msgstr ""
#: libretranslate/app.py:735 libretranslate/app.py:763
#, python-format
msgid ""
"%(tname)s (%(tcode)s) is not available as a target language from "
"%(sname)s (%(scode)s)"
msgstr ""
#: libretranslate/app.py:787
#, python-format
msgid "Cannot translate text: %(text)s"
msgstr ""
#: libretranslate/app.py:874 libretranslate/app.py:943
msgid "Files translation are disabled on this server."
msgstr ""
#: libretranslate/app.py:889
msgid "Invalid request: empty file"
msgstr ""
#: libretranslate/app.py:892
msgid "Invalid request: file format not supported"
msgstr ""
#: libretranslate/app.py:951
msgid "Invalid filename"
msgstr ""
#: libretranslate/app.py:1193
msgid "Suggestions are disabled on this server."
msgstr ""
#: libretranslate/locales/.langs.py:1
msgid "English"
msgstr "Engelsk"
#: libretranslate/locales/.langs.py:2
msgid "Albanian"
msgstr ""
#: libretranslate/locales/.langs.py:3
msgid "Arabic"
msgstr "Arabisk"
#: libretranslate/locales/.langs.py:4
msgid "Azerbaijani"
msgstr "Azeri"
#: 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 "Mandarin"
#: libretranslate/locales/.langs.py:9
msgid "Chinese (traditional)"
msgstr ""
#: libretranslate/locales/.langs.py:10
msgid "Czech"
msgstr "Tjekkisk"
#: 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 ""
#: 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 ""
#: 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 "Farsi"
#: libretranslate/locales/.langs.py:32
msgid "Polish"
msgstr "Polsk"
#: libretranslate/locales/.langs.py:33
msgid "Portuguese"
msgstr "Portugisisk"
#: libretranslate/locales/.langs.py:34
msgid "Portuguese (Brazil)"
msgstr ""
#: libretranslate/locales/.langs.py:35
msgid "Romanian"
msgstr ""
#: libretranslate/locales/.langs.py:36
msgid "Russian"
msgstr "Russisk"
#: libretranslate/locales/.langs.py:37
msgid "Slovak"
msgstr "Slovakisk"
#: libretranslate/locales/.langs.py:38
msgid "Slovenian"
msgstr ""
#: libretranslate/locales/.langs.py:39
msgid "Spanish"
msgstr "Spansk"
#: libretranslate/locales/.langs.py:40
msgid "Swedish"
msgstr "Svensk"
#: libretranslate/locales/.langs.py:41
msgid "Tagalog"
msgstr ""
#: libretranslate/locales/.langs.py:42
msgid "Thai"
msgstr ""
#: libretranslate/locales/.langs.py:43
msgid "Turkish"
msgstr "Tyrkisk"
#: libretranslate/locales/.langs.py:44
msgid "Ukranian"
msgstr "Ukrainsk"
#: libretranslate/locales/.langs.py:45
msgid "Urdu"
msgstr ""
#: libretranslate/locales/.langs.py:46
msgid "Serbian"
msgstr ""
#: libretranslate/locales/.langs.py:47
msgid "Ukrainian"
msgstr ""
#: libretranslate/locales/.langs.py:48
msgid "Vietnamese"
msgstr ""
#: libretranslate/locales/.swag.py:1
msgid "Retrieve list of supported languages"
msgstr "Hent liste over støtta språk"
#: libretranslate/locales/.swag.py:2
msgid "List of languages"
msgstr "Språkliste"
#: libretranslate/locales/.swag.py:3
msgid "translate"
msgstr ""
#: libretranslate/locales/.swag.py:4
msgid "Translate text from a language to another"
msgstr "Omset tekst frå eit språk til eit anna"
#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233
msgid "Translated text"
msgstr "Omsette tekst"
#: libretranslate/locales/.swag.py:6
msgid "Invalid request"
msgstr "Ugyldig førespurnad"
#: libretranslate/locales/.swag.py:7
msgid "Translation error"
msgstr "Omsetningsfeil"
#: libretranslate/locales/.swag.py:8
msgid "Slow down"
msgstr "Senk farten"
#: libretranslate/locales/.swag.py:9
msgid "Banned"
msgstr "Utestengd"
#: libretranslate/locales/.swag.py:10
msgid "Hello world!"
msgstr "Hei verda!"
#: libretranslate/locales/.swag.py:11
msgid "Text(s) to translate"
msgstr "Tekst til omsetning"
#: 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 "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 ""
#: 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 ""
#: 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:294
#: libretranslate/templates/app.js.template:298
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:281
#: libretranslate/templates/app.js.template:351
#: libretranslate/templates/app.js.template:439
#: libretranslate/templates/app.js.template:493
#, python-format
msgid "Cannot load %(url)s"
msgstr ""
#: libretranslate/templates/app.js.template:272
#: libretranslate/templates/app.js.template:342
#: libretranslate/templates/app.js.template:420
#: libretranslate/templates/app.js.template:431
msgid "Unknown error"
msgstr ""
#: libretranslate/templates/app.js.template:295
msgid "Copied"
msgstr ""
#: libretranslate/templates/app.js.template:339
msgid ""
"Thanks for your correction. Note the suggestion will not take effect "
"right away."
msgstr ""
#: libretranslate/templates/app.js.template:463
msgid "No languages available. Did you install the models correctly?"
msgstr ""
#: libretranslate/templates/app.js.template:536
#, python-format
msgid "Type in your API Key. If you need an API key, %(instructions)s"
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "press the \"Get API Key\" link."
msgstr ""
#: libretranslate/templates/app.js.template:536
msgid "contact the server operator."
msgstr ""
#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27
#: libretranslate/templates/index.html:347
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. Free to download, 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:177
msgid ""
"Due to bot abuse, translation requests are temporarily limited to users "
"with a valid API key. Sorry for the inconvenience!"
msgstr ""
#: libretranslate/templates/index.html:182
msgid "Translation API"
msgstr ""
#: libretranslate/templates/index.html:186
msgid "Translate Text"
msgstr ""
#: libretranslate/templates/index.html:190
msgid "Translate Files"
msgstr ""
#: libretranslate/templates/index.html:196
msgid "Translate from"
msgstr ""
#: libretranslate/templates/index.html:206
msgid "Swap source and target languages"
msgstr ""
#: libretranslate/templates/index.html:209
msgid "Translate into"
msgstr ""
#: libretranslate/templates/index.html:221
msgid "Text to translate"
msgstr ""
#: libretranslate/templates/index.html:224
msgid "Delete text"
msgstr ""
#: libretranslate/templates/index.html:237
msgid "Suggest translation"
msgstr ""
#: libretranslate/templates/index.html:241
msgid "Cancel"
msgstr ""
#: libretranslate/templates/index.html:244
msgid "Send"
msgstr ""
#: libretranslate/templates/index.html:260
msgid "Supported file formats:"
msgstr ""
#: libretranslate/templates/index.html:264
msgid "File"
msgstr ""
#: libretranslate/templates/index.html:279
msgid "Remove file"
msgstr ""
#: libretranslate/templates/index.html:286
msgid "Translate"
msgstr ""
#: libretranslate/templates/index.html:287
#: libretranslate/templates/index.html:331
msgid "Download"
msgstr ""
#: libretranslate/templates/index.html:306
msgid "Request"
msgstr ""
#: libretranslate/templates/index.html:311
msgid "Response"
msgstr ""
#: libretranslate/templates/index.html:326
msgid "Open Source Machine Translation API"
msgstr ""
#: libretranslate/templates/index.html:327
msgid "Free to download. Offline Capable. Easy to Setup."
msgstr ""
#: libretranslate/templates/index.html:346
msgid "LibreTranslate"
msgstr ""
#: libretranslate/templates/index.html:348
msgid "License:"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s"
msgstr ""
#: libretranslate/templates/index.html:354
#, python-format
msgid "%(libretranslate)s Contributors"
msgstr ""
#~ 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 ""
#~ msgid "host your own server"
#~ msgstr ""
#~ msgid "get an API key"
#~ msgstr ""
#~ msgid "Basque"
#~ msgstr ""
#~ msgid "Galician"
#~ msgstr ""

Some files were not shown because too many files have changed in this diff Show more