feat(color): add Slovakian 🇸🇰 translation - #6830
Conversation
|
Thanks for this... it needs a little more done to integrate it into EdgeTX proper, but you've done the hard work for us (the translation) :) I'll try and do the finishing bits next week. |
|
Thank you so much for this
Brano
Dňa pi, 5. dec 2025, 1:34 Peter Feerick ***@***.***>
napísal(a):
… *pfeerick* left a comment (EdgeTX/edgetx#6830)
<#6830 (comment)>
Thanks for this... it needs a little more done to integrate it into EdgeTX
proper, but you've done the hard work for us (the translation) :) I'll try
and do the finishing bits next week.
—
Reply to this email directly, view it on GitHub
<#6830 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AQADYRK6O4ZG6QZMTDKQQOT4ADHKRAVCNFSM6AAAAACNIUD6LSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMMJUHA2TMOBUGM>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
d5e02d8 to
ddd0d5c
Compare
pfeerick
left a comment
There was a problem hiding this comment.
This looks mostly ok, and both firmware and simulator build now. For now, I'm focusing on colourlcd support, but work is needed on B&W still (for the accent symbols). Can you review/update the language strings I added the recent commits.
|
It looks like the translations use unicode characters; but the PR does not contain any B&W font files for the special characters. This will likely not work on B&W radios. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughAdds Slovak localization across UI and bootloader strings, simulator language bundles, firmware language registration, build wiring, locale generation, and function sorting. Also corrects a Czech bootloader instruction wording. ChangesSlovak translation support
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant SlovakDefinitions
participant SimulatorBundle
participant TranslationRegistry
participant SorterTooling
SlovakDefinitions->>SimulatorBundle: provide Slovak TR_ definitions
SimulatorBundle->>TranslationRegistry: build skLangStrings
TranslationRegistry->>TranslationRegistry: register Slovak language tables
SorterTooling->>SorterTooling: compile Slovak locale and generate function ordering
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 6
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@radio/src/translations/bl_translations.h`:
- Line 425: Correct the TR_BL_NO_VERSION translation value from "Zadna verzia"
to the ASCII Slovak form "Ziadna verzia", preserving the existing macro name and
formatting.
In `@radio/src/translations/i18n/sk.h`:
- Line 77: Translate the TR_MAIN_RADIO_SETTINGS string into Slovak while
preserving the existing macro name and formatting.
- Around line 1434-1439: Translate the newly added shortcut strings in the
Slovak translation definitions, updating TR_KEY_SHORTCUTS, TR_CURRENT_SCREEN,
TR_SHORT_PRESS, TR_LONG_PRESS, TR_OPEN_QUICK_MENU, and TR_QUICK_MENU_FAVORITES
from English to Slovak while preserving their macro names and formatting.
- Line 645: Correct the color LCD translation in TR_PRESSANYKEY by changing
“Stač klávesu” to “Stlač klávesu”, while leaving the other translation
unchanged.
- Around line 1317-1327: Correct the Slovak language names in the TR_VOICE_*
definitions, especially the truncated Portuguese translation, and review the
adjacent entries for any other omitted letters. Use the standard Slovak
spellings while preserving each macro’s existing language mapping and
formatting.
- Line 1070: Update the TR_AFHDS3_POWER_SOURCE translation definition to remove
the redundant nested TR macro and provide the properly translated Slovak string
directly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: ba059eae-ca22-4e5e-b059-e4f0c3e5db34
📒 Files selected for processing (9)
radio/src/CMakeLists.txtradio/src/cfn_sort.cppradio/src/translations/bl_translations.hradio/src/translations/i18n/sk.hradio/src/translations/sim/lang_sk.cppradio/src/translations/translations.cppradio/src/translations/translations.htools/cfn_sorter.cpptools/cfn_sorter.sh
| #define TR_BL_DFU_MODE "DFU rezim" | ||
| #define TR_BL_PLUG_USB "Pripojit USB kabel" | ||
| #define TR_BL_COPY_UF2 "Kopirovat firmware.uf2 na EDGETX_UF2 uloziste" | ||
| #define TR_BL_NO_VERSION "Zadna verzia" |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Correct the translation for "No version".
Since "Zadna" means "Rear" in Slovak, "Ziadna" (without diacritics) is the correct ASCII representation of "Žiadna" (No/None).
♻️ Proposed fix
-#define TR_BL_NO_VERSION "Zadna verzia"
+#define TR_BL_NO_VERSION "Ziadna verzia"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| #define TR_BL_NO_VERSION "Zadna verzia" | |
| `#define` TR_BL_NO_VERSION "Ziadna verzia" |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@radio/src/translations/bl_translations.h` at line 425, Correct the
TR_BL_NO_VERSION translation value from "Zadna verzia" to the ASCII Slovak form
"Ziadna verzia", preserving the existing macro name and formatting.
| #define TR_QM_STATS "Štatistiky" | ||
| #define TR_QM_DEBUG "Debug" | ||
| #define TR_MAIN_MODEL_SETTINGS "Hlavné nastavenia" | ||
| #define TR_MAIN_RADIO_SETTINGS "Radio Settings" |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Translate the main radio settings string.
This string remains in English.
♻️ Proposed fix
-#define TR_MAIN_RADIO_SETTINGS "Radio Settings"
+#define TR_MAIN_RADIO_SETTINGS "Nastavenia rádia"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| #define TR_MAIN_RADIO_SETTINGS "Radio Settings" | |
| `#define` TR_MAIN_RADIO_SETTINGS "Nastavenia rádia" |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@radio/src/translations/i18n/sk.h` at line 77, Translate the
TR_MAIN_RADIO_SETTINGS string into Slovak while preserving the existing macro
name and formatting.
| #define TR_PRESS_ANY_KEY_TO_SKIP TR("\003Klávesa >>> preskočiť", "Klávesa >>> preskočiť") | ||
| #define TR_THROTTLE_NOT_IDLE TR("\003Páka plynu je pohnutá", "Páka plynu nie je na nule") | ||
| #define TR_ALARMSDISABLED "Alarmy sú zakázané" | ||
| #define TR_PRESSANYKEY TR("\006Stlač klávesu", "Stač klávesu") |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Fix the typo in the color LCD translation.
The word "Stač" is missing an 'l' and should be "Stlač".
♻️ Proposed fix
-#define TR_PRESSANYKEY TR("\006Stlač klávesu", "Stač klávesu")
+#define TR_PRESSANYKEY TR("\006Stlač klávesu", "Stlač klávesu")📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| #define TR_PRESSANYKEY TR("\006Stlač klávesu", "Stač klávesu") | |
| `#define` TR_PRESSANYKEY TR("\006Stlač klávesu", "Stlač klávesu") |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@radio/src/translations/i18n/sk.h` at line 645, Correct the color LCD
translation in TR_PRESSANYKEY by changing “Stač klávesu” to “Stlač klávesu”,
while leaving the other translation unchanged.
| #define TR_AFHDS3_ONE_TO_ONE_TELEMETRY TR("Unicast/Tel.", "Unicast/Telemetria") | ||
| #define TR_AFHDS3_ONE_TO_MANY "Multicast" | ||
| #define TR_AFHDS3_ACTUAL_POWER TR("Act. pow", "Aktuálny výkon") | ||
| #define TR_AFHDS3_POWER_SOURCE TR("Power src.", TR("Power src.", "Power source")) |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Simplify the nested macro and translate the string.
The nested TR macro is redundant. Additionally, the string remains untranslated.
♻️ Proposed fix
-#define TR_AFHDS3_POWER_SOURCE TR("Power src.", TR("Power src.", "Power source"))
+#define TR_AFHDS3_POWER_SOURCE TR("Zdroj nap.", "Zdroj napájania")📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| #define TR_AFHDS3_POWER_SOURCE TR("Power src.", TR("Power src.", "Power source")) | |
| `#define` TR_AFHDS3_POWER_SOURCE TR("Zdroj nap.", "Zdroj napájania") |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@radio/src/translations/i18n/sk.h` at line 1070, Update the
TR_AFHDS3_POWER_SOURCE translation definition to remove the redundant nested TR
macro and provide the properly translated Slovak string directly.
| #define TR_VOICE_HUNGARIAN "Maďarčina" | ||
| #define TR_VOICE_ITALIANO "Taliančina" | ||
| #define TR_VOICE_POLISH "Poľština" | ||
| #define TR_VOICE_PORTUGUES "Portugačina" | ||
| #define TR_VOICE_RUSSIAN "Ruština" | ||
| #define TR_VOICE_SLOVAK "Slovenčina" | ||
| #define TR_VOICE_SWEDISH "Švédčina" | ||
| #define TR_VOICE_TAIWANESE "Tchajwančina" | ||
| #define TR_VOICE_JAPANESE "Japončina" | ||
| #define TR_VOICE_HEBREW "Hebrečina" | ||
| #define TR_VOICE_UKRAINIAN "Ukrainčina" |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Fix typographical errors in standard language names.
Several standard language names are missing letters in Slovak.
📝 Proposed fixes
-#define TR_VOICE_FRANCAIS "Francúština"
+#define TR_VOICE_FRANCAIS "Francúzština"
`#define` TR_VOICE_HUNGARIAN "Maďarčina"
`#define` TR_VOICE_ITALIANO "Taliančina"
`#define` TR_VOICE_POLISH "Poľština"
-#define TR_VOICE_PORTUGUES "Portugačina"
+#define TR_VOICE_PORTUGUES "Portugalčina"
`#define` TR_VOICE_RUSSIAN "Ruština"
`#define` TR_VOICE_SLOVAK "Slovenčina"
`#define` TR_VOICE_SWEDISH "Švédčina"
`#define` TR_VOICE_TAIWANESE "Tchajwančina"
`#define` TR_VOICE_JAPANESE "Japončina"
-#define TR_VOICE_HEBREW "Hebrečina"
-#define TR_VOICE_UKRAINIAN "Ukrainčina"
+#define TR_VOICE_HEBREW "Hebrejčina"
+#define TR_VOICE_UKRAINIAN "Ukrajinčina"🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@radio/src/translations/i18n/sk.h` around lines 1317 - 1327, Correct the
Slovak language names in the TR_VOICE_* definitions, especially the truncated
Portuguese translation, and review the adjacent entries for any other omitted
letters. Use the standard Slovak spellings while preserving each macro’s
existing language mapping and formatting.
| #define TR_KEY_SHORTCUTS "Key Shortcuts" | ||
| #define TR_CURRENT_SCREEN "Current Screen" | ||
| #define TR_SHORT_PRESS "Short Press" | ||
| #define TR_LONG_PRESS "Long Press" | ||
| #define TR_OPEN_QUICK_MENU "Open Quick Menu" | ||
| #define TR_QUICK_MENU_FAVORITES "Quick Menu Favorites" No newline at end of file |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Translate the key shortcut strings.
These recently added strings remain in English.
♻️ Proposed fixes
-#define TR_KEY_SHORTCUTS "Key Shortcuts"
-#define TR_CURRENT_SCREEN "Current Screen"
-#define TR_SHORT_PRESS "Short Press"
-#define TR_LONG_PRESS "Long Press"
-#define TR_OPEN_QUICK_MENU "Open Quick Menu"
-#define TR_QUICK_MENU_FAVORITES "Quick Menu Favorites"
+#define TR_KEY_SHORTCUTS "Klávesové skratky"
+#define TR_CURRENT_SCREEN "Aktuálna obrazovka"
+#define TR_SHORT_PRESS "Krátke stlačenie"
+#define TR_LONG_PRESS "Dlhé stlačenie"
+#define TR_OPEN_QUICK_MENU "Otvoriť rýchle menu"
+#define TR_QUICK_MENU_FAVORITES "Obľúbené v rýchlom menu"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| #define TR_KEY_SHORTCUTS "Key Shortcuts" | |
| #define TR_CURRENT_SCREEN "Current Screen" | |
| #define TR_SHORT_PRESS "Short Press" | |
| #define TR_LONG_PRESS "Long Press" | |
| #define TR_OPEN_QUICK_MENU "Open Quick Menu" | |
| #define TR_QUICK_MENU_FAVORITES "Quick Menu Favorites" | |
| `#define` TR_KEY_SHORTCUTS "Klávesové skratky" | |
| `#define` TR_CURRENT_SCREEN "Aktuálna obrazovka" | |
| `#define` TR_SHORT_PRESS "Krátke stlačenie" | |
| `#define` TR_LONG_PRESS "Dlhé stlačenie" | |
| `#define` TR_OPEN_QUICK_MENU "Otvoriť rýchle menu" | |
| `#define` TR_QUICK_MENU_FAVORITES "Obľúbené v rýchlom menu" |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@radio/src/translations/i18n/sk.h` around lines 1434 - 1439, Translate the
newly added shortcut strings in the Slovak translation definitions, updating
TR_KEY_SHORTCUTS, TR_CURRENT_SCREEN, TR_SHORT_PRESS, TR_LONG_PRESS,
TR_OPEN_QUICK_MENU, and TR_QUICK_MENU_FAVORITES from English to Slovak while
preserving their macro names and formatting.
Adds full Slovak translations for firmware, bootloader, and simulator, plus custom function sorting tooling updates.
The committed Slovak custom-function sort order was stale relative to the current sk.h translation strings and not alphabetized like the other language blocks. Re-ran cfn_sorter.sh to bring it back in sync. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Every language relies on radio/src/tests/test_<lang>.cpp compiling against string_list.h to catch missing TR_* macros, but sk.h had no corresponding test file so Slovak was silently skipped by this check. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
isTextLangAvail() excluded LANG_SK for colorLCD, even though the Slovak string table (skLangStrings) already exists, so it never appeared in the Text language picker. Keep the exclusion for non-colorLCD (B&W) radios since those lack Unicode font support for Slovak diacritics. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
7c3078f to
e40dea7
Compare
Fixes #
Summary of changes:
Hello,
I make SLOVAK (SK) translation for EDGETX please check and input to the system..Many thanks for support
Summary by CodeRabbit
sk) language support across the radio UI, simulator, and generated language packs.sk_SK.UTF-8and Slovak-specific function ordering.