From 2b72655d943c7f46c1e26e0ca34637fb2d774d6a Mon Sep 17 00:00:00 2001 From: Dave Craig Date: Sun, 23 Aug 2026 09:40:05 +0100 Subject: [PATCH] Wire up Arabic, Korean, Marathi, Tamil, and Thai Adds the four remaining Phase 2 wiring points (build.gradle.kts localeFilters, Language.kt supportedLanguages, locales_config.xml, DocumentationScreens.kt localeMap/parentLabels, docs/_config.yml languages) plus a translated docs/users/user..md for each, now that their strings.xml translations have merged from Weblate. Co-Authored-By: Claude Sonnet 5 --- app/build.gradle.kts | 5 +++++ .../soundscape/DocumentationScreens.kt | 10 ++++++++++ app/src/main/res/xml/locales_config.xml | 5 +++++ docs/_config.yml | 6 +++--- docs/users/user.ar.md | 13 +++++++++++++ docs/users/user.ko.md | 13 +++++++++++++ docs/users/user.mr.md | 13 +++++++++++++ docs/users/user.ta.md | 13 +++++++++++++ docs/users/user.th.md | 13 +++++++++++++ .../screens/onboarding/language/Language.kt | 5 +++++ 10 files changed, 93 insertions(+), 3 deletions(-) create mode 100644 docs/users/user.ar.md create mode 100644 docs/users/user.ko.md create mode 100644 docs/users/user.mr.md create mode 100644 docs/users/user.ta.md create mode 100644 docs/users/user.th.md diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 14193da69..a27a9e363 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -163,6 +163,7 @@ android { androidResources { // Maintaining this list means that we can exclude translations that aren't complete yet localeFilters += listOf( + "ar", "arz", "bn", "zh-rCN", @@ -185,6 +186,8 @@ android { "is", "it", "ja", + "ko", + "mr", "nb", "nl", "pl", @@ -196,7 +199,9 @@ android { "sr", "sv", "sw", + "ta", "te", + "th", "tr", "uk", "ur", diff --git a/app/src/androidTest/java/org/scottishtecharmy/soundscape/DocumentationScreens.kt b/app/src/androidTest/java/org/scottishtecharmy/soundscape/DocumentationScreens.kt index f409c4644..62b85a643 100644 --- a/app/src/androidTest/java/org/scottishtecharmy/soundscape/DocumentationScreens.kt +++ b/app/src/androidTest/java/org/scottishtecharmy/soundscape/DocumentationScreens.kt @@ -228,6 +228,7 @@ class DocumentationScreens { // Keep this in sync with the `languages` list in docs/_config.yml. private val localeMap: Map = mapOf( "en" to "en", // default -> no suffix, no `lang:` front matter + "ar" to "ar", "arz" to "arz", "bn" to "bn", "zh-rCN" to "zh-CN", @@ -249,6 +250,8 @@ class DocumentationScreens { "is" to "is", "it" to "it", "ja" to "ja", + "ko" to "ko", + "mr" to "mr", "nb" to "nb", "nl" to "nl", "pl" to "pl", @@ -260,7 +263,9 @@ class DocumentationScreens { "sr" to "sr", "sv" to "sv", "sw" to "sw", + "ta" to "ta", "te" to "te", + "th" to "th", "tr" to "tr", "uk" to "uk", "ur" to "ur", @@ -274,6 +279,7 @@ class DocumentationScreens { private val parentLabels: Map = mapOf( "en" to "Using Soundscape", "en-GB" to "Using Soundscape", + "ar" to "استخدام Soundscape", "arz" to "استخدام ساوندسكيب", "bn" to "সাউন্ডস্কেপ ব্যবহার", "zh-CN" to "使用 Soundscape", @@ -294,6 +300,8 @@ class DocumentationScreens { "is" to "Að nota Soundscape", "it" to "Usare Soundscape", "ja" to "Soundscape を使う", + "ko" to "Soundscape 사용하기", + "mr" to "Soundscape वापरणे", "nb" to "Bruke Soundscape", "nl" to "Soundscape gebruiken", "pl" to "Korzystanie z Soundscape", @@ -305,7 +313,9 @@ class DocumentationScreens { "sr" to "Коришћење Soundscape", "sv" to "Använda Soundscape", "sw" to "Kutumia Soundscape", + "ta" to "Soundscape பயன்படுத்துதல்", "te" to "Soundscape వాడకం", + "th" to "การใช้ Soundscape", "tr" to "Soundscape Kullanımı", "uk" to "Використання Soundscape", "ur" to "Soundscape کا استعمال", diff --git a/app/src/main/res/xml/locales_config.xml b/app/src/main/res/xml/locales_config.xml index bd1a3381c..d6a54ade0 100644 --- a/app/src/main/res/xml/locales_config.xml +++ b/app/src/main/res/xml/locales_config.xml @@ -1,5 +1,6 @@ + @@ -20,6 +21,8 @@ + + @@ -31,7 +34,9 @@ + + diff --git a/docs/_config.yml b/docs/_config.yml index 3b953b9bd..d2332bad4 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -20,9 +20,9 @@ plugins: # Web/BCP-47 language codes. The help-page generator maps Android resource # qualifiers (zh-rCN, fr-rCA, pt-rBR, en-rGB) to these. Source of truth for the # supported set: app/build.gradle.kts resourceConfigurations. -languages: ["en", "arz", "bn", "cs", "da", "de", "el", "en-GB", "es", "fa", "fi", "fr", "fr-CA", - "ha", "hi", "hr", "hu", "id", "is", "it", "ja", "nb", "nl", "pl", "pt", "pt-BR", "ro", - "ru", "sk", "sr", "sv", "sw", "te", "tr", "uk", "ur", "vi", "zh-CN"] +languages: ["en", "ar", "arz", "bn", "cs", "da", "de", "el", "en-GB", "es", "fa", "fi", "fr", "fr-CA", + "ha", "hi", "hr", "hu", "id", "is", "it", "ja", "ko", "mr", "nb", "nl", "pl", "pt", "pt-BR", "ro", + "ru", "sk", "sr", "sv", "sw", "ta", "te", "th", "tr", "uk", "ur", "vi", "zh-CN"] default_lang: "en" # Untranslated pages fall back to the default_lang version under every // URL. # NB: do not add bare "*.svg"/"*.png" globs here — polyglot compiles them to diff --git a/docs/users/user.ar.md b/docs/users/user.ar.md new file mode 100644 index 000000000..6ce06490f --- /dev/null +++ b/docs/users/user.ar.md @@ -0,0 +1,13 @@ +--- +title: "استخدام Soundscape" +layout: page +has_toc: true +nav_order: 1 +lang: ar +permalink: /users/user.html +machine-translated: true +--- + +التوثيق هنا مأخوذ من أحدث إصدار من التطبيق. يمكنك الوصول إليه داخل التطبيق بالنقر على زر القائمة (أعلى اليسار) ثم اختيار المساعدة والدروس التعليمية. + +لمن يهتم بمعرفة كيفية عمل التطبيق، يُرجى الاطلاع على [هذه الصفحة]({{ "/users/how-it-works.html" | relative_url }}). diff --git a/docs/users/user.ko.md b/docs/users/user.ko.md new file mode 100644 index 000000000..9cc9a8ab4 --- /dev/null +++ b/docs/users/user.ko.md @@ -0,0 +1,13 @@ +--- +title: "Soundscape 사용하기" +layout: page +has_toc: true +nav_order: 1 +lang: ko +permalink: /users/user.html +machine-translated: true +--- + +여기 문서는 앱의 최신 버전을 기준으로 합니다. 앱에서는 메뉴 버튼(왼쪽 상단)을 클릭한 다음 도움말 및 튜토리얼을 선택하여 이 문서에 접근할 수 있습니다. + +앱이 작동하는 방식에 관심이 있으신 분은 [이 페이지]({{ "/users/how-it-works.html" | relative_url }})를 참고해 주세요. diff --git a/docs/users/user.mr.md b/docs/users/user.mr.md new file mode 100644 index 000000000..53e129e88 --- /dev/null +++ b/docs/users/user.mr.md @@ -0,0 +1,13 @@ +--- +title: "Soundscape वापरणे" +layout: page +has_toc: true +nav_order: 1 +lang: mr +permalink: /users/user.html +machine-translated: true +--- + +येथील दस्तऐवजीकरण अॅपच्या नवीनतम आवृत्तीवरून घेतले आहे. अॅपमध्ये तुम्ही मेनू बटणावर (वरच्या डाव्या बाजूला) क्लिक करून नंतर मदत आणि ट्युटोरियल्स निवडून तेथे पोहोचू शकता. + +अॅप कसे कार्य करते याबद्दल स्वारस्य असणाऱ्यांसाठी, कृपया [या पानावर]({{ "/users/how-it-works.html" | relative_url }}) एक नजर टाका. diff --git a/docs/users/user.ta.md b/docs/users/user.ta.md new file mode 100644 index 000000000..62b03eaeb --- /dev/null +++ b/docs/users/user.ta.md @@ -0,0 +1,13 @@ +--- +title: "Soundscape பயன்படுத்துதல்" +layout: page +has_toc: true +nav_order: 1 +lang: ta +permalink: /users/user.html +machine-translated: true +--- + +இங்குள்ள ஆவணமானது பயன்பாட்டின் சமீபத்திய பதிப்பிலிருந்து எடுக்கப்பட்டது. பயன்பாட்டில் மேலிடது மூலையிலுள்ள மெனு பொத்தானை தட்டி, பின்னர் உதவி மற்றும் பயிற்சிகள் என்பதைத் தேர்ந்தெடுப்பதன் மூலம் இதை அணுகலாம். + +பயன்பாடு எவ்வாறு செயல்படுகிறது என்பதில் ஆர்வமுள்ளவர்கள், தயவுசெய்து [இந்தப் பக்கத்தை]({{ "/users/how-it-works.html" | relative_url }}) பார்க்கவும். diff --git a/docs/users/user.th.md b/docs/users/user.th.md new file mode 100644 index 000000000..f14bafa9a --- /dev/null +++ b/docs/users/user.th.md @@ -0,0 +1,13 @@ +--- +title: "การใช้ Soundscape" +layout: page +has_toc: true +nav_order: 1 +lang: th +permalink: /users/user.html +machine-translated: true +--- + +เอกสารนี้อ้างอิงจากแอปเวอร์ชันล่าสุด คุณสามารถเข้าถึงได้ในแอปโดยแตะปุ่มเมนู (มุมซ้ายบน) แล้วเลือกวิธีใช้และบทแนะนำ + +สำหรับผู้ที่สนใจว่าแอปทำงานอย่างไร โปรดดู[หน้านี้]({{ "/users/how-it-works.html" | relative_url }}) diff --git a/shared/src/commonMain/kotlin/org/scottishtecharmy/soundscape/screens/onboarding/language/Language.kt b/shared/src/commonMain/kotlin/org/scottishtecharmy/soundscape/screens/onboarding/language/Language.kt index 6d25a784a..f40529f9b 100644 --- a/shared/src/commonMain/kotlin/org/scottishtecharmy/soundscape/screens/onboarding/language/Language.kt +++ b/shared/src/commonMain/kotlin/org/scottishtecharmy/soundscape/screens/onboarding/language/Language.kt @@ -11,6 +11,7 @@ data class Language( * language picker and the language mismatch detection. */ val supportedLanguages: List = listOf( + Language("العربية", "ar", "SA"), Language("العربية المصرية", "arz", "EG"), Language("বাংলা", "bn", "BD"), Language("中文 (简体)", "zh", "CN"), @@ -33,6 +34,8 @@ val supportedLanguages: List = listOf( Language("Íslenska", "is", "IS"), Language("Italiano", "it", "IT"), Language("日本語", "ja", "JP"), + Language("한국어", "ko", "KR"), + Language("मराठी", "mr", "IN"), Language("Norsk", "nb", "NO"), Language("Nederlands", "nl", "NL"), Language("Polski", "pl", "PL"), @@ -44,7 +47,9 @@ val supportedLanguages: List = listOf( Language("Српски", "sr", "RS"), Language("Svenska", "sv", "SE"), Language("Kiswahili", "sw", "TZ"), + Language("தமிழ்", "ta", "IN"), Language("తెలుగు", "te", "IN"), + Language("ไทย", "th", "TH"), Language("Türkçe", "tr", "TR"), Language("Українська", "uk", "UA"), Language("اردو", "ur", "PK"),