diff --git a/.github/workflows/issue-triage.yml b/.github/workflows/issue-triage.yml index 47856ba..6af6281 100644 --- a/.github/workflows/issue-triage.yml +++ b/.github/workflows/issue-triage.yml @@ -13,18 +13,20 @@ jobs: 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: "Contains a suggestion for an improvement or a feature request?" + - E: "Reporting about some missing feature or functionality?" - SC: "Describes an issue related to compiling or building source code?" logic: | - "Q and (not B) and (not E) and (not SC)": [comment: "Could we move this conversation over to the forum at https://community.libretranslate.com? :pray: The forum is the right place to ask questions (we try to keep the GitHub issue tracker for feature requests and bugs only). Thank you! :+1:", close: true, stop: true] - "B and (not T) and (not E) and (not SC)": [label: "possible bug", stop: true] - - "T or E": [label: "enhancement", stop: true] + - "T and (not E)": [label: "model improvement", stop: true] + - "E": [label: "enhancement", stop: true] - "SC": [label: "possible bug"] signature: "p.s. I'm just an automated script, not a human being." diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 55e8f4b..82e8946 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -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 diff --git a/.well-known/funding-manifest-urls b/.well-known/funding-manifest-urls new file mode 100644 index 0000000..b419350 --- /dev/null +++ b/.well-known/funding-manifest-urls @@ -0,0 +1,2 @@ +https://libretranslate.com/funding.json + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4bd0221..ee4ded6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -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) \ No newline at end of file diff --git a/README.md b/README.md index ba438f5..9eaa2ee 100644 --- a/README.md +++ b/README.md @@ -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: '

Hello!

', 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 +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 ## 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: @@ -247,7 +294,7 @@ helm install libretranslate libretranslate/libretranslate --namespace libretrans ## Manage API Keys -LibreTranslate supports per-user limit quotas, e.g. you can issue API keys to users so that they can enjoy higher requests limits per minute (if you also set `--req-limit`). By default all users are rate-limited based on `--req-limit`, but passing an optional `api_key` parameter to the REST endpoints allows a user to enjoy higher request limits. +LibreTranslate supports per-user limit quotas, e.g. you can issue API keys to users so that they can enjoy higher requests limits per minute (if you also set `--req-limit`). By default all users are rate-limited based on `--req-limit`, but passing an optional `api_key` parameter to the REST endpoints allows a user to enjoy higher request limits. You can also specify different character limits that bypass the default `--char-limit` value on a per-key basis. To use API keys simply start LibreTranslate with the `--api-keys` option. If you modified the API keys database path with the option `--api-keys-db-path`, you must specify the path with the same argument flag when using the `ltmanage keys` command. @@ -259,6 +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 @@ -301,7 +354,7 @@ scrape_configs: # Needed only if you use --metrics-auth-token #authorization: - #credentials: "mytoken" + #credentials: "mytoken" static_configs: - targets: ["localhost:5000"] @@ -324,6 +377,7 @@ You can use the LibreTranslate API using the following bindings: - Rust: - Node.js: +- TypeScript: - .Net: - Go: - Python: @@ -334,6 +388,7 @@ You can use the LibreTranslate API using the following bindings: - Shell: - Java: - Ruby: +- R: ## Discourse Plugin @@ -359,6 +414,7 @@ See it in action on this [page](https://community.libretranslate.com/t/have-you- ## 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 @@ -370,25 +426,25 @@ See it in action on this [page](https://community.libretranslate.com/t/have-you- 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.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) @@ -401,50 +457,51 @@ To help improve or review the UI translations: - Go to . 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": "", - "reviewed": true <-- Change this from false to true + "name": "", + "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 | :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 | | [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 | :heavy_check_mark: | [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 @@ -465,6 +522,10 @@ In short, yes, [but only if you buy an API key](https://portal.libretranslate.co By default language models are loaded from the [argos-index](https://github.com/argosopentech/argospm-index). Sometimes we deploy models on libretranslate.com that haven't been added to the argos-index yet, such as those converted from OPUS ([thread](https://community.libretranslate.com/t/opus-mt-language-models-port-thread/757)) +### Where are the language models saved? + +In `$HOME/.local/share/argos-translate/packages`. On Windows that's `C:\Users\youruser\.local\share\argos-translate\packages`. + ### Can I use LibreTranslate behind a reverse proxy, like Apache2 or Caddy? Yes, here are config examples for Apache2 and Caddy that redirect a subdomain (with HTTPS certificate) to LibreTranslate running on a docker at localhost. @@ -517,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. +
@@ -625,6 +687,38 @@ Add this to an existing NGINX config or save it as `libretranslate` in the `/etc
+### 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: @@ -635,9 +729,9 @@ const res = await fetch("https://libretranslate.com/translate", { body: JSON.stringify({ q: ["Hello", "world"], source: "en", - target: "es" + target: "es", }), - headers: { "Content-Type": "application/json" } + headers: { "Content-Type": "application/json" }, }); console.log(await res.json()); @@ -649,6 +743,14 @@ console.log(await res.json()); // } ``` +## Contributing + +We welcome contributions! Here's some ideas: + +- Train a new language model using [Locomotive](https://github.com/LibreTranslate/Locomotive). For example, 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. @@ -660,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) + diff --git a/TRADEMARK.md b/TRADEMARK.md index d4ac739..9e42244 100644 --- a/TRADEMARK.md +++ b/TRADEMARK.md @@ -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) diff --git a/VERSION b/VERSION index 94fe62c..943f9cb 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.5.4 +1.7.1 diff --git a/docker-compose.yml b/docker-compose.yml index f68be5a..1156028 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -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: diff --git a/docker/Dockerfile b/docker/Dockerfile index f34cd0f..d1219ec 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -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==2.0.1 --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", "*" ] diff --git a/docker/arm.Dockerfile b/docker/arm.Dockerfile index f60c8ad..8788f65 100644 --- a/docker/arm.Dockerfile +++ b/docker/arm.Dockerfile @@ -1,4 +1,4 @@ -FROM arm64v8/python:3.10.10-slim-bullseye as builder +FROM arm64v8/python:3.11.11-slim-bullseye as builder WORKDIR /app @@ -16,10 +16,11 @@ 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.10.10-slim-bullseye +FROM arm64v8/python:3.11.11-slim-bullseye ARG with_models=false ARG models="" @@ -40,4 +41,4 @@ RUN if [ "$with_models" = "true" ]; then \ fi EXPOSE 5000 -ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "0.0.0.0" ] +ENTRYPOINT [ "./venv/bin/libretranslate", "--host", "*" ] diff --git a/docker/cuda.Dockerfile b/docker/cuda.Dockerfile index 1b29547..9ce0751 100644 --- a/docker/cuda.Dockerfile +++ b/docker/cuda.Dockerfile @@ -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", "*" ] diff --git a/docker/root-with-sshd.Dockerfile b/docker/root-with-sshd.Dockerfile new file mode 100644 index 0000000..90b5579 --- /dev/null +++ b/docker/root-with-sshd.Dockerfile @@ -0,0 +1,105 @@ +FROM python:3.11.11-slim-bullseye AS builder + +WORKDIR /app + +ARG DEBIAN_FRONTEND=noninteractive +RUN <'/app/start.sh' < + +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 + +## 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) \ No newline at end of file diff --git a/docs/README.es.md b/docs/README.es.md new file mode 100644 index 0000000..77b8588 --- /dev/null +++ b/docs/README.es.md @@ -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: '

Hello!

', + source: "en", + target: "es", + format: "html", + }), + headers: { "Content-Type": "application/json" }, +}); + +console.log(await res.json()); +``` + +Respuesta: + +```javascript +{ + "translatedText": "

¡Hola!

" +} +``` + +### 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 + +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 + +## 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 +``` + +### 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: + + + +```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 . 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": "", +"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. + +
+Configuración de Apache +
+ +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 + +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 + + +#https + +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 + +``` + +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. + +
+ +
+Configuración de Caddy +
+ +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. + +
+ +
+NGINX config +
+ +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`. + +
+ +### 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) \ No newline at end of file diff --git a/docs/TRADEMARK.es.md b/docs/TRADEMARK.es.md new file mode 100644 index 0000000..8cb9010 --- /dev/null +++ b/docs/TRADEMARK.es.md @@ -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) \ No newline at end of file diff --git a/libretranslate/api_keys.py b/libretranslate/api_keys.py index ea9e603..e56ca83 100644 --- a/libretranslate/api_keys.py +++ b/libretranslate/api_keys.py @@ -32,41 +32,49 @@ class Database: """CREATE TABLE IF NOT EXISTS api_keys ( "api_key" TEXT NOT NULL, "req_limit" INTEGER NOT NULL, + "char_limit" INTEGER DEFAULT NULL, PRIMARY KEY("api_key") );""" ) + # Schema/upgrade checks + schema = self.c.execute("SELECT sql FROM sqlite_master WHERE type='table' AND name='api_keys';").fetchone()[0] + if '"char_limit" INTEGER DEFAULT NULL' not in schema: + self.c.execute('ALTER TABLE api_keys ADD COLUMN "char_limit" INTEGER DEFAULT NULL;') + def lookup(self, api_key): - req_limit = self.cache.get(api_key) - if req_limit is None: + val = self.cache.get(api_key) + if val is None: # DB Lookup stmt = self.c.execute( - "SELECT req_limit FROM api_keys WHERE api_key = ?", (api_key,) + "SELECT req_limit, char_limit FROM api_keys WHERE api_key = ?", (api_key,) ) row = stmt.fetchone() if row is not None: - self.cache[api_key] = row[0] - req_limit = row[0] + self.cache[api_key] = row + val = row else: self.cache[api_key] = False - req_limit = False + val = False - if isinstance(req_limit, bool): - req_limit = None + if isinstance(val, bool): + val = None - return req_limit + return val - def add(self, req_limit, api_key="auto"): + def add(self, req_limit, api_key="auto", char_limit=None): if api_key == "auto": api_key = str(uuid.uuid4()) + if char_limit == 0: + char_limit = None self.remove(api_key) self.c.execute( - "INSERT INTO api_keys (api_key, req_limit) VALUES (?, ?)", - (api_key, req_limit), + "INSERT INTO api_keys (api_key, req_limit, char_limit) VALUES (?, ?, ?)", + (api_key, req_limit, char_limit), ) self.c.commit() - return (api_key, req_limit) + return (api_key, req_limit, char_limit) def remove(self, api_key): self.c.execute("DELETE FROM api_keys WHERE api_key = ?", (api_key,)) @@ -74,7 +82,7 @@ class Database: return api_key def all(self): - row = self.c.execute("SELECT api_key, req_limit FROM api_keys") + row = self.c.execute("SELECT api_key, req_limit, char_limit FROM api_keys") return row.fetchall() @@ -84,8 +92,8 @@ class RemoteDatabase: self.cache = ExpiringDict(max_len=max_cache_len, max_age_seconds=max_cache_age) def lookup(self, api_key): - req_limit = self.cache.get(api_key) - if req_limit is None: + val = self.cache.get(api_key) + if val is None: try: r = requests.post(self.url, data={'api_key': api_key}, timeout=60) res = r.json() @@ -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 diff --git a/libretranslate/app.py b/libretranslate/app.py index 78994b5..bc89f32 100644 --- a/libretranslate/app.py +++ b/libretranslate/app.py @@ -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,6 +102,9 @@ 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, db_multiplier=1, multiplier=1): req_limit = default_limit @@ -96,13 +113,28 @@ def get_req_limits(default_limit, api_keys_db, db_multiplier=1, multiplier=1): api_key = get_req_api_key() if api_key: - db_req_limit = api_keys_db.lookup(api_key) - if db_req_limit is not None: - req_limit = db_req_limit * db_multiplier + api_key_limits = api_keys_db.lookup(api_key) + if api_key_limits is not None: + req_limit = api_key_limits[0] * db_multiplier return int(req_limit * multiplier) +def get_char_limit(default_limit, api_keys_db): + char_limit = default_limit + + if api_keys_db: + api_key = get_req_api_key() + + if api_key: + api_key_limits = api_keys_db.lookup(api_key) + if api_key_limits is not None: + if api_key_limits[1] is not None: + char_limit = api_key_limits[1] + + return char_limit + + def get_routes_limits(args, api_keys_db): default_req_limit = args.req_limit if default_req_limit == -1: @@ -132,6 +164,23 @@ def get_routes_limits(args, api_keys_db): 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 @@ -204,14 +253,31 @@ def create_app(args): from flask_limiter import Limiter + def limits_cost(): + req_cost = getattr(request, 'req_cost', 1) + if args.req_time_cost > 0: + return max(req_cost, int(math.ceil(getattr(request, 'duration', 0) / args.req_time_cost))) + else: + return req_cost + + 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, 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=lambda: getattr(request, 'req_cost', 1) + default_limits_cost=limits_cost, + strategy="moving-window", ) else: from .no_limiter import Limiter @@ -279,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: @@ -310,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): @@ -340,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, @@ -353,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()) @@ -406,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 @@ -466,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: @@ -525,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')) @@ -540,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 @@ -547,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: @@ -559,23 +691,27 @@ def create_app(args): src_texts = q if batch else [q] - if args.char_limit != -1: + if char_limit != -1: for text in src_texts: - if len(text) > args.char_limit: + if len(text) > char_limit: abort( 400, - description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=len(text), limit=args.char_limit), + description=_("Invalid request: request (%(size)s) exceeds text limit (%(limit)s)", size=len(text), limit=char_limit), ) if batch: request.req_cost = max(1, len(q)) - - if source_lang == "auto": - candidate_langs = detect_languages(src_texts) - detected_src_lang = candidate_langs[0] + + 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: - detected_src_lang = {"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) if src_lang is None: @@ -594,54 +730,61 @@ def create_app(args): try: if batch: - results = [] + batch_results = [] + batch_alternatives = [] for text in q: translator = src_lang.get_translation(tgt_lang) if translator is None: abort(400, description=_("%(tname)s (%(tcode)s) is not available as a target language from %(sname)s (%(scode)s)", tname=_lazy(tgt_lang.name), tcode=tgt_lang.code, sname=_lazy(src_lang.name), scode=src_lang.code)) - if text_format == "html": - translated_text = str(translate_html(translator, text)) + 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": [detected_src_lang] * len(q) - } - ) - 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_lang.get_translation(tgt_lang) if translator is None: abort(400, description=_("%(tname)s (%(tcode)s) is not available as a target language from %(sname)s (%(scode)s)", tname=_lazy(tgt_lang.name), tcode=tgt_lang.code, sname=_lazy(src_lang.name), scode=src_lang.code)) - if text_format == "html": - translated_text = str(translate_html(translator, q)) + 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": detected_src_lang - } - ) - 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))) @@ -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')) @@ -752,7 +896,7 @@ def create_app(args): src_lang = next(iter([l for l in languages if l.code == source_lang]), None) - if src_lang is None: + 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) @@ -771,8 +915,16 @@ def create_app(args): # set the cost of the request to N = bytes / char_limit, which is # roughly equivalent to a batch process of N batches assuming # each batch uses all available limits - if args.char_limit > 0: - request.req_cost = max(1, int(os.path.getsize(filepath) / args.char_limit)) + if char_limit > 0: + request.req_cost = max(1, int(os.path.getsize(filepath) / char_limit)) + + 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) @@ -825,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 @@ -846,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 @@ -901,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 @@ -1047,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')) diff --git a/libretranslate/default_values.py b/libretranslate/default_values.py index 96a833e..99cf329 100644 --- a/libretranslate/default_values.py +++ b/libretranslate/default_values.py @@ -81,6 +81,11 @@ _default_options_objects = [ 'default_value': -1, 'value_type': 'int' }, + { + 'name': 'REQ_TIME_COST', + 'default_value': -1, + 'value_type': 'int' + }, { 'name': 'BATCH_LIMIT', 'default_value': -1, @@ -111,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, @@ -146,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, diff --git a/libretranslate/detect.py b/libretranslate/detect.py index b13d52c..023adba 100644 --- a/libretranslate/detect.py +++ b/libretranslate/detect.py @@ -3,7 +3,8 @@ from langdetect import DetectorFactory DetectorFactory.seed = 0 -from langdetect import detect_langs +from langdetect import detect_langs, LangDetectException +from langdetect.lang_detect_exception import ErrorCode from lexilang.detector import detect as lldetect @@ -20,9 +21,11 @@ def check_lang(langcodes, lang): def normalized_lang_code(lang): code = lang.lang - # Handle zh-cn - if code.startswith("zh"): + # Handle Chinese + if code == "zh-cn": code = "zh" + elif code == "zh-tw": + code = "zt" return code class Detector: @@ -35,11 +38,17 @@ class Detector: if conf > 0: return [Language(code, round(conf * 100))] - 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)] + try: + 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 return [Language(normalized_lang_code(lang), round(lang.prob * 100)) for lang in top_3_choices] diff --git a/libretranslate/flood.py b/libretranslate/flood.py index 63cd392..3f87c9b 100644 --- a/libretranslate/flood.py +++ b/libretranslate/flood.py @@ -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 \ No newline at end of file diff --git a/libretranslate/init.py b/libretranslate/init.py index 098cb20..0df8ba3 100644 --- a/libretranslate/init.py +++ b/libretranslate/init.py @@ -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: diff --git a/libretranslate/language.py b/libretranslate/language.py index 407f695..42f8866 100644 --- a/libretranslate/language.py +++ b/libretranslate/language.py @@ -6,6 +6,33 @@ from argostranslate import translate 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 @@ -72,7 +99,7 @@ def detect_languages(text): # sort the candidates descending based on the detected confidence candidates.sort( - key=lambda l: (l.confidence * l.text_length) / text_length_total, reverse=True + key=lambda l: 0 if text_length_total == 0 else (l.confidence * l.text_length) / text_length_total, reverse=True ) return [{"confidence": l.confidence, "language": l.code} for l in candidates] diff --git a/libretranslate/locales/ar/LC_MESSAGES/messages.po b/libretranslate/locales/ar/LC_MESSAGES/messages.po index f02ab4a..2bb6937 100644 --- a/libretranslate/locales/ar/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ar/LC_MESSAGES/messages.po @@ -8,108 +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-11-02 04:00+0000\n" -"Last-Translator: Rex_sa \n" -"Language-Team: Arabic \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-03-02 05:55+0000\n" +"Last-Translator: ButterflyOfFire \n" +"Language-Team: Arabic \n" "Language: ar\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " -"&& n%100<=10 ? 3 : n%100>=0 && n%100<=2 ? 4 : 5);\n" -"X-Generator: Weblate 5.2-dev\n" +"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 "عدم وجود طلب: صفر البارامترات ليست رقم %(name)s" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "عدم وجود طلب: صفر البارامترات يجب أن تكون %(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 غير مدعوم‬" -#: 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 "الاقتراحات معطلة على هذا الخادم." @@ -118,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" @@ -249,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 "النص المترجمة" @@ -304,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" @@ -512,155 +598,168 @@ 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 المساهمون" #~ 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 "غاليشي" diff --git a/libretranslate/locales/az/LC_MESSAGES/messages.po b/libretranslate/locales/az/LC_MESSAGES/messages.po index 10a4dee..7374350 100644 --- a/libretranslate/locales/az/LC_MESSAGES/messages.po +++ b/libretranslate/locales/az/LC_MESSAGES/messages.po @@ -8,106 +8,117 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-08-31 07:05+0000\n" -"Last-Translator: Ali Evcil \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-09-17 21:09+0000\n" +"Last-Translator: Dinissantos \n" +"Language-Team: Azerbaijani \n" "Language: az\n" -"Language-Team: Azerbaijani " -"\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"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: Qeydiyyat 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: Qeydiyyat parametr <= %(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" +" və 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" diff --git a/libretranslate/locales/be/LC_MESSAGES/messages.po b/libretranslate/locales/be/LC_MESSAGES/messages.po new file mode 100644 index 0000000..ab77395 --- /dev/null +++ b/libretranslate/locales/be/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language: be\n" +"Language-Team: Belarusian " +"\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 "" + diff --git a/libretranslate/locales/be/meta.json b/libretranslate/locales/be/meta.json new file mode 100644 index 0000000..7d4398d --- /dev/null +++ b/libretranslate/locales/be/meta.json @@ -0,0 +1,4 @@ +{ + "name": "be", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/bg/LC_MESSAGES/messages.po b/libretranslate/locales/bg/LC_MESSAGES/messages.po new file mode 100644 index 0000000..270e290 --- /dev/null +++ b/libretranslate/locales/bg/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: Bulgarian \n" +"Language: bg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.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 "галисийски" diff --git a/libretranslate/locales/bg/meta.json b/libretranslate/locales/bg/meta.json new file mode 100644 index 0000000..f2d8b98 --- /dev/null +++ b/libretranslate/locales/bg/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Bulgarian", + "reviewed": true +} diff --git a/libretranslate/locales/bn/LC_MESSAGES/messages.po b/libretranslate/locales/bn/LC_MESSAGES/messages.po new file mode 100644 index 0000000..d494802 --- /dev/null +++ b/libretranslate/locales/bn/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: bn \n" +"Language: bn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Generated-By: Babel 2.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 কি প্রাপ্ত করার জন্য একটি 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 "" +" ( চিহ্ন)উপলব্ধ নয় ( চিহ্ন)আপনি কি মনে " +"করতে পারেন? %(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 "আজারবাইজানি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 "লোড করতে ব্যর্থ %(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 "অাপনার সিস্টেম সম্বন্ধে তথ্য দেখুন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 "" +"সহ ধরন এবং বিদারনশীল %(heart)s %(contributors)s " +"%(engine)s" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "%(libretranslate)s Contributors" +msgstr " অংশগ্রহণকারী %(libretranslate)s" + +#~ msgid "Basque" +#~ msgstr "বাস্ক" + +#~ msgid "Galician" +#~ msgstr "অংশগ্রহণকারীদের আমন্ত্রণ জানান" diff --git a/libretranslate/locales/bn/meta.json b/libretranslate/locales/bn/meta.json new file mode 100644 index 0000000..0bc3ef5 --- /dev/null +++ b/libretranslate/locales/bn/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Bengali", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/ca/LC_MESSAGES/messages.po b/libretranslate/locales/ca/LC_MESSAGES/messages.po new file mode 100644 index 0000000..b200dc1 --- /dev/null +++ b/libretranslate/locales/ca/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.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" diff --git a/libretranslate/locales/ca/meta.json b/libretranslate/locales/ca/meta.json new file mode 100644 index 0000000..3eb289f --- /dev/null +++ b/libretranslate/locales/ca/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Catalan", + "reviewed": true +} diff --git a/libretranslate/locales/cs/LC_MESSAGES/messages.po b/libretranslate/locales/cs/LC_MESSAGES/messages.po index d942624..6abb3e0 100644 --- a/libretranslate/locales/cs/LC_MESSAGES/messages.po +++ b/libretranslate/locales/cs/LC_MESSAGES/messages.po @@ -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: 2024-01-10 18:14+0000\n" -"Last-Translator: Michal Čihař \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-25 07:48+0000\n" +"Last-Translator: slrslr \n" "Language-Team: Czech \n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 5.4-dev\n" +"Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\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 "Neplatný formát 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 "Automaticky rozpoznat" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Neoprávněné" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Příliš mnoho omezení požadavků" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Neplatný API klíč" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Obraťte se na provozovatele serveru pro získání API klíče" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Navštivte %(url)s pro získání API klíče" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Zpomalení:" -#: libretranslate/app.py:525 libretranslate/app.py:527 -#: libretranslate/app.py:529 libretranslate/app.py:741 -#: libretranslate/app.py:743 libretranslate/app.py:745 -#: libretranslate/app.py:896 libretranslate/app.py:1053 -#: libretranslate/app.py:1055 libretranslate/app.py:1057 -#: libretranslate/app.py:1059 +#: libretranslate/app.py: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 "Neplatný požadavek: chybějící parametr %(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 "Neplatná žádost: %(name)s parametr není číslo" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Neplatná žádost: %(name)s 2 nařízení o kapitálových požadavcích. %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" -"Neplatná požadavek: požadavek (%(size)s) překračuje limit textu (%(limit)s)" +"Neplatná požadavek: požadavek (%(size)s) překračuje limit textu " +"(%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 +#: libretranslate/app.py: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 není podporováno" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s formát není podporován" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py: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) není k dispozici jako cílový jazyk od %(sname)s " "(%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Nelze přeložit text: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." msgstr "Překlady souborů jsou na tomto serveru zakázány." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Neplatný požadavek: prázdný soubor" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Neplatný požadavek: formát souboru není podporován" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Neplatný název souboru" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Návrhy jsou na tomto serveru zakázány." @@ -120,118 +132,190 @@ msgid "English" msgstr "Angličtina" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albánie" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabština" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Ázerbájdžánština" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengálsko" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulharsky" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalánština" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Čínština" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Čína (tradiční)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Čeština" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Dánština" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Holandština" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estonština" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Finština" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francouzština" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Němčina" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Řečtina" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebrejština" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hindština" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Maďarština" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonéština" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irština" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italština" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japonština" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Korejština" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Lotyšsky" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litevština" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malay" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norština" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Perština" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polština" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugalština" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugalština (Brazílie)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumunsko" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Ruština" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovenština" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovinsky" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Španělština" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Švédština" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Thajské" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turečtina" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukrajinština" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Srbština" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrajinština" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamština" @@ -251,7 +335,7 @@ msgstr "překlady" msgid "Translate text from a language to another" msgstr "Přeložit text do jiného jazyka" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Přeložený text" @@ -306,206 +390,210 @@ msgstr "" "* `html` - HTML kód\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Preferovaný počet alternativních překladů" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API klíč" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Přeložit soubor do jiného jazyka" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Přeložený soubor" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Soubor k překladu" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Rozpozná jazyk jediného textu" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Rozpoznání" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Chyba rozpoznání" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Text pro rozpoznání" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Načíst nastavení specifické pro rozhraní" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "nastavení rozhraní" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "rozhraní" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Odeslat návrh na zlepšení překladu" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Hledat" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Chybí oprávnění" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Původní text" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Navrhovaný překlad" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Jazyk původního textu" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Jazyk navrhovaného překladu" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "zpětná vazba" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Kód jazyka" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Lidsky čitelný název jazyka (v angličtině)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Podporované cílové jazykové kódy" -#: libretranslate/locales/.swag.py:39 -msgid "Translated text(s)" -msgstr "Přeložit text(y)" - #: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "Přeložený text(y)" + +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Chybová zpráva" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Důvod pro zpomalení" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL přeloženého souboru" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Míra jistoty" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Omezení počtu znaků pro tento jazyk (-1 označuje žádný limit)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Časový limit překladu rozhraní" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Jestli je dostupná databáze API klíčů." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Jestli je vyžadován API klíč." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Jestli je povoleno podání návrhů." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Podporované formáty souborů" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Jestli bylo podání úspěšné" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Kopírovat text" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 "Nelze načíst %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Neznámá chyba" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Zkopírováno" -#: 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 "Díky za opravu. Všimněte si, že návrh nebude mít vliv hned." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Žádné jazyky. Nainstalovali jste modely správně?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "Zadejte ve svém API klíč. Pokud potřebujete klíč API, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "následujte odkaz „Získejte API klíč“." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "obraťte se na provozovatele serveru." #: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27 -#: libretranslate/templates/index.html:336 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" -msgstr "Zadaramo a Open Source API strojového překladu" +msgstr "Zdarma a Open Source API strojového překladu" #: libretranslate/templates/index.html:10 #: libretranslate/templates/index.html:31 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 "" -"Zdarma a Open Source API strojového překladu. Vlastní hostovaní, použitelné " -"bez připojení a snadno nastavitelné. Spusťte si vlastní API server během " -"několika minut." +"Zdarma a Open Source API strojového překladu. Zdarma ke stažení, " +"použitelné bez připojení a snadno nastavitelné. Spusťte si vlastní API " +"server během několika minut." #: libretranslate/templates/index.html:11 msgid "translation" @@ -515,155 +603,173 @@ msgstr "překlad" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API dokumentace" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Získejte API klíč" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "Nastavit API klíč" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Změnit jazyk" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Editace" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" msgstr "Přepnout tmavý / světlý režim" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Odmítnout" -#: libretranslate/templates/index.html:171 +#: libretranslate/templates/index.html:177 +msgid "" +"Due to bot abuse, translation requests are temporarily limited to users " +"with a valid API key. Sorry for the inconvenience!" +msgstr "" +"Vzhledem ke zneužití roboty, jsou požadavky na překlad dočasně omezeny na " +"uživatele s platným klíčem API. Omlouváme se za nepříjemnost!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "Překladové API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Přeložit text" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Přeložit soubory" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Přeložit z" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Vyměnit zdroj a cílové jazyky" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Přeložit do" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Text překládat" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Smazat text" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Navrhnout překlad" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Hledat" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Odeslat" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Podporované formáty souborů:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Soubor" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Odebrat soubor" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Přeložit" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Stáhnout" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Požadavek" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Odpoveď" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "Open Source API strojového překladu" -#: libretranslate/templates/index.html:316 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Vlastní hostovnání. Použitelné bez připojení. Snadné nastavení." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Zdarma ke stažení. Použitelné bez připojení. Snadné nastavení." -#: 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 "" -"Toto veřejné API by měl být použito jen pro testování, osobní nebo pro " -"občasné použití. Pokud se chystáte spustit aplikaci v ostrém provozu, prosím " -"%(host_server)s nebo %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "hostujte vlastní server" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "získejte API klíč" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" msgstr "Vyrobeno s %(heart)s %(contributors)s a poháněno %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s přispěvateli" #~ msgid "multipart/form-data" #~ msgstr "vícepart/form-data" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamština" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Toto veřejné API by měl být " +#~ "použito jen pro testování, osobní nebo" +#~ " pro občasné použití. Pokud se " +#~ "chystáte spustit aplikaci v ostrém " +#~ "provozu, prosím %(host_server)s nebo " +#~ "%(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "hostujte vlastní server" + +#~ msgid "get an API key" +#~ msgstr "získejte API klíč" + +#~ msgid "Basque" +#~ msgstr "" + +#~ msgid "Galician" +#~ msgstr "" diff --git a/libretranslate/locales/cv/LC_MESSAGES/messages.po b/libretranslate/locales/cv/LC_MESSAGES/messages.po new file mode 100644 index 0000000..951810e --- /dev/null +++ b/libretranslate/locales/cv/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language: cv\n" +"Language-Team: Chuvash " +"\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 "" + diff --git a/libretranslate/locales/da/LC_MESSAGES/messages.po b/libretranslate/locales/da/LC_MESSAGES/messages.po index 22bae75..6f937b9 100644 --- a/libretranslate/locales/da/LC_MESSAGES/messages.po +++ b/libretranslate/locales/da/LC_MESSAGES/messages.po @@ -8,111 +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-11-18 05:03+0000\n" -"Last-Translator: symegac <97731141+symegac@users.noreply.github.com>\n" -"Language-Team: Danish \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 \n" +"Language-Team: Danish \n" "Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.2\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." @@ -121,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 "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" @@ -246,19 +327,19 @@ msgstr "Liste over sprog" #: libretranslate/locales/.swag.py:3 msgid "translate" -msgstr "oversætter" +msgstr "oversæt" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" 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" @@ -286,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" @@ -303,370 +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 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Fil at oversætte" -#: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "Angiv sproget for en enkelt tekst" - #: 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 -msgid "Text to detect" -msgstr "Tekst at opdage" - #: 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 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Foreslået oversættelse" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Originaltekstens sprog" -#: libretranslate/locales/.swag.py:34 -msgid "Language of suggested translation" -msgstr "Foreslået oversættelses sprog" - #: libretranslate/locales/.swag.py:35 -msgid "feedback" -msgstr "tilbagemelding" +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: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 "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 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Tekst at oversætte" -#: libretranslate/templates/index.html:213 +#: 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 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "Maskinoversættelses-API med åben kildekode" +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 -msgid "host your own server" -msgstr "host din egen server" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "få en API-nøgle" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html: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" diff --git a/libretranslate/locales/de/LC_MESSAGES/messages.po b/libretranslate/locales/de/LC_MESSAGES/messages.po index 25c3329..6cb2330 100644 --- a/libretranslate/locales/de/LC_MESSAGES/messages.po +++ b/libretranslate/locales/de/LC_MESSAGES/messages.po @@ -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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-26 07:29+0000\n" +"Last-Translator: Wuzzy \n" +"Language-Team: German \n" "Language: de\n" -"Language-Team: German " -"\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" diff --git a/libretranslate/locales/el/LC_MESSAGES/messages.po b/libretranslate/locales/el/LC_MESSAGES/messages.po index fde27d4..2dd683f 100644 --- a/libretranslate/locales/el/LC_MESSAGES/messages.po +++ b/libretranslate/locales/el/LC_MESSAGES/messages.po @@ -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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-12 08:53+0000\n" +"Last-Translator: GiannosOB \n" +"Language-Team: Greek \n" "Language: el\n" -"Language-Team: Greek " -"\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"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 πρέπει να είναι <= > %(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 "Γαλικιακά" diff --git a/libretranslate/locales/eo/LC_MESSAGES/messages.po b/libretranslate/locales/eo/LC_MESSAGES/messages.po index d817bdc..42ae9ac 100644 --- a/libretranslate/locales/eo/LC_MESSAGES/messages.po +++ b/libretranslate/locales/eo/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" "PO-Revision-Date: 2023-05-02 19:52+0000\n" "Last-Translator: Jorge Maldonado Ventura \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: 0 0 0 0 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: 0 0 0 0 parametro devas esti 1 1 1 1 " +"%(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 "" + diff --git a/libretranslate/locales/es/LC_MESSAGES/messages.po b/libretranslate/locales/es/LC_MESSAGES/messages.po index 5b23d77..6bd5b3e 100644 --- a/libretranslate/locales/es/LC_MESSAGES/messages.po +++ b/libretranslate/locales/es/LC_MESSAGES/messages.po @@ -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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-20 10:36+0000\n" +"Last-Translator: xuars \n" +"Language-Team: Spanish \n" "Language: es\n" -"Language-Team: Spanish " -"\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.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" diff --git a/libretranslate/locales/et/LC_MESSAGES/messages.po b/libretranslate/locales/et/LC_MESSAGES/messages.po new file mode 100644 index 0000000..623495e --- /dev/null +++ b/libretranslate/locales/et/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: Estonian \n" +"Language: et\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"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" diff --git a/libretranslate/locales/et/meta.json b/libretranslate/locales/et/meta.json new file mode 100644 index 0000000..01f9bd4 --- /dev/null +++ b/libretranslate/locales/et/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Estonian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/eu/LC_MESSAGES/messages.po b/libretranslate/locales/eu/LC_MESSAGES/messages.po index a9b7da6..89650a1 100644 --- a/libretranslate/locales/eu/LC_MESSAGES/messages.po +++ b/libretranslate/locales/eu/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Basque translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,289 +8,375 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.12\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-12-05 20:06+0000\n" -"Last-Translator: Aitor Salaberria \n" -"Language-Team: Basque \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 \n" "Language: eu\n" +"Language-Team: Basque " +"\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.3-dev\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" msgstr "JSON formatu baliogabea" -#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Hautemate automatikoa" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Baimenik gabe" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Eskaera-mugaren urraketa gehiegi" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "API-aren gako baliogabea" +msgstr "API gako baliogabea" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "" +msgstr "Mesedez, jarri harremanetan zerbitzari-operadorearekin API gakoa lortzeko" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" -msgstr "" +msgstr "Bisitatu %(url)s API gako bat lortzeko" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" -msgstr "" +msgstr "Moteltzea:" -#: 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 "" +msgstr "Eskaera baliogabea: %(name)s parametroa falta da" -#: 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 "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: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 "" +msgstr "%(lang)s ez da bateragarria" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" -msgstr "" +msgstr "%(format)s formatua ez da bateragarria" -#: 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) ez dago eskuragarri helburu hizkuntza moduan " +"%(sname)s-(e)tik (%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" -msgstr "" +msgstr "Ezin da testua itzuli: %(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 "Fitxategi itzulpenak ez daude gaituta zerbitzari honetan." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" -msgstr "" +msgstr "Eskaera baliogabea: fitxategi hutsa" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" -msgstr "" +msgstr "Eskaera baliogabea: fitxategiaren formatua ez da bateragarria" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" -msgstr "" +msgstr "Fitxategiaren izena baliogabea" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." -msgstr "" +msgstr "Iradokizunak ez daude gaituta zerbitzari honetan." #: libretranslate/locales/.langs.py:1 msgid "English" -msgstr "" +msgstr "Ingelesa" #: libretranslate/locales/.langs.py:2 -msgid "Arabic" -msgstr "" +msgid "Albanian" +msgstr "Albaniera" #: libretranslate/locales/.langs.py:3 -msgid "Azerbaijani" -msgstr "" +msgid "Arabic" +msgstr "Arabiera" #: libretranslate/locales/.langs.py:4 -msgid "Chinese" -msgstr "" +msgid "Azerbaijani" +msgstr "Azerbaijanera" #: libretranslate/locales/.langs.py:5 -msgid "Czech" -msgstr "" +msgid "Bengali" +msgstr "Bengalera" #: libretranslate/locales/.langs.py:6 -msgid "Danish" -msgstr "" +msgid "Bulgarian" +msgstr "Bulgariera" #: libretranslate/locales/.langs.py:7 -msgid "Dutch" -msgstr "" +msgid "Catalan" +msgstr "Katalana" #: libretranslate/locales/.langs.py:8 -msgid "Esperanto" -msgstr "" +msgid "Chinese" +msgstr "Txinera" #: libretranslate/locales/.langs.py:9 -msgid "Finnish" -msgstr "" +msgid "Chinese (traditional)" +msgstr "Txinera (tradizionala)" #: libretranslate/locales/.langs.py:10 -msgid "French" -msgstr "" +msgid "Czech" +msgstr "Txekiera" #: libretranslate/locales/.langs.py:11 -msgid "German" -msgstr "" +msgid "Danish" +msgstr "Daniera" #: libretranslate/locales/.langs.py:12 -msgid "Greek" -msgstr "" +msgid "Dutch" +msgstr "Nederlandera" #: libretranslate/locales/.langs.py:13 -msgid "Hebrew" -msgstr "" +msgid "Esperanto" +msgstr "Esperantoa" #: libretranslate/locales/.langs.py:14 -msgid "Hindi" -msgstr "" +msgid "Estonian" +msgstr "Estoniera" #: libretranslate/locales/.langs.py:15 -msgid "Hungarian" -msgstr "" +msgid "Finnish" +msgstr "Finlandiera" #: libretranslate/locales/.langs.py:16 -msgid "Indonesian" -msgstr "" +msgid "French" +msgstr "Frantsesa" #: libretranslate/locales/.langs.py:17 -msgid "Irish" -msgstr "" +msgid "German" +msgstr "Alemana" #: libretranslate/locales/.langs.py:18 -msgid "Italian" -msgstr "" +msgid "Greek" +msgstr "Greziera" #: libretranslate/locales/.langs.py:19 -msgid "Japanese" -msgstr "" +msgid "Hebrew" +msgstr "Hebreera" #: libretranslate/locales/.langs.py:20 -msgid "Korean" -msgstr "" +msgid "Hindi" +msgstr "Hindiera" #: libretranslate/locales/.langs.py:21 -msgid "Persian" -msgstr "" +msgid "Hungarian" +msgstr "Hungariera" #: libretranslate/locales/.langs.py:22 -msgid "Polish" -msgstr "" +msgid "Indonesian" +msgstr "Indonesiera" #: libretranslate/locales/.langs.py:23 -msgid "Portuguese" -msgstr "" +msgid "Irish" +msgstr "Irlandera" #: libretranslate/locales/.langs.py:24 -msgid "Russian" -msgstr "" +msgid "Italian" +msgstr "Italiera" #: libretranslate/locales/.langs.py:25 -msgid "Slovak" -msgstr "" +msgid "Japanese" +msgstr "Japoniera" #: libretranslate/locales/.langs.py:26 -msgid "Spanish" -msgstr "" +msgid "Korean" +msgstr "Koreera" #: libretranslate/locales/.langs.py:27 -msgid "Swedish" -msgstr "" +msgid "Latvian" +msgstr "Letoniera" #: libretranslate/locales/.langs.py:28 -msgid "Turkish" -msgstr "" +msgid "Lithuanian" +msgstr "Lituaniera" #: libretranslate/locales/.langs.py:29 -msgid "Ukranian" -msgstr "" +msgid "Malay" +msgstr "Malaysiera" #: libretranslate/locales/.langs.py:30 -msgid "Vietnamese" +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 "" +msgstr "Eskuratu bateragarriak diren hizkuntzen zerrenda" #: libretranslate/locales/.swag.py:2 msgid "List of languages" -msgstr "" +msgstr "Hizkuntzen zerrenda" #: libretranslate/locales/.swag.py:3 msgid "translate" -msgstr "" +msgstr "itzuli" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "" +msgstr "Itzuli testua hizkuntza batetik bestera" -#: 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 "Itzulitako testua" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" -msgstr "" +msgstr "Eskaera baliogabea" #: libretranslate/locales/.swag.py:7 msgid "Translation error" -msgstr "" +msgstr "Itzulpen errorea" #: libretranslate/locales/.swag.py:8 msgid "Slow down" -msgstr "" +msgstr "Moteldu" #: libretranslate/locales/.swag.py:9 msgid "Banned" -msgstr "" +msgstr "Debekatua" #: libretranslate/locales/.swag.py:10 msgid "Hello world!" -msgstr "" +msgstr "Kaixo mundua!" #: libretranslate/locales/.swag.py:11 msgid "Text(s) to translate" -msgstr "" +msgstr "Itzultzeko testua(k)" #: libretranslate/locales/.swag.py:12 msgid "Source language code" -msgstr "" +msgstr "Jatorrizko hizkuntza kodea" #: libretranslate/locales/.swag.py:13 msgid "Target language code" -msgstr "" +msgstr "Helburu hizkuntza kodea" #: libretranslate/locales/.swag.py:14 msgid "text" -msgstr "" +msgstr "testua" #: libretranslate/locales/.swag.py:15 msgid "html" -msgstr "" +msgstr "html" #: libretranslate/locales/.swag.py:16 msgid "" @@ -298,357 +384,387 @@ msgid "" " * `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 "API key" -msgstr "" +msgid "Preferred number of alternative translations" +msgstr "Itzulpen alternatiboen kopuru hobetsia" #: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "" +msgid "API key" +msgstr "API gakoa" #: libretranslate/locales/.swag.py:19 -msgid "Translated file" -msgstr "" +msgid "Translate file from a language to another" +msgstr "Itzuli fitxategia hizkuntza batetik bestera" #: libretranslate/locales/.swag.py:20 -msgid "File to translate" -msgstr "" +msgid "Translated file" +msgstr "Itzulitako fitxategia" #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "" +msgid "File to translate" +msgstr "Itzultzeko fitxategia" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "" +msgid "Detect the language of a single text" +msgstr "Hauteman testu bakar baten hizkuntza" #: libretranslate/locales/.swag.py:23 -msgid "Detection error" -msgstr "" +msgid "Detections" +msgstr "Hautemateak" #: libretranslate/locales/.swag.py:24 -msgid "Text to detect" -msgstr "" +msgid "Detection error" +msgstr "Hautemate errorea" #: libretranslate/locales/.swag.py:25 -msgid "Retrieve frontend specific settings" -msgstr "" +msgid "Text to detect" +msgstr "Hautemateko testua" #: libretranslate/locales/.swag.py:26 -msgid "frontend settings" -msgstr "" +msgid "Retrieve frontend specific settings" +msgstr "Eskuratu interfazeko ezarpen espezifikoak" #: libretranslate/locales/.swag.py:27 -msgid "frontend" -msgstr "" +msgid "frontend settings" +msgstr "interfaze ezarpenak" #: libretranslate/locales/.swag.py:28 -msgid "Submit a suggestion to improve a translation" -msgstr "" +msgid "frontend" +msgstr "interfazea" #: libretranslate/locales/.swag.py:29 -msgid "Success" -msgstr "" +msgid "Submit a suggestion to improve a translation" +msgstr "Bidali iradokizun bat itzulpena hobetzeko" #: libretranslate/locales/.swag.py:30 -msgid "Not authorized" -msgstr "" +msgid "Success" +msgstr "Arrakasta" #: libretranslate/locales/.swag.py:31 -msgid "Original text" -msgstr "" +msgid "Not authorized" +msgstr "Baimenik gabea" #: libretranslate/locales/.swag.py:32 -msgid "Suggested translation" -msgstr "" +msgid "Original text" +msgstr "Jatorrizko testua" #: libretranslate/locales/.swag.py:33 -msgid "Language of original text" -msgstr "" +msgid "Suggested translation" +msgstr "Iradokitako itzulpena" #: libretranslate/locales/.swag.py:34 -msgid "Language of suggested translation" -msgstr "" +msgid "Language of original text" +msgstr "Jatorrizko testuaren hizkuntza" #: libretranslate/locales/.swag.py:35 -msgid "feedback" -msgstr "" +msgid "Language of suggested translation" +msgstr "Iradokitako itzulpenaren hizkuntza" #: libretranslate/locales/.swag.py:36 -msgid "Language code" -msgstr "" +msgid "feedback" +msgstr "iritzia" #: libretranslate/locales/.swag.py:37 -msgid "Human-readable language name (in English)" -msgstr "" +msgid "Language code" +msgstr "Hizkuntzaren kodea" #: libretranslate/locales/.swag.py:38 -msgid "Supported target language codes" -msgstr "" +msgid "Human-readable language name (in English)" +msgstr "Gizakiak uler dezakeen hizkuntzaren izena (ingelesez)" #: libretranslate/locales/.swag.py:39 -msgid "Translated text(s)" -msgstr "" +msgid "Supported target language codes" +msgstr "Helburuko hizkuntzen kode bateragarriak" #: libretranslate/locales/.swag.py:40 -msgid "Error message" -msgstr "" +msgid "Translated text(s)" +msgstr "Itzulitako testua(k)" #: libretranslate/locales/.swag.py:41 -msgid "Reason for slow down" -msgstr "" +msgid "Error message" +msgstr "Errore mezua" #: libretranslate/locales/.swag.py:42 -msgid "Translated file url" -msgstr "" +msgid "Reason for slow down" +msgstr "Moteltzeko arrazoia" #: libretranslate/locales/.swag.py:43 -msgid "Confidence value" -msgstr "" +msgid "Translated file url" +msgstr "Itzulitako fitxategiaren url" #: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "" +msgid "Confidence value" +msgstr "Konfiantza balioa" #: libretranslate/locales/.swag.py:45 -msgid "Frontend translation timeout" +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 "Whether the API key database is enabled." -msgstr "" +msgid "Frontend translation timeout" +msgstr "Interfazeko itzulpen denbora" #: libretranslate/locales/.swag.py:47 -msgid "Whether an API key is required." -msgstr "" +msgid "Whether the API key database is enabled." +msgstr "API gakoen datu-basea gaituta dagoen ala ez." #: libretranslate/locales/.swag.py:48 -msgid "Whether submitting suggestions is enabled." -msgstr "" +msgid "Whether an API key is required." +msgstr "API gako bat behar den ala ez." #: libretranslate/locales/.swag.py:49 -msgid "Supported files format" -msgstr "" +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 "" +msgstr "Bidalketa arrakastatsua izan den ala ez" #: 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 "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: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 "" +msgstr "Ezin da %(url)s kargatu" -#: 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 "" +msgstr "Errore ezezaguna" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" -msgstr "" +msgstr "Kopiatua" -#: 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 "" +"Eskerrik asko zuzenketagatik. Kontuan izan iradokizunak ez duela " +"berehalakoan eraginik izango." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" -msgstr "" +msgstr "Ez dago hizkuntza erabilgarririk. Modeloak ongi instalatu dituzu?" -#: 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 "" +msgstr "Idatzi zure API gakoa. API gako bat behar baduzu, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." -msgstr "" +msgstr "sakatu \"Lortu API Gakoa\" esteka." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." -msgstr "" +msgstr "jarri zerbitzari-operadorearekin harremanetan." #: 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 "" +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. 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 "" +"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 "" +msgstr "itzulpena" #: 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 Dokak" #: libretranslate/templates/index.html:69 -msgid "GitHub" -msgstr "" +msgid "Get API Key" +msgstr "Lortu API Gakoa" #: libretranslate/templates/index.html:71 -msgid "Set API Key" -msgstr "" +msgid "GitHub" +msgstr "GitHub" #: libretranslate/templates/index.html:73 -msgid "Change language" -msgstr "" +msgid "Set API Key" +msgstr "Ezarri API Gakoa" -#: libretranslate/templates/index.html:79 -msgid "Edit" -msgstr "" +#: 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 "" +msgstr "Modu iluna/argia" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" -msgstr "" +msgstr "Baztertu" -#: libretranslate/templates/index.html:171 -msgid "Translation API" -msgstr "" - -#: libretranslate/templates/index.html:175 -msgid "Translate Text" -msgstr "" - -#: libretranslate/templates/index.html:179 -msgid "Translate Files" -msgstr "" - -#: libretranslate/templates/index.html:185 -msgid "Translate from" -msgstr "" - -#: libretranslate/templates/index.html:195 -msgid "Swap source and target languages" -msgstr "" - -#: libretranslate/templates/index.html:198 -msgid "Translate into" -msgstr "" - -#: libretranslate/templates/index.html:210 -msgid "Text to translate" -msgstr "" - -#: libretranslate/templates/index.html:213 -msgid "Delete text" -msgstr "" - -#: libretranslate/templates/index.html:226 -msgid "Suggest translation" -msgstr "" - -#: libretranslate/templates/index.html:230 -msgid "Cancel" -msgstr "" - -#: libretranslate/templates/index.html:233 -msgid "Send" -msgstr "" - -#: libretranslate/templates/index.html:249 -msgid "Supported file formats:" -msgstr "" - -#: libretranslate/templates/index.html:253 -msgid "File" -msgstr "" - -#: libretranslate/templates/index.html:268 -msgid "Remove file" -msgstr "" - -#: libretranslate/templates/index.html:275 -msgid "Translate" -msgstr "" - -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 -msgid "Download" -msgstr "" - -#: libretranslate/templates/index.html:295 -msgid "Request" -msgstr "" - -#: libretranslate/templates/index.html:300 -msgid "Response" -msgstr "" - -#: libretranslate/templates/index.html:315 -msgid "Open Source Machine Translation API" -msgstr "" - -#: libretranslate/templates/index.html:316 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "" - -#: libretranslate/templates/index.html:335 -msgid "LibreTranslate" -msgstr "" - -#: libretranslate/templates/index.html:337 -msgid "License:" -msgstr "" - -#: libretranslate/templates/index.html:340 -#, python-format +#: libretranslate/templates/index.html:177 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." +"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:340 -msgid "host your own server" -msgstr "" +#: libretranslate/templates/index.html:182 +msgid "Translation API" +msgstr "Itzulpen APIa" -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "" +#: 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 "" +msgstr "%(contributors)s %(heart)sez egina eta %(engine)sk sustatua" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" -msgstr "" +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" + diff --git a/libretranslate/locales/eu/meta.json b/libretranslate/locales/eu/meta.json new file mode 100644 index 0000000..76ebb65 --- /dev/null +++ b/libretranslate/locales/eu/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Basque", + "reviewed": true +} diff --git a/libretranslate/locales/ext/LC_MESSAGES/messages.po b/libretranslate/locales/ext/LC_MESSAGES/messages.po index 48336d0..2039b08 100644 --- a/libretranslate/locales/ext/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ext/LC_MESSAGES/messages.po @@ -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 "" + diff --git a/libretranslate/locales/ext/meta.json b/libretranslate/locales/ext/meta.json new file mode 100644 index 0000000..94f4767 --- /dev/null +++ b/libretranslate/locales/ext/meta.json @@ -0,0 +1,4 @@ +{ + "name": "ext", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/fa/LC_MESSAGES/messages.po b/libretranslate/locales/fa/LC_MESSAGES/messages.po index 5d11894..10b6448 100644 --- a/libretranslate/locales/fa/LC_MESSAGES/messages.po +++ b/libretranslate/locales/fa/LC_MESSAGES/messages.po @@ -8,111 +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-12-26 21:08+0000\n" -"Last-Translator: Moji Norouzi zadeh \n" -"Language-Team: Persian \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-07-26 07:54+0000\n" +"Last-Translator: MjavadH \n" +"Language-Team: Persian \n" "Language: fa\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.4-dev\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 "برای دریافت کلید API از %(url)s بازدید نمایید" -#: 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 "درخواست Invalid: %(name)s پارامتر یک عدد نیست" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "درخواست Invalid: %(name)s پارامتر باید <= 1 1 %(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 "درخواست نامعتبر: فایل خالی است" -#: 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 "پیشنهادات در این سرور غیرفعال است." @@ -121,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 "ویتنامی" @@ -252,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 "متن ترجمه شده" @@ -304,208 +384,212 @@ msgid "" msgstr "" "فرمت متن منبع:\n" "* text - متن ساده\n" -"* html - کدهای اچ تی ام ال\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 "بازیابی تنظیمات ویژه نما" - #: 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 +#: 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 -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 "Frontend translation timeout" +msgstr "محدودیت زمانی ترجمه برای نمای ظاهری" + +#: 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 -msgid "Supported files format" -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 "%(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" +"کلید 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 "با اپراتور سرور تماس بگیرید." -#: 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 ترجمه ماشینی رایگان و متن باز. خود میزبان، با قابلیت راه‌اندازی آسان و " @@ -519,155 +603,169 @@ 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 "گیتهاب" - #: 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 "ترجمه فایل ها" -#: 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." +#: 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 "" -"این 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" #~ 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" diff --git a/libretranslate/locales/fi/LC_MESSAGES/messages.po b/libretranslate/locales/fi/LC_MESSAGES/messages.po index 55a49e2..237a154 100644 --- a/libretranslate/locales/fi/LC_MESSAGES/messages.po +++ b/libretranslate/locales/fi/LC_MESSAGES/messages.po @@ -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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-15 02:15+0000\n" +"Last-Translator: J \n" +"Language-Team: Finnish \n" "Language: fi\n" -"Language-Team: Finnish " -"\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"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 1 1 %(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" diff --git a/libretranslate/locales/fil/LC_MESSAGES/messages.po b/libretranslate/locales/fil/LC_MESSAGES/messages.po new file mode 100644 index 0000000..96e2885 --- /dev/null +++ b/libretranslate/locales/fil/LC_MESSAGES/messages.po @@ -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 , 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 " +"\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 "" + diff --git a/libretranslate/locales/fil/meta.json b/libretranslate/locales/fil/meta.json new file mode 100644 index 0000000..241cc01 --- /dev/null +++ b/libretranslate/locales/fil/meta.json @@ -0,0 +1,4 @@ +{ + "name": "fil", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/fr/LC_MESSAGES/messages.po b/libretranslate/locales/fr/LC_MESSAGES/messages.po index f5dc01e..241ef0f 100644 --- a/libretranslate/locales/fr/LC_MESSAGES/messages.po +++ b/libretranslate/locales/fr/LC_MESSAGES/messages.po @@ -8,81 +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: 2024-01-04 00:08+0000\n" -"Last-Translator: EGuillemot \n" -"Language-Team: French \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-03-05 07:12+0000\n" +"Last-Translator: ButterflyOfFire " +"\n" "Language: fr\n" +"Language-Team: French " +"\n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 5.4-dev\n" "Generated-By: Babel 2.12.1\n" -#: 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" -#: 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 "" "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 " @@ -91,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." @@ -121,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" @@ -252,7 +335,7 @@ msgstr "traduction" msgid "Translate text from a language to another" msgstr "Traduire du texte d’une langue à l'autre" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Texte traduit" @@ -307,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 à l’interface" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "paramètres de l’interface" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "interface" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Soumettre une suggestion pour améliorer une traduction" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Succès" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Autorisation manquante" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Texte original" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Traduction proposée" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Langue du texte original" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Langue de la traduction proposée" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "commentaire" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Code de la langue" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Nom de la langue lisible par un humain (en anglais)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Codes de langues cibles pris en charge" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Texte(s) traduit(s)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Message d'erreur" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Raison du ralentissement" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL du fichier traduit" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Valeur de confiance" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Limite de caractères pour cette langue (-1 indique aucune limite)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Expiration du délai d'attente pour l'interface de traduction" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Indique si la base de données de clés API est activée." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Indique si une clé API est requise." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Indique si l'envoi de suggestions est activé." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Formats de fichier pris en charge" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Si l'envoi a réussi" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template: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." @@ -478,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" @@ -518,156 +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 "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 "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 "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" + diff --git a/libretranslate/locales/ga/LC_MESSAGES/messages.po b/libretranslate/locales/ga/LC_MESSAGES/messages.po index 6a03428..d2ef44d 100644 --- a/libretranslate/locales/ga/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ga/LC_MESSAGES/messages.po @@ -8,81 +8,93 @@ 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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-30 11:20+0000\n" +"Last-Translator: Aindriú Mac Giolla Eoin \n" +"Language-Team: Irish \n" "Language: ga\n" -"Language-Team: Irish " -"\n" -"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 " -":(n>6 && n<11) ? 3 : 4;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :(" +"n>6 && n<11) ? 3 : 4;\n" +"X-Generator: Weblate 5.12-dev\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" msgstr "Formáid JSON marcáilte" -#: 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éan teagmháil Linn" +msgstr "Braith Uathoibríoch" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Gan údarás" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "Go leor sáruithe teorainneacha a iarraidh" +msgstr "Cuireann an iomarca iarratas teorainn le sáruithe" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "Eochair API luachmhar" +msgstr "Eochair API neamhbhailí" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "Téigh i dteagmháil leis an oibreoir freastalaí a fháil eochair API" +msgstr "Déan teagmháil le hoibreoir an fhreastalaí chun eochair API a fháil" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Tabhair cuairt ar %(url)s a fháil eochair API" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" -msgstr "Slowdown:" +msgstr "Go mall:" -#: 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 -#, fuzzy, python-format +#: 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 "Iarratas neamhbhailí: ar iarraidh %(name)s paraiméadar" +msgstr "Iarratas neamhbhailí: paraiméadar %(name)s in easnamh" -#: libretranslate/app.py:544 libretranslate/app.py:553 +#: libretranslate/app.py:666 +#, python-format +msgid "Invalid request: %(name)s parameter is not a number" +msgstr "Iarratas neamhbhailí: ní uimhir é paraiméadar %(name)s" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Iarratas neamhbhailí: Caithfidh paraiméadar %(name)s a bheith <= %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" "Iarratas neamhbhailí: iarratas (%(size)s) níos mó ná teorainn téacs " "(%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 -#, fuzzy, python-format +#: 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íl tacaíocht" +msgstr "Ní thacaítear le %(lang)s" -#: libretranslate/app.py:594 -#, fuzzy, python-format +#: libretranslate/app.py:726 +#, python-format msgid "%(format)s format is not supported" -msgstr "%(format)s Níl formáid tacaíocht" +msgstr "Ní thacaítear le formáid %(format)s" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py:735 libretranslate/app.py:763 #, python-format msgid "" "%(tname)s (%(tcode)s) is not available as a target language from " @@ -91,154 +103,226 @@ msgstr "" "%(tname)s (%(tcode)s) nach bhfuil ar fáil mar sprioctheanga ó %(sname)s " "(%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Ní féidir téacs a aistriú: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." msgstr "Comhaid aistriúcháin atá faoi mhíchumas ar an bhfreastalaí." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Iarratas neamhbhailí: comhad folamh" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Iarratas neamhbhailí: formáid comhaid nach bhfuil tacaíocht" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" -msgstr "Ainm comhaid luachmhar" +msgstr "Ainm comhaid neamhbhailí" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." -msgstr "Tá moltaí faoi mhíchumas ar an bhfreastalaí." +msgstr "Díchumasaítear moltaí ar an bhfreastalaí seo." #: libretranslate/locales/.langs.py:1 msgid "English" -msgstr "Gaeilge agus Béarla" +msgstr "Béarla" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "An Albáinis" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Araibis" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "An Asarbaiseáin" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Beangáilis" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulgáiris" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalóinis" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Sínis" -#: libretranslate/locales/.langs.py:5 -msgid "Czech" -msgstr "An Danmhairgis" - -#: libretranslate/locales/.langs.py:6 -msgid "Danish" -msgstr "An Danmhairgis" - -#: libretranslate/locales/.langs.py:7 -msgid "Dutch" -msgstr "An Ollainnis" - -#: libretranslate/locales/.langs.py:8 -msgid "Esperanto" -msgstr "Seirbhís do Chustaiméirí" - #: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Sínis (traidisiúnta)" + +#: libretranslate/locales/.langs.py:10 +msgid "Czech" +msgstr "Seiceach" + +#: libretranslate/locales/.langs.py:11 +msgid "Danish" +msgstr "Danmhairgis" + +#: libretranslate/locales/.langs.py:12 +msgid "Dutch" +msgstr "Ollainnis" + +#: libretranslate/locales/.langs.py:13 +msgid "Esperanto" +msgstr "Esperanto" + +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Eastóinis" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Fionlainnis" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" -msgstr "Franc na hEilvéise" +msgstr "Fraincis" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Gearmáinis" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" -msgstr "Cineál gas: in airde" +msgstr "Gréigis" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Eabhrais" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" -msgstr "Déan teagmháil linn" +msgstr "Hiondúis" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" -msgstr "Foirm duille: oval" +msgstr "Ungáiris" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" -msgstr "Bláthanna faoi dhíon" +msgstr "Indinéisis" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Gaeilge" -#: libretranslate/locales/.langs.py:18 -msgid "Italian" -msgstr "Taiseachas aeir: fliuch" - -#: libretranslate/locales/.langs.py:19 -msgid "Japanese" -msgstr "Bláthanna cumhra: cumhráin" - -#: libretranslate/locales/.langs.py:20 -msgid "Korean" -msgstr "Bláthanna Gairdín" - -#: libretranslate/locales/.langs.py:21 -msgid "Persian" -msgstr "Cineál gas: in airde" - -#: libretranslate/locales/.langs.py:22 -msgid "Polish" -msgstr "Cineál gas: in airde" - -#: libretranslate/locales/.langs.py:23 -msgid "Portuguese" -msgstr "Bláthanna faoi dhíon" - #: libretranslate/locales/.langs.py:24 -msgid "Russian" -msgstr "Bláthanna cumhra: cumhráin" +msgid "Italian" +msgstr "Iodálach" #: libretranslate/locales/.langs.py:25 -msgid "Slovak" -msgstr "An tSlÃ3ivéin" +msgid "Japanese" +msgstr "Seapánach" #: libretranslate/locales/.langs.py:26 -msgid "Spanish" -msgstr "Riachtanais uisce: measartha" +msgid "Korean" +msgstr "Cóiréis" #: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Laitvis" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Liotuáinis" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malaeis" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Ioruais" + +#: libretranslate/locales/.langs.py:31 +msgid "Persian" +msgstr "Peirsis" + +#: libretranslate/locales/.langs.py:32 +msgid "Polish" +msgstr "Polainnis" + +#: libretranslate/locales/.langs.py:33 +msgid "Portuguese" +msgstr "Portaingéilis" + +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portaingéilis (an Bhrasaíl)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rómáinis" + +#: libretranslate/locales/.langs.py:36 +msgid "Russian" +msgstr "Rúisis" + +#: libretranslate/locales/.langs.py:37 +msgid "Slovak" +msgstr "Slóvaicis" + +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slóivéinis" + +#: libretranslate/locales/.langs.py:39 +msgid "Spanish" +msgstr "Spáinnis" + +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Sualainnis" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagálaigis" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Téalainnis" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Tuircis" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" -msgstr "Cónaidhm na Rúise" +msgstr "Úcráinis" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdais" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "An tSeirbia" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Bláthanna cumhra: cumhráin" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vítneaimis Víneaimis" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "Liosta de na teangacha tacaithe" +msgstr "Aisghabh liosta de na teangacha a dtacaítear leo" #: libretranslate/locales/.swag.py:2 msgid "List of languages" @@ -246,13 +330,13 @@ msgstr "Liosta teangacha" #: libretranslate/locales/.swag.py:3 msgid "translate" -msgstr "aistriú" +msgstr "aistrigh" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "Téacs Translate ó theanga go ceann eile" +msgstr "Aistrigh téacs ó theanga go teanga eile" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Téacs Aistrithe" @@ -266,35 +350,31 @@ msgstr "Earráid aistriúcháin" #: libretranslate/locales/.swag.py:8 msgid "Slow down" -msgstr "Sreabhadh síos" +msgstr "Go mall" #: libretranslate/locales/.swag.py:9 msgid "Banned" -msgstr "Inis dúinn, le do thoil.." +msgstr "Cosc" #: libretranslate/locales/.swag.py:10 msgid "Hello world!" msgstr "Dia duit domhan!" #: libretranslate/locales/.swag.py:11 -#, fuzzy msgid "Text(s) to translate" -msgstr "Téacs a aistriú" +msgstr "Téacs(í) le haistriú" #: libretranslate/locales/.swag.py:12 -#, fuzzy msgid "Source language code" -msgstr "Cód teanga" +msgstr "Cód teanga foinse" #: libretranslate/locales/.swag.py:13 -#, fuzzy msgid "Target language code" -msgstr "Tacú le cóid sprioctheanga" +msgstr "Cód teanga sprice" #: libretranslate/locales/.swag.py:14 -#, fuzzy msgid "text" -msgstr "Téacs Cóip" +msgstr "téacs" #: libretranslate/locales/.swag.py:15 msgid "html" @@ -306,181 +386,179 @@ msgid "" " * `text` - Plain text\n" " * `html` - HTML markup\n" msgstr "" -"Formáid téacs foinse:\n" -"* `théacs ` - Cuir téacs\n" -"* html ` - HTML marcóir\n" +"Formáid an téacs foinseach:\n" +" * `téacs` - Gnáth-théacs\n" +" * `html` - marcáil HTML\n" #: libretranslate/locales/.swag.py:17 -#, fuzzy -msgid "API key" -msgstr "taiseachas aeir: fliuch" +msgid "Preferred number of alternative translations" +msgstr "An líon rogha aistriúcháin mhalartacha" #: libretranslate/locales/.swag.py:18 +msgid "API key" +msgstr "Eochair API" + +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Aistrithe comhad ó theanga go ceann eile" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Aistrithe comhad" -#: libretranslate/locales/.swag.py:20 -#, fuzzy -msgid "File to translate" -msgstr "Téacs a aistriú" - #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "An teanga téacs amháin a bhrath" +msgid "File to translate" +msgstr "Comhad le haistriú" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "Ailtireacht" +msgid "Detect the language of a single text" +msgstr "Braith teanga téacs amháin" #: libretranslate/locales/.swag.py:23 -msgid "Detection error" -msgstr "Earráid bhrath" +msgid "Detections" +msgstr "Brathanna" #: libretranslate/locales/.swag.py:24 -#, fuzzy -msgid "Text to detect" -msgstr "Déan teagmháil Linn" +msgid "Detection error" +msgstr "Earráid braite" #: libretranslate/locales/.swag.py:25 -msgid "Retrieve frontend specific settings" -msgstr "Retrive suímh tosaigh ar leith" +msgid "Text to detect" +msgstr "Téacs le brath" #: libretranslate/locales/.swag.py:26 -msgid "frontend settings" -msgstr "socruithe tosaigh" +msgid "Retrieve frontend specific settings" +msgstr "Aisghabh sainsocruithe tosaigh" #: libretranslate/locales/.swag.py:27 -msgid "frontend" -msgstr "tosaigh" +msgid "frontend settings" +msgstr "socruithe ceann tosaigh" #: libretranslate/locales/.swag.py:28 -msgid "Submit a suggestion to improve a translation" -msgstr "Cuir moladh chun aistriúchán a fheabhsú" +msgid "frontend" +msgstr "ceann tosaigh" #: libretranslate/locales/.swag.py:29 -msgid "Success" -msgstr "Rath agus Rath" +msgid "Submit a suggestion to improve a translation" +msgstr "Cuir isteach moladh chun aistriúchán a fheabhsú" #: libretranslate/locales/.swag.py:30 -msgid "Not authorized" -msgstr "Nach bhfuil údaraithe" +msgid "Success" +msgstr "Rath" #: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "Gan údar" + +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Téacs bunaidh" -#: libretranslate/locales/.swag.py:32 -#, fuzzy -msgid "Suggested translation" -msgstr "Mol aistriúcháin" - #: libretranslate/locales/.swag.py:33 -#, fuzzy -msgid "Language of original text" -msgstr "An teanga téacs amháin a bhrath" +msgid "Suggested translation" +msgstr "Aistriúchán molta" #: libretranslate/locales/.swag.py:34 -#, fuzzy -msgid "Language of suggested translation" -msgstr "Mol aistriúcháin" +msgid "Language of original text" +msgstr "Teanga an bhuntéacs" #: libretranslate/locales/.swag.py:35 +msgid "Language of suggested translation" +msgstr "Teanga an aistriúcháin molta" + +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "aiseolas" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Cód teanga" -#: libretranslate/locales/.swag.py:37 -msgid "Human-readable language name (in English)" -msgstr "Ainm teanga an duine inléite (i mBéarla)" - #: libretranslate/locales/.swag.py:38 -msgid "Supported target language codes" -msgstr "Tacú le cóid sprioctheanga" +msgid "Human-readable language name (in English)" +msgstr "Ainm teanga inléite ag an duine (i mBéarla)" #: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "Cóid sprioctheanga tacaithe" + +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Téacs(í) traslatáilte" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Teachtaireacht Earráid" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Cúis le mall síos" -#: libretranslate/locales/.swag.py:42 -msgid "Translated file url" -msgstr "Aistrithe comhad" - #: libretranslate/locales/.swag.py:43 -msgid "Confidence value" -msgstr "Luach minicíochta" +msgid "Translated file url" +msgstr "URL comhad aistrithe" #: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "Teorainn ionchuir Carachtar don teanga seo (-1 léiríonn aon teorainn)" +msgid "Confidence value" +msgstr "Luach muiníne" #: libretranslate/locales/.swag.py:45 -msgid "Frontend translation timeout" -msgstr "Amchlár aistriúcháin Frontend" +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "Teorainn ionchuir charachtair don teanga seo (ní léiríonn -1 aon teorainn)" #: libretranslate/locales/.swag.py:46 -msgid "Whether the API key database is enabled." -msgstr "Cibé an bhfuil an bunachar sonraí eochair API ar chumas." +msgid "Frontend translation timeout" +msgstr "Teorainn ama aistriúcháin tosaigh" #: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "Cibé an bhfuil an bunachar sonraí eochair API cumasaithe." + +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Cibé an bhfuil eochair API ag teastáil." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Cibé an bhfuil moltaí a chur isteach ar chumas." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Formáid comhaid Tacaithe" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Cibé an raibh aighneacht rathúil" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Téacs Cóip" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 "Ní féidir ualach %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" -msgstr "Earráid aitheanta" +msgstr "Earráid anaithnid" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" -msgstr "Copied" +msgstr "Cóipeáladh" -#: 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." @@ -488,36 +566,37 @@ msgstr "" "Go raibh maith agat as do cheartú. Tabhair faoi deara nach mbeidh an " "moladh i bhfeidhm ar shiúl." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Níl aon teangacha ar fáil. An raibh tú a shuiteáil na samhlacha i gceart?" -#: libretranslate/templates/app.js.template:522 -#, fuzzy, python-format +#: libretranslate/templates/app.js.template:536 +#, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" -msgstr "Cineál i do API key. Más gá duit eochair API, %(instructions)s" +msgstr "Clóscríobh isteach d'Eochair API. Má tá eochair API uait, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "brúigh an nasc \"Get API Key\"." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." -msgstr "teagmháil a dhéanamh leis an oibreoir freastalaí." +msgstr "déan teagmháil le hoibreoir an fhreastalaí." #: 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 "Saor in Aisce agus Oscailte Foinse Meaisín Aistriúchán API" +msgstr "API Aistriú Meaisín Foinse Oscailte saor in aisce" #: 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 "" -"Saor in aisce agus Oscailte Foinse Meaisín API. Féin-óstáil, as líne in " -"ann agus éasca a thus. Rith do fhreastalaí API féin i ach cúpla nóiméad." +"API Aistriú Meaisín Foinse Oscailte saor in aisce. Féin-óstach, as líne " +"in ann agus éasca le socrú. Rith do fhreastalaí API féin i gceann cúpla " +"nóiméad." #: libretranslate/templates/index.html:11 msgid "translation" @@ -525,160 +604,176 @@ msgstr "aistriúchán" #: libretranslate/templates/index.html:11 msgid "api" -msgstr "taiseachas aeir: fliuch" - -#: libretranslate/templates/index.html:65 -msgid "API Docs" -msgstr "Docs API" +msgstr "api" #: libretranslate/templates/index.html:67 -msgid "Get API Key" -msgstr "Faigh API Uisce agus Séarachas" +msgid "API Docs" +msgstr "API Docs" #: libretranslate/templates/index.html:69 -msgid "GitHub" -msgstr "Déan teagmháil linn" +msgid "Get API Key" +msgstr "Faigh Eochair API" #: libretranslate/templates/index.html:71 -msgid "Set API Key" -msgstr "Socraigh API Uisce agus Séarachas" +msgid "GitHub" +msgstr "GitHub" #: libretranslate/templates/index.html:73 -msgid "Change language" -msgstr "Athraigh teanga" +msgid "Set API Key" +msgstr "Socraigh Eochair API" -#: libretranslate/templates/index.html:79 -msgid "Edit" -msgstr "Inis dúinn, le do thoil.." +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "Athrú teanga" #: libretranslate/templates/index.html:81 +msgid "Edit" +msgstr "Cuir in eagar" + +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "Toggle dorcha / mód éadrom" +msgstr "Scoránaigh mód dorcha/solas" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" -msgstr "Díroghnaigh gach rud" +msgstr "Díbhe" -#: 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 "" +"Mar gheall ar mhí-úsáid bot, tá iarratais aistriúcháin teoranta go sealadach " +"d'úsáideoirí a bhfuil eochair API bailí acu. Gabh mo leithscéal as an " +"míchaoithiúlacht!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "Aistriúchán API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" -msgstr "Translate Téacs" +msgstr "Aistrigh Téacs" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" -msgstr "Aistrithe Comhad" +msgstr "Aistrigh Comhaid" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" -msgstr "Translate ó" +msgstr "Aistrigh ó" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" -msgstr "Swap foinse agus sprioctheangacha" +msgstr "Babhtáil foinse agus sprioctheangacha" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" -msgstr "Translate isteach" +msgstr "Aistrigh isteach" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Téacs a aistriú" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Scrios téacs" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Mol aistriúcháin" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Cealaigh" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" -msgstr "Seol do theachtaireacht a chur chugainn" +msgstr "Seol" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" -msgstr "Formáidí comhaid Tacaithe:" +msgstr "Formáidí comhaid tacaithe:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" -msgstr "Déan Teagmháil Linn" +msgstr "Comhad" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Bain comhad" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" -msgstr "Taiseachas aeir: fliuch" +msgstr "Aistrigh" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Íoslódáil" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" -msgstr "Iarratas a Dhéanamh" +msgstr "Iarratas" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" -msgstr "Plandaí faoi dhíon" +msgstr "Freagra" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "Oscailte Foinse Meaisín API" +msgstr "API Aistriú Meaisín Foinse Oscailte" -#: libretranslate/templates/index.html:316 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Féin-Hosted. In ann. Éasca le Socrú." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Féin-Óstach. As Líne In ann. Éasca le Socrú." -#: libretranslate/templates/index.html:335 +#: libretranslate/templates/index.html:346 msgid "LibreTranslate" -msgstr "Déan teagmháil anois" +msgstr "LibreTranslate" -#: libretranslate/templates/index.html:337 +#: libretranslate/templates/index.html:348 msgid "License:" msgstr "Ceadúnas:" -#: libretranslate/templates/index.html:340 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. " -"If you're going to run an application in production, please " -"%(host_server)s or %(get_api_key)s." -msgstr "" -"Ba cheart an API poiblí seo a úsáid le haghaidh tástála, úsáide pearsanta" -" nó go minic. Má tá tú ag dul a reáchtáil iarratas i dtáirgeadh, le do " -"thoil %(host_server)s nó %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "óstach do fhreastalaí féin" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "a fháil eochair API" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" -msgstr "" -"Déanta le %(heart)s ag an %(contributors)s agus faoi thiomáint ag " -"%(engine)s" +msgstr "Déanta le %(heart)s ag %(contributors)s agus arna chumhachtú ag %(engine)s" -#: libretranslate/templates/index.html:348 -#, fuzzy, python-format +#: libretranslate/templates/index.html:354 +#, python-format msgid "%(libretranslate)s Contributors" -msgstr "%(libretranslate)s Seirbhís do Chustaiméirí" +msgstr "%(libretranslate)s Rannpháirtithe" #~ msgid "multipart/form-data" #~ msgstr "ilpháirt / form-sonraí" +#~ msgid "Vietnamese" +#~ msgstr "Vítneaimis Víneaimis" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Ba cheart an API poiblí seo a " +#~ "úsáid le haghaidh tástála, úsáide " +#~ "pearsanta nó go minic. Má tá tú" +#~ " ag dul a reáchtáil iarratas i " +#~ "dtáirgeadh, le do thoil %(host_server)s " +#~ "nó %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "óstach do fhreastalaí féin" + +#~ msgid "get an API key" +#~ msgstr "a fháil eochair API" + +#~ msgid "Basque" +#~ msgstr "Taiseachas aeir: fliuch" + +#~ msgid "Galician" +#~ msgstr "Riachtanais uisce: measartha" diff --git a/libretranslate/locales/ga/meta.json b/libretranslate/locales/ga/meta.json index 6a04eec..89711ed 100644 --- a/libretranslate/locales/ga/meta.json +++ b/libretranslate/locales/ga/meta.json @@ -1,4 +1,4 @@ { "name": "Irish", - "reviewed": false -} \ No newline at end of file + "reviewed": true +} diff --git a/libretranslate/locales/gd/LC_MESSAGES/messages.po b/libretranslate/locales/gd/LC_MESSAGES/messages.po new file mode 100644 index 0000000..f294286 --- /dev/null +++ b/libretranslate/locales/gd/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: Gaelic \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 dh’fhaighinn 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" diff --git a/libretranslate/locales/gd/meta.json b/libretranslate/locales/gd/meta.json new file mode 100644 index 0000000..67ea378 --- /dev/null +++ b/libretranslate/locales/gd/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Scottish Gaelic", + "reviewed": true +} diff --git a/libretranslate/locales/gl/LC_MESSAGES/messages.po b/libretranslate/locales/gl/LC_MESSAGES/messages.po index 97d3530..9c6a8e7 100644 --- a/libretranslate/locales/gl/LC_MESSAGES/messages.po +++ b/libretranslate/locales/gl/LC_MESSAGES/messages.po @@ -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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-20 10:36+0000\n" +"Last-Translator: xuars \n" "Language-Team: Galician \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: 0 0 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: 0 0 O parámetro debe ser <= %(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" diff --git a/libretranslate/locales/gl/meta.json b/libretranslate/locales/gl/meta.json new file mode 100644 index 0000000..2317495 --- /dev/null +++ b/libretranslate/locales/gl/meta.json @@ -0,0 +1,4 @@ +{ + "name": "gl", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/he/LC_MESSAGES/messages.po b/libretranslate/locales/he/LC_MESSAGES/messages.po index 07813ad..c2cf9f1 100644 --- a/libretranslate/locales/he/LC_MESSAGES/messages.po +++ b/libretranslate/locales/he/LC_MESSAGES/messages.po @@ -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 \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 \n" +"Language-Team: Hebrew \n" "Language: he\n" -"Language-Team: Hebrew " -"\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"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 "גליסית" diff --git a/libretranslate/locales/hi/LC_MESSAGES/messages.po b/libretranslate/locales/hi/LC_MESSAGES/messages.po index 45e8498..7c5dfe4 100644 --- a/libretranslate/locales/hi/LC_MESSAGES/messages.po +++ b/libretranslate/locales/hi/LC_MESSAGES/messages.po @@ -8,108 +8,121 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-09-23 14:04+0000\n" -"Last-Translator: ShareASmile \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 \n" +"Language-Team: Hindi \n" "Language: hi\n" -"Language-Team: Hindi " -"\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.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 पैरामीटर <= %(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 "गैलिशियन" diff --git a/libretranslate/locales/hu/LC_MESSAGES/messages.po b/libretranslate/locales/hu/LC_MESSAGES/messages.po index b773e35..556304c 100644 --- a/libretranslate/locales/hu/LC_MESSAGES/messages.po +++ b/libretranslate/locales/hu/LC_MESSAGES/messages.po @@ -8,242 +8,328 @@ 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-25 11:36+0000\n" -"Last-Translator: ebela \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-19 06:10+0000\n" +"Last-Translator: Ghost of Sparta \n" +"Language-Team: Hungarian \n" "Language: hu\n" -"Language-Team: Hungarian " -"\n" -"Plural-Forms: nplurals=1; plural=0;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.11.1-dev\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" msgstr "Érvénytelen JSON formátum" -#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Automatikus felismerés" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "Nem engedélyezett" +msgstr "Nincs jogosultsága" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "Túl sok kérelem korlátozza a jogsértéseket" +msgstr "Túl sok kérelem határértéke elérve" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "Érvénytelen API kulcs" +msgstr "Érvénytelen API-kulcs" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "" -"Kérjük, vegye fel a kapcsolatot a szerver-üzemeltetővel, hogy megkapja az" -" API kulcsot" +"Vegye fel a kapcsolatot a kiszolgáló üzemeltetőjével, hogy megkapja az " +"API-kulcsot" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" -msgstr "Látogatás %(url)s API kulcsot kapni" +msgstr "Látogasson el a(z) %(url)s címre, API-kulcshoz" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Lassulás:" -#: libretranslate/app.py:525 libretranslate/app.py:527 -#: libretranslate/app.py:529 libretranslate/app.py:741 -#: libretranslate/app.py:743 libretranslate/app.py:745 -#: libretranslate/app.py:896 libretranslate/app.py:1053 -#: libretranslate/app.py:1055 libretranslate/app.py:1057 -#: libretranslate/app.py:1059 +#: libretranslate/app.py: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 "Érvénytelen kérés: hiányzik a(z) %(name)s paraméter" -#: 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 "Érvénytelen kérés: a(z) %(name)s paraméter nem egy szám" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "" +"Érvénytelen kérés: a(z) %(name)s paraméternek a következőnek kell lennie:" +" %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" -"Érvénytelen kérés: kérés (%(size)s) meghaladja a szövegkorlátot " -"(%(limit)s)" +"Érvénytelen kérés: a kérés mérete (%(size)s) meghaladja a(z) (%(limit)s) " +"szövegkorlátot" -#: 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 nem támogatott" +msgstr "a(z) %(lang)s nyelv nem támogatott" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" -msgstr "%(format)s formátum nem támogatott" +msgstr "a(z) %(format)s formátum nem támogatott" -#: 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) nem áll rendelkezésre célnyelvként %(sname)s " -"(%(scode)s)" +"%(tname)s (%(tcode)s) nem áll rendelkezésre célnyelvként a következőből: " +"%(sname)s (%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" -msgstr "Nem fordítható szöveg: %(text)s" +msgstr "A következő szöveg nem fordítható: %(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 "Files fordítás letiltása ezen a szerveren." +msgstr "A fájlfordítások ki vannak kapcsolva ezen a kiszolgálón." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" -msgstr "Érvénytelen kérés: üres fájl" +msgstr "Érvénytelen kérés: a fájl üres" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" -msgstr "Érvénytelen kérés: fájlformátum nem támogatott" +msgstr "Érvénytelen kérés: a fájlformátum nem támogatott" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Érvénytelen fájlnév" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." -msgstr "A javaslatok fogyatékkal élők ezen a szerveren." +msgstr "A javaslatok ki vannak kapcsolva ezen a kiszolgálón." #: libretranslate/locales/.langs.py:1 msgid "English" msgstr "Angol" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albán" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arab" -#: libretranslate/locales/.langs.py:3 -msgid "Azerbaijani" -msgstr "Azerbajdzsán" - #: libretranslate/locales/.langs.py:4 +msgid "Azerbaijani" +msgstr "Azerbajdzsáni" + +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengáli" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bolgár" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalán" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Kínai" -#: libretranslate/locales/.langs.py:5 -msgid "Czech" -msgstr "Csehország" +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Kínai (hagyományos)" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:10 +msgid "Czech" +msgstr "Cseh" + +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Dán" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" -msgstr "Hollandia" +msgstr "Holland" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" -msgstr "Esperanto" +msgstr "Eszperantó" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Észt" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Finn" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francia" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Német" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Görög" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Héber" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hindi" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Magyar" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonéz" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" -msgstr "Írország" +msgstr "Ír" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Olasz" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" -msgstr "Japán japán" +msgstr "Japán" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Koreai" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Lett" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litván" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Maláj" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norvég" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Perzsa" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Lengyel" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" -msgstr "Portugália" +msgstr "Portugál" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugál (brazil)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Román" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Orosz" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" -msgstr "Szlovákia" +msgstr "Szlovák" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Szlovén" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Spanyol" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" -msgstr "Svédország" +msgstr "Svéd" -#: 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örök" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukrán" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Szerb" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrán" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" -msgstr "Vietnami" +msgstr "Vietnámi" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "A támogatott nyelvek újraindítása" +msgstr "A támogatott nyelvek listájának lekérése" #: libretranslate/locales/.swag.py:2 msgid "List of languages" -msgstr "A nyelvek listája" +msgstr "Nyelvek listája" #: libretranslate/locales/.swag.py:3 msgid "translate" @@ -251,11 +337,11 @@ msgstr "fordítás" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "Fordítson szöveget egy nyelvről egy másikra" +msgstr "Szöveg fordítása az egyik nyelvről a másikra" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" -msgstr "Fordított szöveg" +msgstr "Lefordított szöveg" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" @@ -267,11 +353,11 @@ msgstr "Fordítási hiba" #: libretranslate/locales/.swag.py:8 msgid "Slow down" -msgstr "Lassabb" +msgstr "Lassabban" #: libretranslate/locales/.swag.py:9 msgid "Banned" -msgstr "Betiltott" +msgstr "Tiltott" #: libretranslate/locales/.swag.py:10 msgid "Hello world!" @@ -283,11 +369,11 @@ msgstr "Lefordítandó szöveg(ek)" #: libretranslate/locales/.swag.py:12 msgid "Source language code" -msgstr "Forrás nyelv kódja" +msgstr "Forrásnyelv kódja" #: libretranslate/locales/.swag.py:13 msgid "Target language code" -msgstr "Cél nyelv kódja" +msgstr "Célnyelv kódja" #: libretranslate/locales/.swag.py:14 msgid "text" @@ -303,212 +389,219 @@ msgid "" " * `text` - Plain text\n" " * `html` - HTML markup\n" msgstr "" -"Formátum forrás szöveg:\n" -"* `text' - Plain szöveg\n" +"Forrásszöveg formátuma:\n" +"* `text' - egyszerű szöveg\n" "* `html' - HTML markup\n" #: libretranslate/locales/.swag.py:17 -msgid "API key" -msgstr "API kulcs" +msgid "Preferred number of alternative translations" +msgstr "Az alternatív fordítások előnyben részesített száma" #: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "Fájl fordítása egy nyelvről egy másikra" +msgid "API key" +msgstr "API-kulcs" #: libretranslate/locales/.swag.py:19 -msgid "Translated file" -msgstr "Fordított fájl" +msgid "Translate file from a language to another" +msgstr "Fájl fordítása az egyik nyelvről a másikra" #: libretranslate/locales/.swag.py:20 -msgid "File to translate" -msgstr "Fájl fordítása" +msgid "Translated file" +msgstr "Lefordított fájl" #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "Védje meg egyetlen szöveg nyelvét" +msgid "File to translate" +msgstr "Fájl lefordítása" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "Észlelések" +msgid "Detect the language of a single text" +msgstr "Egyetlen szöveg nyelvének felismerése" #: libretranslate/locales/.swag.py:23 -msgid "Detection error" -msgstr "Detection hiba" +msgid "Detections" +msgstr "Felismerések" #: libretranslate/locales/.swag.py:24 +msgid "Detection error" +msgstr "Felismerési hiba" + +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Felismerendő szöveg" -#: libretranslate/locales/.swag.py:25 -msgid "Retrieve frontend specific settings" -msgstr "Visszakeresni a frontend specifikus beállításokat" - #: libretranslate/locales/.swag.py:26 -msgid "frontend settings" -msgstr "frontend beállítások" +msgid "Retrieve frontend specific settings" +msgstr "Előtétprogram-specifikus beállítások lekérése" #: libretranslate/locales/.swag.py:27 -msgid "frontend" -msgstr "fénykép" +msgid "frontend settings" +msgstr "előtétprogram-beállítások" #: libretranslate/locales/.swag.py:28 -msgid "Submit a suggestion to improve a translation" -msgstr "Javaslatot nyújt be a fordítás javítására" +msgid "frontend" +msgstr "előtétprogram" #: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "Küldjön javaslatot egy fordítás javításához" + +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Siker" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Nem engedélyezett" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Eredeti szöveg" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Javasolt fordítás" -#: libretranslate/locales/.swag.py:33 -msgid "Language of original text" -msgstr "Eredeti szöveg nyelve" - #: libretranslate/locales/.swag.py:34 +msgid "Language of original text" +msgstr "Az eredeti szöveg nyelve" + +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "A javasolt fordítás nyelve" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "visszajelzés" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Nyelvkód" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Emberi olvasható nyelv neve (angolul)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Támogatott célnyelvi kódok" -#: libretranslate/locales/.swag.py:39 -msgid "Translated text(s)" -msgstr "Fordított szöveg(ek)" - #: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "Lefordított szöveg(ek)" + +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Hibaüzenet" -#: libretranslate/locales/.swag.py:41 -msgid "Reason for slow down" -msgstr "Oka lassú le" - #: libretranslate/locales/.swag.py:42 -msgid "Translated file url" -msgstr "Fordított fájl url" +msgid "Reason for slow down" +msgstr "A lelassulás oka" #: libretranslate/locales/.swag.py:43 -msgid "Confidence value" -msgstr "Biztonsági érték" +msgid "Translated file url" +msgstr "Lefordított fájl webcíme" #: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "Jellemző bemeneti határértéke ennek a nyelvnek (-1 nem jelzi a határt)" +msgid "Confidence value" +msgstr "Megbízhatósági érték" #: libretranslate/locales/.swag.py:45 -msgid "Frontend translation timeout" -msgstr "Frontend fordítási idő" +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "Karakterbeviteli korlát ezen a nyelven (-1 azt jelenti, hogy nincs korlát)" #: libretranslate/locales/.swag.py:46 -msgid "Whether the API key database is enabled." -msgstr "Függetlenül attól, hogy az API kulcsfontosságú adatbázisa engedélyezett-e." +msgid "Frontend translation timeout" +msgstr "Előtétprogram-fordítási időtúllépés" #: libretranslate/locales/.swag.py:47 -msgid "Whether an API key is required." -msgstr "Függetlenül attól, hogy egy API kulcsra van szükség." +msgid "Whether the API key database is enabled." +msgstr "Független attól, hogy az API-kulcs adatbázisa engedélyezve van-e." #: libretranslate/locales/.swag.py:48 -msgid "Whether submitting suggestions is enabled." -msgstr "Akár javaslatok benyújtása engedélyezett." +msgid "Whether an API key is required." +msgstr "Független attól, hogy az API-kulcs szükséges-e." #: libretranslate/locales/.swag.py:49 +msgid "Whether submitting suggestions is enabled." +msgstr "Független attól, hogy engedélyezve van-e a javaslatok beküldése." + +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Támogatott fájlformátum" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" -msgstr "Akár sikeres volt a benyújtás" +msgstr "Független attól, hogy a beküldés sikeres volt-e" #: 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 "Másolás szöveg" +msgstr "Szöveg másolása" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 "Nem tölthet %(url)s" +msgstr "Nem tölthető be a(z) %(url)s webcím" -#: 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 "Ismeretlen hiba" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" -msgstr "Második" +msgstr "Másolva" -#: 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 "" -"Köszönöm a korrekciót. Ne feledje, hogy a javaslat nem fog azonnal " -"hatályba lépni." +"Köszönöm a helyesbítést. Vegye figyelembe, hogy a javaslata nem fog " +"azonnal hatályba lépni." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" -msgstr "Nincsenek nyelvek. Helyesen telepítette a modelleket?" +msgstr "Nincsenek elérhető nyelvek. Helyesen telepítette a modelleket?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" -msgstr "Típus az API kulcsodban. Ha szüksége van egy API kulcsra, %(instructions)s" +msgstr "" +"Írja be az API-kulcsot. Ha szüksége van egy API-kulcsra, tekintse meg a " +"következőt: %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." -msgstr "nyomja meg a \"Get API Key\" linket." +msgstr "kattintson az „API-kulcs beszerzése” hivatkozásra." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." -msgstr "lépjen kapcsolatba a szerver-üzemeltetővel." +msgstr "lépjen kapcsolatba a kiszolgáló üzemeltetőjével." #: 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 "Ingyenes és nyílt forráskódú gép fordítás API" +msgstr "Ingyenes és nyílt forráskódú gépi fordító API" #: libretranslate/templates/index.html:10 #: libretranslate/templates/index.html:31 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 "" -"Ingyenes és nyílt forráskódú gép fordítás API. Önálló, offline képes és " -"könnyen telepíthető. Futtassa saját API szerverét néhány perc alatt." +"Ingyenes és nyílt forráskódú gépi fordító API. Ingyenesen letölthető, " +"offline működő és könnyen telepíthető. Futtassa a saját API-kiszolgálóját" +" néhány perc alatt." #: libretranslate/templates/index.html:11 msgid "translation" @@ -518,156 +611,173 @@ msgstr "fordítás" 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 "Szerezd meg az API-t Key" +msgid "API Docs" +msgstr "API-dokumentáció" #: libretranslate/templates/index.html:69 +msgid "Get API Key" +msgstr "API-kulcs beszerzése" + +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 -msgid "Set API Key" -msgstr "Állítsa be az API-t Key" - #: libretranslate/templates/index.html:73 -msgid "Change language" -msgstr "Változási nyelv" +msgid "Set API Key" +msgstr "API-kulcs beállítása" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "Nyelv módosítása" + +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Szerkesztés" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "Toggle sötét / fény mód" +msgstr "Váltás sötét/világos módra" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" -msgstr "Elbocsátások" +msgstr "Elvetés" -#: 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 botok visszaélései miatt a fordítási kérelmek ideiglenesen csak érvényes " +"API-kulccsal rendelkező felhasználókra korlátozódnak. Elnézést a " +"kellemetlenségért!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" -msgstr "Fordítás API" +msgstr "Fordító API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" -msgstr "Fordító szöveg" +msgstr "Szöveg fordítása" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" -msgstr "Fordító fájlok" +msgstr "Fájlok fordítása" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" -msgstr "Fordítsd le" +msgstr "Fordítás erről:" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" -msgstr "Swap forrás és célnyelvek" +msgstr "Forrás és célnyelv felcserélése" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" -msgstr "Fordítsd le" +msgstr "Fordítás erre:" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" -msgstr "Fordítás szövege" +msgstr "Fordítandó szöveg" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" -msgstr "Törlés szöveg" +msgstr "Szöveg törlése" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" -msgstr "Legjobb fordítás" +msgstr "Fordítás javaslása" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" -msgstr "Törlés" +msgstr "Mégse" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Küldés" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Támogatott fájlformátumok:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" -msgstr "File" +msgstr "Fájl" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" -msgstr "Távolítsa el a fájlt" +msgstr "Fájl eltávolítása" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Fordítás" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Letöltés" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Kérés" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Válasz" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "Nyilt Forráskódú Gépi Fordító API" +msgstr "Nyílt forráskódú gépi fordító API" -#: libretranslate/templates/index.html:316 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Önmagát választotta. Offline Képes. Könnyű a beállításhoz." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Ingyenesen letölthető, offline működő. Könnyen beállítható." -#: libretranslate/templates/index.html:335 +#: libretranslate/templates/index.html:346 msgid "LibreTranslate" msgstr "LibreTranslate" -#: libretranslate/templates/index.html:337 -msgid "License:" -msgstr "Engedély:" - -#: libretranslate/templates/index.html:340 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. " -"If you're going to run an application in production, please " -"%(host_server)s or %(get_api_key)s." -msgstr "" -"Ezt a nyilvános API-t tesztelésre, személyes vagy alkalmankénti " -"használatra használhatod. Amennyiben az alkalmazásod éles környezetben " -"fogod használni úgy használd a %(host_server)s-t vagy %(get_api_key)s-t." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "fogadja el saját szerverét" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "kap egy API kulcsot" - #: libretranslate/templates/index.html:348 +msgid "License:" +msgstr "Licenc:" + +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" -msgstr "Made with %(heart)s által %(contributors)s és erőteljes %(engine)s" +msgstr "%(heart)s-vel készítik a %(contributors)s és az %(engine)s támogatja" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" -msgstr "%(libretranslate)s Közreműködők" +msgstr "%(libretranslate)s közreműködői" #~ msgid "multipart/form-data" #~ msgstr "multipart/form-data" +#~ msgid "Vietnamese" +#~ msgstr "Vietnami" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Ezt a nyilvános API-t tesztelésre, " +#~ "személyes vagy alkalmi használatra " +#~ "használandó. Amennyiben az alkalmazásod éles" +#~ " környezetben fogod használni úgy használd" +#~ " a %(host_server)s-t vagy %(get_api_key)s-t." + +#~ msgid "host your own server" +#~ msgstr "Hosztold a saját szervered" + +#~ msgid "get an API key" +#~ msgstr "API kulcs szerzése" + +#~ msgid "Basque" +#~ msgstr "Baszk" + +#~ msgid "Galician" +#~ msgstr "Galíciai" diff --git a/libretranslate/locales/hu/meta.json b/libretranslate/locales/hu/meta.json index fd1996e..a7f59d9 100644 --- a/libretranslate/locales/hu/meta.json +++ b/libretranslate/locales/hu/meta.json @@ -1,4 +1,4 @@ { "name": "Hungarian", - "reviewed": false -} \ No newline at end of file + "reviewed": true +} diff --git a/libretranslate/locales/id/LC_MESSAGES/messages.po b/libretranslate/locales/id/LC_MESSAGES/messages.po index 1ff87bb..f96817b 100644 --- a/libretranslate/locales/id/LC_MESSAGES/messages.po +++ b/libretranslate/locales/id/LC_MESSAGES/messages.po @@ -8,110 +8,120 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-09-06 11:02+0000\n" -"Last-Translator: Reza Almanda \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 \n" +"Language-Team: Indonesian \n" "Language: id\n" -"Language-Team: Indonesian " -"\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" "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 <= %(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" diff --git a/libretranslate/locales/it/LC_MESSAGES/messages.po b/libretranslate/locales/it/LC_MESSAGES/messages.po index 4d62b02..196c72b 100644 --- a/libretranslate/locales/it/LC_MESSAGES/messages.po +++ b/libretranslate/locales/it/LC_MESSAGES/messages.po @@ -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 \n" -"Language-Team: Italian \n" "Language: it\n" +"Language-Team: Italian " +"\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" "Generated-By: Babel 2.12.1\n" -#: 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" + diff --git a/libretranslate/locales/ja/LC_MESSAGES/messages.po b/libretranslate/locales/ja/LC_MESSAGES/messages.po index f2456be..67698c1 100644 --- a/libretranslate/locales/ja/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ja/LC_MESSAGES/messages.po @@ -8,231 +8,315 @@ 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 \n" -"Language-Team: Japanese \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-01-04 07:30+0000\n" +"Last-Translator: moyashi_24 \n" "Language: ja\n" +"Language-Team: Japanese " +"\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 "あまりにも多くのリクエストは違反を制限します" +msgstr "リクエストが多すぎます" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "Invalid 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 -#, fuzzy, python-format +#: 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 フォーマットはサポートされていません" -#: 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 "%(sname)s (%(scode)s)から%(tname)s (%(tcode)s)への翻訳は利用できません" -#: libretranslate/app.py:647 -#, fuzzy, python-format +#: libretranslate/app.py:787 +#, python-format msgid "Cannot translate text: %(text)s" -msgstr "テキストを翻訳できません。 %(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 "無効なリクエスト:空のファイル" +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 "このサーバーで提案が無効になっています。." +msgstr "このサーバーで提案が無効になっています。" #: libretranslate/locales/.langs.py:1 msgid "English" -msgstr "日本語 English" +msgstr "英語" #: libretranslate/locales/.langs.py:2 -msgid "Arabic" -msgstr "ログイン" +msgid "Albanian" +msgstr "アルバニア語" #: libretranslate/locales/.langs.py:3 -msgid "Azerbaijani" -msgstr "アゼルバイジャン" +msgid "Arabic" +msgstr "アラビア語" #: libretranslate/locales/.langs.py:4 -msgid "Chinese" -msgstr "中国語(簡体)" +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: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 "ドイツ人" +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 -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 "日本語 English" - -#: libretranslate/locales/.langs.py:20 -msgid "Korean" -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:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" -msgstr "ポーランド" +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 "ロシア人" +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 "スウェーデン語" -#: 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 "ベトナム" +msgstr "ベトナム語" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "サポートされている言語のリストを取得する" +msgstr "サポートされている言語リストを取得" #: libretranslate/locales/.swag.py:2 msgid "List of languages" @@ -240,19 +324,19 @@ msgstr "言語リスト" #: libretranslate/locales/.swag.py:3 msgid "translate" -msgstr "ログイン" +msgstr "翻訳" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "言語から別の言語にテキストを翻訳する" +msgstr "言語から言語にテキストを翻訳する" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: 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" @@ -264,35 +348,31 @@ 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 -#, fuzzy msgid "Text(s) to translate" msgstr "翻訳するテキスト" #: libretranslate/locales/.swag.py:12 -#, fuzzy msgid "Source language code" -msgstr "言語コード" +msgstr "翻訳元の言語コード" #: libretranslate/locales/.swag.py:13 -#, fuzzy msgid "Target language code" -msgstr "ターゲット言語コードをサポート" +msgstr "翻訳先の言語コード" #: libretranslate/locales/.swag.py:14 -#, fuzzy msgid "text" -msgstr "テキストのコピー" +msgstr "テキスト" #: libretranslate/locales/.swag.py:15 msgid "html" -msgstr "ツイート" +msgstr "html" #: libretranslate/locales/.swag.py:16 msgid "" @@ -300,374 +380,384 @@ msgid "" " * `text` - Plain text\n" " * `html` - HTML markup\n" msgstr "" -"ソーステキストの形式:\n" +"ソーステキストの形式:\n" "* `text` - プレーンテキスト\n" "* `html` - HTML マークアップ\n" #: libretranslate/locales/.swag.py:17 -#, fuzzy -msgid "API key" -msgstr "ログイン" +msgid "Preferred number of alternative translations" +msgstr "代替翻訳の優先数" #: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "言語から別の言語にファイルを翻訳する" +msgid "API key" +msgstr "APIキー" #: libretranslate/locales/.swag.py:19 -msgid "Translated file" -msgstr "翻訳ファイル" +msgid "Translate file from a language to another" +msgstr "言語から言語にファイルを翻訳する" #: libretranslate/locales/.swag.py:20 -#, fuzzy -msgid "File to translate" -msgstr "翻訳するテキスト" +msgid "Translated file" +msgstr "翻訳済みファイル" #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "単一のテキストの言語を検出する" +msgid "File to translate" +msgstr "翻訳するファイル" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "検出の検出" +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:24 -#, fuzzy -msgid "Text to detect" -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: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 -msgid "Submit a suggestion to improve a translation" -msgstr "翻訳を改善するための提案を提出する" - #: libretranslate/locales/.swag.py:29 -msgid "Success" -msgstr "成功事例" +msgid "Submit a suggestion to improve a translation" +msgstr "翻訳の改善案を出す" #: libretranslate/locales/.swag.py:30 -msgid "Not authorized" -msgstr "許可されていない" +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:32 -#, fuzzy -msgid "Suggested translation" -msgstr "翻訳の提案" - #: libretranslate/locales/.swag.py:33 -#, fuzzy -msgid "Language of original text" -msgstr "単一のテキストの言語を検出する" +msgid "Suggested translation" +msgstr "提案された翻訳" #: libretranslate/locales/.swag.py:34 -#, fuzzy -msgid "Language of suggested translation" -msgstr "翻訳の提案" +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: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 -msgid "Supported target language codes" -msgstr "ターゲット言語コードをサポート" - #: libretranslate/locales/.swag.py:39 -msgid "Translated text(s)" -msgstr "翻訳されたテキスト(s)" +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:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "遅くなる理由" -#: libretranslate/locales/.swag.py:42 -msgid "Translated file url" -msgstr "翻訳されたファイル url" - #: libretranslate/locales/.swag.py:43 -msgid "Confidence value" -msgstr "機密価値" +msgid "Translated file url" +msgstr "翻訳されたファイルのURL" #: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "この言語の文字入力制限(-1は制限なし)" +msgid "Confidence value" +msgstr "確信度" #: 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 "Whether submitting suggestions is enabled." +msgstr "翻訳精度を上げるための修正が可能かどうか。" + +#: 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 "テキストのコピー" +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" +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." -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 キーが必要な場合は、%(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 "「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" +msgstr "無料かつオープンソースな機械翻訳API" #: libretranslate/templates/index.html:10 #: libretranslate/templates/index.html:31 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline capable " -"and easy to setup. Run your own API server in just a few minutes." -msgstr "" -"オープンソース・マシン・トランスレーション API の無料およびオープン・ソース・マシン セルフホスト、オフライン対応、セットアップが簡単。 " -"わずか数分で独自の API サーバーを実行します。." +"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 "インフォメーション" +msgstr "翻訳" #: libretranslate/templates/index.html:11 msgid "api" -msgstr "ログイン" - -#: libretranslate/templates/index.html:65 -msgid "API Docs" -msgstr "API ドキュメント" +msgstr "api" #: libretranslate/templates/index.html:67 -msgid "Get API Key" -msgstr "API の取得 キーキー" +msgid "API Docs" +msgstr "APIドキュメント" #: libretranslate/templates/index.html:69 -msgid "GitHub" -msgstr "GitHubで" +msgid "Get API Key" +msgstr "APIキーを取得" #: libretranslate/templates/index.html:71 -msgid "Set API Key" -msgstr "APIの設定 キーキー" +msgid "GitHub" +msgstr "GitHub" #: libretranslate/templates/index.html:73 -msgid "Change language" -msgstr "言語変更" +msgid "Set API Key" +msgstr "APIキーを設定" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "言語を変更" + +#: 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 "免責事項" +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" +msgstr "翻訳API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" -msgstr "テキストの翻訳" +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 "翻訳から" +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 "翻訳する" +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 "キャンセル" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" -msgstr "お問い合わせ" +msgstr "送信" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" -msgstr "サポートされているファイル形式:" +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 "ファイルを削除します。" +msgstr "ファイルを削除" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" -msgstr "ログイン" +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 "ソリューション" +msgstr "レスポンス" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "オープンソース機械翻訳 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 "ライブラリ" +msgstr "LibreTranslate" -#: libretranslate/templates/index.html:337 +#: libretranslate/templates/index.html:348 msgid "License:" -msgstr "ライセンス:" +msgstr "ライセンス:" -#: 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 "" -"このパブリック 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 -#, fuzzy, python-format +#: 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 貢献者" #~ msgid "multipart/form-data" #~ msgstr "マルチパート/フォームデータ" + +#~ msgid "Vietnamese" +#~ msgstr "ベトナム" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "この公開API " +#~ "はテストまたは個人的、頻繁でない用途に使用してください。製品のアプリケーションに使用する場合は、%(host_server)s " +#~ "または %(get_api_key)sしてください。" + +#~ msgid "host your own server" +#~ msgstr "自分のサーバーをホストする" + +#~ msgid "get an API key" +#~ msgstr "APIキーを取得" + +#~ msgid "Basque" +#~ msgstr "バスク語" + +#~ msgid "Galician" +#~ msgstr "ガリシア語" + diff --git a/libretranslate/locales/ja/meta.json b/libretranslate/locales/ja/meta.json index 816f7c6..1a126f0 100644 --- a/libretranslate/locales/ja/meta.json +++ b/libretranslate/locales/ja/meta.json @@ -1,4 +1,4 @@ { "name": "Japanese", - "reviewed": false -} \ No newline at end of file + "reviewed": true +} diff --git a/libretranslate/locales/kab/LC_MESSAGES/messages.po b/libretranslate/locales/kab/LC_MESSAGES/messages.po index 88076ff..18895d1 100644 --- a/libretranslate/locales/kab/LC_MESSAGES/messages.po +++ b/libretranslate/locales/kab/LC_MESSAGES/messages.po @@ -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 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-13 12:01+0000\n" +"Last-Translator: ButterflyOfFire \n" "Language-Team: Kabyle \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" diff --git a/libretranslate/locales/kk/LC_MESSAGES/messages.po b/libretranslate/locales/kk/LC_MESSAGES/messages.po new file mode 100644 index 0000000..13b605b --- /dev/null +++ b/libretranslate/locales/kk/LC_MESSAGES/messages.po @@ -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 , 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 \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 үлес қосушылары" diff --git a/libretranslate/locales/kk/meta.json b/libretranslate/locales/kk/meta.json new file mode 100644 index 0000000..26fc85d --- /dev/null +++ b/libretranslate/locales/kk/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Kazakh", + "reviewed": false +} diff --git a/libretranslate/locales/ko/LC_MESSAGES/messages.po b/libretranslate/locales/ko/LC_MESSAGES/messages.po index c5b8776..b2299f3 100644 --- a/libretranslate/locales/ko/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ko/LC_MESSAGES/messages.po @@ -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 \n" -"Language-Team: Korean \n" "Language: ko\n" +"Language-Team: Korean " +"\n" +"Plural-Forms: nplurals=1; plural=0;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" "Generated-By: Babel 2.12.1\n" -#: 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 "잘못된 요청: 0 댓글 매개변수는 수 없습니다 %(name)s" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "잘못된 요청: 0 댓글 매개 변수는 <= 1명 1명 %(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 "" + diff --git a/libretranslate/locales/lt/LC_MESSAGES/messages.po b/libretranslate/locales/lt/LC_MESSAGES/messages.po new file mode 100644 index 0000000..68687df --- /dev/null +++ b/libretranslate/locales/lt/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: lt \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 < = %(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" diff --git a/libretranslate/locales/lt/meta.json b/libretranslate/locales/lt/meta.json new file mode 100644 index 0000000..df73c99 --- /dev/null +++ b/libretranslate/locales/lt/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Lithuanian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/lv/LC_MESSAGES/messages.po b/libretranslate/locales/lv/LC_MESSAGES/messages.po new file mode 100644 index 0000000..4e0473a --- /dev/null +++ b/libretranslate/locales/lv/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: lv \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 > %(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" diff --git a/libretranslate/locales/lv/meta.json b/libretranslate/locales/lv/meta.json new file mode 100644 index 0000000..d5bd3b2 --- /dev/null +++ b/libretranslate/locales/lv/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Latvian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/messages.pot b/libretranslate/locales/messages.pot index f2b734b..d9538c8 100644 --- a/libretranslate/locales/messages.pot +++ b/libretranslate/locales/messages.pot @@ -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 , 2023. +# FIRST AUTHOR , 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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/libretranslate/locales/mia/LC_MESSAGES/messages.po b/libretranslate/locales/mia/LC_MESSAGES/messages.po new file mode 100644 index 0000000..5c8b6d8 --- /dev/null +++ b/libretranslate/locales/mia/LC_MESSAGES/messages.po @@ -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 , 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\" \n" +"Language: mia\n" +"Language-Team: Miami " +"\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 "" + diff --git a/libretranslate/locales/mia/meta.json b/libretranslate/locales/mia/meta.json new file mode 100644 index 0000000..72ccea1 --- /dev/null +++ b/libretranslate/locales/mia/meta.json @@ -0,0 +1,4 @@ +{ + "name": "mia", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/ms/LC_MESSAGES/messages.po b/libretranslate/locales/ms/LC_MESSAGES/messages.po new file mode 100644 index 0000000..387305a --- /dev/null +++ b/libretranslate/locales/ms/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language-Team: ms \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 WANITA 0 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 WANITA 0 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: WANITA 0 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: WANITA 0 parameter harus <= Perancis " +"%(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)WANITA 0) melebihi batas " +"teks (Perancis) %(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 "WANITA 0 Pautan simbolik tidak disokong %(lang)s" + +#: libretranslate/app.py:726 +#, python-format +msgid "%(format)s format is not supported" +msgstr "WANITA 0 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 "" +"WANITA 0 ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( " +"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( " +"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (.Perancis) tidak " +"tersedia sebagai bahasa target dari %(sname)s ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( " +"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( " +"( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( " +"( (.Fiji 3) %(tname)s %(tcode)s %(scode)s" + +#: libretranslate/app.py:787 +#, python-format +msgid "Cannot translate text: %(text)s" +msgstr "Tidak dapat menerjemahkan teks: WANITA 0 %(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 WANITA 0 %(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, WANITA 0 " +"%(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 WANITA 0 Oleh: Perancis Ditenagai oleh " +"%(engine)s %(heart)s %(contributors)s" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "%(libretranslate)s Contributors" +msgstr "WANITA 0 Kontributor %(libretranslate)s" + +#~ msgid "Basque" +#~ msgstr "Basque" + +#~ msgid "Galician" +#~ msgstr "Galisia" diff --git a/libretranslate/locales/ms/meta.json b/libretranslate/locales/ms/meta.json new file mode 100644 index 0000000..7e2741a --- /dev/null +++ b/libretranslate/locales/ms/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Malay", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po b/libretranslate/locales/nb/LC_MESSAGES/messages.po similarity index 64% rename from libretranslate/locales/nb_NO/LC_MESSAGES/messages.po rename to libretranslate/locales/nb/LC_MESSAGES/messages.po index f28f1f3..09cc0de 100644 --- a/libretranslate/locales/nb_NO/LC_MESSAGES/messages.po +++ b/libretranslate/locales/nb/LC_MESSAGES/messages.po @@ -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\" \n" -"Language-Team: Norwegian Bokmål \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 \n" +"Language-Team: Norwegian Bokmål \n" "Language: nb_NO\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 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 <= %(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" diff --git a/libretranslate/locales/nb/meta.json b/libretranslate/locales/nb/meta.json new file mode 100644 index 0000000..7dd39d7 --- /dev/null +++ b/libretranslate/locales/nb/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Norwegian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/nl/LC_MESSAGES/messages.po b/libretranslate/locales/nl/LC_MESSAGES/messages.po index 0faa873..cd606e9 100644 --- a/libretranslate/locales/nl/LC_MESSAGES/messages.po +++ b/libretranslate/locales/nl/LC_MESSAGES/messages.po @@ -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-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-12-09 21:07+0000\n" -"Last-Translator: ArnoldCordewiner \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-23 19:28+0000\n" +"Last-Translator: Marijn Scholtus \n" "Language-Team: Dutch \n" "Language: nl\n" @@ -18,100 +18,110 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.3-dev\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 "Onjuist JSON formaat" +msgstr "Onjuist JSON-formaat" -#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Automatisch Detecteren" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Niet bevoegd" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Overschrijding maximaal aantal verzoeken" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "Ongeldige API sleutel" +msgstr "Ongeldige API-sleutel" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "Neem contact op met de server-beheerder om een API sleutel te krijgen" +msgstr "Neem contact op met de serverbeheerder om een API-sleutel te krijgen" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" -msgstr "Ga naar %(url)s om een API sleutel te krijgen" +msgstr "Ga naar %(url)s om een API-sleutel te krijgen" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Vertraging:" -#: libretranslate/app.py:525 libretranslate/app.py:527 -#: libretranslate/app.py:529 libretranslate/app.py:741 -#: libretranslate/app.py:743 libretranslate/app.py:745 -#: libretranslate/app.py:896 libretranslate/app.py:1053 -#: libretranslate/app.py:1055 libretranslate/app.py:1057 -#: libretranslate/app.py:1059 +#: libretranslate/app.py: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 "Ongeldig verzoek: %(name)s parameter ontbreekt" -#: 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 "Ongeldig verzoek: %(name)s parameter is geen getal" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Ongeldig verzoek: %(name)s parameter moet zijn %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" -msgstr "" -"Ongeldig verzoek: verzoek (%(size)s) overschrijdt tekstlimiet (%(limit)s)" +msgstr "Ongeldig verzoek: verzoek (%(size)s) overschrijdt tekstlimiet (%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 +#: libretranslate/app.py: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 wordt niet ondersteund" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s formaat wordt niet ondersteund" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py: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) Is niet beschikbaar als een doeltaal van %(sname)s " "(%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Kan tekst niet vertalen: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." msgstr "Bestanden vertalen is uitgeschakeld op deze server." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Ongeldig verzoek: leeg bestand" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Ongeldig verzoek: bestandsformaat wordt niet ondersteund" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Ongeldige bestandsnaam" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Suggesties zijn uitgeschakeld op deze server." @@ -120,118 +130,190 @@ msgid "English" msgstr "Engels" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albanezen" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabisch" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbeidzjaans" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengaals" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulgaars" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalaans" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Chinees" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Chinees (traditioneel)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Tsjechisch" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Deens" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Nederlands" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Ests" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Fins" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Frans" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Duits" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grieks" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebreeuws" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hindi" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Hongaars" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonesisch" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Iers" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italiaans" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japans" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Koreaans" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Lets" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litouws" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Maleis" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Noors" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Perzisch" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Pools" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugees" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugees (Brazilië)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Roemeens" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Russisch" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovaaks" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Sloveens" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Spaans" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Zweeds" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Thais" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turks" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Oekraïens" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Servisch" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Oekraïens" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamees" @@ -251,7 +333,7 @@ msgstr "vertaal" msgid "Translate text from a language to another" msgstr "Vertaal tekst van de ene taal naar een andere" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Vertaalde tekst" @@ -293,7 +375,7 @@ msgstr "tekst" #: libretranslate/locales/.swag.py:15 msgid "html" -msgstr "_" +msgstr "html" #: libretranslate/locales/.swag.py:16 msgid "" @@ -306,208 +388,212 @@ msgstr "" "HTML markup\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Voorkeursaantal alternatieve vertalingen" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API sleutel" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Vertaal een bestand van de ene taal naar de andere" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Vertaald bestand" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Bestand om te vertalen" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Vernietig de taal van een enkele sms" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Detecties" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Detectie fout" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Tekst om te detecteren" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Verwijder de frontend specifieke instellingen" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "frontend instellingen" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "frontend" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Doe een suggestie voor het verbeteren van een vertaling" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Succes" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Niet goedgekeurd" -#: libretranslate/locales/.swag.py:31 -msgid "Original text" -msgstr "Originele SMS" - #: libretranslate/locales/.swag.py:32 +msgid "Original text" +msgstr "Originele sms" + +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Voorgestelde vertaling" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Taal van de oorspronkelijke tekst" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Taal van de voorgestelde vertaling" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "feedback" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Taalcode" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Menselijke taalnaam (in Engels)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Codes van ondersteunde doeltalen" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Vertaald bericht" -#: libretranslate/locales/.swag.py:40 -msgid "Error message" -msgstr "Error bericht" - #: libretranslate/locales/.swag.py:41 -msgid "Reason for slow down" -msgstr "Reason" +msgid "Error message" +msgstr "Foutmelding" #: libretranslate/locales/.swag.py:42 +msgid "Reason for slow down" +msgstr "Reden voor vertraging" + +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL van het vertaalde bestand" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Vertrouwelijke waarde" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Character input limiet voor deze taal" -#: libretranslate/locales/.swag.py:45 -msgid "Frontend translation timeout" -msgstr "Frontend vertaling timeout" - #: libretranslate/locales/.swag.py:46 +msgid "Frontend translation timeout" +msgstr "Frontend vertaling time-out" + +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Of de API-sleutel database in staat is." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Of een API-sleutel nodig is." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Of het indienen van suggesties in staat is." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Ondersteunde bestandsformaten" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Of het nu succesvol was" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" -msgstr "Begrepen" +msgstr "Tekst kopiëren" #: 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 niet laden %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Onbekende fout" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" -msgstr "Copi" +msgstr "Gekopieerd" -#: 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 "" -"Bedankt voor je correctie. Let op dat de suggestie niet meteen zal werken." +"Thanks for your correction. Note the suggestion will not take effect " +"right away." +msgstr "Bedankt voor je correctie. Let op dat de suggestie niet meteen zal werken." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Geen talen beschikbaar. Heb je de modellen correct geïnstalleerd?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "" -"Voer je API sleutel in. Als je een API sleutel nodig hebt, %(instructions)s" +"Voer je API-sleutel in. Als je een API-sleutel nodig hebt, " +"%(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "druk op de \"Get API Key\" link." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "neem contact op met de server." -#: libretranslate/templates/index.html:9 -#: libretranslate/templates/index.html:27 -#: libretranslate/templates/index.html:336 +#: libretranslate/templates/index.html:9 libretranslate/templates/index.html:27 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" -msgstr "Vrij en open Source Machine Vertaling" +msgstr "Vrij en open source Machine Vertaling" #: 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 "" -"Vrij en open Source Machine Vertaling API. Self-hosted, offline capabel en " -"makkelijk te koppelen. Laat je eigen API server binnen een paar minuten." +"Vrij en open source Machine Vertaling API. Free to download, offline " +"capabel en makkelijk te koppelen. Laat je eigen API-server binnen een " +"paar minuten." #: libretranslate/templates/index.html:11 msgid "translation" @@ -515,158 +601,174 @@ msgstr "vertaling" #: libretranslate/templates/index.html:11 msgid "api" -msgstr "♪" - -#: libretranslate/templates/index.html:65 -msgid "API Docs" -msgstr "API Doc" +msgstr "api" #: libretranslate/templates/index.html:67 +msgid "API Docs" +msgstr "API Docmentatie" + +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Haal API Sleutel" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 -msgid "Set API Key" -msgstr "API Sleutel" - #: libretranslate/templates/index.html:73 -msgid "Change language" -msgstr "Verander de taal" +msgid "Set API Key" +msgstr "API-sleutel instellen" -#: libretranslate/templates/index.html:79 -msgid "Edit" -msgstr "Ed" +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "Taal wijzigen" #: libretranslate/templates/index.html:81 +msgid "Edit" +msgstr "Bewerk" + +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "Toggle dark/light modus" +msgstr "Schakelen tussen donker/lichtmodus" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" -msgstr "Ingerukt" +msgstr "Verwerpen" -#: 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 "" +"Vanwege misbruik door bots zijn vertaalverzoeken tijdelijk beperkt tot " +"gebruikers met een geldige API-sleutel. Sorry voor het ongemak!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" -msgstr "Vertalings-API" +msgstr "Vertaling API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Vertaal Tekst" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Vertaal Bestanden" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Vertaal uit" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" -msgstr "Zwembron en doel talen" +msgstr "Verwissel bron- en doeltalen" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Vertaal naar" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Text om te vertalen" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" -msgstr "Verwijder bericht" +msgstr "Tekst verwijderen" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" -msgstr "Voorgestelde vertaling" +msgstr "Vertaling voorstellen" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Annuleren" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Versturen" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Ondersteunde bestandsformaten:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Bestand" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Verwijder bestand" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Vertaal" -#: 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 "Verzoek" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Antwoord" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "Open Source Machine Vertaling API" +msgstr "Open source Machine Vertaling 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 "Zelf gehost. Offline Capable. Makkelijk te configureren." -#: 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 "Licentie:" -#: libretranslate/templates/index.html:340 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. If " -"you're going to run an application in production, please %(host_server)s or " -"%(get_api_key)s." -msgstr "" -"Deze publieke API moet worden gebruikt voor testen, persoonlijk of " -"infrequent gebruik. Als je een applicatie in productie laat lopen, dan aub " -"%(host_server)s of... %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "host je eigen server" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "verkrijg een API sleutel" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" -msgstr "" -"Gemaakt met %(heart)s door %(contributors)s enmet de kracht van %(engine)s" +msgstr "Gemaakt met %(heart)s door %(contributors)s Emmet de kracht van %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Bijdragers" #~ msgid "multipart/form-data" #~ msgstr "multipart/form-data" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamees" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Deze publieke API moet worden gebruikt" +#~ " voor testen, persoonlijk of infrequent " +#~ "gebruik. Als je een applicatie in " +#~ "productie laat lopen, dan aub " +#~ "%(host_server)s of... %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "host je eigen server" + +#~ msgid "get an API key" +#~ msgstr "verkrijg een API sleutel" + +#~ msgid "Basque" +#~ msgstr "Baskische" + +#~ msgid "Galician" +#~ msgstr "Galicisch" diff --git a/libretranslate/locales/nl/meta.json b/libretranslate/locales/nl/meta.json index 1280846..5a776a4 100644 --- a/libretranslate/locales/nl/meta.json +++ b/libretranslate/locales/nl/meta.json @@ -1,4 +1,4 @@ { "name": "Dutch", - "reviewed": false -} \ No newline at end of file + "reviewed": true +} diff --git a/libretranslate/locales/nn/LC_MESSAGES/messages.po b/libretranslate/locales/nn/LC_MESSAGES/messages.po new file mode 100644 index 0000000..2ed27f5 --- /dev/null +++ b/libretranslate/locales/nn/LC_MESSAGES/messages.po @@ -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 , 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 \n" +"Language: nn\n" +"Language-Team: Norwegian Nynorsk " +"\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 "" + diff --git a/libretranslate/locales/nn/meta.json b/libretranslate/locales/nn/meta.json new file mode 100644 index 0000000..cf3777d --- /dev/null +++ b/libretranslate/locales/nn/meta.json @@ -0,0 +1,4 @@ +{ + "name": "nn", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/oc/LC_MESSAGES/messages.po b/libretranslate/locales/oc/LC_MESSAGES/messages.po index cfa41d9..bc8e143 100644 --- a/libretranslate/locales/oc/LC_MESSAGES/messages.po +++ b/libretranslate/locales/oc/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Occitan translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,81 +8,91 @@ 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-19 10:35+0000\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-11-29 04:07+0000\n" "Last-Translator: Quentin PAGÈS \n" -"Language-Team: Occitan \n" "Language: oc\n" +"Language-Team: Occitan " +"\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 4.15.1\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 "Format JSON invalid" -#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Deteccion automatica" -#: libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Pas permés" -#: libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Tròp de despassament de limit de requèstas" -#: libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Clau API invalida" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Mercés de contactar l’operator del servidor per obténer una clau API" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Consultatz %(url)s per obténer una clau API" -#: libretranslate/app.py:269 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Alentissètz :" -#: 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 "Requèsta invalida : paramètre %(name)s mancant" -#: 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 "Requèsta non valabla: lo paramètre %(name)s es pas un nombre" + +#: 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 "" "Demanda non valida : requèsta (%(size)s) despassa lo limit de tèxte " "(%(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 es pas pres en carga" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "Format %(format)s pas pres en carga" -#: 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 +101,28 @@ msgstr "" "%(tname)s (%(tcode)s) es pas disponible coma lenga cibla de %(sname)s " "(%(scode)s)" -#: libretranslate/app.py:589 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Impossible de traduire lo tèxte : %(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 "La traduccion de fichièrs es desactivada sus aqueste servidor." -#: libretranslate/app.py:690 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Requèsta invalida : fichièr void" -#: libretranslate/app.py:693 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Requèsta invalida : format de fichièr pas pres en carga" -#: libretranslate/app.py:738 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Nom de fichièr invalida" -#: libretranslate/app.py:979 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Las suggestions son desactivadas sus aqueste servidor." @@ -121,120 +131,192 @@ msgid "English" msgstr "Anglés" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabi" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azèri" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalan" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Chinés" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Mandarin (tradicional)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Chèc" -#: 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 "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 "" + +#: 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 "Alemand" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grèc" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Ebrèu" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Indi" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Ongrés" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonesian" -#: 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 "Italian" -#: 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 "Corean" -#: 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 "Persan" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polonés" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugués" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Romanés" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Rus" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Eslovac" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Espanhòl" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Suedés" -#: 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 "Turc" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ucraïnian" -#: 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 "Vietnamian" +msgstr "" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" @@ -252,7 +334,7 @@ msgstr "traduire" msgid "Translate text from a language to another" msgstr "Traduire un tèxte d’una lenga a l’autra" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Tèxte traduch" @@ -307,170 +389,174 @@ msgstr "" " * `html` - Balisatge HTM\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "clau d’API" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Traduire un fichièr d’una lenga a l’autra" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Fichièr traduch" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Fichièr de traduire" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Detectar la lenga d’un sol tèxte" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Deteccions" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Error de deteccion" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Tèxte de detectar" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Recuperar los paramètres especifics de l’interfàcia" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "paramètres de l’interfàcia" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "interfàcia" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Sometre una suggestion per melhorar una traduccion" -#: 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 "Pas permés" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Tèxte original" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Traduccion suggerida" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Lenga del tèxte original" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Lenga de la traduccion suggerida" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "comentaris" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Còdi lenga" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Nom de la lenga lisible per un uman (en anglés)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Còdis de lengas cibla presas en carga" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Tèxte(s) traduch(es)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Messatge d’error" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Rason de l’alentiment" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL del fichièr traduch" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Valor de fisança" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Limit d’entrada de caractèrs per aquesta lenga (-1 indica cap de limit)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Expiracion de la traduccion de l’interfàcia" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Indica se la basa de donadas de claus API es activada." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Indica se una clau API es requerida." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Indica se lo mandadís de suggestions es activat." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Fichièrs preses en carga" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Indica se lo mandadís a capitat" #: 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 lo tèxte" -#: 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 "Cargament impossible de %(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 "Error desconeguda" -#: libretranslate/templates/app.js.template:276 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Copiat" -#: 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." @@ -478,36 +564,37 @@ msgstr "" "Mercés de vòstra correccion. Notatz que la suggestion serà pas presa en " "compte immediatament." -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Cap de lenga pas disponibla. Avètz installats los modèls corrèctament ?" -#: 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 "Picatz vòstra clau API. Se vos cal una clau API, %(instructions)s" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "quichatz lo ligam « Obténer una clau API »." -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "contactatz l’operator del 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 de traduccion automatica gratuita e liura" #: 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 de traduccion automatica liura e dobèrta. Auto-albergada, fòra linha, de " -"bon installar. Lançatz vòstre pròpri servidor API en qualques minutas." +"API de traduccion automatica liura e dobèrta. Auto-albergada, fòra linha," +" de bon installar. Lançatz vòstre pròpri servidor API en qualques " +"minutas." #: libretranslate/templates/index.html:11 msgid "translation" @@ -517,148 +604,169 @@ msgstr "traduccion" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "Documents API" -#: libretranslate/templates/index.html:66 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Obténer clau 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 "Definir clau API" -#: libretranslate/templates/index.html:72 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Cambiar la lenga" -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Modificar" -#: libretranslate/templates/index.html:154 +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "" + +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Ignorar" -#: 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 "" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "API de traduccion" -#: libretranslate/templates/index.html:172 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Traduire tèxte" -#: libretranslate/templates/index.html:176 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Traduire fichièrs" -#: libretranslate/templates/index.html:182 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Traduire a partir de" -#: libretranslate/templates/index.html:192 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Intervertir la lenga font e cibla" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Traduire en" -#: libretranslate/templates/index.html:207 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Tèxte de traduire" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Suprimir lo tèxte" -#: libretranslate/templates/index.html:223 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Suggerir traduccion" -#: libretranslate/templates/index.html:227 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Anullar" -#: 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 "Formats de fichièrs preses en carga :" -#: libretranslate/templates/index.html:250 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Fichièr" -#: libretranslate/templates/index.html:265 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Suprimir fichièr" -#: libretranslate/templates/index.html:272 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Traduire" -#: libretranslate/templates/index.html:273 -#: libretranslate/templates/index.html:317 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Telecargar" -#: libretranslate/templates/index.html:292 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Requèsta" -#: libretranslate/templates/index.html:297 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Responsa" -#: libretranslate/templates/index.html:312 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "API de traduccion automatica liura" -#: 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 albergat. Pòt foncionar fòra connexion. De bon 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 "Licéncia :" -#: 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 "" -"Aquesta API publica deuriá èsser utilizada per d’ensages, l’utilizacion " -"personala o ocasionala. Se sètz per executar una aplicacion en produccion, " -"se vos plai %(host_server)s o %(get_api_key)s." - -#: libretranslate/templates/index.html:337 -msgid "host your own server" -msgstr "albergatz vòstre pròpri servidor" - -#: libretranslate/templates/index.html:337 -msgid "get an API key" -msgstr "obténer una clau 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 "Concebut amb %(heart)s pels %(contributors)s e propulsat per %(engine)s" -#: libretranslate/templates/index.html:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "Contributors %(libretranslate)s" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamian" + +#~ 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 "" +#~ "Aquesta API publica deuriá èsser " +#~ "utilizada per d’ensages, l’utilizacion " +#~ "personala o ocasionala. Se sètz per " +#~ "executar una aplicacion en produccion, " +#~ "se vos plai %(host_server)s o " +#~ "%(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "albergatz vòstre pròpri servidor" + +#~ msgid "get an API key" +#~ msgstr "obténer una clau API" + +#~ msgid "Basque" +#~ msgstr "Basc" + +#~ msgid "Galician" +#~ msgstr "" + diff --git a/libretranslate/locales/oc/meta.json b/libretranslate/locales/oc/meta.json new file mode 100644 index 0000000..b5ed1de --- /dev/null +++ b/libretranslate/locales/oc/meta.json @@ -0,0 +1,4 @@ +{ + "name": "oc", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/pa/LC_MESSAGES/messages.po b/libretranslate/locales/pa/LC_MESSAGES/messages.po index c5b52fd..b27588b 100644 --- a/libretranslate/locales/pa/LC_MESSAGES/messages.po +++ b/libretranslate/locales/pa/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Punjabi translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,104 +8,118 @@ 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: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-16 02:45+0000\n" +"Last-Translator: Mandeep \n" +"Language-Team: Punjabi \n" "Language: pa\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" +"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:60 +#: libretranslate/app.py:93 msgid "Invalid JSON format" -msgstr "" +msgstr "ਅਵੈਧ JSON ਫਾਰਮੈਟ" -#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" -msgstr "" +msgstr "ਆਟੋ ਖੋਜ" -#: libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "" +msgstr "ਅਣਅਧਿਕਾਰਤ" -#: libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "" +msgstr "ਬਹੁਤ ਜ਼ਿਆਦਾ ਬੇਨਤੀ ਸੀਮਾ ਉਲੰਘਣਾਵਾਂ" -#: libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "" +msgstr "ਅਵੈਧ API ਕੁੰਜੀ" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "" +msgstr "ਕਿਰਪਾ ਕਰਕੇ API ਕੁੰਜੀ ਲੈਣ ਲਈ ਸਰਵਰ ਆਪਰੇਟਰ ਨਾਲ ਸੰਪਰਕ ਕਰੋ" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" -msgstr "" +msgstr "API ਕੁੰਜੀ ਲੈਣ ਲਈ %(url)s 'ਤੇ ਜਾਓ" -#: libretranslate/app.py:269 +#: libretranslate/app.py:420 msgid "Slowdown:" -msgstr "" +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 "" +msgstr "ਅਵੈਧ ਬੇਨਤੀ: ਲਾਪਤਾ ਪੈਰਾਮੀਟਰ %(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 "ਅਵੈਧ ਬੇਨਤੀ: ਪੈਰਾਮੀਟਰ %(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 "" +msgstr "ਅਵੈਧ ਬੇਨਤੀ: ਬੇਨਤੀ (%(size)s) ਟੈਕਸਟ ਸੀਮਾ (%(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 "" +msgstr "%(lang)s ਸਮਰਥਿਤ ਨਹੀਂ ਹੈ" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" -msgstr "" +msgstr "%(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 " "%(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,127 +128,191 @@ 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" -msgstr "" - -#: libretranslate/locales/.langs.py:8 -msgid "Esperanto" -msgstr "" - -#: libretranslate/locales/.langs.py:9 -msgid "Finnish" -msgstr "" - -#: libretranslate/locales/.langs.py:10 -msgid "French" -msgstr "" - -#: libretranslate/locales/.langs.py:11 -msgid "German" -msgstr "" - -#: libretranslate/locales/.langs.py:12 -msgid "Greek" -msgstr "" - -#: libretranslate/locales/.langs.py:13 -msgid "Hebrew" -msgstr "" - -#: libretranslate/locales/.langs.py:14 -msgid "Hindi" -msgstr "" - -#: libretranslate/locales/.langs.py:15 -msgid "Hungarian" -msgstr "" - -#: libretranslate/locales/.langs.py:16 -msgid "Indonesian" -msgstr "" - -#: libretranslate/locales/.langs.py:17 -msgid "Irish" -msgstr "" - -#: libretranslate/locales/.langs.py:18 -msgid "Italian" -msgstr "" - -#: libretranslate/locales/.langs.py:19 -msgid "Japanese" -msgstr "" - -#: libretranslate/locales/.langs.py:20 -msgid "Korean" -msgstr "" - -#: libretranslate/locales/.langs.py:21 -msgid "Persian" -msgstr "" - -#: libretranslate/locales/.langs.py:22 -msgid "Polish" -msgstr "" - -#: libretranslate/locales/.langs.py:23 -msgid "Portuguese" -msgstr "" - -#: libretranslate/locales/.langs.py:24 -msgid "Russian" -msgstr "" - -#: libretranslate/locales/.langs.py:25 -msgid "Slovak" -msgstr "" - -#: libretranslate/locales/.langs.py:26 -msgid "Spanish" -msgstr "" - -#: libretranslate/locales/.langs.py:27 -msgid "Swedish" -msgstr "" - -#: libretranslate/locales/.langs.py:28 -msgid "Turkish" -msgstr "" - -#: libretranslate/locales/.langs.py:29 -msgid "Ukranian" -msgstr "" - -#: libretranslate/locales/.langs.py:30 -msgid "Vietnamese" -msgstr "" - -#: libretranslate/locales/.langs.py:31 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 "Kabyle" +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 @@ -253,7 +331,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 "" @@ -305,201 +383,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 "" @@ -511,145 +593,165 @@ 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 "Kabyle" +#~ 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 "" diff --git a/libretranslate/locales/pa/meta.json b/libretranslate/locales/pa/meta.json new file mode 100644 index 0000000..ce79382 --- /dev/null +++ b/libretranslate/locales/pa/meta.json @@ -0,0 +1,4 @@ +{ + "name": "pa", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/pl/LC_MESSAGES/messages.po b/libretranslate/locales/pl/LC_MESSAGES/messages.po index 47dbff7..2ac70b3 100644 --- a/libretranslate/locales/pl/LC_MESSAGES/messages.po +++ b/libretranslate/locales/pl/LC_MESSAGES/messages.po @@ -8,79 +8,90 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-09-01 11:56+0000\n" -"Last-Translator: Wojtek Jurkowlaniec \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-17 09:53+0000\n" +"Last-Translator: Przemek \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" msgstr "Nieprawidłowy format 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 "Wykryj automatycznie" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "Brak uwierzytelnienia" +msgstr "Nieautoryzowany" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Przekroczono limit ilości zapytań" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Nieprawidłowy klucz API" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Proszę skontaktować się z operatorem serwera, aby uzyskać klucz API" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Przejdź do %(url)s aby uzyskać klucz API" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Spowolnienie:" -#: libretranslate/app.py:525 libretranslate/app.py:527 -#: libretranslate/app.py:529 libretranslate/app.py:741 -#: libretranslate/app.py:743 libretranslate/app.py:745 -#: libretranslate/app.py:896 libretranslate/app.py:1053 -#: libretranslate/app.py:1055 libretranslate/app.py:1057 -#: libretranslate/app.py:1059 +#: libretranslate/app.py: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 "Nieprawidłowe zapytanie: brakuje parametru %(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 "Nieprawidłowe zapytanie: %(name)s parametr nie jest liczbą" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Nieprawidłowe zapytanie: %(name)s parametr musi być < = %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" "Nieprawidłowe zapytanie: zapytanie (%(size)s) przekracza limit znaków " "(%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 +#: libretranslate/app.py: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 nie jest wspierany" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "format %(format)s nie jest wspierany" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py:735 libretranslate/app.py:763 #, python-format msgid "" "%(tname)s (%(tcode)s) is not available as a target language from %(sname)s " @@ -89,28 +100,28 @@ msgstr "" "%(tname)s (%(tcode)s) nie jest dostępny jako język docelowy z języka " "%(sname)s (%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Nie można przetłumaczyć tekstu: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." -msgstr "Translacje plików są wyłączone na serwerze." +msgstr "Tłumaczenie plików jest wyłączone na tym serwerze." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Nieprawidłowe zapytanie: pusty plik" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Nieprawidłowe zapytanie: format pliku nie jest wspierany" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Nieprawidłowa nazwa pliku" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Sugestie są wyłączone na serwerze." @@ -119,118 +130,190 @@ msgid "English" msgstr "Angielski" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albański" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabski" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbejdżański" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengalski" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bułgarski" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Kataloński" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Chiński" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Chiński (tradycyjny)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Czeski" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Duński" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Holenderski" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estoński" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Fiński" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francuski" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Niemiecki" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grecki" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebrajski" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" -msgstr "Hindi" +msgstr "Hinduski" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Węgierski" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonezyjski" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irlandzki" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Włoski" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japoński" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Koreański" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Łotewski" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litewski" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malajski" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norweski" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Perski" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polski" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugalski" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugalski (Brazylia)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumuński" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Rosyjski" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Słowacki" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Słoweński" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Hiszpański" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Szwedzki" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalski" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Tajski" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turecki" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" -msgstr "Ukrański" +msgstr "Ukraiński" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Serbski" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukraiński" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Wietnamski" @@ -248,15 +331,15 @@ msgstr "tłumaczenie" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "Tekst tłumaczenia z języka na inny język" +msgstr "Tłumaczenie tekstu z jednego języka na inny" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Przetłumaczony tekst" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" -msgstr "Nieprawidłowe zapytanie" +msgstr "Nieprawidłowe żądanie" #: libretranslate/locales/.swag.py:7 msgid "Translation error" @@ -268,7 +351,7 @@ msgstr "Zwolnij" #: libretranslate/locales/.swag.py:9 msgid "Banned" -msgstr "Zablokowany" +msgstr "Zbanowany" #: libretranslate/locales/.swag.py:10 msgid "Hello world!" @@ -280,7 +363,7 @@ msgstr "Tekst(y) do przetłumaczenia" #: libretranslate/locales/.swag.py:12 msgid "Source language code" -msgstr "Kod języka źródła" +msgstr "Kod języka źródłowego" #: libretranslate/locales/.swag.py:13 msgid "Target language code" @@ -305,204 +388,208 @@ msgstr "" "* `html' – znaczniki HTML\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Preferowana liczba tłumaczeń alternatywnych" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "Klucz API" -#: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "Przetłumaczone pliki z języka do innego języka" - #: libretranslate/locales/.swag.py:19 +msgid "Translate file from a language to another" +msgstr "Tłumaczenie pliku z jednego języka na inny" + +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Przetłumaczony plik" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Plik do przetłumaczenia" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Wykryj język pojedynczego tekstu" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Wykryto" -#: libretranslate/locales/.swag.py:23 -msgid "Detection error" -msgstr "Błąd detekcji" - #: libretranslate/locales/.swag.py:24 -msgid "Text to detect" -msgstr "Tekst do detekcji" +msgid "Detection error" +msgstr "Błąd wykrywania" #: libretranslate/locales/.swag.py:25 +msgid "Text to detect" +msgstr "Tekst do wykrycia" + +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Pobierz ustawienia frontendu" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "ustawienia frontendu" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "frontend" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Zgłoś sugestię do poprawy tłumaczenia" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Sukces" -#: libretranslate/locales/.swag.py:30 -msgid "Not authorized" -msgstr "Brak autoryzacji" - #: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "Nie autoryzowano" + +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Oryginalny tekst" -#: libretranslate/locales/.swag.py:32 -msgid "Suggested translation" -msgstr "Zgłoszone tłumaczenie" - #: libretranslate/locales/.swag.py:33 +msgid "Suggested translation" +msgstr "Proponowane tłumaczenie" + +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Język tekstu oryginalnego" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Język sugerowanego tłumaczenia" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "informacja zwrotna" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Kod języka" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Nazwa języka (w języku angielskim)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Wspierane kody językowe" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Przetłumaczone tekst(y)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Błąd" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Powód" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "Przetłumaczony url pliku" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Poziom ufności" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Limit znaków dla tego języka (-1 oznacza brak limitu)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Przekroczono czas oczekiwania na tłumaczenie" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Czy baza kluczy API jest włączona." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Czy klucz API jest wymagany." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Umożliwia to, że sugestie mogą być poddane." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Plik multimedialny" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Współzałożycielstwo odniosło sukces" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Tekst Copy" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 "ładunek %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Nieznany błąd" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Skopiowano" -#: 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 "Dzięki korekcji. Zasugerowanie nie będzie realizowane." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Żadne języki nie są dostępne. Czy można poprawnie stosować modele?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "" "Wprowadź swój klucz API. Jeśli potrzebujesz klucza API, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "prasa \"Get API Key\" (ang.)." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "skontaktuje się z operatorem serwera." #: libretranslate/templates/index.html:9 #: libretranslate/templates/index.html:27 -#: libretranslate/templates/index.html:336 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" msgstr "Free and Open Source Machine Translation API (ang.)" #: 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 "" "Free and Open Source Machine Translation API (ang.). Samodzielny, niezdolny " "i łatwy do położenia. Służysz własny serwer API w ciągu kilku minut." @@ -515,155 +602,169 @@ msgstr "transkrypcja" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API Docs" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "API Key" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "Ustaw klucz API" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Język zmienny" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Edyta" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "Toggle dark/light mode" +msgstr "Przełącz tryb ciemny/jasny" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Dyskusja" -#: libretranslate/templates/index.html:171 +#: libretranslate/templates/index.html:177 +msgid "" +"Due to bot abuse, translation requests are temporarily limited to users with" +" a valid API key. Sorry for the inconvenience!" +msgstr "" +"Ze względu na nadużywanie bot, wnioski o tłumaczenie są tymczasowo " +"ograniczone do użytkowników z ważnym kluczem API. Przepraszam za " +"niedogodności!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "Tłumaczenie API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Przekład" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Translate File" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Przetłumaczenie" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Źródło i języki docelowe" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Przetłumaczyć" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Tekst tłumaczenia" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Tekst Delete" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Suggest" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Anuluj" -#: 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 "Formaty plików:" -#: 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 "Remove plik" +msgstr "Usuń plik" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" -msgstr "Translat" +msgstr "Tłumacz" -#: 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 "Pobierz" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Zapytanie" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Odpowiedź" -#: 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 (ang.). Offline Capable (ang.). Łatwe do realizacji." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Free to download (ang.). Offline Capable (ang.). Łatwe do realizacji." -#: libretranslate/templates/index.html:335 +#: libretranslate/templates/index.html:346 msgid "LibreTranslate" msgstr "LibreTranslation" -#: libretranslate/templates/index.html:337 +#: libretranslate/templates/index.html:348 msgid "License:" msgstr "Licencja:" -#: libretranslate/templates/index.html:340 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. If " -"you're going to run an application in production, please %(host_server)s or " -"%(get_api_key)s." -msgstr "" -"To publiczne API powinno być wykorzystywane do testowania, osobistego lub " -"rzadkiego użytku. Jeśli zamierzasz uruchomić aplikację w produkcji, proszę " -"%(host_server)s lub %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "serwer" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "uzyskaj klucz API" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" msgstr "zrealizować %(heart)s by %(contributors)s zasilany %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Contributor" #~ msgid "multipart/form-data" #~ msgstr "wieloczęściowy/formowy" + +#~ msgid "Vietnamese" +#~ msgstr "Wietnamski" + +#~ msgid "" +#~ "This public API should be used for testing, personal or infrequent use. If " +#~ "you're going to run an application in production, please %(host_server)s or " +#~ "%(get_api_key)s." +#~ msgstr "" +#~ "To publiczne API powinno być wykorzystywane do testowania, osobistego lub " +#~ "rzadkiego użytku. Jeśli zamierzasz uruchomić aplikację w produkcji, proszę " +#~ "%(host_server)s lub %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "serwer" + +#~ msgid "get an API key" +#~ msgstr "uzyskaj klucz API" + +#~ msgid "Basque" +#~ msgstr "Baskijski" + +#~ msgid "Galician" +#~ msgstr "Galicyjski" diff --git a/libretranslate/locales/pt/LC_MESSAGES/messages.po b/libretranslate/locales/pt/LC_MESSAGES/messages.po index c2d45d4..680675d 100644 --- a/libretranslate/locales/pt/LC_MESSAGES/messages.po +++ b/libretranslate/locales/pt/LC_MESSAGES/messages.po @@ -8,234 +8,318 @@ 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-20 11:29+0000\n" -"Last-Translator: Jessica Patricio \n" -"Language-Team: Portuguese \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-06-02 23:35+0000\n" +"Last-Translator: Manuela Silva \n" +"Language-Team: Portuguese \n" "Language: pt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.12-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" -#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" -msgstr "Detecção automática" +msgstr "Deteção Automática" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Não autorizado" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "Muitas violações do limite de requisições" +msgstr "Demasiadas violações do limite de pedidos" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Chave de API inválida" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "Entre em contato com o operador do servidor para obter uma chave API" +msgstr "Por favor, contacte o operador do servidor para obter uma chave API" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Visite %(url)s para obter uma chave API" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" -msgstr "Devagar:" +msgstr "Abrandar:" -#: 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 "Pedido inválido: parâmetro %(name)s faltando" +msgstr "Pedido inválido: parâmetro %(name)s em falta" -#: libretranslate/app.py:544 libretranslate/app.py:553 +#: libretranslate/app.py:666 +#, python-format +msgid "Invalid request: %(name)s parameter is not a number" +msgstr "Pedido inválido: o parâmetro %(name)s não é um número" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Pedido inválida: o parâmetro %(name)s deve 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 "" -"Pedido inválido: pedido (%(size)s) excede o limite de texto (%(limit)s)" +msgstr "Pedido inválido: pedido (%(size)s) excede o limite de texto (%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 +#: libretranslate/app.py: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ão é suportado" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" -msgstr "%(format)s formato não é suportado" +msgstr "Formato %(format)s não é suportado" -#: 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) não está disponível como uma linguagem alvo de " +"%(tname)s (%(tcode)s) não está disponível como idioma de destino de " "%(sname)s (%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Não é possível traduzir o texto: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." -msgstr "A tradução de arquivos está desativada neste servidor." +msgstr "A tradução de ficheiros está desativada neste servidor." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" -msgstr "Pedido inválido: arquivo vazio" +msgstr "Pedido inválido: ficheiro vazio" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" -msgstr "Pedido inválido: formato de arquivo não suportado" +msgstr "Pedido inválido: formato de ficheiro não suportado" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" -msgstr "Nome de arquivo inválido" +msgstr "Nome de ficheiro inválido" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." -msgstr "Sugestões estão desativadas neste servidor." +msgstr "As sugestões estão desativadas neste servidor." #: libretranslate/locales/.langs.py:1 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 "Azerbaijão" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengali" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Búlgaro" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalão" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Chinês" -#: libretranslate/locales/.langs.py:5 -msgid "Czech" -msgstr "Tcheco" +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Chinês (tradicional)" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:10 +msgid "Czech" +msgstr "Checo" + +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Dinamarquês" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Holandês (Países Baixos)" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estoniano" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Finlandês" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francês" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Alemão" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grego" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebraico" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Indiano (Hindi)" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Húngaro" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonésio" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irlandês" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italiano" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japonês" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Coreano" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Letão" + +#: 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 "Norueguês" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Persa" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polonês" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" -msgstr "Português" +msgstr "Português (Portugal)" -#: 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 "Romeno" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Russo" -#: 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 "Espanhol" -#: 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 "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 "Sérvio" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ucraniano" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamita" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "Lista de idiomas suportados" +msgstr "Obter lista de idiomas suportados" #: libretranslate/locales/.swag.py:2 msgid "List of languages" @@ -247,15 +331,15 @@ msgstr "traduzir" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "Traduzir texto de uma língua para outra" +msgstr "Traduzir texto de um idioma para outro" -#: 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 traduzido" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" -msgstr "Requisição inválida" +msgstr "Pedido inválido" #: libretranslate/locales/.swag.py:7 msgid "Translation error" @@ -263,7 +347,7 @@ msgstr "Erro ao traduzir" #: libretranslate/locales/.swag.py:8 msgid "Slow down" -msgstr "Devagar" +msgstr "Abrandar" #: libretranslate/locales/.swag.py:9 msgid "Banned" @@ -279,11 +363,11 @@ msgstr "Texto(s) para traduzir" #: libretranslate/locales/.swag.py:12 msgid "Source language code" -msgstr "Código da linguagem de origem" +msgstr "Código do idioma fonte" #: libretranslate/locales/.swag.py:13 msgid "Target language code" -msgstr "Código do idioma alvo" +msgstr "Código do idioma de destino" #: libretranslate/locales/.swag.py:14 msgid "text" @@ -304,211 +388,212 @@ msgstr "" "* `html` - marcação HTML\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Número preferido de traduções alternativas" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "Chave API" -#: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "Traduzir arquivo de um idioma para outro" - #: libretranslate/locales/.swag.py:19 -msgid "Translated file" -msgstr "Arquivo traduzido" +msgid "Translate file from a language to another" +msgstr "Traduzir ficheiro de um idioma para outro" #: libretranslate/locales/.swag.py:20 -msgid "File to translate" -msgstr "Arquivo para traduzir" +msgid "Translated file" +msgstr "Ficheiro traduzido" #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "Detectar a linguagem de um único texto" +msgid "File to translate" +msgstr "Ficheiro a traduzir" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "Detecções" +msgid "Detect the language of a single text" +msgstr "Detetar o idioma de um único texto" #: libretranslate/locales/.swag.py:23 -msgid "Detection error" -msgstr "Erro de detecção" +msgid "Detections" +msgstr "Deteções" #: libretranslate/locales/.swag.py:24 -msgid "Text to detect" -msgstr "Texto para detectar" +msgid "Detection error" +msgstr "Erro de deteção" #: libretranslate/locales/.swag.py:25 -msgid "Retrieve frontend specific settings" -msgstr "Recupere configurações específicas do frontend" +msgid "Text to detect" +msgstr "Texto para detetar" #: libretranslate/locales/.swag.py:26 -msgid "frontend settings" -msgstr "configurações de frontend" +msgid "Retrieve frontend specific settings" +msgstr "Obter configurações específicas do Frontend" #: libretranslate/locales/.swag.py:27 +msgid "frontend settings" +msgstr "configurações do frontend" + +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "frontend" -#: libretranslate/locales/.swag.py:28 -msgid "Submit a suggestion to improve a translation" -msgstr "Enviar uma sugestão para melhorar uma tradução" - #: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "Submeter uma sugestão para melhorar uma tradução" + +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Sucesso" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Não autorizado" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Texto original" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Tradução sugerida" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Idioma do texto original" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Idioma da tradução sugerida" -#: libretranslate/locales/.swag.py:35 -msgid "feedback" -msgstr "feedback" - #: libretranslate/locales/.swag.py:36 -msgid "Language code" -msgstr "Código de linguagem" +msgid "feedback" +msgstr "opinião" #: libretranslate/locales/.swag.py:37 +msgid "Language code" +msgstr "Código do idioma" + +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Nome do idioma legível para humanos (em inglês)" -#: libretranslate/locales/.swag.py:38 -msgid "Supported target language codes" -msgstr "Códigos de idioma alvo suportados" - #: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "Códigos do idioma de destino suportados" + +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Texto(s) traduzido(s)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Mensagem de erro" -#: libretranslate/locales/.swag.py:41 -msgid "Reason for slow down" -msgstr "Motivo da lentidão" - #: libretranslate/locales/.swag.py:42 -msgid "Translated file url" -msgstr "Url do arquivo traduzido" +msgid "Reason for slow down" +msgstr "Motivo por abrandar" #: libretranslate/locales/.swag.py:43 +msgid "Translated file url" +msgstr "Url do ficheiro traduzido" + +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Valor de confiança" -#: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "" -"Limite de entrada de caracteres para esta língua (-1 indica sem limite)" - #: libretranslate/locales/.swag.py:45 -msgid "Frontend translation timeout" -msgstr "Tempo de tradução do frontend" +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "Limite da entrada de carateres para este idioma (-1 indica sem limite)" #: libretranslate/locales/.swag.py:46 -msgid "Whether the API key database is enabled." -msgstr "Se o banco de dados de chave API está ativado." +msgid "Frontend translation timeout" +msgstr "Tempo de tradução do Frontend" #: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "Se a base de dados da chave API está ativada." + +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Se uma chave API é necessária." -#: libretranslate/locales/.swag.py:48 -msgid "Whether submitting suggestions is enabled." -msgstr "Se enviar sugestões está ativado." - #: libretranslate/locales/.swag.py:49 -msgid "Supported files format" -msgstr "Formatos de arquivo suportados" +msgid "Whether submitting suggestions is enabled." +msgstr "Se submeter sugestões está ativado." #: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "Formatos de ficheiros suportados" + +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" -msgstr "Se a submissão foi bem sucedida" +msgstr "Se a submissão foi bem-sucedida" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template: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 "Não foi possível carregar %(url)s" +msgstr "Não é possível carregar %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Erro desconhecido" -#: 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." +"Thanks for your correction. Note the suggestion will not take effect " +"right away." msgstr "" -"Obrigado por sua correção. Note que a sugestão não terá efeito " -"imediatamente." +"Obrigado pela sua correção. Note que a sugestão não terá efeito de " +"imediato." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" -msgstr "Não há idiomas disponíveis. Você instalou os modelos corretamente?" +msgstr "Não há idiomas disponíveis. Instalou os modelos corretamente?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" -msgstr "" -"Digite sua chave API. Se você precisar de uma chave API, %(instructions)s" +msgstr "Digite a sua chave API. Se precisar de uma chave API, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." -msgstr "pressione o link \"Obter Chave API\"." +msgstr "clique na hiperligação \"Obter Chave API\"." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." -msgstr "contate o operador do servidor." +msgstr "contacte o operador do servidor." -#: libretranslate/templates/index.html:9 -#: libretranslate/templates/index.html:27 -#: 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 de tradução em máquina gratuita e de código aberto" +msgstr "API de Tradução Automática Gratuita e de Código Aberto" #: libretranslate/templates/index.html:10 #: libretranslate/templates/index.html:31 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline capable " -"and easy to setup. Run your own API server in just a few minutes." +"Free and Open Source Machine Translation API. Free to download, offline " +"capable and easy to setup. Run your own API server in just a few minutes." msgstr "" -"API de tradução em máquina gratuita e de código aberto. Auto-hospedável, " -"off-line e fácil de configurar. Execute seu próprio servidor API em apenas " -"alguns minutos." +"API de Tradução Automática Gratuita e de Código Aberto. Grátis para " +"transferir, ''off-line'' e fácil de configurar. Execute o seu próprio " +"servidor API em apenas alguns minutos." #: libretranslate/templates/index.html:11 msgid "translation" @@ -518,155 +603,173 @@ msgstr "tradução" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "Documentação API" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Obter Chave API" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "Definir Chave API" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Alterar idioma" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Editar" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "Alternar o modo escuro/luz" +msgstr "Alternar o modo escuro/claro" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" -msgstr "Recusar" +msgstr "Ignorar" -#: 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 "" +"Devido ao abuso de robô, os pedidos de tradução estão temporariamente " +"limitados aos utilizadores com uma chave de API válida. Desculpe pela " +"inconveniência!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" -msgstr "API de tradução" +msgstr "API de Tradução" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" -msgstr "Traduzir texto" +msgstr "Traduzir Texto" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" -msgstr "Traduzir arquivos" +msgstr "Traduzir Ficheiros" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Traduzir de" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" -msgstr "Inverter linguagens de origem e destino" +msgstr "Inverter idiomas fonte e de destino" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Traduzir para" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Texto para traduzir" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Excluir texto" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Sugerir tradução" -#: 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 arquivo suportados:" +msgstr "Formatos de ficheiros suportados:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" -msgstr "Arquivo" +msgstr "Ficheiro" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" -msgstr "Remover arquivo" +msgstr "Remover ficheiro" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Traduzir" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" -msgstr "Baixar" +msgstr "Transferir" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" -msgstr "Requisição" +msgstr "Pedido" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Resposta" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "API de tradução em máquina de código aberto" +msgstr "API de Tradução Automática Gratuita e de Código Aberto" -#: libretranslate/templates/index.html:316 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Auto-Hospedável. Funciona Offline. Fácil de configurar." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Grátis para transferir. Funciona Off-line. 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 "Licença:" -#: libretranslate/templates/index.html:340 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. If " -"you're going to run an application in production, please %(host_server)s or " -"%(get_api_key)s." -msgstr "" -"Esta API pública deve ser usada para testes, uso pessoal ou infrequente. Se " -"você vai executar uma aplicação em produção, por favor %(host_server)s ou " -"%(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "hospede seu próprio servidor" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "obter uma chave API" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" -msgstr "Feito com %(heart)s por %(contributors)s e alimentado por %(engine)s" +msgstr "Criado com %(heart)s por %(contributors)s e alimentado por %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" -msgstr "Contribuintes %(libretranslate)s" +msgstr "Colaboradores %(libretranslate)s" #~ msgid "multipart/form-data" #~ msgstr "multipart/form-data" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamita" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Esta API pública deve ser usada " +#~ "para testes, uso pessoal ou infrequente." +#~ " Se você vai executar uma aplicação" +#~ " em produção, por favor %(host_server)s " +#~ "ou %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "hospede seu próprio servidor" + +#~ msgid "get an API key" +#~ msgstr "obter uma chave API" + +#~ msgid "Basque" +#~ msgstr "Basco" + +#~ msgid "Galician" +#~ msgstr "Galego" diff --git a/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po b/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po index bd9f480..22543a5 100644 --- a/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po +++ b/libretranslate/locales/pt_BR/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Portuguese (Brazil) 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-06-20 11:29+0000\n" -"Last-Translator: Jessica Patricio \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-06-06 04:36+0000\n" +"Last-Translator: Juzé \n" "Language-Team: Portuguese (Brazil) \n" "Language: pt_BR\n" @@ -18,101 +18,112 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.18.1\n" -"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 "Formato JSON invá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 "Detecção automática" -#: libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "Desautorizado" +msgstr "Sem autorização" -#: libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Muitas violações de limite de solicitação" -#: libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Chave de API inválida" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Entre em contato com o operador do servidor para obter uma chave de API" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Acesse %(url)s para obter uma chave de API" -#: libretranslate/app.py:269 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Devagar:" -#: 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 "Solicitação inválida: parâmetro %(name)s ausente" -#: 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 "Solicitação inválida: o parâmetro %(name)s não é um número" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Solicitação inválida: o parâmetro %(name)s deve 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 "" "Solicitação inválida: a solicitação (%(size)s) excede o limite 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 "%(lang)s não é suportado" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "O formato %(format)s não é suportado" -#: 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 "" -"%(tname)s (%(tcode)s) não está disponível como idioma da tradução em %(sname)" -"s (%(scode)s)" +"%(tname)s (%(tcode)s) não está disponível como idioma da tradução em " +"%(sname)s (%(scode)s)" -#: libretranslate/app.py:589 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Não é possível traduzir o texto: %(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 tradução de arquivos está desativada neste servidor." -#: libretranslate/app.py:690 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Solicitação inválida: arquivo vazio" -#: libretranslate/app.py:693 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Solicitação inválida: formato de arquivo não suportado" -#: libretranslate/app.py:738 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Nome de arquivo inválido" -#: libretranslate/app.py:979 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "As sugestões estão desativadas neste servidor." @@ -121,118 +132,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 "Azerbaijano" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengali" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Búlgaro" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalão" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Chinês" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Chinês (tradicional)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Tcheco" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Dinamarquês" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Holandês" -#: 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 "Finlandês" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francês" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Alemão" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grego" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebraico" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hindi" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Húngaro" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonésio" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irlandês" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italiano" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japonês" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Coreano" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Letão" + +#: 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 "Norueguês" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Persa" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polonês" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Português" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Português (Brasil)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Romeno" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Russo" -#: 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 "Espanhol" -#: 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 "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 "Sérvio" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ucraniano" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamita" @@ -252,7 +335,7 @@ msgstr "tradução" msgid "Translate text from a language to another" msgstr "Traduz texto de um idioma para 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 traduzido" @@ -307,172 +390,176 @@ msgstr "" "* `html` - Marcação HTML\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Número preferido para traduções alternativas" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "Chave de API" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Traduz arquivo de um idioma para outro" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Arquivo traduzido" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Arquivo a ser traduzido" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Detecta o idioma de um único texto" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Detecções" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Erro de detecção" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Texto a ser detectado" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Recuperar configurações específicas do front-end" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "configurações de front-end" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "front-end" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Envie uma sugestão para melhorar uma tradução" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Sucesso" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Não autorizado" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Texto original" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Tradução sugerida" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Idioma do texto original" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Idioma da tradução sugerida" -#: libretranslate/locales/.swag.py:35 -msgid "feedback" -msgstr "opinião" - #: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "feedback" + +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Código do idioma" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Nome do idioma legível por humanos (em Inglês)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Códigos de idioma da tradução suportados" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Texto(s) traduzido(s)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Mensagem de erro" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Razão para desacelerar" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL do arquivo traduzido" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Valor da confiança" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "" "Limite de entrada de caracteres para este idioma (-1 indica que não há " "limite)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Tempo limite de tradução do front-end" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Se o banco de dados de chaves de API está ativado." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Se é necessária uma chave de API." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Se o envio de sugestões está ativado." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Formato de arquivos suportados" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Se o envio foi bem-sucedido" #: 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 "Não é possível carregar %(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 desconhecido" -#: 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." @@ -480,39 +567,39 @@ msgstr "" "Obrigado pela sua correção. Observe que a sugestão não entrará em vigor " "imediatamente." -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Nenhum idioma disponível. Você instalou os modelos corretamente?" -#: 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 "" "Digite sua chave de API. Se você precisar de uma chave de API, " "%(instructions)s" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "clique no link \"Obter chave de API\"." -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "entre em contato com o operador 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 de Tradução Automática Livre e de Código 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 de Tradução Automática Livre e de Código Aberto. Auto-hospedado, também " -"funciona offline e fácil de configurar. Execute seu próprio servidor de API " -"em apenas alguns minutos." +"API de Tradução Automática Livre e de Código Aberto. Grátis para " +"descarregar, também funciona offline e fácil de configurar. Execute seu " +"próprio servidor de API em apenas alguns minutos." #: libretranslate/templates/index.html:11 msgid "translation" @@ -522,148 +609,169 @@ msgstr "tradução" msgid "api" msgstr "API" -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "Documentação da API" -#: libretranslate/templates/index.html:66 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Obter chave de 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 "Definir chave de API" -#: libretranslate/templates/index.html:72 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Alterar idioma" -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Editar" -#: libretranslate/templates/index.html:154 -msgid "Dismiss" -msgstr "Dispensar" +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "Alternar modo claro/escuro" -#: libretranslate/templates/index.html:168 +#: libretranslate/templates/index.html:159 +msgid "Dismiss" +msgstr "Descartar" + +#: 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 "" +"Devido ao abuso de bots, as solicitações de tradução estão temporariamente " +"limitadas a usuários com uma chave de API válida. Desculpe o incômodo!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "API de Tradução" -#: libretranslate/templates/index.html:172 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Traduzir Texto" -#: libretranslate/templates/index.html:176 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Traduzir Arquivos" -#: libretranslate/templates/index.html:182 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Traduzir de" -#: libretranslate/templates/index.html:192 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Inverter idiomas do texto original e da tradução" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Traduzir para" -#: libretranslate/templates/index.html:207 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Texto a ser traduzido" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Apagar texto" -#: libretranslate/templates/index.html:223 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Sugerir tradução" -#: 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 arquivo suportados:" -#: libretranslate/templates/index.html:250 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Arquivo" -#: libretranslate/templates/index.html:265 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Remover arquivo" -#: libretranslate/templates/index.html:272 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Traduzir" -#: libretranslate/templates/index.html:273 -#: libretranslate/templates/index.html:317 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" -msgstr "Baixar" +msgstr "Download" -#: libretranslate/templates/index.html:292 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Solicitação" -#: 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 Tradução Automática de Código Aberto" -#: libretranslate/templates/index.html:313 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Auto-hospedável. Funciona offline. Fácil de configurar." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Download gratuito. Funciona offline. Fácil 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 "Licença:" -#: 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 deve ser usada para testes, uso pessoal ou pouco frequente. " -"Se for executar uma aplicação em produção, por favor, %(host_server)s ou " -"%(get_api_key)s." - -#: libretranslate/templates/index.html:337 -msgid "host your own server" -msgstr "hospede seu próprio servidor" - -#: libretranslate/templates/index.html:337 -msgid "get an API key" -msgstr "obtenha uma chave de 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 com %(heart)s por %(contributors)s e alimentado por %(engine)s" +msgstr "Feito com %(heart)s por %(contributors)s e desenvolvido por %(engine)s" -#: libretranslate/templates/index.html:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Colaboradores" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamita" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Esta API pública deve ser usada " +#~ "para testes, uso pessoal ou pouco " +#~ "frequente. Se for executar uma aplicação" +#~ " em produção, por favor, %(host_server)s" +#~ " ou %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "hospede seu próprio servidor" + +#~ msgid "get an API key" +#~ msgstr "obtenha uma chave de API" + +#~ msgid "Basque" +#~ msgstr "Basco" + +#~ msgid "Galician" +#~ msgstr "Galego" diff --git a/libretranslate/locales/pt_BR/meta.json b/libretranslate/locales/pt_BR/meta.json new file mode 100644 index 0000000..a5c2719 --- /dev/null +++ b/libretranslate/locales/pt_BR/meta.json @@ -0,0 +1,4 @@ +{ + "name": "pt_BR", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/ro/LC_MESSAGES/messages.po b/libretranslate/locales/ro/LC_MESSAGES/messages.po index 0baf730..c35325d 100644 --- a/libretranslate/locales/ro/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ro/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Romanian translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,112 +8,120 @@ 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: 2023-02-27 19:38+0000\n" "Last-Translator: Simona Iacob \n" -"Language-Team: Romanian \n" +"Language-Team: Romanian \n" "Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " -"20)) ? 1 : 2;\n" -"X-Generator: Weblate 4.16-dev\n" -"Generated-By: Babel 2.11.0\n" +"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2;\n" +"Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:60 +#: libretranslate/app.py:93 msgid "Invalid JSON format" msgstr "Format JSON invalid" -#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Detectare automată" -#: libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Neautorizat" -#: libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Prea multe încălcări ale limitelor de solicitare" -#: libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Cheie API invalidă" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "" "Vă rugăm să contactați operatorul serverului pentru a obține o cheie API" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Vizitați %(url)s pentru a obține o cheie API" -#: libretranslate/app.py:269 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Încetinire:" -#: libretranslate/app.py:467 libretranslate/app.py:469 -#: libretranslate/app.py:471 libretranslate/app.py:683 -#: libretranslate/app.py:685 libretranslate/app.py:687 -#: libretranslate/app.py:838 libretranslate/app.py:987 -#: libretranslate/app.py:989 libretranslate/app.py:991 -#: libretranslate/app.py:993 +#: libretranslate/app.py: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 "Cerere invalidă: lipsește parametrul %(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 "Cerere nevalidă: %(name)s parametrul nu este un număr" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Cerere nevalidă: %(name)s parametrul trebuie să fie > %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" "Cerere invalidă: cererea (%(size)s) depășește limita de text (%(limit)s)" -#: libretranslate/app.py:525 libretranslate/app.py:530 -#: libretranslate/app.py:700 libretranslate/app.py:705 +#: libretranslate/app.py: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 nu este acceptat" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s formatul nu este acceptat" -#: libretranslate/app.py:544 libretranslate/app.py:568 +#: libretranslate/app.py: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) nu este disponibilă ca limbă țintă din %(sname)s " "(%(scode)s)" -#: libretranslate/app.py:589 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Nu se poate traduce textul: %(text)s" -#: libretranslate/app.py:676 libretranslate/app.py:730 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." msgstr "Traducerea fișierelor este dezactivată pe acest server." -#: libretranslate/app.py:690 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Cerere invalidă: fișier gol" -#: libretranslate/app.py:693 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Cerere invalidă: formatul de fișier nu este acceptat" -#: libretranslate/app.py:738 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Nume de fișier invalid" -#: libretranslate/app.py:979 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Sugestiile sunt dezactivate pe acest server." @@ -122,118 +130,190 @@ msgid "English" msgstr "Engleză" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albaneză" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabă" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbaidjan" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengali" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulgară" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalană" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Chineză" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Chineză (tradițională)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Cehă" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Daneză" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Olandeză" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estoniană" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Finlandeză" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Franceză" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Germană" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Greacă" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Ebraică" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hindusă" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Maghiară" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indoneziană" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irlandezii" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italiană" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japoneză" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Coreeană" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Letonia" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Lituaniană" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malaezia" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norvegiană" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Persană" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Poloneză" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugheză" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugheză (Brazilia)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Română" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Rusă" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovacă" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovacă" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Spaniolă" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Suedeză" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Thailandeză" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turcă" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ucraineană" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Sârbă" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ucraineană" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnameză" @@ -253,7 +333,7 @@ msgstr "traduceți" msgid "Translate text from a language to another" msgstr "Traduceți text dintr-o limbă în alta" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Text tradus" @@ -308,210 +388,215 @@ msgstr "" " * `html` - HTML markup\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Numărul preferat de traduceri alternative" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "Cheia API" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Traduceți fișierul dintr-o limbă în alta" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Fișier tradus" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Fișier de tradus" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Detectarea limbii unui singur text" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Detecții" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Eroare de detectare" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Text de detectat" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Preluarea setărilor specifice frontend-ului" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "setări frontend" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "partea din față" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Trimiteți o sugestie pentru a îmbunătăți o traducere" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Succes" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Nu este autorizat" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Textul original" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Traducere sugerată" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Limba în care a fost redactat textul original" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Limba de traducere propusă" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "feedback" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Cod de limbă" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Denumirea limbii lizibile de către om (în limba engleză)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Coduri de limbă țintă acceptate" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Text(e) tradus" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Mesaj de eroare" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Motivul încetinirii" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "Traducere fișier url" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Valoarea de încredere" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "" "Limita de introducere a caracterelor pentru această limbă (-1 indică faptul " "că nu există limită)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Timeout de traducere frontală" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Dacă este activată baza de date cu chei API." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Dacă este necesară o cheie API." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Dacă este activată trimiterea de sugestii." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Formatul fișierelor acceptate" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Dacă depunerea a avut succes" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:275 -#: libretranslate/templates/app.js.template:279 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Copiați textul" -#: libretranslate/templates/app.js.template:72 -#: libretranslate/templates/app.js.template:78 -#: libretranslate/templates/app.js.template:83 -#: libretranslate/templates/app.js.template:262 -#: libretranslate/templates/app.js.template:332 -#: libretranslate/templates/app.js.template:402 -#: libretranslate/templates/app.js.template:447 +#: libretranslate/templates/app.js.template:80 +#: libretranslate/templates/app.js.template:86 +#: libretranslate/templates/app.js.template:91 +#: libretranslate/templates/app.js.template: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 "Nu se poate încărca %(url)s" -#: libretranslate/templates/app.js.template:253 -#: libretranslate/templates/app.js.template:323 -#: libretranslate/templates/app.js.template:385 -#: libretranslate/templates/app.js.template:395 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Eroare necunoscută" -#: libretranslate/templates/app.js.template:276 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Copiat" -#: 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." +"Thanks for your correction. Note the suggestion will not take effect right " +"away." msgstr "" "Vă mulțumim pentru corecție. Rețineți că sugestia nu va avea efect imediat." -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Nu există limbi disponibile. Ați instalat corect modelele?" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "" "Introduceți cheia API. Dacă aveți nevoie de o cheie API, %(instructions)s" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "apăsați linkul \"Get API Key\"." -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "contactați operatorul serverului." -#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25 -#: libretranslate/templates/index.html:333 +#: libretranslate/templates/index.html:9 +#: libretranslate/templates/index.html:27 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" msgstr "Gratuit și Open Source Machine Translation API" #: libretranslate/templates/index.html:10 -#: libretranslate/templates/index.html:29 +#: libretranslate/templates/index.html:31 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline " +"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 traducere automată gratuită și cu sursă deschisă. Self-hosted, " -"capabil de offline și ușor de configurat. Rulați propriul server API în doar " -"câteva minute." +"API de traducere automată gratuită și cu sursă deschisă. Free to download, " +"capabil de offline și ușor de configurat. Rulați propriul server API în doar" +" câteva minute." #: libretranslate/templates/index.html:11 msgid "translation" @@ -521,148 +606,165 @@ msgstr "traducere" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API Docs" -#: libretranslate/templates/index.html:66 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Obțineți cheia API" -#: libretranslate/templates/index.html:68 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:70 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "Setați cheia API" -#: libretranslate/templates/index.html:72 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Schimbați limba" -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Editați" -#: libretranslate/templates/index.html:154 +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "Comută modul întuneric/lumină" + +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Respingeți" -#: libretranslate/templates/index.html:168 +#: libretranslate/templates/index.html:177 +msgid "" +"Due to bot abuse, translation requests are temporarily limited to users with" +" a valid API key. Sorry for the inconvenience!" +msgstr "" +"Datorită abuzului de bot, cererile de traducere sunt limitate temporar la " +"utilizatorii cu o cheie API valabilă. Scuze pentru deranj!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "API de traducere" -#: libretranslate/templates/index.html:172 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Traduceți textul" -#: libretranslate/templates/index.html:176 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Traducere fișiere" -#: libretranslate/templates/index.html:182 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Traducere din" -#: libretranslate/templates/index.html:192 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Schimbați limbile sursă și țintă" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Traduceți în" -#: libretranslate/templates/index.html:207 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Text de tradus" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Ștergeți textul" -#: libretranslate/templates/index.html:223 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Sugerați o traducere" -#: libretranslate/templates/index.html:227 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Anulează" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Trimiteți" -#: libretranslate/templates/index.html:246 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Formate de fișiere acceptate:" -#: libretranslate/templates/index.html:250 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Fișier" -#: libretranslate/templates/index.html:265 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Eliminați fișierul" -#: libretranslate/templates/index.html:272 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Traducere" -#: libretranslate/templates/index.html:273 -#: libretranslate/templates/index.html:317 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Descărcați" -#: libretranslate/templates/index.html:292 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Cerere" -#: libretranslate/templates/index.html:297 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Răspuns" -#: libretranslate/templates/index.html:312 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "Open Source Machine Translation API" -#: libretranslate/templates/index.html:313 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Self-Hosted. Capabil offline. Ușor de instalat." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Free to download. Capabil offline. Ușor de instalat." -#: 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 "Licență:" -#: libretranslate/templates/index.html:337 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. " -"If you're going to run an application in production, please " -"%(host_server)s or %(get_api_key)s." -msgstr "" -"Această API publică ar trebui să fie utilizată pentru testare, pentru uz " -"personal sau pentru utilizări rare. Dacă aveți de gând să rulați o aplicație " -"în producție, vă rugăm să folosiți %(host_server)s sau %(get_api_key)s." - -#: libretranslate/templates/index.html:337 -msgid "host your own server" -msgstr "găzduiți propriul server" - -#: libretranslate/templates/index.html:337 -msgid "get an API key" -msgstr "obțineți o cheie API" - -#: libretranslate/templates/index.html:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" msgstr "Realizat cu %(heart)s de %(contributors)s și propulsat de %(engine)s" -#: libretranslate/templates/index.html:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Colaboratori" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnameză" + +#~ msgid "" +#~ "This public API should be used for testing, personal or infrequent use. If " +#~ "you're going to run an application in production, please %(host_server)s or " +#~ "%(get_api_key)s." +#~ msgstr "" +#~ "Această API publică ar trebui să fie utilizată pentru testare, pentru uz " +#~ "personal sau pentru utilizări rare. Dacă aveți de gând să rulați o aplicație" +#~ " în producție, vă rugăm să folosiți %(host_server)s sau %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "găzduiți propriul server" + +#~ msgid "get an API key" +#~ msgstr "obțineți o cheie API" + +#~ msgid "Basque" +#~ msgstr "Basc" + +#~ msgid "Galician" +#~ msgstr "Galiciană" diff --git a/libretranslate/locales/ro/meta.json b/libretranslate/locales/ro/meta.json new file mode 100644 index 0000000..c0dd6d6 --- /dev/null +++ b/libretranslate/locales/ro/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Romanian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/ru/LC_MESSAGES/messages.po b/libretranslate/locales/ru/LC_MESSAGES/messages.po index 7386318..3c21316 100644 --- a/libretranslate/locales/ru/LC_MESSAGES/messages.po +++ b/libretranslate/locales/ru/LC_MESSAGES/messages.po @@ -8,108 +8,124 @@ 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-05 11:54+0000\n" -"Last-Translator: Blueberry \n" -"Language-Team: Russian \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-08 05:34+0000\n" +"Last-Translator: 439JBYL80IGQTF25UXNR0X1BG " +"<439JBYL80IGQTF25UXNR0X1BG@users.noreply.hosted.weblate.org>\n" +"Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Weblate 5.12-dev\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 "автоопределённого языка" +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 "Слишком много ограничений по запросу" +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»" -#: 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)" -#: 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 (%(tcode)s) не доступен как целевой язык от %(sname)s (%(scode)s)" +"%(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 "Предложения отключены на этом сервере." @@ -118,124 +134,196 @@ msgid "English" msgstr "английский" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "албанский" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "арабский" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "азербайджанский" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "бенгальский" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "болгарский" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "каталонский" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "китайский" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "китайский (традиционный)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "чешский" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "датский" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "голландский" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "эсперанто" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "эстонский" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "финский" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "французский" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "немецкий" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "греческий" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "иврит" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "хинди" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "венгерский" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "индонезийский" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "ирландский" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "итальянский" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "японский" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "корейский" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "латвийский" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "литовский" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "малайский" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "норвежский" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "персидский" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "польский" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "португальский" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "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 "вьетнамский" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "Перевести текст с одного языка на другой" +msgstr "Получение списка поддерживаемых языков" #: libretranslate/locales/.swag.py:2 msgid "List of languages" @@ -249,7 +337,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 "Перевод текста" @@ -271,7 +359,7 @@ msgstr "При блокировке" #: libretranslate/locales/.swag.py:10 msgid "Hello world!" -msgstr "Привет мир!" +msgstr "Привет, мир!" #: libretranslate/locales/.swag.py:11 msgid "Text(s) to translate" @@ -304,209 +392,213 @@ msgstr "" " * `html` - HTML-разметка\n" #: libretranslate/locales/.swag.py:17 -msgid "API key" -msgstr "Ключ API" +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:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "При переведённом файле" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Файл для перевода" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Обнаружение языка одного текста" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Обнаружения" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "При ошибке обнаружения" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Текст для обнаружения" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Получение конкретных настроек интерфейса (frontend)" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "При настройке интерфейса (frontend)" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "frontend" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Подать предложение для улучшения перевода" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "При отправке" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Если пользователь не авторизован" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Изначальный текст" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Предлагаемый перевод" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Язык изначального текста" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Язык предлагаемого перевода" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "обратная связь" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Языковой код" -#: libretranslate/locales/.swag.py:37 -msgid "Human-readable language name (in English)" -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:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Перевод текста" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Сообщение ошибки" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Причина замедления" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL переведённого файла" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Уровень достоверности" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Предел вводимых символов для этого языка (-1 не указывает на предел)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Превышаемое время ожидания перевода интерфейса (frontend)" -#: libretranslate/locales/.swag.py:46 -msgid "Whether the API key database is enabled." -msgstr "При включённой базе данных ключей API." - #: 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 "Whether submitting suggestions is enabled." +msgstr "При включённом предложения перевода." + +#: 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" +msgstr "Введите ваш 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 "связаться с оператором сервера." -#: 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 всего за несколько " +"минут." #: libretranslate/templates/index.html:11 msgid "translation" @@ -516,158 +608,174 @@ 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 -msgid "Get API Key" -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:71 -msgid "Set API Key" -msgstr "Установить ключ API" - #: 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 "Toggle темно-легкий режим" +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 "Файл" -#: 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 "" -"Самостоятельный хостинг. Возможность работы в автономном режиме. Легко " +"Бесплатно скачать. Возможность работы в автономном режиме. Легко " "настраивается." -#: 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" +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" #~ 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 "галисийский" diff --git a/libretranslate/locales/si/LC_MESSAGES/messages.po b/libretranslate/locales/si/LC_MESSAGES/messages.po index 231e4cb..a09840d 100644 --- a/libretranslate/locales/si/LC_MESSAGES/messages.po +++ b/libretranslate/locales/si/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Sinhala translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,108 +8,118 @@ 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: 2023-07-27 07:54+0000\n" -"Last-Translator: Overplant Poster \n" -"Language-Team: Sinhala \n" +"Last-Translator: Overplant Poster " +"\n" "Language: si\n" +"Language-Team: Sinhala " +"\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.0-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 "" -#: 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 "" @@ -118,118 +128,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 -msgid "Chinese" -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" -msgstr "" +msgid "Chinese" +msgstr "චීන" #: libretranslate/locales/.langs.py:9 -msgid "Finnish" +msgid "Chinese (traditional)" msgstr "" #: libretranslate/locales/.langs.py:10 -msgid "French" -msgstr "ප්‍රංශ" +msgid "Czech" +msgstr "" #: libretranslate/locales/.langs.py:11 -msgid "German" -msgstr "ජර්මානු" +msgid "Danish" +msgstr "" #: libretranslate/locales/.langs.py:12 -msgid "Greek" -msgstr "ග්‍රීක" +msgid "Dutch" +msgstr "" #: libretranslate/locales/.langs.py:13 -msgid "Hebrew" +msgid "Esperanto" msgstr "" #: libretranslate/locales/.langs.py:14 -msgid "Hindi" -msgstr "හින්දි" +msgid "Estonian" +msgstr "" #: libretranslate/locales/.langs.py:15 -msgid "Hungarian" +msgid "Finnish" msgstr "" #: libretranslate/locales/.langs.py:16 -msgid "Indonesian" -msgstr "" +msgid "French" +msgstr "ප්‍රංශ" #: libretranslate/locales/.langs.py:17 -msgid "Irish" -msgstr "" +msgid "German" +msgstr "ජර්මානු" #: libretranslate/locales/.langs.py:18 -msgid "Italian" -msgstr "ඉතාලි" +msgid "Greek" +msgstr "ග්‍රීක" #: libretranslate/locales/.langs.py:19 -msgid "Japanese" -msgstr "ජපන්" +msgid "Hebrew" +msgstr "" #: libretranslate/locales/.langs.py:20 -msgid "Korean" -msgstr "කොරියානු" +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" -msgstr "රුසියානු" +msgid "Italian" +msgstr "ඉතාලි" #: libretranslate/locales/.langs.py:25 -msgid "Slovak" -msgstr "" +msgid "Japanese" +msgstr "ජපන්" #: libretranslate/locales/.langs.py:26 -msgid "Spanish" -msgstr "" +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 "" @@ -249,7 +331,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 "" @@ -301,201 +383,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 "Original text" +msgstr "" + +#: 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 "" -#: 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: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 "" @@ -507,145 +593,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 "GitHub" -#: 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 "" + diff --git a/libretranslate/locales/si/meta.json b/libretranslate/locales/si/meta.json new file mode 100644 index 0000000..72e0a93 --- /dev/null +++ b/libretranslate/locales/si/meta.json @@ -0,0 +1,4 @@ +{ + "name": "si", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/sk/LC_MESSAGES/messages.po b/libretranslate/locales/sk/LC_MESSAGES/messages.po index fb1175b..01fca1b 100644 --- a/libretranslate/locales/sk/LC_MESSAGES/messages.po +++ b/libretranslate/locales/sk/LC_MESSAGES/messages.po @@ -8,78 +8,89 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-08-10 21:59+0000\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-11-05 12:00+0000\n" "Last-Translator: Milan Šalka \n" "Language-Team: Slovak \n" "Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" msgstr "Neplatný formát 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 "Auto Detect" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Neoprávnené" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Príliš veľa porušení limitov žiadostí" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Neplatný API kľúč" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Prosím, kontaktujte operátora servera, aby ste dostali kľúč API" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Návšteva %(url)s získať API kľúč" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Spomaľovanie:" -#: libretranslate/app.py:525 libretranslate/app.py:527 -#: libretranslate/app.py:529 libretranslate/app.py:741 -#: libretranslate/app.py:743 libretranslate/app.py:745 -#: libretranslate/app.py:896 libretranslate/app.py:1053 -#: libretranslate/app.py:1055 libretranslate/app.py:1057 -#: libretranslate/app.py:1059 +#: libretranslate/app.py: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 "Neplatná požiadavka: chýba %(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 "Neplatná požiadavka: %(name)s parameter nie je číslo" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Neplatná požiadavka: %(name)s parameter musí byť <= %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" "Neplatná požiadavka: žiadosť (%(size)s) presahuje limit textu (%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 +#: libretranslate/app.py: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 nie je podporovaný" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s formát nie je podporovaný" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py:735 libretranslate/app.py:763 #, python-format msgid "" "%(tname)s (%(tcode)s) is not available as a target language from %(sname)s " @@ -88,28 +99,28 @@ msgstr "" "%(tname)s ()%(tcode)s) nie je k dispozícii ako cieľový jazyk od %(sname)s " "()%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Nemožno preložiť text: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." msgstr "Preklady sú zakázané na tomto serveri." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Neplatná požiadavka: prázdny súbor" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Neplatná požiadavka: formát súboru nie je podporovaný" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Neplatné meno" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Návrhy sú zakázané na tomto serveri." @@ -118,118 +129,190 @@ msgid "English" msgstr "Angličtina" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albánsko" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabčina" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbaština" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengálčina" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulharšťina" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalánsky" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Čínske" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Čínština (tradičná)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Čeština" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Dánčina" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Dánština" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estónčina" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Fínština" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francúzština" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Nemčina" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Gréčtina" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebrejčina" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" -msgstr "Všeobecný" +msgstr "Hindi" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Madarčina" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonézske" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Írština" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Taliančina" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japonština" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Kórejština" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Litvinština" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litovčina" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Zuzana" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Nórština" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Perzština" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polština" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugalština" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portuguese (Brazílsko)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumunčina" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Ruština" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovenčina" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovinčina" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Španiečina" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Švédština" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Thajské" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turečtina" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukrajinčina" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Srbština" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrajinčina" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamčina" @@ -249,7 +332,7 @@ msgstr "preložiť" msgid "Translate text from a language to another" msgstr "Preložiť text z jazyka do druhého" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Preklad" @@ -304,203 +387,207 @@ msgstr "" " * `html` - HTML markup\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Preferovaný počet alternatívnych prekladov" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API kľúč" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Preložiť súbor z jedného jazyka do iného" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Preložený súbor" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Súbor na preloženie" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Detegovať jazyk jedného kusu textu" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Detekcie" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Chyba detekcie" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Text na detekciu" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Získať nastavenia špecifické pre rozhranie" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "Nastavenia rozhrania" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "frontend" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Poslať návrh na zlepšenie prekladu" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Úspech" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Chýba oprávnenie" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Pôvodný text" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Navrhnutý preklad" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Jazyk pôvodného textu" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Jazyk navrhovaného prekladu" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "spätná väzba" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Kód jazyka" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Ľudské meno jazyka (v angličtine)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Podporované cieľové jazykové kódy" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Preložený text(y)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Chybová správa" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Dôvod spomalenia" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "Url preloženého súboru" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Miera istoty" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Limit vloženia znakov pre tento jazyk (-1 označuje žiadny limit)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Časový limit prekladu rozhrania" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Či je povolená databáza API kľúčov." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Či je potrebný API kľúč." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Či je povolené posielanie návrhov." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Podporovaný formát súborov" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Či bolo podanie úspešné" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Kopírovať text" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 "Nemožno načítať %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Neznáma chyba" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Skopírované" -#: 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 "Vďaka za vašu korekciu. Všimnite si, že návrh nebude mať vplyv hneď." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "K dispozícii nie sú žiadne jazyky. Nainštalovali ste modely správne?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "Zadajte svoje API kľúč. Ak potrebujete kľúč API, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "stlačte odkaz „Get API Key“." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "kontaktujte operátora servera." #: libretranslate/templates/index.html:9 #: libretranslate/templates/index.html:27 -#: libretranslate/templates/index.html:336 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" msgstr "Zadarmo a Open Source strojový preklad 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 "" "Zadarmo a Open Source strojového prekladu API. Seba-hosted, offline schopný " "a ľahko nastaviť. Spustite svoj vlastný server API za pár minút." @@ -513,155 +600,168 @@ msgstr "preklad" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API dokumentácia" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Získať API kľúč" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "Nastaviť API kľúč" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Zmeniť jazyk" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Upraviť" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" msgstr "Toggle tmavý / svetelný režim" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Odmietnuť" -#: libretranslate/templates/index.html:171 +#: libretranslate/templates/index.html:177 +msgid "" +"Due to bot abuse, translation requests are temporarily limited to users with" +" a valid API key. Sorry for the inconvenience!" +msgstr "" +"Vzhľadom na bot zneužívanie, žiadosti o preklad sú dočasne obmedzené pre " +"užívateľov s platným API kľúčom. Ospravedlňujeme sa za nepríjemnosti!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "Prekladové API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Preložiť text" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Preložiť súbory" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Preložiť z" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Zameniť zdrojový a cieľový jazyk" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Preložiť do" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Text na preloženie" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Odstrániť text" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Navrhnúť preklad" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Zrušiť" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Odoslať" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Podporované formáty súborov:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Súbor" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Odstrániť súbor" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Preložiť" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Stiahnuť" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Žiadosť" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Odpoveď" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "Open Source strojového prekladu 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 "Samostatne. Offline Capable. Jednoduché nastavenie." -#: 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 "" -"Toto verejné API by malo byť použité pre testovanie, osobné alebo zriedkavé " -"použitie. Ak sa chystáte spustiť aplikáciu vo výrobe, prosím %(host_server)s" -" alebo %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "hostiť svoj vlastný server" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "získať API kľúč" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" msgstr "Vyrobené s %(heart)s za pomoci %(contributors)s a poháňaný %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Prispievatelia" #~ msgid "multipart/form-data" #~ msgstr "multipart/formátové údaje" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamčina" + +#~ msgid "" +#~ "This public API should be used for testing, personal or infrequent use. If " +#~ "you're going to run an application in production, please %(host_server)s or " +#~ "%(get_api_key)s." +#~ msgstr "" +#~ "Toto verejné API by malo byť použité pre testovanie, osobné alebo zriedkavé " +#~ "použitie. Ak sa chystáte spustiť aplikáciu vo výrobe, prosím %(host_server)s" +#~ " alebo %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "hostiť svoj vlastný server" + +#~ msgid "get an API key" +#~ msgstr "získať API kľúč" + +#~ msgid "Basque" +#~ msgstr "Všeobecný" + +#~ msgid "Galician" +#~ msgstr "Galský" diff --git a/libretranslate/locales/sl/LC_MESSAGES/messages.po b/libretranslate/locales/sl/LC_MESSAGES/messages.po new file mode 100644 index 0000000..438c7e7 --- /dev/null +++ b/libretranslate/locales/sl/LC_MESSAGES/messages.po @@ -0,0 +1,747 @@ +# Slovenian translations for LibreTranslate. +# Copyright (C) 2024 LibreTranslate Authors +# This file is distributed under the same license as the LibreTranslate +# project. +# FIRST AUTHOR , 2024. +# +msgid "" +msgstr "" +"Project-Id-Version: LibreTranslate 1.6.1\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-08-08 13:03-0400\n" +"Last-Translator: FULL NAME \n" +"Language-Team: sl \n" +"Language: sl\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%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" +"Generated-By: Babel 2.12.1\n" + +#: libretranslate/app.py:93 +msgid "Invalid JSON format" +msgstr "Neveljavna oblika JSON" + +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 +msgid "Auto Detect" +msgstr "Samodejno zaznaj" + +#: libretranslate/app.py:311 +msgid "Unauthorized" +msgstr "Nepooblaščen" + +#: libretranslate/app.py:329 +msgid "Too many request limits violations" +msgstr "Preveč zahtevkov omejuje kršitve" + +#: libretranslate/app.py:336 +msgid "Invalid API key" +msgstr "Neveljaven ključ API" + +#: libretranslate/app.py:371 +msgid "Please contact the server operator to get an API key" +msgstr "Prosimo kontaktirajte operaterja strežnika, da dobite API ključ" + +#: libretranslate/app.py:373 +#, python-format +msgid "Visit %(url)s to get an API key" +msgstr "Obisk %(url)s dobiti API ključ" + +#: libretranslate/app.py:420 +msgid "Slowdown:" +msgstr "Upočasni:" + +#: 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 "Neveljaven zahtevek: manjka %(name)s parameter" + +#: libretranslate/app.py:666 +#, python-format +msgid "Invalid request: %(name)s parameter is not a number" +msgstr "Neveljavna zahteva: %(name)s parameter ni številka" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "" +"Neveljavna zahteva: %(name)s Parameter mora biti pomanjkljiv %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 +#, python-format +msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" +msgstr "" +"Neveljavna zahteva: zahteva (%(size)s) presega mejo besedila (%(limit)s)" + +#: libretranslate/app.py: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 ni podprto" + +#: libretranslate/app.py:726 +#, python-format +msgid "%(format)s format is not supported" +msgstr "%(format)s oblika ni podprta" + +#: 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) ni na voljo kot ciljni jezik %(sname)s (%(scode)s)" + +#: libretranslate/app.py:787 +#, python-format +msgid "Cannot translate text: %(text)s" +msgstr "Ni moč prevesti besedila: %(text)s" + +#: libretranslate/app.py:874 libretranslate/app.py:943 +msgid "Files translation are disabled on this server." +msgstr "Prevajanje datotek je onemogočeno na tem strežniku." + +#: libretranslate/app.py:889 +msgid "Invalid request: empty file" +msgstr "Neveljavna zahteva: prazna datoteka" + +#: libretranslate/app.py:892 +msgid "Invalid request: file format not supported" +msgstr "Neveljaven zahtevek: oblika datoteke ni podprta" + +#: libretranslate/app.py:951 +msgid "Invalid filename" +msgstr "Neveljavno ime datoteke" + +#: libretranslate/app.py:1193 +msgid "Suggestions are disabled on this server." +msgstr "Predlogi so onemogočeni na tem strežniku." + +#: libretranslate/locales/.langs.py:1 +msgid "English" +msgstr "Angleščina" + +#: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "AlbanskoName" + +#: libretranslate/locales/.langs.py:3 +msgid "Arabic" +msgstr "Arabščina" + +#: libretranslate/locales/.langs.py:4 +msgid "Azerbaijani" +msgstr "Azerbajdžan" + +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengalska" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bolgarščina" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalonščina" + +#: libretranslate/locales/.langs.py:8 +msgid "Chinese" +msgstr "Kitajska" + +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Kitajska (tradicionalna)" + +#: libretranslate/locales/.langs.py:10 +msgid "Czech" +msgstr "Češka" + +#: libretranslate/locales/.langs.py:11 +msgid "Danish" +msgstr "Danski" + +#: libretranslate/locales/.langs.py:12 +msgid "Dutch" +msgstr "Nizozemska" + +#: libretranslate/locales/.langs.py:13 +msgid "Esperanto" +msgstr "Esperanto" + +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estonščina" + +#: libretranslate/locales/.langs.py:15 +msgid "Finnish" +msgstr "Finska" + +#: libretranslate/locales/.langs.py:16 +msgid "French" +msgstr "Francoski" + +#: libretranslate/locales/.langs.py:17 +msgid "German" +msgstr "Nemščina" + +#: libretranslate/locales/.langs.py:18 +msgid "Greek" +msgstr "Grščina" + +#: libretranslate/locales/.langs.py:19 +msgid "Hebrew" +msgstr "Hebrejsko" + +#: libretranslate/locales/.langs.py:20 +msgid "Hindi" +msgstr "Hindi" + +#: libretranslate/locales/.langs.py:21 +msgid "Hungarian" +msgstr "Madžarska" + +#: libretranslate/locales/.langs.py:22 +msgid "Indonesian" +msgstr "Indonezijski" + +#: libretranslate/locales/.langs.py:23 +msgid "Irish" +msgstr "Irska" + +#: libretranslate/locales/.langs.py:24 +msgid "Italian" +msgstr "Italijanska" + +#: libretranslate/locales/.langs.py:25 +msgid "Japanese" +msgstr "Japonka" + +#: libretranslate/locales/.langs.py:26 +msgid "Korean" +msgstr "Korejska" + +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Latvijščina" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litva" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malay" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norveška" + +#: libretranslate/locales/.langs.py:31 +msgid "Persian" +msgstr "Perzijščina" + +#: libretranslate/locales/.langs.py:32 +msgid "Polish" +msgstr "Poljska" + +#: libretranslate/locales/.langs.py:33 +msgid "Portuguese" +msgstr "Portugalščina" + +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugalska (Brazilija)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Romunska" + +#: libretranslate/locales/.langs.py:36 +msgid "Russian" +msgstr "Ruščina" + +#: libretranslate/locales/.langs.py:37 +msgid "Slovak" +msgstr "Slovaščina" + +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovenski" + +#: libretranslate/locales/.langs.py:39 +msgid "Spanish" +msgstr "Španščina" + +#: libretranslate/locales/.langs.py:40 +msgid "Swedish" +msgstr "Švedska" + +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Tajska" + +#: libretranslate/locales/.langs.py:43 +msgid "Turkish" +msgstr "Turška" + +#: libretranslate/locales/.langs.py:44 +msgid "Ukranian" +msgstr "Ukranian" + +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Srbska" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrajinski" + +#: libretranslate/locales/.langs.py:48 +msgid "Vietnamese" +msgstr "Vietnamec" + +#: libretranslate/locales/.swag.py:1 +msgid "Retrieve list of supported languages" +msgstr "Pridobi seznam podprtih jezikov" + +#: libretranslate/locales/.swag.py:2 +msgid "List of languages" +msgstr "Seznam jezikov" + +#: libretranslate/locales/.swag.py:3 +msgid "translate" +msgstr "prevedi" + +#: libretranslate/locales/.swag.py:4 +msgid "Translate text from a language to another" +msgstr "Prevedi besedilo iz jezika v jezik" + +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 +msgid "Translated text" +msgstr "Prevedeno besedilo" + +#: libretranslate/locales/.swag.py:6 +msgid "Invalid request" +msgstr "Neveljavna zahteva" + +#: libretranslate/locales/.swag.py:7 +msgid "Translation error" +msgstr "Napaka pri prevajanju" + +#: libretranslate/locales/.swag.py:8 +msgid "Slow down" +msgstr "Počasi" + +#: libretranslate/locales/.swag.py:9 +msgid "Banned" +msgstr "Prepovedano" + +#: libretranslate/locales/.swag.py:10 +msgid "Hello world!" +msgstr "Pozdravljen svet!" + +#: libretranslate/locales/.swag.py:11 +msgid "Text(s) to translate" +msgstr "Besedilo za prevajanje" + +#: libretranslate/locales/.swag.py:12 +msgid "Source language code" +msgstr "Koda izvornega jezika" + +#: libretranslate/locales/.swag.py:13 +msgid "Target language code" +msgstr "Oznaka ciljnega jezika" + +#: libretranslate/locales/.swag.py:14 +msgid "text" +msgstr "besedilo" + +#: libretranslate/locales/.swag.py:15 +msgid "html" +msgstr "html" + +#: libretranslate/locales/.swag.py:16 +msgid "" +"Format of source text:\n" +" * `text` - Plain text\n" +" * `html` - HTML markup\n" +msgstr "" +"Oblika izvornega besedila:\n" +"* `besedilo' - navadno besedilo\n" +"* `html' - pribitek HTML\n" + +#: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Prednostna številka alternativnih prevodov" + +#: libretranslate/locales/.swag.py:18 +msgid "API key" +msgstr "Ključ API" + +#: libretranslate/locales/.swag.py:19 +msgid "Translate file from a language to another" +msgstr "Prevedi datoteko iz jezika v drug jezik" + +#: libretranslate/locales/.swag.py:20 +msgid "Translated file" +msgstr "Prevedena datoteka" + +#: libretranslate/locales/.swag.py:21 +msgid "File to translate" +msgstr "Datoteka za prevajanje" + +#: libretranslate/locales/.swag.py:22 +msgid "Detect the language of a single text" +msgstr "Zaznaj jezik enega besedila" + +#: libretranslate/locales/.swag.py:23 +msgid "Detections" +msgstr "Odkrivanje" + +#: libretranslate/locales/.swag.py:24 +msgid "Detection error" +msgstr "Napaka pri odkrivanju" + +#: libretranslate/locales/.swag.py:25 +msgid "Text to detect" +msgstr "Besedilo za odkrivanje" + +#: libretranslate/locales/.swag.py:26 +msgid "Retrieve frontend specific settings" +msgstr "Pridobi posebne nastavitve za prednji konec" + +#: libretranslate/locales/.swag.py:27 +msgid "frontend settings" +msgstr "nastavitve prednjega okna" + +#: libretranslate/locales/.swag.py:28 +msgid "frontend" +msgstr "začelje" + +#: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "Predloži predlog za izboljšanje prevoda" + +#: libretranslate/locales/.swag.py:30 +msgid "Success" +msgstr "Uspeh" + +#: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "Ni dovoljeno" + +#: libretranslate/locales/.swag.py:32 +msgid "Original text" +msgstr "Originalno besedilo" + +#: libretranslate/locales/.swag.py:33 +msgid "Suggested translation" +msgstr "Predlagani prevod" + +#: libretranslate/locales/.swag.py:34 +msgid "Language of original text" +msgstr "Jezik izvirnega besedila" + +#: libretranslate/locales/.swag.py:35 +msgid "Language of suggested translation" +msgstr "Jezik predlaganega prevajanja" + +#: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "povratne informacije" + +#: libretranslate/locales/.swag.py:37 +msgid "Language code" +msgstr "Jezikovna koda" + +#: libretranslate/locales/.swag.py:38 +msgid "Human-readable language name (in English)" +msgstr "Ime jezika, ki ga je mogoče brati (v angleščini)" + +#: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "Podprte ciljne jezikovne kode" + +#: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "Prevedena besedila" + +#: libretranslate/locales/.swag.py:41 +msgid "Error message" +msgstr "Sporočilo o napaki" + +#: libretranslate/locales/.swag.py:42 +msgid "Reason for slow down" +msgstr "Razlog za upočasnitev" + +#: libretranslate/locales/.swag.py:43 +msgid "Translated file url" +msgstr "Prevedena datoteka url" + +#: libretranslate/locales/.swag.py:44 +msgid "Confidence value" +msgstr "Vrednost zaupanja" + +#: libretranslate/locales/.swag.py:45 +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "Omejitev vnosa znakov za ta jezik (-1 označuje brez omejitve)" + +#: libretranslate/locales/.swag.py:46 +msgid "Frontend translation timeout" +msgstr "Zakasnitev prevajanja v začetku" + +#: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "Ali je omogočena zbirka ključev API." + +#: libretranslate/locales/.swag.py:48 +msgid "Whether an API key is required." +msgstr "Ali je potreben ključ API." + +#: libretranslate/locales/.swag.py:49 +msgid "Whether submitting suggestions is enabled." +msgstr "Ali je predlog omogočen." + +#: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "Oblika podprtih datotek" + +#: libretranslate/locales/.swag.py:51 +msgid "Whether submission was successful" +msgstr "Ali je bila vloga uspešna" + +#: libretranslate/templates/app.js.template:31 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 +msgid "Copy text" +msgstr "Kopiraj besedilo" + +#: libretranslate/templates/app.js.template:80 +#: libretranslate/templates/app.js.template:86 +#: libretranslate/templates/app.js.template:91 +#: libretranslate/templates/app.js.template: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 "Ni moč naložiti %(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 "Neznana napaka" + +#: libretranslate/templates/app.js.template:295 +msgid "Copied" +msgstr "Kopirano" + +#: libretranslate/templates/app.js.template:339 +msgid "" +"Thanks for your correction. Note the suggestion will not take effect right " +"away." +msgstr "Hvala za popravek. Upoštevajte, da predlog ne bo takoj začel veljati." + +#: libretranslate/templates/app.js.template:463 +msgid "No languages available. Did you install the models correctly?" +msgstr "Jeziki niso na voljo. Ste pravilno namestili modele?" + +#: libretranslate/templates/app.js.template:536 +#, python-format +msgid "Type in your API Key. If you need an API key, %(instructions)s" +msgstr "Vtipkaj svoj API ključ. Če potrebujete API ključ, %(instructions)s" + +#: libretranslate/templates/app.js.template:536 +msgid "press the \"Get API Key\" link." +msgstr "pritisnite » Get API Key«." + +#: libretranslate/templates/app.js.template:536 +msgid "contact the server operator." +msgstr "kontaktirajte operaterja strežnika." + +#: libretranslate/templates/index.html:9 +#: libretranslate/templates/index.html:27 +#: libretranslate/templates/index.html:347 +msgid "Free and Open Source Machine Translation API" +msgstr "Brezplačno in odprtokodno strojno prevajanje API" + +#: libretranslate/templates/index.html:10 +#: libretranslate/templates/index.html:31 +msgid "" +"Free and Open Source Machine Translation API. Free to download, offline " +"capable and easy to setup. Run your own API server in just a few minutes." +msgstr "" +"Brezplačno in odprtokodno strojno prevajanje API. Samo-gostitelj, brez " +"povezave sposoben in enostaven za namestitev. Poženite svoj API strežnik v " +"samo nekaj minutah." + +#: libretranslate/templates/index.html:11 +msgid "translation" +msgstr "prevod" + +#: libretranslate/templates/index.html:11 +msgid "api" +msgstr "api" + +#: libretranslate/templates/index.html:67 +msgid "API Docs" +msgstr "API Docs" + +#: libretranslate/templates/index.html:69 +msgid "Get API Key" +msgstr "Dobi API Ključ" + +#: libretranslate/templates/index.html:71 +msgid "GitHub" +msgstr "GitHub" + +#: libretranslate/templates/index.html:73 +msgid "Set API Key" +msgstr "Nastavi API Ključ" + +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "Spremeni jezik" + +#: libretranslate/templates/index.html:81 +msgid "Edit" +msgstr "Uredi" + +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "Preklopi temen/lahek način" + +#: libretranslate/templates/index.html:159 +msgid "Dismiss" +msgstr "Prosto" + +#: libretranslate/templates/index.html:177 +msgid "" +"Due to bot abuse, translation requests are temporarily limited to users with" +" a valid API key. Sorry for the inconvenience!" +msgstr "" +"Zaradi zlorabe bota so zahteve za prevod začasno omejene na uporabnike z " +"veljavnim API ključem. Oprostite za neprijetnosti!" + +#: libretranslate/templates/index.html:182 +msgid "Translation API" +msgstr "Prevod API" + +#: libretranslate/templates/index.html:186 +msgid "Translate Text" +msgstr "Prevedi besedilo" + +#: libretranslate/templates/index.html:190 +msgid "Translate Files" +msgstr "Prevedi datoteke" + +#: libretranslate/templates/index.html:196 +msgid "Translate from" +msgstr "Prevedi iz" + +#: libretranslate/templates/index.html:206 +msgid "Swap source and target languages" +msgstr "Zamenjaj izvorne in ciljne jezike" + +#: libretranslate/templates/index.html:209 +msgid "Translate into" +msgstr "Prevedi v" + +#: libretranslate/templates/index.html:221 +msgid "Text to translate" +msgstr "Besedilo za prevajanje" + +#: libretranslate/templates/index.html:224 +msgid "Delete text" +msgstr "Zbriši besedilo" + +#: libretranslate/templates/index.html:237 +msgid "Suggest translation" +msgstr "Predlog za prevod" + +#: libretranslate/templates/index.html:241 +msgid "Cancel" +msgstr "Prekliči" + +#: libretranslate/templates/index.html:244 +msgid "Send" +msgstr "Pošlji" + +#: libretranslate/templates/index.html:260 +msgid "Supported file formats:" +msgstr "Podprti formati datotek:" + +#: libretranslate/templates/index.html:264 +msgid "File" +msgstr "Datoteka" + +#: libretranslate/templates/index.html:279 +msgid "Remove file" +msgstr "Odstrani datoteko" + +#: libretranslate/templates/index.html:286 +msgid "Translate" +msgstr "Prevedi" + +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 +msgid "Download" +msgstr "Prenesi" + +#: libretranslate/templates/index.html:306 +msgid "Request" +msgstr "Zahtevek" + +#: libretranslate/templates/index.html:311 +msgid "Response" +msgstr "Odziv" + +#: libretranslate/templates/index.html:326 +msgid "Open Source Machine Translation API" +msgstr "API za prevajanje odprtokodnega stroja" + +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Samosvoj. Nesposobna. Enostavna nastavitev." + +#: libretranslate/templates/index.html:346 +msgid "LibreTranslate" +msgstr "LibrePrevajanje" + +#: libretranslate/templates/index.html:348 +msgid "License:" +msgstr "Licenca:" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" +msgstr "Narejeno z %(heart)s z %(contributors)s in napajajo %(engine)s" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "%(libretranslate)s Contributors" +msgstr "%(libretranslate)s Prispevki" + +#~ msgid "Basque" +#~ msgstr "BaskovskoName" + +#~ msgid "Galician" +#~ msgstr "Galščina" diff --git a/libretranslate/locales/sl/meta.json b/libretranslate/locales/sl/meta.json new file mode 100644 index 0000000..9e71525 --- /dev/null +++ b/libretranslate/locales/sl/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Slovenian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/sq/LC_MESSAGES/messages.po b/libretranslate/locales/sq/LC_MESSAGES/messages.po index bcd00a9..66f9d67 100644 --- a/libretranslate/locales/sq/LC_MESSAGES/messages.po +++ b/libretranslate/locales/sq/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Albanian translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-01-06 17:52-0500\n" +"POT-Creation-Date: 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" @@ -16,278 +16,364 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:60 +#: libretranslate/app.py:93 msgid "Invalid JSON format" -msgstr "" +msgstr "Format i pavlefshëm JSON" -#: libretranslate/app.py:128 libretranslate/templates/app.js.template:427 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" -msgstr "" +msgstr "Auto" -#: libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "" +msgstr "I paautorizuar" -#: libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "" +msgstr "Tepër kërkojnë shkelje të kufizimeve" -#: libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "" +msgstr "Kyç i pavlefshëm" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "" +msgstr "Vihu në kontakt me operatorin e serverit për të marrë një kyç API" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" -msgstr "" +msgstr "Vizitim %(url)s merr a" -#: libretranslate/app.py:269 +#: libretranslate/app.py:420 msgid "Slowdown:" -msgstr "" +msgstr "Ngadalë:" -#: libretranslate/app.py:467 libretranslate/app.py:469 -#: libretranslate/app.py:471 libretranslate/app.py:683 -#: libretranslate/app.py:685 libretranslate/app.py:687 -#: libretranslate/app.py:838 libretranslate/app.py:987 -#: libretranslate/app.py:989 libretranslate/app.py:991 -#: libretranslate/app.py:993 +#: libretranslate/app.py: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 "" +msgstr "Kërkesë e pavlefshme: mungon %(name)s Parametër" -#: 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 "Kërkesë e pavlefshme: %(name)s nuk a" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "" +"Kërkesë e pavlefshme: %(name)s Parametri duhet të jetë <= %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" +"Kërkesë e pavlefshme: (%(size)s) tejkaloi kufirin e tekstit (%(limit)s)" -#: libretranslate/app.py:525 libretranslate/app.py:530 -#: libretranslate/app.py:700 libretranslate/app.py:705 +#: libretranslate/app.py: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 "" +msgstr "%(lang)s nuk suportohet" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" -msgstr "" +msgstr "%(format)s Format i pasuportuar" -#: libretranslate/app.py:544 libretranslate/app.py:568 +#: libretranslate/app.py: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) is not available as a target language from %(sname)s " +"(%(scode)s)" +msgstr "%(tname)s (%(tcode)snuk është a %(sname)s (%(scode)s)" -#: libretranslate/app.py:589 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" -msgstr "" +msgstr "I pamundur përkthimi i tekstit: %(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 "" +msgstr "File në server j." -#: libretranslate/app.py:690 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" -msgstr "" +msgstr "Kërkesë e pavlefshme: file bosh" -#: libretranslate/app.py:693 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" -msgstr "" +msgstr "Kërkesë e pavlefshme: Format i pasuportuar file" -#: libretranslate/app.py:738 +#: libretranslate/app.py:951 msgid "Invalid filename" -msgstr "" +msgstr "Emri" -#: libretranslate/app.py:979 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." -msgstr "" +msgstr "Propozimet në këtë server janë të çaktivizuar." #: libretranslate/locales/.langs.py:1 msgid "English" -msgstr "" +msgstr "Anglisht" #: libretranslate/locales/.langs.py:2 -msgid "Arabic" -msgstr "" +msgid "Albanian" +msgstr "Shqip" #: libretranslate/locales/.langs.py:3 -msgid "Azerbaijani" -msgstr "" +msgid "Arabic" +msgstr "Arabisht" #: libretranslate/locales/.langs.py:4 -msgid "Chinese" -msgstr "" +msgid "Azerbaijani" +msgstr "Azerbaixhani" #: libretranslate/locales/.langs.py:5 -msgid "Czech" -msgstr "" +msgid "Bengali" +msgstr "Bengali" #: libretranslate/locales/.langs.py:6 -msgid "Danish" -msgstr "" +msgid "Bulgarian" +msgstr "Bullgarisht" #: libretranslate/locales/.langs.py:7 -msgid "Dutch" -msgstr "" +msgid "Catalan" +msgstr "Katalane" #: libretranslate/locales/.langs.py:8 -msgid "Esperanto" -msgstr "" +msgid "Chinese" +msgstr "Kineze" #: libretranslate/locales/.langs.py:9 -msgid "Finnish" -msgstr "" +msgid "Chinese (traditional)" +msgstr "Kineze" #: libretranslate/locales/.langs.py:10 -msgid "French" -msgstr "" +msgid "Czech" +msgstr "Çekisht" #: libretranslate/locales/.langs.py:11 -msgid "German" -msgstr "" +msgid "Danish" +msgstr "Danisht" #: libretranslate/locales/.langs.py:12 -msgid "Greek" -msgstr "" +msgid "Dutch" +msgstr "Hollandeze" #: libretranslate/locales/.langs.py:13 -msgid "Hebrew" -msgstr "" +msgid "Esperanto" +msgstr "Esperanto" #: libretranslate/locales/.langs.py:14 -msgid "Hindi" -msgstr "" +msgid "Estonian" +msgstr "Estonisht" #: libretranslate/locales/.langs.py:15 -msgid "Hungarian" -msgstr "" +msgid "Finnish" +msgstr "Finlandeze" #: libretranslate/locales/.langs.py:16 -msgid "Indonesian" -msgstr "" +msgid "French" +msgstr "Frengjisht" #: libretranslate/locales/.langs.py:17 -msgid "Irish" -msgstr "" +msgid "German" +msgstr "Gjermanisht" #: libretranslate/locales/.langs.py:18 -msgid "Italian" -msgstr "" +msgid "Greek" +msgstr "Greqisht" #: libretranslate/locales/.langs.py:19 -msgid "Japanese" -msgstr "" +msgid "Hebrew" +msgstr "Hebraike" #: libretranslate/locales/.langs.py:20 -msgid "Korean" -msgstr "" +msgid "Hindi" +msgstr "Hindi" #: libretranslate/locales/.langs.py:21 -msgid "Persian" -msgstr "" +msgid "Hungarian" +msgstr "Hungarisht" #: libretranslate/locales/.langs.py:22 -msgid "Polish" -msgstr "" +msgid "Indonesian" +msgstr "Indoneziane" #: libretranslate/locales/.langs.py:23 -msgid "Portuguese" -msgstr "" +msgid "Irish" +msgstr "Irlandeze" #: libretranslate/locales/.langs.py:24 -msgid "Russian" -msgstr "" +msgid "Italian" +msgstr "Italisht" #: libretranslate/locales/.langs.py:25 -msgid "Slovak" -msgstr "" +msgid "Japanese" +msgstr "Japonisht" #: libretranslate/locales/.langs.py:26 -msgid "Spanish" -msgstr "" +msgid "Korean" +msgstr "Koreane" #: libretranslate/locales/.langs.py:27 -msgid "Swedish" -msgstr "" +msgid "Latvian" +msgstr "Letonisht" #: libretranslate/locales/.langs.py:28 -msgid "Turkish" -msgstr "" +msgid "Lithuanian" +msgstr "Lituaniane" #: libretranslate/locales/.langs.py:29 -msgid "Ukranian" -msgstr "" +msgid "Malay" +msgstr "Malay" #: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norvegjeze" + +#: libretranslate/locales/.langs.py:31 +msgid "Persian" +msgstr "Persiane" + +#: libretranslate/locales/.langs.py:32 +msgid "Polish" +msgstr "Polonisht" + +#: libretranslate/locales/.langs.py:33 +msgid "Portuguese" +msgstr "Portugalisht" + +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugeze (Brazil)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumanisht" + +#: libretranslate/locales/.langs.py:36 +msgid "Russian" +msgstr "Rusisht" + +#: libretranslate/locales/.langs.py:37 +msgid "Slovak" +msgstr "Sllovak" + +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Sllovene" + +#: libretranslate/locales/.langs.py:39 +msgid "Spanish" +msgstr "Spanjisht" + +#: libretranslate/locales/.langs.py:40 +msgid "Swedish" +msgstr "Suedisht" + +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Tailandeze" + +#: libretranslate/locales/.langs.py:43 +msgid "Turkish" +msgstr "Turqisht" + +#: libretranslate/locales/.langs.py:44 +msgid "Ukranian" +msgstr "Ukraneze" + +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Serbe" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "UkrahinaseHebrew, Visual" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" -msgstr "" +msgstr "Vietnameze" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "" +msgstr "Duke marrë listën e gjuhëve të suportuara" #: libretranslate/locales/.swag.py:2 msgid "List of languages" -msgstr "" +msgstr "Lista e gjuhëve" #: libretranslate/locales/.swag.py:3 msgid "translate" -msgstr "" +msgstr "për" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "" +msgstr "Përkthe tekstin nga një gjuhë në një tjetër" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" -msgstr "" +msgstr "Teksti i përkthyer" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" -msgstr "" +msgstr "Kërkesë e pavlefshme" #: libretranslate/locales/.swag.py:7 msgid "Translation error" -msgstr "" +msgstr "Gabim në përkthimin" #: libretranslate/locales/.swag.py:8 msgid "Slow down" -msgstr "" +msgstr "Ngadalë" #: libretranslate/locales/.swag.py:9 msgid "Banned" -msgstr "" +msgstr "Ndaluar" #: libretranslate/locales/.swag.py:10 msgid "Hello world!" -msgstr "" +msgstr "Përshëndetje botë!" #: libretranslate/locales/.swag.py:11 msgid "Text(s) to translate" -msgstr "" +msgstr "Teksti" #: libretranslate/locales/.swag.py:12 msgid "Source language code" -msgstr "" +msgstr "Kodi i gjuhës së buruesit" #: libretranslate/locales/.swag.py:13 msgid "Target language code" -msgstr "" +msgstr "Objektivi kodi" #: libretranslate/locales/.swag.py:14 msgid "text" -msgstr "" +msgstr "tekst" #: libretranslate/locales/.swag.py:15 msgid "html" -msgstr "" +msgstr "html" #: libretranslate/locales/.swag.py:16 msgid "" @@ -295,353 +381,384 @@ msgid "" " * `text` - Plain text\n" " * `html` - HTML markup\n" msgstr "" +"Formati i tekstit burim:\n" +"* tekst i thjeshtë\n" +"* Hhtml-Spanj HTML\n" #: libretranslate/locales/.swag.py:17 -msgid "API key" -msgstr "" +msgid "Preferred number of alternative translations" +msgstr "Numri i preferuar i përkthimeve alternative" #: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "" +msgid "API key" +msgstr "Pulsanti API" #: libretranslate/locales/.swag.py:19 -msgid "Translated file" -msgstr "" +msgid "Translate file from a language to another" +msgstr "Përkthe skedarët nga një gjuhë tek tjetra" #: libretranslate/locales/.swag.py:20 -msgid "File to translate" -msgstr "" +msgid "Translated file" +msgstr "Përkther file" #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "" +msgid "File to translate" +msgstr "File nga" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "" +msgid "Detect the language of a single text" +msgstr "Dekto gjuhën e një teksti të vetëm" #: libretranslate/locales/.swag.py:23 -msgid "Detection error" -msgstr "" +msgid "Detections" +msgstr "Deteksione" #: libretranslate/locales/.swag.py:24 -msgid "Text to detect" -msgstr "" +msgid "Detection error" +msgstr "Gabim në shmangje" #: libretranslate/locales/.swag.py:25 -msgid "Retrieve frontend specific settings" -msgstr "" +msgid "Text to detect" +msgstr "Teksti që duhet zbuluar" #: libretranslate/locales/.swag.py:26 -msgid "frontend settings" -msgstr "" +msgid "Retrieve frontend specific settings" +msgstr "Duke marrë rregullimet e prezgjedhura" #: libretranslate/locales/.swag.py:27 -msgid "frontend" -msgstr "" +msgid "frontend settings" +msgstr "parametrat" #: libretranslate/locales/.swag.py:28 -msgid "Submit a suggestion to improve a translation" -msgstr "" +msgid "frontend" +msgstr "frontend" #: libretranslate/locales/.swag.py:29 -msgid "Success" -msgstr "" +msgid "Submit a suggestion to improve a translation" +msgstr "A" #: libretranslate/locales/.swag.py:30 -msgid "Not authorized" -msgstr "" +msgid "Success" +msgstr "Me sukses" #: libretranslate/locales/.swag.py:31 -msgid "Original text" -msgstr "" +msgid "Not authorized" +msgstr "Nuk është i autorizuar" #: libretranslate/locales/.swag.py:32 -msgid "Suggested translation" -msgstr "" +msgid "Original text" +msgstr "Tekst origjinal" #: libretranslate/locales/.swag.py:33 -msgid "Language of original text" -msgstr "" +msgid "Suggested translation" +msgstr "Sugjerim për përkthimin" #: libretranslate/locales/.swag.py:34 -msgid "Language of suggested translation" -msgstr "" +msgid "Language of original text" +msgstr "Gjuha e tekstit origjinal" #: libretranslate/locales/.swag.py:35 -msgid "feedback" -msgstr "" +msgid "Language of suggested translation" +msgstr "Gjuha e përkthimit të sugjeruar" #: libretranslate/locales/.swag.py:36 -msgid "Language code" -msgstr "" +msgid "feedback" +msgstr "release" #: libretranslate/locales/.swag.py:37 -msgid "Human-readable language name (in English)" -msgstr "" +msgid "Language code" +msgstr "Kodi i gjuhës" #: libretranslate/locales/.swag.py:38 -msgid "Supported target language codes" -msgstr "" +msgid "Human-readable language name (in English)" +msgstr "Emri i gjuhës së lexueshme (në anglisht)" #: libretranslate/locales/.swag.py:39 -msgid "Translated text(s)" -msgstr "" +msgid "Supported target language codes" +msgstr "Kodi i gjuhës së synuar" #: libretranslate/locales/.swag.py:40 -msgid "Error message" -msgstr "" +msgid "Translated text(s)" +msgstr "Përkthehet teksti" #: libretranslate/locales/.swag.py:41 -msgid "Reason for slow down" -msgstr "" +msgid "Error message" +msgstr "Gabim" #: libretranslate/locales/.swag.py:42 -msgid "Translated file url" -msgstr "" +msgid "Reason for slow down" +msgstr "Arsye për të ngadalësuar" #: libretranslate/locales/.swag.py:43 -msgid "Confidence value" -msgstr "" +msgid "Translated file url" +msgstr "Përktheu file url" #: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "" +msgid "Confidence value" +msgstr "Vlera e besimit" #: libretranslate/locales/.swag.py:45 -msgid "Frontend translation timeout" -msgstr "" +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "Për nuk" #: libretranslate/locales/.swag.py:46 -msgid "Whether the API key database is enabled." -msgstr "" +msgid "Frontend translation timeout" +msgstr "Ndërfaqe" #: libretranslate/locales/.swag.py:47 -msgid "Whether an API key is required." -msgstr "" +msgid "Whether the API key database is enabled." +msgstr "Tregon nëse është aktivizuar databaza e kyçit API." #: libretranslate/locales/.swag.py:48 -msgid "Whether submitting suggestions is enabled." -msgstr "" +msgid "Whether an API key is required." +msgstr "Nëse nevoitet një kyç API." #: libretranslate/locales/.swag.py:49 -msgid "Supported files format" -msgstr "" +msgid "Whether submitting suggestions is enabled." +msgstr "Nëse është aktivuar paraqitja e sugjerimeve." #: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "Format i suportuar files" + +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" -msgstr "" +msgstr "Nëse nënshtrimi ishte i suksesshëm" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:275 -#: libretranslate/templates/app.js.template:279 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" -msgstr "" +msgstr "Kopjo tekstin" -#: libretranslate/templates/app.js.template:72 -#: libretranslate/templates/app.js.template:78 -#: libretranslate/templates/app.js.template:83 -#: libretranslate/templates/app.js.template:262 -#: libretranslate/templates/app.js.template:332 -#: libretranslate/templates/app.js.template:402 -#: libretranslate/templates/app.js.template:447 +#: libretranslate/templates/app.js.template:80 +#: libretranslate/templates/app.js.template:86 +#: libretranslate/templates/app.js.template:91 +#: libretranslate/templates/app.js.template: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 "" +msgstr "I pamundur ngarkimi %(url)s" -#: libretranslate/templates/app.js.template:253 -#: libretranslate/templates/app.js.template:323 -#: libretranslate/templates/app.js.template:385 -#: libretranslate/templates/app.js.template:395 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" -msgstr "" +msgstr "Gabim i panjohur" -#: libretranslate/templates/app.js.template:276 +#: libretranslate/templates/app.js.template:295 msgid "Copied" -msgstr "" +msgstr "Kopjuar" -#: 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." +"Thanks for your correction. Note the suggestion will not take effect right " +"away." msgstr "" +"Faleminderit për korrigjimin. Vër re se sugjerimi nuk do të ndikojë " +"menjëherë." -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" -msgstr "" +msgstr "Asnjë gjuhë në dispozicion. I instalove mirë modelet?" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "" +"Lloji në çelësin tuaj API. Nëse ju duhet një çelës API, %(instructions)s" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." -msgstr "" +msgstr "shtyp lidhjen \"Merr API.\"." -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." -msgstr "" +msgstr "kontaktoni operatorin e serverit." -#: libretranslate/templates/index.html:8 libretranslate/templates/index.html:25 -#: libretranslate/templates/index.html:333 +#: libretranslate/templates/index.html:9 +#: libretranslate/templates/index.html:27 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" -msgstr "" +msgstr "Translation falas dhe i hapur i makinave" #: libretranslate/templates/index.html:10 -#: libretranslate/templates/index.html:29 +#: libretranslate/templates/index.html:31 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline " +"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 "" +"Translation i Makinave Free dhe Open. Vetë-pritur, jashtë linje i aftë dhe i" +" lehtë për t'u krijuar. Zbatoni serverin tuaj API për pak minuta." #: libretranslate/templates/index.html:11 msgid "translation" -msgstr "" +msgstr "përkthimi" #: libretranslate/templates/index.html:11 msgid "api" -msgstr "" +msgstr "api" -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" -msgstr "" +msgstr "API Docs" -#: libretranslate/templates/index.html:66 +#: libretranslate/templates/index.html:69 msgid "Get API Key" -msgstr "" +msgstr "Merr API Kenia" -#: libretranslate/templates/index.html:68 +#: libretranslate/templates/index.html:71 msgid "GitHub" -msgstr "" +msgstr "GitHub" -#: libretranslate/templates/index.html:70 +#: libretranslate/templates/index.html:73 msgid "Set API Key" -msgstr "" +msgstr "Vendose Kenia" -#: libretranslate/templates/index.html:72 +#: libretranslate/templates/index.html:75 msgid "Change language" -msgstr "" +msgstr "Ndrysho gjuhën" -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" -msgstr "" +msgstr "Ndrysho" -#: libretranslate/templates/index.html:154 +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "Kavo" + +#: libretranslate/templates/index.html:159 msgid "Dismiss" -msgstr "" +msgstr "Të këqijat" -#: libretranslate/templates/index.html:168 -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 "" +"Për shkak të abuzimit me robotët, kërkesat e përkthimit janë përkohësisht të" +" kufizuara për përdoruesit me një çelës të vlefshëm aPI. Më fal për " +"shqetësimin!" #: libretranslate/templates/index.html:182 +msgid "Translation API" +msgstr "Përkthimi" + +#: libretranslate/templates/index.html:186 +msgid "Translate Text" +msgstr "Përkthe tekstin" + +#: libretranslate/templates/index.html:190 +msgid "Translate Files" +msgstr "Përkthe files" + +#: libretranslate/templates/index.html:196 msgid "Translate from" -msgstr "" +msgstr "Përkthe nga" -#: libretranslate/templates/index.html:192 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" -msgstr "" +msgstr "Dhe" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:209 msgid "Translate into" -msgstr "" +msgstr "Përkthe në" -#: libretranslate/templates/index.html:207 +#: libretranslate/templates/index.html:221 msgid "Text to translate" -msgstr "" +msgstr "Teksti që duhet përkthyer" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:224 msgid "Delete text" -msgstr "" +msgstr "Fshi tekstin" -#: libretranslate/templates/index.html:223 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" -msgstr "" +msgstr "Sugjerim për përkthimin" -#: libretranslate/templates/index.html:227 +#: libretranslate/templates/index.html:241 msgid "Cancel" -msgstr "" +msgstr "Anullo" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:244 msgid "Send" -msgstr "" +msgstr "Dërgo" -#: libretranslate/templates/index.html:246 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" -msgstr "" +msgstr "Formatet e suportuar të file:" -#: libretranslate/templates/index.html:250 +#: libretranslate/templates/index.html:264 msgid "File" -msgstr "" +msgstr "File" -#: libretranslate/templates/index.html:265 +#: libretranslate/templates/index.html:279 msgid "Remove file" -msgstr "" +msgstr "Hiq file" -#: libretranslate/templates/index.html:272 +#: libretranslate/templates/index.html:286 msgid "Translate" -msgstr "" +msgstr "Përkthe" -#: libretranslate/templates/index.html:273 -#: libretranslate/templates/index.html:317 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" -msgstr "" +msgstr "Shkarkimi" -#: libretranslate/templates/index.html:292 +#: libretranslate/templates/index.html:306 msgid "Request" -msgstr "" +msgstr "Kërkesë" -#: libretranslate/templates/index.html:297 +#: libretranslate/templates/index.html:311 msgid "Response" -msgstr "" +msgstr "Përgjigje" -#: libretranslate/templates/index.html:312 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "" +msgstr "Përkthimi i Makinës Burimit" -#: libretranslate/templates/index.html:313 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "" +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "E vetmuar. Jashtë Kapit. E lehtë për t'u rregulluar." -#: libretranslate/templates/index.html:332 +#: libretranslate/templates/index.html:346 msgid "LibreTranslate" -msgstr "" +msgstr "Libre Translate" -#: libretranslate/templates/index.html:334 +#: libretranslate/templates/index.html:348 msgid "License:" -msgstr "" +msgstr "Liçenca:" -#: 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 "" +msgstr "E bërë me %(heart)s nga %(contributors)s Dhe fuqizuar nga %(engine)s" -#: libretranslate/templates/index.html:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" -msgstr "" +msgstr "%(libretranslate)s Ndihmuan" + +#~ msgid "Vietnamese" +#~ msgstr "" + +#~ msgid "" +#~ "This public API should be used for testing, personal or infrequent use. If " +#~ "you're going to run an application in production, please %(host_server)s or " +#~ "%(get_api_key)s." +#~ msgstr "" + +#~ msgid "host your own server" +#~ msgstr "" + +#~ msgid "get an API key" +#~ msgstr "" + +#~ msgid "Basque" +#~ msgstr "Baske" + +#~ msgid "Galician" +#~ msgstr "Galiciani" diff --git a/libretranslate/locales/sq/meta.json b/libretranslate/locales/sq/meta.json new file mode 100644 index 0000000..b3cfa9f --- /dev/null +++ b/libretranslate/locales/sq/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Albanian", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/sr/LC_MESSAGES/messages.po b/libretranslate/locales/sr/LC_MESSAGES/messages.po index 6705afc..245394d 100644 --- a/libretranslate/locales/sr/LC_MESSAGES/messages.po +++ b/libretranslate/locales/sr/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Serbian translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,110 +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-22 19:41+0000\n" -"Last-Translator: zerof \n" -"Language-Team: Serbian \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-01-15 11:58+0000\n" +"Last-Translator: Lav Rottweiler \n" "Language: sr\n" +"Language-Team: Serbian " +"\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.18.1\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 "Nevažeći 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 "Auto Detekcija" -#: libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Neovlašćeno" -#: libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Previše zahteva i kršenja ograničenja" -#: libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Nevažeći API ključ" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Kontaktirajte operatera servera da dobijete API ključ" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" -msgstr "Posetite %(url)s da bi ste dobili API lljuč" +msgstr "Posetite %(url)s da bi ste dobili API ključ" -#: libretranslate/app.py:269 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Uspori:" -#: 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 "Nevažeći zahtev: nedostaje parametar %(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 "Nevažeći zahtev: parametar %(name)s nije broj" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Nevažeći zahtev: parametar %(name)s mora biti <= %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" -"Nevažeći zahtev: zahtev (%(size)s) premašuje ograničenje teksta (%(limit)s)" +"Nevažeći zahtev: zahtev (%(size)s) premašuje ograničenje teksta " +"(%(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 nije podržan" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s format nije podržan" -#: 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 "" -"%(tname)s (%(tcode)s) nije dostupan kao ciljni jezik is %(sname)s (%(scode)s)" +"%(tname)s (%(tcode)s) nije dostupan kao ciljni jezik is %(sname)s " +"(%(scode)s)" -#: libretranslate/app.py:589 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Nije moguće prevesti tekst:%(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 "Prevođenje fajlova je onemogućeno na ovom serveru." -#: libretranslate/app.py:690 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Nevažeći zahtev: prazan fajl" -#: libretranslate/app.py:693 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Nevažeći zahtev: format fajla nije podržan" -#: libretranslate/app.py:738 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Nepostojeće ime fajla" -#: libretranslate/app.py:979 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Predlozi su onemogućeni na ovom serveru." @@ -120,118 +132,190 @@ msgid "English" msgstr "Engleski" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albanski" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arapski" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbejdžanski" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengalski" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bugarski" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalonski" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Kineski" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Kineski (tradicionalni)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Češki" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Danski" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Holandski" -#: 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 "Estonski" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Finski" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Francuski" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Nemački" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grčki" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebrejski" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Indijski" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Mađarski" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonežanski" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irski" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italijanski" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japanski" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Korejski" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Latvijski" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litvanski" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malezijski" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norveški" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Persijski" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Poljski" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugalski" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumunski" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Ruski" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovacki" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovenački" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Španski" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Švedski" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagaloški" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Tajlandski" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turski" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukrajinski" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Srpski" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrajnski" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vijetnamski" @@ -251,7 +335,7 @@ msgstr "prevodi" msgid "Translate text from a language to another" msgstr "Prevedite tekst sa jednog jezika na drugi" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:219 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Prevedeni tekst" @@ -306,208 +390,210 @@ msgstr "" " * `html` - HTML markup\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Željeni broj alternativnih prevoda" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API ključ" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Prevedite fajl sa jednog jezika na drugi" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Prevedeni fajl" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Fajl za prevod" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Detektuj jezik u tekstu" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Detekcija" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Greška u detekciji" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Tekst za detekciju" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Preuzmi specifična podešavanja frontenda" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "podešavanja frontenda" -#: 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 "Pošaljite predlog za poboljšanje prevoda" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Uspešno" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Nije dozvoljeno" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Originalni tekst" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Predloženi prevod" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Jezik originalnog teksta" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Jezik predloženog prevoda" -#: libretranslate/locales/.swag.py:35 -msgid "feedback" -msgstr "zaključak" - #: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "povratne info" + +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Jezik koda" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Ime jezika (na engleskom)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Podržani kodovi ciljnog jezika" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Prevedeni tekst(ovi)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Poruka o grešci" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Razlog za usporavanje" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "URL prevedenog fajla" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Nivo poverenja" -#: libretranslate/locales/.swag.py:44 -msgid "Character input limit for this language (-1 indicates no limit)" -msgstr "" -"Ograničenje unosa znakova za ovaj jezik (-1 označava da nema ograničenja)" - #: libretranslate/locales/.swag.py:45 +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "Ograničenje unosa znakova za ovaj jezik (-1 označava da nema ograničenja)" + +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Vremensko ograničenje za prevod na frontendu" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Da li je omogućena baza podataka API ključeva." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Kada je potreban API ključ." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Kada je slanje predloga omogućeno." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Podržani format fajlova" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Da li je podnošenje bilo uspešno" #: 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 "Kopiraj teks" -#: 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 "Nije moguće učitati %(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 "Nepoznata greška" -#: libretranslate/templates/app.js.template:276 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Kopirano" -#: 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 "" -"Hvala na ispravci. Imajte na umu da predlog neće odmah stupiti na snagu." +msgstr "Hvala na ispravci. Imajte na umu da predlog neće odmah stupiti na snagu." -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Nema dostupnih jezika. Da li ste pravilno instalirali modele?" -#: 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 "Unesite svoj API ključ. Ako vam je potreban API ključ,%(instructions)s" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "kliknite na „Preuzmi API ključ“." -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "kontaktirajte administratora servera." -#: 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 "Besplatni API za mašinsko prevođenje otvorenog koda" #: 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 "" "Besplatni API za mašinsko prevođenje otvorenog koda. Hostovan na vašem " -"serveru, lokalna verzija i jednostavan za podešavanje. Pokrenite sopstveni " -"API server za samo nekoliko minuta." +"serveru, lokalna verzija i jednostavan za podešavanje. Pokrenite " +"sopstveni API server za samo nekoliko minuta." #: libretranslate/templates/index.html:11 msgid "translation" @@ -517,148 +603,168 @@ msgstr "prevod" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API dokumentacija" -#: libretranslate/templates/index.html:66 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Nabavite API ključ" -#: 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 "Kreiraj API ključ" -#: libretranslate/templates/index.html:72 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Promeni jezik" -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Izmeni" -#: libretranslate/templates/index.html:154 +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "tamni/svetli mod" + +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Odbaci" -#: 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 "" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "API za prevođenje" -#: libretranslate/templates/index.html:172 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Prevedi Tekst" -#: libretranslate/templates/index.html:176 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Prevedi Fajl" -#: libretranslate/templates/index.html:182 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Prevedi iz" -#: libretranslate/templates/index.html:192 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Zamenite izvorni i ciljni jezik" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Prevesti u" -#: libretranslate/templates/index.html:207 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Tekst za prevod" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Izbriši tekst" -#: libretranslate/templates/index.html:223 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Predloži prevod" -#: libretranslate/templates/index.html:227 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Otkaži" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Pošalji" -#: libretranslate/templates/index.html:246 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Podržani formati fajlova:" -#: libretranslate/templates/index.html:250 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Fajl" -#: libretranslate/templates/index.html:265 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Izbriši fajl" -#: libretranslate/templates/index.html:272 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Prevedi" -#: libretranslate/templates/index.html:273 -#: libretranslate/templates/index.html:317 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Preuzmi" -#: libretranslate/templates/index.html:292 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Zahtev" -#: libretranslate/templates/index.html:297 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Odgovor" -#: libretranslate/templates/index.html:312 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "API za prevođenje otvorenog koda" -#: libretranslate/templates/index.html:313 -msgid "Self-Hosted. Offline Capable. Easy to Setup." -msgstr "Hostujte sami. Radi i bez nternet konekcije. Laka instalacija." +#: libretranslate/templates/index.html:327 +msgid "Free to download. Offline Capable. Easy to Setup." +msgstr "Hostujte sami. Radi i bez internet konekcije. Laka instalacija." -#: libretranslate/templates/index.html:332 +#: libretranslate/templates/index.html:346 msgid "LibreTranslate" msgstr "SlobodniPrevodilac" -#: libretranslate/templates/index.html:334 +#: libretranslate/templates/index.html:348 msgid "License:" msgstr "Licenca:" -#: 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 "" -"Ovaj javni API bi trebalo da se koristi za testiranje, ličnu ili retku " -"upotrebu. Ako nameravate da pokrenete aplikaciju u produkciji, molim vas " -"%(host_server)s ili %(get_api_key)s." - -#: libretranslate/templates/index.html:337 -msgid "host your own server" -msgstr "hostujte svoj server" - -#: libretranslate/templates/index.html:337 -msgid "get an API key" -msgstr "zatraži API ključ" - -#: 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 "Napravljen sa %(heart)s, sa %(contributors)s , i pokreće ga %(engine)s" -#: libretranslate/templates/index.html:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Saradnici" + +#~ msgid "Vietnamese" +#~ msgstr "Vijetnamski" + +#~ 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 "" +#~ "Ovaj javni API bi trebalo da se" +#~ " koristi za testiranje, ličnu ili " +#~ "retku upotrebu. Ako nameravate da " +#~ "pokrenete aplikaciju u produkciji, molim " +#~ "vas %(host_server)s ili %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "hostujte svoj server" + +#~ msgid "get an API key" +#~ msgstr "zatraži API ključ" + +#~ msgid "Basque" +#~ msgstr "Baskijski" + +#~ msgid "Galician" +#~ msgstr "Galicijski" + diff --git a/libretranslate/locales/sr/meta.json b/libretranslate/locales/sr/meta.json new file mode 100644 index 0000000..e8f8cc4 --- /dev/null +++ b/libretranslate/locales/sr/meta.json @@ -0,0 +1,4 @@ +{ + "name": "sr", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/sv/LC_MESSAGES/messages.po b/libretranslate/locales/sv/LC_MESSAGES/messages.po index 19816de..6163dc2 100644 --- a/libretranslate/locales/sv/LC_MESSAGES/messages.po +++ b/libretranslate/locales/sv/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" "PO-Revision-Date: 2023-03-01 08:36+0000\n" "Last-Translator: tygyh \n" "Language-Team: Swedish \n" @@ -19,66 +19,93 @@ msgstr "" "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 "Identifiera Automatiskt" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Obehörig" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "För många förfrågningar begränsar överträdelser" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Invalid API nyckel" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Kontakta serveroperatören för att få en API-nyckel" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Besök %(url)s för att få en API-nyckel" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Nedsaktning:" -#: libretranslate/app.py:525 libretranslate/app.py:527 -#: libretranslate/app.py:529 libretranslate/app.py:741 -#: libretranslate/app.py:743 libretranslate/app.py:745 -#: libretranslate/app.py:896 libretranslate/app.py:1053 -#: libretranslate/app.py:1055 libretranslate/app.py:1057 -#: libretranslate/app.py:1059 +#: libretranslate/app.py: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 "Ogiltig begäran: parametern %(name)s saknas" -#: 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 "" +"Ogiltig begäran: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 parameter är inte ett tal %(name)s" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "" +"Ogiltig begäran: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 " +"0 parameter måste vara ≤ 1 1 %(name)s %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "Ogiltig begäran: begäran %(size)s överstiger textgränsen (%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 +#: libretranslate/app.py: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öds inte" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s-formatet stöds inte" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py:735 libretranslate/app.py:763 #, python-format msgid "" "%(tname)s (%(tcode)s) is not available as a target language from %(sname)s " @@ -87,28 +114,28 @@ msgstr "" "%(tname)s (%(tcode)s) är inte tillgängligt som målspråk från %(sname)s " "(%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Kan inte översätta text: %(text)s" -#: libretranslate/app.py:734 libretranslate/app.py:788 +#: libretranslate/app.py:874 libretranslate/app.py:943 msgid "Files translation are disabled on this server." msgstr "Filöversättning är inaktiverad på denna server." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Ogiltig begäran: tom fil" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Ogiltig begäran: filformat som inte stöds" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Invalid filnamn" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Förslag är inaktiverade på denna server." @@ -117,118 +144,190 @@ msgid "English" msgstr "Engelska" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albanska" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arabiska" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbajdzjan" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengali" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulgariska" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalanska" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Kinesiska" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Kinesiska (traditionell)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Tjeckien" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Danska" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Holländska" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estland" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Finska finska" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Franska franska" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Tyska tyska" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Grekiska" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Hebreiska" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hindi" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Ungerska" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Indonesiska" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "Irländska" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "Italienska Italien" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japansk" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Koreanska" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Lettland" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litauen" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malay" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norska" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Persiska" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Polska" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portugisiska" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portugisiska (Brasilien)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumänien" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Ryska" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovakiska" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovenska" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Spanska spanska" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Svenska" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Thailändska" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Turkiska" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukraniska" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Serbiska" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrainska" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamesiska" @@ -248,7 +347,7 @@ msgstr "översättning" msgid "Translate text from a language to another" msgstr "Översätt text från ett språk till ett annat" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Översatt text" @@ -303,170 +402,174 @@ msgstr "" "\"html\" - HTML-märkning\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Föredraget antal alternativa översättningar" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API-nyckel" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Översätt fil från ett språk till ett annat" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Översatt fil" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Fil att översätta" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Upptäck språket i en enda text" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Detektioner" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Detektering fel" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Text att upptäcka" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Hämta frontend specifika inställningar" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "frontend inställningar" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "frontend" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Skicka in ett förslag för att förbättra en översättning" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Framgång" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Inte auktoriserad" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Originaltext" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Föreslagen översättning" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Språk av originaltext" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Språk av föreslagen översättning" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "återkoppling" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Språkkod" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Mänskligt läsbart språknamn (på engelska)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Stödda målspråkskoder" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Översatt text(er)" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Felmeddelande" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Reason för slow down" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "Översatt fil url" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Förtroendevärde" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Teckengräns för detta språk (-1 anger ingen gräns)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Frontend översättning timeout" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Oavsett om API-nyckeldatabasen är aktiverad." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Oavsett om en API-nyckel krävs." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Oavsett om det är möjligt att lämna in förslag." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Stödda filer format" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Oavsett om inlämning var framgångsrik" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Kopiera text" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 inte ladda %(url)s" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Okänd fel" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Kopierad" -#: 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." @@ -474,35 +577,35 @@ msgstr "" "Tack för din korrigering. Observera att förslaget inte kommer att träda i " "kraft direkt." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Inga språk tillgängliga. Har du installerat modellerna korrekt?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "" "Skriv in din API-nyckel. Om du behöver en API-nyckel, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "tryck på länken \"Get API Key\"." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "kontakta serveroperatören." #: libretranslate/templates/index.html:9 #: libretranslate/templates/index.html:27 -#: libretranslate/templates/index.html:336 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" msgstr "Gratis och öppen källkod Maskinöversättning 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 "" "Gratis och öppen källkod Maskinöversättning API. Självvärd, offline kapabel " "och lätt att installera. Kör din egen API-server på bara några minuter." @@ -515,155 +618,168 @@ msgstr "översättning" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API Docs" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Få API Nyckeln" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "Ställ in API Nyckeln" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Ändra språk" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Redigera" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" msgstr "Växla mörkt/ljusläge" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Avfärda" -#: libretranslate/templates/index.html:171 +#: libretranslate/templates/index.html: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 av bot missbruk är översättningsförfrågningar tillfälligt " +"begränsade till användare med en giltig API-nyckel. Förlåt för besväret!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "Översättning API" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Översätt text" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Översätt filer" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Översättning från" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Swap källa och målspråk" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Översätt till" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Text att översätta" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Ta bort text" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Föreslå översättning" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Avbokning" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Skicka" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Stödda filformat:" -#: 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 "Ta bort filen" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Översättning" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Ladda ner" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Begäran" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Svar" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "API för maskinöversättning med öppen källkod" -#: 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 "Självhäftad. Offline kapabel. Lätt att ställa in." -#: 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 "" -"Detta offentliga API bör användas för testning, personlig eller sällsynt " -"användning. Om du ska köra en ansökan i produktionen, vänligen " -"%(host_server)s eller %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "värd din egen server" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "få en API-nyckel" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" msgstr "Tillverkad med %(heart)s av %(contributors)s och drivs av %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Bidragsgivare" #~ msgid "multipart/form-data" #~ msgstr "multipart/form-data" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamesiska" + +#~ msgid "" +#~ "This public API should be used for testing, personal or infrequent use. If " +#~ "you're going to run an application in production, please %(host_server)s or " +#~ "%(get_api_key)s." +#~ msgstr "" +#~ "Detta offentliga API bör användas för testning, personlig eller sällsynt " +#~ "användning. Om du ska köra en ansökan i produktionen, vänligen " +#~ "%(host_server)s eller %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "värd din egen server" + +#~ msgid "get an API key" +#~ msgstr "få en API-nyckel" + +#~ msgid "Basque" +#~ msgstr "Basket" + +#~ msgid "Galician" +#~ msgstr "Galiker" diff --git a/libretranslate/locales/ta/LC_MESSAGES/messages.po b/libretranslate/locales/ta/LC_MESSAGES/messages.po new file mode 100644 index 0000000..8e9e9e5 --- /dev/null +++ b/libretranslate/locales/ta/LC_MESSAGES/messages.po @@ -0,0 +1,754 @@ +# Tamil translations for LibreTranslate. +# Copyright (C) 2024 LibreTranslate Authors +# This file is distributed under the same license as the LibreTranslate +# project. +# FIRST AUTHOR , 2024. +# +msgid "" +msgstr "" +"Project-Id-Version: LibreTranslate 1.6.2\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-06-28 13:05+0000\n" +"Last-Translator: தமிழ்நேரம் \n" +"Language-Team: Tamil \n" +"Language: ta\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.13-dev\n" +"Generated-By: Babel 2.12.1\n" + +#: libretranslate/app.py:93 +msgid "Invalid JSON format" +msgstr "தவறான சாதொபொகு வடிவம்" + +#: 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 "தவறான பநிஇ விசை" + +#: 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 "பநிஇ விசையைப் பெற %(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 "எச்டோனிய" + +#: 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 "" +"மூல உரையின் வடிவம்:\n" +" * `உரை` - எளிய உரை\n" +" * `html` - உஉகுமொ markup\n" + +#: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "மாற்று மொழிபெயர்ப்புகளின் விருப்பமான எண்ணிக்கை" + +#: libretranslate/locales/.swag.py:18 +msgid "API key" +msgstr "பநிஇ விசை" + +#: libretranslate/locales/.swag.py:19 +msgid "Translate file from a language to another" +msgstr "கோப்பை ஒரு மொழியிலிருந்து இன்னொரு மொழிக்கு மொழிபெயர்க்கவும்" + +#: libretranslate/locales/.swag.py:20 +msgid "Translated file" +msgstr "மொழிபெயர்க்கப்பட்ட கோப்பு" + +#: libretranslate/locales/.swag.py:21 +msgid "File to translate" +msgstr "மொழிபெயர்க்க கோப்பு" + +#: libretranslate/locales/.swag.py:22 +msgid "Detect the language of a single text" +msgstr "ஒற்றை உரையின் மொழியைக் கண்டறியவும்" + +#: libretranslate/locales/.swag.py:23 +msgid "Detections" +msgstr "கண்டறிதல்கள்" + +#: libretranslate/locales/.swag.py:24 +msgid "Detection error" +msgstr "கண்டறிதல் பிழை" + +#: libretranslate/locales/.swag.py:25 +msgid "Text to detect" +msgstr "கண்டறிய உரை" + +#: libretranslate/locales/.swag.py:26 +msgid "Retrieve frontend specific settings" +msgstr "ஃபிரான்டென்ட் குறிப்பிட்ட அமைப்புகளை மீட்டெடுக்கவும்" + +#: libretranslate/locales/.swag.py:27 +msgid "frontend settings" +msgstr "ஃபிரான்டென்ட் அமைப்புகள்" + +#: libretranslate/locales/.swag.py:28 +msgid "frontend" +msgstr "ஃபிரான்ட்" + +#: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "மொழிபெயர்ப்பை மேம்படுத்த ஒரு ஆலோசனையை சமர்ப்பிக்கவும்" + +#: libretranslate/locales/.swag.py:30 +msgid "Success" +msgstr "செய்" + +#: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "ஏற்பு இல்லை" + +#: libretranslate/locales/.swag.py:32 +msgid "Original text" +msgstr "அசல் உரை" + +#: libretranslate/locales/.swag.py:33 +msgid "Suggested translation" +msgstr "பரிந்துரைக்கப்பட்ட மொழிபெயர்ப்பு" + +#: libretranslate/locales/.swag.py:34 +msgid "Language of original text" +msgstr "அசல் உரையின் மொழி" + +#: libretranslate/locales/.swag.py:35 +msgid "Language of suggested translation" +msgstr "பரிந்துரைக்கப்பட்ட மொழிபெயர்ப்பின் மொழி" + +#: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "கருத்து" + +#: libretranslate/locales/.swag.py:37 +msgid "Language code" +msgstr "மொழி குறியீடு" + +#: libretranslate/locales/.swag.py:38 +msgid "Human-readable language name (in English)" +msgstr "மனிதனால் படிக்கக்கூடிய மொழி பெயர் (ஆங்கிலத்தில்)" + +#: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "ஆதரிக்கப்பட்ட இலக்கு மொழி குறியீடுகள்" + +#: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "மொழிபெயர்க்கப்பட்ட உரை (கள்)" + +#: libretranslate/locales/.swag.py:41 +msgid "Error message" +msgstr "பிழை செய்தி" + +#: libretranslate/locales/.swag.py:42 +msgid "Reason for slow down" +msgstr "மெதுவாக இருப்பதற்கான காரணம்" + +#: libretranslate/locales/.swag.py:43 +msgid "Translated file url" +msgstr "மொழிபெயர்க்கப்பட்ட கோப்பு முகவரி" + +#: libretranslate/locales/.swag.py:44 +msgid "Confidence value" +msgstr "நம்பிக்கை மதிப்பு" + +#: libretranslate/locales/.swag.py:45 +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "" +"இந்த மொழிக்கான எழுத்து உள்ளீட்டு வரம்பு (-1 வரம்பு இல்லை என்பதைக் " +"குறிக்கிறது)" + +#: libretranslate/locales/.swag.py:46 +msgid "Frontend translation timeout" +msgstr "ஃபிரான்டென்ட் மொழிபெயர்ப்பு நேரம் முடிந்தது" + +#: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "பநிஇ விசை தரவுத்தளம் இயக்கப்பட்டதா என்பதை." + +#: libretranslate/locales/.swag.py:48 +msgid "Whether an API key is required." +msgstr "பநிஇ விசை தேவையா என்பதை." + +#: libretranslate/locales/.swag.py:49 +msgid "Whether submitting suggestions is enabled." +msgstr "பரிந்துரைகளை சமர்ப்பிப்பது இயக்கப்பட்டதா." + +#: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "ஆதரிக்கப்பட்ட கோப்புகள் வடிவம்" + +#: libretranslate/locales/.swag.py:51 +msgid "Whether submission was successful" +msgstr "சமர்ப்பிப்பு வெற்றிகரமாக இருந்ததா" + +#: libretranslate/templates/app.js.template:31 +#: libretranslate/templates/app.js.template: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 "" +"உங்கள் பநிஇ விசையில் தட்டச்சு செய்க. உங்களுக்கு பநிஇ விசை தேவைப்பட்டால், " +"%(instructions)s" + +#: 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 "" +"%(heart)s %(contributors)s மூலம் தயாரிக்கப்படுகின்றன மற்றும் %(engine)s " +"மூலம் இயக்கப்படுகின்றன" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "%(libretranslate)s Contributors" +msgstr "%(libretranslate)s பங்களிப்பாளர்கள்" + +#~ msgid "Basque" +#~ msgstr "பாச்க்" + +#~ msgid "Galician" +#~ msgstr "காலிசியன்" diff --git a/libretranslate/locales/th/LC_MESSAGES/messages.po b/libretranslate/locales/th/LC_MESSAGES/messages.po new file mode 100644 index 0000000..c51bee4 --- /dev/null +++ b/libretranslate/locales/th/LC_MESSAGES/messages.po @@ -0,0 +1,746 @@ +# Thai translations for LibreTranslate. +# Copyright (C) 2024 LibreTranslate Authors +# This file is distributed under the same license as the LibreTranslate +# project. +# FIRST AUTHOR , 2024. +# +msgid "" +msgstr "" +"Project-Id-Version: LibreTranslate 1.6.1\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-06-05 16:54+0000\n" +"Last-Translator: Anucha Lhaononkor \n" +"Language-Team: Thai \n" +"Language: th\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.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 "ไอริชName" + +#: libretranslate/locales/.langs.py:24 +msgid "Italian" +msgstr "อิตาลี" + +#: libretranslate/locales/.langs.py:25 +msgid "Japanese" +msgstr "ญี่ปุ่น" + +#: libretranslate/locales/.langs.py:26 +msgid "Korean" +msgstr "เกาหลี" + +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "ภาษาลัตเวียName" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "ภาษาลิทัวเนียName" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "ภาษามาเลย์Name" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "นอร์เวย์" + +#: libretranslate/locales/.langs.py:31 +msgid "Persian" +msgstr "เปอร์เซีย" + +#: libretranslate/locales/.langs.py:32 +msgid "Polish" +msgstr "โปแลนด์" + +#: libretranslate/locales/.langs.py:33 +msgid "Portuguese" +msgstr "โปรตุเกส" + +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "โปรตุเกส (บราซิล)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "โรมาเนียName" + +#: 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 "ภาษาสโลเนียName" + +#: 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 "ภาษาไทยName" + +#: libretranslate/locales/.langs.py:43 +msgid "Turkish" +msgstr "ภาษาตุรกีName" + +#: libretranslate/locales/.langs.py:44 +msgid "Ukranian" +msgstr "ภาษาอุรากวัยName" + +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "อูร์ดู" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "เซอร์เบียName" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "ยูเครน" + +#: libretranslate/locales/.langs.py:48 +msgid "Vietnamese" +msgstr "ภาษาเวียดนามName" + +#: libretranslate/locales/.swag.py:1 +msgid "Retrieve list of supported languages" +msgstr "รับรายการภาษาที่รองรับ" + +#: libretranslate/locales/.swag.py:2 +msgid "List of languages" +msgstr "รายการภาษา" + +#: libretranslate/locales/.swag.py:3 +msgid "translate" +msgstr "แปล" + +#: libretranslate/locales/.swag.py:4 +msgid "Translate text from a language to another" +msgstr "แปลข้อความจากภาษาเป็นภาษาอื่น" + +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html: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" +"*เพลง*\n" + +#: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "จํานวนที่ควรใช้ในการแปลภาษา" + +#: libretranslate/locales/.swag.py:18 +msgid "API key" +msgstr "กุญแจ API" + +#: libretranslate/locales/.swag.py:19 +msgid "Translate file from a language to another" +msgstr "แปลแฟ้มจากภาษาเป็นภาษาอื่น" + +#: libretranslate/locales/.swag.py:20 +msgid "Translated file" +msgstr "แฟ้มที่แปลแล้ว" + +#: libretranslate/locales/.swag.py:21 +msgid "File to translate" +msgstr "แฟ้มที่จะแปล" + +#: libretranslate/locales/.swag.py:22 +msgid "Detect the language of a single text" +msgstr "ตรวจจับภาษาของข้อความเดียว" + +#: libretranslate/locales/.swag.py:23 +msgid "Detections" +msgstr "ตรวจสอบ" + +#: libretranslate/locales/.swag.py:24 +msgid "Detection error" +msgstr "การตรวจสอบผิดพลาด" + +#: libretranslate/locales/.swag.py:25 +msgid "Text to detect" +msgstr "ข้อความที่จะตรวจสอบ" + +#: libretranslate/locales/.swag.py:26 +msgid "Retrieve frontend specific settings" +msgstr "รับค่าค่าหน้าจอที่กําหนด" + +#: libretranslate/locales/.swag.py:27 +msgid "frontend settings" +msgstr "ตั้งค่าด้านหน้า" + +#: libretranslate/locales/.swag.py:28 +msgid "frontend" +msgstr "ด้านหน้า" + +#: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "จง ส่ง ข้อ เสนอ แนะ เพื่อ ปรับ ปรุง การ แปล" + +#: libretranslate/locales/.swag.py:30 +msgid "Success" +msgstr "สําเร็จ" + +#: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "ไม่ได้รับอนุญาต" + +#: libretranslate/locales/.swag.py:32 +msgid "Original text" +msgstr "ข้อความต้นฉบับ" + +#: libretranslate/locales/.swag.py:33 +msgid "Suggested translation" +msgstr "แปลที่แนะนํา" + +#: libretranslate/locales/.swag.py:34 +msgid "Language of original text" +msgstr "ภาษาของต้นฉบับ" + +#: libretranslate/locales/.swag.py:35 +msgid "Language of suggested translation" +msgstr "ภาษา ที่ มี การ แนะ ให้ แปล" + +#: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "การตอบกลับ" + +#: libretranslate/locales/.swag.py:37 +msgid "Language code" +msgstr "รหัสภาษา" + +#: libretranslate/locales/.swag.py:38 +msgid "Human-readable language name (in English)" +msgstr "ชื่อภาษาที่อ่านได้ของมนุษย์ (in อังกฤษ)" + +#: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "รองรับรหัสภาษาเป้าหมาย" + +#: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "แปลข้อความ" + +#: libretranslate/locales/.swag.py:41 +msgid "Error message" +msgstr "ข้อความผิดพลาด" + +#: libretranslate/locales/.swag.py:42 +msgid "Reason for slow down" +msgstr "เหตุผลสําหรับช้าลง" + +#: libretranslate/locales/.swag.py:43 +msgid "Translated file url" +msgstr "แปลแฟ้ม url" + +#: libretranslate/locales/.swag.py:44 +msgid "Confidence value" +msgstr "ค่าความละเอียด" + +#: libretranslate/locales/.swag.py:45 +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "จํากัดการป้อนอักขระสําหรับภาษานี้ (1 แสดงถึงไม่มีข้อจํากัด)" + +#: libretranslate/locales/.swag.py:46 +msgid "Frontend translation timeout" +msgstr "เวลาแปลฟร้อนท์" + +#: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "จะเปิดใช้งานฐานข้อมูลกุญแจ API หรือไม่." + +#: libretranslate/locales/.swag.py:48 +msgid "Whether an API key is required." +msgstr "ต้องการกุญแจ API หรือไม่." + +#: libretranslate/locales/.swag.py:49 +msgid "Whether submitting suggestions is enabled." +msgstr "เปิดใช้การแนะนําการส่งข้อมูลหรือไม่." + +#: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "รูปแบบแฟ้มที่รองรับ" + +#: libretranslate/locales/.swag.py:51 +msgid "Whether submission was successful" +msgstr "การส่งล้มเหลวหรือไม่" + +#: libretranslate/templates/app.js.template:31 +#: libretranslate/templates/app.js.template: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 "กดลิงก์ \"get 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 "กิตฮับ" + +#: 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 "Basque" +#~ msgstr "บาสก์" + +#~ msgid "Galician" +#~ msgstr "กาลิเซีย" diff --git a/libretranslate/locales/th/meta.json b/libretranslate/locales/th/meta.json new file mode 100644 index 0000000..4ae2cc0 --- /dev/null +++ b/libretranslate/locales/th/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Thai", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/tl/LC_MESSAGES/messages.po b/libretranslate/locales/tl/LC_MESSAGES/messages.po new file mode 100644 index 0000000..844163d --- /dev/null +++ b/libretranslate/locales/tl/LC_MESSAGES/messages.po @@ -0,0 +1,758 @@ +# Filipino (Philippines) translations for LibreTranslate. +# Copyright (C) 2024 LibreTranslate Authors +# This file is distributed under the same license as the LibreTranslate +# project. +# FIRST AUTHOR , 2024. +# +msgid "" +msgstr "" +"Project-Id-Version: LibreTranslate 1.6.1\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-08-08 13:03-0400\n" +"Last-Translator: FULL NAME \n" +"Language-Team: fil_PH \n" +"Language: fil_PH\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 "Hindi tanggap na anyo ng JSON" + +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 +msgid "Auto Detect" +msgstr "Di - Nakikitang Awto" + +#: libretranslate/app.py:311 +msgid "Unauthorized" +msgstr "Hindi awtorisado" + +#: libretranslate/app.py:329 +msgid "Too many request limits violations" +msgstr "Napakarami ang humihiling ng limitasyon sa mga paglabag" + +#: libretranslate/app.py:336 +msgid "Invalid API key" +msgstr "Hindi tanggap na key ng API" + +#: libretranslate/app.py:371 +msgid "Please contact the server operator to get an API key" +msgstr "" +"Pakisuyong makipag - ugnayan sa opereytor ng server upang makakuha ng susi " +"ng API" + +#: libretranslate/app.py:373 +#, python-format +msgid "Visit %(url)s to get an API key" +msgstr "Pagdalaw %(url)s upang makakuha ng susing API" + +#: libretranslate/app.py:420 +msgid "Slowdown:" +msgstr "Mabagal:" + +#: 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 "Imbalidong pangalan ng programa: bigo %(name)s parameter" + +#: libretranslate/app.py:666 +#, python-format +msgid "Invalid request: %(name)s parameter is not a number" +msgstr "Imbalidong kahilingan: %(name)s Hindi numero ang parameter" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "" +"Imbalidong kahilingan: %(name)s Ang parameter ay dapat <= %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 +#, python-format +msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" +msgstr "" +"Imbalidong pangalan ng programa: (%(size)s) lumampas sa itinakdang teksto " +"(%(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 hindi suportado ang mga symbolic link" + +#: libretranslate/app.py:726 +#, python-format +msgid "%(format)s format is not supported" +msgstr "%(format)s Hindi suportado ang mga symbolic link" + +#: 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) ay hindi magagamit bilang isang wikang puntirya mula " +"sa %(sname)s (%(scode)s)" + +#: libretranslate/app.py:787 +#, python-format +msgid "Cannot translate text: %(text)s" +msgstr "Hindi maisalin ang teksto: %(text)s" + +#: libretranslate/app.py:874 libretranslate/app.py:943 +msgid "Files translation are disabled on this server." +msgstr "Ang salin ng talaksan ay may kapansanan sa server na ito." + +#: libretranslate/app.py:889 +msgid "Invalid request: empty file" +msgstr "Imbalidong pangalan ng programa: bigong talaksan" + +#: libretranslate/app.py:892 +msgid "Invalid request: file format not supported" +msgstr "Hindi suportado ang mga symbolic link" + +#: libretranslate/app.py:951 +msgid "Invalid filename" +msgstr "Hindi tanggap na hostname" + +#: libretranslate/app.py:1193 +msgid "Suggestions are disabled on this server." +msgstr "Ang mga mungkahi ay may kapansanan sa serverg ito." + +#: libretranslate/locales/.langs.py:1 +msgid "English" +msgstr "Tagalog" + +#: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Albanian" + +#: libretranslate/locales/.langs.py:3 +msgid "Arabic" +msgstr "Arabe" + +#: libretranslate/locales/.langs.py:4 +msgid "Azerbaijani" +msgstr "Azerbaijani" + +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengali" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulgariano" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Catalan" + +#: libretranslate/locales/.langs.py:8 +msgid "Chinese" +msgstr "Tsino" + +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Tsino (tradisyonal)" + +#: libretranslate/locales/.langs.py:10 +msgid "Czech" +msgstr "Czech" + +#: libretranslate/locales/.langs.py:11 +msgid "Danish" +msgstr "Danes" + +#: libretranslate/locales/.langs.py:12 +msgid "Dutch" +msgstr "Olandes" + +#: libretranslate/locales/.langs.py:13 +msgid "Esperanto" +msgstr "Esperanto" + +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estoniano" + +#: libretranslate/locales/.langs.py:15 +msgid "Finnish" +msgstr "Wikang Pinlandes" + +#: libretranslate/locales/.langs.py:16 +msgid "French" +msgstr "Pranses" + +#: libretranslate/locales/.langs.py:17 +msgid "German" +msgstr "Aleman" + +#: libretranslate/locales/.langs.py:18 +msgid "Greek" +msgstr "Griego" + +#: libretranslate/locales/.langs.py:19 +msgid "Hebrew" +msgstr "Hebreo" + +#: libretranslate/locales/.langs.py:20 +msgid "Hindi" +msgstr "Hindi" + +#: libretranslate/locales/.langs.py:21 +msgid "Hungarian" +msgstr "Hungariano" + +#: libretranslate/locales/.langs.py:22 +msgid "Indonesian" +msgstr "Indonesian" + +#: libretranslate/locales/.langs.py:23 +msgid "Irish" +msgstr "Irlandes" + +#: libretranslate/locales/.langs.py:24 +msgid "Italian" +msgstr "Italyano" + +#: libretranslate/locales/.langs.py:25 +msgid "Japanese" +msgstr "Hapones" + +#: libretranslate/locales/.langs.py:26 +msgid "Korean" +msgstr "Koreano" + +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Latviano" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Ang Lithuanian" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malay" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norwego" + +#: libretranslate/locales/.langs.py:31 +msgid "Persian" +msgstr "Persiano" + +#: libretranslate/locales/.langs.py:32 +msgid "Polish" +msgstr "Polako" + +#: libretranslate/locales/.langs.py:33 +msgid "Portuguese" +msgstr "Portuges" + +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portuges (Brazil)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Romaniano" + +#: libretranslate/locales/.langs.py:36 +msgid "Russian" +msgstr "Ruso" + +#: 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 "Kastila" + +#: libretranslate/locales/.langs.py:40 +msgid "Swedish" +msgstr "Suweko" + +#: 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 "Turko" + +#: libretranslate/locales/.langs.py:44 +msgid "Ukranian" +msgstr "Ukranian" + +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urdu" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Serbiano" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukrainian" + +#: libretranslate/locales/.langs.py:48 +msgid "Vietnamese" +msgstr "Vietnamese" + +#: libretranslate/locales/.swag.py:1 +msgid "Retrieve list of supported languages" +msgstr "Retrieve list ng suportadong mga wika" + +#: libretranslate/locales/.swag.py:2 +msgid "List of languages" +msgstr "Talaan ng mga wika" + +#: libretranslate/locales/.swag.py:3 +msgid "translate" +msgstr "salin" + +#: libretranslate/locales/.swag.py:4 +msgid "Translate text from a language to another" +msgstr "Isinalin ang teksto mula sa isang wika tungo sa ibang wika" + +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 +msgid "Translated text" +msgstr "Isinalin na teksto" + +#: libretranslate/locales/.swag.py:6 +msgid "Invalid request" +msgstr "Imbalidong pangalan ng programa" + +#: libretranslate/locales/.swag.py:7 +msgid "Translation error" +msgstr "Pagkakamali sa pagsasalin" + +#: libretranslate/locales/.swag.py:8 +msgid "Slow down" +msgstr "Magmabagal" + +#: libretranslate/locales/.swag.py:9 +msgid "Banned" +msgstr "Ipinagbawal" + +#: libretranslate/locales/.swag.py:10 +msgid "Hello world!" +msgstr "Maganda talaga!" + +#: libretranslate/locales/.swag.py:11 +msgid "Text(s) to translate" +msgstr "Mga teksto(mga) na isasalin" + +#: libretranslate/locales/.swag.py:12 +msgid "Source language code" +msgstr "Pinagmulan ng kodigo ng wika" + +#: libretranslate/locales/.swag.py:13 +msgid "Target language code" +msgstr "Target language code" + +#: libretranslate/locales/.swag.py:14 +msgid "text" +msgstr "teksto" + +#: libretranslate/locales/.swag.py:15 +msgid "html" +msgstr "html" + +#: libretranslate/locales/.swag.py:16 +msgid "" +"Format of source text:\n" +" * `text` - Plain text\n" +" * `html` - HTML markup\n" +msgstr "" +"Pinagmulan ng teksto:\n" +"* `text` - Plain\n" +"* `html` - HTML markup\n" + +#: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Mas piniling bilang ng alternatibong mga salin" + +#: libretranslate/locales/.swag.py:18 +msgid "API key" +msgstr "Susi ng API" + +#: libretranslate/locales/.swag.py:19 +msgid "Translate file from a language to another" +msgstr "Isinalin ang talaksan mula sa isang wika tungo sa ibang wika" + +#: libretranslate/locales/.swag.py:20 +msgid "Translated file" +msgstr "Isinalin na talaksan" + +#: libretranslate/locales/.swag.py:21 +msgid "File to translate" +msgstr "Sawi sa pagsasalin" + +#: libretranslate/locales/.swag.py:22 +msgid "Detect the language of a single text" +msgstr "Alamin ang wika ng isang teksto" + +#: libretranslate/locales/.swag.py:23 +msgid "Detections" +msgstr "Mga Pag - aalinlangan" + +#: libretranslate/locales/.swag.py:24 +msgid "Detection error" +msgstr "Maling diyagnosis" + +#: libretranslate/locales/.swag.py:25 +msgid "Text to detect" +msgstr "Mag - text para malaman ito" + +#: libretranslate/locales/.swag.py:26 +msgid "Retrieve frontend specific settings" +msgstr "Ibalik ang espesipikong mga setting" + +#: libretranslate/locales/.swag.py:27 +msgid "frontend settings" +msgstr "harapan" + +#: libretranslate/locales/.swag.py:28 +msgid "frontend" +msgstr "harap" + +#: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "Magpasakop sa mungkahi na pagbutihin ang isang salin" + +#: libretranslate/locales/.swag.py:30 +msgid "Success" +msgstr "Tagumpay" + +#: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "Hindi awtorisado" + +#: libretranslate/locales/.swag.py:32 +msgid "Original text" +msgstr "Orihinal na teksto" + +#: libretranslate/locales/.swag.py:33 +msgid "Suggested translation" +msgstr "Iminumungkahing salin" + +#: libretranslate/locales/.swag.py:34 +msgid "Language of original text" +msgstr "Wika ng orihinal na teksto" + +#: libretranslate/locales/.swag.py:35 +msgid "Language of suggested translation" +msgstr "Wika ng iminungkahing salin" + +#: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "pagtanggap" + +#: libretranslate/locales/.swag.py:37 +msgid "Language code" +msgstr "Kodigo ng wika" + +#: libretranslate/locales/.swag.py:38 +msgid "Human-readable language name (in English)" +msgstr "Pangalan ng tao-basang wika (sa Ingles)" + +#: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "Suportadong target na mga kodigo sa wika" + +#: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "Isinalin na teksto(s)" + +#: libretranslate/locales/.swag.py:41 +msgid "Error message" +msgstr "Error sa pagbasa ng mensahe" + +#: libretranslate/locales/.swag.py:42 +msgid "Reason for slow down" +msgstr "Dahilan para magmabagal" + +#: libretranslate/locales/.swag.py:43 +msgid "Translated file url" +msgstr "Isinalin ang talaksang url" + +#: libretranslate/locales/.swag.py:44 +msgid "Confidence value" +msgstr "Halaga ng pagtitiwala" + +#: libretranslate/locales/.swag.py:45 +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "" +"Ang character input limit para sa wikang ito (-1 ay nagpapakita ng walang " +"hangganan)" + +#: libretranslate/locales/.swag.py:46 +msgid "Frontend translation timeout" +msgstr "Harapang pagsasalin" + +#: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "Kung baga magagawa ang API key database." + +#: libretranslate/locales/.swag.py:48 +msgid "Whether an API key is required." +msgstr "Kung kailangan ang susing API." + +#: libretranslate/locales/.swag.py:49 +msgid "Whether submitting suggestions is enabled." +msgstr "Kung baga ang pagkakapit ng mga mungkahi ay magagawa." + +#: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "Suportadong format ng mga file" + +#: libretranslate/locales/.swag.py:51 +msgid "Whether submission was successful" +msgstr "Kung baga ang pagpapasakop ay matagumpay" + +#: libretranslate/templates/app.js.template:31 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 +msgid "Copy text" +msgstr "Kopya ng teksto" + +#: libretranslate/templates/app.js.template:80 +#: libretranslate/templates/app.js.template:86 +#: libretranslate/templates/app.js.template:91 +#: libretranslate/templates/app.js.template: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 "Hindi maikarga %(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 "Hindi kilalang error" + +#: libretranslate/templates/app.js.template:295 +msgid "Copied" +msgstr "Pinagkunan" + +#: libretranslate/templates/app.js.template:339 +msgid "" +"Thanks for your correction. Note the suggestion will not take effect right " +"away." +msgstr "" +"Salamat sa iyong pagtutuwid. Pansinin na ang mungkahi ay hindi kaagad - agad" +" matutupad." + +#: libretranslate/templates/app.js.template:463 +msgid "No languages available. Did you install the models correctly?" +msgstr "Walang makukuhang wika. Tama ba ang pagkakakabit mo sa mga modelo?" + +#: libretranslate/templates/app.js.template:536 +#, python-format +msgid "Type in your API Key. If you need an API key, %(instructions)s" +msgstr "Uri sa iyong API Key. Kung kailangan mo ng API key, %(instructions)s" + +#: libretranslate/templates/app.js.template:536 +msgid "press the \"Get API Key\" link." +msgstr "pindutin ang \"Get API Key\" link." + +#: libretranslate/templates/app.js.template:536 +msgid "contact the server operator." +msgstr "makipag - ugnayan sa opereytor ng server." + +#: libretranslate/templates/index.html:9 +#: libretranslate/templates/index.html:27 +#: libretranslate/templates/index.html:347 +msgid "Free and Open Source Machine Translation API" +msgstr "API at Open Source Machine Translation" + +#: libretranslate/templates/index.html:10 +#: libretranslate/templates/index.html:31 +msgid "" +"Free and Open Source Machine Translation API. Free to download, offline " +"capable and easy to setup. Run your own API server in just a few minutes." +msgstr "" +"Malaya at Open Source Machine Translation API. Sarili-hosted, offline may " +"kakayahan at madaling mag-setup. Itakbo ang iyong sariling API server sa " +"loob lamang ng ilang minuto." + +#: libretranslate/templates/index.html:11 +msgid "translation" +msgstr "salin" + +#: libretranslate/templates/index.html:11 +msgid "api" +msgstr "api" + +#: libretranslate/templates/index.html:67 +msgid "API Docs" +msgstr "API Docs" + +#: libretranslate/templates/index.html:69 +msgid "Get API Key" +msgstr "Kumuha ng API Susi" + +#: libretranslate/templates/index.html:71 +msgid "GitHub" +msgstr "GitHub" + +#: libretranslate/templates/index.html:73 +msgid "Set API Key" +msgstr "Magtakda ng API Susi" + +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "Nagbabago ng wika" + +#: libretranslate/templates/index.html:81 +msgid "Edit" +msgstr "Baguhin" + +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "Togle dark/light mode" + +#: libretranslate/templates/index.html:159 +msgid "Dismiss" +msgstr "Mga Mali" + +#: libretranslate/templates/index.html:177 +msgid "" +"Due to bot abuse, translation requests are temporarily limited to users with" +" a valid API key. Sorry for the inconvenience!" +msgstr "" +"Dahil sa pang-aabusong bit, ang mga kahilingan sa pagsasalin ay " +"pansamantalang nililimitahan sa mga gumagamit na may tanggap na susing API. " +"Ikinalulungkot ang abala!" + +#: libretranslate/templates/index.html:182 +msgid "Translation API" +msgstr "API sa Pagsasalin" + +#: libretranslate/templates/index.html:186 +msgid "Translate Text" +msgstr "Saling Teksto" + +#: libretranslate/templates/index.html:190 +msgid "Translate Files" +msgstr "Mga Larawan ng Pagsasalin" + +#: libretranslate/templates/index.html:196 +msgid "Translate from" +msgstr "Isinalin mula sa" + +#: libretranslate/templates/index.html:206 +msgid "Swap source and target languages" +msgstr "Swap source at target languages" + +#: libretranslate/templates/index.html:209 +msgid "Translate into" +msgstr "Isinalin sa" + +#: libretranslate/templates/index.html:221 +msgid "Text to translate" +msgstr "Tekstong isasalin" + +#: libretranslate/templates/index.html:224 +msgid "Delete text" +msgstr "Itapon ang teksto" + +#: libretranslate/templates/index.html:237 +msgid "Suggest translation" +msgstr "Mungkahi" + +#: libretranslate/templates/index.html:241 +msgid "Cancel" +msgstr "Huwag ituloy" + +#: libretranslate/templates/index.html:244 +msgid "Send" +msgstr "Pagpadala" + +#: libretranslate/templates/index.html:260 +msgid "Supported file formats:" +msgstr "Suportadong mga format ng talaksan:" + +#: libretranslate/templates/index.html:264 +msgid "File" +msgstr "Sawi ang paglikha ng talaksan" + +#: libretranslate/templates/index.html:279 +msgid "Remove file" +msgstr "Alisin ang talaksan" + +#: libretranslate/templates/index.html:286 +msgid "Translate" +msgstr "Pagsasalin" + +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 +msgid "Download" +msgstr "Ibaba" + +#: libretranslate/templates/index.html:306 +msgid "Request" +msgstr "Kahilingan" + +#: libretranslate/templates/index.html:311 +msgid "Response" +msgstr "Pagtugon" + +#: 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 "Sarili-Hosted. May Kapansanan. Madaling Itakda." + +#: libretranslate/templates/index.html:346 +msgid "LibreTranslate" +msgstr "LibreTranslate" + +#: libretranslate/templates/index.html:348 +msgid "License:" +msgstr "Lisensiya:" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" +msgstr "" +"Ginawa kasama ng %(heart)s sunod %(contributors)s at pinapatakbo ng " +"%(engine)s" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "%(libretranslate)s Contributors" +msgstr "%(libretranslate)s Tagapag - abuloy" + +#~ msgid "Basque" +#~ msgstr "Basque" + +#~ msgid "Galician" +#~ msgstr "Galician" diff --git a/libretranslate/locales/tl/meta.json b/libretranslate/locales/tl/meta.json new file mode 100644 index 0000000..aea7939 --- /dev/null +++ b/libretranslate/locales/tl/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Tagalog", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/tr/LC_MESSAGES/messages.po b/libretranslate/locales/tr/LC_MESSAGES/messages.po index f4c8b6f..bf830f3 100644 --- a/libretranslate/locales/tr/LC_MESSAGES/messages.po +++ b/libretranslate/locales/tr/LC_MESSAGES/messages.po @@ -8,78 +8,90 @@ msgid "" msgstr "" "Project-Id-Version: LibreTranslate 1.3.9\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2023-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-02-27 19:38+0000\n" -"Last-Translator: Oğuz Ersen \n" -"Language-Team: Turkish \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-06-18 16:01+0000\n" +"Last-Translator: Akin Uslu \n" +"Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.12.1\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" -msgstr "Geçersiz JSON biçimi" +msgstr "Geçersiz 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 "Otomatik Algıla" +msgstr "Otomatik Algılama" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "Yetkisiz İşlem" +msgstr "Yetkisiz" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "Çok fazla istekte bulunarak, istek sınırı aşıldı" +msgstr "Çok fazla istek sınırı ihlali" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Geçersiz API anahtarı" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" -msgstr "" -"Bir API anahtarı almak için lütfen sunucu yöneticisiyle iletişime geçin" +msgstr "API anahtarı almak için lütfen sunucu yöneticisiyle iletişime geçin" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "API anahtarı almak için %(url)s adresini ziyaret edin" -#: libretranslate/app.py:318 +#: libretranslate/app.py: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 "Geçersiz istek: eksik %(name)s parametresi" +msgstr "Geçersiz istek: %(name)s parametresi eksik" -#: 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 "Geçersiz istek: %(name)s parametresi bir sayı değil" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Geçersiz istek: %(name)s parametresi <= %(value)s olmali" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" -msgstr "Geçersiz istek: istek (%(size)s) metin sınırını aşıyor (%(limit)s)" +msgstr "Geçersiz istek: istek (%(size)s) metin sınırını (%(limit)s) aşıyor" -#: 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 desteklenmiyor" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "%(format)s biçimi desteklenmiyor" -#: libretranslate/app.py:602 libretranslate/app.py:626 +#: libretranslate/app.py:735 libretranslate/app.py:763 #, python-format msgid "" "%(tname)s (%(tcode)s) is not available as a target language from %(sname)s " @@ -88,28 +100,28 @@ msgstr "" "%(tname)s (%(tcode)s), %(sname)s (%(scode)s) için hedef dil olarak " "kullanılamıyor" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Metin çevrilemiyor: %(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 "Dosya çevirisi bu sunucuda devre dışı bırakıldı." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Geçersiz istek: boş dosya" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Geçersiz istek: dosya biçimi desteklenmiyor" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Geçersiz dosya adı" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Öneriler bu sunucuda devre dışı bırakıldı." @@ -118,118 +130,190 @@ msgid "English" msgstr "İngilizce" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Arnavutça" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Arapça" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerice" -#: libretranslate/locales/.langs.py:4 +#: libretranslate/locales/.langs.py:5 +msgid "Bengali" +msgstr "Bengalce" + +#: libretranslate/locales/.langs.py:6 +msgid "Bulgarian" +msgstr "Bulgarca" + +#: libretranslate/locales/.langs.py:7 +msgid "Catalan" +msgstr "Katalanca" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "Çince" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "Çince (geleneksel)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Çekçe" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Danca" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Felemenkçe" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Estonca" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Fince" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Fransızca" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Almanca" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Yunanca" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "İbranice" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "Hintçe" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "Macarca" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "Endonezce" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "İrlandaca" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" msgstr "İtalyanca" -#: libretranslate/locales/.langs.py:19 +#: libretranslate/locales/.langs.py:25 msgid "Japanese" msgstr "Japonca" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Korece" -#: libretranslate/locales/.langs.py:21 +#: libretranslate/locales/.langs.py:27 +msgid "Latvian" +msgstr "Letonca" + +#: libretranslate/locales/.langs.py:28 +msgid "Lithuanian" +msgstr "Litvanyaca" + +#: libretranslate/locales/.langs.py:29 +msgid "Malay" +msgstr "Malayca" + +#: libretranslate/locales/.langs.py:30 +msgid "Norwegian" +msgstr "Norveççe" + +#: libretranslate/locales/.langs.py:31 msgid "Persian" msgstr "Farsça" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Lehçe" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Portekizce" -#: libretranslate/locales/.langs.py:24 +#: libretranslate/locales/.langs.py:34 +msgid "Portuguese (Brazil)" +msgstr "Portekiz (Brazil)" + +#: libretranslate/locales/.langs.py:35 +msgid "Romanian" +msgstr "Rumence" + +#: libretranslate/locales/.langs.py:36 msgid "Russian" msgstr "Rusça" -#: libretranslate/locales/.langs.py:25 +#: libretranslate/locales/.langs.py:37 msgid "Slovak" msgstr "Slovakça" -#: libretranslate/locales/.langs.py:26 +#: libretranslate/locales/.langs.py:38 +msgid "Slovenian" +msgstr "Slovence" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "İspanyolca" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "İsveççe" -#: libretranslate/locales/.langs.py:28 +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "Tagalogca" + +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "Tayca" + +#: libretranslate/locales/.langs.py:43 msgid "Turkish" msgstr "Türkçe" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukraynaca" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:45 +msgid "Urdu" +msgstr "Urduca" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "Sırpça" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" +msgstr "Ukraynaca" + +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "Vietnamca" @@ -249,7 +333,7 @@ msgstr "çevir" msgid "Translate text from a language to another" msgstr "Bir dilden diğerine metin çevirin" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Çevirilen metin" @@ -304,206 +388,210 @@ msgstr "" " * `html` - HTML işaretlemesi\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "Tercih edilen alternatif çeviri sayısı" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API anahtarı" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Bir dilden diğerine dosya çevirin" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Çevrilen dosya" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Çevrilecek dosya" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Tek bir metnin dilini algıla" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Algılamalar" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Algılama hatası" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Algılanacak metin" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Ön uca özel ayarları al" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "ön uç ayarları" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "ön uç" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Bir çeviriyi iyileştirmek için öneri gönderin" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Başarılı" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Yetkili değil" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Orijinal metin" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Önerilen çeviri" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Orijinal metnin dili" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Önerilen çevirinin dili" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "geri bildirim" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Dil kodu" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "Okunabilir dil adı (İngilizce olarak)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Desteklenen hedef dil kodları" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "Çevirilen metin" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Hata mesajı" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Yavaşlama nedeni" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "Çevrilen dosya URL'si" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Güven değeri" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Bu dil için karakter giriş sınırı (-1, sınır olmadığını gösterir)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Ön uç çeviri zaman aşımı" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "API anahtarı veri tabanının etkin olup olmadığı." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Bir API anahtarının gerekli olup olmadığı." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Öneri göndermenin etkin olup olmadığı." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Desteklenen dosya biçimi" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Gönderimin başarılı olup olmadığı" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 +#: libretranslate/templates/app.js.template:294 +#: libretranslate/templates/app.js.template:298 msgid "Copy text" msgstr "Metni kopyala" #: libretranslate/templates/app.js.template:80 #: libretranslate/templates/app.js.template:86 #: libretranslate/templates/app.js.template:91 -#: libretranslate/templates/app.js.template:273 -#: libretranslate/templates/app.js.template:343 -#: libretranslate/templates/app.js.template:431 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template: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 yüklenemiyor" -#: libretranslate/templates/app.js.template:264 -#: libretranslate/templates/app.js.template:334 -#: libretranslate/templates/app.js.template:412 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:272 +#: libretranslate/templates/app.js.template:342 +#: libretranslate/templates/app.js.template:420 +#: libretranslate/templates/app.js.template:431 msgid "Unknown error" msgstr "Bilinmeyen hata" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Kopyalandı" -#: 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 "" "Düzeltmeniz için teşekkürler. Önerinin hemen etkili olmayacağını unutmayın." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Kullanılabilir dil yok. Modelleri doğru şekilde yüklediniz mi?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "" "API anahtarınızı yazın. Bir API anahtarına ihtiyacınız varsa, " "%(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "\"API Anahtarı Al\" bağlantısına tıklayın." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "sunucu yöneticisiyle iletişime geçin." #: libretranslate/templates/index.html:9 #: libretranslate/templates/index.html:27 -#: libretranslate/templates/index.html:336 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" msgstr "Özgür ve Açık Kaynaklı Makine Çevirisi API'si" #: 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 "" "Özgür ve Açık Kaynaklı Makine Çevirisi API'si. Kendiniz " "barındırabileceğiniz, çevrim dışı çalışabilir ve kurulumu kolay. Sadece " @@ -517,158 +605,171 @@ msgstr "çeviri" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API Belgeleri" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "API Anahtarı Al" -#: libretranslate/templates/index.html:69 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "API Anahtarını Ayarla" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Dili değiştir" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Düzenle" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "Geçiş karanlık / hafif mod" +msgstr "Koyu/açık modu değiştir" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Kapat" -#: 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 kötüye kullanılması nedeniyle, çeviri talepleri geçerli bir API anahtarı" +" olan kullanıcılarla geçici olarak sınırlıdır. Rahatlık için özür dilerim!" + +#: libretranslate/templates/index.html:182 msgid "Translation API" msgstr "Çeviri API'si" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Metin Çevir" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Dosya Çevir" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Şundan çevir" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Kaynak ve hedef dilleri değiştir" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Şuna çevir" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Çevrilecek metin" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Metni sil" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Çeviri öner" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "İptal" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Gönder" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Desteklenen dosya biçimleri:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Dosya" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Dosyayı kaldır" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Çevir" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "İndir" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "İstek" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Yanıt" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "Açık Kaynaklı Makine Çevirisi API'si" -#: 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 "" "Kendiniz Barındırabileceğiniz. Çevrim Dışı Çalışabilen. Kurulumu Kolay." -#: 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 "Lisans:" -#: libretranslate/templates/index.html:340 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. If " -"you're going to run an application in production, please %(host_server)s or " -"%(get_api_key)s." -msgstr "" -"Bu herkese açık API test, kişisel veya ara sıra kullanım için " -"kullanılmalıdır. Üretimde bir uygulama çalıştıracaksanız, lütfen " -"%(host_server)s veya %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "kendi sunucunuzu barındırın" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "bir API anahtarı alın" - -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "Made with %(heart)s by %(contributors)s and powered by %(engine)s" msgstr "" "%(contributors)s tarafından %(heart)s ile yapıldı ve %(engine)s tarafından " "desteklenmektedir" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s Katkıda Bulunanlar" #~ msgid "multipart/form-data" #~ msgstr "çoklu bölüm/form-data" + +#~ msgid "Vietnamese" +#~ msgstr "Vietnamca" + +#~ msgid "" +#~ "This public API should be used for testing, personal or infrequent use. If " +#~ "you're going to run an application in production, please %(host_server)s or " +#~ "%(get_api_key)s." +#~ msgstr "" +#~ "Bu herkese açık API test, kişisel veya ara sıra kullanım için " +#~ "kullanılmalıdır. Üretimde bir uygulama çalıştıracaksanız, lütfen " +#~ "%(host_server)s veya %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "kendi sunucunuzu barındırın" + +#~ msgid "get an API key" +#~ msgstr "bir API anahtarı alın" + +#~ msgid "Basque" +#~ msgstr "Basque" + +#~ msgid "Galician" +#~ msgstr "Galician" diff --git a/libretranslate/locales/ug/LC_MESSAGES/messages.po b/libretranslate/locales/ug/LC_MESSAGES/messages.po new file mode 100644 index 0000000..648e6c4 --- /dev/null +++ b/libretranslate/locales/ug/LC_MESSAGES/messages.po @@ -0,0 +1,754 @@ +# Uyghur translations for LibreTranslate. +# Copyright (C) 2023 LibreTranslate Authors +# This file is distributed under the same license as the LibreTranslate +# project. +# FIRST AUTHOR , 2023. +# +msgid "" +msgstr "" +"Project-Id-Version: LibreTranslate 1.3.12\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-02-20 07:02+0000\n" +"Last-Translator: Liam Johnson \n" +"Language: ug\n" +"Language-Team: Uyghur " +"\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 "" + +#: libretranslate/app.py:373 +#, python-format +msgid "Visit %(url)s to get an API key" +msgstr "" + +#: 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 "" + +#: 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 "" + +#: 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 "" + diff --git a/libretranslate/locales/ug/meta.json b/libretranslate/locales/ug/meta.json new file mode 100644 index 0000000..a886bc4 --- /dev/null +++ b/libretranslate/locales/ug/meta.json @@ -0,0 +1,4 @@ +{ + "name": "ug", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/uk/LC_MESSAGES/messages.po b/libretranslate/locales/uk/LC_MESSAGES/messages.po index c262655..3849613 100644 --- a/libretranslate/locales/uk/LC_MESSAGES/messages.po +++ b/libretranslate/locales/uk/LC_MESSAGES/messages.po @@ -8,121 +8,123 @@ 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-11-26 07:04+0000\n" -"Last-Translator: Fqwe1 \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-07 15:01+0000\n" +"Last-Translator: Do you know my name? " +"\n" "Language-Team: Ukrainian \n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 5.2.1-rc\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Weblate 5.12-dev\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 libretranslate/app.py:60 +#: 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:128 libretranslate/templates/app.js.template:427 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Автовизначення" -#: libretranslate/app.py:232 libretranslate/app.py:193 +#: libretranslate/app.py:311 msgid "Unauthorized" msgstr "Неавторизовано" -#: libretranslate/app.py:250 libretranslate/app.py:211 +#: libretranslate/app.py:329 msgid "Too many request limits violations" -msgstr "Перевищено ліміт запитів" +msgstr "Перевищено обмеження запитів" -#: libretranslate/app.py:257 libretranslate/app.py:220 +#: libretranslate/app.py:336 msgid "Invalid API key" -msgstr "Неправильний API ключ" +msgstr "Недійсний ключ API" -#: libretranslate/app.py:276 libretranslate/app.py:227 +#: 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:229 +#: 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:269 +#: 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: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 "Неправильний запит: відсутній параметр %(name)s" +msgstr "Недійсний запит: бракує параметра %(name)s" -#: libretranslate/app.py:544 libretranslate/app.py:553 -#: 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 "Недійсний запит: параметр %(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)" +"Недійсний запит: запит (%(size)s) перевищує обмеження тексту (%(limit)s)" -#: libretranslate/app.py:583 libretranslate/app.py:588 -#: libretranslate/app.py:758 libretranslate/app.py:763 -#: libretranslate/app.py:525 libretranslate/app.py:530 -#: libretranslate/app.py:700 libretranslate/app.py:705 +#: libretranslate/app.py: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:536 +#: 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: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) не доступна, як мова перекладу з %(sname)s (%(scode)s)" +"%(tname)s (%(tcode)s) не доступна, як мова перекладу з %(sname)s " +"(%(scode)s)" -#: libretranslate/app.py:647 libretranslate/app.py:589 +#: 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: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:748 libretranslate/app.py:690 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" -msgstr "Неправильний запит: порожній файл" +msgstr "Недійсний запит: порожній файл" -#: libretranslate/app.py:751 libretranslate/app.py:693 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" -msgstr "Неправильний запит: формат файлу не підтримується" +msgstr "Недійсний запит: формат файлу не підтримується" -#: libretranslate/app.py:796 libretranslate/app.py:738 +#: libretranslate/app.py:951 msgid "Invalid filename" -msgstr "Неправильна назва файлу" +msgstr "Недійсна назва файлу" -#: libretranslate/app.py:1038 libretranslate/app.py:979 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Пропозиції на цьому сервері вимкнено." @@ -131,118 +133,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 "Есперанто" -#: 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 "Українська" -#: 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 "В'єтнамська" @@ -260,16 +334,15 @@ 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/templates/index.html:219 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" msgstr "Перекладений текст" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" -msgstr "Неправильний запит" +msgstr "Недійсний запит" #: libretranslate/locales/.swag.py:7 msgid "Translation error" @@ -289,7 +362,7 @@ msgstr "Привіт, світе!" #: libretranslate/locales/.swag.py:11 msgid "Text(s) to translate" -msgstr "Текст(и) для перекладу" +msgstr "Текст для перекладу" #: libretranslate/locales/.swag.py:12 msgid "Source language code" @@ -313,237 +386,219 @@ msgid "" " * `text` - Plain text\n" " * `html` - HTML markup\n" msgstr "" -"Формат вихідного тексту:\n" +"Формат оригінального тексту:\n" " * `text` - Звичайний текст\n" " * `html` - HTML розмітка\n" #: libretranslate/locales/.swag.py:17 -msgid "API key" -msgstr "API ключ" +msgid "Preferred number of alternative translations" +msgstr "Бажана кількість альтернативних перекладів" #: libretranslate/locales/.swag.py:18 -msgid "Translate file from a language to another" -msgstr "Перекласти файл з однієї мови на іншу" +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: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 -msgid "Translated text(s)" -msgstr "Перекладений(і) текст(и)" - #: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "Перекладений текст" + +#: 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 -msgid "Whether the API key database is enabled." -msgstr "Чи увімкнено базу даних API ключів." - #: 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 "Whether submitting suggestions is enabled." +msgstr "Чи ввімкнено подання пропозицій." + +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Підтримувані формати файлів" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Чи була заявка успішною" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:286 -#: libretranslate/templates/app.js.template:290 -#: libretranslate/templates/app.js.template:275 -#: libretranslate/templates/app.js.template:279 +#: libretranslate/templates/app.js.template: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: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: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: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:287 -#: libretranslate/templates/app.js.template:276 +#: libretranslate/templates/app.js.template:295 msgid "Copied" msgstr "Скопійовано" -#: libretranslate/templates/app.js.template:331 -#: 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." +"Thanks for your correction. Note the suggestion will not take effect " +"right away." msgstr "" "Дякуємо за виправлення. Зверніть увагу, що пропозиція не набуде чинності " "одразу." -#: libretranslate/templates/app.js.template:455 -#: libretranslate/templates/app.js.template:423 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" msgstr "Немає доступних мов. Чи правильно ви встановили моделі?" -#: libretranslate/templates/app.js.template:522 -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" -msgstr "Введіть свій API ключ. Якщо вам потрібен API ключ, %(instructions)s" +msgstr "Уведіть свій ключ API. Якщо вам потрібен ключ API, %(instructions)s" -#: libretranslate/templates/app.js.template:522 -#: libretranslate/templates/app.js.template:479 +#: 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:479 +#: 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:8 libretranslate/templates/index.html:25 -#: libretranslate/templates/index.html:333 +#: libretranslate/templates/index.html:347 msgid "Free and Open Source Machine Translation API" -msgstr "Безкоштовний API машинного перекладу з відкритим вихідним кодом" +msgstr "Вільний API машинного перекладу з відкритим сирцевим кодом" #: libretranslate/templates/index.html:10 #: libretranslate/templates/index.html:31 -#: libretranslate/templates/index.html:29 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline capable " -"and easy to setup. Run your own API server in just a few minutes." +"Free and Open Source Machine Translation API. 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" @@ -553,192 +608,174 @@ msgstr "переклад" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "Документація до API" -#: libretranslate/templates/index.html:67 -#: libretranslate/templates/index.html:66 -msgid "Get API Key" -msgstr "Отримати API ключ" - #: libretranslate/templates/index.html:69 -#: libretranslate/templates/index.html:68 +msgid "Get API Key" +msgstr "Отримати ключ API" + +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:71 -#: libretranslate/templates/index.html:70 -msgid "Set API Key" -msgstr "Встановити API ключ" - #: libretranslate/templates/index.html:73 -#: libretranslate/templates/index.html:72 +msgid "Set API Key" +msgstr "Установити ключ API" + +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Змінити мову" -#: libretranslate/templates/index.html:79 -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Редагувати" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" msgstr "Перемкнути темну/світлу тему" -#: libretranslate/templates/index.html:157 -#: libretranslate/templates/index.html:154 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Відмовитись" -#: libretranslate/templates/index.html:171 -#: libretranslate/templates/index.html:168 +#: libretranslate/templates/index.html: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:172 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "Переклад тексту" -#: libretranslate/templates/index.html:179 -#: libretranslate/templates/index.html:176 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Переклад файлів" -#: libretranslate/templates/index.html:185 -#: libretranslate/templates/index.html:182 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Перекласти з" -#: libretranslate/templates/index.html:195 -#: libretranslate/templates/index.html:192 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" msgstr "Поміняти мови місцями" -#: libretranslate/templates/index.html:198 -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Перекласти на" -#: libretranslate/templates/index.html:210 -#: libretranslate/templates/index.html:207 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Текст для перекладу" -#: libretranslate/templates/index.html:213 -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Видалити текст" -#: libretranslate/templates/index.html:226 -#: libretranslate/templates/index.html:223 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Запропонувати переклад" -#: libretranslate/templates/index.html:230 -#: libretranslate/templates/index.html:227 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Скасувати" -#: libretranslate/templates/index.html:233 -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Надіслати" -#: libretranslate/templates/index.html:249 -#: libretranslate/templates/index.html:246 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Підтримувані формати файлів:" -#: libretranslate/templates/index.html:253 -#: libretranslate/templates/index.html:250 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Файл" -#: libretranslate/templates/index.html:268 -#: libretranslate/templates/index.html:265 +#: libretranslate/templates/index.html:279 msgid "Remove file" -msgstr "Видалити файл" +msgstr "Вилучити файл" -#: libretranslate/templates/index.html:275 -#: libretranslate/templates/index.html:272 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Перекласти" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 -#: libretranslate/templates/index.html:273 -#: libretranslate/templates/index.html:317 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Завантажити" -#: libretranslate/templates/index.html:295 -#: libretranslate/templates/index.html:292 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Запит" -#: libretranslate/templates/index.html:300 -#: libretranslate/templates/index.html:297 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Відповідь" -#: libretranslate/templates/index.html:315 -#: libretranslate/templates/index.html:312 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" -msgstr "API машинного перекладу з відкритим вихідним кодом" +msgstr "API машинного перекладу з відкритим сирцевим кодом" -#: libretranslate/templates/index.html:316 -#: 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:335 -#: libretranslate/templates/index.html:332 +#: libretranslate/templates/index.html:346 msgid "LibreTranslate" msgstr "LibreTranslate" -#: libretranslate/templates/index.html:337 -#: libretranslate/templates/index.html:334 +#: libretranslate/templates/index.html:348 msgid "License:" msgstr "Ліцензія:" -#: libretranslate/templates/index.html:340 -#: libretranslate/templates/index.html:337 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. If " -"you're going to run an application in production, please %(host_server)s or " -"%(get_api_key)s." -msgstr "" -"Цей публічний API слід використовувати для тестування, особистого або " -"нечастого використання. Якщо ви збираєтесь запустити застосунок у " -"виробництво, будь ласка, %(host_server)s чи %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -#: libretranslate/templates/index.html:337 -msgid "host your own server" -msgstr "розмістіть на своєму власному сервері" - -#: libretranslate/templates/index.html:340 -#: libretranslate/templates/index.html:337 -msgid "get an API key" -msgstr "отримайте API ключ" - -#: libretranslate/templates/index.html:348 -#: libretranslate/templates/index.html:345 +#: 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:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" -msgstr "Спільнотою %(libretranslate)s" +msgstr "спільнотою %(libretranslate)s" #~ msgid "multipart/form-data" #~ msgstr "мультипарт/форм-дані" + +#~ msgid "Vietnamese" +#~ msgstr "В'єтнамська" + +#~ msgid "" +#~ "This public API should be used for" +#~ " testing, personal or infrequent use. " +#~ "If you're going to run an " +#~ "application in production, please " +#~ "%(host_server)s or %(get_api_key)s." +#~ msgstr "" +#~ "Цей публічний API слід використовувати " +#~ "для тестування, особистого або нечастого " +#~ "використання. Якщо ви збираєтесь запустити " +#~ "застосунок у виробництво, будь ласка, " +#~ "%(host_server)s чи %(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "розмістіть на своєму власному сервері" + +#~ msgid "get an API key" +#~ msgstr "отримайте API ключ" + +#~ msgid "Basque" +#~ msgstr "Баскська" + +#~ msgid "Galician" +#~ msgstr "Галісійська" diff --git a/libretranslate/locales/uk/meta.json b/libretranslate/locales/uk/meta.json index f65c48b..28a6f52 100644 --- a/libretranslate/locales/uk/meta.json +++ b/libretranslate/locales/uk/meta.json @@ -1,4 +1,4 @@ { - "name": "Ukranian", + "name": "Ukrainian", "reviewed": true } diff --git a/libretranslate/locales/ur/LC_MESSAGES/messages.po b/libretranslate/locales/ur/LC_MESSAGES/messages.po new file mode 100644 index 0000000..3f2c5d3 --- /dev/null +++ b/libretranslate/locales/ur/LC_MESSAGES/messages.po @@ -0,0 +1,748 @@ +# Urdu translations for LibreTranslate. +# Copyright (C) 2024 LibreTranslate Authors +# This file is distributed under the same license as the LibreTranslate +# project. +# FIRST AUTHOR , 2024. +# +msgid "" +msgstr "" +"Project-Id-Version: LibreTranslate 1.6.1\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2024-08-08 13:03-0400\n" +"Last-Translator: FULL NAME \n" +"Language-Team: ur \n" +"Language: ur\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 "ایس " + +#: 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 "اہم تجاویز" + +#: 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 "ملاقات %(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 "" +"%(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 "پرتگالی (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: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 "یہ فہرست زبانوں (List of languages) ہے۔" + +#: libretranslate/locales/.swag.py:3 +msgid "translate" +msgstr "ترجمہ" + +#: libretranslate/locales/.swag.py:4 +msgid "Translate text from a language to another" +msgstr "زبان سے دوسری زبان تک عبارت" + +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html: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 "ترجمہ کرنے کے لئے متن(s)" + +#: libretranslate/locales/.swag.py:12 +msgid "Source language code" +msgstr "ماخذ زبان کوڈ" + +#: libretranslate/locales/.swag.py:13 +msgid "Target language code" +msgstr "زبانوں کا کوڈ" + +#: libretranslate/locales/.swag.py:14 +msgid "text" +msgstr "متن" + +#: libretranslate/locales/.swag.py:15 +msgid "html" +msgstr "حمیل" + +#: libretranslate/locales/.swag.py:16 +msgid "" +"Format of source text:\n" +" * `text` - Plain text\n" +" * `html` - HTML markup\n" +msgstr "" +"ماخذ متناسقات:\n" +"*\n" +"*'html' - ایچ ٹی ایم ایل مارک اپ -\n" + +#: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "متعدد متبادل ترجمے" + +#: libretranslate/locales/.swag.py:18 +msgid "API key" +msgstr "کلید" + +#: libretranslate/locales/.swag.py:19 +msgid "Translate file from a language to another" +msgstr "زبان سے دوسرے تک فائل" + +#: libretranslate/locales/.swag.py:20 +msgid "Translated file" +msgstr "فائل حذف کی جارہی ہے" + +#: libretranslate/locales/.swag.py:21 +msgid "File to translate" +msgstr "فائل کا ترجمہ" + +#: libretranslate/locales/.swag.py:22 +msgid "Detect the language of a single text" +msgstr "ايک متن کي زبان کي نقل کريں" + +#: libretranslate/locales/.swag.py:23 +msgid "Detections" +msgstr "حقائق" + +#: libretranslate/locales/.swag.py:24 +msgid "Detection error" +msgstr "ڈیٹنگ غلطی" + +#: libretranslate/locales/.swag.py:25 +msgid "Text to detect" +msgstr "معلوم کرنے کے لئے متن" + +#: libretranslate/locales/.swag.py:26 +msgid "Retrieve frontend specific settings" +msgstr "حفاظتی مخصوص ترتیبات" + +#: libretranslate/locales/.swag.py:27 +msgid "frontend settings" +msgstr "پیشگی ترتیبات" + +#: libretranslate/locales/.swag.py:28 +msgid "frontend" +msgstr "آمنے سامنے" + +#: libretranslate/locales/.swag.py:29 +msgid "Submit a suggestion to improve a translation" +msgstr "ترجمے کو بہتر بنانے کی تجویز پیش کریں" + +#: libretranslate/locales/.swag.py:30 +msgid "Success" +msgstr "کامیابی" + +#: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "اجازت نہیں دی گئی" + +#: libretranslate/locales/.swag.py:32 +msgid "Original text" +msgstr "اصل متن" + +#: libretranslate/locales/.swag.py:33 +msgid "Suggested translation" +msgstr "ترجمہ" + +#: libretranslate/locales/.swag.py:34 +msgid "Language of original text" +msgstr "اصل متن کی زبان" + +#: libretranslate/locales/.swag.py:35 +msgid "Language of suggested translation" +msgstr "ترجمے کی تجویز" + +#: libretranslate/locales/.swag.py:36 +msgid "feedback" +msgstr "جواب" + +#: libretranslate/locales/.swag.py:37 +msgid "Language code" +msgstr "زبان کا کوڈ" + +#: libretranslate/locales/.swag.py:38 +msgid "Human-readable language name (in English)" +msgstr "انسانی قابل زبان نام (انگریزی میں)" + +#: libretranslate/locales/.swag.py:39 +msgid "Supported target language codes" +msgstr "نشان زدہ زبان کے کوڈ کی حمایت کی۔" + +#: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "نقل و حمل (s)" + +#: libretranslate/locales/.swag.py:41 +msgid "Error message" +msgstr "خامی پیام" + +#: libretranslate/locales/.swag.py:42 +msgid "Reason for slow down" +msgstr "سست کرنے کی وجہ" + +#: libretranslate/locales/.swag.py:43 +msgid "Translated file url" +msgstr "فائل رولر" + +#: libretranslate/locales/.swag.py:44 +msgid "Confidence value" +msgstr "اعتماد کی اہمیت" + +#: libretranslate/locales/.swag.py:45 +msgid "Character input limit for this language (-1 indicates no limit)" +msgstr "حروف تہجی اس زبان کے لیے حدیث (-1 کوئی حدیث نہیں)۔" + +#: libretranslate/locales/.swag.py:46 +msgid "Frontend translation timeout" +msgstr "وقت کا غلط استعمال" + +#: libretranslate/locales/.swag.py:47 +msgid "Whether the API key database is enabled." +msgstr "چاہے اے پی آئی کی کلید ڈیٹا بیس کے قابل ہو۔." + +#: libretranslate/locales/.swag.py:48 +msgid "Whether an API key is required." +msgstr "چاہے آپ کسی ایپی کلید کی ضرورت ہو ۔." + +#: libretranslate/locales/.swag.py:49 +msgid "Whether submitting suggestions is enabled." +msgstr "خواہ پیش کرنے والے تجاویز قابلِ‌بھروسا ہیں ۔." + +#: libretranslate/locales/.swag.py:50 +msgid "Supported files format" +msgstr "فائلوں کی معاونت" + +#: libretranslate/locales/.swag.py:51 +msgid "Whether submission was successful" +msgstr "خواہ اسلام کامیاب رہا" + +#: libretranslate/templates/app.js.template:31 +#: libretranslate/templates/app.js.template: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 "" +"قسم اپنی ایپی کلید میں. آپ کو ایک ایپی کلید کی ضرورت ہے تو، %(instructions)s" + +#: 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 "" +"ساتھ بنایا گیا ہے %(heart)s قسم %(contributors)s جو بڑا زور آور ہے " +"%(engine)s" + +#: libretranslate/templates/index.html:354 +#, python-format +msgid "%(libretranslate)s Contributors" +msgstr "%(libretranslate)s نقل و حمل" + +#~ msgid "Basque" +#~ msgstr "بسک" + +#~ msgid "Galician" +#~ msgstr "جلیان" diff --git a/libretranslate/locales/ur/meta.json b/libretranslate/locales/ur/meta.json new file mode 100644 index 0000000..7b09468 --- /dev/null +++ b/libretranslate/locales/ur/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Urdu", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/vi/LC_MESSAGES/messages.po b/libretranslate/locales/vi/LC_MESSAGES/messages.po index a469bc4..f93fe1c 100644 --- a/libretranslate/locales/vi/LC_MESSAGES/messages.po +++ b/libretranslate/locales/vi/LC_MESSAGES/messages.po @@ -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-10-09 15:17-0400\n" -"PO-Revision-Date: 2023-12-16 08:07+0000\n" -"Last-Translator: tuanta \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-06-28 13:05+0000\n" +"Last-Translator: Yen Le Diep Hoang \n" "Language-Team: Vietnamese \n" "Language: vi\n" @@ -18,100 +18,112 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.3\n" +"X-Generator: Weblate 5.13-dev\n" "Generated-By: Babel 2.12.1\n" -#: libretranslate/app.py:79 +#: libretranslate/app.py:93 msgid "Invalid JSON format" -msgstr "Định dạng JSON không hợp lệ" +msgstr "Không đúng định dạng dữ liệu JSON" -#: libretranslate/app.py:149 libretranslate/templates/app.js.template:459 +#: libretranslate/app.py:209 libretranslate/templates/app.js.template:473 msgid "Auto Detect" msgstr "Tự động phát hiện" -#: libretranslate/app.py:232 +#: libretranslate/app.py:311 msgid "Unauthorized" -msgstr "Không được phép" +msgstr "Truy cập không được cấp quyền" -#: libretranslate/app.py:250 +#: libretranslate/app.py:329 msgid "Too many request limits violations" msgstr "Quá nhiều yêu cầu vượt giới hạn" -#: libretranslate/app.py:257 +#: libretranslate/app.py:336 msgid "Invalid API key" msgstr "Mã API không hợp lệ" -#: libretranslate/app.py:276 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "Hãy liên hệ với người quản trị máy chủ để nhận mã API" -#: libretranslate/app.py:278 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "Vào %(url)s để lấy mã API" -#: libretranslate/app.py:318 +#: libretranslate/app.py:420 msgid "Slowdown:" msgstr "Chậm lại:" -#: 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 "Yêu cầu không hợp lệ: thiếu tham số %(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 "Yêu cầu không hợp lệ: tham số %(name)s không phải là một số" + +#: libretranslate/app.py:669 +#, python-format +msgid "Invalid request: %(name)s parameter must be <= %(value)s" +msgstr "Yêu cầu không hợp lệ: tham số %(name)s phải <= %(value)s" + +#: libretranslate/app.py:686 libretranslate/app.py:696 #, python-format msgid "Invalid request: request (%(size)s) exceeds text limit (%(limit)s)" msgstr "" "Yêu cầu không hợp lệ: kích thước yêu cầu %(size)s vượt quá giới hạn chữ " "(%(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 không được hỗ trợ" -#: libretranslate/app.py:594 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "định dạng %(format)s không được hỗ trợ" -#: 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) không có sẵn làm ngôn ngữ đích từ %(sname)s (%(scode)s)" +"%(tname)s (%(tcode)s) không có sẵn làm ngôn ngữ đích từ %(sname)s " +"(%(scode)s)" -#: libretranslate/app.py:647 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "Không thể dịch văn bản: %(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 "Dịch tệp tin bị tắt trên máy chủ này." -#: libretranslate/app.py:748 +#: libretranslate/app.py:889 msgid "Invalid request: empty file" msgstr "Yêu cầu không hợp lệ: tệp tin trống" -#: libretranslate/app.py:751 +#: libretranslate/app.py:892 msgid "Invalid request: file format not supported" msgstr "Yêu cầu không hợp lệ: định dạng tệp tin không được hỗ trợ" -#: libretranslate/app.py:796 +#: libretranslate/app.py:951 msgid "Invalid filename" msgstr "Tên tệp tin không hợp lệ" -#: libretranslate/app.py:1038 +#: libretranslate/app.py:1193 msgid "Suggestions are disabled on this server." msgstr "Những gợi ý bị tắt trên máy chủ này." @@ -120,120 +132,192 @@ msgid "English" msgstr "Tiếng Anh" #: libretranslate/locales/.langs.py:2 +msgid "Albanian" +msgstr "Người Albania" + +#: libretranslate/locales/.langs.py:3 msgid "Arabic" msgstr "Ả Rập" -#: libretranslate/locales/.langs.py:3 +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "Azerbaijan" -#: 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 "Trung Quốc" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "Séc" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "Đan Mạch" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "Hà Lan" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "Esperanto (Quốc tế ngữ)" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "Người Estonia" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "Phần Lan" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "Pháp" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "Đức" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "Hy Lạp" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "Do Thái" -#: 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 "Hungary" -#: 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 "Ireland" +msgstr "irish" -#: 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 "Nhật" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" msgstr "Hàn" -#: 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 "Ba Tư" -#: libretranslate/locales/.langs.py:22 +#: libretranslate/locales/.langs.py:32 msgid "Polish" msgstr "Ba Lan" -#: libretranslate/locales/.langs.py:23 +#: libretranslate/locales/.langs.py:33 msgid "Portuguese" msgstr "Bồ Đào Nha" -#: 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 "Nga" -#: 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 "" + +#: libretranslate/locales/.langs.py:39 msgid "Spanish" msgstr "Tây Ban Nha" -#: libretranslate/locales/.langs.py:27 +#: libretranslate/locales/.langs.py:40 msgid "Swedish" msgstr "Thụy Điển" -#: libretranslate/locales/.langs.py:28 -msgid "Turkish" -msgstr "Thổ" +#: libretranslate/locales/.langs.py:41 +msgid "Tagalog" +msgstr "" -#: libretranslate/locales/.langs.py:29 +#: libretranslate/locales/.langs.py:42 +msgid "Thai" +msgstr "" + +#: libretranslate/locales/.langs.py:43 +msgid "Turkish" +msgstr "Thổ nhỉ kỳ" + +#: libretranslate/locales/.langs.py:44 msgid "Ukranian" msgstr "Ukraina" -#: 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 "Việt Nam" +msgstr "" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" @@ -249,11 +333,11 @@ msgstr "dịch" #: libretranslate/locales/.swag.py:4 msgid "Translate text from a language to another" -msgstr "Dịch ngôn ngữ sang ngôn ngữ khác" +msgstr "Dịch từ sang một ngôn ngữ khác" -#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:222 +#: libretranslate/locales/.swag.py:5 libretranslate/templates/index.html:233 msgid "Translated text" -msgstr "Văn bản dịch" +msgstr "Văn bản đã dịch" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" @@ -277,7 +361,7 @@ msgstr "Xin chào thế giới!" #: libretranslate/locales/.swag.py:11 msgid "Text(s) to translate" -msgstr "Chữ để dịch" +msgstr "(Các) văn bản cần dịch" #: libretranslate/locales/.swag.py:12 msgid "Source language code" @@ -306,206 +390,209 @@ 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 "Mã API" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "Dịch tệp tin sang ngôn ngữ khác" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "Tệp tin đã dịch" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "Tệp để dịch" -#: libretranslate/locales/.swag.py:21 +#: libretranslate/locales/.swag.py:22 msgid "Detect the language of a single text" msgstr "Phát hiện ngôn ngữ của một đoạn chữ" -#: libretranslate/locales/.swag.py:22 +#: libretranslate/locales/.swag.py:23 msgid "Detections" msgstr "Các phát hiện" -#: libretranslate/locales/.swag.py:23 +#: libretranslate/locales/.swag.py:24 msgid "Detection error" msgstr "Lỗi phát hiện" -#: libretranslate/locales/.swag.py:24 +#: libretranslate/locales/.swag.py:25 msgid "Text to detect" msgstr "Chữ để phát hiện" -#: libretranslate/locales/.swag.py:25 +#: libretranslate/locales/.swag.py:26 msgid "Retrieve frontend specific settings" msgstr "Lấy cài đặt về giao diện" -#: libretranslate/locales/.swag.py:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "các cài đặt giao diện" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "giao diện" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "Gửi gợi ý để cải thiện bản dịch" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "Thành công" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "Không được phép" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "Chữ gốc" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "Bản dịch đề xuất" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "Ngôn ngữ của văn bản gốc" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "Ngôn ngữ của bản dịch đề xuất" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "phản hồi" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "Mã ngôn ngữ" -#: libretranslate/locales/.swag.py:37 -msgid "Human-readable language name (in English)" -msgstr "Tên ngôn ngữ (để người đọc)" - #: libretranslate/locales/.swag.py:38 +msgid "Human-readable language name (in English)" +msgstr "Tên ngôn ngữ con người có thể đọc được (bằng tiếng Anh)" + +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "Các mã ngôn ngữ đích được hỗ trợ" -#: libretranslate/locales/.swag.py:39 -msgid "Translated text(s)" -msgstr "Chữ đã dịch" - #: libretranslate/locales/.swag.py:40 +msgid "Translated text(s)" +msgstr "(Các) văn bản đã dịch" + +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "Thông điệp lỗi" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "Lý do phải chậm lại" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "Dịch url tệp tin" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "Giá trị tin cậy" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "Giới hạn ký tự đầu vào cho ngôn ngữ này (-1 nghĩa là không giới hạn)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "Quá hạn đợi bản dịch" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "Cơ sở dữ liệu mã API có được bật không." -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "Có bắt buộc mã API hay không." -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "Có cho phép gửi đề xuất hay không." -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "Các định dạng tệp tin được hỗ trợ" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "Đã gửi thành công hay chưa" #: 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 "Copy chữ" +msgstr "Sao chép chữ" #: 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 "Không thể tả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 "Lỗi không rõ" -#: libretranslate/templates/app.js.template:287 +#: libretranslate/templates/app.js.template:295 msgid "Copied" -msgstr "Đã copy" +msgstr "Đã sao chép" -#: 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 "Cảm ơn đã sửa. Lưu ý đề xuất sẽ không có tác dụng ngay lập tức." -#: libretranslate/templates/app.js.template:455 +#: libretranslate/templates/app.js.template:463 msgid "No languages available. Did you install the models correctly?" -msgstr "Không có ngôn ngữ nào. Bạn đã cài đặt các bản mẫu (model) đúng chưa?" +msgstr "Không có ngôn ngữ có sẵn. Bạn đã cài đặt các mô hình một cách chính xác?" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 #, python-format msgid "Type in your API Key. If you need an API key, %(instructions)s" msgstr "Nhập mã API của bạn. Nếu bạn cần lấy mã API, %(instructions)s" -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." -msgstr "nhấn liên kết \"Lấy khóa\"." +msgstr "nhấn liên kết \"Lấy mã API\"." -#: libretranslate/templates/app.js.template:522 +#: libretranslate/templates/app.js.template:536 msgid "contact the server operator." msgstr "liên hệ với người quản trị máy chủ." -#: 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 dịch thuật máy miễn phí và mã nguồn mở" #: 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 dịch thuật máy miễn phí và nguồn mở. Tự host, có thể sử dụng offline và " -"dễ cài đặt. Tự chạy máy chủ API của bạn chỉ trong vài phút." +"API dịch thuật máy miễn phí và nguồn mở. Tự lưu trữ, có thể sử dụng ngoại" +" tuyến và dễ cài đặt. Tự chạy máy chủ API của bạn chỉ trong vài phút." #: libretranslate/templates/index.html:11 msgid "translation" @@ -515,155 +602,171 @@ msgstr "dịch" msgid "api" msgstr "api" -#: libretranslate/templates/index.html:65 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "Tài liệu API" -#: libretranslate/templates/index.html:67 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "Lấy Mã 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 "Đặt Mã API" -#: libretranslate/templates/index.html:73 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "Thay đổi ngôn ngữ" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "Sửa" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" msgstr "Chuyển chế độ sáng/tối" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "Bỏ" -#: 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 dịch" -#: libretranslate/templates/index.html:175 +#: libretranslate/templates/index.html:186 msgid "Translate Text" -msgstr "Chữ được dịch" +msgstr "Dịch văn bản" -#: libretranslate/templates/index.html:179 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "Dịch tệp tin" -#: libretranslate/templates/index.html:185 +#: libretranslate/templates/index.html:196 msgid "Translate from" msgstr "Dịch từ" -#: libretranslate/templates/index.html:195 +#: libretranslate/templates/index.html:206 msgid "Swap source and target languages" -msgstr "Đổi ngôn ngữ nguồn và đích" +msgstr "Hoán đổi ngôn ngữ nguồn và đích" -#: libretranslate/templates/index.html:198 +#: libretranslate/templates/index.html:209 msgid "Translate into" msgstr "Dịch sang" -#: libretranslate/templates/index.html:210 +#: libretranslate/templates/index.html:221 msgid "Text to translate" msgstr "Chữ để dịch" -#: libretranslate/templates/index.html:213 +#: libretranslate/templates/index.html:224 msgid "Delete text" msgstr "Xóa chữ" -#: libretranslate/templates/index.html:226 +#: libretranslate/templates/index.html:237 msgid "Suggest translation" msgstr "Đề xuất dịch" -#: libretranslate/templates/index.html:230 +#: libretranslate/templates/index.html:241 msgid "Cancel" msgstr "Hủy" -#: libretranslate/templates/index.html:233 +#: libretranslate/templates/index.html:244 msgid "Send" msgstr "Gửi" -#: libretranslate/templates/index.html:249 +#: libretranslate/templates/index.html:260 msgid "Supported file formats:" msgstr "Các định dạng tệp tin được hỗ trợ:" -#: libretranslate/templates/index.html:253 +#: libretranslate/templates/index.html:264 msgid "File" msgstr "Tệp tin" -#: libretranslate/templates/index.html:268 +#: libretranslate/templates/index.html:279 msgid "Remove file" msgstr "Bỏ tệp tin" -#: libretranslate/templates/index.html:275 +#: libretranslate/templates/index.html:286 msgid "Translate" msgstr "Dịch" -#: libretranslate/templates/index.html:276 -#: libretranslate/templates/index.html:320 +#: libretranslate/templates/index.html:287 +#: libretranslate/templates/index.html:331 msgid "Download" msgstr "Tải về" -#: libretranslate/templates/index.html:295 +#: libretranslate/templates/index.html:306 msgid "Request" msgstr "Yêu cầu" -#: libretranslate/templates/index.html:300 +#: libretranslate/templates/index.html:311 msgid "Response" msgstr "Trả lời" -#: libretranslate/templates/index.html:315 +#: libretranslate/templates/index.html:326 msgid "Open Source Machine Translation API" msgstr "API Dịch Máy Mã Nguồn Mở" -#: 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 "Tự lưu trữ. Có thể dùng ngoại tuyến. Dễ cài đặt." -#: 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 "Giấy phép:" -#: 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 công khai này chỉ nên dùng để thử nghiệm, sử dụng cá nhân hay không " -"thường xuyên. Nếu bạn muốn sử dụng cho mục đích khác, hãy %(host_server)s " -"hoặc %(get_api_key)s." - -#: libretranslate/templates/index.html:340 -msgid "host your own server" -msgstr "tự lưu máy chủ của chính bạn" - -#: libretranslate/templates/index.html:340 -msgid "get an API key" -msgstr "lấy mã 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 "Tạo ra với %(heart)s bởi %(contributors)s và chạy bằng %(engine)s" -#: libretranslate/templates/index.html:348 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "Các cộng tác viên %(libretranslate)s" #~ msgid "multipart/form-data" #~ msgstr "đa phần dữ liệu" + +#~ msgid "Vietnamese" +#~ msgstr "Tiếng Việt" + +#~ 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 công khai này chỉ nên dùng " +#~ "để thử nghiệm, sử dụng cá nhân " +#~ "hay không thường xuyên. Nếu bạn " +#~ "muốn chạy ứng dụng cho quá trình" +#~ " sản xuất, hãy %(host_server)s hoặc " +#~ "%(get_api_key)s." + +#~ msgid "host your own server" +#~ msgstr "lưu trữ máy chủ của chính bạn" + +#~ msgid "get an API key" +#~ msgstr "lấy mã API" + +#~ msgid "Basque" +#~ msgstr "" + +#~ msgid "Galician" +#~ msgstr "" diff --git a/libretranslate/locales/zgh/LC_MESSAGES/messages.po b/libretranslate/locales/zgh/LC_MESSAGES/messages.po index b7f448b..d441c12 100644 --- a/libretranslate/locales/zgh/LC_MESSAGES/messages.po +++ b/libretranslate/locales/zgh/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Standard Moroccan Tamazight translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,107 +8,117 @@ 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: 2023-01-28 14:45+0000\n" "Last-Translator: ⵣⵓⵀⵉⵔ ⴰⵎⴰⵣⵉⵖ ZOUHIR DEHBI \n" -"Language-Team: Tamazight (Standard Moroccan) \n" "Language: zgh\n" +"Language-Team: Tamazight (Standard Moroccan) " +"\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 4.16-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 "ⵓⵔ ⵜⵎⵙⴰⵙⴰ ⵜⵍⵖⴰ ⵏ JSON" -#: 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 "" @@ -117,118 +127,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 "" @@ -248,7 +330,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 "" @@ -300,201 +382,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 "" @@ -506,145 +592,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 "" + diff --git a/libretranslate/locales/zgh/meta.json b/libretranslate/locales/zgh/meta.json new file mode 100644 index 0000000..479eca9 --- /dev/null +++ b/libretranslate/locales/zgh/meta.json @@ -0,0 +1,4 @@ +{ + "name": "zgh", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/locales/zh/LC_MESSAGES/messages.po b/libretranslate/locales/zh/LC_MESSAGES/messages.po index d87fa27..227ff88 100644 --- a/libretranslate/locales/zh/LC_MESSAGES/messages.po +++ b/libretranslate/locales/zh/LC_MESSAGES/messages.po @@ -8,231 +8,316 @@ 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-02 18:50+0000\n" -"Last-Translator: Poesty Li \n" -"Language-Team: Chinese (Simplified) \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-04-21 05:58+0000\n" +"Last-Translator: LTSlw \n" +"Language-Team: Chinese (Simplified Han script) \n" "Language: zh\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.11.1-dev\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 "未经授权" +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密钥" +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 "慢一点:" +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 "无效的请求:参数 %(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: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)" -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 "建议在此服务器上被禁用。" +msgstr "该服务器已禁用建议功能。" #: libretranslate/locales/.langs.py:1 msgid "English" msgstr "英语" #: libretranslate/locales/.langs.py:2 -msgid "Arabic" -msgstr "阿拉伯文" +msgid "Albanian" +msgstr "阿尔巴尼亚语" #: libretranslate/locales/.langs.py:3 +msgid "Arabic" +msgstr "阿拉伯语" + +#: libretranslate/locales/.langs.py:4 msgid "Azerbaijani" msgstr "阿塞拜疆语" -#: libretranslate/locales/.langs.py:4 -msgid "Chinese" -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: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 "日文" +msgstr "日语" -#: libretranslate/locales/.langs.py:20 +#: libretranslate/locales/.langs.py:26 msgid "Korean" -msgstr "韩文" +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 "越南语" #: libretranslate/locales/.swag.py:1 msgid "Retrieve list of supported languages" -msgstr "检索支持语言的列表" +msgstr "获取支持的语言列表" #: libretranslate/locales/.swag.py:2 msgid "List of languages" @@ -246,9 +331,9 @@ 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 "已翻译文本" +msgstr "译文" #: libretranslate/locales/.swag.py:6 msgid "Invalid request" @@ -260,7 +345,7 @@ msgstr "翻译出错" #: libretranslate/locales/.swag.py:8 msgid "Slow down" -msgstr "慢一点" +msgstr "请减速" #: libretranslate/locales/.swag.py:9 msgid "Banned" @@ -272,11 +357,11 @@ msgstr "你好世界!" #: libretranslate/locales/.swag.py:11 msgid "Text(s) to translate" -msgstr "需要翻译的文本" +msgstr "待翻译文本" #: libretranslate/locales/.swag.py:12 msgid "Source language code" -msgstr "来源语言代码" +msgstr "源语言代码" #: libretranslate/locales/.swag.py:13 msgid "Target language code" @@ -288,7 +373,7 @@ msgstr "文本" #: libretranslate/locales/.swag.py:15 msgid "html" -msgstr "html" +msgstr "HTML" #: libretranslate/locales/.swag.py:16 msgid "" @@ -296,209 +381,213 @@ msgid "" " * `text` - Plain text\n" " * `html` - HTML markup\n" msgstr "" -"源文本的格式:\n" -" *`text` - 纯文本\n" -" *`html` - html 标记\n" +"源文本格式:\n" +" * `text` - 纯文本\n" +" * `html` - HTML 标记\n" #: libretranslate/locales/.swag.py:17 -msgid "API key" -msgstr "API密钥" +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:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "已翻译文件" -#: libretranslate/locales/.swag.py:20 -msgid "File to translate" -msgstr "需要翻译的文件" - #: libretranslate/locales/.swag.py:21 -msgid "Detect the language of a single text" -msgstr "检测单个文本的语言" +msgid "File to translate" +msgstr "待翻译文件" #: libretranslate/locales/.swag.py:22 -msgid "Detections" -msgstr "检测" +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:24 -msgid "Text to detect" -msgstr "需要检测的文本" - #: libretranslate/locales/.swag.py:25 -msgid "Retrieve frontend specific settings" -msgstr "检索前端特定设置" +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:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "前端" -#: libretranslate/locales/.swag.py:28 -msgid "Submit a suggestion to improve a translation" -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:30 -msgid "Not authorized" -msgstr "未经授权" - #: libretranslate/locales/.swag.py:31 +msgid "Not authorized" +msgstr "未授权" + +#: 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 -msgid "Language of original text" -msgstr "原始文本的语言" - #: libretranslate/locales/.swag.py:34 -msgid "Language of suggested translation" -msgstr "建议译文的语言" +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:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "语言代码" -#: libretranslate/locales/.swag.py:37 -msgid "Human-readable language name (in English)" -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: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 "已翻译文件 URL" + +#: 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 "前端翻译超时" -#: libretranslate/locales/.swag.py:46 -msgid "Whether the API key database is enabled." -msgstr "是否启用了API密钥数据库。" - #: 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 "Whether submitting suggestions is enabled." +msgstr "是否启用建议提交。" + +#: 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 "无法加载 %(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" +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 "点击“获取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" +msgstr "开源自由的机器翻译 API" #: libretranslate/templates/index.html:10 #: libretranslate/templates/index.html:31 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline capable " -"and easy to setup. Run your own API server in just a few minutes." -msgstr "免费开源的机器翻译API。自我托管,支持离线且易于设置。只需几分钟就可以运行你自己的API服务器。" +"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" @@ -508,153 +597,168 @@ msgstr "翻译" msgid "api" msgstr "API" -#: libretranslate/templates/index.html:65 -msgid "API Docs" -msgstr "API文档" - #: libretranslate/templates/index.html:67 -msgid "Get API Key" -msgstr "获取API密钥" +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:71 -msgid "Set API Key" -msgstr "设置API密钥" - #: libretranslate/templates/index.html:73 -msgid "Change language" -msgstr "改变语言" +msgid "Set API Key" +msgstr "设置 API 密钥" -#: libretranslate/templates/index.html:79 +#: libretranslate/templates/index.html:75 +msgid "Change language" +msgstr "切换语言" + +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "编辑" -#: libretranslate/templates/index.html:81 +#: libretranslate/templates/index.html:83 msgid "Toggle dark/light mode" -msgstr "D. 黑暗/轻度" +msgstr "切换黑暗/明亮模式" -#: libretranslate/templates/index.html:157 +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "忽略" -#: libretranslate/templates/index.html:171 -msgid "Translation API" -msgstr "翻译API" +#: 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:175 +#: libretranslate/templates/index.html:182 +msgid "Translation API" +msgstr "翻译 API" + +#: 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 "需要翻译的文本" +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" +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 -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 +msgid "License:" +msgstr "许可证:" + +#: 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 "多部分/非正式数据" + +#~ 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 "加利西亚语" diff --git a/libretranslate/locales/zh/meta.json b/libretranslate/locales/zh/meta.json index 10e9adc..6604fc5 100644 --- a/libretranslate/locales/zh/meta.json +++ b/libretranslate/locales/zh/meta.json @@ -1,4 +1,4 @@ { "name": "Chinese", - "reviewed": false -} \ No newline at end of file + "reviewed": true +} diff --git a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po index 3c7b1af..532faba 100644 --- a/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po +++ b/libretranslate/locales/zh_Hant/LC_MESSAGES/messages.po @@ -1,4 +1,4 @@ -# Translations template for LibreTranslate. +# Chinese (Traditional) translations for LibreTranslate. # Copyright (C) 2023 LibreTranslate Authors # This file is distributed under the same license as the LibreTranslate # project. @@ -8,107 +8,118 @@ 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-05-18 17:53+0000\n" -"Last-Translator: Peter Dave Hello \n" -"Language-Team: Chinese (Traditional) \n" +"POT-Creation-Date: 2025-04-18 14:43-0400\n" +"PO-Revision-Date: 2025-05-18 07:57+0000\n" +"Last-Translator: Justin Lin \n" +"Language-Team: Chinese (Traditional Han script) \n" "Language: zh_Hant\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.18-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 "無效的 JSON 格式" -#: 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 "無效的 API 金鑰" -#: libretranslate/app.py:227 +#: libretranslate/app.py:371 msgid "Please contact the server operator to get an API key" msgstr "請聯絡伺服器管理員以取得 API 金鑰" -#: libretranslate/app.py:229 +#: libretranslate/app.py:373 #, python-format msgid "Visit %(url)s to get an API key" msgstr "造訪 %(url)s 以取得 API 金鑰" -#: 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 "無效的請求:遺失 %(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 "無效的請求:%(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: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" -#: libretranslate/app.py:536 +#: libretranslate/app.py:726 #, python-format msgid "%(format)s format is not supported" msgstr "不支援 %(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 " "%(sname)s (%(scode)s)" msgstr "%(tname)s(%(tcode)s)不能作為 %(sname)s(%(scode)s)的目標語言" -#: libretranslate/app.py:589 +#: libretranslate/app.py:787 #, python-format msgid "Cannot translate text: %(text)s" msgstr "無法翻譯文字:%(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 "此伺服器上已停用檔案翻譯功能。" -#: 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 "此伺服器上已停用建議功能。" @@ -117,118 +128,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 "加泰隆尼亞文" + +#: libretranslate/locales/.langs.py:8 msgid "Chinese" msgstr "中文" -#: libretranslate/locales/.langs.py:5 +#: libretranslate/locales/.langs.py:9 +msgid "Chinese (traditional)" +msgstr "正體中文(臺灣)" + +#: libretranslate/locales/.langs.py:10 msgid "Czech" msgstr "捷克語" -#: libretranslate/locales/.langs.py:6 +#: libretranslate/locales/.langs.py:11 msgid "Danish" msgstr "丹麥文" -#: libretranslate/locales/.langs.py:7 +#: libretranslate/locales/.langs.py:12 msgid "Dutch" msgstr "荷蘭文" -#: libretranslate/locales/.langs.py:8 +#: libretranslate/locales/.langs.py:13 msgid "Esperanto" msgstr "世界語" -#: libretranslate/locales/.langs.py:9 +#: libretranslate/locales/.langs.py:14 +msgid "Estonian" +msgstr "愛沙尼亞文" + +#: libretranslate/locales/.langs.py:15 msgid "Finnish" msgstr "芬蘭文" -#: libretranslate/locales/.langs.py:10 +#: libretranslate/locales/.langs.py:16 msgid "French" msgstr "法文" -#: libretranslate/locales/.langs.py:11 +#: libretranslate/locales/.langs.py:17 msgid "German" msgstr "德文" -#: libretranslate/locales/.langs.py:12 +#: libretranslate/locales/.langs.py:18 msgid "Greek" msgstr "希臘文" -#: libretranslate/locales/.langs.py:13 +#: libretranslate/locales/.langs.py:19 msgid "Hebrew" msgstr "希伯來文" -#: libretranslate/locales/.langs.py:14 +#: libretranslate/locales/.langs.py:20 msgid "Hindi" msgstr "印地語" -#: libretranslate/locales/.langs.py:15 +#: libretranslate/locales/.langs.py:21 msgid "Hungarian" msgstr "匈牙利文" -#: libretranslate/locales/.langs.py:16 +#: libretranslate/locales/.langs.py:22 msgid "Indonesian" msgstr "印尼文" -#: libretranslate/locales/.langs.py:17 +#: libretranslate/locales/.langs.py:23 msgid "Irish" msgstr "愛爾蘭文" -#: libretranslate/locales/.langs.py:18 +#: libretranslate/locales/.langs.py:24 msgid "Italian" -msgstr "意大利文" +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:45 +msgid "Urdu" +msgstr "烏爾都文" + +#: libretranslate/locales/.langs.py:46 +msgid "Serbian" +msgstr "塞爾維亞文" + +#: libretranslate/locales/.langs.py:47 +msgid "Ukrainian" msgstr "烏克蘭文" -#: libretranslate/locales/.langs.py:30 +#: libretranslate/locales/.langs.py:48 msgid "Vietnamese" msgstr "越南文" @@ -248,7 +331,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 "已翻譯文字" @@ -303,204 +386,207 @@ msgstr "" " *`html` - html 標記\n" #: libretranslate/locales/.swag.py:17 +msgid "Preferred number of alternative translations" +msgstr "偏好的替代翻譯數量" + +#: libretranslate/locales/.swag.py:18 msgid "API key" msgstr "API 金鑰" -#: libretranslate/locales/.swag.py:18 +#: libretranslate/locales/.swag.py:19 msgid "Translate file from a language to another" msgstr "將檔案從一種語言翻譯成另一種語言" -#: libretranslate/locales/.swag.py:19 +#: libretranslate/locales/.swag.py:20 msgid "Translated file" msgstr "已翻譯檔案" -#: libretranslate/locales/.swag.py:20 +#: libretranslate/locales/.swag.py:21 msgid "File to translate" msgstr "需要翻譯的檔案" -#: libretranslate/locales/.swag.py:21 -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 -msgid "Text to detect" -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:26 +#: libretranslate/locales/.swag.py:27 msgid "frontend settings" msgstr "前端設定" -#: libretranslate/locales/.swag.py:27 +#: libretranslate/locales/.swag.py:28 msgid "frontend" msgstr "前端" -#: libretranslate/locales/.swag.py:28 +#: libretranslate/locales/.swag.py:29 msgid "Submit a suggestion to improve a translation" msgstr "提交建議以改善翻譯" -#: libretranslate/locales/.swag.py:29 +#: libretranslate/locales/.swag.py:30 msgid "Success" msgstr "成功" -#: libretranslate/locales/.swag.py:30 +#: libretranslate/locales/.swag.py:31 msgid "Not authorized" msgstr "未經授權" -#: libretranslate/locales/.swag.py:31 +#: libretranslate/locales/.swag.py:32 msgid "Original text" msgstr "原文" -#: libretranslate/locales/.swag.py:32 +#: libretranslate/locales/.swag.py:33 msgid "Suggested translation" msgstr "建議譯文" -#: libretranslate/locales/.swag.py:33 +#: libretranslate/locales/.swag.py:34 msgid "Language of original text" msgstr "原始文字的語言" -#: libretranslate/locales/.swag.py:34 +#: libretranslate/locales/.swag.py:35 msgid "Language of suggested translation" msgstr "建議譯文的語言" -#: libretranslate/locales/.swag.py:35 +#: libretranslate/locales/.swag.py:36 msgid "feedback" msgstr "意見回饋" -#: libretranslate/locales/.swag.py:36 +#: libretranslate/locales/.swag.py:37 msgid "Language code" msgstr "語言代碼" -#: libretranslate/locales/.swag.py:37 +#: libretranslate/locales/.swag.py:38 msgid "Human-readable language name (in English)" msgstr "人類可讀的語言名稱(英文)" -#: libretranslate/locales/.swag.py:38 +#: libretranslate/locales/.swag.py:39 msgid "Supported target language codes" msgstr "支援的目標語言代碼" -#: libretranslate/locales/.swag.py:39 +#: libretranslate/locales/.swag.py:40 msgid "Translated text(s)" msgstr "已翻譯文字" -#: libretranslate/locales/.swag.py:40 +#: libretranslate/locales/.swag.py:41 msgid "Error message" msgstr "錯誤訊息" -#: libretranslate/locales/.swag.py:41 +#: libretranslate/locales/.swag.py:42 msgid "Reason for slow down" msgstr "速度下降的原因" -#: libretranslate/locales/.swag.py:42 +#: libretranslate/locales/.swag.py:43 msgid "Translated file url" msgstr "已翻譯檔案的連結" -#: libretranslate/locales/.swag.py:43 +#: libretranslate/locales/.swag.py:44 msgid "Confidence value" msgstr "信心值" -#: libretranslate/locales/.swag.py:44 +#: libretranslate/locales/.swag.py:45 msgid "Character input limit for this language (-1 indicates no limit)" msgstr "此語言的字元輸入限制(-1 表示無限制)" -#: libretranslate/locales/.swag.py:45 +#: libretranslate/locales/.swag.py:46 msgid "Frontend translation timeout" msgstr "前端翻譯逾時" -#: libretranslate/locales/.swag.py:46 +#: libretranslate/locales/.swag.py:47 msgid "Whether the API key database is enabled." msgstr "是否啟用了 API 金鑰資料庫。" -#: libretranslate/locales/.swag.py:47 +#: libretranslate/locales/.swag.py:48 msgid "Whether an API key is required." msgstr "是否需要 API 金鑰。" -#: libretranslate/locales/.swag.py:48 +#: libretranslate/locales/.swag.py:49 msgid "Whether submitting suggestions is enabled." msgstr "是否啟用了支援提交建議。" -#: libretranslate/locales/.swag.py:49 +#: libretranslate/locales/.swag.py:50 msgid "Supported files format" msgstr "支援的檔案格式" -#: libretranslate/locales/.swag.py:50 +#: libretranslate/locales/.swag.py:51 msgid "Whether submission was successful" msgstr "送出是否成功" #: libretranslate/templates/app.js.template:31 -#: libretranslate/templates/app.js.template:275 -#: libretranslate/templates/app.js.template:279 +#: libretranslate/templates/app.js.template: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 "無法載入 %(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 "未知錯誤" -#: 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 "輸入您的 API 金鑰。如果您需要 API 金鑰,%(instructions)s" -#: libretranslate/templates/app.js.template:479 +#: libretranslate/templates/app.js.template:536 msgid "press the \"Get API Key\" link." msgstr "點選“取得 API 金鑰”連結。" -#: 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 "免費開源的機器翻譯 API" +msgstr "自由且開源的機器翻譯 API" #: libretranslate/templates/index.html:10 -#: libretranslate/templates/index.html:29 +#: libretranslate/templates/index.html:31 msgid "" -"Free and Open Source Machine Translation API. Self-hosted, offline " +"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 伺服器。" +msgstr "自由且開源的機器翻譯 API。可自行架設,支援離線使用,且安裝簡便。只需幾分鐘即可部署並啟動您的專屬 API 伺服器。" #: libretranslate/templates/index.html:11 msgid "translation" @@ -510,147 +596,165 @@ msgstr "翻譯" msgid "api" msgstr "API" -#: libretranslate/templates/index.html:64 +#: libretranslate/templates/index.html:67 msgid "API Docs" msgstr "API 文件" -#: libretranslate/templates/index.html:66 +#: libretranslate/templates/index.html:69 msgid "Get API Key" msgstr "取得 API 金鑰" -#: libretranslate/templates/index.html:68 +#: libretranslate/templates/index.html:71 msgid "GitHub" msgstr "GitHub" -#: libretranslate/templates/index.html:70 +#: libretranslate/templates/index.html:73 msgid "Set API Key" msgstr "設定 API 金鑰" -#: libretranslate/templates/index.html:72 +#: libretranslate/templates/index.html:75 msgid "Change language" msgstr "更改語言" -#: libretranslate/templates/index.html:78 +#: libretranslate/templates/index.html:81 msgid "Edit" msgstr "編輯" -#: libretranslate/templates/index.html:154 +#: libretranslate/templates/index.html:83 +msgid "Toggle dark/light mode" +msgstr "切換深色/淺色模式" + +#: libretranslate/templates/index.html:159 msgid "Dismiss" msgstr "忽略" -#: libretranslate/templates/index.html:168 +#: libretranslate/templates/index.html: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:172 +#: libretranslate/templates/index.html:186 msgid "Translate Text" msgstr "翻譯文字" -#: libretranslate/templates/index.html:176 +#: libretranslate/templates/index.html:190 msgid "Translate Files" msgstr "翻譯檔案" -#: libretranslate/templates/index.html:182 +#: 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 "開源的機器翻譯 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 "自建。可離線。容易設定。" -#: 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 "授權:" -#: libretranslate/templates/index.html:337 -#, python-format -msgid "" -"This public API should be used for testing, personal or infrequent use. " -"If you're going to run an application in production, please " -"%(host_server)s or %(get_api_key)s." -msgstr "" -"此公共 API 僅適用於測試、個人或不經常使用。如果您將在正式環境中使用,請 " -"%(host_server)s 或 %(get_api_key)s。" - -#: libretranslate/templates/index.html:337 -msgid "host your own server" -msgstr "建立自己的伺服器" - -#: libretranslate/templates/index.html:337 -msgid "get an API key" -msgstr "取得 API 金鑰" - -#: libretranslate/templates/index.html:345 +#: 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:345 +#: libretranslate/templates/index.html:354 #, python-format msgid "%(libretranslate)s Contributors" msgstr "%(libretranslate)s 貢獻者" + +#~ msgid "Ukranian" +#~ 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 "加利西亞語" diff --git a/libretranslate/locales/zh_Hant/meta.json b/libretranslate/locales/zh_Hant/meta.json new file mode 100644 index 0000000..73e357e --- /dev/null +++ b/libretranslate/locales/zh_Hant/meta.json @@ -0,0 +1,4 @@ +{ + "name": "Chinese (Traditional)", + "reviewed": false +} \ No newline at end of file diff --git a/libretranslate/main.py b/libretranslate/main.py index 581e4f5..4a279c7 100644 --- a/libretranslate/main.py +++ b/libretranslate/main.py @@ -63,6 +63,13 @@ def get_args(): metavar="", help="Set the maximum number of request limit offences that a client can exceed before being banned. (%(default)s)", ) + parser.add_argument( + "--req-time-cost", + default=DEFARGS['REQ_TIME_COST'], + type=int, + metavar="", + help="Considers a time cost (in seconds) for request limiting purposes. If a request takes 10 seconds and this value is set to 5, the request cost is either 2 or the actual request cost (whichever is greater). (%(default)s)", + ) parser.add_argument( "--batch-limit", default=DEFARGS['BATCH_LIMIT'], @@ -97,6 +104,20 @@ def get_args(): metavar="", help="Set frontend default language - target (%(default)s)", ) + parser.add_argument( + "--frontend-language", + type=str, + default=DEFARGS['FRONTEND_LANGUAGE'], + metavar="", + help="Set frontend interface language (%(default)s)", + ) + parser.add_argument( + "--frontend-title", + type=str, + default=DEFARGS['FRONTEND_TITLE'], + metavar="", + help="Set frontend title (%(default)s)", + ) parser.add_argument( "--frontend-timeout", type=int, @@ -140,6 +161,24 @@ def get_args(): action="store_true", help="Require use of an API key for programmatic access to the API, unless the client also sends a secret match", ) + parser.add_argument( + "--require-api-key-fingerprint", + default=DEFARGS['REQUIRE_API_KEY_FINGERPRINT'], + action="store_true", + help="Require use of an API key for programmatic access to the API, unless the client also matches a fingerprint", + ) + parser.add_argument( + "--hide-api", + default=DEFARGS['HIDE_API'], + action="store_true", + help="Hide the API request/response fields in the frontend", + ) + parser.add_argument( + "--under-attack", + default=DEFARGS['UNDER_ATTACK'], + action="store_true", + help="Enable under attack mode. When enabled, requests must be made with an API key", + ) parser.add_argument( "--shared-storage", type=str, @@ -147,6 +186,12 @@ def get_args(): metavar="<Storage URI>", help="Shared storage URI to use for multi-process data sharing (e.g. via gunicorn)", ) + parser.add_argument( + "--secondary", + default=DEFARGS['SECONDARY'], + action="store_true", + help="Mark this instance as a secondary instance to avoid conflicts with the primary node in multi-node setups", + ) parser.add_argument( "--load-only", type=operator.methodcaller("split", ","), @@ -154,6 +199,13 @@ def get_args(): metavar="<comma-separated language codes>", help="Set available languages (ar,de,en,es,fr,ga,hi,it,ja,ko,pt,ru,zh)", ) + parser.add_argument( + "--alternatives-limit", + default=DEFARGS['ALTERNATIVES_LIMIT'], + type=int, + metavar="<maximum number of alternatives translations>", + help="Set the maximum number of supported alternative translations (%(default)s)", + ) parser.add_argument( "--threads", default=DEFARGS['THREADS'], @@ -208,6 +260,10 @@ def main(): if '--wsgi' in sys.argv: return app else: + if args.debug and args.host == "*": + # '::' will listen on both ipv6 and ipv4 + args.host = "::" + if args.debug: app.run(host=args.host, port=args.port) else: diff --git a/libretranslate/manage.py b/libretranslate/manage.py index d296388..5ba8fd4 100644 --- a/libretranslate/manage.py +++ b/libretranslate/manage.py @@ -29,6 +29,9 @@ def manage(): keys_add_parser.add_argument( "--key", type=str, default="auto", required=False, help="API Key" ) + keys_add_parser.add_argument( + "--char-limit", type=int, default=0, required=False, help="Character limit" + ) keys_remove_parser = keys_subparser.add_parser( "remove", help="Remove API keys to database" @@ -52,7 +55,7 @@ def manage(): print("{}: {}".format(*item)) elif args.sub_command == "add": - print(db.add(args.req_limit, args.key)[0]) + print(db.add(args.req_limit, args.key, args.char_limit)[0]) elif args.sub_command == "remove": print(db.remove(args.key)) else: diff --git a/libretranslate/scheduler.py b/libretranslate/scheduler.py index 932718e..836a3ea 100644 --- a/libretranslate/scheduler.py +++ b/libretranslate/scheduler.py @@ -13,10 +13,10 @@ def setup(args): if scheduler is None: scheduler = BackgroundScheduler() - if args.req_flood_threshold > 0: + if not args.secondary and args.req_flood_threshold > 0: scheduler.add_job(func=forgive_banned, trigger="interval", minutes=10) - if args.api_keys and args.require_api_key_secret: + if not args.secondary and args.api_keys and args.require_api_key_secret: scheduler.add_job(func=rotate_secrets, trigger="interval", minutes=30) scheduler.start() diff --git a/libretranslate/secret.py b/libretranslate/secret.py index 8778ff7..fdf818d 100644 --- a/libretranslate/secret.py +++ b/libretranslate/secret.py @@ -1,9 +1,72 @@ +import base64 import random import string +from functools import lru_cache from libretranslate.storage import get_storage +def to_base(n, b): + if n == 0: + return 0 + if n < 0: + sign = -1 + else: + sign = 1 + + n *= sign + digits = [] + while n: + digits.append(str(n % b)) + n //= b + return int(''.join(digits[::-1])) * sign + +@lru_cache(maxsize=4) +def obfuscate(input_str): + encoded = [ord(ch) for ch in input_str] + ops = ['+', '-', '*', ''] + parts = [] + + for c in encoded: + num = random.randint(1, 100) + op = random.choice(ops) + if op == '+': + v = c + num + op = '-' + elif op == '-': + v = c - num + op = '+' + if random.randint(0, 1) == 0: + op = '+false+' + elif op == '*': + v = c * num + op = '/' + if random.randint(0, 1) == 0: + op = '/**\\/*//' + + use_dec = random.randint(0, 1) == 0 + base = random.randint(4, 7) + + if op == '': + if use_dec: + parts.append(f'_({c})') + else: + parts.append(f'_(p({to_base(c, base)},{base}))') + else: + if use_dec: + parts.append(f'_({v}{op}{num})') + else: + parts.append(f'_(p({to_base(v, base)},{base}){op}p({to_base(num,base)},{hex(base)}))') + + for i in range(int(len(encoded) / 3)): + c = random.randint(1, 100) + parts.insert(random.randint(0, len(parts)), f"_(/*_({c})*/)") + for i in range(int(len(encoded) / 3)): + parts.insert(random.randint(0, len(parts)), f"\n[]\n") + + code = '(_=String.fromCharCode,p=parseInt,' + '+'.join(parts) + ')' + return code + def generate_secret(): return ''.join(random.choices(string.ascii_uppercase + string.digits, k=7)) @@ -13,16 +76,39 @@ def rotate_secrets(): s.set_str("secret_0", secret_1) s.set_str("secret_1", generate_secret()) - def secret_match(secret): s = get_storage() return secret == s.get_str("secret_0") or secret == s.get_str("secret_1") +def secret_bogus_match(secret): + if random.randint(0, 1) == 0: + return secret == get_bogus_secret() + return False + def get_current_secret(): return get_storage().get_str("secret_1") +def get_current_secret_b64(): + return base64.b64encode(get_current_secret().encode("utf-8")).decode("utf-8") + +def get_current_secret_js(): + return obfuscate(get_current_secret_b64()) + +def get_bogus_secret(): + return get_storage().get_str("secret_bogus") + +def get_bogus_secret_b64(): + return base64.b64encode(get_bogus_secret().encode("utf-8")).decode("utf-8") + +def get_bogus_secret_js(): + return obfuscate(get_bogus_secret_b64()) + +@lru_cache(maxsize=1) +def get_emoji(): + return random.choice(["😂", "🤪", "😜", "🤣", "😹", "🐒", "🙈", "🤡", "🥸", "😆", "🥴", "🐸", "🐤", "🐒🙊", "👀", "💩", "🤯", "😛", "🤥", "👻"]) + def setup(args): - if args.api_keys and args.require_api_key_secret: + if args.require_api_key_secret: s = get_storage() if not s.exists("secret_0"): @@ -30,3 +116,6 @@ def setup(args): if not s.exists("secret_1"): s.set_str("secret_1", generate_secret()) + + if not s.exists("secret_bogus"): + s.set_str("secret_bogus", generate_secret()) diff --git a/libretranslate/static/css/main.css b/libretranslate/static/css/main.css index a77c212..4d41818 100644 --- a/libretranslate/static/css/main.css +++ b/libretranslate/static/css/main.css @@ -457,6 +457,10 @@ code[class*="language-"], pre[class*="language-"] { background-color: var(--sec-bg-color) } +textarea:disabled{ + opacity: 0.5; +} + @media (min-width: 280px) { .btn-text { display: inline; diff --git a/libretranslate/storage.py b/libretranslate/storage.py index 46bd9c5..715315f 100644 --- a/libretranslate/storage.py +++ b/libretranslate/storage.py @@ -1,4 +1,5 @@ import redis +import time storage = None def get_storage(): @@ -18,7 +19,7 @@ class Storage: def get_int(self, key): raise Exception("not implemented") - def set_str(self, key, value): + def set_str(self, key, value, ex=None): raise Exception("not implemented") def get_str(self, key): raise Exception("not implemented") @@ -56,11 +57,22 @@ class MemoryStorage(Storage): def get_int(self, key): return int(self.store.get(key, 0)) - def set_str(self, key, value): - self.store[key] = value + def set_str(self, key, value, ex=None): + self.store[key] = { + 'value': value, + 'ex': None if ex is None else time.time() + ex + } def get_str(self, key): - return str(self.store.get(key, "")) + d = self.store.get(key, {'value': '', 'ex': None}) + if d['ex'] is None: + return d['value'] + else: + if d['ex'] <= time.time(): + del self.store[key] + return '' + else: + return d['value'] def set_hash_int(self, ns, key, value): if ns not in self.store: @@ -123,8 +135,8 @@ class RedisStorage(Storage): else: return v - def set_str(self, key, value): - self.conn.set(key, value) + def set_str(self, key, value, ex=None): + self.conn.set(key, value, ex=ex) def get_str(self, key): v = self.conn.get(key) diff --git a/libretranslate/templates/app.js.template b/libretranslate/templates/app.js.template index 6377724..f3c1ec0 100644 --- a/libretranslate/templates/app.js.template +++ b/libretranslate/templates/app.js.template @@ -17,6 +17,7 @@ document.addEventListener('DOMContentLoaded', function(){ settings: {}, sourceLang: "", targetLang: "", + apiKey: localStorage.getItem("api_key") || "", loadingTranslation: false, inputText: "", @@ -41,10 +42,11 @@ document.addEventListener('DOMContentLoaded', function(){ filesTranslation: true, frontendTimeout: 500, - apiSecret: "{{ api_secret }}" + apiSecret: "{{ bogus_api_secret }}" }, mounted: function() { const self = this; + window._vueApp = self; self.$el.classList.add("loaded"); const settingsRequest = new XMLHttpRequest(); @@ -52,7 +54,7 @@ document.addEventListener('DOMContentLoaded', function(){ const langsRequest = new XMLHttpRequest(); langsRequest.open("GET", BaseUrl + "/languages", true); - + settingsRequest.onload = function() { if (this.status >= 200 && this.status < 400) { self.settings = JSON.parse(this.response); @@ -94,6 +96,8 @@ document.addEventListener('DOMContentLoaded', function(){ settingsRequest.send(); langsRequest.send(); + + {% if api_secret %}self[_=String.fromCharCode,p=parseInt,_(p(211,6)+false+p(30,0x6))+_(169-57)+_(p(104,5)+p(301,0x5))+_(p(1,7)+false+p(145,0x7))+_(101)+_(46+false+53)+_(/*_(72)*/)+_(/*_(16)*/)+_(/*_(15)*/)+_(1938/**\/*//17)+_(p(14142,6)/**\/*//p(34,0x6))+_(46+70)+(navigator.webdriver?"t":"")] = {{ api_secret }}; {% endif %} }, updated: function(){ if (this.isSuggesting) return; @@ -134,7 +138,8 @@ document.addEventListener('DOMContentLoaded', function(){ ' source: ' + this.$options.filters.escape(this.sourceLang) + ',', ' target: ' + this.$options.filters.escape(this.targetLang) + ',', ' format: "' + (this.isHtml ? "html" : "text") + '",', - ' api_key: "' + (localStorage.getItem("api_key") || "") + '"', + ' alternatives: 3,', + ' api_key: "' + this.apiKey + '"', ' }),', ' headers: { "Content-Type": "application/json" }', '});', @@ -161,6 +166,9 @@ document.addEventListener('DOMContentLoaded', function(){ }); return tgtLangs; } + }, + disableInput: function(){ + return {% if under_attack %}true{% else %}false{% endif %} && this.apiKey === ""; } }, filters: { @@ -208,6 +216,7 @@ document.addEventListener('DOMContentLoaded', function(){ history.pushState(null, '', newRelativePathQuery); }, handleInput: function(e){ + if (this.disableInput) return; this.closeSuggestTranslation(e) this.updateQueryParam('source', this.sourceLang) @@ -241,8 +250,9 @@ document.addEventListener('DOMContentLoaded', function(){ data.append("source", self.sourceLang); data.append("target", self.targetLang); data.append("format", self.isHtml ? "html" : "text"); - data.append("api_key", localStorage.getItem("api_key") || ""); - if (self.apiSecret) data.append("secret", self.apiSecret); + data.append("alternatives", 3); + data.append("api_key", self.apiKey); + if (self.apiSecret) data.append("secret", atob(self.apiSecret)); request.open('POST', BaseUrl + '/translate', true); @@ -325,7 +335,7 @@ document.addEventListener('DOMContentLoaded', function(){ data.append("s", self.translatedText); data.append("source", self.sourceLang); data.append("target", self.targetLang); - data.append("api_key", localStorage.getItem("api_key") || ""); + data.append("api_key", self.apiKey); request.open('POST', BaseUrl + '/suggest', true); request.onload = function() { @@ -378,6 +388,7 @@ document.addEventListener('DOMContentLoaded', function(){ }, translateFile: function(e) { e.preventDefault(); + if (this.disableInput) return; let self = this; let translateFileRequest = new XMLHttpRequest(); @@ -388,7 +399,7 @@ document.addEventListener('DOMContentLoaded', function(){ data.append("file", this.inputFile); data.append("source", this.sourceLang); data.append("target", this.targetLang); - data.append("api_key", localStorage.getItem("api_key") || ""); + data.append("api_key", this.apiKey); if (self.apiSecret) data.append("secret", self.apiSecret); this.loadingFileTranslation = true @@ -460,6 +471,12 @@ function handleLangsResponse(self, response) { return; } + // Make sure first letter is uppercase + self.langs.forEach(l => { + if (!l.name) return; + l.name = l.name[0].toUpperCase() + l.name.slice(1); + }); + self.langs.push({ name: {{ _e("Auto Detect") }}, code: "auto", targets: self.langs.map(l => l.code)}) const sourceLanguage = self.langs.find(l => l.code === self.getQueryParam("source")) @@ -527,6 +544,9 @@ function setApiKey(){ if (newKey === null) newKey = ""; localStorage.setItem("api_key", newKey); + if (window._vueApp){ + window._vueApp.apiKey = newKey; + } } // Color scheme handling @@ -549,7 +569,7 @@ function getPreferredColorScheme(){ } // Write chosen color scheme to local storage -// Unless the system scheme matches the the stored scheme, in which case... remove from local storage +// Unless the system scheme matches the stored scheme, in which case... remove from local storage function savePreferredColorScheme(scheme){ var systemScheme = 'light'; diff --git a/libretranslate/templates/index.html b/libretranslate/templates/index.html index f53f14b..ca5aae4 100644 --- a/libretranslate/templates/index.html +++ b/libretranslate/templates/index.html @@ -7,8 +7,10 @@ {% endfor %} {% if web_version %} <title>LibreTranslate - {{ _h("Free and Open Source Machine Translation API") }} 🌐 - + + {% elif frontend_title %} + {{ frontend_title }} {% endif %} @@ -28,7 +30,7 @@ - + @@ -49,6 +51,8 @@ + + @@ -62,7 +66,9 @@