Skip to content

Latest commit

 

History

History
153 lines (122 loc) · 7.55 KB

File metadata and controls

153 lines (122 loc) · 7.55 KB

Localization

Overview

This document describes the current translation status for Fulguris Web Browser.

L10N Tools: The localization tools are maintained in a separate repository as a Git submodule at subs/l10n.

📖 For complete tool documentation, translation workflows, prerequisites, and detailed instructions, see subs/l10n/docs/android/L10N.md

Quick Start

All L10N commands use tools from the subs/l10n/android/ directory:

# Check translation status
python subs\l10n\android\strings.py --check th-rTH

# Get a string in one language
python subs\l10n\android\strings.py --get th-rTH app_name

# Get a string across ALL languages (with language names)
python subs\l10n\android\strings.py --get all app_name
# or
python subs\l10n\android\strings.py --get-all app_name

# Translate ONE string across MULTIPLE languages
python subs\l10n\android\strings.py --set app_name de-rDE 'Fulguris' fr-rFR 'Fulguris' es-rES 'Fulguris'

# Translate MULTIPLE strings in ONE language (efficient bulk translation)
python subs\l10n\android\strings.py --set-batch th-rTH string1 'คำแปล1' string2 'คำแปล2' string3 'คำแปล3'

# Compile changelogs
python subs\l10n\android\changelogs.py 254

# For detailed help
python subs\l10n\android\strings.py --help
python subs\l10n\android\changelogs.py --help

Status

Languages

Flag Language Resource Code Google Play Code Translated Issues Completion Status Notes
🇺🇸 English (Engineering) source en-US 599 - 100% Source strings
🇺🇸 English (US) en-rUS en-US 599 0 100% Complete
🇬🇧 English (UK) en-rGB en-GB 599 0 100% Complete
🇿🇦 Afrikaans af-rZA ❌ Not supported 599 0 100% Complete
🇸🇦 Arabic ar-rSA ar 599 0 100% Complete
🇧🇦 Bosnian bs-rBA ❌ Not supported 599 0 100% Complete
🇪🇸 Catalan ca-rES ❌ Not supported 599 0 100% Complete
🇨🇳 Chinese (CN) zh-rCN zh-CN 599 0 100% Complete
🇹🇼 Chinese (TW) zh-rTW zh-TW 599 0 100% Complete
🇭🇷 Croatian hr-rHR hr 599 0 100% Complete
🇨🇿 Czech cs-rCZ cs-CZ 599 0 100% Complete
🇩🇰 Danish da-rDK da-DK 599 0 100% Complete
🇳🇱 Dutch nl-rNL nl-NL 599 0 100% Complete
🇫🇮 Finnish fi-rFI fi-FI 599 0 100% Complete
🇫🇷 French fr-rFR fr-FR 599 0 100% Complete
🇩🇪 German de-rDE de-DE 599 0 100% Complete
🇬🇷 Greek el-rGR el-GR 599 0 100% Complete
🇮🇱 Hebrew iw-rIL ❌ Not supported 599 0 100% Complete
🇮🇳 Hindi hi-rIN hi-IN 599 0 100% Complete
🇭🇺 Hungarian hu-rHU hu-HU 599 0 100% Complete
🇮🇩 Indonesian in-rID id 599 0 100% Complete
🇮🇹 Italian it-rIT it-IT 599 0 100% Complete
🇯🇵 Japanese ja-rJP ja-JP 599 0 100% Complete
🇰🇷 Korean ko-rKR ko-KR 599 0 100% Complete
🇱🇹 Lithuanian lt-rLT lt 599 0 100% Complete
🇲🇪 Montenegro me-rME ❌ Not supported 599 0 100% Complete
🇳🇴 Norwegian no-rNO no-NO 599 0 100% Complete
🇵🇱 Polish pl-rPL pl-PL 599 0 100% Complete
🇧🇷 Portuguese (BR) pt-rBR pt-BR 599 0 100% Complete
🇵🇹 Portuguese (PT) pt-rPT pt-PT 599 0 100% Complete
🇷🇴 Romanian ro-rRO ro 599 0 100% Complete
🇷🇺 Russian ru-rRU ru-RU 599 0 100% Complete
🇮🇳 Santali sat-rIN ❌ Not supported 599 0 100% Complete
🇷🇸 Serbian (Cyrillic) sr-rCS sr 599 0 100% Complete
🇷🇸 Serbian (Latin) sr-rSP sr 599 0 100% Complete
🇪🇸 Spanish es-rES es-ES 599 0 100% Complete
🇸🇪 Swedish sv-rSE sv-SE 599 0 100% Complete
🇹🇭 Thai th-rTH th 599 0 100% Complete
🇹🇷 Turkish tr-rTR tr-TR 599 0 100% Complete
🇺🇦 Ukrainian uk-rUA uk 599 0 100% Complete
🇻🇳 Vietnamese vi-rVN vi 599 0 100% Complete

Last Updated: December 5, 2025

Legend

  • Complete (95-100%) - Production ready
  • 🟡 High Quality (85-94%) - Minor work needed
  • 🟠 Needs Work (15-84%) - Significant translation required
  • 🔴 Minimal (0-14%) - Almost complete retranslation needed

Total Languages: 40 Languages at 100%: 40 (100%) Total Strings: 599 (source) + 3 plurals

Language Code Notes

  • Resource Code: Android resource directory format (e.g., ar-rSA, zh-rCN) used in app/src/main/res/values-*/
  • Google Play Code: Language code used by Google Play Console for store listings (see Google Play supported languages)
  • Google Play uses mixed formats:
    • 2-letter ISO codes: ar, hr, id, lt, ro, sr, th, uk, vi
    • Full locale codes: cs-CZ, da-DK, de-DE, el-GR, en-US, es-ES, fi-FI, fr-FR, hu-HU, it-IT, ja-JP, ko-KR, nl-NL, no-NO, pl-PL, pt-BR, pt-PT, ru-RU, sv-SE, tr-TR, zh-CN, zh-TW
  • Languages marked as "❌ Not supported" are available in the app but cannot have separate Play Store listings
  • Serbian has two writing systems (Cyrillic/Latin) but only one Google Play listing (sr)

Google Play Metadata

Fulguris maintains 33 Google Play language listings with store metadata:

  • Languages: en-US, en-GB, ar, cs-CZ, da-DK, de-DE, el-GR, es-ES, fi-FI, fr-FR, hi-IN, hr, hu-HU, id, it-IT, ja-JP, ko-KR, lt, nl-NL, no-NO, pl-PL, pt-BR, pt-PT, ro, ru-RU, sr, sv-SE, th, tr-TR, uk, vi, zh-CN, zh-TW
  • Directory: fastlane/metadata/android/{language}/
  • Files: title.txt, short_description.txt, full_description.txt, changelogs/{version}.txt

Common Translation Tasks

Check Translation Status

python subs\l10n\android\strings.py --check <lang-code>

Add/Update Translations

# ONE string across MULTIPLE languages (use when translating same string)
python subs\l10n\android\strings.py --set app_name de-rDE 'Fulguris' fr-rFR 'Fulguris' es-rES 'Fulguris'

# MULTIPLE strings in ONE language (use for bulk translation of single language)
python subs\l10n\android\strings.py --set-batch th-rTH string1 'คำแปล1' string2 'คำแปล2' string3 'คำแปล3'

Compile Changelogs

python subs\l10n\android\changelogs.py 254

Documentation

For complete documentation including:

  • Prerequisites (UTF-8 terminal setup)
  • Translation workflows
  • Android XML escaping rules
  • PowerShell syntax and quoting
  • Placeholder validation
  • Plural forms handling
  • Quality checks
  • Best practices
  • Technical details
  • Troubleshooting

See subs/l10n/docs/android/L10N.md