feat(koplugin): add i18n catalog and sync info dialog (#4050)

- i18n loader at apps/readest.koplugin/i18n.lua: isolated callable,
  falls back to KOReader's gettext when a string is untranslated
- Translation catalog at locales/<i18next-code>/translation.po for 31
  languages, mirroring apps/readest-app/public/locales/
- scripts/extract-i18n.js (scan _("...") and _([[...]]); preserve
  existing, drop obsolete, add new) and scripts/apply-translations.js
  (bulk import from /tmp/koplugin-translations/<lang>.json)
- Mirror apps/readest-app SyncInfoDialog: rename showMetaHashInfo to
  showSyncInfo, dialog title "Sync Info", new Last Synced row computed
  as max(last_synced_at_config, last_synced_at_notes) from doc_settings
- syncconfig.lua / syncannotations.lua mark per-book sync timestamps
  on push/pull success
- Rename "Meta Hash" -> "Book Fingerprint" in koplugin and
  apps/readest-app SyncInfoDialog.tsx; translations propagated to
  all readest-app locales
- "book config" -> "reading progress" wording across user-facing
  strings (matches QiuYukang fork terminology)
- Replace "Log out as " / "Login failed: " concat prefixes with
  T(_("...%1..."), arg) placeholder pattern (RTL / verb-final friendly)
- pnpm lint:lua: luajit -b syntax check across koplugin .lua files;
  soft-skips when luajit is missing locally; CI installs luajit and
  runs the check unconditionally

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Huang Xin
2026-05-04 11:35:36 +08:00
committed by GitHub
parent 7bb1133706
commit c59097b0ac
77 changed files with 7599 additions and 126 deletions
+3
View File
@@ -72,6 +72,9 @@ jobs:
run: |
pnpm install && pnpm setup-vendors
- name: install LuaJIT (for koplugin lint)
run: sudo apt-get update && sudo apt-get install -y luajit
- name: run format check
run: |
pnpm format:check || (pnpm format && git diff && exit 1)
@@ -20,6 +20,7 @@
- [D-pad Navigation](dpad-navigation.md) — Android TV remote / keyboard arrow navigation design, key files, and pitfalls
- [Cloudflare Workers WebSocket](cloudflare-workers-websocket.md) — use fetch() Upgrade pattern (not `ws` npm); CF delivers binary frames as Blob (must serialize async decodes)
- [Share-a-Book Feature (in progress)](share-feature.md) — locked decisions for the /s/{token} share-link feature; plan at ~/.claude/plans/ok-we-will-learn-cosmic-acorn.md
- [readest.koplugin i18n](koplugin-i18n.md) — gettext loader at `apps/readest.koplugin/i18n.lua`, `.po` catalog at `locales/<i18next-code>/translation.po`, extract/apply scripts in `scripts/`
## Patterns
- [Virtuoso + OverlayScrollbars](virtuoso_overlayscrollbars.md) — useOverlayScrollbars hook integration for overlay scrollbars on mobile webviews
@@ -0,0 +1,44 @@
---
name: readest.koplugin i18n system
description: Custom gettext loader, .po catalog layout, and extract/apply scripts for the KOReader plugin at apps/readest.koplugin/
type: reference
originSessionId: 08cfd0cd-b710-4674-9c90-d2ae4827d071
---
The KOReader plugin (`apps/readest.koplugin/`) has its own gettext-based i18n system, parallel to but separate from the readest-app i18next setup.
## Loader
- File: `apps/readest.koplugin/i18n.lua` — isolated module, returns a callable table via `setmetatable({}, {__call = ...})`, so `_("msg")` syntax works as a drop-in replacement for `require("gettext")`. Provides `ngettext`/`pgettext`/`npgettext` too. Falls back to KOReader's native `gettext` for missing strings.
- All Lua sources do `local _ = require("i18n")` (not `require("gettext")`).
- **Never rename `i18n.lua` to `gettext.lua`** — it would shadow KOReader's module via `require("gettext")` and break the fallback chain (recursive require / never loaded).
## Catalog layout
- `apps/readest.koplugin/locales/<lang>/translation.po` — mirrors `apps/readest-app/public/locales/<lang>/translation.json` exactly, using **i18next-style codes** (`zh-CN`, not `zh_CN`).
- The loader converts KOReader's locale (e.g. `zh_CN.utf8``zh-CN`) before lookup.
- Fallback chain: full code → base lang (`pt_BR``pt`) → `zh-CN` for any unspecified zh variant.
- Language list is the single source of truth at `apps/readest-app/i18next-scanner.config.cjs` (`options.lngs`) — currently 31 languages.
## Scripts (in `apps/readest.koplugin/scripts/`)
- **`extract-i18n.js`** — primary tool. Run with `node scripts/extract-i18n.js`. Scans `*.lua` for `_("...")`, `_('...')`, and `_([[...]])` (with proper Lua-escape handling), reads each `.po`, **preserves existing translations**, adds new msgids with empty `msgstr`, drops obsolete msgids. Idempotent.
- **`apply-translations.js`** — bulk applier. Reads `/tmp/koplugin-translations/<lang>.json` files (key = msgid, value = translation) and fills empty `msgstr ""` lines only — **never overwrites** existing translations.
## Workflow for adding/changing strings
1. Edit Lua source(s). Use `_("Foo")` or `T(_("Foo %1"), arg)` (`T` from `require("ffi/util").template`) — **never** `_("Foo ") .. arg`, because RTL/verb-final languages can't reorder the placeholder.
2. `node scripts/extract-i18n.js` — adds new empty msgids, drops obsolete.
3. To translate: drop `<lang>.json` files into `/tmp/koplugin-translations/`, then `node scripts/apply-translations.js`.
4. Verify with `luac -p apps/readest.koplugin/*.lua` and re-run `extract-i18n.js` (should report no changes — idempotency check).
## Translation conventions
- Brand names "Readest" and "KOReader" stay untranslated.
- Technical terms ("PDF", "API", "URL", "Supabase", "Hash") generally kept as-is, sometimes transliterated in non-Latin scripts.
- Dialog title = title case (`Sync Info`); menu item label = sentence case (`Sync info`).
- Lower-confidence translations (bo, si, ta, bn, sl, fa) deserve native-speaker review.
## Storage conventions for plugin state
- Global plugin state: `G_reader_settings:saveSetting("readest_sync", settings)` — login tokens, auto-sync flag, etc.
- Per-book state: `ui.doc_settings:readSetting("readest_sync")` table — keys like `meta_hash_v1`, `last_synced_at_config`, `last_synced_at_notes` (seconds since epoch).
+2 -1
View File
@@ -17,7 +17,8 @@
"dev-android": "tauri android build -t aarch64 -- --features devtools && adb install -r src-tauri/gen/android/app/build/outputs/apk/universal/release/app-universal-release.apk",
"dev-ios": "tauri ios build -- --features devtools && ideviceinstaller -i src-tauri/gen/apple/build/arm64/Readest.ipa",
"i18n:extract": "i18next-scanner --config i18next-scanner.config.cjs",
"lint": "tsgo --noEmit && biome check .",
"lint": "tsgo --noEmit && biome check . && pnpm lint:lua",
"lint:lua": "node scripts/lint-koplugin.js",
"test": "dotenv -e .env -e .env.test.local -- vitest",
"test:coverage": "dotenv -e .env -e .env.test.local -- vitest run --coverage",
"test:browser": "dotenv -e .env -e .env.test.local -- vitest run --config vitest.browser.config.mts",
@@ -1274,8 +1274,6 @@
"{{count}} failed_many": "{{count}} فشل",
"{{count}} failed_other": "{{count}} فشل",
"(none)": "(لا شيء)",
"Meta Hash": "تجزئة البيانات الوصفية",
"Computed Hash": "التجزئة المحسوبة",
"Identifiers": "المعرفات",
"Read (Stream)": "قراءة (بث)",
"Failed to start stream": "فشل بدء البث",
@@ -1421,5 +1419,6 @@
"URL Template": "قالب URL",
"Use %WORD% where the looked-up word should appear.": "استخدم %WORD% حيث يجب أن تظهر الكلمة المبحوث عنها.",
"Open the search result in your browser:": "افتح نتيجة البحث في متصفحك:",
"Open in {{name}}": "افتح في {{name}}"
"Open in {{name}}": "افتح في {{name}}",
"Book Fingerprint": "بصمة الكتاب"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}}টি ব্যর্থ",
"{{count}} failed_other": "{{count}}টি ব্যর্থ",
"(none)": "(কোনোটি না)",
"Meta Hash": "মেটা হ্যাশ",
"Computed Hash": "গণিত হ্যাশ",
"Identifiers": "শনাক্তকারী",
"Read (Stream)": "পড়ুন (স্ট্রিম)",
"Failed to start stream": "স্ট্রিম শুরু করতে ব্যর্থ",
@@ -1329,5 +1327,6 @@
"URL Template": "URL টেমপ্লেট",
"Use %WORD% where the looked-up word should appear.": "যেখানে অনুসন্ধান করা শব্দ উপস্থিত হওয়া উচিত সেখানে %WORD% ব্যবহার করুন।",
"Open the search result in your browser:": "আপনার ব্রাউজারে অনুসন্ধান ফলাফল খুলুন:",
"Open in {{name}}": "{{name}}-এ খুলুন"
"Open in {{name}}": "{{name}}-এ খুলুন",
"Book Fingerprint": "বইয়ের ফিঙ্গারপ্রিন্ট"
}
@@ -1189,8 +1189,6 @@
"Retry all": "ཡོད་ཚད་ཡང་སྐྱར།",
"{{count}} failed_other": "{{count}} ཕམ་ཁ།",
"(none)": "(མེད)",
"Meta Hash": "དཔྱད་གཞིའི་ཧེཤི",
"Computed Hash": "རྩིས་པའི་ཧེཤི",
"Identifiers": "ངོས་འཛིན་བྱེད་མཁན",
"Read (Stream)": "ཀློག་པ། (རྒྱུན་སྤེལ།)",
"Failed to start stream": "རྒྱུན་སྤེལ་འགོ་འཛུགས་མ་ཐུབ།",
@@ -1306,5 +1304,6 @@
"URL Template": "URL ཕྱི་མོ",
"Use %WORD% where the looked-up word should appear.": "འཚོལ་བཤེར་བྱས་པའི་ཚིག་འཆར་ས་གནས་སུ་ %WORD% བཀོལ་སྤྱོད་གནང་རོགས།",
"Open the search result in your browser:": "ཁྱེད་ཀྱི་བརྡ་འཚོལ་མཁོ་ཆས་ལ་འཚོལ་བཤེར་གྲུབ་འབྲས་ཁ་ཕྱེ:",
"Open in {{name}}": "{{name}} ནང་ཁ་ཕྱེ།"
"Open in {{name}}": "{{name}} ནང་ཁ་ཕྱེ།",
"Book Fingerprint": "དཔེ་ཆའི་མཛུབ་རྗེས།"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} fehlgeschlagen",
"{{count}} failed_other": "{{count}} fehlgeschlagen",
"(none)": "(keine)",
"Meta Hash": "Meta-Hash",
"Computed Hash": "Berechneter Hash",
"Identifiers": "Bezeichner",
"Read (Stream)": "Lesen (Stream)",
"Failed to start stream": "Stream konnte nicht gestartet werden",
@@ -1329,5 +1327,6 @@
"URL Template": "URL-Vorlage",
"Use %WORD% where the looked-up word should appear.": "Verwenden Sie %WORD%, wo das gesuchte Wort erscheinen soll.",
"Open the search result in your browser:": "Öffne das Suchergebnis in deinem Browser:",
"Open in {{name}}": "In {{name}} öffnen"
"Open in {{name}}": "In {{name}} öffnen",
"Book Fingerprint": "Buch-Fingerabdruck"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} απέτυχε",
"{{count}} failed_other": "{{count}} απέτυχαν",
"(none)": "(κανένα)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Υπολογισμένο Hash",
"Identifiers": "Αναγνωριστικά",
"Read (Stream)": "Ανάγνωση (Ροή)",
"Failed to start stream": "Αποτυχία έναρξης ροής",
@@ -1329,5 +1327,6 @@
"URL Template": "Πρότυπο URL",
"Use %WORD% where the looked-up word should appear.": "Χρησιμοποιήστε %WORD% όπου πρέπει να εμφανίζεται η λέξη αναζήτησης.",
"Open the search result in your browser:": "Ανοίξτε το αποτέλεσμα αναζήτησης στο πρόγραμμα περιήγησής σας:",
"Open in {{name}}": "Άνοιγμα σε {{name}}"
"Open in {{name}}": "Άνοιγμα σε {{name}}",
"Book Fingerprint": "Δακτυλικό αποτύπωμα βιβλίου"
}
@@ -1223,8 +1223,6 @@
"{{count}} failed_many": "{{count}} fallidas",
"{{count}} failed_other": "{{count}} fallidas",
"(none)": "(ninguno)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Hash Calculado",
"Identifiers": "Identificadores",
"Read (Stream)": "Leer (Streaming)",
"Failed to start stream": "No se pudo iniciar el streaming",
@@ -1352,5 +1350,6 @@
"URL Template": "Plantilla de URL",
"Use %WORD% where the looked-up word should appear.": "Use %WORD% donde debe aparecer la palabra buscada.",
"Open the search result in your browser:": "Abre el resultado de búsqueda en tu navegador:",
"Open in {{name}}": "Abrir en {{name}}"
"Open in {{name}}": "Abrir en {{name}}",
"Book Fingerprint": "Huella del libro"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} ناموفق",
"{{count}} failed_other": "{{count}} ناموفق",
"(none)": "(هیچ‌کدام)",
"Meta Hash": "متا هش",
"Computed Hash": "هش محاسبه‌شده",
"Identifiers": "شناسه‌ها",
"Read (Stream)": "خواندن (پخش)",
"Failed to start stream": "شروع پخش ناموفق بود",
@@ -1329,5 +1327,6 @@
"URL Template": "الگوی URL",
"Use %WORD% where the looked-up word should appear.": "از %WORD% در جایی که کلمه‌ی مورد جست‌وجو باید ظاهر شود، استفاده کنید.",
"Open the search result in your browser:": "نتیجه‌ی جست‌وجو را در مرورگر باز کنید:",
"Open in {{name}}": "بازکردن در {{name}}"
"Open in {{name}}": "بازکردن در {{name}}",
"Book Fingerprint": "اثر انگشت کتاب"
}
@@ -1223,8 +1223,6 @@
"{{count}} failed_many": "{{count}} échecs",
"{{count}} failed_other": "{{count}} échecs",
"(none)": "(aucun)",
"Meta Hash": "Hachage Meta",
"Computed Hash": "Hachage calculé",
"Identifiers": "Identifiants",
"Read (Stream)": "Lire (Flux)",
"Failed to start stream": "Échec du démarrage du flux",
@@ -1352,5 +1350,6 @@
"URL Template": "Modèle d'URL",
"Use %WORD% where the looked-up word should appear.": "Utilisez %WORD% à l'endroit où le mot recherché doit apparaître.",
"Open the search result in your browser:": "Ouvrir le résultat de la recherche dans votre navigateur :",
"Open in {{name}}": "Ouvrir dans {{name}}"
"Open in {{name}}": "Ouvrir dans {{name}}",
"Book Fingerprint": "Empreinte du livre"
}
@@ -1223,8 +1223,6 @@
"{{count}} failed_two": "{{count}} נכשלו",
"{{count}} failed_other": "{{count}} נכשלו",
"(none)": "(אין)",
"Meta Hash": "גיבוב מטא",
"Computed Hash": "גיבוב מחושב",
"Identifiers": "מזהים",
"Read (Stream)": "קרא (זרם)",
"Failed to start stream": "הפעלת הזרם נכשלה",
@@ -1352,5 +1350,6 @@
"URL Template": "תבנית URL",
"Use %WORD% where the looked-up word should appear.": "השתמש ב-%WORD% היכן שהמילה המבוקשת צריכה להופיע.",
"Open the search result in your browser:": "פתח את תוצאת החיפוש בדפדפן שלך:",
"Open in {{name}}": "פתח ב-{{name}}"
"Open in {{name}}": "פתח ב-{{name}}",
"Book Fingerprint": "טביעת אצבע של הספר"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} असफल",
"{{count}} failed_other": "{{count}} असफल",
"(none)": "(कोई नहीं)",
"Meta Hash": "मेटा हैश",
"Computed Hash": "परिकलित हैश",
"Identifiers": "पहचानकर्ता",
"Read (Stream)": "पढ़ें (स्ट्रीम)",
"Failed to start stream": "स्ट्रीम प्रारंभ करने में विफल",
@@ -1329,5 +1327,6 @@
"URL Template": "URL टेम्पलेट",
"Use %WORD% where the looked-up word should appear.": "%WORD% का उपयोग वहां करें जहां खोजा गया शब्द दिखाई देना चाहिए।",
"Open the search result in your browser:": "अपने ब्राउज़र में खोज परिणाम खोलें:",
"Open in {{name}}": "{{name}} में खोलें"
"Open in {{name}}": "{{name}} में खोलें",
"Book Fingerprint": "पुस्तक फिंगरप्रिंट"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} sikertelen",
"{{count}} failed_other": "{{count}} sikertelen",
"(none)": "(nincs)",
"Meta Hash": "Meta-hash",
"Computed Hash": "Számított hash",
"Identifiers": "Azonosítók",
"Read (Stream)": "Olvasás (Stream)",
"Failed to start stream": "Nem sikerült elindítani a streamet",
@@ -1329,5 +1327,6 @@
"URL Template": "URL-sablon",
"Use %WORD% where the looked-up word should appear.": "Használja a %WORD%-t ott, ahol a keresett szónak meg kell jelennie.",
"Open the search result in your browser:": "Nyissa meg a találatot a böngészőben:",
"Open in {{name}}": "Megnyitás itt: {{name}}"
"Open in {{name}}": "Megnyitás itt: {{name}}",
"Book Fingerprint": "Könyv ujjlenyomata"
}
@@ -1189,8 +1189,6 @@
"Retry all": "Coba lagi semua",
"{{count}} failed_other": "{{count}} gagal",
"(none)": "(tidak ada)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Hash Terhitung",
"Identifiers": "Pengenal",
"Read (Stream)": "Baca (Stream)",
"Failed to start stream": "Gagal memulai stream",
@@ -1306,5 +1304,6 @@
"URL Template": "Templat URL",
"Use %WORD% where the looked-up word should appear.": "Gunakan %WORD% di tempat kata yang dicari harus muncul.",
"Open the search result in your browser:": "Buka hasil pencarian di peramban Anda:",
"Open in {{name}}": "Buka di {{name}}"
"Open in {{name}}": "Buka di {{name}}",
"Book Fingerprint": "Sidik jari buku"
}
@@ -1223,8 +1223,6 @@
"{{count}} failed_many": "{{count}} non riusciti",
"{{count}} failed_other": "{{count}} non riusciti",
"(none)": "(nessuno)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Hash Calcolato",
"Identifiers": "Identificatori",
"Read (Stream)": "Leggi (Stream)",
"Failed to start stream": "Avvio dello stream non riuscito",
@@ -1352,5 +1350,6 @@
"URL Template": "Modello URL",
"Use %WORD% where the looked-up word should appear.": "Usa %WORD% dove dovrebbe apparire la parola cercata.",
"Open the search result in your browser:": "Apri il risultato della ricerca nel tuo browser:",
"Open in {{name}}": "Apri in {{name}}"
"Open in {{name}}": "Apri in {{name}}",
"Book Fingerprint": "Impronta del libro"
}
@@ -1189,8 +1189,6 @@
"Retry all": "すべて再試行",
"{{count}} failed_other": "{{count}}件失敗",
"(none)": "(なし)",
"Meta Hash": "メタハッシュ",
"Computed Hash": "計算されたハッシュ",
"Identifiers": "識別子",
"Read (Stream)": "読む(ストリーム)",
"Failed to start stream": "ストリームの開始に失敗しました",
@@ -1306,5 +1304,6 @@
"URL Template": "URL テンプレート",
"Use %WORD% where the looked-up word should appear.": "調べる単語が表示される場所に %WORD% を使用してください。",
"Open the search result in your browser:": "検索結果をブラウザで開く:",
"Open in {{name}}": "{{name}} で開く"
"Open in {{name}}": "{{name}} で開く",
"Book Fingerprint": "書籍の指紋"
}
@@ -1189,8 +1189,6 @@
"Retry all": "모두 재시도",
"{{count}} failed_other": "{{count}}개 실패",
"(none)": "(없음)",
"Meta Hash": "메타 해시",
"Computed Hash": "계산된 해시",
"Identifiers": "식별자",
"Read (Stream)": "읽기 (스트림)",
"Failed to start stream": "스트림을 시작할 수 없습니다",
@@ -1306,5 +1304,6 @@
"URL Template": "URL 템플릿",
"Use %WORD% where the looked-up word should appear.": "검색어가 표시될 위치에 %WORD%를 사용하세요.",
"Open the search result in your browser:": "브라우저에서 검색 결과 열기:",
"Open in {{name}}": "{{name}}에서 열기"
"Open in {{name}}": "{{name}}에서 열기",
"Book Fingerprint": "책 지문"
}
@@ -1189,8 +1189,6 @@
"Retry all": "Cuba lagi semua",
"{{count}} failed_other": "{{count}} gagal",
"(none)": "(tiada)",
"Meta Hash": "Cincang Meta",
"Computed Hash": "Cincang Dikira",
"Identifiers": "Pengenal",
"Read (Stream)": "Baca (Strim)",
"Failed to start stream": "Gagal memulakan strim",
@@ -1306,5 +1304,6 @@
"URL Template": "Templat URL",
"Use %WORD% where the looked-up word should appear.": "Gunakan %WORD% di mana perkataan yang dicari harus muncul.",
"Open the search result in your browser:": "Buka hasil carian dalam pelayar anda:",
"Open in {{name}}": "Buka dalam {{name}}"
"Open in {{name}}": "Buka dalam {{name}}",
"Book Fingerprint": "Cap jari buku"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} mislukt",
"{{count}} failed_other": "{{count}} mislukt",
"(none)": "(geen)",
"Meta Hash": "Meta-hash",
"Computed Hash": "Berekende hash",
"Identifiers": "Identificatoren",
"Read (Stream)": "Lezen (Stream)",
"Failed to start stream": "Kan stream niet starten",
@@ -1329,5 +1327,6 @@
"URL Template": "URL-sjabloon",
"Use %WORD% where the looked-up word should appear.": "Gebruik %WORD% op de plek waar het opgezochte woord moet verschijnen.",
"Open the search result in your browser:": "Open het zoekresultaat in je browser:",
"Open in {{name}}": "Openen in {{name}}"
"Open in {{name}}": "Openen in {{name}}",
"Book Fingerprint": "Vingerafdruk van boek"
}
@@ -1240,8 +1240,6 @@
"{{count}} failed_many": "{{count}} nieudanych",
"{{count}} failed_other": "{{count}} nieudanych",
"(none)": "(brak)",
"Meta Hash": "Meta-skrót",
"Computed Hash": "Obliczony skrót",
"Identifiers": "Identyfikatory",
"Read (Stream)": "Czytaj (Strumień)",
"Failed to start stream": "Nie udało się uruchomić strumienia",
@@ -1375,5 +1373,6 @@
"URL Template": "Szablon URL",
"Use %WORD% where the looked-up word should appear.": "Użyj %WORD% w miejscu, w którym ma się pojawić wyszukiwane słowo.",
"Open the search result in your browser:": "Otwórz wynik wyszukiwania w przeglądarce:",
"Open in {{name}}": "Otwórz w {{name}}"
"Open in {{name}}": "Otwórz w {{name}}",
"Book Fingerprint": "Odcisk książki"
}
@@ -1223,8 +1223,6 @@
"{{count}} failed_many": "{{count}} falhadas",
"{{count}} failed_other": "{{count}} falhadas",
"(none)": "(nenhum)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Hash Calculado",
"Identifiers": "Identificadores",
"Read (Stream)": "Ler (Streaming)",
"Failed to start stream": "Falha ao iniciar o streaming",
@@ -1352,5 +1350,6 @@
"URL Template": "Modelo de URL",
"Use %WORD% where the looked-up word should appear.": "Use %WORD% onde a palavra pesquisada deve aparecer.",
"Open the search result in your browser:": "Abrir o resultado da pesquisa no seu navegador:",
"Open in {{name}}": "Abrir em {{name}}"
"Open in {{name}}": "Abrir em {{name}}",
"Book Fingerprint": "Impressão digital do livro"
}
@@ -1223,8 +1223,6 @@
"{{count}} failed_few": "{{count}} eșuate",
"{{count}} failed_other": "{{count}} eșuate",
"(none)": "(niciunul)",
"Meta Hash": "Meta hash",
"Computed Hash": "Hash calculat",
"Identifiers": "Identificatori",
"Read (Stream)": "Citește (Flux)",
"Failed to start stream": "Eroare la pornirea fluxului",
@@ -1352,5 +1350,6 @@
"URL Template": "Șablon URL",
"Use %WORD% where the looked-up word should appear.": "Folosiți %WORD% acolo unde ar trebui să apară cuvântul căutat.",
"Open the search result in your browser:": "Deschideți rezultatul căutării în browser:",
"Open in {{name}}": "Deschide în {{name}}"
"Open in {{name}}": "Deschide în {{name}}",
"Book Fingerprint": "Amprenta cărții"
}
@@ -1240,8 +1240,6 @@
"{{count}} failed_many": "{{count}} ошибок",
"{{count}} failed_other": "{{count}} ошибок",
"(none)": "(нет)",
"Meta Hash": "Мета-хеш",
"Computed Hash": "Вычисленный хеш",
"Identifiers": "Идентификаторы",
"Read (Stream)": "Читать (Поток)",
"Failed to start stream": "Не удалось запустить поток",
@@ -1375,5 +1373,6 @@
"URL Template": "Шаблон URL",
"Use %WORD% where the looked-up word should appear.": "Используйте %WORD% там, где должно появиться искомое слово.",
"Open the search result in your browser:": "Открыть результат поиска в браузере:",
"Open in {{name}}": "Открыть в {{name}}"
"Open in {{name}}": "Открыть в {{name}}",
"Book Fingerprint": "Отпечаток книги"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} අසාර්ථකයි",
"{{count}} failed_other": "{{count}} අසාර්ථකයි",
"(none)": "(කිසිවක් නැත)",
"Meta Hash": "මෙටා හෑෂ්",
"Computed Hash": "ගණනය කළ හෑෂ්",
"Identifiers": "හඳුනාගැනීම්",
"Read (Stream)": "කියවන්න (ස්ට්‍රීම්)",
"Failed to start stream": "ස්ට්‍රීම් ආරම්භ කිරීම අසාර්ථකයි",
@@ -1329,5 +1327,6 @@
"URL Template": "URL අච්චුව",
"Use %WORD% where the looked-up word should appear.": "සොයන වචනය දිස්විය යුතු තැන %WORD% භාවිතා කරන්න.",
"Open the search result in your browser:": "ඔබේ බ්‍රවුසරයේ සෙවුම් ප්‍රතිඵලය විවෘත කරන්න:",
"Open in {{name}}": "{{name}} වල විවෘත කරන්න"
"Open in {{name}}": "{{name}} වල විවෘත කරන්න",
"Book Fingerprint": "පොතේ ඇඟිලි සලකුණ"
}
@@ -1240,8 +1240,6 @@
"{{count}} failed_few": "{{count}} niso uspele",
"{{count}} failed_other": "{{count}} jih ni uspelo",
"(none)": "(brez)",
"Meta Hash": "Meta hash",
"Computed Hash": "Izračunani hash",
"Identifiers": "Identifikatorji",
"Read (Stream)": "Beri (pretok)",
"Failed to start stream": "Pretoka ni bilo mogoče zagnati",
@@ -1375,5 +1373,6 @@
"URL Template": "Predloga URL",
"Use %WORD% where the looked-up word should appear.": "Uporabite %WORD% tam, kjer naj se pojavi iskana beseda.",
"Open the search result in your browser:": "Odprite rezultat iskanja v brskalniku:",
"Open in {{name}}": "Odpri v {{name}}"
"Open in {{name}}": "Odpri v {{name}}",
"Book Fingerprint": "Prstni odtis knjige"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} misslyckades",
"{{count}} failed_other": "{{count}} misslyckades",
"(none)": "(ingen)",
"Meta Hash": "Meta-hash",
"Computed Hash": "Beräknat hash",
"Identifiers": "Identifierare",
"Read (Stream)": "Läs (ström)",
"Failed to start stream": "Det gick inte att starta strömmen",
@@ -1329,5 +1327,6 @@
"URL Template": "URL-mall",
"Use %WORD% where the looked-up word should appear.": "Använd %WORD% där det uppslagna ordet ska visas.",
"Open the search result in your browser:": "Öppna sökresultatet i din webbläsare:",
"Open in {{name}}": "Öppna i {{name}}"
"Open in {{name}}": "Öppna i {{name}}",
"Book Fingerprint": "Bokens fingeravtryck"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} தோல்வி",
"{{count}} failed_other": "{{count}} தோல்விகள்",
"(none)": "(இல்லை)",
"Meta Hash": "மெட்டா ஹாஷ்",
"Computed Hash": "கணக்கிடப்பட்ட ஹாஷ்",
"Identifiers": "அடையாளங்காட்டிகள்",
"Read (Stream)": "படிக்க (ஸ்ட்ரீம்)",
"Failed to start stream": "ஸ்ட்ரீமைத் தொடங்க முடியவில்லை",
@@ -1329,5 +1327,6 @@
"URL Template": "URL வார்ப்புரு",
"Use %WORD% where the looked-up word should appear.": "தேடப்பட்ட சொல் தோன்ற வேண்டிய இடத்தில் %WORD% ஐ பயன்படுத்தவும்.",
"Open the search result in your browser:": "உங்கள் உலாவியில் தேடல் முடிவைத் திற:",
"Open in {{name}}": "{{name}} இல் திற"
"Open in {{name}}": "{{name}} இல் திற",
"Book Fingerprint": "புத்தக கைரேகை"
}
@@ -1189,8 +1189,6 @@
"Retry all": "ลองอีกครั้งทั้งหมด",
"{{count}} failed_other": "{{count}} ล้มเหลว",
"(none)": "(ไม่มี)",
"Meta Hash": "แฮชเมตา",
"Computed Hash": "แฮชที่คำนวณ",
"Identifiers": "ตัวระบุ",
"Read (Stream)": "อ่าน (สตรีม)",
"Failed to start stream": "ไม่สามารถเริ่มสตรีมได้",
@@ -1306,5 +1304,6 @@
"URL Template": "เทมเพลต URL",
"Use %WORD% where the looked-up word should appear.": "ใช้ %WORD% ในตำแหน่งที่คำค้นหาควรปรากฏ",
"Open the search result in your browser:": "เปิดผลลัพธ์การค้นหาในเบราว์เซอร์ของคุณ:",
"Open in {{name}}": "เปิดใน {{name}}"
"Open in {{name}}": "เปิดใน {{name}}",
"Book Fingerprint": "ลายนิ้วมือหนังสือ"
}
@@ -1206,8 +1206,6 @@
"{{count}} failed_one": "{{count}} başarısız",
"{{count}} failed_other": "{{count}} başarısız",
"(none)": "(yok)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Hesaplanan Hash",
"Identifiers": "Tanımlayıcılar",
"Read (Stream)": "Oku (Akış)",
"Failed to start stream": "Akış başlatılamadı",
@@ -1329,5 +1327,6 @@
"URL Template": "URL Şablonu",
"Use %WORD% where the looked-up word should appear.": "Aranan kelimenin görünmesi gereken yerde %WORD% kullanın.",
"Open the search result in your browser:": "Arama sonucunu tarayıcınızda açın:",
"Open in {{name}}": "{{name}} ile aç"
"Open in {{name}}": "{{name}} ile aç",
"Book Fingerprint": "Kitap parmak izi"
}
@@ -1240,8 +1240,6 @@
"{{count}} failed_many": "{{count}} помилок",
"{{count}} failed_other": "{{count}} помилок",
"(none)": "(немає)",
"Meta Hash": "Мета-хеш",
"Computed Hash": "Обчислений хеш",
"Identifiers": "Ідентифікатори",
"Read (Stream)": "Читати (Потік)",
"Failed to start stream": "Не вдалося запустити потік",
@@ -1375,5 +1373,6 @@
"URL Template": "Шаблон URL",
"Use %WORD% where the looked-up word should appear.": "Використовуйте %WORD% там, де має з'явитися шукане слово.",
"Open the search result in your browser:": "Відкрийте результат пошуку в браузері:",
"Open in {{name}}": "Відкрити в {{name}}"
"Open in {{name}}": "Відкрити в {{name}}",
"Book Fingerprint": "Відбиток книги"
}
@@ -1189,8 +1189,6 @@
"Retry all": "Thử lại tất cả",
"{{count}} failed_other": "{{count}} thất bại",
"(none)": "(không có)",
"Meta Hash": "Meta Hash",
"Computed Hash": "Hash Đã Tính",
"Identifiers": "Định Danh",
"Read (Stream)": "Đọc (Stream)",
"Failed to start stream": "Không thể bắt đầu stream",
@@ -1306,5 +1304,6 @@
"URL Template": "Mẫu URL",
"Use %WORD% where the looked-up word should appear.": "Dùng %WORD% tại vị trí mà từ tra cứu sẽ xuất hiện.",
"Open the search result in your browser:": "Mở kết quả tìm kiếm trong trình duyệt của bạn:",
"Open in {{name}}": "Mở trong {{name}}"
"Open in {{name}}": "Mở trong {{name}}",
"Book Fingerprint": "Dấu vân tay sách"
}
@@ -1189,8 +1189,6 @@
"Retry all": "全部重试",
"{{count}} failed_other": "{{count}} 个失败",
"(none)": "(无)",
"Meta Hash": "元哈希",
"Computed Hash": "计算的哈希",
"Identifiers": "标识符",
"Read (Stream)": "阅读(流式)",
"Failed to start stream": "启动流式传输失败",
@@ -1306,5 +1304,6 @@
"URL Template": "URL 模板",
"Use %WORD% where the looked-up word should appear.": "在查询词应出现的位置使用 %WORD%。",
"Open the search result in your browser:": "在浏览器中打开搜索结果:",
"Open in {{name}}": "在 {{name}} 中打开"
"Open in {{name}}": "在 {{name}} 中打开",
"Book Fingerprint": "书籍指纹"
}
@@ -1189,8 +1189,6 @@
"Retry all": "全部重試",
"{{count}} failed_other": "{{count}} 個失敗",
"(none)": "(無)",
"Meta Hash": "中繼雜湊",
"Computed Hash": "計算所得雜湊",
"Identifiers": "識別碼",
"Read (Stream)": "閱讀(串流)",
"Failed to start stream": "無法啟動串流",
@@ -1306,5 +1304,6 @@
"URL Template": "URL 範本",
"Use %WORD% where the looked-up word should appear.": "在查詢字詞應出現的位置使用 %WORD%。",
"Open the search result in your browser:": "在瀏覽器中開啟搜尋結果:",
"Open in {{name}}": "在 {{name}} 中開啟"
"Open in {{name}}": "在 {{name}} 中開啟",
"Book Fingerprint": "書籍指紋"
}
+54
View File
@@ -0,0 +1,54 @@
#!/usr/bin/env node
/**
* Syntax-check every Lua file in apps/readest.koplugin against LuaJIT (the
* runtime KOReader uses). `luajit -b <src> /dev/null` parses the source and
* emits bytecode to /dev/null, returning non-zero on any syntax error without
* executing the file. We use LuaJIT specifically not stock Lua because
* the koplugin relies on LuaJIT-only features (`ffi/*`) and stock luac
* silently accepts a few constructs LuaJIT rejects (e.g. `<const>`).
*
* Invoked from `pnpm lint:lua`. Soft-skips with a notice when luajit is not
* installed; CI installs luajit and runs unconditionally.
*/
import { spawnSync } from 'node:child_process';
import fs from 'node:fs';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
const __dirname = path.dirname(fileURLToPath(import.meta.url));
const KOPLUGIN_DIR = path.resolve(__dirname, '..', '..', 'readest.koplugin');
if (!fs.existsSync(KOPLUGIN_DIR)) {
console.error(`koplugin directory not found at ${KOPLUGIN_DIR}`);
process.exit(1);
}
const luaFiles = fs
.readdirSync(KOPLUGIN_DIR)
.filter((f) => f.endsWith('.lua'))
.map((f) => path.join(KOPLUGIN_DIR, f))
.sort();
if (luaFiles.length === 0) {
console.log('No .lua files to check.');
process.exit(0);
}
const which = spawnSync(process.platform === 'win32' ? 'where' : 'which', ['luajit']);
if (which.status !== 0) {
console.warn(
'lint:lua: luajit not found, skipping koplugin syntax check. ' +
'Install LuaJIT (e.g. `brew install luajit` on macOS, `apt-get install luajit` on Linux) ' +
'to enable this check locally. CI runs it unconditionally.',
);
process.exit(0);
}
const devNull = process.platform === 'win32' ? 'NUL' : '/dev/null';
let failed = 0;
for (const file of luaFiles) {
const r = spawnSync('luajit', ['-b', file, devNull], { stdio: 'inherit' });
if (r.status !== 0) failed++;
}
process.exit(failed === 0 ? 0 : 1);
@@ -32,7 +32,6 @@ const SyncInfoDialog: React.FC<SyncInfoDialogProps> = ({
const _ = useTranslation();
const info = metadata ? getMetadataHashInfo(metadata) : undefined;
const displayHash = storedMetaHash || info?.metaHash || '';
const hashesMatch = !info || !storedMetaHash || storedMetaHash === info.metaHash;
const placeholder = _('(none)');
const lastSyncedLabel = lastSyncedAt ? formatLocaleDateTime(lastSyncedAt) : _('Never synced');
@@ -46,8 +45,7 @@ const SyncInfoDialog: React.FC<SyncInfoDialogProps> = ({
>
{isOpen && (
<div className='mb-4 mt-0 flex flex-col gap-3 p-2 sm:p-4'>
<Row label={_('Meta Hash')} value={displayHash || placeholder} />
{!hashesMatch && info && <Row label={_('Computed Hash')} value={info.metaHash} />}
<Row label={_('Book Fingerprint')} value={displayHash || placeholder} />
<Row label={_('Title')} value={info?.title || placeholder} />
<Row
label={_('Author')}
+2 -2
View File
@@ -1,6 +1,6 @@
local _ = require("gettext")
local _ = require("i18n")
return {
name = "readest",
fullname = _("Readest sync"),
fullname = _("Readest"),
description = _([[Keeps your KOReader and Readest devices in sync.]]),
}
+149
View File
@@ -0,0 +1,149 @@
local logger = require("logger")
local koreader_gettext = require("gettext")
local GetText = {
translation = {},
loaded_lang = nil,
}
local function unescapePoString(s)
s = s:gsub("\\n", "\n")
s = s:gsub("\\t", "\t")
s = s:gsub("\\r", "\r")
s = s:gsub('\\"', '"')
s = s:gsub("\\\\", "\\")
return s
end
local function loadPoFile(path)
local file = io.open(path, "r")
if not file then
logger.dbg("Readest i18n: cannot open translation file:", path)
return false
end
local entry = {}
local current
local function flush()
if entry.msgid and entry.msgid ~= "" and entry.msgstr and entry.msgstr ~= "" then
GetText.translation[entry.msgid] = entry.msgstr
end
entry = {}
current = nil
end
for line in file:lines() do
if line == "" then
flush()
elseif not line:match("^#") then
local key, value = line:match('^%s*(msgid)%s+"(.*)"%s*$')
if not key then
key, value = line:match('^%s*(msgstr)%s+"(.*)"%s*$')
end
if key then
current = key
entry[current] = unescapePoString(value)
else
value = line:match('^%s*"(.*)"%s*$')
if current and value then
entry[current] = (entry[current] or "") .. unescapePoString(value)
end
end
end
end
flush()
file:close()
logger.info("Readest i18n: loaded translation file:", path)
return true
end
local function getPluginDir()
local info = debug.getinfo(1, "S")
local source = info and info.source
if source and source:sub(1, 1) == "@" then
source = source:sub(2)
end
return source and source:match("(.*/)") or "./"
end
local plugin_dir = getPluginDir()
-- KOReader stores locales with an underscore separator (e.g. zh_CN, pt_BR);
-- our catalog mirrors readest-app's i18next layout which uses hyphens (zh-CN).
local function getLanguage()
local lang = G_reader_settings and G_reader_settings:readSetting("language")
if type(lang) == "string" and lang ~= "" and lang ~= "C" then
return (lang:gsub("%..*", ""):gsub("_", "-"))
end
return nil
end
local function initTranslation()
GetText.translation = {}
local lang = getLanguage()
GetText.loaded_lang = lang
if not lang then return end
local candidates = { lang }
local base_lang = lang:match("^(%a+)-")
if base_lang then
table.insert(candidates, base_lang)
end
if lang:match("^zh") and lang ~= "zh-CN" then
table.insert(candidates, "zh-CN")
end
for _, candidate in ipairs(candidates) do
local path = plugin_dir .. "locales/" .. candidate .. "/translation.po"
if loadPoFile(path) then
return
end
end
end
local function translate(msgid)
local lang = getLanguage()
if lang ~= GetText.loaded_lang then
initTranslation()
end
return GetText.translation[msgid]
end
setmetatable(GetText, {
__call = function(_, msgid)
return translate(msgid) or koreader_gettext(msgid)
end,
})
function GetText.ngettext(msgid, msgid_plural, n)
local translated = translate(n == 1 and msgid or msgid_plural)
if translated then return translated end
if koreader_gettext.ngettext then
return koreader_gettext.ngettext(msgid, msgid_plural, n)
end
return n == 1 and GetText(msgid) or GetText(msgid_plural)
end
function GetText.pgettext(msgctxt, msgid)
local translated = translate(msgctxt .. "\004" .. msgid) or translate(msgid)
if translated then return translated end
if koreader_gettext.pgettext then
return koreader_gettext.pgettext(msgctxt, msgid)
end
return GetText(msgid)
end
function GetText.npgettext(msgctxt, msgid, msgid_plural, n)
local selected = n == 1 and msgid or msgid_plural
local translated = translate(msgctxt .. "\004" .. selected) or translate(selected)
if translated then return translated end
if koreader_gettext.npgettext then
return koreader_gettext.npgettext(msgctxt, msgid, msgid_plural, n)
end
return GetText.ngettext(msgid, msgid_plural, n)
end
return GetText
@@ -0,0 +1,231 @@
# Arabic translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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>=11 ? 4 : 5);\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "يحافظ على مزامنة أجهزة KOReader و Readest الخاصة بك."
msgid "Set auto progress sync"
msgstr "تعيين المزامنة التلقائية للتقدم"
msgid "on"
msgstr "تشغيل"
msgid "off"
msgstr "إيقاف"
msgid "Toggle auto readest sync"
msgstr "تبديل المزامنة التلقائية لـ Readest"
msgid "Push readest progress from this device"
msgstr "إرسال تقدم Readest من هذا الجهاز"
msgid "Pull readest progress from other devices"
msgstr "جلب تقدم Readest من الأجهزة الأخرى"
msgid "Push readest annotations from this device"
msgstr "إرسال ملاحظات Readest من هذا الجهاز"
msgid "Pull readest annotations from other devices"
msgstr "جلب ملاحظات Readest من الأجهزة الأخرى"
msgid "Log in Readest Account"
msgstr "تسجيل الدخول إلى حساب Readest"
msgid "Log out as %1"
msgstr "تسجيل الخروج من %1"
msgid "Auto sync progress and annotations"
msgstr "مزامنة التقدم والملاحظات تلقائياً"
msgid "Push reading progress now"
msgstr "إرسال تقدم القراءة الآن"
msgid "Pull reading progress now"
msgstr "جلب تقدم القراءة الآن"
msgid "Push annotations now"
msgstr "إرسال الملاحظات الآن"
msgid "Pull annotations now"
msgstr "جلب الملاحظات الآن"
msgid "Full sync all annotations"
msgstr "مزامنة كاملة لجميع الملاحظات"
msgid "Sync info"
msgstr "معلومات المزامنة"
msgid "Check for update (v%1)"
msgstr "التحقق من التحديث (v%1)"
msgid "Check for update"
msgstr "التحقق من التحديث"
msgid "Please login first"
msgstr "يرجى تسجيل الدخول أولاً"
msgid "Please configure Readest settings first"
msgstr "يرجى تكوين إعدادات Readest أولاً"
msgid "No book is open"
msgstr "لا يوجد كتاب مفتوح"
msgid "(none)"
msgstr "(لا شيء)"
msgid "Never synced"
msgstr "لم تتم المزامنة مطلقاً"
msgid "Book Fingerprint"
msgstr "بصمة الكتاب"
msgid "Title"
msgstr "العنوان"
msgid "Author"
msgstr "المؤلف"
msgid "Identifiers"
msgstr "المعرفات"
msgid "Last Synced"
msgstr "آخر مزامنة"
msgid "Sync Info"
msgstr "معلومات المزامنة"
msgid "Checking for update…"
msgstr "التحقق من التحديث…"
msgid "Failed to check for update. Please try again later."
msgstr "فشل التحقق من التحديث. يرجى المحاولة لاحقاً."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "يتوفر إصدار جديد: v%1 (الحالي: v%2).\n\nهل تريد التحديث الآن؟"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "يتوفر إصدار جديد: v%1.\n\nهل تريد التحديث الآن؟"
msgid "Update"
msgstr "تحديث"
msgid "You are up to date (v%1)."
msgstr "أنت تستخدم أحدث إصدار (v%1)."
msgid "Downloading update…"
msgstr "تنزيل التحديث…"
msgid "Failed to download update. Please try again later."
msgstr "فشل تنزيل التحديث. يرجى المحاولة لاحقاً."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "تم تحديث إضافة Readest إلى v%1.\n\nيرجى إعادة تشغيل KOReader لتطبيق التحديث."
msgid "Restart now"
msgstr "إعادة التشغيل الآن"
msgid "Later"
msgstr "لاحقاً"
msgid "Failed to install update: %1"
msgstr "فشل تثبيت التحديث: %1"
msgid "unknown error"
msgstr "خطأ غير معروف"
msgid "No annotations to push"
msgstr "لا توجد ملاحظات للإرسال"
msgid "Pushing annotations..."
msgstr "جارٍ إرسال الملاحظات…"
msgid "%1 annotations pushed successfully"
msgstr "تم إرسال %1 ملاحظات بنجاح"
msgid "Failed to push annotations"
msgstr "فشل إرسال الملاحظات"
msgid "Annotation sync is not supported for PDF documents"
msgstr "مزامنة الملاحظات غير مدعومة لمستندات PDF"
msgid "Full sync: pulling all annotations..."
msgstr "مزامنة كاملة: جلب جميع الملاحظات…"
msgid "Pulling annotations..."
msgstr "جارٍ جلب الملاحظات…"
msgid "Failed to pull annotations"
msgstr "فشل جلب الملاحظات"
msgid "No new annotations found"
msgstr "لم يتم العثور على ملاحظات جديدة"
msgid "%1 annotations pulled"
msgstr "تم جلب %1 ملاحظات"
msgid "Cancel"
msgstr "إلغاء"
msgid "Login"
msgstr "تسجيل الدخول"
msgid "Please enter both email and password"
msgstr "يرجى إدخال البريد الإلكتروني وكلمة المرور"
msgid "Please configure Supabase URL and API key first"
msgstr "يرجى تكوين عنوان Supabase ومفتاح API أولاً"
msgid "Logging in..."
msgstr "جارٍ تسجيل الدخول…"
msgid "Successfully logged in to Readest"
msgstr "تم تسجيل الدخول إلى Readest بنجاح"
msgid "Login failed: %1"
msgstr "فشل تسجيل الدخول: %1"
msgid "Logged out from Readest"
msgstr "تم تسجيل الخروج من Readest"
msgid "Cannot identify the current book"
msgstr "تعذر التعرف على الكتاب الحالي"
msgid "Progress has been synchronized."
msgstr "تمت مزامنة التقدم."
msgid "Pushing reading progress..."
msgstr "جارٍ إرسال تقدم القراءة…"
msgid "Reading progress pushed successfully"
msgstr "تم إرسال تقدم القراءة بنجاح"
msgid "Failed to push reading progress"
msgstr "فشل إرسال تقدم القراءة"
msgid "Pulling reading progress..."
msgstr "جارٍ جلب تقدم القراءة…"
msgid "Authentication failed, please login again"
msgstr "فشل المصادقة، يرجى تسجيل الدخول مرة أخرى"
msgid "Failed to pull reading progress"
msgstr "فشل جلب تقدم القراءة"
msgid "Reading progress synchronized"
msgstr "تمت مزامنة تقدم القراءة"
msgid "No saved reading progress found for this book"
msgstr "لم يتم العثور على تقدم قراءة محفوظ لهذا الكتاب"
@@ -0,0 +1,231 @@
# Bengali translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Bengali\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "আপনার KOReader ও Readest ডিভাইসগুলিকে সিঙ্কে রাখে।"
msgid "Set auto progress sync"
msgstr "স্বয়ংক্রিয় অগ্রগতি সিঙ্ক সেট করুন"
msgid "on"
msgstr "চালু"
msgid "off"
msgstr "বন্ধ"
msgid "Toggle auto readest sync"
msgstr "স্বয়ংক্রিয় Readest সিঙ্ক টগল করুন"
msgid "Push readest progress from this device"
msgstr "এই ডিভাইস থেকে Readest অগ্রগতি পাঠান"
msgid "Pull readest progress from other devices"
msgstr "অন্যান্য ডিভাইস থেকে Readest অগ্রগতি আনুন"
msgid "Push readest annotations from this device"
msgstr "এই ডিভাইস থেকে Readest টীকা পাঠান"
msgid "Pull readest annotations from other devices"
msgstr "অন্যান্য ডিভাইস থেকে Readest টীকা আনুন"
msgid "Log in Readest Account"
msgstr "Readest অ্যাকাউন্টে লগ ইন করুন"
msgid "Log out as %1"
msgstr "%1 হিসেবে লগ আউট করুন"
msgid "Auto sync progress and annotations"
msgstr "স্বয়ংক্রিয়ভাবে অগ্রগতি ও টীকা সিঙ্ক করুন"
msgid "Push reading progress now"
msgstr "এখন পড়ার অগ্রগতি পাঠান"
msgid "Pull reading progress now"
msgstr "এখন পড়ার অগ্রগতি আনুন"
msgid "Push annotations now"
msgstr "এখন টীকা পাঠান"
msgid "Pull annotations now"
msgstr "এখন টীকা আনুন"
msgid "Full sync all annotations"
msgstr "সকল টীকার পূর্ণ সিঙ্ক"
msgid "Sync info"
msgstr "সিঙ্ক তথ্য"
msgid "Check for update (v%1)"
msgstr "আপডেট পরীক্ষা করুন (v%1)"
msgid "Check for update"
msgstr "আপডেট পরীক্ষা করুন"
msgid "Please login first"
msgstr "অনুগ্রহ করে প্রথমে লগ ইন করুন"
msgid "Please configure Readest settings first"
msgstr "অনুগ্রহ করে প্রথমে Readest সেটিংস কনফিগার করুন"
msgid "No book is open"
msgstr "কোনো বই খোলা নেই"
msgid "(none)"
msgstr "(কোনোটি না)"
msgid "Never synced"
msgstr "কখনও সিঙ্ক করা হয়নি"
msgid "Book Fingerprint"
msgstr "বইয়ের ফিঙ্গারপ্রিন্ট"
msgid "Title"
msgstr "শিরোনাম"
msgid "Author"
msgstr "লেখক"
msgid "Identifiers"
msgstr "শনাক্তকারী"
msgid "Last Synced"
msgstr "শেষ সিঙ্ক"
msgid "Sync Info"
msgstr "সিঙ্ক তথ্য"
msgid "Checking for update…"
msgstr "আপডেট পরীক্ষা করা হচ্ছে…"
msgid "Failed to check for update. Please try again later."
msgstr "আপডেট পরীক্ষা ব্যর্থ। অনুগ্রহ করে পরে আবার চেষ্টা করুন।"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "নতুন সংস্করণ পাওয়া যাচ্ছে: v%1 (বর্তমান: v%2)।\n\nএখনই আপডেট করবেন?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "নতুন সংস্করণ পাওয়া যাচ্ছে: v%1।\n\nএখনই আপডেট করবেন?"
msgid "Update"
msgstr "আপডেট"
msgid "You are up to date (v%1)."
msgstr "আপনি হালনাগাদ আছেন (v%1)।"
msgid "Downloading update…"
msgstr "আপডেট ডাউনলোড হচ্ছে…"
msgid "Failed to download update. Please try again later."
msgstr "আপডেট ডাউনলোড ব্যর্থ। অনুগ্রহ করে পরে আবার চেষ্টা করুন।"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest প্লাগইন v%1-এ আপডেট করা হয়েছে।\n\nআপডেট প্রয়োগ করতে KOReader পুনরায় চালু করুন।"
msgid "Restart now"
msgstr "এখনই পুনরায় চালু করুন"
msgid "Later"
msgstr "পরে"
msgid "Failed to install update: %1"
msgstr "আপডেট ইনস্টল ব্যর্থ: %1"
msgid "unknown error"
msgstr "অজানা ত্রুটি"
msgid "No annotations to push"
msgstr "পাঠানোর কোনো টীকা নেই"
msgid "Pushing annotations..."
msgstr "টীকা পাঠানো হচ্ছে…"
msgid "%1 annotations pushed successfully"
msgstr "%1টি টীকা সফলভাবে পাঠানো হয়েছে"
msgid "Failed to push annotations"
msgstr "টীকা পাঠানো ব্যর্থ"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF নথির জন্য টীকা সিঙ্ক সমর্থিত নয়"
msgid "Full sync: pulling all annotations..."
msgstr "পূর্ণ সিঙ্ক: সকল টীকা আনা হচ্ছে…"
msgid "Pulling annotations..."
msgstr "টীকা আনা হচ্ছে…"
msgid "Failed to pull annotations"
msgstr "টীকা আনা ব্যর্থ"
msgid "No new annotations found"
msgstr "নতুন কোনো টীকা পাওয়া যায়নি"
msgid "%1 annotations pulled"
msgstr "%1টি টীকা আনা হয়েছে"
msgid "Cancel"
msgstr "বাতিল"
msgid "Login"
msgstr "লগ ইন"
msgid "Please enter both email and password"
msgstr "অনুগ্রহ করে ইমেল এবং পাসওয়ার্ড উভয়ই লিখুন"
msgid "Please configure Supabase URL and API key first"
msgstr "অনুগ্রহ করে প্রথমে Supabase URL এবং API কী কনফিগার করুন"
msgid "Logging in..."
msgstr "লগ ইন করা হচ্ছে…"
msgid "Successfully logged in to Readest"
msgstr "Readest-এ সফলভাবে লগ ইন করা হয়েছে"
msgid "Login failed: %1"
msgstr "লগ ইন ব্যর্থ: %1"
msgid "Logged out from Readest"
msgstr "Readest থেকে লগ আউট হয়েছে"
msgid "Cannot identify the current book"
msgstr "বর্তমান বই শনাক্ত করা যাচ্ছে না"
msgid "Progress has been synchronized."
msgstr "অগ্রগতি সিঙ্ক হয়েছে।"
msgid "Pushing reading progress..."
msgstr "পড়ার অগ্রগতি পাঠানো হচ্ছে…"
msgid "Reading progress pushed successfully"
msgstr "পড়ার অগ্রগতি সফলভাবে পাঠানো হয়েছে"
msgid "Failed to push reading progress"
msgstr "পড়ার অগ্রগতি পাঠানো ব্যর্থ"
msgid "Pulling reading progress..."
msgstr "পড়ার অগ্রগতি আনা হচ্ছে…"
msgid "Authentication failed, please login again"
msgstr "প্রমাণীকরণ ব্যর্থ, অনুগ্রহ করে আবার লগ ইন করুন"
msgid "Failed to pull reading progress"
msgstr "পড়ার অগ্রগতি আনা ব্যর্থ"
msgid "Reading progress synchronized"
msgstr "পড়ার অগ্রগতি সিঙ্ক হয়েছে"
msgid "No saved reading progress found for this book"
msgstr "এই বইয়ের জন্য সংরক্ষিত পড়ার অগ্রগতি পাওয়া যায়নি"
@@ -0,0 +1,231 @@
# Tibetan translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Tibetan\n"
"Language: bo\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "ཁྱེད་ཀྱི་ KOReader དང་ Readest སྒྲིག་ཆས་མཉམ་འགྱུར་འཇོག"
msgid "Set auto progress sync"
msgstr "རང་འགུལ་འཕེལ་རིམ་མཉམ་འགྱུར་སྒྲིག"
msgid "on"
msgstr "བཀོལ།"
msgid "off"
msgstr "བཀག"
msgid "Toggle auto readest sync"
msgstr "Readest རང་འགུལ་མཉམ་འགྱུར་སྒྱུར་བ།"
msgid "Push readest progress from this device"
msgstr "སྒྲིག་ཆས་འདི་ནས་ Readest འཕེལ་རིམ་སྐུར་བ།"
msgid "Pull readest progress from other devices"
msgstr "སྒྲིག་ཆས་གཞན་ནས་ Readest འཕེལ་རིམ་ལེན་པ།"
msgid "Push readest annotations from this device"
msgstr "སྒྲིག་ཆས་འདི་ནས་ Readest མཆན་འགྲེལ་སྐུར་བ།"
msgid "Pull readest annotations from other devices"
msgstr "སྒྲིག་ཆས་གཞན་ནས་ Readest མཆན་འགྲེལ་ལེན་པ།"
msgid "Log in Readest Account"
msgstr "Readest རྩིས་ཐོར་འཛུལ་ཞུགས།"
msgid "Log out as %1"
msgstr "%1 ནས་ཕྱིར་ཐོན།"
msgid "Auto sync progress and annotations"
msgstr "འཕེལ་རིམ་དང་མཆན་འགྲེལ་རང་འགུལ་མཉམ་འགྱུར།"
msgid "Push reading progress now"
msgstr "ད་ལྟ་ཀློག་པའི་འཕེལ་རིམ་སྐུར་བ།"
msgid "Pull reading progress now"
msgstr "ད་ལྟ་ཀློག་པའི་འཕེལ་རིམ་ལེན་པ།"
msgid "Push annotations now"
msgstr "ད་ལྟ་མཆན་འགྲེལ་སྐུར་བ།"
msgid "Pull annotations now"
msgstr "ད་ལྟ་མཆན་འགྲེལ་ལེན་པ།"
msgid "Full sync all annotations"
msgstr "མཆན་འགྲེལ་ཡོངས་རྫོགས་ཆ་ཚང་མཉམ་འགྱུར།"
msgid "Sync info"
msgstr "མཉམ་འགྱུར་གསལ་བཤད།"
msgid "Check for update (v%1)"
msgstr "གསར་སྤེལ་ཞིབ་བཤེར (v%1)"
msgid "Check for update"
msgstr "གསར་སྤེལ་ཞིབ་བཤེར"
msgid "Please login first"
msgstr "དང་པོ་འཛུལ་ཞུགས་གནང་རོགས།"
msgid "Please configure Readest settings first"
msgstr "དང་པོ་ Readest སྒྲིག་འགོད་གནང་རོགས།"
msgid "No book is open"
msgstr "དཔེ་ཆ་ཁ་ཕྱེ་མེད།"
msgid "(none)"
msgstr "(མེད)"
msgid "Never synced"
msgstr "མཉམ་འགྱུར་མ་བྱས།"
msgid "Book Fingerprint"
msgstr "དཔེ་ཆའི་མཛུབ་རྗེས།"
msgid "Title"
msgstr "དཔེ་དེབ་ཀྱི་མིང་།"
msgid "Author"
msgstr "རྩོམ་པ་པོ།"
msgid "Identifiers"
msgstr "ངོས་འཛིན་བྱེད་མཁན"
msgid "Last Synced"
msgstr "མཐའ་མའི་མཉམ་འགྱུར།"
msgid "Sync Info"
msgstr "མཉམ་འགྱུར་གསལ་བཤད།"
msgid "Checking for update…"
msgstr "གསར་སྤེལ་ཞིབ་བཤེར་བཞིན་པ…"
msgid "Failed to check for update. Please try again later."
msgstr "གསར་སྤེལ་ཞིབ་བཤེར་མ་ཐུབ། རྗེས་སུ་ཡང་བསྐྱར་ཚོད་ལྟ་གནང་རོགས།"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "པར་གཞི་གསར་པ་ཞིག་ཡོད: v%1 (མིག་སྔའི: v%2)།\n\nད་ལྟ་གསར་སྤེལ་གནང་གི་ཡིན་ནམ?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "པར་གཞི་གསར་པ་ཞིག་ཡོད: v%1།\n\nད་ལྟ་གསར་སྤེལ་གནང་གི་ཡིན་ནམ?"
msgid "Update"
msgstr "གསར་སྤེལ།"
msgid "You are up to date (v%1)."
msgstr "ཁྱེད་རང་གི་པར་གཞི་ནི་གསར་ཤོས་ཡིན (v%1)།"
msgid "Downloading update…"
msgstr "གསར་སྤེལ་ཕབ་ལེན་བཞིན་པ…"
msgid "Failed to download update. Please try again later."
msgstr "གསར་སྤེལ་ཕབ་ལེན་མ་ཐུབ། རྗེས་སུ་ཡང་བསྐྱར་ཚོད་ལྟ་གནང་རོགས།"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest plugin v%1 ལ་གསར་སྤེལ་བྱས་སོང་།\n\nགསར་སྤེལ་སྤྱོད་པར་ KOReader ཡང་བསྐྱར་འགོ་འཛུགས་གནང་རོགས།"
msgid "Restart now"
msgstr "ད་ལྟ་ཡང་བསྐྱར་འགོ་འཛུགས།"
msgid "Later"
msgstr "རྗེས་སུ།"
msgid "Failed to install update: %1"
msgstr "གསར་སྤེལ་སྒྲིག་འཛུགས་མ་ཐུབ: %1"
msgid "unknown error"
msgstr "ཤེས་མི་ཐུབ་པའི་ནོར་འཁྲུལ།"
msgid "No annotations to push"
msgstr "སྐུར་རྒྱུའི་མཆན་འགྲེལ་མེད།"
msgid "Pushing annotations..."
msgstr "མཆན་འགྲེལ་སྐུར་བཞིན་པ…"
msgid "%1 annotations pushed successfully"
msgstr "མཆན་འགྲེལ་ %1 ལེགས་པར་སྐུར་སོང་།"
msgid "Failed to push annotations"
msgstr "མཆན་འགྲེལ་སྐུར་མ་ཐུབ།"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF ཡིག་ཆར་མཆན་འགྲེལ་མཉམ་འགྱུར་རྒྱབ་སྐྱོར་མེད།"
msgid "Full sync: pulling all annotations..."
msgstr "ཆ་ཚང་མཉམ་འགྱུར: མཆན་འགྲེལ་ཡོངས་རྫོགས་ལེན་བཞིན་པ…"
msgid "Pulling annotations..."
msgstr "མཆན་འགྲེལ་ལེན་བཞིན་པ…"
msgid "Failed to pull annotations"
msgstr "མཆན་འགྲེལ་ལེན་མ་ཐུབ།"
msgid "No new annotations found"
msgstr "མཆན་འགྲེལ་གསར་པ་མ་རྙེད།"
msgid "%1 annotations pulled"
msgstr "མཆན་འགྲེལ་ %1 ལེན་སོང་།"
msgid "Cancel"
msgstr "འདོར་བ།"
msgid "Login"
msgstr "འཛུལ་ཞུགས།"
msgid "Please enter both email and password"
msgstr "ཡིག་འཕྲིན་དང་གསང་ཨང་གཉིས་ཀ་འབྲི་རོགས།"
msgid "Please configure Supabase URL and API key first"
msgstr "དང་པོ་ Supabase URL དང་ API ལྡེ་མིག་སྒྲིག་འགོད་གནང་རོགས།"
msgid "Logging in..."
msgstr "འཛུལ་ཞུགས་བཞིན་པ…"
msgid "Successfully logged in to Readest"
msgstr "Readest ལ་ལེགས་པར་འཛུལ་ཞུགས་སོང་།"
msgid "Login failed: %1"
msgstr "འཛུལ་ཞུགས་མ་ཐུབ: %1"
msgid "Logged out from Readest"
msgstr "Readest ནས་ཕྱིར་ཐོན་སོང་།"
msgid "Cannot identify the current book"
msgstr "མིག་སྔའི་དཔེ་ཆ་ངོས་འཛིན་མི་ཐུབ།"
msgid "Progress has been synchronized."
msgstr "འཕེལ་རིམ་མཉམ་འགྱུར་སོང་།"
msgid "Pushing reading progress..."
msgstr "ཀློག་པའི་འཕེལ་རིམ་སྐུར་བཞིན་པ…"
msgid "Reading progress pushed successfully"
msgstr "ཀློག་པའི་འཕེལ་རིམ་ལེགས་པར་སྐུར་སོང་།"
msgid "Failed to push reading progress"
msgstr "ཀློག་པའི་འཕེལ་རིམ་སྐུར་མ་ཐུབ།"
msgid "Pulling reading progress..."
msgstr "ཀློག་པའི་འཕེལ་རིམ་ལེན་བཞིན་པ…"
msgid "Authentication failed, please login again"
msgstr "ཡིད་ཆེས་ཞིབ་བཤེར་མ་ཐུབ། ཡང་བསྐྱར་འཛུལ་ཞུགས་གནང་རོགས།"
msgid "Failed to pull reading progress"
msgstr "ཀློག་པའི་འཕེལ་རིམ་ལེན་མ་ཐུབ།"
msgid "Reading progress synchronized"
msgstr "ཀློག་པའི་འཕེལ་རིམ་མཉམ་འགྱུར་སོང་།"
msgid "No saved reading progress found for this book"
msgstr "དཔེ་ཆ་འདིའི་ཀློག་པའི་འཕེལ་རིམ་ཉར་ཚགས་མ་རྙེད།"
@@ -0,0 +1,231 @@
# German translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: German\n"
"Language: de\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Hält deine KOReader- und Readest-Geräte synchron."
msgid "Set auto progress sync"
msgstr "Automatischen Fortschritts-Sync einstellen"
msgid "on"
msgstr "an"
msgid "off"
msgstr "aus"
msgid "Toggle auto readest sync"
msgstr "Automatischen Readest-Sync umschalten"
msgid "Push readest progress from this device"
msgstr "Readest-Fortschritt von diesem Gerät senden"
msgid "Pull readest progress from other devices"
msgstr "Readest-Fortschritt von anderen Geräten abrufen"
msgid "Push readest annotations from this device"
msgstr "Readest-Anmerkungen von diesem Gerät senden"
msgid "Pull readest annotations from other devices"
msgstr "Readest-Anmerkungen von anderen Geräten abrufen"
msgid "Log in Readest Account"
msgstr "Beim Readest-Konto anmelden"
msgid "Log out as %1"
msgstr "Abmelden als %1"
msgid "Auto sync progress and annotations"
msgstr "Fortschritt und Anmerkungen automatisch synchronisieren"
msgid "Push reading progress now"
msgstr "Lesefortschritt jetzt senden"
msgid "Pull reading progress now"
msgstr "Lesefortschritt jetzt abrufen"
msgid "Push annotations now"
msgstr "Anmerkungen jetzt senden"
msgid "Pull annotations now"
msgstr "Anmerkungen jetzt abrufen"
msgid "Full sync all annotations"
msgstr "Alle Anmerkungen vollständig synchronisieren"
msgid "Sync info"
msgstr "Sync-Info"
msgid "Check for update (v%1)"
msgstr "Nach Aktualisierungen suchen (v%1)"
msgid "Check for update"
msgstr "Nach Aktualisierungen suchen"
msgid "Please login first"
msgstr "Bitte zuerst anmelden"
msgid "Please configure Readest settings first"
msgstr "Bitte zuerst die Readest-Einstellungen konfigurieren"
msgid "No book is open"
msgstr "Kein Buch geöffnet"
msgid "(none)"
msgstr "(keine)"
msgid "Never synced"
msgstr "Noch nie synchronisiert"
msgid "Book Fingerprint"
msgstr "Buch-Fingerabdruck"
msgid "Title"
msgstr "Titel"
msgid "Author"
msgstr "Autor"
msgid "Identifiers"
msgstr "Bezeichner"
msgid "Last Synced"
msgstr "Zuletzt synchronisiert"
msgid "Sync Info"
msgstr "Sync-Info"
msgid "Checking for update…"
msgstr "Suche nach Aktualisierungen …"
msgid "Failed to check for update. Please try again later."
msgstr "Suche nach Aktualisierungen fehlgeschlagen. Bitte später erneut versuchen."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Eine neue Version ist verfügbar: v%1 (aktuell: v%2).\n\nJetzt aktualisieren?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Eine neue Version ist verfügbar: v%1.\n\nJetzt aktualisieren?"
msgid "Update"
msgstr "Aktualisieren"
msgid "You are up to date (v%1)."
msgstr "Du verwendest die aktuelle Version (v%1)."
msgid "Downloading update…"
msgstr "Aktualisierung wird heruntergeladen …"
msgid "Failed to download update. Please try again later."
msgstr "Aktualisierung konnte nicht heruntergeladen werden. Bitte später erneut versuchen."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest-Plugin auf v%1 aktualisiert.\n\nBitte KOReader neu starten, um die Aktualisierung anzuwenden."
msgid "Restart now"
msgstr "Jetzt neu starten"
msgid "Later"
msgstr "Später"
msgid "Failed to install update: %1"
msgstr "Aktualisierung konnte nicht installiert werden: %1"
msgid "unknown error"
msgstr "Unbekannter Fehler"
msgid "No annotations to push"
msgstr "Keine Anmerkungen zum Senden"
msgid "Pushing annotations..."
msgstr "Anmerkungen werden gesendet …"
msgid "%1 annotations pushed successfully"
msgstr "%1 Anmerkungen erfolgreich gesendet"
msgid "Failed to push annotations"
msgstr "Senden der Anmerkungen fehlgeschlagen"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Die Synchronisierung von Anmerkungen wird für PDF-Dokumente nicht unterstützt"
msgid "Full sync: pulling all annotations..."
msgstr "Vollständige Synchronisierung: alle Anmerkungen werden abgerufen …"
msgid "Pulling annotations..."
msgstr "Anmerkungen werden abgerufen …"
msgid "Failed to pull annotations"
msgstr "Abrufen der Anmerkungen fehlgeschlagen"
msgid "No new annotations found"
msgstr "Keine neuen Anmerkungen gefunden"
msgid "%1 annotations pulled"
msgstr "%1 Anmerkungen abgerufen"
msgid "Cancel"
msgstr "Abbrechen"
msgid "Login"
msgstr "Anmelden"
msgid "Please enter both email and password"
msgstr "Bitte E-Mail und Passwort eingeben"
msgid "Please configure Supabase URL and API key first"
msgstr "Bitte zuerst Supabase-URL und API-Schlüssel konfigurieren"
msgid "Logging in..."
msgstr "Anmeldung läuft …"
msgid "Successfully logged in to Readest"
msgstr "Erfolgreich bei Readest angemeldet"
msgid "Login failed: %1"
msgstr "Anmeldung fehlgeschlagen: %1"
msgid "Logged out from Readest"
msgstr "Von Readest abgemeldet"
msgid "Cannot identify the current book"
msgstr "Aktuelles Buch kann nicht identifiziert werden"
msgid "Progress has been synchronized."
msgstr "Fortschritt wurde synchronisiert."
msgid "Pushing reading progress..."
msgstr "Lesefortschritt wird gesendet …"
msgid "Reading progress pushed successfully"
msgstr "Lesefortschritt erfolgreich gesendet"
msgid "Failed to push reading progress"
msgstr "Senden des Lesefortschritts fehlgeschlagen"
msgid "Pulling reading progress..."
msgstr "Lesefortschritt wird abgerufen …"
msgid "Authentication failed, please login again"
msgstr "Authentifizierung fehlgeschlagen, bitte erneut anmelden"
msgid "Failed to pull reading progress"
msgstr "Abrufen des Lesefortschritts fehlgeschlagen"
msgid "Reading progress synchronized"
msgstr "Lesefortschritt synchronisiert"
msgid "No saved reading progress found for this book"
msgstr "Kein gespeicherter Lesefortschritt für dieses Buch gefunden"
@@ -0,0 +1,231 @@
# Greek translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Greek\n"
"Language: el\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Διατηρεί τις συσκευές KOReader και Readest συγχρονισμένες."
msgid "Set auto progress sync"
msgstr "Ορισμός αυτόματου συγχρονισμού προόδου"
msgid "on"
msgstr "ναι"
msgid "off"
msgstr "όχι"
msgid "Toggle auto readest sync"
msgstr "Εναλλαγή αυτόματου συγχρονισμού Readest"
msgid "Push readest progress from this device"
msgstr "Αποστολή προόδου Readest από αυτή τη συσκευή"
msgid "Pull readest progress from other devices"
msgstr "Λήψη προόδου Readest από άλλες συσκευές"
msgid "Push readest annotations from this device"
msgstr "Αποστολή σχολίων Readest από αυτή τη συσκευή"
msgid "Pull readest annotations from other devices"
msgstr "Λήψη σχολίων Readest από άλλες συσκευές"
msgid "Log in Readest Account"
msgstr "Σύνδεση στον λογαριασμό Readest"
msgid "Log out as %1"
msgstr "Αποσύνδεση ως %1"
msgid "Auto sync progress and annotations"
msgstr "Αυτόματος συγχρονισμός προόδου και σχολίων"
msgid "Push reading progress now"
msgstr "Αποστολή προόδου ανάγνωσης τώρα"
msgid "Pull reading progress now"
msgstr "Λήψη προόδου ανάγνωσης τώρα"
msgid "Push annotations now"
msgstr "Αποστολή σχολίων τώρα"
msgid "Pull annotations now"
msgstr "Λήψη σχολίων τώρα"
msgid "Full sync all annotations"
msgstr "Πλήρης συγχρονισμός όλων των σχολίων"
msgid "Sync info"
msgstr "Πληροφορίες συγχρονισμού"
msgid "Check for update (v%1)"
msgstr "Έλεγχος για ενημέρωση (v%1)"
msgid "Check for update"
msgstr "Έλεγχος για ενημέρωση"
msgid "Please login first"
msgstr "Συνδεθείτε πρώτα"
msgid "Please configure Readest settings first"
msgstr "Διαμορφώστε πρώτα τις ρυθμίσεις Readest"
msgid "No book is open"
msgstr "Δεν υπάρχει ανοιχτό βιβλίο"
msgid "(none)"
msgstr "(κανένα)"
msgid "Never synced"
msgstr "Δεν έχει συγχρονιστεί"
msgid "Book Fingerprint"
msgstr "Δακτυλικό αποτύπωμα βιβλίου"
msgid "Title"
msgstr "Τίτλος"
msgid "Author"
msgstr "Συγγραφέας"
msgid "Identifiers"
msgstr "Αναγνωριστικά"
msgid "Last Synced"
msgstr "Τελευταίος συγχρονισμός"
msgid "Sync Info"
msgstr "Πληροφορίες συγχρονισμού"
msgid "Checking for update…"
msgstr "Έλεγχος για ενημέρωση…"
msgid "Failed to check for update. Please try again later."
msgstr "Ο έλεγχος ενημέρωσης απέτυχε. Δοκιμάστε ξανά αργότερα."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Διαθέσιμη νέα έκδοση: v%1 (τρέχουσα: v%2).\n\nΕνημέρωση τώρα;"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Διαθέσιμη νέα έκδοση: v%1.\n\nΕνημέρωση τώρα;"
msgid "Update"
msgstr "Ενημέρωση"
msgid "You are up to date (v%1)."
msgstr "Είστε ενημερωμένοι (v%1)."
msgid "Downloading update…"
msgstr "Λήψη ενημέρωσης…"
msgid "Failed to download update. Please try again later."
msgstr "Η λήψη της ενημέρωσης απέτυχε. Δοκιμάστε ξανά αργότερα."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Το πρόσθετο Readest ενημερώθηκε στην v%1.\n\nΕπανεκκινήστε το KOReader για να εφαρμοστεί η ενημέρωση."
msgid "Restart now"
msgstr "Επανεκκίνηση τώρα"
msgid "Later"
msgstr "Αργότερα"
msgid "Failed to install update: %1"
msgstr "Η εγκατάσταση της ενημέρωσης απέτυχε: %1"
msgid "unknown error"
msgstr "άγνωστο σφάλμα"
msgid "No annotations to push"
msgstr "Δεν υπάρχουν σχόλια προς αποστολή"
msgid "Pushing annotations..."
msgstr "Αποστολή σχολίων…"
msgid "%1 annotations pushed successfully"
msgstr "Αποστάλθηκαν %1 σχόλια"
msgid "Failed to push annotations"
msgstr "Η αποστολή των σχολίων απέτυχε"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Ο συγχρονισμός σχολίων δεν υποστηρίζεται για έγγραφα PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Πλήρης συγχρονισμός: λήψη όλων των σχολίων…"
msgid "Pulling annotations..."
msgstr "Λήψη σχολίων…"
msgid "Failed to pull annotations"
msgstr "Η λήψη των σχολίων απέτυχε"
msgid "No new annotations found"
msgstr "Δεν βρέθηκαν νέα σχόλια"
msgid "%1 annotations pulled"
msgstr "Ελήφθησαν %1 σχόλια"
msgid "Cancel"
msgstr "Ακύρωση"
msgid "Login"
msgstr "Σύνδεση"
msgid "Please enter both email and password"
msgstr "Εισαγάγετε email και κωδικό πρόσβασης"
msgid "Please configure Supabase URL and API key first"
msgstr "Διαμορφώστε πρώτα το URL Supabase και το κλειδί API"
msgid "Logging in..."
msgstr "Σύνδεση…"
msgid "Successfully logged in to Readest"
msgstr "Συνδεθήκατε στο Readest"
msgid "Login failed: %1"
msgstr "Η σύνδεση απέτυχε: %1"
msgid "Logged out from Readest"
msgstr "Αποσυνδεθήκατε από το Readest"
msgid "Cannot identify the current book"
msgstr "Αδυναμία αναγνώρισης του τρέχοντος βιβλίου"
msgid "Progress has been synchronized."
msgstr "Η πρόοδος συγχρονίστηκε."
msgid "Pushing reading progress..."
msgstr "Αποστολή προόδου ανάγνωσης…"
msgid "Reading progress pushed successfully"
msgstr "Η πρόοδος ανάγνωσης αποστάλθηκε"
msgid "Failed to push reading progress"
msgstr "Η αποστολή της προόδου ανάγνωσης απέτυχε"
msgid "Pulling reading progress..."
msgstr "Λήψη προόδου ανάγνωσης…"
msgid "Authentication failed, please login again"
msgstr "Αποτυχία ταυτοποίησης, συνδεθείτε ξανά"
msgid "Failed to pull reading progress"
msgstr "Η λήψη της προόδου ανάγνωσης απέτυχε"
msgid "Reading progress synchronized"
msgstr "Η πρόοδος ανάγνωσης συγχρονίστηκε"
msgid "No saved reading progress found for this book"
msgstr "Δεν βρέθηκε αποθηκευμένη πρόοδος ανάγνωσης για αυτό το βιβλίο"
@@ -0,0 +1,231 @@
# Spanish translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Spanish\n"
"Language: es\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Mantiene sincronizados tus dispositivos KOReader y Readest."
msgid "Set auto progress sync"
msgstr "Configurar sincronización automática del progreso"
msgid "on"
msgstr "activado"
msgid "off"
msgstr "desactivado"
msgid "Toggle auto readest sync"
msgstr "Alternar sincronización automática de Readest"
msgid "Push readest progress from this device"
msgstr "Enviar progreso de Readest desde este dispositivo"
msgid "Pull readest progress from other devices"
msgstr "Obtener progreso de Readest de otros dispositivos"
msgid "Push readest annotations from this device"
msgstr "Enviar anotaciones de Readest desde este dispositivo"
msgid "Pull readest annotations from other devices"
msgstr "Obtener anotaciones de Readest de otros dispositivos"
msgid "Log in Readest Account"
msgstr "Iniciar sesión en la cuenta Readest"
msgid "Log out as %1"
msgstr "Cerrar sesión de %1"
msgid "Auto sync progress and annotations"
msgstr "Sincronizar automáticamente progreso y anotaciones"
msgid "Push reading progress now"
msgstr "Enviar progreso de lectura ahora"
msgid "Pull reading progress now"
msgstr "Obtener progreso de lectura ahora"
msgid "Push annotations now"
msgstr "Enviar anotaciones ahora"
msgid "Pull annotations now"
msgstr "Obtener anotaciones ahora"
msgid "Full sync all annotations"
msgstr "Sincronizar completamente todas las anotaciones"
msgid "Sync info"
msgstr "Información de sincronización"
msgid "Check for update (v%1)"
msgstr "Buscar actualización (v%1)"
msgid "Check for update"
msgstr "Buscar actualización"
msgid "Please login first"
msgstr "Por favor inicia sesión primero"
msgid "Please configure Readest settings first"
msgstr "Configura primero los ajustes de Readest"
msgid "No book is open"
msgstr "Ningún libro abierto"
msgid "(none)"
msgstr "(ninguno)"
msgid "Never synced"
msgstr "Nunca sincronizado"
msgid "Book Fingerprint"
msgstr "Huella del libro"
msgid "Title"
msgstr "Título"
msgid "Author"
msgstr "Autor"
msgid "Identifiers"
msgstr "Identificadores"
msgid "Last Synced"
msgstr "Última sincronización"
msgid "Sync Info"
msgstr "Información de sincronización"
msgid "Checking for update…"
msgstr "Buscando actualización…"
msgid "Failed to check for update. Please try again later."
msgstr "Error al buscar actualización. Inténtalo de nuevo más tarde."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Hay una nueva versión disponible: v%1 (actual: v%2).\n\n¿Quieres actualizar ahora?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Hay una nueva versión disponible: v%1.\n\n¿Quieres actualizar ahora?"
msgid "Update"
msgstr "Actualizar"
msgid "You are up to date (v%1)."
msgstr "Estás al día (v%1)."
msgid "Downloading update…"
msgstr "Descargando actualización…"
msgid "Failed to download update. Please try again later."
msgstr "Error al descargar la actualización. Inténtalo de nuevo más tarde."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest actualizado a v%1.\n\nReinicia KOReader para aplicar la actualización."
msgid "Restart now"
msgstr "Reiniciar ahora"
msgid "Later"
msgstr "Más tarde"
msgid "Failed to install update: %1"
msgstr "Error al instalar la actualización: %1"
msgid "unknown error"
msgstr "error desconocido"
msgid "No annotations to push"
msgstr "No hay anotaciones para enviar"
msgid "Pushing annotations..."
msgstr "Enviando anotaciones…"
msgid "%1 annotations pushed successfully"
msgstr "%1 anotaciones enviadas correctamente"
msgid "Failed to push annotations"
msgstr "Error al enviar las anotaciones"
msgid "Annotation sync is not supported for PDF documents"
msgstr "La sincronización de anotaciones no es compatible con documentos PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Sincronización completa: obteniendo todas las anotaciones…"
msgid "Pulling annotations..."
msgstr "Obteniendo anotaciones…"
msgid "Failed to pull annotations"
msgstr "Error al obtener las anotaciones"
msgid "No new annotations found"
msgstr "No se encontraron anotaciones nuevas"
msgid "%1 annotations pulled"
msgstr "%1 anotaciones obtenidas"
msgid "Cancel"
msgstr "Cancelar"
msgid "Login"
msgstr "Iniciar sesión"
msgid "Please enter both email and password"
msgstr "Introduce el correo y la contraseña"
msgid "Please configure Supabase URL and API key first"
msgstr "Configura primero la URL de Supabase y la clave API"
msgid "Logging in..."
msgstr "Iniciando sesión…"
msgid "Successfully logged in to Readest"
msgstr "Sesión iniciada en Readest correctamente"
msgid "Login failed: %1"
msgstr "Error al iniciar sesión: %1"
msgid "Logged out from Readest"
msgstr "Sesión cerrada de Readest"
msgid "Cannot identify the current book"
msgstr "No se puede identificar el libro actual"
msgid "Progress has been synchronized."
msgstr "El progreso se ha sincronizado."
msgid "Pushing reading progress..."
msgstr "Enviando progreso de lectura…"
msgid "Reading progress pushed successfully"
msgstr "Progreso de lectura enviado correctamente"
msgid "Failed to push reading progress"
msgstr "Error al enviar el progreso de lectura"
msgid "Pulling reading progress..."
msgstr "Obteniendo progreso de lectura…"
msgid "Authentication failed, please login again"
msgstr "Error de autenticación, inicia sesión de nuevo"
msgid "Failed to pull reading progress"
msgstr "Error al obtener el progreso de lectura"
msgid "Reading progress synchronized"
msgstr "Progreso de lectura sincronizado"
msgid "No saved reading progress found for this book"
msgstr "No se encontró progreso de lectura guardado para este libro"
@@ -0,0 +1,231 @@
# Persian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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=2; plural=(n > 1);\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "دستگاه‌های KOReader و Readest شما را همگام نگه می‌دارد."
msgid "Set auto progress sync"
msgstr "تنظیم همگام‌سازی خودکار پیشرفت"
msgid "on"
msgstr "روشن"
msgid "off"
msgstr "خاموش"
msgid "Toggle auto readest sync"
msgstr "تغییر وضعیت همگام‌سازی خودکار Readest"
msgid "Push readest progress from this device"
msgstr "ارسال پیشرفت Readest از این دستگاه"
msgid "Pull readest progress from other devices"
msgstr "دریافت پیشرفت Readest از دستگاه‌های دیگر"
msgid "Push readest annotations from this device"
msgstr "ارسال یادداشت‌های Readest از این دستگاه"
msgid "Pull readest annotations from other devices"
msgstr "دریافت یادداشت‌های Readest از دستگاه‌های دیگر"
msgid "Log in Readest Account"
msgstr "ورود به حساب Readest"
msgid "Log out as %1"
msgstr "خروج از حساب %1"
msgid "Auto sync progress and annotations"
msgstr "همگام‌سازی خودکار پیشرفت و یادداشت‌ها"
msgid "Push reading progress now"
msgstr "ارسال پیشرفت مطالعه اکنون"
msgid "Pull reading progress now"
msgstr "دریافت پیشرفت مطالعه اکنون"
msgid "Push annotations now"
msgstr "ارسال یادداشت‌ها اکنون"
msgid "Pull annotations now"
msgstr "دریافت یادداشت‌ها اکنون"
msgid "Full sync all annotations"
msgstr "همگام‌سازی کامل تمام یادداشت‌ها"
msgid "Sync info"
msgstr "اطلاعات همگام‌سازی"
msgid "Check for update (v%1)"
msgstr "بررسی به‌روزرسانی (v%1)"
msgid "Check for update"
msgstr "بررسی به‌روزرسانی"
msgid "Please login first"
msgstr "ابتدا وارد شوید"
msgid "Please configure Readest settings first"
msgstr "ابتدا تنظیمات Readest را پیکربندی کنید"
msgid "No book is open"
msgstr "هیچ کتابی باز نیست"
msgid "(none)"
msgstr "(هیچ‌کدام)"
msgid "Never synced"
msgstr "هرگز همگام‌سازی نشده"
msgid "Book Fingerprint"
msgstr "اثر انگشت کتاب"
msgid "Title"
msgstr "عنوان"
msgid "Author"
msgstr "نویسنده"
msgid "Identifiers"
msgstr "شناسه‌ها"
msgid "Last Synced"
msgstr "آخرین همگام‌سازی"
msgid "Sync Info"
msgstr "اطلاعات همگام‌سازی"
msgid "Checking for update…"
msgstr "در حال بررسی به‌روزرسانی…"
msgid "Failed to check for update. Please try again later."
msgstr "بررسی به‌روزرسانی ناموفق بود. لطفاً بعداً دوباره تلاش کنید."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "نسخه جدیدی موجود است: v%1 (فعلی: v%2).\n\nاکنون به‌روزرسانی شود؟"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "نسخه جدیدی موجود است: v%1.\n\nاکنون به‌روزرسانی شود؟"
msgid "Update"
msgstr "به‌روزرسانی"
msgid "You are up to date (v%1)."
msgstr "شما به‌روز هستید (v%1)."
msgid "Downloading update…"
msgstr "در حال دانلود به‌روزرسانی…"
msgid "Failed to download update. Please try again later."
msgstr "دانلود به‌روزرسانی ناموفق بود. لطفاً بعداً دوباره تلاش کنید."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "افزونه Readest به v%1 به‌روزرسانی شد.\n\nبرای اعمال به‌روزرسانی، KOReader را راه‌اندازی مجدد کنید."
msgid "Restart now"
msgstr "راه‌اندازی مجدد اکنون"
msgid "Later"
msgstr "بعداً"
msgid "Failed to install update: %1"
msgstr "نصب به‌روزرسانی ناموفق بود: %1"
msgid "unknown error"
msgstr "خطای ناشناخته"
msgid "No annotations to push"
msgstr "هیچ یادداشتی برای ارسال نیست"
msgid "Pushing annotations..."
msgstr "در حال ارسال یادداشت‌ها…"
msgid "%1 annotations pushed successfully"
msgstr "%1 یادداشت با موفقیت ارسال شد"
msgid "Failed to push annotations"
msgstr "ارسال یادداشت‌ها ناموفق بود"
msgid "Annotation sync is not supported for PDF documents"
msgstr "همگام‌سازی یادداشت برای اسناد PDF پشتیبانی نمی‌شود"
msgid "Full sync: pulling all annotations..."
msgstr "همگام‌سازی کامل: در حال دریافت تمام یادداشت‌ها…"
msgid "Pulling annotations..."
msgstr "در حال دریافت یادداشت‌ها…"
msgid "Failed to pull annotations"
msgstr "دریافت یادداشت‌ها ناموفق بود"
msgid "No new annotations found"
msgstr "یادداشت جدیدی یافت نشد"
msgid "%1 annotations pulled"
msgstr "%1 یادداشت دریافت شد"
msgid "Cancel"
msgstr "لغو"
msgid "Login"
msgstr "ورود"
msgid "Please enter both email and password"
msgstr "لطفاً ایمیل و رمز عبور را وارد کنید"
msgid "Please configure Supabase URL and API key first"
msgstr "ابتدا آدرس Supabase و کلید API را پیکربندی کنید"
msgid "Logging in..."
msgstr "در حال ورود…"
msgid "Successfully logged in to Readest"
msgstr "با موفقیت وارد Readest شدید"
msgid "Login failed: %1"
msgstr "ورود ناموفق: %1"
msgid "Logged out from Readest"
msgstr "از Readest خارج شدید"
msgid "Cannot identify the current book"
msgstr "شناسایی کتاب فعلی ممکن نیست"
msgid "Progress has been synchronized."
msgstr "پیشرفت همگام‌سازی شد."
msgid "Pushing reading progress..."
msgstr "در حال ارسال پیشرفت مطالعه…"
msgid "Reading progress pushed successfully"
msgstr "پیشرفت مطالعه با موفقیت ارسال شد"
msgid "Failed to push reading progress"
msgstr "ارسال پیشرفت مطالعه ناموفق بود"
msgid "Pulling reading progress..."
msgstr "در حال دریافت پیشرفت مطالعه…"
msgid "Authentication failed, please login again"
msgstr "احراز هویت ناموفق بود، دوباره وارد شوید"
msgid "Failed to pull reading progress"
msgstr "دریافت پیشرفت مطالعه ناموفق بود"
msgid "Reading progress synchronized"
msgstr "پیشرفت مطالعه همگام‌سازی شد"
msgid "No saved reading progress found for this book"
msgstr "پیشرفت مطالعه ذخیره‌شده‌ای برای این کتاب یافت نشد"
@@ -0,0 +1,231 @@
# French translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: French\n"
"Language: fr\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Maintient vos appareils KOReader et Readest synchronisés."
msgid "Set auto progress sync"
msgstr "Définir la synchronisation automatique de la progression"
msgid "on"
msgstr "activé"
msgid "off"
msgstr "désactivé"
msgid "Toggle auto readest sync"
msgstr "Basculer la synchronisation automatique Readest"
msgid "Push readest progress from this device"
msgstr "Envoyer la progression Readest depuis cet appareil"
msgid "Pull readest progress from other devices"
msgstr "Récupérer la progression Readest des autres appareils"
msgid "Push readest annotations from this device"
msgstr "Envoyer les annotations Readest depuis cet appareil"
msgid "Pull readest annotations from other devices"
msgstr "Récupérer les annotations Readest des autres appareils"
msgid "Log in Readest Account"
msgstr "Se connecter au compte Readest"
msgid "Log out as %1"
msgstr "Se déconnecter de %1"
msgid "Auto sync progress and annotations"
msgstr "Synchroniser automatiquement la progression et les annotations"
msgid "Push reading progress now"
msgstr "Envoyer la progression de lecture maintenant"
msgid "Pull reading progress now"
msgstr "Récupérer la progression de lecture maintenant"
msgid "Push annotations now"
msgstr "Envoyer les annotations maintenant"
msgid "Pull annotations now"
msgstr "Récupérer les annotations maintenant"
msgid "Full sync all annotations"
msgstr "Synchroniser entièrement toutes les annotations"
msgid "Sync info"
msgstr "Infos de synchronisation"
msgid "Check for update (v%1)"
msgstr "Rechercher une mise à jour (v%1)"
msgid "Check for update"
msgstr "Rechercher une mise à jour"
msgid "Please login first"
msgstr "Veuillez d'abord vous connecter"
msgid "Please configure Readest settings first"
msgstr "Veuillez d'abord configurer les paramètres Readest"
msgid "No book is open"
msgstr "Aucun livre ouvert"
msgid "(none)"
msgstr "(aucun)"
msgid "Never synced"
msgstr "Jamais synchronisé"
msgid "Book Fingerprint"
msgstr "Empreinte du livre"
msgid "Title"
msgstr "Titre"
msgid "Author"
msgstr "Auteur"
msgid "Identifiers"
msgstr "Identifiants"
msgid "Last Synced"
msgstr "Dernière synchronisation"
msgid "Sync Info"
msgstr "Infos de synchronisation"
msgid "Checking for update…"
msgstr "Recherche d'une mise à jour…"
msgid "Failed to check for update. Please try again later."
msgstr "Échec de la recherche de mise à jour. Veuillez réessayer plus tard."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Une nouvelle version est disponible : v%1 (actuelle : v%2).\n\nVoulez-vous mettre à jour maintenant ?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Une nouvelle version est disponible : v%1.\n\nVoulez-vous mettre à jour maintenant ?"
msgid "Update"
msgstr "Mettre à jour"
msgid "You are up to date (v%1)."
msgstr "Vous êtes à jour (v%1)."
msgid "Downloading update…"
msgstr "Téléchargement de la mise à jour…"
msgid "Failed to download update. Please try again later."
msgstr "Échec du téléchargement de la mise à jour. Veuillez réessayer plus tard."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest mis à jour vers v%1.\n\nVeuillez redémarrer KOReader pour appliquer la mise à jour."
msgid "Restart now"
msgstr "Redémarrer maintenant"
msgid "Later"
msgstr "Plus tard"
msgid "Failed to install update: %1"
msgstr "Échec de l'installation de la mise à jour : %1"
msgid "unknown error"
msgstr "erreur inconnue"
msgid "No annotations to push"
msgstr "Aucune annotation à envoyer"
msgid "Pushing annotations..."
msgstr "Envoi des annotations…"
msgid "%1 annotations pushed successfully"
msgstr "%1 annotations envoyées avec succès"
msgid "Failed to push annotations"
msgstr "Échec de l'envoi des annotations"
msgid "Annotation sync is not supported for PDF documents"
msgstr "La synchronisation des annotations n'est pas prise en charge pour les documents PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Synchronisation complète : récupération de toutes les annotations…"
msgid "Pulling annotations..."
msgstr "Récupération des annotations…"
msgid "Failed to pull annotations"
msgstr "Échec de la récupération des annotations"
msgid "No new annotations found"
msgstr "Aucune nouvelle annotation trouvée"
msgid "%1 annotations pulled"
msgstr "%1 annotations récupérées"
msgid "Cancel"
msgstr "Annuler"
msgid "Login"
msgstr "Connexion"
msgid "Please enter both email and password"
msgstr "Veuillez saisir l'e-mail et le mot de passe"
msgid "Please configure Supabase URL and API key first"
msgstr "Veuillez d'abord configurer l'URL Supabase et la clé API"
msgid "Logging in..."
msgstr "Connexion en cours…"
msgid "Successfully logged in to Readest"
msgstr "Connexion à Readest réussie"
msgid "Login failed: %1"
msgstr "Échec de la connexion : %1"
msgid "Logged out from Readest"
msgstr "Déconnecté de Readest"
msgid "Cannot identify the current book"
msgstr "Impossible d'identifier le livre actuel"
msgid "Progress has been synchronized."
msgstr "La progression a été synchronisée."
msgid "Pushing reading progress..."
msgstr "Envoi de la progression de lecture…"
msgid "Reading progress pushed successfully"
msgstr "Progression de lecture envoyée avec succès"
msgid "Failed to push reading progress"
msgstr "Échec de l'envoi de la progression de lecture"
msgid "Pulling reading progress..."
msgstr "Récupération de la progression de lecture…"
msgid "Authentication failed, please login again"
msgstr "Échec de l'authentification, veuillez vous reconnecter"
msgid "Failed to pull reading progress"
msgstr "Échec de la récupération de la progression de lecture"
msgid "Reading progress synchronized"
msgstr "Progression de lecture synchronisée"
msgid "No saved reading progress found for this book"
msgstr "Aucune progression de lecture enregistrée pour ce livre"
@@ -0,0 +1,231 @@
# Hebrew translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Hebrew\n"
"Language: he\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "שומר על סנכרון בין מכשירי KOReader ו-Readest שלך."
msgid "Set auto progress sync"
msgstr "הגדר סנכרון התקדמות אוטומטי"
msgid "on"
msgstr "פועל"
msgid "off"
msgstr "כבוי"
msgid "Toggle auto readest sync"
msgstr "החלף סנכרון Readest אוטומטי"
msgid "Push readest progress from this device"
msgstr "שלח התקדמות Readest ממכשיר זה"
msgid "Pull readest progress from other devices"
msgstr "משוך התקדמות Readest ממכשירים אחרים"
msgid "Push readest annotations from this device"
msgstr "שלח הערות Readest ממכשיר זה"
msgid "Pull readest annotations from other devices"
msgstr "משוך הערות Readest ממכשירים אחרים"
msgid "Log in Readest Account"
msgstr "התחבר לחשבון Readest"
msgid "Log out as %1"
msgstr "התנתק מ-%1"
msgid "Auto sync progress and annotations"
msgstr "סנכרן התקדמות והערות אוטומטית"
msgid "Push reading progress now"
msgstr "שלח התקדמות קריאה כעת"
msgid "Pull reading progress now"
msgstr "משוך התקדמות קריאה כעת"
msgid "Push annotations now"
msgstr "שלח הערות כעת"
msgid "Pull annotations now"
msgstr "משוך הערות כעת"
msgid "Full sync all annotations"
msgstr "סנכרון מלא של כל ההערות"
msgid "Sync info"
msgstr "מידע סנכרון"
msgid "Check for update (v%1)"
msgstr "בדוק עדכון (v%1)"
msgid "Check for update"
msgstr "בדוק עדכון"
msgid "Please login first"
msgstr "התחבר תחילה"
msgid "Please configure Readest settings first"
msgstr "הגדר תחילה את הגדרות Readest"
msgid "No book is open"
msgstr "לא פתוח ספר"
msgid "(none)"
msgstr "(אין)"
msgid "Never synced"
msgstr "מעולם לא סונכרן"
msgid "Book Fingerprint"
msgstr "טביעת אצבע של הספר"
msgid "Title"
msgstr "כותרת"
msgid "Author"
msgstr "מחבר"
msgid "Identifiers"
msgstr "מזהים"
msgid "Last Synced"
msgstr "סנכרון אחרון"
msgid "Sync Info"
msgstr "מידע סנכרון"
msgid "Checking for update…"
msgstr "בודק עדכון…"
msgid "Failed to check for update. Please try again later."
msgstr "בדיקת העדכון נכשלה. נסה שוב מאוחר יותר."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "גרסה חדשה זמינה: v%1 (נוכחית: v%2).\n\nלעדכן כעת?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "גרסה חדשה זמינה: v%1.\n\nלעדכן כעת?"
msgid "Update"
msgstr "עדכן"
msgid "You are up to date (v%1)."
msgstr "אתה מעודכן (v%1)."
msgid "Downloading update…"
msgstr "מוריד עדכון…"
msgid "Failed to download update. Please try again later."
msgstr "הורדת העדכון נכשלה. נסה שוב מאוחר יותר."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "תוסף Readest עודכן ל-v%1.\n\nהפעל מחדש את KOReader כדי להחיל את העדכון."
msgid "Restart now"
msgstr "הפעל מחדש כעת"
msgid "Later"
msgstr "מאוחר יותר"
msgid "Failed to install update: %1"
msgstr "התקנת העדכון נכשלה: %1"
msgid "unknown error"
msgstr "שגיאה לא ידועה"
msgid "No annotations to push"
msgstr "אין הערות לשליחה"
msgid "Pushing annotations..."
msgstr "שולח הערות…"
msgid "%1 annotations pushed successfully"
msgstr "%1 הערות נשלחו בהצלחה"
msgid "Failed to push annotations"
msgstr "שליחת ההערות נכשלה"
msgid "Annotation sync is not supported for PDF documents"
msgstr "סנכרון הערות אינו נתמך עבור מסמכי PDF"
msgid "Full sync: pulling all annotations..."
msgstr "סנכרון מלא: מושך את כל ההערות…"
msgid "Pulling annotations..."
msgstr "מושך הערות…"
msgid "Failed to pull annotations"
msgstr "משיכת ההערות נכשלה"
msgid "No new annotations found"
msgstr "לא נמצאו הערות חדשות"
msgid "%1 annotations pulled"
msgstr "נמשכו %1 הערות"
msgid "Cancel"
msgstr "ביטול"
msgid "Login"
msgstr "התחבר"
msgid "Please enter both email and password"
msgstr "הזן דוא\"ל וסיסמה"
msgid "Please configure Supabase URL and API key first"
msgstr "הגדר תחילה את כתובת Supabase ומפתח API"
msgid "Logging in..."
msgstr "מתחבר…"
msgid "Successfully logged in to Readest"
msgstr "התחברת ל-Readest בהצלחה"
msgid "Login failed: %1"
msgstr "ההתחברות נכשלה: %1"
msgid "Logged out from Readest"
msgstr "התנתקת מ-Readest"
msgid "Cannot identify the current book"
msgstr "לא ניתן לזהות את הספר הנוכחי"
msgid "Progress has been synchronized."
msgstr "ההתקדמות סונכרנה."
msgid "Pushing reading progress..."
msgstr "שולח התקדמות קריאה…"
msgid "Reading progress pushed successfully"
msgstr "התקדמות הקריאה נשלחה בהצלחה"
msgid "Failed to push reading progress"
msgstr "שליחת התקדמות הקריאה נכשלה"
msgid "Pulling reading progress..."
msgstr "מושך התקדמות קריאה…"
msgid "Authentication failed, please login again"
msgstr "האימות נכשל, התחבר שוב"
msgid "Failed to pull reading progress"
msgstr "משיכת התקדמות הקריאה נכשלה"
msgid "Reading progress synchronized"
msgstr "התקדמות הקריאה סונכרנה"
msgid "No saved reading progress found for this book"
msgstr "לא נמצאה התקדמות קריאה שמורה לספר זה"
@@ -0,0 +1,231 @@
# Hindi translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Hindi\n"
"Language: hi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "आपके KOReader और Readest डिवाइसों को सिंक रखता है।"
msgid "Set auto progress sync"
msgstr "स्वचालित प्रगति सिंक सेट करें"
msgid "on"
msgstr "चालू"
msgid "off"
msgstr "बंद"
msgid "Toggle auto readest sync"
msgstr "स्वचालित Readest सिंक बदलें"
msgid "Push readest progress from this device"
msgstr "इस डिवाइस से Readest प्रगति भेजें"
msgid "Pull readest progress from other devices"
msgstr "अन्य डिवाइसों से Readest प्रगति प्राप्त करें"
msgid "Push readest annotations from this device"
msgstr "इस डिवाइस से Readest एनोटेशन भेजें"
msgid "Pull readest annotations from other devices"
msgstr "अन्य डिवाइसों से Readest एनोटेशन प्राप्त करें"
msgid "Log in Readest Account"
msgstr "Readest खाते में लॉग इन करें"
msgid "Log out as %1"
msgstr "%1 से लॉग आउट करें"
msgid "Auto sync progress and annotations"
msgstr "प्रगति और एनोटेशन स्वचालित रूप से सिंक करें"
msgid "Push reading progress now"
msgstr "अभी पठन प्रगति भेजें"
msgid "Pull reading progress now"
msgstr "अभी पठन प्रगति प्राप्त करें"
msgid "Push annotations now"
msgstr "अभी एनोटेशन भेजें"
msgid "Pull annotations now"
msgstr "अभी एनोटेशन प्राप्त करें"
msgid "Full sync all annotations"
msgstr "सभी एनोटेशन का पूर्ण सिंक"
msgid "Sync info"
msgstr "सिंक जानकारी"
msgid "Check for update (v%1)"
msgstr "अपडेट जांचें (v%1)"
msgid "Check for update"
msgstr "अपडेट जांचें"
msgid "Please login first"
msgstr "कृपया पहले लॉग इन करें"
msgid "Please configure Readest settings first"
msgstr "कृपया पहले Readest सेटिंग्स कॉन्फ़िगर करें"
msgid "No book is open"
msgstr "कोई पुस्तक खुली नहीं है"
msgid "(none)"
msgstr "(कोई नहीं)"
msgid "Never synced"
msgstr "कभी सिंक नहीं हुआ"
msgid "Book Fingerprint"
msgstr "पुस्तक फिंगरप्रिंट"
msgid "Title"
msgstr "शीर्षक"
msgid "Author"
msgstr "लेखक"
msgid "Identifiers"
msgstr "पहचानकर्ता"
msgid "Last Synced"
msgstr "अंतिम सिंक"
msgid "Sync Info"
msgstr "सिंक जानकारी"
msgid "Checking for update…"
msgstr "अपडेट जांच रहा है…"
msgid "Failed to check for update. Please try again later."
msgstr "अपडेट जांचने में विफल। कृपया बाद में पुनः प्रयास करें।"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "नया संस्करण उपलब्ध है: v%1 (वर्तमान: v%2)।\n\nअभी अपडेट करें?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "नया संस्करण उपलब्ध है: v%1।\n\nअभी अपडेट करें?"
msgid "Update"
msgstr "अपडेट"
msgid "You are up to date (v%1)."
msgstr "आप अद्यतित हैं (v%1)।"
msgid "Downloading update…"
msgstr "अपडेट डाउनलोड हो रहा है…"
msgid "Failed to download update. Please try again later."
msgstr "अपडेट डाउनलोड करने में विफल। कृपया बाद में पुनः प्रयास करें।"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest प्लगइन v%1 पर अपडेट किया गया।\n\nअपडेट लागू करने के लिए KOReader पुनः प्रारंभ करें।"
msgid "Restart now"
msgstr "अभी पुनः प्रारंभ करें"
msgid "Later"
msgstr "बाद में"
msgid "Failed to install update: %1"
msgstr "अपडेट इंस्टॉल करने में विफल: %1"
msgid "unknown error"
msgstr "अज्ञात त्रुटि"
msgid "No annotations to push"
msgstr "भेजने के लिए कोई एनोटेशन नहीं"
msgid "Pushing annotations..."
msgstr "एनोटेशन भेज रहा है…"
msgid "%1 annotations pushed successfully"
msgstr "%1 एनोटेशन सफलतापूर्वक भेजे गए"
msgid "Failed to push annotations"
msgstr "एनोटेशन भेजने में विफल"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF दस्तावेज़ों के लिए एनोटेशन सिंक समर्थित नहीं है"
msgid "Full sync: pulling all annotations..."
msgstr "पूर्ण सिंक: सभी एनोटेशन प्राप्त कर रहा है…"
msgid "Pulling annotations..."
msgstr "एनोटेशन प्राप्त कर रहा है…"
msgid "Failed to pull annotations"
msgstr "एनोटेशन प्राप्त करने में विफल"
msgid "No new annotations found"
msgstr "कोई नया एनोटेशन नहीं मिला"
msgid "%1 annotations pulled"
msgstr "%1 एनोटेशन प्राप्त हुए"
msgid "Cancel"
msgstr "रद्द करें"
msgid "Login"
msgstr "लॉग इन"
msgid "Please enter both email and password"
msgstr "कृपया ईमेल और पासवर्ड दोनों दर्ज करें"
msgid "Please configure Supabase URL and API key first"
msgstr "कृपया पहले Supabase URL और API कुंजी कॉन्फ़िगर करें"
msgid "Logging in..."
msgstr "लॉग इन कर रहा है…"
msgid "Successfully logged in to Readest"
msgstr "Readest में सफलतापूर्वक लॉग इन हुए"
msgid "Login failed: %1"
msgstr "लॉग इन विफल: %1"
msgid "Logged out from Readest"
msgstr "Readest से लॉग आउट हो गए"
msgid "Cannot identify the current book"
msgstr "वर्तमान पुस्तक पहचानने में असमर्थ"
msgid "Progress has been synchronized."
msgstr "प्रगति सिंक हो गई है।"
msgid "Pushing reading progress..."
msgstr "पठन प्रगति भेज रहा है…"
msgid "Reading progress pushed successfully"
msgstr "पठन प्रगति सफलतापूर्वक भेजी गई"
msgid "Failed to push reading progress"
msgstr "पठन प्रगति भेजने में विफल"
msgid "Pulling reading progress..."
msgstr "पठन प्रगति प्राप्त कर रहा है…"
msgid "Authentication failed, please login again"
msgstr "प्रमाणीकरण विफल, कृपया पुनः लॉग इन करें"
msgid "Failed to pull reading progress"
msgstr "पठन प्रगति प्राप्त करने में विफल"
msgid "Reading progress synchronized"
msgstr "पठन प्रगति सिंक हो गई"
msgid "No saved reading progress found for this book"
msgstr "इस पुस्तक के लिए सहेजी गई पठन प्रगति नहीं मिली"
@@ -0,0 +1,231 @@
# Hungarian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Hungarian\n"
"Language: hu\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Szinkronban tartja a KOReader és Readest eszközeidet."
msgid "Set auto progress sync"
msgstr "Automatikus haladás-szinkronizálás beállítása"
msgid "on"
msgstr "be"
msgid "off"
msgstr "ki"
msgid "Toggle auto readest sync"
msgstr "Automatikus Readest-szinkronizálás váltása"
msgid "Push readest progress from this device"
msgstr "Readest haladás küldése erről az eszközről"
msgid "Pull readest progress from other devices"
msgstr "Readest haladás lekérése más eszközökről"
msgid "Push readest annotations from this device"
msgstr "Readest jegyzetek küldése erről az eszközről"
msgid "Pull readest annotations from other devices"
msgstr "Readest jegyzetek lekérése más eszközökről"
msgid "Log in Readest Account"
msgstr "Bejelentkezés Readest-fiókba"
msgid "Log out as %1"
msgstr "Kijelentkezés mint %1"
msgid "Auto sync progress and annotations"
msgstr "Haladás és jegyzetek automatikus szinkronizálása"
msgid "Push reading progress now"
msgstr "Olvasási haladás küldése most"
msgid "Pull reading progress now"
msgstr "Olvasási haladás lekérése most"
msgid "Push annotations now"
msgstr "Jegyzetek küldése most"
msgid "Pull annotations now"
msgstr "Jegyzetek lekérése most"
msgid "Full sync all annotations"
msgstr "Az összes jegyzet teljes szinkronizálása"
msgid "Sync info"
msgstr "Szinkronizálási adatok"
msgid "Check for update (v%1)"
msgstr "Frissítés keresése (v%1)"
msgid "Check for update"
msgstr "Frissítés keresése"
msgid "Please login first"
msgstr "Először jelentkezz be"
msgid "Please configure Readest settings first"
msgstr "Először állítsd be a Readest paramétereit"
msgid "No book is open"
msgstr "Nincs megnyitott könyv"
msgid "(none)"
msgstr "(nincs)"
msgid "Never synced"
msgstr "Még nincs szinkronizálva"
msgid "Book Fingerprint"
msgstr "Könyv ujjlenyomata"
msgid "Title"
msgstr "Cím"
msgid "Author"
msgstr "Szerző"
msgid "Identifiers"
msgstr "Azonosítók"
msgid "Last Synced"
msgstr "Utolsó szinkronizálás"
msgid "Sync Info"
msgstr "Szinkronizálási adatok"
msgid "Checking for update…"
msgstr "Frissítés keresése…"
msgid "Failed to check for update. Please try again later."
msgstr "A frissítés keresése sikertelen. Próbáld újra később."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Új verzió érhető el: v%1 (jelenlegi: v%2).\n\nFrissítesz most?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Új verzió érhető el: v%1.\n\nFrissítesz most?"
msgid "Update"
msgstr "Frissítés"
msgid "You are up to date (v%1)."
msgstr "Naprakész vagy (v%1)."
msgid "Downloading update…"
msgstr "Frissítés letöltése…"
msgid "Failed to download update. Please try again later."
msgstr "A frissítés letöltése sikertelen. Próbáld újra később."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "A Readest bővítmény v%1 verzióra frissült.\n\nIndítsd újra a KOReadert a frissítés alkalmazásához."
msgid "Restart now"
msgstr "Újraindítás most"
msgid "Later"
msgstr "Később"
msgid "Failed to install update: %1"
msgstr "A frissítés telepítése sikertelen: %1"
msgid "unknown error"
msgstr "ismeretlen hiba"
msgid "No annotations to push"
msgstr "Nincs küldendő jegyzet"
msgid "Pushing annotations..."
msgstr "Jegyzetek küldése…"
msgid "%1 annotations pushed successfully"
msgstr "%1 jegyzet sikeresen elküldve"
msgid "Failed to push annotations"
msgstr "A jegyzetek küldése sikertelen"
msgid "Annotation sync is not supported for PDF documents"
msgstr "A jegyzetek szinkronizálása nem támogatott PDF-dokumentumoknál"
msgid "Full sync: pulling all annotations..."
msgstr "Teljes szinkronizálás: az összes jegyzet lekérése…"
msgid "Pulling annotations..."
msgstr "Jegyzetek lekérése…"
msgid "Failed to pull annotations"
msgstr "A jegyzetek lekérése sikertelen"
msgid "No new annotations found"
msgstr "Nem található új jegyzet"
msgid "%1 annotations pulled"
msgstr "%1 jegyzet lekérve"
msgid "Cancel"
msgstr "Mégse"
msgid "Login"
msgstr "Bejelentkezés"
msgid "Please enter both email and password"
msgstr "Add meg az e-mail-címet és a jelszót"
msgid "Please configure Supabase URL and API key first"
msgstr "Először állítsd be a Supabase URL-t és az API-kulcsot"
msgid "Logging in..."
msgstr "Bejelentkezés…"
msgid "Successfully logged in to Readest"
msgstr "Sikeres bejelentkezés a Readestbe"
msgid "Login failed: %1"
msgstr "Sikertelen bejelentkezés: %1"
msgid "Logged out from Readest"
msgstr "Kijelentkezve a Readestből"
msgid "Cannot identify the current book"
msgstr "Az aktuális könyv nem azonosítható"
msgid "Progress has been synchronized."
msgstr "A haladás szinkronizálva."
msgid "Pushing reading progress..."
msgstr "Olvasási haladás küldése…"
msgid "Reading progress pushed successfully"
msgstr "Olvasási haladás sikeresen elküldve"
msgid "Failed to push reading progress"
msgstr "Az olvasási haladás küldése sikertelen"
msgid "Pulling reading progress..."
msgstr "Olvasási haladás lekérése…"
msgid "Authentication failed, please login again"
msgstr "Hitelesítés sikertelen, jelentkezz be újra"
msgid "Failed to pull reading progress"
msgstr "Az olvasási haladás lekérése sikertelen"
msgid "Reading progress synchronized"
msgstr "Olvasási haladás szinkronizálva"
msgid "No saved reading progress found for this book"
msgstr "Nem található mentett olvasási haladás ehhez a könyvhöz"
@@ -0,0 +1,231 @@
# Indonesian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Indonesian\n"
"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Menjaga perangkat KOReader dan Readest Anda tetap sinkron."
msgid "Set auto progress sync"
msgstr "Atur sinkronisasi progres otomatis"
msgid "on"
msgstr "aktif"
msgid "off"
msgstr "nonaktif"
msgid "Toggle auto readest sync"
msgstr "Alihkan sinkronisasi otomatis Readest"
msgid "Push readest progress from this device"
msgstr "Kirim progres Readest dari perangkat ini"
msgid "Pull readest progress from other devices"
msgstr "Ambil progres Readest dari perangkat lain"
msgid "Push readest annotations from this device"
msgstr "Kirim anotasi Readest dari perangkat ini"
msgid "Pull readest annotations from other devices"
msgstr "Ambil anotasi Readest dari perangkat lain"
msgid "Log in Readest Account"
msgstr "Masuk ke akun Readest"
msgid "Log out as %1"
msgstr "Keluar sebagai %1"
msgid "Auto sync progress and annotations"
msgstr "Sinkronkan progres dan anotasi otomatis"
msgid "Push reading progress now"
msgstr "Kirim progres baca sekarang"
msgid "Pull reading progress now"
msgstr "Ambil progres baca sekarang"
msgid "Push annotations now"
msgstr "Kirim anotasi sekarang"
msgid "Pull annotations now"
msgstr "Ambil anotasi sekarang"
msgid "Full sync all annotations"
msgstr "Sinkronisasi penuh semua anotasi"
msgid "Sync info"
msgstr "Info sinkronisasi"
msgid "Check for update (v%1)"
msgstr "Periksa pembaruan (v%1)"
msgid "Check for update"
msgstr "Periksa pembaruan"
msgid "Please login first"
msgstr "Silakan masuk terlebih dahulu"
msgid "Please configure Readest settings first"
msgstr "Konfigurasikan pengaturan Readest terlebih dahulu"
msgid "No book is open"
msgstr "Tidak ada buku terbuka"
msgid "(none)"
msgstr "(tidak ada)"
msgid "Never synced"
msgstr "Belum pernah disinkronkan"
msgid "Book Fingerprint"
msgstr "Sidik jari buku"
msgid "Title"
msgstr "Judul"
msgid "Author"
msgstr "Penulis"
msgid "Identifiers"
msgstr "Pengenal"
msgid "Last Synced"
msgstr "Sinkronisasi terakhir"
msgid "Sync Info"
msgstr "Info sinkronisasi"
msgid "Checking for update…"
msgstr "Memeriksa pembaruan…"
msgid "Failed to check for update. Please try again later."
msgstr "Gagal memeriksa pembaruan. Coba lagi nanti."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Versi baru tersedia: v%1 (saat ini: v%2).\n\nPerbarui sekarang?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Versi baru tersedia: v%1.\n\nPerbarui sekarang?"
msgid "Update"
msgstr "Perbarui"
msgid "You are up to date (v%1)."
msgstr "Anda menggunakan versi terbaru (v%1)."
msgid "Downloading update…"
msgstr "Mengunduh pembaruan…"
msgid "Failed to download update. Please try again later."
msgstr "Gagal mengunduh pembaruan. Coba lagi nanti."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest diperbarui ke v%1.\n\nMulai ulang KOReader untuk menerapkan pembaruan."
msgid "Restart now"
msgstr "Mulai ulang sekarang"
msgid "Later"
msgstr "Nanti"
msgid "Failed to install update: %1"
msgstr "Gagal memasang pembaruan: %1"
msgid "unknown error"
msgstr "kesalahan tidak diketahui"
msgid "No annotations to push"
msgstr "Tidak ada anotasi untuk dikirim"
msgid "Pushing annotations..."
msgstr "Mengirim anotasi…"
msgid "%1 annotations pushed successfully"
msgstr "%1 anotasi berhasil dikirim"
msgid "Failed to push annotations"
msgstr "Gagal mengirim anotasi"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Sinkronisasi anotasi tidak didukung untuk dokumen PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Sinkronisasi penuh: mengambil semua anotasi…"
msgid "Pulling annotations..."
msgstr "Mengambil anotasi…"
msgid "Failed to pull annotations"
msgstr "Gagal mengambil anotasi"
msgid "No new annotations found"
msgstr "Tidak ditemukan anotasi baru"
msgid "%1 annotations pulled"
msgstr "%1 anotasi diambil"
msgid "Cancel"
msgstr "Batal"
msgid "Login"
msgstr "Masuk"
msgid "Please enter both email and password"
msgstr "Masukkan email dan kata sandi"
msgid "Please configure Supabase URL and API key first"
msgstr "Konfigurasikan URL Supabase dan kunci API terlebih dahulu"
msgid "Logging in..."
msgstr "Sedang masuk…"
msgid "Successfully logged in to Readest"
msgstr "Berhasil masuk ke Readest"
msgid "Login failed: %1"
msgstr "Gagal masuk: %1"
msgid "Logged out from Readest"
msgstr "Keluar dari Readest"
msgid "Cannot identify the current book"
msgstr "Tidak dapat mengidentifikasi buku saat ini"
msgid "Progress has been synchronized."
msgstr "Progres telah disinkronkan."
msgid "Pushing reading progress..."
msgstr "Mengirim progres baca…"
msgid "Reading progress pushed successfully"
msgstr "Progres baca berhasil dikirim"
msgid "Failed to push reading progress"
msgstr "Gagal mengirim progres baca"
msgid "Pulling reading progress..."
msgstr "Mengambil progres baca…"
msgid "Authentication failed, please login again"
msgstr "Autentikasi gagal, silakan masuk lagi"
msgid "Failed to pull reading progress"
msgstr "Gagal mengambil progres baca"
msgid "Reading progress synchronized"
msgstr "Progres baca disinkronkan"
msgid "No saved reading progress found for this book"
msgstr "Tidak ada progres baca tersimpan untuk buku ini"
@@ -0,0 +1,231 @@
# Italian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Italian\n"
"Language: it\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Mantiene sincronizzati i tuoi dispositivi KOReader e Readest."
msgid "Set auto progress sync"
msgstr "Imposta sincronizzazione automatica del progresso"
msgid "on"
msgstr "attivo"
msgid "off"
msgstr "disattivo"
msgid "Toggle auto readest sync"
msgstr "Attiva/disattiva sincronizzazione automatica Readest"
msgid "Push readest progress from this device"
msgstr "Invia progresso Readest da questo dispositivo"
msgid "Pull readest progress from other devices"
msgstr "Ricevi progresso Readest dagli altri dispositivi"
msgid "Push readest annotations from this device"
msgstr "Invia annotazioni Readest da questo dispositivo"
msgid "Pull readest annotations from other devices"
msgstr "Ricevi annotazioni Readest dagli altri dispositivi"
msgid "Log in Readest Account"
msgstr "Accedi all'account Readest"
msgid "Log out as %1"
msgstr "Esci come %1"
msgid "Auto sync progress and annotations"
msgstr "Sincronizza automaticamente progresso e annotazioni"
msgid "Push reading progress now"
msgstr "Invia ora il progresso di lettura"
msgid "Pull reading progress now"
msgstr "Ricevi ora il progresso di lettura"
msgid "Push annotations now"
msgstr "Invia ora le annotazioni"
msgid "Pull annotations now"
msgstr "Ricevi ora le annotazioni"
msgid "Full sync all annotations"
msgstr "Sincronizzazione completa di tutte le annotazioni"
msgid "Sync info"
msgstr "Info sincronizzazione"
msgid "Check for update (v%1)"
msgstr "Controlla aggiornamenti (v%1)"
msgid "Check for update"
msgstr "Controlla aggiornamenti"
msgid "Please login first"
msgstr "Effettua prima l'accesso"
msgid "Please configure Readest settings first"
msgstr "Configura prima le impostazioni Readest"
msgid "No book is open"
msgstr "Nessun libro aperto"
msgid "(none)"
msgstr "(nessuno)"
msgid "Never synced"
msgstr "Mai sincronizzato"
msgid "Book Fingerprint"
msgstr "Impronta del libro"
msgid "Title"
msgstr "Titolo"
msgid "Author"
msgstr "Autore"
msgid "Identifiers"
msgstr "Identificatori"
msgid "Last Synced"
msgstr "Ultima sincronizzazione"
msgid "Sync Info"
msgstr "Info sincronizzazione"
msgid "Checking for update…"
msgstr "Controllo aggiornamenti…"
msgid "Failed to check for update. Please try again later."
msgstr "Controllo aggiornamenti non riuscito. Riprova più tardi."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "È disponibile una nuova versione: v%1 (attuale: v%2).\n\nVuoi aggiornare ora?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "È disponibile una nuova versione: v%1.\n\nVuoi aggiornare ora?"
msgid "Update"
msgstr "Aggiorna"
msgid "You are up to date (v%1)."
msgstr "Sei aggiornato (v%1)."
msgid "Downloading update…"
msgstr "Download aggiornamento in corso…"
msgid "Failed to download update. Please try again later."
msgstr "Download aggiornamento non riuscito. Riprova più tardi."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest aggiornato a v%1.\n\nRiavvia KOReader per applicare l'aggiornamento."
msgid "Restart now"
msgstr "Riavvia ora"
msgid "Later"
msgstr "Più tardi"
msgid "Failed to install update: %1"
msgstr "Installazione aggiornamento non riuscita: %1"
msgid "unknown error"
msgstr "errore sconosciuto"
msgid "No annotations to push"
msgstr "Nessuna annotazione da inviare"
msgid "Pushing annotations..."
msgstr "Invio annotazioni in corso…"
msgid "%1 annotations pushed successfully"
msgstr "%1 annotazioni inviate con successo"
msgid "Failed to push annotations"
msgstr "Invio annotazioni non riuscito"
msgid "Annotation sync is not supported for PDF documents"
msgstr "La sincronizzazione delle annotazioni non è supportata per i documenti PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Sincronizzazione completa: recupero di tutte le annotazioni…"
msgid "Pulling annotations..."
msgstr "Recupero annotazioni in corso…"
msgid "Failed to pull annotations"
msgstr "Recupero annotazioni non riuscito"
msgid "No new annotations found"
msgstr "Nessuna nuova annotazione trovata"
msgid "%1 annotations pulled"
msgstr "%1 annotazioni ricevute"
msgid "Cancel"
msgstr "Annulla"
msgid "Login"
msgstr "Accedi"
msgid "Please enter both email and password"
msgstr "Inserisci email e password"
msgid "Please configure Supabase URL and API key first"
msgstr "Configura prima l'URL Supabase e la chiave API"
msgid "Logging in..."
msgstr "Accesso in corso…"
msgid "Successfully logged in to Readest"
msgstr "Accesso a Readest riuscito"
msgid "Login failed: %1"
msgstr "Accesso non riuscito: %1"
msgid "Logged out from Readest"
msgstr "Disconnesso da Readest"
msgid "Cannot identify the current book"
msgstr "Impossibile identificare il libro attuale"
msgid "Progress has been synchronized."
msgstr "Il progresso è stato sincronizzato."
msgid "Pushing reading progress..."
msgstr "Invio progresso di lettura…"
msgid "Reading progress pushed successfully"
msgstr "Progresso di lettura inviato con successo"
msgid "Failed to push reading progress"
msgstr "Invio progresso di lettura non riuscito"
msgid "Pulling reading progress..."
msgstr "Recupero progresso di lettura…"
msgid "Authentication failed, please login again"
msgstr "Autenticazione non riuscita, accedi di nuovo"
msgid "Failed to pull reading progress"
msgstr "Recupero progresso di lettura non riuscito"
msgid "Reading progress synchronized"
msgstr "Progresso di lettura sincronizzato"
msgid "No saved reading progress found for this book"
msgstr "Nessun progresso di lettura salvato per questo libro"
@@ -0,0 +1,231 @@
# Japanese translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Japanese\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "KOReader と Readest のデバイス間で同期を保ちます。"
msgid "Set auto progress sync"
msgstr "進捗の自動同期を設定"
msgid "on"
msgstr "オン"
msgid "off"
msgstr "オフ"
msgid "Toggle auto readest sync"
msgstr "Readest 自動同期を切り替え"
msgid "Push readest progress from this device"
msgstr "このデバイスから Readest の進捗を送信"
msgid "Pull readest progress from other devices"
msgstr "他のデバイスから Readest の進捗を取得"
msgid "Push readest annotations from this device"
msgstr "このデバイスから Readest の注釈を送信"
msgid "Pull readest annotations from other devices"
msgstr "他のデバイスから Readest の注釈を取得"
msgid "Log in Readest Account"
msgstr "Readest アカウントにログイン"
msgid "Log out as %1"
msgstr "%1 をログアウト"
msgid "Auto sync progress and annotations"
msgstr "進捗と注釈を自動同期"
msgid "Push reading progress now"
msgstr "読書の進捗をすぐに送信"
msgid "Pull reading progress now"
msgstr "読書の進捗をすぐに取得"
msgid "Push annotations now"
msgstr "注釈をすぐに送信"
msgid "Pull annotations now"
msgstr "注釈をすぐに取得"
msgid "Full sync all annotations"
msgstr "すべての注釈をフル同期"
msgid "Sync info"
msgstr "同期情報"
msgid "Check for update (v%1)"
msgstr "更新を確認 (v%1)"
msgid "Check for update"
msgstr "更新を確認"
msgid "Please login first"
msgstr "先にログインしてください"
msgid "Please configure Readest settings first"
msgstr "先に Readest の設定を行ってください"
msgid "No book is open"
msgstr "書籍が開かれていません"
msgid "(none)"
msgstr "(なし)"
msgid "Never synced"
msgstr "未同期"
msgid "Book Fingerprint"
msgstr "書籍の指紋"
msgid "Title"
msgstr "タイトル"
msgid "Author"
msgstr "著者"
msgid "Identifiers"
msgstr "識別子"
msgid "Last Synced"
msgstr "前回同期"
msgid "Sync Info"
msgstr "同期情報"
msgid "Checking for update…"
msgstr "更新を確認しています…"
msgid "Failed to check for update. Please try again later."
msgstr "更新の確認に失敗しました。しばらくしてから再度お試しください。"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "新しいバージョンが利用可能です: v%1 (現在: v%2)。\n\n今すぐ更新しますか?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "新しいバージョンが利用可能です: v%1。\n\n今すぐ更新しますか?"
msgid "Update"
msgstr "更新"
msgid "You are up to date (v%1)."
msgstr "最新です (v%1)。"
msgid "Downloading update…"
msgstr "更新をダウンロードしています…"
msgid "Failed to download update. Please try again later."
msgstr "更新のダウンロードに失敗しました。しばらくしてから再度お試しください。"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest プラグインを v%1 に更新しました。\n\nKOReader を再起動して更新を適用してください。"
msgid "Restart now"
msgstr "今すぐ再起動"
msgid "Later"
msgstr "後で"
msgid "Failed to install update: %1"
msgstr "更新のインストールに失敗しました: %1"
msgid "unknown error"
msgstr "不明なエラー"
msgid "No annotations to push"
msgstr "送信する注釈がありません"
msgid "Pushing annotations..."
msgstr "注釈を送信しています…"
msgid "%1 annotations pushed successfully"
msgstr "%1 件の注釈を送信しました"
msgid "Failed to push annotations"
msgstr "注釈の送信に失敗しました"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF 文書の注釈同期はサポートされていません"
msgid "Full sync: pulling all annotations..."
msgstr "フル同期: すべての注釈を取得しています…"
msgid "Pulling annotations..."
msgstr "注釈を取得しています…"
msgid "Failed to pull annotations"
msgstr "注釈の取得に失敗しました"
msgid "No new annotations found"
msgstr "新しい注釈は見つかりませんでした"
msgid "%1 annotations pulled"
msgstr "%1 件の注釈を取得しました"
msgid "Cancel"
msgstr "キャンセル"
msgid "Login"
msgstr "ログイン"
msgid "Please enter both email and password"
msgstr "メールアドレスとパスワードを入力してください"
msgid "Please configure Supabase URL and API key first"
msgstr "先に Supabase の URL と API キーを設定してください"
msgid "Logging in..."
msgstr "ログイン中…"
msgid "Successfully logged in to Readest"
msgstr "Readest にログインしました"
msgid "Login failed: %1"
msgstr "ログインに失敗しました: %1"
msgid "Logged out from Readest"
msgstr "Readest からログアウトしました"
msgid "Cannot identify the current book"
msgstr "現在の書籍を特定できません"
msgid "Progress has been synchronized."
msgstr "進捗を同期しました。"
msgid "Pushing reading progress..."
msgstr "読書の進捗を送信しています…"
msgid "Reading progress pushed successfully"
msgstr "読書の進捗を送信しました"
msgid "Failed to push reading progress"
msgstr "読書の進捗の送信に失敗しました"
msgid "Pulling reading progress..."
msgstr "読書の進捗を取得しています…"
msgid "Authentication failed, please login again"
msgstr "認証に失敗しました。再度ログインしてください"
msgid "Failed to pull reading progress"
msgstr "読書の進捗の取得に失敗しました"
msgid "Reading progress synchronized"
msgstr "読書の進捗を同期しました"
msgid "No saved reading progress found for this book"
msgstr "この書籍の保存された読書進捗が見つかりません"
@@ -0,0 +1,231 @@
# Korean translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Korean\n"
"Language: ko\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "KOReader와 Readest 기기를 동기화 상태로 유지합니다."
msgid "Set auto progress sync"
msgstr "진행 상황 자동 동기화 설정"
msgid "on"
msgstr "켬"
msgid "off"
msgstr "끔"
msgid "Toggle auto readest sync"
msgstr "Readest 자동 동기화 전환"
msgid "Push readest progress from this device"
msgstr "이 기기에서 Readest 진행 상황 보내기"
msgid "Pull readest progress from other devices"
msgstr "다른 기기에서 Readest 진행 상황 가져오기"
msgid "Push readest annotations from this device"
msgstr "이 기기에서 Readest 주석 보내기"
msgid "Pull readest annotations from other devices"
msgstr "다른 기기에서 Readest 주석 가져오기"
msgid "Log in Readest Account"
msgstr "Readest 계정에 로그인"
msgid "Log out as %1"
msgstr "%1 로그아웃"
msgid "Auto sync progress and annotations"
msgstr "진행 상황과 주석을 자동으로 동기화"
msgid "Push reading progress now"
msgstr "지금 읽기 진행 상황 보내기"
msgid "Pull reading progress now"
msgstr "지금 읽기 진행 상황 가져오기"
msgid "Push annotations now"
msgstr "지금 주석 보내기"
msgid "Pull annotations now"
msgstr "지금 주석 가져오기"
msgid "Full sync all annotations"
msgstr "모든 주석 전체 동기화"
msgid "Sync info"
msgstr "동기화 정보"
msgid "Check for update (v%1)"
msgstr "업데이트 확인 (v%1)"
msgid "Check for update"
msgstr "업데이트 확인"
msgid "Please login first"
msgstr "먼저 로그인하세요"
msgid "Please configure Readest settings first"
msgstr "먼저 Readest 설정을 구성하세요"
msgid "No book is open"
msgstr "열린 책이 없습니다"
msgid "(none)"
msgstr "(없음)"
msgid "Never synced"
msgstr "동기화한 적 없음"
msgid "Book Fingerprint"
msgstr "책 지문"
msgid "Title"
msgstr "제목"
msgid "Author"
msgstr "저자"
msgid "Identifiers"
msgstr "식별자"
msgid "Last Synced"
msgstr "마지막 동기화"
msgid "Sync Info"
msgstr "동기화 정보"
msgid "Checking for update…"
msgstr "업데이트 확인 중…"
msgid "Failed to check for update. Please try again later."
msgstr "업데이트 확인에 실패했습니다. 잠시 후 다시 시도하세요."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "새 버전이 있습니다: v%1 (현재: v%2).\n\n지금 업데이트하시겠습니까?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "새 버전이 있습니다: v%1.\n\n지금 업데이트하시겠습니까?"
msgid "Update"
msgstr "업데이트"
msgid "You are up to date (v%1)."
msgstr "최신 버전입니다 (v%1)."
msgid "Downloading update…"
msgstr "업데이트 다운로드 중…"
msgid "Failed to download update. Please try again later."
msgstr "업데이트 다운로드에 실패했습니다. 잠시 후 다시 시도하세요."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest 플러그인이 v%1(으)로 업데이트되었습니다.\n\n업데이트를 적용하려면 KOReader를 다시 시작하세요."
msgid "Restart now"
msgstr "지금 다시 시작"
msgid "Later"
msgstr "나중에"
msgid "Failed to install update: %1"
msgstr "업데이트 설치에 실패했습니다: %1"
msgid "unknown error"
msgstr "알 수 없는 오류"
msgid "No annotations to push"
msgstr "보낼 주석이 없습니다"
msgid "Pushing annotations..."
msgstr "주석을 보내는 중…"
msgid "%1 annotations pushed successfully"
msgstr "%1개 주석을 보냈습니다"
msgid "Failed to push annotations"
msgstr "주석 보내기에 실패했습니다"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF 문서는 주석 동기화를 지원하지 않습니다"
msgid "Full sync: pulling all annotations..."
msgstr "전체 동기화: 모든 주석을 가져오는 중…"
msgid "Pulling annotations..."
msgstr "주석을 가져오는 중…"
msgid "Failed to pull annotations"
msgstr "주석 가져오기에 실패했습니다"
msgid "No new annotations found"
msgstr "새 주석을 찾을 수 없습니다"
msgid "%1 annotations pulled"
msgstr "%1개 주석을 가져왔습니다"
msgid "Cancel"
msgstr "취소"
msgid "Login"
msgstr "로그인"
msgid "Please enter both email and password"
msgstr "이메일과 비밀번호를 모두 입력하세요"
msgid "Please configure Supabase URL and API key first"
msgstr "먼저 Supabase URL과 API 키를 설정하세요"
msgid "Logging in..."
msgstr "로그인 중…"
msgid "Successfully logged in to Readest"
msgstr "Readest에 로그인되었습니다"
msgid "Login failed: %1"
msgstr "로그인 실패: %1"
msgid "Logged out from Readest"
msgstr "Readest에서 로그아웃되었습니다"
msgid "Cannot identify the current book"
msgstr "현재 책을 식별할 수 없습니다"
msgid "Progress has been synchronized."
msgstr "진행 상황이 동기화되었습니다."
msgid "Pushing reading progress..."
msgstr "읽기 진행 상황을 보내는 중…"
msgid "Reading progress pushed successfully"
msgstr "읽기 진행 상황을 보냈습니다"
msgid "Failed to push reading progress"
msgstr "읽기 진행 상황 보내기에 실패했습니다"
msgid "Pulling reading progress..."
msgstr "읽기 진행 상황을 가져오는 중…"
msgid "Authentication failed, please login again"
msgstr "인증에 실패했습니다. 다시 로그인하세요"
msgid "Failed to pull reading progress"
msgstr "읽기 진행 상황 가져오기에 실패했습니다"
msgid "Reading progress synchronized"
msgstr "읽기 진행 상황이 동기화되었습니다"
msgid "No saved reading progress found for this book"
msgstr "이 책의 저장된 읽기 진행 상황을 찾을 수 없습니다"
@@ -0,0 +1,231 @@
# Malay translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Malay\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=1; plural=0;\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Memastikan peranti KOReader dan Readest anda kekal segerak."
msgid "Set auto progress sync"
msgstr "Tetapkan penyegerakan kemajuan automatik"
msgid "on"
msgstr "hidup"
msgid "off"
msgstr "mati"
msgid "Toggle auto readest sync"
msgstr "Togol penyegerakan automatik Readest"
msgid "Push readest progress from this device"
msgstr "Hantar kemajuan Readest dari peranti ini"
msgid "Pull readest progress from other devices"
msgstr "Tarik kemajuan Readest dari peranti lain"
msgid "Push readest annotations from this device"
msgstr "Hantar anotasi Readest dari peranti ini"
msgid "Pull readest annotations from other devices"
msgstr "Tarik anotasi Readest dari peranti lain"
msgid "Log in Readest Account"
msgstr "Log masuk ke akaun Readest"
msgid "Log out as %1"
msgstr "Log keluar sebagai %1"
msgid "Auto sync progress and annotations"
msgstr "Segerakkan kemajuan dan anotasi secara automatik"
msgid "Push reading progress now"
msgstr "Hantar kemajuan bacaan sekarang"
msgid "Pull reading progress now"
msgstr "Tarik kemajuan bacaan sekarang"
msgid "Push annotations now"
msgstr "Hantar anotasi sekarang"
msgid "Pull annotations now"
msgstr "Tarik anotasi sekarang"
msgid "Full sync all annotations"
msgstr "Penyegerakan penuh semua anotasi"
msgid "Sync info"
msgstr "Maklumat penyegerakan"
msgid "Check for update (v%1)"
msgstr "Semak kemas kini (v%1)"
msgid "Check for update"
msgstr "Semak kemas kini"
msgid "Please login first"
msgstr "Sila log masuk dahulu"
msgid "Please configure Readest settings first"
msgstr "Sila konfigurasikan tetapan Readest dahulu"
msgid "No book is open"
msgstr "Tiada buku terbuka"
msgid "(none)"
msgstr "(tiada)"
msgid "Never synced"
msgstr "Belum disegerakkan"
msgid "Book Fingerprint"
msgstr "Cap jari buku"
msgid "Title"
msgstr "Tajuk"
msgid "Author"
msgstr "Pengarang"
msgid "Identifiers"
msgstr "Pengenal"
msgid "Last Synced"
msgstr "Penyegerakan terakhir"
msgid "Sync Info"
msgstr "Maklumat penyegerakan"
msgid "Checking for update…"
msgstr "Menyemak kemas kini…"
msgid "Failed to check for update. Please try again later."
msgstr "Gagal menyemak kemas kini. Sila cuba lagi kemudian."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Versi baharu tersedia: v%1 (semasa: v%2).\n\nKemas kini sekarang?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Versi baharu tersedia: v%1.\n\nKemas kini sekarang?"
msgid "Update"
msgstr "Kemas kini"
msgid "You are up to date (v%1)."
msgstr "Anda menggunakan versi terkini (v%1)."
msgid "Downloading update…"
msgstr "Memuat turun kemas kini…"
msgid "Failed to download update. Please try again later."
msgstr "Gagal memuat turun kemas kini. Sila cuba lagi kemudian."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Pemalam Readest dikemas kini ke v%1.\n\nMulakan semula KOReader untuk menggunakan kemas kini."
msgid "Restart now"
msgstr "Mulakan semula sekarang"
msgid "Later"
msgstr "Kemudian"
msgid "Failed to install update: %1"
msgstr "Gagal memasang kemas kini: %1"
msgid "unknown error"
msgstr "ralat tidak diketahui"
msgid "No annotations to push"
msgstr "Tiada anotasi untuk dihantar"
msgid "Pushing annotations..."
msgstr "Menghantar anotasi…"
msgid "%1 annotations pushed successfully"
msgstr "%1 anotasi berjaya dihantar"
msgid "Failed to push annotations"
msgstr "Gagal menghantar anotasi"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Penyegerakan anotasi tidak disokong untuk dokumen PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Penyegerakan penuh: menarik semua anotasi…"
msgid "Pulling annotations..."
msgstr "Menarik anotasi…"
msgid "Failed to pull annotations"
msgstr "Gagal menarik anotasi"
msgid "No new annotations found"
msgstr "Tiada anotasi baharu ditemui"
msgid "%1 annotations pulled"
msgstr "%1 anotasi ditarik"
msgid "Cancel"
msgstr "Batal"
msgid "Login"
msgstr "Log masuk"
msgid "Please enter both email and password"
msgstr "Sila masukkan e-mel dan kata laluan"
msgid "Please configure Supabase URL and API key first"
msgstr "Sila konfigurasikan URL Supabase dan kunci API dahulu"
msgid "Logging in..."
msgstr "Sedang log masuk…"
msgid "Successfully logged in to Readest"
msgstr "Berjaya log masuk ke Readest"
msgid "Login failed: %1"
msgstr "Log masuk gagal: %1"
msgid "Logged out from Readest"
msgstr "Log keluar daripada Readest"
msgid "Cannot identify the current book"
msgstr "Tidak dapat mengenal pasti buku semasa"
msgid "Progress has been synchronized."
msgstr "Kemajuan telah disegerakkan."
msgid "Pushing reading progress..."
msgstr "Menghantar kemajuan bacaan…"
msgid "Reading progress pushed successfully"
msgstr "Kemajuan bacaan berjaya dihantar"
msgid "Failed to push reading progress"
msgstr "Gagal menghantar kemajuan bacaan"
msgid "Pulling reading progress..."
msgstr "Menarik kemajuan bacaan…"
msgid "Authentication failed, please login again"
msgstr "Pengesahan gagal, sila log masuk semula"
msgid "Failed to pull reading progress"
msgstr "Gagal menarik kemajuan bacaan"
msgid "Reading progress synchronized"
msgstr "Kemajuan bacaan disegerakkan"
msgid "No saved reading progress found for this book"
msgstr "Tiada kemajuan bacaan tersimpan ditemui untuk buku ini"
@@ -0,0 +1,231 @@
# Dutch translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Dutch\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Houdt je KOReader- en Readest-apparaten gesynchroniseerd."
msgid "Set auto progress sync"
msgstr "Automatische voortgangssynchronisatie instellen"
msgid "on"
msgstr "aan"
msgid "off"
msgstr "uit"
msgid "Toggle auto readest sync"
msgstr "Automatische Readest-synchronisatie aan/uit"
msgid "Push readest progress from this device"
msgstr "Readest-voortgang van dit apparaat verzenden"
msgid "Pull readest progress from other devices"
msgstr "Readest-voortgang van andere apparaten ophalen"
msgid "Push readest annotations from this device"
msgstr "Readest-aantekeningen van dit apparaat verzenden"
msgid "Pull readest annotations from other devices"
msgstr "Readest-aantekeningen van andere apparaten ophalen"
msgid "Log in Readest Account"
msgstr "Aanmelden bij Readest-account"
msgid "Log out as %1"
msgstr "Afmelden als %1"
msgid "Auto sync progress and annotations"
msgstr "Voortgang en aantekeningen automatisch synchroniseren"
msgid "Push reading progress now"
msgstr "Leesvoortgang nu verzenden"
msgid "Pull reading progress now"
msgstr "Leesvoortgang nu ophalen"
msgid "Push annotations now"
msgstr "Aantekeningen nu verzenden"
msgid "Pull annotations now"
msgstr "Aantekeningen nu ophalen"
msgid "Full sync all annotations"
msgstr "Alle aantekeningen volledig synchroniseren"
msgid "Sync info"
msgstr "Synchronisatie-info"
msgid "Check for update (v%1)"
msgstr "Controleer op update (v%1)"
msgid "Check for update"
msgstr "Controleer op update"
msgid "Please login first"
msgstr "Meld eerst aan"
msgid "Please configure Readest settings first"
msgstr "Configureer eerst de Readest-instellingen"
msgid "No book is open"
msgstr "Geen boek geopend"
msgid "(none)"
msgstr "(geen)"
msgid "Never synced"
msgstr "Nooit gesynchroniseerd"
msgid "Book Fingerprint"
msgstr "Vingerafdruk van boek"
msgid "Title"
msgstr "Titel"
msgid "Author"
msgstr "Auteur"
msgid "Identifiers"
msgstr "Identificatoren"
msgid "Last Synced"
msgstr "Laatst gesynchroniseerd"
msgid "Sync Info"
msgstr "Synchronisatie-info"
msgid "Checking for update…"
msgstr "Controleren op update…"
msgid "Failed to check for update. Please try again later."
msgstr "Controleren op update mislukt. Probeer het later opnieuw."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Er is een nieuwe versie beschikbaar: v%1 (huidig: v%2).\n\nWil je nu bijwerken?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Er is een nieuwe versie beschikbaar: v%1.\n\nWil je nu bijwerken?"
msgid "Update"
msgstr "Bijwerken"
msgid "You are up to date (v%1)."
msgstr "Je bent up-to-date (v%1)."
msgid "Downloading update…"
msgstr "Update wordt gedownload…"
msgid "Failed to download update. Please try again later."
msgstr "Update downloaden mislukt. Probeer het later opnieuw."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest-plug-in bijgewerkt naar v%1.\n\nStart KOReader opnieuw op om de update toe te passen."
msgid "Restart now"
msgstr "Nu opnieuw opstarten"
msgid "Later"
msgstr "Later"
msgid "Failed to install update: %1"
msgstr "Update installeren mislukt: %1"
msgid "unknown error"
msgstr "onbekende fout"
msgid "No annotations to push"
msgstr "Geen aantekeningen om te verzenden"
msgid "Pushing annotations..."
msgstr "Aantekeningen worden verzonden…"
msgid "%1 annotations pushed successfully"
msgstr "%1 aantekeningen succesvol verzonden"
msgid "Failed to push annotations"
msgstr "Aantekeningen verzenden mislukt"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Aantekeningssynchronisatie wordt niet ondersteund voor PDF-documenten"
msgid "Full sync: pulling all annotations..."
msgstr "Volledige synchronisatie: alle aantekeningen worden opgehaald…"
msgid "Pulling annotations..."
msgstr "Aantekeningen worden opgehaald…"
msgid "Failed to pull annotations"
msgstr "Aantekeningen ophalen mislukt"
msgid "No new annotations found"
msgstr "Geen nieuwe aantekeningen gevonden"
msgid "%1 annotations pulled"
msgstr "%1 aantekeningen opgehaald"
msgid "Cancel"
msgstr "Annuleren"
msgid "Login"
msgstr "Aanmelden"
msgid "Please enter both email and password"
msgstr "Voer e-mail en wachtwoord in"
msgid "Please configure Supabase URL and API key first"
msgstr "Configureer eerst Supabase-URL en API-sleutel"
msgid "Logging in..."
msgstr "Aanmelden…"
msgid "Successfully logged in to Readest"
msgstr "Aangemeld bij Readest"
msgid "Login failed: %1"
msgstr "Aanmelden mislukt: %1"
msgid "Logged out from Readest"
msgstr "Afgemeld bij Readest"
msgid "Cannot identify the current book"
msgstr "Huidig boek kan niet worden geïdentificeerd"
msgid "Progress has been synchronized."
msgstr "Voortgang is gesynchroniseerd."
msgid "Pushing reading progress..."
msgstr "Leesvoortgang wordt verzonden…"
msgid "Reading progress pushed successfully"
msgstr "Leesvoortgang succesvol verzonden"
msgid "Failed to push reading progress"
msgstr "Leesvoortgang verzenden mislukt"
msgid "Pulling reading progress..."
msgstr "Leesvoortgang wordt opgehaald…"
msgid "Authentication failed, please login again"
msgstr "Authenticatie mislukt, meld opnieuw aan"
msgid "Failed to pull reading progress"
msgstr "Leesvoortgang ophalen mislukt"
msgid "Reading progress synchronized"
msgstr "Leesvoortgang gesynchroniseerd"
msgid "No saved reading progress found for this book"
msgstr "Geen opgeslagen leesvoortgang gevonden voor dit boek"
@@ -0,0 +1,231 @@
# Polish translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Synchronizuje urządzenia KOReader i Readest."
msgid "Set auto progress sync"
msgstr "Ustaw automatyczną synchronizację postępu"
msgid "on"
msgstr "wł."
msgid "off"
msgstr "wył."
msgid "Toggle auto readest sync"
msgstr "Przełącz automatyczną synchronizację Readest"
msgid "Push readest progress from this device"
msgstr "Wyślij postęp Readest z tego urządzenia"
msgid "Pull readest progress from other devices"
msgstr "Pobierz postęp Readest z innych urządzeń"
msgid "Push readest annotations from this device"
msgstr "Wyślij notatki Readest z tego urządzenia"
msgid "Pull readest annotations from other devices"
msgstr "Pobierz notatki Readest z innych urządzeń"
msgid "Log in Readest Account"
msgstr "Zaloguj się do konta Readest"
msgid "Log out as %1"
msgstr "Wyloguj jako %1"
msgid "Auto sync progress and annotations"
msgstr "Automatycznie synchronizuj postęp i notatki"
msgid "Push reading progress now"
msgstr "Wyślij teraz postęp czytania"
msgid "Pull reading progress now"
msgstr "Pobierz teraz postęp czytania"
msgid "Push annotations now"
msgstr "Wyślij teraz notatki"
msgid "Pull annotations now"
msgstr "Pobierz teraz notatki"
msgid "Full sync all annotations"
msgstr "Pełna synchronizacja wszystkich notatek"
msgid "Sync info"
msgstr "Informacje o synchronizacji"
msgid "Check for update (v%1)"
msgstr "Sprawdź aktualizacje (v%1)"
msgid "Check for update"
msgstr "Sprawdź aktualizacje"
msgid "Please login first"
msgstr "Najpierw się zaloguj"
msgid "Please configure Readest settings first"
msgstr "Najpierw skonfiguruj ustawienia Readest"
msgid "No book is open"
msgstr "Brak otwartej książki"
msgid "(none)"
msgstr "(brak)"
msgid "Never synced"
msgstr "Nigdy nie synchronizowano"
msgid "Book Fingerprint"
msgstr "Odcisk książki"
msgid "Title"
msgstr "Tytuł"
msgid "Author"
msgstr "Autor"
msgid "Identifiers"
msgstr "Identyfikatory"
msgid "Last Synced"
msgstr "Ostatnia synchronizacja"
msgid "Sync Info"
msgstr "Informacje o synchronizacji"
msgid "Checking for update…"
msgstr "Sprawdzanie aktualizacji…"
msgid "Failed to check for update. Please try again later."
msgstr "Nie udało się sprawdzić aktualizacji. Spróbuj ponownie później."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Dostępna jest nowa wersja: v%1 (bieżąca: v%2).\n\nZaktualizować teraz?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Dostępna jest nowa wersja: v%1.\n\nZaktualizować teraz?"
msgid "Update"
msgstr "Aktualizuj"
msgid "You are up to date (v%1)."
msgstr "Masz aktualną wersję (v%1)."
msgid "Downloading update…"
msgstr "Pobieranie aktualizacji…"
msgid "Failed to download update. Please try again later."
msgstr "Nie udało się pobrać aktualizacji. Spróbuj ponownie później."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Wtyczka Readest zaktualizowana do v%1.\n\nUruchom ponownie KOReader, aby zastosować aktualizację."
msgid "Restart now"
msgstr "Uruchom ponownie"
msgid "Later"
msgstr "Później"
msgid "Failed to install update: %1"
msgstr "Nie udało się zainstalować aktualizacji: %1"
msgid "unknown error"
msgstr "nieznany błąd"
msgid "No annotations to push"
msgstr "Brak notatek do wysłania"
msgid "Pushing annotations..."
msgstr "Wysyłanie notatek…"
msgid "%1 annotations pushed successfully"
msgstr "Wysłano %1 notatek"
msgid "Failed to push annotations"
msgstr "Nie udało się wysłać notatek"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Synchronizacja notatek nie jest obsługiwana dla dokumentów PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Pełna synchronizacja: pobieranie wszystkich notatek…"
msgid "Pulling annotations..."
msgstr "Pobieranie notatek…"
msgid "Failed to pull annotations"
msgstr "Nie udało się pobrać notatek"
msgid "No new annotations found"
msgstr "Nie znaleziono nowych notatek"
msgid "%1 annotations pulled"
msgstr "Pobrano %1 notatek"
msgid "Cancel"
msgstr "Anuluj"
msgid "Login"
msgstr "Zaloguj"
msgid "Please enter both email and password"
msgstr "Wprowadź adres e-mail i hasło"
msgid "Please configure Supabase URL and API key first"
msgstr "Najpierw skonfiguruj URL Supabase i klucz API"
msgid "Logging in..."
msgstr "Logowanie…"
msgid "Successfully logged in to Readest"
msgstr "Zalogowano do Readest"
msgid "Login failed: %1"
msgstr "Logowanie nie powiodło się: %1"
msgid "Logged out from Readest"
msgstr "Wylogowano z Readest"
msgid "Cannot identify the current book"
msgstr "Nie można zidentyfikować bieżącej książki"
msgid "Progress has been synchronized."
msgstr "Postęp został zsynchronizowany."
msgid "Pushing reading progress..."
msgstr "Wysyłanie postępu czytania…"
msgid "Reading progress pushed successfully"
msgstr "Postęp czytania wysłany"
msgid "Failed to push reading progress"
msgstr "Nie udało się wysłać postępu czytania"
msgid "Pulling reading progress..."
msgstr "Pobieranie postępu czytania…"
msgid "Authentication failed, please login again"
msgstr "Błąd uwierzytelniania, zaloguj się ponownie"
msgid "Failed to pull reading progress"
msgstr "Nie udało się pobrać postępu czytania"
msgid "Reading progress synchronized"
msgstr "Postęp czytania zsynchronizowany"
msgid "No saved reading progress found for this book"
msgstr "Nie znaleziono zapisanego postępu czytania dla tej książki"
@@ -0,0 +1,231 @@
# Portuguese translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Mantém os seus dispositivos KOReader e Readest sincronizados."
msgid "Set auto progress sync"
msgstr "Definir sincronização automática do progresso"
msgid "on"
msgstr "ativado"
msgid "off"
msgstr "desativado"
msgid "Toggle auto readest sync"
msgstr "Alternar sincronização automática Readest"
msgid "Push readest progress from this device"
msgstr "Enviar progresso Readest deste dispositivo"
msgid "Pull readest progress from other devices"
msgstr "Obter progresso Readest de outros dispositivos"
msgid "Push readest annotations from this device"
msgstr "Enviar anotações Readest deste dispositivo"
msgid "Pull readest annotations from other devices"
msgstr "Obter anotações Readest de outros dispositivos"
msgid "Log in Readest Account"
msgstr "Entrar na conta Readest"
msgid "Log out as %1"
msgstr "Sair como %1"
msgid "Auto sync progress and annotations"
msgstr "Sincronizar progresso e anotações automaticamente"
msgid "Push reading progress now"
msgstr "Enviar progresso de leitura agora"
msgid "Pull reading progress now"
msgstr "Obter progresso de leitura agora"
msgid "Push annotations now"
msgstr "Enviar anotações agora"
msgid "Pull annotations now"
msgstr "Obter anotações agora"
msgid "Full sync all annotations"
msgstr "Sincronizar todas as anotações por completo"
msgid "Sync info"
msgstr "Informações de sincronização"
msgid "Check for update (v%1)"
msgstr "Procurar atualização (v%1)"
msgid "Check for update"
msgstr "Procurar atualização"
msgid "Please login first"
msgstr "Faça login primeiro"
msgid "Please configure Readest settings first"
msgstr "Configure primeiro as definições Readest"
msgid "No book is open"
msgstr "Nenhum livro aberto"
msgid "(none)"
msgstr "(nenhum)"
msgid "Never synced"
msgstr "Nunca sincronizado"
msgid "Book Fingerprint"
msgstr "Impressão digital do livro"
msgid "Title"
msgstr "Título"
msgid "Author"
msgstr "Autor"
msgid "Identifiers"
msgstr "Identificadores"
msgid "Last Synced"
msgstr "Última sincronização"
msgid "Sync Info"
msgstr "Informações de sincronização"
msgid "Checking for update…"
msgstr "A procurar atualização…"
msgid "Failed to check for update. Please try again later."
msgstr "Falha ao procurar atualização. Tente novamente mais tarde."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Está disponível uma nova versão: v%1 (atual: v%2).\n\nDeseja atualizar agora?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Está disponível uma nova versão: v%1.\n\nDeseja atualizar agora?"
msgid "Update"
msgstr "Atualizar"
msgid "You are up to date (v%1)."
msgstr "Está atualizado (v%1)."
msgid "Downloading update…"
msgstr "A descarregar atualização…"
msgid "Failed to download update. Please try again later."
msgstr "Falha ao descarregar a atualização. Tente novamente mais tarde."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest atualizado para v%1.\n\nReinicie o KOReader para aplicar a atualização."
msgid "Restart now"
msgstr "Reiniciar agora"
msgid "Later"
msgstr "Mais tarde"
msgid "Failed to install update: %1"
msgstr "Falha ao instalar a atualização: %1"
msgid "unknown error"
msgstr "erro desconhecido"
msgid "No annotations to push"
msgstr "Sem anotações para enviar"
msgid "Pushing annotations..."
msgstr "A enviar anotações…"
msgid "%1 annotations pushed successfully"
msgstr "%1 anotações enviadas com sucesso"
msgid "Failed to push annotations"
msgstr "Falha ao enviar as anotações"
msgid "Annotation sync is not supported for PDF documents"
msgstr "A sincronização de anotações não é suportada para documentos PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Sincronização completa: a obter todas as anotações…"
msgid "Pulling annotations..."
msgstr "A obter anotações…"
msgid "Failed to pull annotations"
msgstr "Falha ao obter as anotações"
msgid "No new annotations found"
msgstr "Nenhuma nova anotação encontrada"
msgid "%1 annotations pulled"
msgstr "%1 anotações obtidas"
msgid "Cancel"
msgstr "Cancelar"
msgid "Login"
msgstr "Entrar"
msgid "Please enter both email and password"
msgstr "Introduza o email e a palavra-passe"
msgid "Please configure Supabase URL and API key first"
msgstr "Configure primeiro o URL do Supabase e a chave API"
msgid "Logging in..."
msgstr "A iniciar sessão…"
msgid "Successfully logged in to Readest"
msgstr "Sessão iniciada no Readest com sucesso"
msgid "Login failed: %1"
msgstr "Falha ao iniciar sessão: %1"
msgid "Logged out from Readest"
msgstr "Sessão terminada do Readest"
msgid "Cannot identify the current book"
msgstr "Não foi possível identificar o livro atual"
msgid "Progress has been synchronized."
msgstr "O progresso foi sincronizado."
msgid "Pushing reading progress..."
msgstr "A enviar progresso de leitura…"
msgid "Reading progress pushed successfully"
msgstr "Progresso de leitura enviado com sucesso"
msgid "Failed to push reading progress"
msgstr "Falha ao enviar o progresso de leitura"
msgid "Pulling reading progress..."
msgstr "A obter progresso de leitura…"
msgid "Authentication failed, please login again"
msgstr "Falha de autenticação, inicie sessão novamente"
msgid "Failed to pull reading progress"
msgstr "Falha ao obter o progresso de leitura"
msgid "Reading progress synchronized"
msgstr "Progresso de leitura sincronizado"
msgid "No saved reading progress found for this book"
msgstr "Não foi encontrado progresso de leitura guardado para este livro"
@@ -0,0 +1,231 @@
# Romanian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Menține dispozitivele tale KOReader și Readest sincronizate."
msgid "Set auto progress sync"
msgstr "Setează sincronizarea automată a progresului"
msgid "on"
msgstr "activ"
msgid "off"
msgstr "inactiv"
msgid "Toggle auto readest sync"
msgstr "Comută sincronizarea automată Readest"
msgid "Push readest progress from this device"
msgstr "Trimite progresul Readest de pe acest dispozitiv"
msgid "Pull readest progress from other devices"
msgstr "Obține progresul Readest de pe alte dispozitive"
msgid "Push readest annotations from this device"
msgstr "Trimite adnotările Readest de pe acest dispozitiv"
msgid "Pull readest annotations from other devices"
msgstr "Obține adnotările Readest de pe alte dispozitive"
msgid "Log in Readest Account"
msgstr "Autentificare în contul Readest"
msgid "Log out as %1"
msgstr "Deconectare de la %1"
msgid "Auto sync progress and annotations"
msgstr "Sincronizează automat progresul și adnotările"
msgid "Push reading progress now"
msgstr "Trimite progresul de citire acum"
msgid "Pull reading progress now"
msgstr "Obține progresul de citire acum"
msgid "Push annotations now"
msgstr "Trimite adnotările acum"
msgid "Pull annotations now"
msgstr "Obține adnotările acum"
msgid "Full sync all annotations"
msgstr "Sincronizare completă a tuturor adnotărilor"
msgid "Sync info"
msgstr "Informații de sincronizare"
msgid "Check for update (v%1)"
msgstr "Verifică actualizările (v%1)"
msgid "Check for update"
msgstr "Verifică actualizările"
msgid "Please login first"
msgstr "Autentifică-te mai întâi"
msgid "Please configure Readest settings first"
msgstr "Configurează mai întâi setările Readest"
msgid "No book is open"
msgstr "Nicio carte deschisă"
msgid "(none)"
msgstr "(niciunul)"
msgid "Never synced"
msgstr "Nicio sincronizare"
msgid "Book Fingerprint"
msgstr "Amprenta cărții"
msgid "Title"
msgstr "Titlu"
msgid "Author"
msgstr "Autor"
msgid "Identifiers"
msgstr "Identificatori"
msgid "Last Synced"
msgstr "Ultima sincronizare"
msgid "Sync Info"
msgstr "Informații de sincronizare"
msgid "Checking for update…"
msgstr "Se verifică actualizările…"
msgid "Failed to check for update. Please try again later."
msgstr "Verificarea actualizărilor a eșuat. Încearcă din nou mai târziu."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Este disponibilă o versiune nouă: v%1 (curentă: v%2).\n\nActualizezi acum?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Este disponibilă o versiune nouă: v%1.\n\nActualizezi acum?"
msgid "Update"
msgstr "Actualizează"
msgid "You are up to date (v%1)."
msgstr "Ești la zi (v%1)."
msgid "Downloading update…"
msgstr "Se descarcă actualizarea…"
msgid "Failed to download update. Please try again later."
msgstr "Descărcarea actualizării a eșuat. Încearcă din nou mai târziu."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest actualizat la v%1.\n\nReporneste KOReader pentru a aplica actualizarea."
msgid "Restart now"
msgstr "Repornește acum"
msgid "Later"
msgstr "Mai târziu"
msgid "Failed to install update: %1"
msgstr "Instalarea actualizării a eșuat: %1"
msgid "unknown error"
msgstr "eroare necunoscută"
msgid "No annotations to push"
msgstr "Nu există adnotări de trimis"
msgid "Pushing annotations..."
msgstr "Se trimit adnotările…"
msgid "%1 annotations pushed successfully"
msgstr "%1 adnotări trimise cu succes"
msgid "Failed to push annotations"
msgstr "Trimiterea adnotărilor a eșuat"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Sincronizarea adnotărilor nu este acceptată pentru documente PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Sincronizare completă: se obțin toate adnotările…"
msgid "Pulling annotations..."
msgstr "Se obțin adnotările…"
msgid "Failed to pull annotations"
msgstr "Obținerea adnotărilor a eșuat"
msgid "No new annotations found"
msgstr "Nu s-au găsit adnotări noi"
msgid "%1 annotations pulled"
msgstr "%1 adnotări obținute"
msgid "Cancel"
msgstr "Anulează"
msgid "Login"
msgstr "Autentificare"
msgid "Please enter both email and password"
msgstr "Introdu emailul și parola"
msgid "Please configure Supabase URL and API key first"
msgstr "Configurează mai întâi URL-ul Supabase și cheia API"
msgid "Logging in..."
msgstr "Se conectează…"
msgid "Successfully logged in to Readest"
msgstr "Autentificat în Readest"
msgid "Login failed: %1"
msgstr "Autentificare eșuată: %1"
msgid "Logged out from Readest"
msgstr "Deconectat de la Readest"
msgid "Cannot identify the current book"
msgstr "Cartea curentă nu poate fi identificată"
msgid "Progress has been synchronized."
msgstr "Progresul a fost sincronizat."
msgid "Pushing reading progress..."
msgstr "Se trimite progresul de citire…"
msgid "Reading progress pushed successfully"
msgstr "Progresul de citire trimis cu succes"
msgid "Failed to push reading progress"
msgstr "Trimiterea progresului de citire a eșuat"
msgid "Pulling reading progress..."
msgstr "Se obține progresul de citire…"
msgid "Authentication failed, please login again"
msgstr "Autentificare eșuată, conectează-te din nou"
msgid "Failed to pull reading progress"
msgstr "Obținerea progresului de citire a eșuat"
msgid "Reading progress synchronized"
msgstr "Progres de citire sincronizat"
msgid "No saved reading progress found for this book"
msgstr "Nu s-a găsit progres de citire salvat pentru această carte"
@@ -0,0 +1,231 @@
# Russian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Поддерживает синхронизацию устройств KOReader и Readest."
msgid "Set auto progress sync"
msgstr "Настроить автосинхронизацию прогресса"
msgid "on"
msgstr "вкл"
msgid "off"
msgstr "выкл"
msgid "Toggle auto readest sync"
msgstr "Переключить автосинхронизацию Readest"
msgid "Push readest progress from this device"
msgstr "Отправить прогресс Readest с этого устройства"
msgid "Pull readest progress from other devices"
msgstr "Получить прогресс Readest с других устройств"
msgid "Push readest annotations from this device"
msgstr "Отправить заметки Readest с этого устройства"
msgid "Pull readest annotations from other devices"
msgstr "Получить заметки Readest с других устройств"
msgid "Log in Readest Account"
msgstr "Войти в аккаунт Readest"
msgid "Log out as %1"
msgstr "Выйти из %1"
msgid "Auto sync progress and annotations"
msgstr "Автоматически синхронизировать прогресс и заметки"
msgid "Push reading progress now"
msgstr "Отправить прогресс чтения сейчас"
msgid "Pull reading progress now"
msgstr "Получить прогресс чтения сейчас"
msgid "Push annotations now"
msgstr "Отправить заметки сейчас"
msgid "Pull annotations now"
msgstr "Получить заметки сейчас"
msgid "Full sync all annotations"
msgstr "Полная синхронизация всех заметок"
msgid "Sync info"
msgstr "Сведения о синхронизации"
msgid "Check for update (v%1)"
msgstr "Проверить обновления (v%1)"
msgid "Check for update"
msgstr "Проверить обновления"
msgid "Please login first"
msgstr "Сначала войдите в систему"
msgid "Please configure Readest settings first"
msgstr "Сначала настройте параметры Readest"
msgid "No book is open"
msgstr "Нет открытой книги"
msgid "(none)"
msgstr "(нет)"
msgid "Never synced"
msgstr "Ещё не синхронизировано"
msgid "Book Fingerprint"
msgstr "Отпечаток книги"
msgid "Title"
msgstr "Название"
msgid "Author"
msgstr "Автор"
msgid "Identifiers"
msgstr "Идентификаторы"
msgid "Last Synced"
msgstr "Последняя синхронизация"
msgid "Sync Info"
msgstr "Сведения о синхронизации"
msgid "Checking for update…"
msgstr "Проверка обновлений…"
msgid "Failed to check for update. Please try again later."
msgstr "Не удалось проверить обновления. Повторите попытку позже."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Доступна новая версия: v%1 (текущая: v%2).\n\nОбновить сейчас?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Доступна новая версия: v%1.\n\nОбновить сейчас?"
msgid "Update"
msgstr "Обновить"
msgid "You are up to date (v%1)."
msgstr "У вас актуальная версия (v%1)."
msgid "Downloading update…"
msgstr "Загрузка обновления…"
msgid "Failed to download update. Please try again later."
msgstr "Не удалось загрузить обновление. Повторите попытку позже."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Плагин Readest обновлён до v%1.\n\nПерезапустите KOReader, чтобы применить обновление."
msgid "Restart now"
msgstr "Перезапустить сейчас"
msgid "Later"
msgstr "Позже"
msgid "Failed to install update: %1"
msgstr "Не удалось установить обновление: %1"
msgid "unknown error"
msgstr "неизвестная ошибка"
msgid "No annotations to push"
msgstr "Нет заметок для отправки"
msgid "Pushing annotations..."
msgstr "Отправка заметок…"
msgid "%1 annotations pushed successfully"
msgstr "Отправлено заметок: %1"
msgid "Failed to push annotations"
msgstr "Не удалось отправить заметки"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Синхронизация заметок не поддерживается для PDF-документов"
msgid "Full sync: pulling all annotations..."
msgstr "Полная синхронизация: получение всех заметок…"
msgid "Pulling annotations..."
msgstr "Получение заметок…"
msgid "Failed to pull annotations"
msgstr "Не удалось получить заметки"
msgid "No new annotations found"
msgstr "Новых заметок не найдено"
msgid "%1 annotations pulled"
msgstr "Получено заметок: %1"
msgid "Cancel"
msgstr "Отмена"
msgid "Login"
msgstr "Войти"
msgid "Please enter both email and password"
msgstr "Введите электронную почту и пароль"
msgid "Please configure Supabase URL and API key first"
msgstr "Сначала настройте URL Supabase и ключ API"
msgid "Logging in..."
msgstr "Вход…"
msgid "Successfully logged in to Readest"
msgstr "Вы вошли в Readest"
msgid "Login failed: %1"
msgstr "Не удалось войти: %1"
msgid "Logged out from Readest"
msgstr "Выход из Readest выполнен"
msgid "Cannot identify the current book"
msgstr "Не удалось определить текущую книгу"
msgid "Progress has been synchronized."
msgstr "Прогресс синхронизирован."
msgid "Pushing reading progress..."
msgstr "Отправка прогресса чтения…"
msgid "Reading progress pushed successfully"
msgstr "Прогресс чтения отправлен"
msgid "Failed to push reading progress"
msgstr "Не удалось отправить прогресс чтения"
msgid "Pulling reading progress..."
msgstr "Получение прогресса чтения…"
msgid "Authentication failed, please login again"
msgstr "Ошибка аутентификации, войдите снова"
msgid "Failed to pull reading progress"
msgstr "Не удалось получить прогресс чтения"
msgid "Reading progress synchronized"
msgstr "Прогресс чтения синхронизирован"
msgid "No saved reading progress found for this book"
msgstr "Сохранённый прогресс чтения для этой книги не найден"
@@ -0,0 +1,231 @@
# Sinhala translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Sinhala\n"
"Language: si\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "ඔබේ KOReader සහ Readest උපාංග සමමුහූර්තව තබා ගනී."
msgid "Set auto progress sync"
msgstr "ස්වයංක්‍රීය ප්‍රගති සමමුහූර්තකරණය සකසන්න"
msgid "on"
msgstr "ක්‍රියාත්මක"
msgid "off"
msgstr "අක්‍රිය"
msgid "Toggle auto readest sync"
msgstr "ස්වයංක්‍රීය Readest සමමුහූර්තකරණය මාරු කරන්න"
msgid "Push readest progress from this device"
msgstr "මෙම උපාංගයෙන් Readest ප්‍රගතිය යවන්න"
msgid "Pull readest progress from other devices"
msgstr "වෙනත් උපාංගවලින් Readest ප්‍රගතිය ලබාගන්න"
msgid "Push readest annotations from this device"
msgstr "මෙම උපාංගයෙන් Readest සටහන් යවන්න"
msgid "Pull readest annotations from other devices"
msgstr "වෙනත් උපාංගවලින් Readest සටහන් ලබාගන්න"
msgid "Log in Readest Account"
msgstr "Readest ගිණුමට පිවිසෙන්න"
msgid "Log out as %1"
msgstr "%1 ලෙස ඉවත් වන්න"
msgid "Auto sync progress and annotations"
msgstr "ප්‍රගතිය සහ සටහන් ස්වයංක්‍රීයව සමමුහූර්ත කරන්න"
msgid "Push reading progress now"
msgstr "කියවීමේ ප්‍රගතිය දැන් යවන්න"
msgid "Pull reading progress now"
msgstr "කියවීමේ ප්‍රගතිය දැන් ලබාගන්න"
msgid "Push annotations now"
msgstr "සටහන් දැන් යවන්න"
msgid "Pull annotations now"
msgstr "සටහන් දැන් ලබාගන්න"
msgid "Full sync all annotations"
msgstr "සියලු සටහන් සම්පූර්ණ සමමුහූර්තකරණය"
msgid "Sync info"
msgstr "සමමුහූර්ත තොරතුරු"
msgid "Check for update (v%1)"
msgstr "යාවත්කාලීන කිරීම පරීක්ෂා කරන්න (v%1)"
msgid "Check for update"
msgstr "යාවත්කාලීන කිරීම පරීක්ෂා කරන්න"
msgid "Please login first"
msgstr "කරුණාකර මුලින්ම පිවිසෙන්න"
msgid "Please configure Readest settings first"
msgstr "කරුණාකර මුලින්ම Readest සැකසුම් වින්‍යාස කරන්න"
msgid "No book is open"
msgstr "පොතක් විවෘතව නැත"
msgid "(none)"
msgstr "(කිසිවක් නැත)"
msgid "Never synced"
msgstr "කිසිදා සමමුහූර්ත වී නැත"
msgid "Book Fingerprint"
msgstr "පොතේ ඇඟිලි සලකුණ"
msgid "Title"
msgstr "නම"
msgid "Author"
msgstr "කතෘ"
msgid "Identifiers"
msgstr "හඳුනාගැනීම්"
msgid "Last Synced"
msgstr "අවසන් සමමුහූර්තකරණය"
msgid "Sync Info"
msgstr "සමමුහූර්ත තොරතුරු"
msgid "Checking for update…"
msgstr "යාවත්කාලීන පරීක්ෂා කරමින්…"
msgid "Failed to check for update. Please try again later."
msgstr "යාවත්කාලීන පරීක්ෂා කිරීම අසාර්ථකයි. කරුණාකර පසුව නැවත උත්සාහ කරන්න."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "නව අනුවාදයක් තිබේ: v%1 (වර්තමාන: v%2).\n\nදැන් යාවත්කාලීන කරන්නද?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "නව අනුවාදයක් තිබේ: v%1.\n\nදැන් යාවත්කාලීන කරන්නද?"
msgid "Update"
msgstr "යාවත්කාලීන"
msgid "You are up to date (v%1)."
msgstr "ඔබ යාවත්කාලීනයි (v%1)."
msgid "Downloading update…"
msgstr "යාවත්කාලීනය බාගත වෙමින්…"
msgid "Failed to download update. Please try again later."
msgstr "යාවත්කාලීනය බාගත කිරීම අසාර්ථකයි. කරුණාකර පසුව නැවත උත්සාහ කරන්න."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest ප්ලගිනය v%1 දක්වා යාවත්කාලීන විය.\n\nයාවත්කාලීනය යෙදීමට KOReader නැවත ආරම්භ කරන්න."
msgid "Restart now"
msgstr "දැන් නැවත ආරම්භ කරන්න"
msgid "Later"
msgstr "පසුව"
msgid "Failed to install update: %1"
msgstr "යාවත්කාලීනය ස්ථාපනය කිරීම අසාර්ථකයි: %1"
msgid "unknown error"
msgstr "නොදන්නා දෝෂයකි"
msgid "No annotations to push"
msgstr "යැවීමට සටහන් නැත"
msgid "Pushing annotations..."
msgstr "සටහන් යවමින්…"
msgid "%1 annotations pushed successfully"
msgstr "%1 සටහන් සාර්ථකව යවන ලදී"
msgid "Failed to push annotations"
msgstr "සටහන් යැවීම අසාර්ථකයි"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF ලේඛන සඳහා සටහන් සමමුහූර්තකරණය සහාය නොදක්වයි"
msgid "Full sync: pulling all annotations..."
msgstr "සම්පූර්ණ සමමුහූර්තකරණය: සියලු සටහන් ලබාගනිමින්…"
msgid "Pulling annotations..."
msgstr "සටහන් ලබාගනිමින්…"
msgid "Failed to pull annotations"
msgstr "සටහන් ලබාගැනීම අසාර්ථකයි"
msgid "No new annotations found"
msgstr "නව සටහන් හමු නොවුණි"
msgid "%1 annotations pulled"
msgstr "%1 සටහන් ලබා ගන්නා ලදී"
msgid "Cancel"
msgstr "අවලංගු කරන්න"
msgid "Login"
msgstr "පිවිසෙන්න"
msgid "Please enter both email and password"
msgstr "කරුණාකර ඊමේල් සහ මුරපදය දෙකම ඇතුළත් කරන්න"
msgid "Please configure Supabase URL and API key first"
msgstr "කරුණාකර මුලින්ම Supabase URL සහ API යතුර වින්‍යාස කරන්න"
msgid "Logging in..."
msgstr "පිවිසෙමින්…"
msgid "Successfully logged in to Readest"
msgstr "Readest වෙත සාර්ථකව පිවිසුණි"
msgid "Login failed: %1"
msgstr "පිවිසීම අසාර්ථකයි: %1"
msgid "Logged out from Readest"
msgstr "Readest වෙතින් ඉවත් විය"
msgid "Cannot identify the current book"
msgstr "වර්තමාන පොත හඳුනාගත නොහැක"
msgid "Progress has been synchronized."
msgstr "ප්‍රගතිය සමමුහූර්ත විය."
msgid "Pushing reading progress..."
msgstr "කියවීමේ ප්‍රගතිය යවමින්…"
msgid "Reading progress pushed successfully"
msgstr "කියවීමේ ප්‍රගතිය සාර්ථකව යවන ලදී"
msgid "Failed to push reading progress"
msgstr "කියවීමේ ප්‍රගතිය යැවීම අසාර්ථකයි"
msgid "Pulling reading progress..."
msgstr "කියවීමේ ප්‍රගතිය ලබාගනිමින්…"
msgid "Authentication failed, please login again"
msgstr "සත්‍යාපනය අසාර්ථකයි, කරුණාකර නැවත පිවිසෙන්න"
msgid "Failed to pull reading progress"
msgstr "කියවීමේ ප්‍රගතිය ලබාගැනීම අසාර්ථකයි"
msgid "Reading progress synchronized"
msgstr "කියවීමේ ප්‍රගතිය සමමුහූර්ත විය"
msgid "No saved reading progress found for this book"
msgstr "මෙම පොත සඳහා සුරකින ලද කියවීමේ ප්‍රගතියක් හමු නොවුණි"
@@ -0,0 +1,231 @@
# Slovenian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Slovenian\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Vaše naprave KOReader in Readest ostajajo sinhronizirane."
msgid "Set auto progress sync"
msgstr "Nastavi samodejno sinhronizacijo napredka"
msgid "on"
msgstr "vklop"
msgid "off"
msgstr "izklop"
msgid "Toggle auto readest sync"
msgstr "Preklopi samodejno sinhronizacijo Readest"
msgid "Push readest progress from this device"
msgstr "Pošlji napredek Readest iz te naprave"
msgid "Pull readest progress from other devices"
msgstr "Pridobi napredek Readest iz drugih naprav"
msgid "Push readest annotations from this device"
msgstr "Pošlji opombe Readest iz te naprave"
msgid "Pull readest annotations from other devices"
msgstr "Pridobi opombe Readest iz drugih naprav"
msgid "Log in Readest Account"
msgstr "Prijava v račun Readest"
msgid "Log out as %1"
msgstr "Odjava kot %1"
msgid "Auto sync progress and annotations"
msgstr "Samodejno sinhroniziraj napredek in opombe"
msgid "Push reading progress now"
msgstr "Pošlji napredek branja zdaj"
msgid "Pull reading progress now"
msgstr "Pridobi napredek branja zdaj"
msgid "Push annotations now"
msgstr "Pošlji opombe zdaj"
msgid "Pull annotations now"
msgstr "Pridobi opombe zdaj"
msgid "Full sync all annotations"
msgstr "Polna sinhronizacija vseh opomb"
msgid "Sync info"
msgstr "Podatki o sinhronizaciji"
msgid "Check for update (v%1)"
msgstr "Preveri posodobitve (v%1)"
msgid "Check for update"
msgstr "Preveri posodobitve"
msgid "Please login first"
msgstr "Najprej se prijavite"
msgid "Please configure Readest settings first"
msgstr "Najprej nastavite Readest"
msgid "No book is open"
msgstr "Nobena knjiga ni odprta"
msgid "(none)"
msgstr "(brez)"
msgid "Never synced"
msgstr "Nikoli sinhronizirano"
msgid "Book Fingerprint"
msgstr "Prstni odtis knjige"
msgid "Title"
msgstr "Naslov"
msgid "Author"
msgstr "Avtor"
msgid "Identifiers"
msgstr "Identifikatorji"
msgid "Last Synced"
msgstr "Zadnja sinhronizacija"
msgid "Sync Info"
msgstr "Podatki o sinhronizaciji"
msgid "Checking for update…"
msgstr "Preverjanje posodobitev…"
msgid "Failed to check for update. Please try again later."
msgstr "Preverjanje posodobitev ni uspelo. Poskusite znova pozneje."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Na voljo je nova različica: v%1 (trenutna: v%2).\n\nŽelite posodobiti zdaj?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Na voljo je nova različica: v%1.\n\nŽelite posodobiti zdaj?"
msgid "Update"
msgstr "Posodobi"
msgid "You are up to date (v%1)."
msgstr "Imate najnovejšo različico (v%1)."
msgid "Downloading update…"
msgstr "Prenašanje posodobitve…"
msgid "Failed to download update. Please try again later."
msgstr "Prenos posodobitve ni uspel. Poskusite znova pozneje."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Vtičnik Readest je posodobljen na v%1.\n\nZa uveljavitev posodobitve znova zaženite KOReader."
msgid "Restart now"
msgstr "Znova zaženi"
msgid "Later"
msgstr "Pozneje"
msgid "Failed to install update: %1"
msgstr "Namestitev posodobitve ni uspela: %1"
msgid "unknown error"
msgstr "neznana napaka"
msgid "No annotations to push"
msgstr "Ni opomb za pošiljanje"
msgid "Pushing annotations..."
msgstr "Pošiljanje opomb…"
msgid "%1 annotations pushed successfully"
msgstr "Uspešno poslanih %1 opomb"
msgid "Failed to push annotations"
msgstr "Pošiljanje opomb ni uspelo"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Sinhronizacija opomb ni podprta za dokumente PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Polna sinhronizacija: pridobivanje vseh opomb…"
msgid "Pulling annotations..."
msgstr "Pridobivanje opomb…"
msgid "Failed to pull annotations"
msgstr "Pridobivanje opomb ni uspelo"
msgid "No new annotations found"
msgstr "Novih opomb ni"
msgid "%1 annotations pulled"
msgstr "Pridobljenih %1 opomb"
msgid "Cancel"
msgstr "Prekliči"
msgid "Login"
msgstr "Prijava"
msgid "Please enter both email and password"
msgstr "Vnesite e-pošto in geslo"
msgid "Please configure Supabase URL and API key first"
msgstr "Najprej nastavite URL Supabase in ključ API"
msgid "Logging in..."
msgstr "Prijavljanje…"
msgid "Successfully logged in to Readest"
msgstr "Uspešno prijavljeni v Readest"
msgid "Login failed: %1"
msgstr "Prijava ni uspela: %1"
msgid "Logged out from Readest"
msgstr "Odjavljeni iz Readest"
msgid "Cannot identify the current book"
msgstr "Trenutne knjige ni mogoče prepoznati"
msgid "Progress has been synchronized."
msgstr "Napredek je sinhroniziran."
msgid "Pushing reading progress..."
msgstr "Pošiljanje napredka branja…"
msgid "Reading progress pushed successfully"
msgstr "Napredek branja uspešno poslan"
msgid "Failed to push reading progress"
msgstr "Pošiljanje napredka branja ni uspelo"
msgid "Pulling reading progress..."
msgstr "Pridobivanje napredka branja…"
msgid "Authentication failed, please login again"
msgstr "Preverjanje pristnosti ni uspelo, prijavite se znova"
msgid "Failed to pull reading progress"
msgstr "Pridobivanje napredka branja ni uspelo"
msgid "Reading progress synchronized"
msgstr "Napredek branja sinhroniziran"
msgid "No saved reading progress found for this book"
msgstr "Za to knjigo ni shranjenega napredka branja"
@@ -0,0 +1,231 @@
# Swedish translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Swedish\n"
"Language: sv\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Håller dina KOReader- och Readest-enheter synkroniserade."
msgid "Set auto progress sync"
msgstr "Ställ in automatisk synkronisering av läsförloppet"
msgid "on"
msgstr "på"
msgid "off"
msgstr "av"
msgid "Toggle auto readest sync"
msgstr "Växla automatisk Readest-synkronisering"
msgid "Push readest progress from this device"
msgstr "Skicka Readest-läsförlopp från den här enheten"
msgid "Pull readest progress from other devices"
msgstr "Hämta Readest-läsförlopp från andra enheter"
msgid "Push readest annotations from this device"
msgstr "Skicka Readest-anteckningar från den här enheten"
msgid "Pull readest annotations from other devices"
msgstr "Hämta Readest-anteckningar från andra enheter"
msgid "Log in Readest Account"
msgstr "Logga in på Readest-konto"
msgid "Log out as %1"
msgstr "Logga ut från %1"
msgid "Auto sync progress and annotations"
msgstr "Synkronisera läsförlopp och anteckningar automatiskt"
msgid "Push reading progress now"
msgstr "Skicka läsförloppet nu"
msgid "Pull reading progress now"
msgstr "Hämta läsförloppet nu"
msgid "Push annotations now"
msgstr "Skicka anteckningar nu"
msgid "Pull annotations now"
msgstr "Hämta anteckningar nu"
msgid "Full sync all annotations"
msgstr "Synkronisera alla anteckningar fullständigt"
msgid "Sync info"
msgstr "Synkroniseringsinfo"
msgid "Check for update (v%1)"
msgstr "Sök efter uppdatering (v%1)"
msgid "Check for update"
msgstr "Sök efter uppdatering"
msgid "Please login first"
msgstr "Logga in först"
msgid "Please configure Readest settings first"
msgstr "Konfigurera Readest-inställningarna först"
msgid "No book is open"
msgstr "Ingen bok är öppen"
msgid "(none)"
msgstr "(ingen)"
msgid "Never synced"
msgstr "Aldrig synkroniserad"
msgid "Book Fingerprint"
msgstr "Bokens fingeravtryck"
msgid "Title"
msgstr "Titel"
msgid "Author"
msgstr "Författare"
msgid "Identifiers"
msgstr "Identifierare"
msgid "Last Synced"
msgstr "Senast synkroniserad"
msgid "Sync Info"
msgstr "Synkroniseringsinfo"
msgid "Checking for update…"
msgstr "Söker efter uppdatering…"
msgid "Failed to check for update. Please try again later."
msgstr "Det gick inte att söka efter uppdatering. Försök igen senare."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "En ny version är tillgänglig: v%1 (nuvarande: v%2).\n\nVill du uppdatera nu?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "En ny version är tillgänglig: v%1.\n\nVill du uppdatera nu?"
msgid "Update"
msgstr "Uppdatera"
msgid "You are up to date (v%1)."
msgstr "Du är uppdaterad (v%1)."
msgid "Downloading update…"
msgstr "Hämtar uppdatering…"
msgid "Failed to download update. Please try again later."
msgstr "Det gick inte att hämta uppdateringen. Försök igen senare."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest-tillägget uppdaterat till v%1.\n\nStarta om KOReader för att tillämpa uppdateringen."
msgid "Restart now"
msgstr "Starta om nu"
msgid "Later"
msgstr "Senare"
msgid "Failed to install update: %1"
msgstr "Det gick inte att installera uppdateringen: %1"
msgid "unknown error"
msgstr "okänt fel"
msgid "No annotations to push"
msgstr "Inga anteckningar att skicka"
msgid "Pushing annotations..."
msgstr "Skickar anteckningar…"
msgid "%1 annotations pushed successfully"
msgstr "%1 anteckningar skickade"
msgid "Failed to push annotations"
msgstr "Det gick inte att skicka anteckningarna"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Anteckningssynkronisering stöds inte för PDF-dokument"
msgid "Full sync: pulling all annotations..."
msgstr "Fullständig synkronisering: hämtar alla anteckningar…"
msgid "Pulling annotations..."
msgstr "Hämtar anteckningar…"
msgid "Failed to pull annotations"
msgstr "Det gick inte att hämta anteckningarna"
msgid "No new annotations found"
msgstr "Inga nya anteckningar hittades"
msgid "%1 annotations pulled"
msgstr "%1 anteckningar hämtade"
msgid "Cancel"
msgstr "Avbryt"
msgid "Login"
msgstr "Logga in"
msgid "Please enter both email and password"
msgstr "Ange både e-post och lösenord"
msgid "Please configure Supabase URL and API key first"
msgstr "Konfigurera Supabase-URL och API-nyckel först"
msgid "Logging in..."
msgstr "Loggar in…"
msgid "Successfully logged in to Readest"
msgstr "Inloggad på Readest"
msgid "Login failed: %1"
msgstr "Inloggning misslyckades: %1"
msgid "Logged out from Readest"
msgstr "Utloggad från Readest"
msgid "Cannot identify the current book"
msgstr "Det går inte att identifiera den aktuella boken"
msgid "Progress has been synchronized."
msgstr "Läsförloppet har synkroniserats."
msgid "Pushing reading progress..."
msgstr "Skickar läsförloppet…"
msgid "Reading progress pushed successfully"
msgstr "Läsförloppet skickades"
msgid "Failed to push reading progress"
msgstr "Det gick inte att skicka läsförloppet"
msgid "Pulling reading progress..."
msgstr "Hämtar läsförloppet…"
msgid "Authentication failed, please login again"
msgstr "Autentisering misslyckades, logga in igen"
msgid "Failed to pull reading progress"
msgstr "Det gick inte att hämta läsförloppet"
msgid "Reading progress synchronized"
msgstr "Läsförloppet synkroniserat"
msgid "No saved reading progress found for this book"
msgstr "Inget sparat läsförlopp hittades för boken"
@@ -0,0 +1,231 @@
# Tamil translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "உங்கள் KOReader மற்றும் Readest சாதனங்களை ஒத்திசைவில் வைத்திருக்கிறது."
msgid "Set auto progress sync"
msgstr "தானியங்கி முன்னேற்ற ஒத்திசைவை அமைக்கவும்"
msgid "on"
msgstr "இயக்கு"
msgid "off"
msgstr "முடக்கு"
msgid "Toggle auto readest sync"
msgstr "தானியங்கி Readest ஒத்திசைவை மாற்றவும்"
msgid "Push readest progress from this device"
msgstr "இந்தச் சாதனத்திலிருந்து Readest முன்னேற்றத்தை அனுப்பு"
msgid "Pull readest progress from other devices"
msgstr "மற்ற சாதனங்களிலிருந்து Readest முன்னேற்றத்தைப் பெறு"
msgid "Push readest annotations from this device"
msgstr "இந்தச் சாதனத்திலிருந்து Readest குறிப்புகளை அனுப்பு"
msgid "Pull readest annotations from other devices"
msgstr "மற்ற சாதனங்களிலிருந்து Readest குறிப்புகளைப் பெறு"
msgid "Log in Readest Account"
msgstr "Readest கணக்கில் உள்நுழைக"
msgid "Log out as %1"
msgstr "%1 ஆக வெளியேறு"
msgid "Auto sync progress and annotations"
msgstr "முன்னேற்றம் மற்றும் குறிப்புகளை தானாக ஒத்திசை"
msgid "Push reading progress now"
msgstr "வாசிப்பு முன்னேற்றத்தை இப்போது அனுப்பு"
msgid "Pull reading progress now"
msgstr "வாசிப்பு முன்னேற்றத்தை இப்போது பெறு"
msgid "Push annotations now"
msgstr "குறிப்புகளை இப்போது அனுப்பு"
msgid "Pull annotations now"
msgstr "குறிப்புகளை இப்போது பெறு"
msgid "Full sync all annotations"
msgstr "அனைத்து குறிப்புகளின் முழு ஒத்திசைவு"
msgid "Sync info"
msgstr "ஒத்திசைவு தகவல்"
msgid "Check for update (v%1)"
msgstr "புதுப்பிப்பைச் சரிபார் (v%1)"
msgid "Check for update"
msgstr "புதுப்பிப்பைச் சரிபார்"
msgid "Please login first"
msgstr "முதலில் உள்நுழைக"
msgid "Please configure Readest settings first"
msgstr "முதலில் Readest அமைப்புகளை உள்ளமைக்கவும்"
msgid "No book is open"
msgstr "எந்த நூலும் திறக்கப்படவில்லை"
msgid "(none)"
msgstr "(இல்லை)"
msgid "Never synced"
msgstr "இதுவரை ஒத்திசைக்கப்படவில்லை"
msgid "Book Fingerprint"
msgstr "புத்தக கைரேகை"
msgid "Title"
msgstr "தலைப்பு"
msgid "Author"
msgstr "ஆசிரியர்"
msgid "Identifiers"
msgstr "அடையாளங்காட்டிகள்"
msgid "Last Synced"
msgstr "கடைசி ஒத்திசைவு"
msgid "Sync Info"
msgstr "ஒத்திசைவு தகவல்"
msgid "Checking for update…"
msgstr "புதுப்பிப்பைச் சரிபார்க்கிறது…"
msgid "Failed to check for update. Please try again later."
msgstr "புதுப்பிப்பைச் சரிபார்ப்பதில் தோல்வி. பின்னர் முயற்சிக்கவும்."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "புதிய பதிப்பு கிடைக்கிறது: v%1 (தற்போதைய: v%2).\n\nஇப்போது புதுப்பிக்கவா?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "புதிய பதிப்பு கிடைக்கிறது: v%1.\n\nஇப்போது புதுப்பிக்கவா?"
msgid "Update"
msgstr "புதுப்பி"
msgid "You are up to date (v%1)."
msgstr "நீங்கள் சமீபத்திய பதிப்பில் உள்ளீர்கள் (v%1)."
msgid "Downloading update…"
msgstr "புதுப்பிப்பைப் பதிவிறக்குகிறது…"
msgid "Failed to download update. Please try again later."
msgstr "புதுப்பிப்பைப் பதிவிறக்குவதில் தோல்வி. பின்னர் முயற்சிக்கவும்."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest செருகுநிரல் v%1 ஆக புதுப்பிக்கப்பட்டது.\n\nபுதுப்பிப்பை செயல்படுத்த KOReader ஐ மீண்டும் தொடங்கவும்."
msgid "Restart now"
msgstr "இப்போது மீண்டும் தொடங்கு"
msgid "Later"
msgstr "பின்னர்"
msgid "Failed to install update: %1"
msgstr "புதுப்பிப்பை நிறுவுவதில் தோல்வி: %1"
msgid "unknown error"
msgstr "தெரியாத பிழை"
msgid "No annotations to push"
msgstr "அனுப்ப குறிப்புகள் இல்லை"
msgid "Pushing annotations..."
msgstr "குறிப்புகள் அனுப்பப்படுகின்றன…"
msgid "%1 annotations pushed successfully"
msgstr "%1 குறிப்புகள் வெற்றிகரமாக அனுப்பப்பட்டன"
msgid "Failed to push annotations"
msgstr "குறிப்புகளை அனுப்புவதில் தோல்வி"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF ஆவணங்களுக்கு குறிப்பு ஒத்திசைவு ஆதரிக்கப்படவில்லை"
msgid "Full sync: pulling all annotations..."
msgstr "முழு ஒத்திசைவு: அனைத்து குறிப்புகளும் பெறப்படுகின்றன…"
msgid "Pulling annotations..."
msgstr "குறிப்புகள் பெறப்படுகின்றன…"
msgid "Failed to pull annotations"
msgstr "குறிப்புகளைப் பெறுவதில் தோல்வி"
msgid "No new annotations found"
msgstr "புதிய குறிப்புகள் காணப்படவில்லை"
msgid "%1 annotations pulled"
msgstr "%1 குறிப்புகள் பெறப்பட்டன"
msgid "Cancel"
msgstr "ரத்து செய்யவும்"
msgid "Login"
msgstr "உள்நுழை"
msgid "Please enter both email and password"
msgstr "மின்னஞ்சல் மற்றும் கடவுச்சொல்லை உள்ளிடவும்"
msgid "Please configure Supabase URL and API key first"
msgstr "முதலில் Supabase URL மற்றும் API விசையை உள்ளமைக்கவும்"
msgid "Logging in..."
msgstr "உள்நுழைகிறது…"
msgid "Successfully logged in to Readest"
msgstr "Readest இல் வெற்றிகரமாக உள்நுழைந்தீர்கள்"
msgid "Login failed: %1"
msgstr "உள்நுழைவில் தோல்வி: %1"
msgid "Logged out from Readest"
msgstr "Readest இலிருந்து வெளியேறினீர்கள்"
msgid "Cannot identify the current book"
msgstr "தற்போதைய நூலை அடையாளம் காண முடியவில்லை"
msgid "Progress has been synchronized."
msgstr "முன்னேற்றம் ஒத்திசைக்கப்பட்டது."
msgid "Pushing reading progress..."
msgstr "வாசிப்பு முன்னேற்றம் அனுப்பப்படுகிறது…"
msgid "Reading progress pushed successfully"
msgstr "வாசிப்பு முன்னேற்றம் வெற்றிகரமாக அனுப்பப்பட்டது"
msgid "Failed to push reading progress"
msgstr "வாசிப்பு முன்னேற்றத்தை அனுப்புவதில் தோல்வி"
msgid "Pulling reading progress..."
msgstr "வாசிப்பு முன்னேற்றம் பெறப்படுகிறது…"
msgid "Authentication failed, please login again"
msgstr "அங்கீகாரம் தோல்வி, மீண்டும் உள்நுழைக"
msgid "Failed to pull reading progress"
msgstr "வாசிப்பு முன்னேற்றத்தைப் பெறுவதில் தோல்வி"
msgid "Reading progress synchronized"
msgstr "வாசிப்பு முன்னேற்றம் ஒத்திசைக்கப்பட்டது"
msgid "No saved reading progress found for this book"
msgstr "இந்த நூலுக்கான சேமிக்கப்பட்ட வாசிப்பு முன்னேற்றம் இல்லை"
@@ -0,0 +1,231 @@
# Thai translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "รักษาการซิงค์ระหว่างอุปกรณ์ KOReader และ Readest ของคุณ"
msgid "Set auto progress sync"
msgstr "ตั้งค่าการซิงค์ความคืบหน้าอัตโนมัติ"
msgid "on"
msgstr "เปิด"
msgid "off"
msgstr "ปิด"
msgid "Toggle auto readest sync"
msgstr "สลับการซิงค์อัตโนมัติของ Readest"
msgid "Push readest progress from this device"
msgstr "ส่งความคืบหน้า Readest จากอุปกรณ์นี้"
msgid "Pull readest progress from other devices"
msgstr "ดึงความคืบหน้า Readest จากอุปกรณ์อื่น"
msgid "Push readest annotations from this device"
msgstr "ส่งคำอธิบาย Readest จากอุปกรณ์นี้"
msgid "Pull readest annotations from other devices"
msgstr "ดึงคำอธิบาย Readest จากอุปกรณ์อื่น"
msgid "Log in Readest Account"
msgstr "เข้าสู่ระบบบัญชี Readest"
msgid "Log out as %1"
msgstr "ออกจากระบบในชื่อ %1"
msgid "Auto sync progress and annotations"
msgstr "ซิงค์ความคืบหน้าและคำอธิบายอัตโนมัติ"
msgid "Push reading progress now"
msgstr "ส่งความคืบหน้าการอ่านตอนนี้"
msgid "Pull reading progress now"
msgstr "ดึงความคืบหน้าการอ่านตอนนี้"
msgid "Push annotations now"
msgstr "ส่งคำอธิบายตอนนี้"
msgid "Pull annotations now"
msgstr "ดึงคำอธิบายตอนนี้"
msgid "Full sync all annotations"
msgstr "ซิงค์คำอธิบายทั้งหมดแบบเต็ม"
msgid "Sync info"
msgstr "ข้อมูลการซิงค์"
msgid "Check for update (v%1)"
msgstr "ตรวจสอบการอัปเดต (v%1)"
msgid "Check for update"
msgstr "ตรวจสอบการอัปเดต"
msgid "Please login first"
msgstr "โปรดเข้าสู่ระบบก่อน"
msgid "Please configure Readest settings first"
msgstr "โปรดกำหนดค่า Readest ก่อน"
msgid "No book is open"
msgstr "ไม่มีหนังสือที่เปิดอยู่"
msgid "(none)"
msgstr "(ไม่มี)"
msgid "Never synced"
msgstr "ไม่เคยซิงค์"
msgid "Book Fingerprint"
msgstr "ลายนิ้วมือหนังสือ"
msgid "Title"
msgstr "ชื่อเรื่อง"
msgid "Author"
msgstr "ผู้แต่ง"
msgid "Identifiers"
msgstr "ตัวระบุ"
msgid "Last Synced"
msgstr "ซิงค์ล่าสุด"
msgid "Sync Info"
msgstr "ข้อมูลการซิงค์"
msgid "Checking for update…"
msgstr "กำลังตรวจสอบการอัปเดต…"
msgid "Failed to check for update. Please try again later."
msgstr "ตรวจสอบการอัปเดตไม่สำเร็จ โปรดลองอีกครั้งภายหลัง"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "มีเวอร์ชันใหม่: v%1 (ปัจจุบัน: v%2)\n\nต้องการอัปเดตตอนนี้หรือไม่?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "มีเวอร์ชันใหม่: v%1\n\nต้องการอัปเดตตอนนี้หรือไม่?"
msgid "Update"
msgstr "อัปเดต"
msgid "You are up to date (v%1)."
msgstr "คุณใช้เวอร์ชันล่าสุด (v%1)"
msgid "Downloading update…"
msgstr "กำลังดาวน์โหลดการอัปเดต…"
msgid "Failed to download update. Please try again later."
msgstr "ดาวน์โหลดการอัปเดตไม่สำเร็จ โปรดลองอีกครั้งภายหลัง"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "ปลั๊กอิน Readest อัปเดตเป็น v%1\n\nโปรดเริ่มต้น KOReader ใหม่เพื่อใช้การอัปเดต"
msgid "Restart now"
msgstr "เริ่มใหม่ตอนนี้"
msgid "Later"
msgstr "ภายหลัง"
msgid "Failed to install update: %1"
msgstr "ติดตั้งการอัปเดตไม่สำเร็จ: %1"
msgid "unknown error"
msgstr "ข้อผิดพลาดที่ไม่ทราบ"
msgid "No annotations to push"
msgstr "ไม่มีคำอธิบายที่จะส่ง"
msgid "Pushing annotations..."
msgstr "กำลังส่งคำอธิบาย…"
msgid "%1 annotations pushed successfully"
msgstr "ส่งคำอธิบาย %1 รายการสำเร็จ"
msgid "Failed to push annotations"
msgstr "ส่งคำอธิบายไม่สำเร็จ"
msgid "Annotation sync is not supported for PDF documents"
msgstr "ไม่รองรับการซิงค์คำอธิบายสำหรับเอกสาร PDF"
msgid "Full sync: pulling all annotations..."
msgstr "ซิงค์เต็มรูปแบบ: กำลังดึงคำอธิบายทั้งหมด…"
msgid "Pulling annotations..."
msgstr "กำลังดึงคำอธิบาย…"
msgid "Failed to pull annotations"
msgstr "ดึงคำอธิบายไม่สำเร็จ"
msgid "No new annotations found"
msgstr "ไม่พบคำอธิบายใหม่"
msgid "%1 annotations pulled"
msgstr "ดึงคำอธิบาย %1 รายการ"
msgid "Cancel"
msgstr "ยกเลิก"
msgid "Login"
msgstr "เข้าสู่ระบบ"
msgid "Please enter both email and password"
msgstr "โปรดป้อนทั้งอีเมลและรหัสผ่าน"
msgid "Please configure Supabase URL and API key first"
msgstr "โปรดกำหนดค่า URL ของ Supabase และคีย์ API ก่อน"
msgid "Logging in..."
msgstr "กำลังเข้าสู่ระบบ…"
msgid "Successfully logged in to Readest"
msgstr "เข้าสู่ระบบ Readest สำเร็จ"
msgid "Login failed: %1"
msgstr "เข้าสู่ระบบไม่สำเร็จ: %1"
msgid "Logged out from Readest"
msgstr "ออกจากระบบ Readest แล้ว"
msgid "Cannot identify the current book"
msgstr "ไม่สามารถระบุหนังสือปัจจุบันได้"
msgid "Progress has been synchronized."
msgstr "ความคืบหน้าได้รับการซิงค์แล้ว"
msgid "Pushing reading progress..."
msgstr "กำลังส่งความคืบหน้าการอ่าน…"
msgid "Reading progress pushed successfully"
msgstr "ส่งความคืบหน้าการอ่านสำเร็จ"
msgid "Failed to push reading progress"
msgstr "ส่งความคืบหน้าการอ่านไม่สำเร็จ"
msgid "Pulling reading progress..."
msgstr "กำลังดึงความคืบหน้าการอ่าน…"
msgid "Authentication failed, please login again"
msgstr "การยืนยันตัวตนล้มเหลว โปรดเข้าสู่ระบบอีกครั้ง"
msgid "Failed to pull reading progress"
msgstr "ดึงความคืบหน้าการอ่านไม่สำเร็จ"
msgid "Reading progress synchronized"
msgstr "ซิงค์ความคืบหน้าการอ่านแล้ว"
msgid "No saved reading progress found for this book"
msgstr "ไม่พบความคืบหน้าการอ่านที่บันทึกไว้สำหรับหนังสือเล่มนี้"
@@ -0,0 +1,231 @@
# Turkish translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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=2; plural=(n > 1);\n"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "KOReader ve Readest cihazlarınızı senkronize tutar."
msgid "Set auto progress sync"
msgstr "Otomatik ilerleme senkronizasyonunu ayarla"
msgid "on"
msgstr "açık"
msgid "off"
msgstr "kapalı"
msgid "Toggle auto readest sync"
msgstr "Otomatik Readest senkronizasyonunu değiştir"
msgid "Push readest progress from this device"
msgstr "Bu cihazdan Readest ilerlemesini gönder"
msgid "Pull readest progress from other devices"
msgstr "Diğer cihazlardan Readest ilerlemesini al"
msgid "Push readest annotations from this device"
msgstr "Bu cihazdan Readest açıklamalarını gönder"
msgid "Pull readest annotations from other devices"
msgstr "Diğer cihazlardan Readest açıklamalarını al"
msgid "Log in Readest Account"
msgstr "Readest hesabına giriş yap"
msgid "Log out as %1"
msgstr "%1 olarak çıkış yap"
msgid "Auto sync progress and annotations"
msgstr "İlerlemeyi ve açıklamaları otomatik senkronize et"
msgid "Push reading progress now"
msgstr "Okuma ilerlemesini şimdi gönder"
msgid "Pull reading progress now"
msgstr "Okuma ilerlemesini şimdi al"
msgid "Push annotations now"
msgstr "Açıklamaları şimdi gönder"
msgid "Pull annotations now"
msgstr "Açıklamaları şimdi al"
msgid "Full sync all annotations"
msgstr "Tüm açıklamaları tam senkronize et"
msgid "Sync info"
msgstr "Senkronizasyon bilgisi"
msgid "Check for update (v%1)"
msgstr "Güncelleme kontrol et (v%1)"
msgid "Check for update"
msgstr "Güncelleme kontrol et"
msgid "Please login first"
msgstr "Önce giriş yapın"
msgid "Please configure Readest settings first"
msgstr "Önce Readest ayarlarını yapılandırın"
msgid "No book is open"
msgstr "Açık kitap yok"
msgid "(none)"
msgstr "(yok)"
msgid "Never synced"
msgstr "Hiç senkronize edilmedi"
msgid "Book Fingerprint"
msgstr "Kitap parmak izi"
msgid "Title"
msgstr "Başlık"
msgid "Author"
msgstr "Yazar"
msgid "Identifiers"
msgstr "Tanımlayıcılar"
msgid "Last Synced"
msgstr "Son senkronizasyon"
msgid "Sync Info"
msgstr "Senkronizasyon bilgisi"
msgid "Checking for update…"
msgstr "Güncelleme kontrol ediliyor…"
msgid "Failed to check for update. Please try again later."
msgstr "Güncelleme kontrolü başarısız. Lütfen daha sonra tekrar deneyin."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Yeni bir sürüm mevcut: v%1 (geçerli: v%2).\n\nŞimdi güncellemek ister misiniz?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Yeni bir sürüm mevcut: v%1.\n\nŞimdi güncellemek ister misiniz?"
msgid "Update"
msgstr "Güncelle"
msgid "You are up to date (v%1)."
msgstr "Güncelsiniz (v%1)."
msgid "Downloading update…"
msgstr "Güncelleme indiriliyor…"
msgid "Failed to download update. Please try again later."
msgstr "Güncelleme indirilemedi. Lütfen daha sonra tekrar deneyin."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest eklentisi v%1 sürümüne güncellendi.\n\nGüncellemeyi uygulamak için KOReader'ı yeniden başlatın."
msgid "Restart now"
msgstr "Şimdi yeniden başlat"
msgid "Later"
msgstr "Daha sonra"
msgid "Failed to install update: %1"
msgstr "Güncelleme yüklenemedi: %1"
msgid "unknown error"
msgstr "bilinmeyen hata"
msgid "No annotations to push"
msgstr "Gönderilecek açıklama yok"
msgid "Pushing annotations..."
msgstr "Açıklamalar gönderiliyor…"
msgid "%1 annotations pushed successfully"
msgstr "%1 açıklama başarıyla gönderildi"
msgid "Failed to push annotations"
msgstr "Açıklamalar gönderilemedi"
msgid "Annotation sync is not supported for PDF documents"
msgstr "PDF belgeleri için açıklama senkronizasyonu desteklenmiyor"
msgid "Full sync: pulling all annotations..."
msgstr "Tam senkronizasyon: tüm açıklamalar alınıyor…"
msgid "Pulling annotations..."
msgstr "Açıklamalar alınıyor…"
msgid "Failed to pull annotations"
msgstr "Açıklamalar alınamadı"
msgid "No new annotations found"
msgstr "Yeni açıklama bulunamadı"
msgid "%1 annotations pulled"
msgstr "%1 açıklama alındı"
msgid "Cancel"
msgstr "İptal"
msgid "Login"
msgstr "Giriş"
msgid "Please enter both email and password"
msgstr "E-posta ve parolayı girin"
msgid "Please configure Supabase URL and API key first"
msgstr "Önce Supabase URL ve API anahtarını yapılandırın"
msgid "Logging in..."
msgstr "Giriş yapılıyor…"
msgid "Successfully logged in to Readest"
msgstr "Readest'e başarıyla giriş yapıldı"
msgid "Login failed: %1"
msgstr "Giriş başarısız: %1"
msgid "Logged out from Readest"
msgstr "Readest'ten çıkış yapıldı"
msgid "Cannot identify the current book"
msgstr "Geçerli kitap tanımlanamıyor"
msgid "Progress has been synchronized."
msgstr "İlerleme senkronize edildi."
msgid "Pushing reading progress..."
msgstr "Okuma ilerlemesi gönderiliyor…"
msgid "Reading progress pushed successfully"
msgstr "Okuma ilerlemesi başarıyla gönderildi"
msgid "Failed to push reading progress"
msgstr "Okuma ilerlemesi gönderilemedi"
msgid "Pulling reading progress..."
msgstr "Okuma ilerlemesi alınıyor…"
msgid "Authentication failed, please login again"
msgstr "Kimlik doğrulama başarısız, tekrar giriş yapın"
msgid "Failed to pull reading progress"
msgstr "Okuma ilerlemesi alınamadı"
msgid "Reading progress synchronized"
msgstr "Okuma ilerlemesi senkronize edildi"
msgid "No saved reading progress found for this book"
msgstr "Bu kitap için kayıtlı okuma ilerlemesi bulunamadı"
@@ -0,0 +1,231 @@
# Ukrainian translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Підтримує синхронізацію пристроїв KOReader і Readest."
msgid "Set auto progress sync"
msgstr "Налаштувати автосинхронізацію прогресу"
msgid "on"
msgstr "увімк."
msgid "off"
msgstr "вимк."
msgid "Toggle auto readest sync"
msgstr "Перемкнути автосинхронізацію Readest"
msgid "Push readest progress from this device"
msgstr "Надіслати прогрес Readest з цього пристрою"
msgid "Pull readest progress from other devices"
msgstr "Отримати прогрес Readest з інших пристроїв"
msgid "Push readest annotations from this device"
msgstr "Надіслати нотатки Readest з цього пристрою"
msgid "Pull readest annotations from other devices"
msgstr "Отримати нотатки Readest з інших пристроїв"
msgid "Log in Readest Account"
msgstr "Увійти до облікового запису Readest"
msgid "Log out as %1"
msgstr "Вийти з %1"
msgid "Auto sync progress and annotations"
msgstr "Автоматично синхронізувати прогрес і нотатки"
msgid "Push reading progress now"
msgstr "Надіслати прогрес читання зараз"
msgid "Pull reading progress now"
msgstr "Отримати прогрес читання зараз"
msgid "Push annotations now"
msgstr "Надіслати нотатки зараз"
msgid "Pull annotations now"
msgstr "Отримати нотатки зараз"
msgid "Full sync all annotations"
msgstr "Повна синхронізація всіх нотаток"
msgid "Sync info"
msgstr "Відомості про синхронізацію"
msgid "Check for update (v%1)"
msgstr "Перевірити оновлення (v%1)"
msgid "Check for update"
msgstr "Перевірити оновлення"
msgid "Please login first"
msgstr "Спочатку увійдіть"
msgid "Please configure Readest settings first"
msgstr "Спочатку налаштуйте параметри Readest"
msgid "No book is open"
msgstr "Жодну книгу не відкрито"
msgid "(none)"
msgstr "(немає)"
msgid "Never synced"
msgstr "Ще не синхронізовано"
msgid "Book Fingerprint"
msgstr "Відбиток книги"
msgid "Title"
msgstr "Назва"
msgid "Author"
msgstr "Автор"
msgid "Identifiers"
msgstr "Ідентифікатори"
msgid "Last Synced"
msgstr "Остання синхронізація"
msgid "Sync Info"
msgstr "Відомості про синхронізацію"
msgid "Checking for update…"
msgstr "Перевірка оновлень…"
msgid "Failed to check for update. Please try again later."
msgstr "Не вдалося перевірити оновлення. Спробуйте пізніше."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Доступна нова версія: v%1 (поточна: v%2).\n\nОновити зараз?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Доступна нова версія: v%1.\n\nОновити зараз?"
msgid "Update"
msgstr "Оновити"
msgid "You are up to date (v%1)."
msgstr "У вас актуальна версія (v%1)."
msgid "Downloading update…"
msgstr "Завантаження оновлення…"
msgid "Failed to download update. Please try again later."
msgstr "Не вдалося завантажити оновлення. Спробуйте пізніше."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Плагін Readest оновлено до v%1.\n\nПерезапустіть KOReader, щоб застосувати оновлення."
msgid "Restart now"
msgstr "Перезапустити зараз"
msgid "Later"
msgstr "Пізніше"
msgid "Failed to install update: %1"
msgstr "Не вдалося встановити оновлення: %1"
msgid "unknown error"
msgstr "невідома помилка"
msgid "No annotations to push"
msgstr "Немає нотаток для надсилання"
msgid "Pushing annotations..."
msgstr "Надсилання нотаток…"
msgid "%1 annotations pushed successfully"
msgstr "Надіслано нотаток: %1"
msgid "Failed to push annotations"
msgstr "Не вдалося надіслати нотатки"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Синхронізація нотаток не підтримується для PDF-документів"
msgid "Full sync: pulling all annotations..."
msgstr "Повна синхронізація: отримання всіх нотаток…"
msgid "Pulling annotations..."
msgstr "Отримання нотаток…"
msgid "Failed to pull annotations"
msgstr "Не вдалося отримати нотатки"
msgid "No new annotations found"
msgstr "Нових нотаток не знайдено"
msgid "%1 annotations pulled"
msgstr "Отримано нотаток: %1"
msgid "Cancel"
msgstr "Скасувати"
msgid "Login"
msgstr "Увійти"
msgid "Please enter both email and password"
msgstr "Введіть електронну пошту та пароль"
msgid "Please configure Supabase URL and API key first"
msgstr "Спочатку налаштуйте URL Supabase і ключ API"
msgid "Logging in..."
msgstr "Вхід…"
msgid "Successfully logged in to Readest"
msgstr "Ви увійшли до Readest"
msgid "Login failed: %1"
msgstr "Не вдалося увійти: %1"
msgid "Logged out from Readest"
msgstr "Вихід із Readest виконано"
msgid "Cannot identify the current book"
msgstr "Не вдалося визначити поточну книгу"
msgid "Progress has been synchronized."
msgstr "Прогрес синхронізовано."
msgid "Pushing reading progress..."
msgstr "Надсилання прогресу читання…"
msgid "Reading progress pushed successfully"
msgstr "Прогрес читання надіслано"
msgid "Failed to push reading progress"
msgstr "Не вдалося надіслати прогрес читання"
msgid "Pulling reading progress..."
msgstr "Отримання прогресу читання…"
msgid "Authentication failed, please login again"
msgstr "Помилка автентифікації, увійдіть знову"
msgid "Failed to pull reading progress"
msgstr "Не вдалося отримати прогрес читання"
msgid "Reading progress synchronized"
msgstr "Прогрес читання синхронізовано"
msgid "No saved reading progress found for this book"
msgstr "Збережений прогрес читання для цієї книги не знайдено"
@@ -0,0 +1,231 @@
# Vietnamese translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Vietnamese\n"
"Language: vi\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "Giữ các thiết bị KOReader và Readest của bạn đồng bộ."
msgid "Set auto progress sync"
msgstr "Đặt đồng bộ tiến trình tự động"
msgid "on"
msgstr "bật"
msgid "off"
msgstr "tắt"
msgid "Toggle auto readest sync"
msgstr "Chuyển đổi đồng bộ tự động Readest"
msgid "Push readest progress from this device"
msgstr "Đẩy tiến trình Readest từ thiết bị này"
msgid "Pull readest progress from other devices"
msgstr "Lấy tiến trình Readest từ thiết bị khác"
msgid "Push readest annotations from this device"
msgstr "Đẩy ghi chú Readest từ thiết bị này"
msgid "Pull readest annotations from other devices"
msgstr "Lấy ghi chú Readest từ thiết bị khác"
msgid "Log in Readest Account"
msgstr "Đăng nhập tài khoản Readest"
msgid "Log out as %1"
msgstr "Đăng xuất khỏi %1"
msgid "Auto sync progress and annotations"
msgstr "Tự động đồng bộ tiến trình và ghi chú"
msgid "Push reading progress now"
msgstr "Đẩy tiến trình đọc ngay"
msgid "Pull reading progress now"
msgstr "Lấy tiến trình đọc ngay"
msgid "Push annotations now"
msgstr "Đẩy ghi chú ngay"
msgid "Pull annotations now"
msgstr "Lấy ghi chú ngay"
msgid "Full sync all annotations"
msgstr "Đồng bộ đầy đủ tất cả ghi chú"
msgid "Sync info"
msgstr "Thông tin đồng bộ"
msgid "Check for update (v%1)"
msgstr "Kiểm tra cập nhật (v%1)"
msgid "Check for update"
msgstr "Kiểm tra cập nhật"
msgid "Please login first"
msgstr "Vui lòng đăng nhập trước"
msgid "Please configure Readest settings first"
msgstr "Vui lòng cấu hình cài đặt Readest trước"
msgid "No book is open"
msgstr "Không có sách nào đang mở"
msgid "(none)"
msgstr "(không có)"
msgid "Never synced"
msgstr "Chưa đồng bộ"
msgid "Book Fingerprint"
msgstr "Dấu vân tay sách"
msgid "Title"
msgstr "Tiêu đề"
msgid "Author"
msgstr "Tác giả"
msgid "Identifiers"
msgstr "Định Danh"
msgid "Last Synced"
msgstr "Lần đồng bộ cuối"
msgid "Sync Info"
msgstr "Thông tin đồng bộ"
msgid "Checking for update…"
msgstr "Đang kiểm tra cập nhật…"
msgid "Failed to check for update. Please try again later."
msgstr "Không thể kiểm tra cập nhật. Vui lòng thử lại sau."
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "Phiên bản mới đã có: v%1 (hiện tại: v%2).\n\nCập nhật ngay?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "Phiên bản mới đã có: v%1.\n\nCập nhật ngay?"
msgid "Update"
msgstr "Cập nhật"
msgid "You are up to date (v%1)."
msgstr "Bạn đang dùng phiên bản mới nhất (v%1)."
msgid "Downloading update…"
msgstr "Đang tải bản cập nhật…"
msgid "Failed to download update. Please try again later."
msgstr "Không thể tải bản cập nhật. Vui lòng thử lại sau."
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Plugin Readest đã cập nhật lên v%1.\n\nVui lòng khởi động lại KOReader để áp dụng bản cập nhật."
msgid "Restart now"
msgstr "Khởi động lại ngay"
msgid "Later"
msgstr "Để sau"
msgid "Failed to install update: %1"
msgstr "Không thể cài đặt bản cập nhật: %1"
msgid "unknown error"
msgstr "lỗi không xác định"
msgid "No annotations to push"
msgstr "Không có ghi chú để đẩy"
msgid "Pushing annotations..."
msgstr "Đang đẩy ghi chú…"
msgid "%1 annotations pushed successfully"
msgstr "Đã đẩy %1 ghi chú"
msgid "Failed to push annotations"
msgstr "Không thể đẩy ghi chú"
msgid "Annotation sync is not supported for PDF documents"
msgstr "Đồng bộ ghi chú không hỗ trợ tài liệu PDF"
msgid "Full sync: pulling all annotations..."
msgstr "Đồng bộ đầy đủ: đang lấy tất cả ghi chú…"
msgid "Pulling annotations..."
msgstr "Đang lấy ghi chú…"
msgid "Failed to pull annotations"
msgstr "Không thể lấy ghi chú"
msgid "No new annotations found"
msgstr "Không tìm thấy ghi chú mới"
msgid "%1 annotations pulled"
msgstr "Đã lấy %1 ghi chú"
msgid "Cancel"
msgstr "Hủy"
msgid "Login"
msgstr "Đăng nhập"
msgid "Please enter both email and password"
msgstr "Vui lòng nhập email và mật khẩu"
msgid "Please configure Supabase URL and API key first"
msgstr "Vui lòng cấu hình URL Supabase và khóa API trước"
msgid "Logging in..."
msgstr "Đang đăng nhập…"
msgid "Successfully logged in to Readest"
msgstr "Đã đăng nhập Readest"
msgid "Login failed: %1"
msgstr "Đăng nhập thất bại: %1"
msgid "Logged out from Readest"
msgstr "Đã đăng xuất khỏi Readest"
msgid "Cannot identify the current book"
msgstr "Không thể nhận dạng sách hiện tại"
msgid "Progress has been synchronized."
msgstr "Tiến trình đã được đồng bộ."
msgid "Pushing reading progress..."
msgstr "Đang đẩy tiến trình đọc…"
msgid "Reading progress pushed successfully"
msgstr "Đã đẩy tiến trình đọc"
msgid "Failed to push reading progress"
msgstr "Không thể đẩy tiến trình đọc"
msgid "Pulling reading progress..."
msgstr "Đang lấy tiến trình đọc…"
msgid "Authentication failed, please login again"
msgstr "Xác thực thất bại, vui lòng đăng nhập lại"
msgid "Failed to pull reading progress"
msgstr "Không thể lấy tiến trình đọc"
msgid "Reading progress synchronized"
msgstr "Tiến trình đọc đã đồng bộ"
msgid "No saved reading progress found for this book"
msgstr "Không tìm thấy tiến trình đọc đã lưu cho sách này"
@@ -0,0 +1,231 @@
# Chinese (Simplified) translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Chinese (Simplified)\n"
"Language: zh-CN\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "让你的 KOReader 与 Readest 设备保持同步。"
msgid "Set auto progress sync"
msgstr "设置自动同步阅读进度"
msgid "on"
msgstr "开"
msgid "off"
msgstr "关"
msgid "Toggle auto readest sync"
msgstr "切换 Readest 自动同步"
msgid "Push readest progress from this device"
msgstr "从此设备推送 Readest 阅读进度"
msgid "Pull readest progress from other devices"
msgstr "从其他设备拉取 Readest 阅读进度"
msgid "Push readest annotations from this device"
msgstr "从此设备推送 Readest 标注"
msgid "Pull readest annotations from other devices"
msgstr "从其他设备拉取 Readest 标注"
msgid "Log in Readest Account"
msgstr "登录 Readest 账户"
msgid "Log out as %1"
msgstr "退出登录(%1"
msgid "Auto sync progress and annotations"
msgstr "自动同步阅读进度和标注"
msgid "Push reading progress now"
msgstr "立即推送阅读进度"
msgid "Pull reading progress now"
msgstr "立即拉取阅读进度"
msgid "Push annotations now"
msgstr "立即推送标注"
msgid "Pull annotations now"
msgstr "立即拉取标注"
msgid "Full sync all annotations"
msgstr "完整同步所有标注"
msgid "Sync info"
msgstr "同步信息"
msgid "Check for update (v%1)"
msgstr "检查更新(v%1"
msgid "Check for update"
msgstr "检查更新"
msgid "Please login first"
msgstr "请先登录"
msgid "Please configure Readest settings first"
msgstr "请先配置 Readest 设置"
msgid "No book is open"
msgstr "没有打开的书籍"
msgid "(none)"
msgstr "(无)"
msgid "Never synced"
msgstr "尚未同步"
msgid "Book Fingerprint"
msgstr "书籍指纹"
msgid "Title"
msgstr "标题"
msgid "Author"
msgstr "作者"
msgid "Identifiers"
msgstr "标识符"
msgid "Last Synced"
msgstr "上次同步"
msgid "Sync Info"
msgstr "同步信息"
msgid "Checking for update…"
msgstr "正在检查更新…"
msgid "Failed to check for update. Please try again later."
msgstr "检查更新失败,请稍后再试。"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "有新版本可用:v%1(当前:v%2)。\n\n是否立即更新?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "有新版本可用:v%1。\n\n是否立即更新?"
msgid "Update"
msgstr "更新"
msgid "You are up to date (v%1)."
msgstr "当前已是最新版本(v%1)。"
msgid "Downloading update…"
msgstr "正在下载更新…"
msgid "Failed to download update. Please try again later."
msgstr "下载更新失败,请稍后再试。"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest 插件已更新到 v%1。\n\n请重启 KOReader 以应用更新。"
msgid "Restart now"
msgstr "立即重启"
msgid "Later"
msgstr "稍后"
msgid "Failed to install update: %1"
msgstr "安装更新失败:%1"
msgid "unknown error"
msgstr "未知错误"
msgid "No annotations to push"
msgstr "没有可推送的标注"
msgid "Pushing annotations..."
msgstr "正在推送标注..."
msgid "%1 annotations pushed successfully"
msgstr "已成功推送 %1 条标注"
msgid "Failed to push annotations"
msgstr "推送标注失败"
msgid "Annotation sync is not supported for PDF documents"
msgstr "暂不支持同步 PDF 文档的标注"
msgid "Full sync: pulling all annotations..."
msgstr "完整同步:正在拉取所有标注..."
msgid "Pulling annotations..."
msgstr "正在拉取标注..."
msgid "Failed to pull annotations"
msgstr "拉取标注失败"
msgid "No new annotations found"
msgstr "未发现新标注"
msgid "%1 annotations pulled"
msgstr "已拉取 %1 条标注"
msgid "Cancel"
msgstr "取消"
msgid "Login"
msgstr "登录"
msgid "Please enter both email and password"
msgstr "请输入邮箱和密码"
msgid "Please configure Supabase URL and API key first"
msgstr "请先配置 Supabase URL 和 API key"
msgid "Logging in..."
msgstr "正在登录..."
msgid "Successfully logged in to Readest"
msgstr "已成功登录 Readest"
msgid "Login failed: %1"
msgstr "登录失败:%1"
msgid "Logged out from Readest"
msgstr "已退出 Readest"
msgid "Cannot identify the current book"
msgstr "无法识别当前书籍"
msgid "Progress has been synchronized."
msgstr "阅读进度已同步。"
msgid "Pushing reading progress..."
msgstr "正在推送阅读进度..."
msgid "Reading progress pushed successfully"
msgstr "阅读进度推送成功"
msgid "Failed to push reading progress"
msgstr "推送阅读进度失败"
msgid "Pulling reading progress..."
msgstr "正在拉取阅读进度..."
msgid "Authentication failed, please login again"
msgstr "认证失败,请重新登录"
msgid "Failed to pull reading progress"
msgstr "拉取阅读进度失败"
msgid "Reading progress synchronized"
msgstr "阅读进度已同步"
msgid "No saved reading progress found for this book"
msgstr "未找到此书籍的已保存阅读进度"
@@ -0,0 +1,231 @@
# Chinese (Traditional) translation for readest.koplugin
#
msgid ""
msgstr ""
"Project-Id-Version: readest.koplugin\n"
"Last-Translator: Readest contributors\n"
"Language-Team: Chinese (Traditional)\n"
"Language: zh-TW\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"
msgid "Readest"
msgstr "Readest"
msgid "Keeps your KOReader and Readest devices in sync."
msgstr "讓你的 KOReader 與 Readest 裝置保持同步。"
msgid "Set auto progress sync"
msgstr "設定自動同步閱讀進度"
msgid "on"
msgstr "開"
msgid "off"
msgstr "關"
msgid "Toggle auto readest sync"
msgstr "切換 Readest 自動同步"
msgid "Push readest progress from this device"
msgstr "從此裝置推送 Readest 閱讀進度"
msgid "Pull readest progress from other devices"
msgstr "從其他裝置拉取 Readest 閱讀進度"
msgid "Push readest annotations from this device"
msgstr "從此裝置推送 Readest 註釋"
msgid "Pull readest annotations from other devices"
msgstr "從其他裝置拉取 Readest 註釋"
msgid "Log in Readest Account"
msgstr "登入 Readest 帳戶"
msgid "Log out as %1"
msgstr "登出(%1"
msgid "Auto sync progress and annotations"
msgstr "自動同步閱讀進度和註釋"
msgid "Push reading progress now"
msgstr "立即推送閱讀進度"
msgid "Pull reading progress now"
msgstr "立即拉取閱讀進度"
msgid "Push annotations now"
msgstr "立即推送註釋"
msgid "Pull annotations now"
msgstr "立即拉取註釋"
msgid "Full sync all annotations"
msgstr "完整同步所有註釋"
msgid "Sync info"
msgstr "同步資訊"
msgid "Check for update (v%1)"
msgstr "檢查更新(v%1"
msgid "Check for update"
msgstr "檢查更新"
msgid "Please login first"
msgstr "請先登入"
msgid "Please configure Readest settings first"
msgstr "請先設定 Readest"
msgid "No book is open"
msgstr "沒有開啟的書籍"
msgid "(none)"
msgstr "(無)"
msgid "Never synced"
msgstr "尚未同步"
msgid "Book Fingerprint"
msgstr "書籍指紋"
msgid "Title"
msgstr "書名"
msgid "Author"
msgstr "作者"
msgid "Identifiers"
msgstr "識別碼"
msgid "Last Synced"
msgstr "上次同步"
msgid "Sync Info"
msgstr "同步資訊"
msgid "Checking for update…"
msgstr "正在檢查更新…"
msgid "Failed to check for update. Please try again later."
msgstr "檢查更新失敗,請稍後再試。"
msgid "A new version is available: v%1 (current: v%2).\n\nDo you want to update now?"
msgstr "有新版本可用:v%1(目前:v%2)。\n\n是否立即更新?"
msgid "A new version is available: v%1.\n\nDo you want to update now?"
msgstr "有新版本可用:v%1。\n\n是否立即更新?"
msgid "Update"
msgstr "更新"
msgid "You are up to date (v%1)."
msgstr "目前已是最新版本(v%1)。"
msgid "Downloading update…"
msgstr "正在下載更新…"
msgid "Failed to download update. Please try again later."
msgstr "下載更新失敗,請稍後再試。"
msgid "Readest plugin updated to v%1.\n\nPlease restart KOReader to apply the update."
msgstr "Readest 外掛已更新到 v%1。\n\n請重新啟動 KOReader 以套用更新。"
msgid "Restart now"
msgstr "立即重新啟動"
msgid "Later"
msgstr "稍後"
msgid "Failed to install update: %1"
msgstr "安裝更新失敗:%1"
msgid "unknown error"
msgstr "未知錯誤"
msgid "No annotations to push"
msgstr "沒有可推送的註釋"
msgid "Pushing annotations..."
msgstr "正在推送註釋…"
msgid "%1 annotations pushed successfully"
msgstr "已成功推送 %1 條註釋"
msgid "Failed to push annotations"
msgstr "推送註釋失敗"
msgid "Annotation sync is not supported for PDF documents"
msgstr "暫不支援同步 PDF 文件的註釋"
msgid "Full sync: pulling all annotations..."
msgstr "完整同步:正在拉取所有註釋…"
msgid "Pulling annotations..."
msgstr "正在拉取註釋…"
msgid "Failed to pull annotations"
msgstr "拉取註釋失敗"
msgid "No new annotations found"
msgstr "未發現新註釋"
msgid "%1 annotations pulled"
msgstr "已拉取 %1 條註釋"
msgid "Cancel"
msgstr "取消"
msgid "Login"
msgstr "登入"
msgid "Please enter both email and password"
msgstr "請輸入電子郵件和密碼"
msgid "Please configure Supabase URL and API key first"
msgstr "請先設定 Supabase URL 和 API 金鑰"
msgid "Logging in..."
msgstr "正在登入…"
msgid "Successfully logged in to Readest"
msgstr "已成功登入 Readest"
msgid "Login failed: %1"
msgstr "登入失敗:%1"
msgid "Logged out from Readest"
msgstr "已登出 Readest"
msgid "Cannot identify the current book"
msgstr "無法識別目前書籍"
msgid "Progress has been synchronized."
msgstr "閱讀進度已同步。"
msgid "Pushing reading progress..."
msgstr "正在推送閱讀進度…"
msgid "Reading progress pushed successfully"
msgstr "閱讀進度推送成功"
msgid "Failed to push reading progress"
msgstr "推送閱讀進度失敗"
msgid "Pulling reading progress..."
msgstr "正在拉取閱讀進度…"
msgid "Authentication failed, please login again"
msgstr "驗證失敗,請重新登入"
msgid "Failed to pull reading progress"
msgstr "拉取閱讀進度失敗"
msgid "Reading progress synchronized"
msgstr "閱讀進度已同步"
msgid "No saved reading progress found for this book"
msgstr "找不到此書籍的閱讀進度"
+20 -14
View File
@@ -6,7 +6,7 @@ local NetworkMgr = require("ui/network/manager")
local UIManager = require("ui/uimanager")
local sha2 = require("ffi/sha2")
local T = require("ffi/util").template
local _ = require("gettext")
local _ = require("i18n")
local SyncAuth = require("syncauth")
local SyncConfig = require("syncconfig")
@@ -15,7 +15,7 @@ local SelfUpdate = require("selfupdate")
local ReadestSync = WidgetContainer:new{
name = "readest",
title = _("Readest Sync"),
title = _("Readest"),
settings = nil,
}
@@ -74,12 +74,12 @@ end
function ReadestSync:addToMainMenu(menu_items)
menu_items.readest_sync = {
sorting_hint = "tools",
text = _("Readest Sync"),
text = _("Readest"),
sub_item_table = {
{
text_func = function()
return SyncAuth:needsLogin(self.settings) and _("Log in Readest Account")
or _("Log out as ") .. (self.settings.user_name or "")
or T(_("Log out as %1"), self.settings.user_name or "")
end,
callback_func = function()
if SyncAuth:needsLogin(self.settings) then
@@ -103,7 +103,7 @@ function ReadestSync:addToMainMenu(menu_items)
separator = true,
},
{
text = _("Push book config now"),
text = _("Push reading progress now"),
enabled_func = function()
return self.settings.access_token ~= nil and self.ui.document ~= nil
end,
@@ -112,7 +112,7 @@ function ReadestSync:addToMainMenu(menu_items)
end,
},
{
text = _("Pull book config now"),
text = _("Pull reading progress now"),
enabled_func = function()
return self.settings.access_token ~= nil and self.ui.document ~= nil
end,
@@ -150,12 +150,12 @@ function ReadestSync:addToMainMenu(menu_items)
separator = true,
},
{
text = _("Metadata hash info"),
text = _("Sync info"),
enabled_func = function()
return self.ui.document ~= nil
end,
callback = function()
self:showMetaHashInfo()
self:showSyncInfo()
end,
separator = true,
},
@@ -208,7 +208,7 @@ function ReadestSync:getBookIdentifiers()
return book_hash, meta_hash
end
function ReadestSync:showMetaHashInfo()
function ReadestSync:showSyncInfo()
if not self.ui.document then
UIManager:show(InfoMessage:new{
text = _("No book is open"),
@@ -222,12 +222,17 @@ function ReadestSync:showMetaHashInfo()
local stored_meta_hash = doc_readest_sync.meta_hash_v1
local placeholder = _("(none)")
local last_synced_at = math.max(
doc_readest_sync.last_synced_at_config or 0,
doc_readest_sync.last_synced_at_notes or 0
)
local last_synced_label = last_synced_at > 0
and os.date("%Y-%m-%d %H:%M", last_synced_at)
or _("Never synced")
local kv_pairs = {
{ _("Meta Hash"), stored_meta_hash or info.meta_hash },
{ _("Book Fingerprint"), stored_meta_hash or info.meta_hash },
}
if stored_meta_hash and stored_meta_hash ~= info.meta_hash then
table.insert(kv_pairs, { _("Computed Hash"), info.meta_hash })
end
table.insert(kv_pairs, { _("Title"), info.title ~= "" and info.title or placeholder })
table.insert(kv_pairs, {
_("Author"),
@@ -237,9 +242,10 @@ function ReadestSync:showMetaHashInfo()
_("Identifiers"),
#info.identifiers > 0 and table.concat(info.identifiers, ", ") or placeholder,
})
table.insert(kv_pairs, { _("Last Synced"), last_synced_label })
UIManager:show(KeyValuePage:new{
title = _("Metadata Hash"),
title = _("Sync Info"),
kv_pairs = kv_pairs,
})
end
@@ -0,0 +1,65 @@
#!/usr/bin/env node
/**
* One-shot applier: reads /tmp/koplugin-translations/<lang>.json and fills
* empty msgstrs in locales/<lang>/translation.po. Existing translations are
* never overwritten (only `msgstr ""` lines are replaced).
*/
'use strict';
const fs = require('node:fs');
const path = require('node:path');
const LOCALES_DIR = path.resolve(__dirname, '..', 'locales');
const DATA_DIR = '/tmp/koplugin-translations';
function escapePo(s) {
return s
.replace(/\\/g, '\\\\')
.replace(/"/g, '\\"')
.replace(/\n/g, '\\n')
.replace(/\t/g, '\\t')
.replace(/\r/g, '\\r');
}
function applyOne(lang, dict) {
const filePath = path.join(LOCALES_DIR, lang, 'translation.po');
if (!fs.existsSync(filePath)) {
console.warn(` ${lang.padEnd(6)} skipped (no .po file)`);
return;
}
let text = fs.readFileSync(filePath, 'utf-8');
let filled = 0;
let already = 0;
for (const [msgid, msgstr] of Object.entries(dict)) {
if (!msgstr) continue;
const idEsc = escapePo(msgid);
const strEsc = escapePo(msgstr);
const target = `msgid "${idEsc}"\nmsgstr ""`;
const replacement = `msgid "${idEsc}"\nmsgstr "${strEsc}"`;
if (text.includes(target)) {
text = text.replace(target, replacement);
filled++;
} else {
already++;
}
}
fs.writeFileSync(filePath, text);
console.log(` ${lang.padEnd(6)} +${filled} (${already} already set or absent)`);
}
const files = fs.existsSync(DATA_DIR)
? fs
.readdirSync(DATA_DIR)
.filter((f) => f.endsWith('.json'))
.sort()
: [];
if (files.length === 0) {
console.error(`No translation JSON files in ${DATA_DIR}`);
process.exit(1);
}
for (const file of files) {
const lang = file.replace(/\.json$/, '');
const dict = JSON.parse(fs.readFileSync(path.join(DATA_DIR, file), 'utf-8'));
applyOne(lang, dict);
}
Binary file not shown.
+1 -1
View File
@@ -4,7 +4,7 @@ local NetworkMgr = require("ui/network/manager")
local UIManager = require("ui/uimanager")
local logger = require("logger")
local T = require("ffi/util").template
local _ = require("gettext")
local _ = require("i18n")
local SelfUpdate = {}
+11 -1
View File
@@ -5,7 +5,7 @@ local UIManager = require("ui/uimanager")
local logger = require("logger")
local sha2 = require("ffi/sha2")
local T = require("ffi/util").template
local _ = require("gettext")
local _ = require("i18n")
local SyncAnnotations = {}
@@ -179,6 +179,11 @@ function SyncAnnotations:push(ui, settings, client, interactive, full_sync)
if success then
settings.last_notes_sync_at = os.time() * 1000
G_reader_settings:saveSetting("readest_sync", settings)
if ui.doc_settings then
local doc_readest_sync = ui.doc_settings:readSetting("readest_sync") or {}
doc_readest_sync.last_synced_at_notes = os.time()
ui.doc_settings:saveSetting("readest_sync", doc_readest_sync)
end
end
end
)
@@ -339,6 +344,11 @@ function SyncAnnotations:pull(ui, settings, client, book_hash, meta_hash, dialog
settings.last_notes_sync_at = os.time() * 1000
G_reader_settings:saveSetting("readest_sync", settings)
if ui.doc_settings then
local doc_readest_sync = ui.doc_settings:readSetting("readest_sync") or {}
doc_readest_sync.last_synced_at_notes = os.time()
ui.doc_settings:saveSetting("readest_sync", doc_readest_sync)
end
if interactive then
UIManager:show(InfoMessage:new{
+4 -3
View File
@@ -5,7 +5,8 @@ local NetworkMgr = require("ui/network/manager")
local UIManager = require("ui/uimanager")
local logger = require("logger")
local util = require("util")
local _ = require("gettext")
local T = require("ffi/util").template
local _ = require("i18n")
local SyncAuth = {}
@@ -146,7 +147,7 @@ function SyncAuth:doLogin(settings, path, email, password, menu)
})
else
UIManager:show(InfoMessage:new{
text = _("Login failed: ") .. (response.msg or "Unknown error"),
text = T(_("Login failed: %1"), response.msg or _("unknown error")),
timeout = 3,
})
end
@@ -173,7 +174,7 @@ function SyncAuth:logout(settings, path, menu)
end
UIManager:show(InfoMessage:new{
text = _("Logged out from Readest Sync"),
text = _("Logged out from Readest"),
timeout = 2,
})
end
+19 -8
View File
@@ -4,7 +4,7 @@ local UIManager = require("ui/uimanager")
local logger = require("logger")
local util = require("util")
local sha2 = require("ffi/sha2")
local _ = require("gettext")
local _ = require("i18n")
local SyncConfig = {}
@@ -177,7 +177,7 @@ function SyncConfig:push(ui, settings, client, interactive, last_sync_timestamp)
if interactive then
UIManager:show(InfoMessage:new{
text = _("Pushing book config..."),
text = _("Pushing reading progress..."),
timeout = 1,
})
end
@@ -194,16 +194,21 @@ function SyncConfig:push(ui, settings, client, interactive, last_sync_timestamp)
if interactive then
if success then
UIManager:show(InfoMessage:new{
text = _("Book config pushed successfully"),
text = _("Reading progress pushed successfully"),
timeout = 2,
})
else
UIManager:show(InfoMessage:new{
text = _("Failed to push book config"),
text = _("Failed to push reading progress"),
timeout = 2,
})
end
end
if success and ui.doc_settings then
local doc_readest_sync = ui.doc_settings:readSetting("readest_sync") or {}
doc_readest_sync.last_synced_at_config = os.time()
ui.doc_settings:saveSetting("readest_sync", doc_readest_sync)
end
end
)
@@ -216,7 +221,7 @@ end
function SyncConfig:pull(ui, settings, client, book_hash, meta_hash, interactive, logout_fn)
if interactive then
UIManager:show(InfoMessage:new{
text = _("Pulling book config..."),
text = _("Pulling reading progress..."),
timeout = 1,
})
end
@@ -242,13 +247,19 @@ function SyncConfig:pull(ui, settings, client, book_hash, meta_hash, interactive
end
if interactive then
UIManager:show(InfoMessage:new{
text = _("Failed to pull book config"),
text = _("Failed to pull reading progress"),
timeout = 2,
})
end
return
end
if ui.doc_settings then
local doc_readest_sync = ui.doc_settings:readSetting("readest_sync") or {}
doc_readest_sync.last_synced_at_config = os.time()
ui.doc_settings:saveSetting("readest_sync", doc_readest_sync)
end
local data = response.configs
if data and #data > 0 then
local config = data[1]
@@ -256,7 +267,7 @@ function SyncConfig:pull(ui, settings, client, book_hash, meta_hash, interactive
self:applyBookConfig(ui, config)
if interactive then
UIManager:show(InfoMessage:new{
text = _("Book config synchronized"),
text = _("Reading progress synchronized"),
timeout = 2,
})
end
@@ -266,7 +277,7 @@ function SyncConfig:pull(ui, settings, client, book_hash, meta_hash, interactive
if interactive then
UIManager:show(InfoMessage:new{
text = _("No saved config found for this book"),
text = _("No saved reading progress found for this book"),
timeout = 2,
})
end