From a74c161d44b9d9e16b68c01baa15943dcfae3140 Mon Sep 17 00:00:00 2001 From: 3djc Date: Fri, 27 Nov 2020 11:18:10 +0100 Subject: [PATCH 01/13] Fix chars --- radio/src/translations/cz.h.txt | 36 ++++++++++++------------- radio/src/translations/de.h.txt | 36 ++++++++++++------------- radio/src/translations/en.h.txt | 36 ++++++++++++------------- radio/src/translations/es.h.txt | 36 ++++++++++++------------- radio/src/translations/fi.h.txt | 36 ++++++++++++------------- radio/src/translations/fr.h.txt | 36 ++++++++++++------------- radio/src/translations/it.h.txt | 36 ++++++++++++------------- radio/src/translations/nl.h.txt | 36 ++++++++++++------------- radio/src/translations/pl.h.txt | 36 ++++++++++++------------- radio/src/translations/pt.h.txt | 36 ++++++++++++------------- radio/src/translations/se.h.txt | 36 ++++++++++++------------- radio/src/translations/untranslated.h | 39 ++++++++++++++------------- 12 files changed, 219 insertions(+), 216 deletions(-) diff --git a/radio/src/translations/cz.h.txt b/radio/src/translations/cz.h.txt index c69fb2a0f..aa21d36e7 100644 --- a/radio/src/translations/cz.h.txt +++ b/radio/src/translations/cz.h.txt @@ -308,18 +308,18 @@ #define LEN_INPUTNAMES "\004" #define TR_INPUTNAMES "Sme\0""Vys\0""Pln\0""Kri\0" -#define TR_STICKS_VSRCRAW "\307Smě""\307Výš""\307Pln""\307Kři" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Smě" STR_CHAR_STICK "Výš" STR_CHAR_STICK "Pln" STR_CHAR_STICK "Kři" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Smě""\313Výš""\313Pln""\313Kři""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Smě" STR_CHAR_TRIM "Výš" STR_CHAR_TRIM "Pln" STR_CHAR_TRIM "Kři" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW "\313Smě""\313Výš""\313Pln""\313Kři" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Smě" STR_CHAR_TRIM "Výš" STR_CHAR_TRIM "Pln" STR_CHAR_TRIM "Kři" #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Sl""\313Sp""\313Vd""\313Vn""\313Pd""\313Pn""\313Kl""\313Kp""\3135d""\3135n""\3136d""\3136n" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Sl" STR_CHAR_TRIM "Sp" STR_CHAR_TRIM "Vd" STR_CHAR_TRIM "Vn" STR_CHAR_TRIM "Pd" STR_CHAR_TRIM "Pn" STR_CHAR_TRIM "Kl" STR_CHAR_TRIM "Kp" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5n" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6n" #else - #define TR_TRIMS_SWITCHES TR("tSl""tSp""tVd""tVn""tPd""tPn""tKl""tKp", "\313Sl""\313Sp""\313Vd""\313Vn""\313Pd""\313Pn""\313Kl""\313Kp") + #define TR_TRIMS_SWITCHES TR("tSl""tSp""tVd""tVn""tPd""tPn""tKl""tKp", STR_CHAR_TRIM "Sl" STR_CHAR_TRIM "Sp" STR_CHAR_TRIM "Vd" STR_CHAR_TRIM "Vn" STR_CHAR_TRIM "Pd" STR_CHAR_TRIM "Pn" STR_CHAR_TRIM "Kl" STR_CHAR_TRIM "Kp") #endif #if defined(PCBSKY9X) @@ -1217,19 +1217,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Prohlížeč textu" -#define TR_MENU_INPUTS "\314Vstupy" -#define TR_MENU_LUA "\322Lua skripty" -#define TR_MENU_STICKS "\307Páky" -#define TR_MENU_POTS "\310Potenciometry" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cyklika" -#define TR_MENU_TRIMS "\313Trimy" -#define TR_MENU_SWITCHES "\312Spínače" -#define TR_MENU_LOGICAL_SWITCHES "\312Logické spínače" -#define TR_MENU_TRAINER "\317Trenér" -#define TR_MENU_CHANNELS "\320Kanály" -#define TR_MENU_GVARS "\311Glob.proměnné" -#define TR_MENU_TELEMETRY "\321Telemetrie" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Vstupy" +#define TR_MENU_LUA STR_CHAR_LUA "Lua skripty" +#define TR_MENU_STICKS STR_CHAR_STICK "Páky" +#define TR_MENU_POTS STR_CHAR_POTS "Potenciometry" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyklika" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trimy" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Spínače" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Logické spínače" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trenér" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Kanály" +#define TR_MENU_GVARS STR_CHAR_SLIDER "Glob.proměnné" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetrie" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Ostatní" #define TR_MENU_INVERT "Invertovat" diff --git a/radio/src/translations/de.h.txt b/radio/src/translations/de.h.txt index 09507c3ea..951b3ad5e 100644 --- a/radio/src/translations/de.h.txt +++ b/radio/src/translations/de.h.txt @@ -314,18 +314,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Sei""\307Höh""\307Gas""\307Que" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Sei" STR_CHAR_STICK "Höh" STR_CHAR_STICK "Gas" STR_CHAR_STICK "Que" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Sei""\313Höh""\313Gas""\313Que""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Sei" STR_CHAR_TRIM "Höh" STR_CHAR_TRIM "Gas" STR_CHAR_TRIM "Que" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmS""TrmH""TrmG""TrmQ", "\313Sei""\313Höh""\313Gas""\313que") + #define TR_TRIMS_VSRCRAW TR("TrmS""TrmH""TrmG""TrmQ", STR_CHAR_TRIM "Sei" STR_CHAR_TRIM "Höh" STR_CHAR_TRIM "Gas" STR_CHAR_TRIM "que") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1230,19 +1230,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" // ----------------------------- Symbole für Auswahlliste---------- -#define TR_MENU_INPUTS "\314Inputs" -#define TR_MENU_LUA "\322Lua Skripte" -#define TR_MENU_STICKS "\307Knüppel" -#define TR_MENU_POTS "\310Potis" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Heli-TS CYC1-3" -#define TR_MENU_TRIMS "\313Trimmung" -#define TR_MENU_SWITCHES "\312Schalter" -#define TR_MENU_LOGICAL_SWITCHES "\312Log. Schalter" -#define TR_MENU_TRAINER "\317Trainer" -#define TR_MENU_CHANNELS "\320Kanäle" -#define TR_MENU_GVARS "\311Glob. Vars" -#define TR_MENU_TELEMETRY "\321Telemetrie" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" +#define TR_MENU_LUA STR_CHAR_LUA "Lua Skripte" +#define TR_MENU_STICKS STR_CHAR_STICK "Knüppel" +#define TR_MENU_POTS STR_CHAR_POTS "Potis" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Heli-TS CYC1-3" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trimmung" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Schalter" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Log. Schalter" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Kanäle" +#define TR_MENU_GVARS STR_CHAR_SLIDER "Glob. Vars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetrie" #define TR_MENU_DISPLAY "TELM-SEITEN" #define TR_MENU_OTHER "Weitere" #define TR_MENU_INVERT "Invertieren" diff --git a/radio/src/translations/en.h.txt b/radio/src/translations/en.h.txt index 26f69a06e..5b9fe2e4a 100644 --- a/radio/src/translations/en.h.txt +++ b/radio/src/translations/en.h.txt @@ -314,18 +314,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\207Rud""\207Ele""\207Thr""\207Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rud" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Thr" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\213Rud""\213Ele""\213Thr""\213Ail""\213T5\0""\213T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW "\213Rud""\213Ele""\213Thr""\213Ail" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\213Rl""\213Rr""\213Ed""\213Eu""\213Td""\213Tu""\213Al""\213Ar""\2135d""\2135u""\2136d""\2136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\213Rl""\213Rr""\213Ed""\213Eu""\213Td""\213Tu""\213Al""\213Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1228,19 +1228,19 @@ #define TR_BAR1_COLOR "Main bar color" #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS "\214Inputs" -#define TR_MENU_LUA "\222Lua scripts" -#define TR_MENU_STICKS "\207Sticks" -#define TR_MENU_POTS "\210Pots" -#define TR_MENU_MAX "\215MAX" -#define TR_MENU_HELI "\216Cyclic" -#define TR_MENU_TRIMS "\213Trims" -#define TR_MENU_SWITCHES "\212Switches" -#define TR_MENU_LOGICAL_SWITCHES "\212Logical switches" -#define TR_MENU_TRAINER "\217Trainer" -#define TR_MENU_CHANNELS "\220Channels" -#define TR_MENU_GVARS "\211GVars" -#define TR_MENU_TELEMETRY "\221Telemetry" +#define TR_MENU_INPUTS STR_CHAR_INPOUT "Inputs" +#define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Sticks" +#define TR_MENU_POTS STR_CHAR_POT "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyclic" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Switches" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Logical switches" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Channels" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetry" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Other" #define TR_MENU_INVERT "Invert" diff --git a/radio/src/translations/es.h.txt b/radio/src/translations/es.h.txt index c312a285d..08737df42 100644 --- a/radio/src/translations/es.h.txt +++ b/radio/src/translations/es.h.txt @@ -311,18 +311,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Rud""\307Ele""\307Thr""\307Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rud" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Thr" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Rud""\313Ele""\313Thr""\313Ail""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmR" "TrmE" "TrmT" "TrmA", "\313Rud""\313Ele""\313Thr""\313Ail") + #define TR_TRIMS_VSRCRAW TR("TrmR" "TrmE" "TrmT" "TrmA", STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1230,19 +1230,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Visor de texto" -#define TR_MENU_INPUTS "\314Entradas" -#define TR_MENU_LUA "\322Lua scripts" -#define TR_MENU_STICKS "\307Sticks" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cíclico" -#define TR_MENU_TRIMS "\313Trims" -#define TR_MENU_SWITCHES "\312Interruptores" -#define TR_MENU_LOGICAL_SWITCHES TR("\312Interr. lógicos", "\312Interruptores lógicos") -#define TR_MENU_TRAINER "\317Entrenador" -#define TR_MENU_CHANNELS "\320Canales" -#define TR_MENU_GVARS "\311GVars" -#define TR_MENU_TELEMETRY "\321Telemetría" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Entradas" +#define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Sticks" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cíclico" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Interruptores" +#define TR_MENU_LOGICAL_SWITCHES TR( STR_CHAR_SWITCH "Interr. lógicos", STR_CHAR_SWITCH "Interruptores lógicos") +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Entrenador" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Canales" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetría" #define TR_MENU_DISPLAY "MONITOR" #define TR_MENU_OTHER "Otros" #define TR_MENU_INVERT "Invertir" diff --git a/radio/src/translations/fi.h.txt b/radio/src/translations/fi.h.txt index cc5cd85aa..d290cdb08 100644 --- a/radio/src/translations/fi.h.txt +++ b/radio/src/translations/fi.h.txt @@ -332,18 +332,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Rud""\307Ele""\307Thr""\307Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rud" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Thr" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Rud""\313Ele""\313Thr""\313Ail""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmR""TrmE""TrmT""TrmA", "\313Rud""\313Ele""\313Thr""\313Ail") + #define TR_TRIMS_VSRCRAW TR("TrmR""TrmE""TrmT""TrmA", STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1237,19 +1237,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS "\314Inputs" -#define TR_MENU_LUA "\322Lua scripts" -#define TR_MENU_STICKS "\307Sticks" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cyclic" -#define TR_MENU_TRIMS "\313Trims" -#define TR_MENU_SWITCHES "\312Switches" -#define TR_MENU_LOGICAL_SWITCHES "\312Logical Switches" -#define TR_MENU_TRAINER "\317Trainer" -#define TR_MENU_CHANNELS "\320Channels" -#define TR_MENU_GVARS "\311GVars" -#define TR_MENU_TELEMETRY "\321Telemetry" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" +#define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Sticks" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyclic" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Switches" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Logical Switches" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Channels" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetry" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Other" #define TR_MENU_INVERT "Invert" diff --git a/radio/src/translations/fr.h.txt b/radio/src/translations/fr.h.txt index d3d10c169..3a659dffc 100644 --- a/radio/src/translations/fr.h.txt +++ b/radio/src/translations/fr.h.txt @@ -334,18 +334,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Dir""\307Prf""\307Gaz""\307Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Dir" STR_CHAR_STICK "Prf" STR_CHAR_STICK "Gaz" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Dir""\313Prf""\313Gaz""\313Ail""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Dir" STR_CHAR_TRIM "Prf" STR_CHAR_TRIM "Gaz" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW "\313Dir""\313Prf""\313Gaz""\313Ail" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Dir" STR_CHAR_TRIM "Prf" STR_CHAR_TRIM "Gaz" STR_CHAR_TRIM "Ail" #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Dg""\313Dd""\313Pb""\313Ph""\313Gb""\313Gh""\313Ag""\313Ad""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Dg" STR_CHAR_TRIM "Dd" STR_CHAR_TRIM "Pb" STR_CHAR_TRIM "Ph" STR_CHAR_TRIM "Gb" STR_CHAR_TRIM "Gh" STR_CHAR_TRIM "Ag" STR_CHAR_TRIM "Ad" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tDg""tDd""tPb""tPh""tGb""tGh""tAg""tAd", "\313Dg""\313Dd""\313Pb""\313Ph""\313Gb""\313Gh""\313Ag""\313Ad") + #define TR_TRIMS_SWITCHES TR("tDg""tDd""tPb""tPh""tGb""tGh""tAg""tAd", STR_CHAR_TRIM "Dg" STR_CHAR_TRIM "Dd" STR_CHAR_TRIM "Pb" STR_CHAR_TRIM "Ph" STR_CHAR_TRIM "Gb" STR_CHAR_TRIM "Gh" STR_CHAR_TRIM "Ag" STR_CHAR_TRIM "Ad") #endif #if defined(PCBSKY9X) @@ -1254,19 +1254,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Visualisateur de texte" -#define TR_MENU_INPUTS "\314Entrées" -#define TR_MENU_LUA "\322Scripts Lua" -#define TR_MENU_STICKS "\307Manches" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cyclique" -#define TR_MENU_TRIMS "\313Trims" -#define TR_MENU_SWITCHES "\312Inters" -#define TR_MENU_LOGICAL_SWITCHES "\312Inters logiques" -#define TR_MENU_TRAINER "\317Ecolage" -#define TR_MENU_CHANNELS "\320Canaux" -#define TR_MENU_GVARS "\311Vars. glob." -#define TR_MENU_TELEMETRY "\321Télémétrie" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Entrées" +#define TR_MENU_LUA STR_CHAR_LUA "Scripts Lua" +#define TR_MENU_STICKS STR_CHAR_STICK "Manches" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyclique" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Inters" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Inters logiques" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Ecolage" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Canaux" +#define TR_MENU_GVARS STR_CHAR_SLIDER "Vars. glob." +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Télémétrie" #define TR_MENU_DISPLAY "AFFICHAGE" #define TR_MENU_OTHER "Autres" #define TR_MENU_INVERT "Inverser" diff --git a/radio/src/translations/it.h.txt b/radio/src/translations/it.h.txt index e763ed311..f46aae313 100644 --- a/radio/src/translations/it.h.txt +++ b/radio/src/translations/it.h.txt @@ -338,18 +338,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Dir""\307Ele""\307Mot""\307Ale" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Dir" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Mot" STR_CHAR_STICK "Ale" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Dir""\313Ele""\313Mot""\313Ale""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Dir" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Mot" STR_CHAR_TRIM "Ale" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmR""TrmE""TrmT""TrmA", "\313Dir""\313Ele""\313Mot""\313Ale") + #define TR_TRIMS_VSRCRAW TR("TrmR""TrmE""TrmT""TrmA", STR_CHAR_TRIM "Dir" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Mot" STR_CHAR_TRIM "Ale") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1251,19 +1251,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Visualizzatore testi" -#define TR_MENU_INPUTS "\314Ingressi" -#define TR_MENU_LUA "\322Lua scripts" -#define TR_MENU_STICKS "\307Sticks" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Ciclico" -#define TR_MENU_TRIMS "\313Trims" -#define TR_MENU_SWITCHES "\312Interrut." -#define TR_MENU_LOGICAL_SWITCHES "\312Interrut. Logici" -#define TR_MENU_TRAINER "\317Trainer" -#define TR_MENU_CHANNELS "\320Canali" -#define TR_MENU_GVARS "\311GVars" -#define TR_MENU_TELEMETRY "\321Telemetry" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Ingressi" +#define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Sticks" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Ciclico" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Interrut." +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Interrut. Logici" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Canali" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetry" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Altro" #define TR_MENU_INVERT "Inverti" diff --git a/radio/src/translations/nl.h.txt b/radio/src/translations/nl.h.txt index b29a4a94a..cc4706979 100644 --- a/radio/src/translations/nl.h.txt +++ b/radio/src/translations/nl.h.txt @@ -312,18 +312,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Rud""\307Ele""\307Thr""\307Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rud" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Thr" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Rud""\313Ele""\313Thr""\313Ail""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmR""TrmE""TrmT""TrmA", "\313Rud""\313Ele""\313Thr""\313Ail") + #define TR_TRIMS_VSRCRAW TR("TrmR""TrmE""TrmT""TrmA", STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1238,19 +1238,19 @@ #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS "\314Inputs" -#define TR_MENU_LUA "\322Lua Scripts" -#define TR_MENU_STICKS "\307Sticks" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316HeliCyclic" -#define TR_MENU_TRIMS "\313Trims" -#define TR_MENU_SWITCHES "\312Schakelaars" -#define TR_MENU_LOGICAL_SWITCHES "\312Log. Schakelaars" -#define TR_MENU_TRAINER "\317Trainer" -#define TR_MENU_CHANNELS "\320Kanalen" -#define TR_MENU_GVARS "\311GVars" -#define TR_MENU_TELEMETRY "\321Telemetrie" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" +#define TR_MENU_LUA STR_CHAR_LUA "Lua Scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Sticks" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "HeliCyclic" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Schakelaars" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Log. Schakelaars" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Kanalen" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetrie" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Verdere" #define TR_MENU_INVERT "Inverteer" diff --git a/radio/src/translations/pl.h.txt b/radio/src/translations/pl.h.txt index 594b4b901..96ddc1448 100644 --- a/radio/src/translations/pl.h.txt +++ b/radio/src/translations/pl.h.txt @@ -332,18 +332,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307SK\0""\307SW\0""\307Gaz""\307Lot" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "SK\0" STR_CHAR_STICK "SW\0" STR_CHAR_STICK "Gaz" STR_CHAR_STICK "Lot" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313SK\0""\313SW\0""\313Gaz""\313Lot""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "SK\0" STR_CHAR_TRIM "SW\0" STR_CHAR_TRIM "Gaz" STR_CHAR_TRIM "Lot" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrSK""TrSW""TrGA""TrLO", "\313SK ""\313SW ""\313Gaz""\313Lot") + #define TR_TRIMS_VSRCRAW TR("TrSK""TrSW""TrGA""TrLO", STR_CHAR_TRIM "SK " STR_CHAR_TRIM "SW " STR_CHAR_TRIM "Gaz" STR_CHAR_TRIM "Lot") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1247,19 +1247,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS "\314Wejści" -#define TR_MENU_LUA "\322SkryptyLUA" -#define TR_MENU_STICKS "\307Drążki" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cyclic" -#define TR_MENU_TRIMS "\313Trymy" -#define TR_MENU_SWITCHES "\312Przełczn" -#define TR_MENU_LOGICAL_SWITCHES "\312Przełączn.Logicz" -#define TR_MENU_TRAINER "\317Trener " -#define TR_MENU_CHANNELS "\320Kanały " -#define TR_MENU_GVARS "\311ZmGlo" -#define TR_MENU_TELEMETRY "\321Telemetry" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Wejści" +#define TR_MENU_LUA STR_CHAR_LUA "SkryptyLUA" +#define TR_MENU_STICKS STR_CHAR_STICK "Drążki" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyclic" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trymy" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Przełczn" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Przełączn.Logicz" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trener " +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Kanały " +#define TR_MENU_GVARS STR_CHAR_SLIDER "ZmGlo" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetry" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Inny " #define TR_MENU_INVERT "Odwróć" diff --git a/radio/src/translations/pt.h.txt b/radio/src/translations/pt.h.txt index 1041db2fa..47d9f1011 100644 --- a/radio/src/translations/pt.h.txt +++ b/radio/src/translations/pt.h.txt @@ -325,18 +325,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Lem""\307Pfd""\307Mot""\307Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Lem" STR_CHAR_STICK "Pfd" STR_CHAR_STICK "Mot" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Lem""\313Pfd""\313Mot""\313Ail""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Lem" STR_CHAR_TRIM "Pfd" STR_CHAR_TRIM "Mot" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmL""TrmP""TrmM""TrmA", "\313Lem""\313Pfd""\313Mot""\313Ail") + #define TR_TRIMS_VSRCRAW TR("TrmL""TrmP""TrmM""TrmA", STR_CHAR_TRIM "Lem" STR_CHAR_TRIM "Pfd" STR_CHAR_TRIM "Mot" STR_CHAR_TRIM "Ail") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rl""\313Rr""\313Ed""\313Eu""\313Td""\313Tu""\313Al""\313Ar""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\313Rl""\313Rr""\313Ed""\313Eu""\313Eu""\313Td""\313Tu""\313Al""\313Ar") + #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #if defined(PCBSKY9X) @@ -1247,19 +1247,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS "\314Inputs" -#define TR_MENU_LUA "\322Lua scripts" -#define TR_MENU_STICKS "\307Sticks" -#define TR_MENU_POTS "\310Pots" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cyclic" -#define TR_MENU_TRIMS "\313Trims" -#define TR_MENU_SWITCHES "\312Switches" -#define TR_MENU_LOGICAL_SWITCHES "\312Logical Switches" -#define TR_MENU_TRAINER "\317Trainer" -#define TR_MENU_CHANNELS "\320Channels" -#define TR_MENU_GVARS "\311GVars" -#define TR_MENU_TELEMETRY "\321Telemetry" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" +#define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Sticks" +#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyclic" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Switches" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Logical Switches" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Channels" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetry" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Other" #define TR_MENU_INVERT "Invert" diff --git a/radio/src/translations/se.h.txt b/radio/src/translations/se.h.txt index 12ffb51fc..f58d4bc63 100644 --- a/radio/src/translations/se.h.txt +++ b/radio/src/translations/se.h.txt @@ -330,18 +330,18 @@ #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\307Rod""\307Hjd""\307Gas""\307Ske" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rod" STR_CHAR_STICK "Hjd" STR_CHAR_STICK "Gas" STR_CHAR_STICK "Ske" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\313Rod""\313Hjd""\313Gas""\313Ske""\313T5\0""\313T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rod" STR_CHAR_TRIM "Hjd" STR_CHAR_TRIM "Gas" STR_CHAR_TRIM "Ske" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW TR("TrmR""TrmH""TrmG""TrmS", "\313Rod""\313Hjd""\313Gas""\313Ske") + #define TR_TRIMS_VSRCRAW TR("TrmR""TrmH""TrmG""TrmS", STR_CHAR_TRIM "Rod" STR_CHAR_TRIM "Hjd" STR_CHAR_TRIM "Gas" STR_CHAR_TRIM "Ske") #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\313Rv""\313Rh""\313Hn""\313Hu""\313Gn""\313Gu""\313Sv""\313Sh""\3135d""\3135u""\3136d""\3136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rv" STR_CHAR_TRIM "Rh" STR_CHAR_TRIM "Hn" STR_CHAR_TRIM "Hu" STR_CHAR_TRIM "Gn" STR_CHAR_TRIM "Gu" STR_CHAR_TRIM "Sv" STR_CHAR_TRIM "Sh" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRv""tRh""tHn""tHu""tGn""tGu""tSv""tSh", "\313Rv""\313Rh""\313Hn""\313Hu""\313Gn""\313Gu""\313Sv""\313Sh") + #define TR_TRIMS_SWITCHES TR("tRv""tRh""tHn""tHu""tGn""tGu""tSv""tSh", STR_CHAR_TRIM "Rv" STR_CHAR_TRIM "Rh" STR_CHAR_TRIM "Hn" STR_CHAR_TRIM "Hu" STR_CHAR_TRIM "Gn" STR_CHAR_TRIM "Gu" STR_CHAR_TRIM "Sv" STR_CHAR_TRIM "Sh") #endif #if defined(PCBSKY9X) @@ -1250,19 +1250,19 @@ #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS "\314Inputs" -#define TR_MENU_LUA "\322Lua scripts" -#define TR_MENU_STICKS "\307Spakars" -#define TR_MENU_POTS "\310Rattar" -#define TR_MENU_MAX "\315MAX" -#define TR_MENU_HELI "\316Cyclic" -#define TR_MENU_TRIMS "\313Trimm" -#define TR_MENU_SWITCHES "\312Brytare" -#define TR_MENU_LOGICAL_SWITCHES "\312Logiska Brytare" -#define TR_MENU_TRAINER "\317Trainer" -#define TR_MENU_CHANNELS "\320Servon" -#define TR_MENU_GVARS "\311GVars" -#define TR_MENU_TELEMETRY "\321Telemetri" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" +#define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" +#define TR_MENU_STICKS STR_CHAR_STICK "Spakars" +#define TR_MENU_POTS STR_CHAR_POTS "Rattar" +#define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" +#define TR_MENU_HELI STR_CHAR_CYC "Cyclic" +#define TR_MENU_TRIMS STR_CHAR_TRIM "Trimm" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "Brytare" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "Logiska Brytare" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "Trainer" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "Servon" +#define TR_MENU_GVARS STR_CHAR_SLIDER "GVars" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "Telemetri" #define TR_MENU_DISPLAY "DISPLAY" #define TR_MENU_OTHER "Annat" #define TR_MENU_INVERT "Invertera" diff --git a/radio/src/translations/untranslated.h b/radio/src/translations/untranslated.h index 3f66d013b..7a853edaa 100644 --- a/radio/src/translations/untranslated.h +++ b/radio/src/translations/untranslated.h @@ -30,7 +30,7 @@ #if defined(PCBX12S) - #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0""\213L1\0""\213L2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" + #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_TRIM "L1\0" STR_CHAR_TRIM "L2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(PCBX10) #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"EX1" STR_CHAR_POT"EX2" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy" @@ -45,8 +45,8 @@ #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(RADIO_TX12) - #define TR_POTS_VSRCRAW "\310S1\0""\310S2\0" - #define TR_SW_VSRCRAW "\312SA\0""\312SB\0""\312SC\0""\312SD\0""\312SE\0""\312SF\0""\312SI\0""\312SJ\0" + #define TR_POTS_VSRCRAW STR_CHAR_POTS "S1\0" STR_CHAR_POTS "S2\0" + #define TR_SW_VSRCRAW STR_CHAR_SWITCH "SA\0" STR_CHAR_SWITCH "SB\0" STR_CHAR_SWITCH "SC\0" STR_CHAR_SWITCH "SD\0" STR_CHAR_SWITCH "SE\0" STR_CHAR_SWITCH "SF\0" STR_CHAR_SWITCH "SI\0" STR_CHAR_SWITCH "SJ\0" #elif defined(PCBX7) #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" @@ -258,21 +258,24 @@ #define TR_SENSOR_SBEC_VOLTAGE "BecV" #define TR_SENSOR_SBEC_CURRENT "BecA" -#define STR_CHAR_UP "\200" -#define STR_CHAR_DOWN "\201" -#define STR_CHAR_DELTA "\206" -#define STR_CHAR_STICK "\207" -#define STR_CHAR_POT "\210" -#define STR_CHAR_SLIDER "\211" -#define STR_CHAR_SWITCH "\212" -#define STR_CHAR_TRIM "\213" -#define STR_CHAR_INPUT "\214" -#define STR_CHAR_FUNCTION "\215" -#define STR_CHAR_CYC "\216" -#define STR_CHAR_TRAINER "\217" -#define STR_CHAR_CHANNEL "\220" -#define STR_CHAR_TELEMETRY "\221" -#define STR_CHAR_LUA "\222" +#define STR_CHAR_RIGHT "\200" +#define STR_CHAR_LEFT "\201" +#define STR_CHAR_UP "\202" +#define STR_CHAR_DOWN "\203" + +#define STR_CHAR_DELTA "\210" +#define STR_CHAR_STICK "\211" +#define STR_CHAR_POT "\212" +#define STR_CHAR_SLIDER "\213" +#define STR_CHAR_SWITCH "\214" +#define STR_CHAR_TRIM "\215" +#define STR_CHAR_INPUT "\216" +#define STR_CHAR_FUNCTION "\217" +#define STR_CHAR_CYC "\220" +#define STR_CHAR_TRAINER "\221" +#define STR_CHAR_CHANNEL "\222" +#define STR_CHAR_TELEMETRY "\223" +#define STR_CHAR_LUA "\224" #define CHAR_UP STR_CHAR_UP[0] #define CHAR_DOWN STR_CHAR_DOWN[0] From 23e1531c72a4727f421c777908dc8389a6f39c26 Mon Sep 17 00:00:00 2001 From: 3djc Date: Fri, 27 Nov 2020 11:18:57 +0100 Subject: [PATCH 02/13] patch special chars --- radio/src/translations/en.h.txt | 2 +- tools/build-font-bitmap.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/radio/src/translations/en.h.txt b/radio/src/translations/en.h.txt index 5b9fe2e4a..5b5518972 100644 --- a/radio/src/translations/en.h.txt +++ b/radio/src/translations/en.h.txt @@ -166,7 +166,7 @@ #define TR_CSWEQUAL "a=x\0 " #define LEN_VCSWFUNC "\005" -#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a~x\0 ""a>x\0 ""ax""|a|b\0 ""ax\0 ""ax""|a|b\0 ""a Date: Sat, 5 Dec 2020 08:37:33 +0100 Subject: [PATCH 03/13] Typo --- radio/src/translations/en.h.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/radio/src/translations/en.h.txt b/radio/src/translations/en.h.txt index 5b5518972..038730658 100644 --- a/radio/src/translations/en.h.txt +++ b/radio/src/translations/en.h.txt @@ -1228,7 +1228,7 @@ #define TR_BAR1_COLOR "Main bar color" #define TR_TEXT_COLOR "Text color" #define TR_TEXT_VIEWER "Text Viewer" -#define TR_MENU_INPUTS STR_CHAR_INPOUT "Inputs" +#define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" #define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Sticks" #define TR_MENU_POTS STR_CHAR_POT "Pots" From 204e355d381f4db70d085f997dc2c76257d426c6 Mon Sep 17 00:00:00 2001 From: 3djc Date: Thu, 17 Dec 2020 18:04:58 +0100 Subject: [PATCH 04/13] Review AFHDS3 option --- radio/src/fonts/std/font_05x07_extra.png | Bin 378 -> 626 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/radio/src/fonts/std/font_05x07_extra.png b/radio/src/fonts/std/font_05x07_extra.png index e71a06b47f42dc9f1557f6cf39c6d12b309e1f40..8b7cb813d208597c8408f50ed54a9533e9d574a5 100644 GIT binary patch delta 608 zcmV-m0-yc*0`dfZiBL{Q4GJ0x0000DNk~Le0001K000082m}BC08k?tP5=M_BxyrK zP)S2WAaHVTW@&6?001bFoshpu!%!5)f2pD(75q~i#36%g!Np82RUrrpF;=iTrAdm# zB!(oV_y)d-K1>He@CkeZ1!un-9URQ!g~RvbaL)JLd!c22Ct+I7??ReYh3oeQmxC*N z@r^cXtg=og2+O?Zc_%cU&sQv?FJ0r+Joo2Wh~hGo&Qw{L7Zq6hVrN?AhE;TK`~IQ$ zL2O597Kxw4J5d@LHoJbBOu`>ebDMUYU7VY~Y8#hhPVulAGGRO4;=LwStlWfJa4xQhQ-*0P}aq5|WzVQpp_E1+ioM4Lp0007FOGiWi|A&vv zzmaPmf8-1i5Ed%8QSrV2007fTL_t(I%hgm#62l-2lQQ}Lm(>fw3nEEpdMSrMkS(v6 z66_+hoW5NIfUR~$yA2LxcOS^b5^U$*oTGzvvLkPkpkb$SWS+{+#ICvb6r6Vzs;ZTO{0000O>_%)r1c48n{Iv*t(u1=&kHeO=ifGVw7eD^?0Cz6J{Adb&7 Date: Thu, 17 Dec 2020 18:05:19 +0100 Subject: [PATCH 05/13] fix chars --- radio/src/CMakeLists.txt | 2 +- radio/src/fonts/CMakeLists.txt | 2 ++ radio/src/gui/128x64/lcd.cpp | 14 +++++--------- radio/src/gui/128x64/lcd.h | 4 ++-- radio/src/gui/212x64/lcd.cpp | 8 ++++---- radio/src/gui/212x64/lcd.h | 4 ++-- radio/src/gui/common/stdlcd/fonts.cpp | 5 +---- radio/src/gui/common/stdlcd/fonts.h | 1 - radio/src/translations/cz.h.txt | 2 +- radio/src/translations/de.h.txt | 2 +- radio/src/translations/es.h.txt | 2 +- radio/src/translations/fi.h.txt | 2 +- radio/src/translations/fr.h.txt | 2 +- radio/src/translations/it.h.txt | 2 +- radio/src/translations/nl.h.txt | 2 +- radio/src/translations/pl.h.txt | 2 +- radio/src/translations/pt.h.txt | 2 +- radio/src/translations/se.h.txt | 2 +- radio/src/translations/untranslated.h | 2 +- tools/charset.py | 7 ++++--- 20 files changed, 32 insertions(+), 37 deletions(-) diff --git a/radio/src/CMakeLists.txt b/radio/src/CMakeLists.txt index a42ee6058..19bdc7933 100644 --- a/radio/src/CMakeLists.txt +++ b/radio/src/CMakeLists.txt @@ -2,7 +2,7 @@ include(CMakeForceCompiler) include(Bitmaps) set(PCB_TYPES X9LITE X9LITES X7 XLITE XLITES X9D X9D+ X9E X10 X12S SKY9X 9XRPRO AR9X NV14) -set(RADIO_LANGUAGES CZ DE EN ES FR IT PT SK SE PL HU NL CN) +set(RADIO_LANGUAGES CZ DE EN ES FR IT PT SK SE PL HU NL CN TW) set(TTS_LANGUAGES CZ DE EN ES FR IT PT SK SE PL HU NL RU) set(PCB "X9D+" CACHE STRING "Radio type, one of: ${PCB_TYPES}") diff --git a/radio/src/fonts/CMakeLists.txt b/radio/src/fonts/CMakeLists.txt index b9566e3c0..e0aa64384 100644 --- a/radio/src/fonts/CMakeLists.txt +++ b/radio/src/fonts/CMakeLists.txt @@ -11,6 +11,8 @@ set(CJK_FONT_BOLD "Noto/NotoSansCJKsc-Bold") if(TRANSLATIONS STREQUAL CN) set(subset all) +elseif(TRANSLATIONS STREQUAL TW) + set(subset all) else() string(TOLOWER ${TRANSLATIONS} subset) endif() diff --git a/radio/src/gui/128x64/lcd.cpp b/radio/src/gui/128x64/lcd.cpp index db3c29c33..0c2f623b1 100644 --- a/radio/src/gui/128x64/lcd.cpp +++ b/radio/src/gui/128x64/lcd.cpp @@ -202,7 +202,7 @@ void getCharPattern(PatternData * pattern, unsigned char c, LcdFlags flags) else { pattern->width = 5; pattern->height = 7; - pattern->data = (c < 0xC0) ? &font_5x7[(c-0x20)*5] : &font_5x7_extra[(c-0xC0)*5]; + pattern->data = &font_5x7[(c - 0x20) * 5]; } #else pattern->width = 5; @@ -218,7 +218,7 @@ uint8_t getCharWidth(char c, LcdFlags flags) return getPatternWidth(&pattern); } -void lcdDrawChar(coord_t x, coord_t y, char c, LcdFlags flags) +void lcdDrawChar(coord_t x, coord_t y, uint8_t c, LcdFlags flags) { const unsigned char * q; @@ -277,16 +277,12 @@ void lcdDrawChar(coord_t x, coord_t y, char c, LcdFlags flags) else #endif { -#if !defined(BOOT) - q = (c < 0x80) ? &font_5x7[(c-0x20)*5] : &font_5x7_extra[(c-0x80)*5]; -#else - q = &font_5x7[(c-0x20)*5]; -#endif + q = &font_5x7[(c - 0x20) * 5]; lcdPutPattern(x, y, q, 5, 7, flags); } } -void lcdDrawChar(coord_t x, coord_t y, char c) +void lcdDrawChar(coord_t x, coord_t y, uint8_t c) { lcdDrawChar(x, y, c, 0); } @@ -713,7 +709,7 @@ void drawSource(coord_t x, coord_t y, uint32_t idx, LcdFlags att) #endif { drawStringWithIndex(x, y, "LUA", qr.quot+1, att); - lcdDrawChar(lcdLastRightPos, y, 'a'+qr.rem, att); + lcdDrawChar(lcdLastRightPos, y, 'a' + qr.rem, att); } } #endif diff --git a/radio/src/gui/128x64/lcd.h b/radio/src/gui/128x64/lcd.h index 25a225806..d367f0b14 100644 --- a/radio/src/gui/128x64/lcd.h +++ b/radio/src/gui/128x64/lcd.h @@ -98,8 +98,8 @@ extern coord_t lcdNextPos; extern volatile uint32_t lcdInputs ; #endif -void lcdDrawChar(coord_t x, coord_t y, char c); -void lcdDrawChar(coord_t x, coord_t y, char c, LcdFlags flags); +void lcdDrawChar(coord_t x, coord_t y, uint8_t c); +void lcdDrawChar(coord_t x, coord_t y, uint8_t c, LcdFlags flags); void lcdDrawCenteredText(coord_t y, const char * s, LcdFlags flags = 0); void lcdDrawText(coord_t x, coord_t y, const char * s, LcdFlags flags); void lcdDrawTextAtIndex(coord_t x, coord_t y, const char * s, uint8_t idx, LcdFlags flags); diff --git a/radio/src/gui/212x64/lcd.cpp b/radio/src/gui/212x64/lcd.cpp index cd21caeee..cabc266af 100644 --- a/radio/src/gui/212x64/lcd.cpp +++ b/radio/src/gui/212x64/lcd.cpp @@ -214,12 +214,12 @@ void getCharPattern(PatternData * pattern, unsigned char c, LcdFlags flags) else { pattern->width = 5; pattern->height = 7; - pattern->data = (c < 0x80) ? &font_5x7[(c - 0x20) * 5] : &font_5x7_extra[(c - 0x80) * 5]; + pattern->data = &font_5x7[(c - 0x20) * 5]; } #else pattern->width = 5; pattern->height = 7; - pattern->data = &font_5x7[(c-0x20) * 5]; + pattern->data = &font_5x7[(c - 0x20) * 5]; #endif } @@ -230,7 +230,7 @@ uint8_t getCharWidth(char c, LcdFlags flags) return getPatternWidth(&pattern); } -void lcdDrawChar(coord_t x, coord_t y, char c, LcdFlags flags) +void lcdDrawChar(coord_t x, coord_t y, uint8_t c, LcdFlags flags) { lcdNextPos = x - 1; #if defined(BOOT) @@ -243,7 +243,7 @@ void lcdDrawChar(coord_t x, coord_t y, char c, LcdFlags flags) #endif } -void lcdDrawChar(coord_t x, coord_t y, char c) +void lcdDrawChar(coord_t x, coord_t y, uint8_t c) { lcdDrawChar(x, y, c, 0); } diff --git a/radio/src/gui/212x64/lcd.h b/radio/src/gui/212x64/lcd.h index a8880ec90..f8b87552e 100644 --- a/radio/src/gui/212x64/lcd.h +++ b/radio/src/gui/212x64/lcd.h @@ -100,8 +100,8 @@ extern coord_t lcdNextPos; #define DISPLAY_END (displayBuf + DISPLAY_BUFFER_SIZE) #define ASSERT_IN_DISPLAY(p) assert((p) >= displayBuf && (p) < DISPLAY_END) -void lcdDrawChar(coord_t x, coord_t y, char c); -void lcdDrawChar(coord_t x, coord_t y, char c, LcdFlags mode); +void lcdDrawChar(coord_t x, coord_t y, uint8_t c); +void lcdDrawChar(coord_t x, coord_t y, uint8_t c, LcdFlags mode); void lcdDrawCenteredText(coord_t y, const char * s, LcdFlags flags = 0); void lcdDrawText(coord_t x, coord_t y, const char * s, LcdFlags mode); void lcdDrawTextAtIndex(coord_t x, coord_t y, const char * s,uint8_t idx, LcdFlags mode); diff --git a/radio/src/gui/common/stdlcd/fonts.cpp b/radio/src/gui/common/stdlcd/fonts.cpp index 18f376bf2..e0641570c 100644 --- a/radio/src/gui/common/stdlcd/fonts.cpp +++ b/radio/src/gui/common/stdlcd/fonts.cpp @@ -22,6 +22,7 @@ const unsigned char font_5x7[] = { #include "font_05x07.lbm" +#include "font_05x07_extra.lbm" #if defined(TRANSLATIONS_DE) #include "font_de_05x07.lbm" #elif defined(TRANSLATIONS_CZ) @@ -129,10 +130,6 @@ const unsigned char font_4x6_extra[] = { #include "font_04x06_extra.lbm" }; -const unsigned char font_5x7_extra[] = { -#include "font_05x07_extra.lbm" -}; - const unsigned char font_10x14_extra[] = { #include "font_10x14_extra.lbm" }; diff --git a/radio/src/gui/common/stdlcd/fonts.h b/radio/src/gui/common/stdlcd/fonts.h index ee880bb05..a6e59c399 100644 --- a/radio/src/gui/common/stdlcd/fonts.h +++ b/radio/src/gui/common/stdlcd/fonts.h @@ -30,7 +30,6 @@ extern const unsigned char font_10x14[]; extern const unsigned char font_4x6[]; extern const unsigned char font_8x10[]; extern const unsigned char font_22x38_num[]; - extern const unsigned char font_5x7_extra[]; extern const unsigned char font_10x14_extra[]; extern const unsigned char font_4x6_extra[]; #endif diff --git a/radio/src/translations/cz.h.txt b/radio/src/translations/cz.h.txt index aa21d36e7..c24f9b2a8 100644 --- a/radio/src/translations/cz.h.txt +++ b/radio/src/translations/cz.h.txt @@ -1220,7 +1220,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Vstupy" #define TR_MENU_LUA STR_CHAR_LUA "Lua skripty" #define TR_MENU_STICKS STR_CHAR_STICK "Páky" -#define TR_MENU_POTS STR_CHAR_POTS "Potenciometry" +#define TR_MENU_POTS STR_CHAR_POT "Potenciometry" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cyklika" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trimy" diff --git a/radio/src/translations/de.h.txt b/radio/src/translations/de.h.txt index 951b3ad5e..bafa29fab 100644 --- a/radio/src/translations/de.h.txt +++ b/radio/src/translations/de.h.txt @@ -1233,7 +1233,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" #define TR_MENU_LUA STR_CHAR_LUA "Lua Skripte" #define TR_MENU_STICKS STR_CHAR_STICK "Knüppel" -#define TR_MENU_POTS STR_CHAR_POTS "Potis" +#define TR_MENU_POTS STR_CHAR_POT "Potis" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Heli-TS CYC1-3" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trimmung" diff --git a/radio/src/translations/es.h.txt b/radio/src/translations/es.h.txt index 08737df42..c80fe7ad8 100644 --- a/radio/src/translations/es.h.txt +++ b/radio/src/translations/es.h.txt @@ -1233,7 +1233,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Entradas" #define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Sticks" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cíclico" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" diff --git a/radio/src/translations/fi.h.txt b/radio/src/translations/fi.h.txt index d290cdb08..9d3e722c1 100644 --- a/radio/src/translations/fi.h.txt +++ b/radio/src/translations/fi.h.txt @@ -1240,7 +1240,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" #define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Sticks" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cyclic" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" diff --git a/radio/src/translations/fr.h.txt b/radio/src/translations/fr.h.txt index 3a659dffc..2ceb3accf 100644 --- a/radio/src/translations/fr.h.txt +++ b/radio/src/translations/fr.h.txt @@ -1257,7 +1257,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Entrées" #define TR_MENU_LUA STR_CHAR_LUA "Scripts Lua" #define TR_MENU_STICKS STR_CHAR_STICK "Manches" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cyclique" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" diff --git a/radio/src/translations/it.h.txt b/radio/src/translations/it.h.txt index f46aae313..39f923957 100644 --- a/radio/src/translations/it.h.txt +++ b/radio/src/translations/it.h.txt @@ -1254,7 +1254,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Ingressi" #define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Sticks" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Ciclico" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" diff --git a/radio/src/translations/nl.h.txt b/radio/src/translations/nl.h.txt index cc4706979..36ff84be4 100644 --- a/radio/src/translations/nl.h.txt +++ b/radio/src/translations/nl.h.txt @@ -1241,7 +1241,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" #define TR_MENU_LUA STR_CHAR_LUA "Lua Scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Sticks" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "HeliCyclic" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" diff --git a/radio/src/translations/pl.h.txt b/radio/src/translations/pl.h.txt index 96ddc1448..c45ae4230 100644 --- a/radio/src/translations/pl.h.txt +++ b/radio/src/translations/pl.h.txt @@ -1250,7 +1250,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Wejści" #define TR_MENU_LUA STR_CHAR_LUA "SkryptyLUA" #define TR_MENU_STICKS STR_CHAR_STICK "Drążki" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cyclic" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trymy" diff --git a/radio/src/translations/pt.h.txt b/radio/src/translations/pt.h.txt index 47d9f1011..993c49318 100644 --- a/radio/src/translations/pt.h.txt +++ b/radio/src/translations/pt.h.txt @@ -1250,7 +1250,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" #define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Sticks" -#define TR_MENU_POTS STR_CHAR_POTS "Pots" +#define TR_MENU_POTS STR_CHAR_POT "Pots" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cyclic" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trims" diff --git a/radio/src/translations/se.h.txt b/radio/src/translations/se.h.txt index f58d4bc63..a49adb648 100644 --- a/radio/src/translations/se.h.txt +++ b/radio/src/translations/se.h.txt @@ -1253,7 +1253,7 @@ #define TR_MENU_INPUTS STR_CHAR_INPUT "Inputs" #define TR_MENU_LUA STR_CHAR_LUA "Lua scripts" #define TR_MENU_STICKS STR_CHAR_STICK "Spakars" -#define TR_MENU_POTS STR_CHAR_POTS "Rattar" +#define TR_MENU_POTS STR_CHAR_POT "Rattar" #define TR_MENU_MAX STR_CHAR_FUNCTION "MAX" #define TR_MENU_HELI STR_CHAR_CYC "Cyclic" #define TR_MENU_TRIMS STR_CHAR_TRIM "Trimm" diff --git a/radio/src/translations/untranslated.h b/radio/src/translations/untranslated.h index 7a853edaa..3a228e675 100644 --- a/radio/src/translations/untranslated.h +++ b/radio/src/translations/untranslated.h @@ -45,7 +45,7 @@ #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" #define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0" #elif defined(RADIO_TX12) - #define TR_POTS_VSRCRAW STR_CHAR_POTS "S1\0" STR_CHAR_POTS "S2\0" + #define TR_POTS_VSRCRAW STR_CHAR_POT "S1\0" STR_CHAR_POT "S2\0" #define TR_SW_VSRCRAW STR_CHAR_SWITCH "SA\0" STR_CHAR_SWITCH "SB\0" STR_CHAR_SWITCH "SC\0" STR_CHAR_SWITCH "SD\0" STR_CHAR_SWITCH "SE\0" STR_CHAR_SWITCH "SF\0" STR_CHAR_SWITCH "SI\0" STR_CHAR_SWITCH "SJ\0" #elif defined(PCBX7) #define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"S2\0" diff --git a/tools/charset.py b/tools/charset.py index 9fc3222bd..8169da9b3 100644 --- a/tools/charset.py +++ b/tools/charset.py @@ -10,10 +10,10 @@ standard_chars = """ !"#$%&'()*+,-./0123456789:;<=>?°ABCDEFGHIJKLMNOPQRSTUVWXYZ extra_chars = "".join([chr(0x10000+i) for i in range(21)]) -def chinese_chars(): +def cjk_chars(lang): charset = set() tools_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(tools_path, "../radio/src/translations/cn.h.txt"), encoding='utf-8') as f: + with open(os.path.join(tools_path, "../radio/src/translations/%s.h.txt" % lang), encoding='utf-8') as f: data = f.read() for c in data: if 0x4E00 <= ord(c) <= 0x9FFF: @@ -36,7 +36,8 @@ special_chars = { "pl": "ąćęłńóśżźĄĆĘŁŃÓŚŻŹ", "pt": "ÁáÂâÃãÀàÇçÉéÊêÍíÓóÔôÕõÚú", "se": "åäöÅÄÖ", - "cn": "".join(chinese_chars()) + "cn": "".join(cjk_chars("cn")), + "tw": "".join(cjk_chars("tw")), } subset_lowercase = { From 8d67ac8ec35a6002014f942076c81a45343548de Mon Sep 17 00:00:00 2001 From: 3djc Date: Thu, 17 Dec 2020 18:07:35 +0100 Subject: [PATCH 06/13] Review AFHDS3 option --- radio/src/translations/tw.h.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 radio/src/translations/tw.h.txt diff --git a/radio/src/translations/tw.h.txt b/radio/src/translations/tw.h.txt new file mode 100644 index 000000000..e69de29bb From 955e3ad4f70f8c3450d5f62fd9284e15c30a63a3 Mon Sep 17 00:00:00 2001 From: 3djc Date: Thu, 17 Dec 2020 18:09:46 +0100 Subject: [PATCH 07/13] Add TW --- radio/src/translations/tw.h.txt | 1306 +++++++++++++++++++++++++++++++ 1 file changed, 1306 insertions(+) diff --git a/radio/src/translations/tw.h.txt b/radio/src/translations/tw.h.txt index e69de29bb..f9b74680f 100644 --- a/radio/src/translations/tw.h.txt +++ b/radio/src/translations/tw.h.txt @@ -0,0 +1,1306 @@ +/* + * Copyright (C) OpenTX + * + * Based on code named + * th9x - http://code.google.com/p/th9x + * er9x - http://code.google.com/p/er9x + * gruvin9x - http://code.google.com/p/gruvin9x + * + * License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + + + +/* + * !!!!! DO NOT EDIT en.h - EDIT en.h.txt INSTEAD !!!!!!! + * + * In order to make translations easier en.h.txt is parsed and national + * characters are replaced by bitmap codes. The result is en.h. + * See translate.py in the util folder for the list of character codes + * + * !!!!! DO NOT EDIT en.h - EDIT en.h.txt INSTEAD !!!!!!! + */ + +/* + * Formatting octal codes available in TR_ strings: + * \037\x -sets LCD x-coord (x value in octal) + * \036 -newline + * \035 -horizontal tab (ARM only) + * \001 to \034 -extended spacing (value * FW/2) + * \0 -ends current string + */ + + + +// NON ZERO TERMINATED STRINGS +#define LEN_OFFON "\004" +#define TR_OFFON "禁用" "開啟" + +#define LEN_MMMINV "\003" +#define TR_MMMINV "---" "反\0" + +#define LEN_VBEEPMODE "\010" +#define TR_VBEEPMODE "靜音\0 " "警告\0 " "忽略按鍵" "全部\0 " + +#define LEN_VBLMODE "\004" +#define TR_VBLMODE "關閉" "按鍵" "操控" "全部" "開啟" + +#define LEN_TRNMODE "\004" +#define TR_TRNMODE "關\0 " "相加" "替換" + +#define LEN_TRNCHN "\003" +#define TR_TRNCHN "CH1CH2CH3CH4" + +#define LEN_AUX_SERIAL_MODES "\010" +#define TR_AUX_SERIAL_MODES "調試\0 " "回傳鏡像" "回傳輸入" "SBUS教練" "LUA腳本\0" + +#define LEN_SWTYPES "\004" +#define TR_SWTYPES "無\0 " "回彈" "2段\0""3段\0" + +#define LEN_POTTYPES "\012" +#define TR_POTTYPES "無\0 " "有中點旋鈕" "多段旋鈕\0 " "無中點旋鈕" + +#define LEN_SLIDERTYPES "\006" +#define TR_SLIDERTYPES "無\0 " "側滑塊" + +#define LEN_VLCD "\006" +#define TR_VLCD "Normal" "Optrex" + +#define LEN_VPERSISTENT "\016" +#define TR_VPERSISTENT "禁用\0 " "隨飛行記錄重啟" "隨手動重啟\0 " + +#define LEN_COUNTRY_CODES "\004" +#define TR_COUNTRY_CODES "美國" "日本" "歐洲" + +#define LEN_USBMODES "\006" +#define TR_USBMODES "詢問\0 " "遊戲柄" "U盤\0 " "串行\0 " + +#define LEN_JACK_MODES "\004" +#define TR_JACK_MODES "詢問" "音頻" "教練" + +#define LEN_TELEMETRY_PROTOCOLS "\017" +#define TR_TELEMETRY_PROTOCOLS "FrSky S.PORT\0 " "FrSky D\0 " "FrSky D (cable)" "TBS Crossfire\0 " "Spektrum\0 " "AFHDS2A IBUS\0 " "Multi Telemetry" + +#define LEN_VTRIMINC "\004" +#define TR_VTRIMINC "指數" "很小" "較小" "中等" "較大" + +#define LEN_VDISPLAYTRIMS "\010" +#define TR_VDISPLAYTRIMS "不顯示\0 " "改變時\0 " "始終顯示" + +#define LEN_VBEEPCOUNTDOWN "\004" +#define TR_VBEEPCOUNTDOWN "靜音" "蜂鳴" "語音" "震動" + +#define LEN_COUNTDOWNVALUES "\004" +#define TR_COUNTDOWNVALUES "5秒\0" "10秒" "20秒" "30秒" + +#define LEN_VVARIOCENTER "\004" +#define TR_VVARIOCENTER "音調" "靜音" + +#define LEN_CURVE_TYPES "\006" +#define TR_CURVE_TYPES "標準\0 " "自定義" + +#define LEN_RETA123 "\001" + +#define TR_RETA123 "RETA13245LR" + +#define LEN_VCURVEFUNC "\003" +#define TR_VCURVEFUNC "---" "x>0" "x<0" "|x|" "f>0" "f<0" "|f|" + +#define LEN_VMLTPX "\004" +#define TR_VMLTPX "相加" "相乘" "替換" + +#define LEN_VMLTPX2 "\002" +#define TR_VMLTPX2 "+=" "*=" ":=" + +#define LEN_VMIXTRIMS "\004" + +#if defined(PCBHORUS) + #define TR_VMIXTRIMS "禁用" "啟用" "Rud\0" "Ele\0" "Thr\0" "Ail\0" "T5\0 " "T6\0 " +#else + #define TR_VMIXTRIMS "禁用" "啟用" "Rud\0" "Ele\0" "Thr\0" "Ail\0" +#endif + + #define TR_CSWTIMER "定時\0 " + #define TR_CSWSTICKY "粘滯\0 " + #define TR_CSWRANGE "範圍\0 " + #define TR_CSWSTAY "邊沿\0 " + + #define TR_CSWEQUAL "a=x\0 " + +#define LEN_VCSWFUNC "\006" +#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a~x\0 " "a>x\0 " "ax\0" "|a|b\0 " "a" +#define TR_BT_SELECT_DEVICE "選擇設備" +#define TR_DISCOVER "發現" +#define TR_BUTTON_INIT BUTTON("初始化") +#define TR_WAITING "等待..." +#define TR_RECEIVER_DELETE "是否刪除接收機?" +#define TR_RECEIVER_RESET "是否重啟接收機?" +#define TR_SHARE "分享" +#define TR_BIND "對頻" +#define TR_REGISTER TR("Reg", "註冊") +#define TR_MODULE_RANGE BUTTON(TR("Rng", "測距")) +#define TR_RECEIVER_OPTIONS TR("REC. OPTIONS", "接收機選項") +#define TR_DEL_BUTTON BUTTON(TR("Del", "刪除")) +#define TR_RESET_BTN BUTTON("重啟") +#define TR_DEBUG "調試" +#define TR_KEYS_BTN BUTTON("按鍵") +#define TR_ANALOGS_BTN BUTTON(TR("Anas", "類比")) +#define TR_TOUCH_NOTFOUND "未找到觸摸硬件" +#define TR_TOUCH_EXIT "點擊屏幕退出" +#define TR_SET BUTTON("設置") +#define TR_TRAINER "教練" +#define TR_CHANS "通道" +#define TR_ANTENNAPROBLEM CENTER "發射機天線故障!" +#define TR_MODELIDUSED "ID已使用:" +#define TR_MODULE "模塊" +#define TR_RX_NAME "接收機名稱" +#define TR_TELEMETRY_TYPE TR("Type", "回傳類型") +#define TR_TELEMETRY_SENSORS "傳感器" +#define TR_VALUE "數值" +#define TR_REPEAT "循環" +#define TR_ENABLE "啟用" +#define TR_TOPLCDTIMER "Top LCD Timer" +#define TR_UNIT "單位" +#define TR_TELEMETRY_NEWSENSOR INDENT "添加新傳感器..." +#define TR_CHANNELRANGE TR(INDENT "Ch. Range", INDENT "通道範圍") +#define TR_RXFREQUENCY TR("Rx Freqency", "接收機端口輸出頻率") +#define TR_ANTENNACONFIRM1 "外置天線" +#if defined(PCBX12S) +#define LEN_ANTENNA_MODES "\010" +#define TR_ANTENNA_MODES "內置天線""詢問\0 ""基於模型""外置天線" +#else +#define LEN_ANTENNA_MODES "\010" +#define TR_ANTENNA_MODES "內置天線""詢問\0 ""基於模型""外置天線" +#endif +#define TR_USE_INTERNAL_ANTENNA TR("Use int. antenna", "請使用內置天線") +#define TR_USE_EXTERNAL_ANTENNA TR("Use ext. antenna", "請使用外置天線") +#define TR_ANTENNACONFIRM2 TR("Check antenna", "請確認天線安裝完好!") +#define TR_MODULE_PROTOCOL_FLEX_WARN_LINE1 "請使用FLEX版本" +#define TR_MODULE_PROTOCOL_FCC_WARN_LINE1 "請使用FCC版本" +#define TR_MODULE_PROTOCOL_EU_WARN_LINE1 "請使用EU版本" +#define TR_MODULE_PROTOCOL_WARN_LINE2 "經認證的韌體" +#define TR_LOWALARM INDENT "信號弱警告" +#define TR_CRITICALALARM INDENT "信號極弱警告" +#define TR_RSSIALARM_WARN "RSSI" +#define TR_NO_RSSIALARM TR(INDENT "Alarms disabled", "回傳警告已禁止") +#define TR_DISABLE_ALARM TR(INDENT "Disable alarms", INDENT "禁止回傳警告") +#define TR_ENABLE_POPUP "允許彈窗" +#define TR_DISABLE_POPUP "禁止彈窗" +#define TR_POPUP "彈窗提示" +#define TR_MIN "最小" +#define TR_MAX "最大" +#define TR_CURVE_PRESET "預設..." +#define TR_PRESET "預設" +#define TR_MIRROR "鏡像" +#define TR_CLEAR "清除" +#define TR_RESET "重啟" +#define TR_RESET_SUBMENU "重啟..." +#define TR_COUNT "點數" +#define TR_PT "點" +#define TR_PTS "點" +#define TR_SMOOTH "平滑" +#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "當前搖杆位置保存為中點") +#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "當前所有通道中點/低位/高位保存為所有輸出值") +#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "當前微調按鈕值保存到中點") +#define TR_INCDEC "增減" +#define TR_GLOBALVAR "全局變量" +#define TR_MIXSOURCE "混控源" +#define TR_CONSTANT "不變化" +#define TR_PERSISTENT_MAH TR(INDENT "Str mAh", INDENT "關機保持 mAh") +#define TR_PREFLIGHT "初始位置檢查" +#define TR_CHECKLIST TR(INDENT "Checklist", INDENT "顯示列表") +#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS 偏移量") +#define TR_AUX_SERIAL_MODE "端口" +#define TR_AUX2_SERIAL_MODE "端口 2" +#define TR_SCRIPT "腳本" +#define TR_INPUTS "輸入" +#define TR_OUTPUTS "輸出" +#define STR_EEBACKUP "EEPROM 數據備份" +#define STR_FACTORYRESET "恢復出廠設置" +#define TR_CONFIRMRESET TR("Erase ALL", "是否清除所有模型和設置數據?") +#define TR_TOO_MANY_LUA_SCRIPTS "Lua腳本數量超出限制!" +#define TR_SPORT_UPDATE_POWER_MODE "SP 電源" +#define LEN_SPORT_UPDATE_POWER_MODES "\004" +#define TR_SPORT_UPDATE_POWER_MODES "自動""開啟" +#define TR_NO_TELEMETRY_SCREENS "無回傳頁面" +#define TR_TOUCH_PANEL "觸摸屏:" + +// Horus and Taranis column headers +#define TR_PHASES_HEADERS_NAME "名稱" +#define TR_PHASES_HEADERS_SW "開關" +#define TR_PHASES_HEADERS_RUD_TRIM "方向微調" +#define TR_PHASES_HEADERS_ELE_TRIM "俯仰微調" +#define TR_PHASES_HEADERS_THT_TRIM "油門微調" +#define TR_PHASES_HEADERS_AIL_TRIM "橫滾微調" +#define TR_PHASES_HEADERS_CH5_TRIM "微調 5" +#define TR_PHASES_HEADERS_CH6_TRIM "微調 6" +#define TR_PHASES_HEADERS_FAD_IN "漸入" +#define TR_PHASES_HEADERS_FAD_OUT "漸出" + +#define TR_LIMITS_HEADERS_NAME "名稱" +#define TR_LIMITS_HEADERS_SUBTRIM "中點" +#define TR_LIMITS_HEADERS_MIN "低位" +#define TR_LIMITS_HEADERS_MAX "高位" +#define TR_LIMITS_HEADERS_DIRECTION "方向" +#define TR_LIMITS_HEADERS_CURVE "曲線" +#define TR_LIMITS_HEADERS_PPMCENTER "PPM中點" +#define TR_LIMITS_HEADERS_SUBTRIMMODE "微調模式" +#define TR_INVERTED "反向" + +#define TR_LSW_HEADERS_FUNCTION "功能" +#define TR_LSW_HEADERS_V1 "V1" +#define TR_LSW_HEADERS_V2 "V2" +#define TR_LSW_HEADERS_ANDSW "與開關" +#define TR_LSW_HEADERS_DURATION "持續時間" +#define TR_LSW_HEADERS_DELAY "延時" + +#define TR_GVAR_HEADERS_NAME "名稱" +#define TR_GVAR_HEADERS_FM0 "FM0值" +#define TR_GVAR_HEADERS_FM1 "FM1值" +#define TR_GVAR_HEADERS_FM2 "FM2值" +#define TR_GVAR_HEADERS_FM3 "FM3值" +#define TR_GVAR_HEADERS_FM4 "FM4值" +#define TR_GVAR_HEADERS_FM5 "FM5值" +#define TR_GVAR_HEADERS_FM6 "FM6值" +#define TR_GVAR_HEADERS_FM7 "FM7值" +#define TR_GVAR_HEADERS_FM8 "FM8值" + +// Horus footer descriptions +#define TR_LSW_DESCRIPTIONS { "比較類型或功能", "第一個變量", "第二個變量或常量", "第二個變量或常量", "啟用本行的附加條件", "邏輯開關持續時間", "邏輯開關延時開啟" } + +// Horus layouts and widgets +#define TR_FIRST_CHANNEL "起始通道" +#define TR_FILL_BACKGROUND "是否填充背景?" +#define TR_BG_COLOR "背景顏色" +#define TR_SLIDERS_TRIMS "滑塊和微調" +#define TR_SLIDERS "滑塊" +#define TR_FLIGHT_MODE "飛行模式" +#define TR_INVALID_FILE "無效的文件" +#define TR_TIMER_SOURCE "計時器選擇" +#define TR_SIZE "尺寸" +#define TR_SHADOW "陰影" +#define TR_TEXT "文本" +#define TR_COLOR "顏色" +#define TR_MAIN_VIEW_X "Main view X" +#define TR_PANEL1_BACKGROUND "面板1背景" +#define TR_PANEL2_BACKGROUND "面板2背景" + +// About screen +#define TR_ABOUTUS TR(" 關於 ", "關於") + +#define TR_ABOUT_OPENTX_1 TR("OpenTX\001is\001open\001source,\001non", "OpenTX is open source, non-") +#define TR_ABOUT_OPENTX_2 TR("commercial,\001wo\001warranties.", "commercial and comes with no") +#define TR_ABOUT_OPENTX_3 TR("It\001was\001developed\001for\001free.", "warranties. It was developed") +#define TR_ABOUT_OPENTX_4 TR("Support through donations", "for free. Support through") +#define TR_ABOUT_OPENTX_5 TR("is welcome!", "donations is welcome!") + +#define TR_ABOUT_BERTRAND_1 "Bertrand Songis" +#define TR_ABOUT_BERTRAND_2 "OpenTX main author" +#define TR_ABOUT_BERTRAND_3 "Companion co-author" + +#define TR_ABOUT_MIKE_1 "Mike Blandford" +#define TR_ABOUT_MIKE_2 "Code and drivers guru" +#define TR_ABOUT_MIKE_3 TR("Arguably,\001one\001of\001the\001best", "Arguably, one of the best") +#define TR_ABOUT_MIKE_4 "Inspirational" + +#define TR_ABOUT_ROMOLO_1 "Romolo Manfredini" +#define TR_ABOUT_ROMOLO_2 "Companion co-author" +#define TR_ABOUT_ROMOLO_3 "" + +#define TR_ABOUT_ANDRE_1 "Andre Bernet" +#define TR_ABOUT_ANDRE_2 "Functionality, usability," +#define TR_ABOUT_ANDRE_3 "debugging, documentation" + +#define TR_ABOUT_ROB_1 "Rob Thomson" +#define TR_ABOUT_ROB_2 "openrcforums webmaster" + +#define TR_ABOUT_KJELL_1 "Kjell Kernen" +#define TR_ABOUT_KJELL_2 TR("www.open-tx.org author", "www.open-tx.org main author") +#define TR_ABOUT_KJELL_3 "OpenTX Recorder author" +#define TR_ABOUT_KJELL_4 "Companion contributor" + +#define TR_ABOUT_MARTIN_1 "Martin Hotar" +#define TR_ABOUT_MARTIN_2 "Graphics designer" + +#if defined(PCBFRSKY) + #define TR_ABOUT_HARDWARE_1 "FrSky" + #define TR_ABOUT_HARDWARE_2 TR("Hardware design/producer", "Hardware designer/producer") + #define TR_ABOUT_HARDWARE_3 "Firmware contributor" +#else + #define TR_ABOUT_HARDWARE_1 "Brent Nelson" + #define TR_ABOUT_HARDWARE_2 "Sky9x designer/producer" + #define TR_ABOUT_HARDWARE_3 "" +#endif + +#define TR_ABOUT_PARENTS_1 "Parent projects" +#define TR_ABOUT_PARENTS_2 TR("Ersky9x (Mike Blandford)", "Ersky9x (Mike Blandford)") +#define TR_ABOUT_PARENTS_3 "ER9X (Erez Raviv)" +#define TR_ABOUT_PARENTS_4 "TH9X (Thomas Husterer)" + +#define TR_CHR_SHORT 's' +#define TR_CHR_LONG 'l' +#define TR_CHR_TOGGLE 't' +#define TR_CHR_HOUR 'h' +#define TR_CHR_INPUT 'I' // Values between A-I will work + +#define TR_BEEP_VOLUME "提示音音量" +#define TR_WAV_VOLUME "語音音量" +#define TR_BG_VOLUME TR("Bg volume", "背景聲音量") + +#define TR_TOP_BAR "頂欄" +#define TR_FLASH_ERASE "正在擦除..." +#define TR_FLASH_WRITE "正在寫入..." +#define TR_OTA_UPDATE "OTA 更新..." +#define TR_MODULE_RESET "正在重啟模塊..." +#define TR_UNKNOWN_RX "未知接收機" +#define TR_UNSUPPORTED_RX "不支持此接收機" +#define TR_OTA_UPDATE_ERROR "OTA 更新失敗" +#define TR_DEVICE_RESET "正在重啟設備..." +#define TR_ALTITUDE INDENT "高度" +#define TR_SCALE "比例" +#define TR_VIEW_CHANNELS "查看通道" +#define TR_VIEW_NOTES "View Notes" +#define TR_MODEL_SELECT "模型選擇" +#define TR_MODS_FORBIDDEN "禁止修改!" +#define TR_UNLOCKED "已解鎖" +#define TR_ID "ID" +#define TR_PRECISION "精度" +#define TR_RATIO "比率" +#define TR_FORMULA "公式" +#define TR_CELLINDEX "單節電池編號" +#define TR_LOGS "日誌" +#define TR_OPTIONS "選項" +#define TR_FIRMWARE_OPTIONS "韌體選項" + +#define TR_ALTSENSOR "Alt 傳感器" +#define TR_CELLSENSOR "Cell 傳感器" +#define TR_GPSSENSOR "GPS 傳感器" +#define TR_CURRENTSENSOR "傳感器" +#define TR_AUTOOFFSET "自動偏移值" +#define TR_ONLYPOSITIVE "正向" +#define TR_FILTER "濾波" +#define TR_TELEMETRYFULL TR("All slots full!", "回傳項目已滿!") +#define TR_SERVOS_OK "Servos OK" +#define TR_SERVOS_KO "Servos KO" +#define TR_INVERTED_SERIAL INDENT "反向" +#define TR_IGNORE_INSTANCE TR(INDENT "No inst.", INDENT "忽略ID鑑別") +#define TR_DISCOVER_SENSORS "掃描新的回傳項目" +#define TR_STOP_DISCOVER_SENSORS "停止掃描" +#define TR_DELETE_ALL_SENSORS "刪除所有回傳項目" +#define TR_CONFIRMDELETE "真的 " LCDW_128_480_LINEBREAK "要刪除全部嗎 ?" +#define TR_SELECT_WIDGET "選擇小部件" +#define TR_REMOVE_WIDGET "移除小部件" +#define TR_WIDGET_SETTINGS "小部件設置" +#define TR_REMOVE_SCREEN "移除頁面" +#define TR_SETUP_WIDGETS "設置小部件" +#define TR_USER_INTERFACE "用戶界面" +#define TR_THEME "主題" +#define TR_SETUP "設置" +#define TR_MAINVIEWX "Main view X" +#define TR_LAYOUT "佈局" +#define TR_ADD_MAIN_VIEW "添加主視圖" +#define TR_BACKGROUND_COLOR "背景顏色" +#define TR_MAIN_COLOR "主顏色" +#define TR_BAR2_COLOR "二級條形圖顏色" +#define TR_BAR1_COLOR "主條形圖顏色" +#define TR_TEXT_COLOR "文本顏色" +#define TR_TEXT_VIEWER "文本視圖" +#define TR_MENU_INPUTS "\214輸入" +#define TR_MENU_LUA "\222LUA腳本" +#define TR_MENU_STICKS "\207搖桿" +#define TR_MENU_POTS "\210旋鈕" +#define TR_MENU_MAX "\215固定值MAX" +#define TR_MENU_HELI "\216斜盤混控CYC" +#define TR_MENU_TRIMS "\213微調" +#define TR_MENU_SWITCHES "\212開關" +#define TR_MENU_LOGICAL_SWITCHES "\212邏輯開關" +#define TR_MENU_TRAINER "\217教練" +#define TR_MENU_CHANNELS "\220通道" +#define TR_MENU_GVARS "\211全局變量" +#define TR_MENU_TELEMETRY "\221回傳" +#define TR_MENU_DISPLAY "顯示" +#define TR_MENU_OTHER "其它" +#define TR_MENU_INVERT "反向" +#define TR_JITTER_FILTER "類比輸入濾波" +#define TR_RTC_CHECK TR("Check RTC", "檢查時間驅動電池電壓") +#define TR_AUTH_FAILURE "驗證失敗" + +#define ZSTR_VFR "VFR" +#define ZSTR_RSSI "RSSI" +#define ZSTR_R9PW "R9PW" +#define ZSTR_RAS "SWR" +#define ZSTR_A1 "A1" +#define ZSTR_A2 "A2" +#define ZSTR_A3 "A3" +#define ZSTR_A4 "A4" +#define ZSTR_BATT "RxBt" +#define ZSTR_ALT "Alt" +#define ZSTR_TEMP1 "Tmp1" +#define ZSTR_TEMP2 "Tmp2" +#define ZSTR_TEMP3 "Tmp3" +#define ZSTR_TEMP4 "Tmp4" +#define ZSTR_RPM2 "RPM2" +#define ZSTR_PRES "Pres" +#define ZSTR_ODO1 "Odo1" +#define ZSTR_ODO2 "Odo2" +#define ZSTR_TXV "TX_V" +#define ZSTR_CURR_SERVO1 "CSv1" +#define ZSTR_CURR_SERVO2 "CSv2" +#define ZSTR_CURR_SERVO3 "CSv3" +#define ZSTR_CURR_SERVO4 "CSv4" +#define ZSTR_DIST "Dist" +#define ZSTR_ARM "Arm" +#define ZSTR_C50 "C50" +#define ZSTR_C200 "C200" +#define ZSTR_RPM "RPM" +#define ZSTR_FUEL "Fuel" +#define ZSTR_VSPD "VSpd" +#define ZSTR_ACCX "AccX" +#define ZSTR_ACCY "AccY" +#define ZSTR_ACCZ "AccZ" +#define ZSTR_GYROX "GYRX" +#define ZSTR_GYROY "GYRY" +#define ZSTR_GYROZ "GYRZ" +#define ZSTR_CURR "Curr" +#define ZSTR_CAPACITY "Capa" +#define ZSTR_VFAS "VFAS" +#define ZSTR_BATT_PERCENT "Bat%" +#define ZSTR_ASPD "ASpd" +#define ZSTR_GSPD "GSpd" +#define ZSTR_HDG "Hdg" +#define ZSTR_SATELLITES "Sats" +#define ZSTR_CELLS "Cels" +#define ZSTR_GPSALT "GAlt" +#define ZSTR_GPSDATETIME "Date" +#define ZSTR_GPS "GPS" +#define ZSTR_BATT1_VOLTAGE "RB1V" +#define ZSTR_BATT2_VOLTAGE "RB2V" +#define ZSTR_BATT1_CURRENT "RB1A" +#define ZSTR_BATT2_CURRENT "RB2A" +#define ZSTR_BATT1_CONSUMPTION "RB1C" +#define ZSTR_BATT2_CONSUMPTION "RB2C" +#define ZSTR_BATT1_TEMP "RB1T" +#define ZSTR_BATT2_TEMP "RB2T" +#define ZSTR_RB_STATE "RBS" +#define ZSTR_CHANS_STATE "RBCS" +#define ZSTR_RX_RSSI1 "1RSS" +#define ZSTR_RX_RSSI2 "2RSS" +#define ZSTR_RX_QUALITY "RQly" +#define ZSTR_RX_SNR "RSNR" +#define ZSTR_RX_NOISE "RNse" +#define ZSTR_ANTENNA "ANT" +#define ZSTR_RF_MODE "RFMD" +#define ZSTR_TX_POWER "TPWR" +#define ZSTR_TX_RSSI "TRSS" +#define ZSTR_TX_QUALITY "TQly" +#define ZSTR_TX_SNR "TSNR" +#define ZSTR_TX_NOISE "TNse" +#define ZSTR_PITCH "Ptch" +#define ZSTR_ROLL "Roll" +#define ZSTR_YAW "Yaw" +#define ZSTR_FLIGHT_MODE "FM" +#define ZSTR_THROTTLE "Thr" +#define ZSTR_QOS_A "FdeA" +#define ZSTR_QOS_B "FdeB" +#define ZSTR_QOS_L "FdeL" +#define ZSTR_QOS_R "FdeR" +#define ZSTR_QOS_F "FLss" +#define ZSTR_QOS_H "Hold" +#define ZSTR_BIND "BIND" +#define ZSTR_LAP_NUMBER "Lap " +#define ZSTR_GATE_NUMBER "Gate" +#define ZSTR_LAP_TIME "LapT" +#define ZSTR_GATE_TIME "GteT" +#define ZSTR_ESC_VOLTAGE "EscV" +#define ZSTR_ESC_CURRENT "EscA" +#define ZSTR_ESC_RPM "Erpm" +#define ZSTR_ESC_CONSUMPTION "EscC" +#define ZSTR_ESC_TEMP "EscT" +#define ZSTR_SD1_CHANNEL "Chan" +#define ZSTR_GASSUIT_TEMP1 "GTp1" +#define ZSTR_GASSUIT_TEMP2 "GTp2" +#define ZSTR_GASSUIT_RPM "GRPM" +#define ZSTR_GASSUIT_FLOW "GFlo" +#define ZSTR_GASSUIT_CONS "GFue" +#define ZSTR_GASSUIT_RES_VOL "GRVl" +#define ZSTR_GASSUIT_RES_PERC "GRPc" +#define ZSTR_GASSUIT_MAX_FLOW "GMFl" +#define ZSTR_GASSUIT_AVG_FLOW "GAFl" +#define ZSTR_SBEC_VOLTAGE "BecV" +#define ZSTR_SBEC_CURRENT "BecA" +#define ZSTR_RB3040_EXTRA_STATE "RBES" +#define ZSTR_RB3040_CHANNEL1 "CH1A" +#define ZSTR_RB3040_CHANNEL2 "CH2A" +#define ZSTR_RB3040_CHANNEL3 "CH3A" +#define ZSTR_RB3040_CHANNEL4 "CH4A" +#define ZSTR_RB3040_CHANNEL5 "CH5A" +#define ZSTR_RB3040_CHANNEL6 "CH6A" +#define ZSTR_RB3040_CHANNEL7 "CH7A" +#define ZSTR_RB3040_CHANNEL8 "CH8A" +#define ZSTR_ESC_VIN "EVIN" +#define ZSTR_ESC_TFET "TFET" +#define ZSTR_ESC_CUR "ECUR" +#define ZSTR_ESC_TBEC "TBEC" +#define ZSTR_ESC_BCUR "CBEC" +#define ZSTR_ESC_VBEC "VBEC" +#define ZSTR_ESC_THR "ETHR" +#define ZSTR_ESC_POUT "EOUT" +#define ZSTR_SMART_BAT_BTMP "BTmp" +#define ZSTR_SMART_BAT_BCUR "BCur" +#define ZSTR_SMART_BAT_BCAP "BUse" +#define ZSTR_SMART_BAT_MIN_CEL "CLMi" +#define ZSTR_SMART_BAT_MAX_CEL "CLMa" +#define ZSTR_SMART_BAT_CYCLES "Cycl" +#define ZSTR_SMART_BAT_CAPACITY "BCpT" +#define ZSTR_CL01 "Cel1" +#define ZSTR_CL02 "Cel2" +#define ZSTR_CL03 "Cel3" +#define ZSTR_CL04 "Cel4" +#define ZSTR_CL05 "Cel5" +#define ZSTR_CL06 "Cel6" +#define ZSTR_CL07 "Cel7" +#define ZSTR_CL08 "Cel8" +#define ZSTR_CL09 "Cel9" +#define ZSTR_CL10 "Cl10" +#define ZSTR_CL11 "Cl11" +#define ZSTR_CL12 "Cl12" +#define ZSTR_CL13 "Cl13" +#define ZSTR_CL14 "Cl14" +#define ZSTR_CL15 "Cl15" +#define ZSTR_CL16 "Cl16" +#define ZSTR_CL17 "Cl17" +#define ZSTR_CL18 "Cl18" +#define ZSTR_FRAME_RATE "FRat" +#define ZSTR_TOTAL_LATENCY "TLat" +#define ZSTR_VTX_FREQ "VFrq" +#define ZSTR_VTX_PWR "VPwr" +#define ZSTR_VTX_CHAN "VChn" +#define ZSTR_VTX_BAND "VBan" +#define ZSTR_SERVO_CURRENT "SrvA" +#define ZSTR_SERVO_VOLTAGE "SrvV" +#define ZSTR_SERVO_TEMPERATURE "SrvT" +#define ZSTR_SERVO_STATUS "SrvS" From d7b360673f0b0dfba900d613251d2389576d5ba7 Mon Sep 17 00:00:00 2001 From: 3djc Date: Fri, 18 Dec 2020 08:17:41 +0100 Subject: [PATCH 08/13] More font fixes --- radio/src/fonts/std/font_04x06_extra.png | Bin 313 -> 4045 bytes radio/src/fonts/std/font_10x14_extra.png | Bin 383 -> 4007 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/radio/src/fonts/std/font_04x06_extra.png b/radio/src/fonts/std/font_04x06_extra.png index c8df54ee0e637986c3caec9d0be99b749c297ff2..aa90d53eca9ac51da2870d7085330c25e9597f00 100644 GIT binary patch literal 4045 zcmV;;4>ItHP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+O3&sawNMAg#YstJ_1Q_!*RGq_y#_{Kd?&DXrAUd z?67*I?yj!pf=nb59Jl}V&*T2Vk5o-A<=Tpt;`vFMGZ!uRXW z*Y|_SCE;0~w`ITgcdqBJFVys2AK$OLIzMN626{jE7*K5H$cy*B_6{WRxgOs4PT%kK z^vibMU#WM9&zpaLpDMvvnTrx#+!Dm|*S;9#`R!bb_iy7SFYUfg_iz0pPYZ_9_o4rAVkcaSxgWR@FhqNCHNX+4S_f|@ae2PN{RynLe6mocfdxZ01nx} z+`M3y2IXjD32rIg`MO$`q9EIGNHbICQgthpB{spL{hEv8YuN=-G_ zQfqBhYj4t0%dNE9TGQ4wsvu!mi&m#iReNXB&d{B2ckbwY#33V%Jj$q}4IO<#pP6Q! zW!BlI&c5Q3Mf$I@s#|U8>N{+xwA0SJ?7G|5-49$la?;7CoO;^P(?3yrQT>iu_zk(g zM=iXl8Di<)SHDo>a;+aj1e23&n1NVK0mQ2z0HLE{=37W98gho2*GN+22x=i4I4c-p zAeeTD`GimGzL5J{++0ro6>jlQ$T@@V|ACw{=w9UhirWvUt$r(tT!1VKEv8-$!p2QK zwr-X0r)QQoO3!|`MVLq zF&S&EOXD(SO|hSyWvW(7Eb+~G-L2Qd2ijyaCGS!>f#}XY_c=+%JR`3@D~n5U-VumB z)FAGYI##=Qcjg|jEyUW?Zj!NC$Z7e^c)~mYw#tZYrLYrGO{oU8cWt8Q5_heoqnhL~s{M1_|!Nstmtabl!d)zbormk$MYiBkLKm4ina@iY{SI z>KdcNr7%0nQxTZs%UCmxUA#@#N~KOP&+=&`IcGS#EY<#o-cPQ_k2=dZ%-F`5sTS>F z!Pe48SeEHl)MVz+QXuto?$js~&O$w~C&V$=Il~zS(bObMZ1_D%Hns-U3gJ5!lv5fo zXl%saswGsuD+1+6S*--U1vwk&abM%uAUqu-6vK4iH*1PwKt9Fy!IQIL$bx02 zsWM2cCk()?Gptkc+3Tz%dse8pnB(jXk))P2%RYnsgtq2b&cI~~3t(P^hNRf7Sl!V$ z+TEN~03o!p1JNVMWW)&Lj97M=+&lbH2e@_hwN{mJ=9uJvAN5o?K5Ky#e?aLQNaUHz z|7kVJxWfjK5xbIXWTMD4ta2d8r2g30n%eqE1>-;-qyc9omC_;tv3aYZi1r+3CJ6_d zlJJp}HdKoPK*;0fj$~CtXF>Ln*g|8U6a(#~issZC34mAX zIXgniMQlIFRjE5r;C5bnXgv<4h`HOh)>dr0=>p$GO=I%APZ_J~1$zp~LwXPi(1PQH zs9gfIy{v^8-Vj(90rH@r&H$%i2mpSJR(vD+V4!6y-lOr2TqbLt6A%I5tl~zIT!;_O z5f+TSa%A`EI{_%Mfw~nbwi98M7Pe`66tp0Zg@%gLZmNd7FSuJOLN4W~#yzhpDV1zv zlVa6KZN5DHk-+XNpJv_U1_6Z2ZB(0Jd;C{i{q!|5<%_zcf<*R+;T<~xK$U zg>@6%wmfBmzOTr&wH{p`1MCeqZxdz-0$C2bo+Itqgi89k>jlCgt^ zoUB@sz!!OG=JK#fK1zo*KTq*sows~g{H%cN%}NK%AtSP7SC@Fb1WFGJx9if{oRd_m zTEzMWA4twj(>88?;U|ubkXSC{VyRTU-na1#s+_dcCU;XewV_amDRh2j({F+o$*W+t zAoWvHw^r4Rzz@&ti^O0cp)fZbNzaQUFxKuhreYA_cf$SkO^h_CPo)|iR-VR292XI- zGnNHfG{^89vB4$P+UZb%w(M2*B)He=Wuv%S2}>LAh9JXTI*vfrMz+2-5+1V42v}t` z3^nj75x%5p8Nl%j;fb87c4aP}d)^n{;vNQnHbW3W?O2 zc+G1|Xw8_=CYzDF>an54i4kn35=_Ku-kMjVI7VBcVsbk=O7I~S_KFWDVu};k9fyiOq98r7 zYGfqhc?rsdw5i~makc4?=$LU_61-GYI-*j81gzIT;DIqV9Ut2ZT`97ej;p>?YmvMW z3O;cFi>}6^DJp(h+lnS75!cl%n=>Xb;!myrMn2bJ zP3QyiBr+_r&2nvHu;~*9J%u$QzCIkrdlR39g|x6!nDHl&Rq;CeEZh-VMD^pdQq5Dj ziJnev6awTQdBy5u7#i{AG6}zq`8V^b+y{G#Ra5-VhqPetfgnbwR>DRQsvqr7VC&q# zA|XnBL@clqtjsnq(yzcFu#l*s5#Y|+8cV_-bwUS_RGVejiFHP68kr@qp)SPv(RKVX zA_Y`naFq&g&;!gvf{r^{7q%8URD>Ks$NDt#YGcx{`qFNV#n4%8oGBfYg5){Aon{nR zHo;^?-I{_`$?(fHkRqEX1EN$4Q@22=E2f{Aj844RU|V;CW`wXtl;K$C)$DN>3eINK zsA!XAvNTl;m9RL>njUCRtald!fQ`?S5u}J{RMU7m$TNf8fmC9lJM|^^Nz&3(HhdY; zDC!I8OSS{`@S$z7&WDc9+9oL&9D3UQ7`5D>%&@kAAws0qQB6Iq$jl9khC`89X+_A1 z3X|l~A^u$v(yK?P5WSH(!jge_<}q=mX)oz`c4$x4@>F;_N%M_~-U=TGL+_DRrW>>9 zpxGIDZ;Rqe+}g^ty?6>%RF)tJ85__Sw`UU|S_;18%}00^`OqKt-|*QxNU=_Bu0qb) zF~=C@PKcn@#0oH3L%43Tl&K5(GB-&h1jXi%Y}M{KtM8EQWc@dVN;F>Bh3ljwW4H9proKg189ie@8^gO)4pV?vL`!1N$fYbBaQe4Dw#Nj}@L;e?vW;tSZ_*l0bAS$BV1 zP-o}FS13A2!0?8)!!)GXDpxD^re!!yD%zoeq&}dy3f50O6dd7B<=E@0Y>${T z4mNXGD{oy7NlW3qzqEmk-e7_CxqVR4gI}aQ#p{WAv`thIoK0d{J0j=9nenxNha|?I z)~rutk9l5eRGvNJ?=%MZ(Zv!HYnh{+;@`_(5!iV-D@)}VXBharE{PL@ogNc}@=hj=~} z9;y9nfuHgS-M;0+LcxWW=*K42gGxmKVrq1V0LGroFuQ?$r|$nv{FJ{Trdgs zXw(}P)Z-9C`0l|>sHG({jn*DCXDTmu{kX$Uh z+FmiYi^hEs3nBEUxJGi$zT5QI)1y{UL}7<14gCNv5jL2grO(SIT#+26@d!qDGN)}d zE9+>SpfKGU{jU#5M-M)vi5a6ZcaZW7>kEB>t;bX!jXzJno%h?X(QG+hHEY~=`=bH= zc(#7lJPyqui@PIq$n3v+o~nztxR$kF!|I-cG~2Nid2U9(lnAjN;IT1HSrzRKONcU2IPuZ-?P_ z#B`VTF3j4{UzR2)j~!>C?Go>CX2KZ4!$()M~J^7?EVyDtB&s9 z(|7vbr{CBW00006P)t-s00030|No`gpWOfe00Cl4M??UK1szBL000SaNLh0L01FcU z01FcV0GgZ_00007bV*G`2jmPA2M!UBotoGH001#bL_t&t*JJqqegFUe4F4bRus_J~ z|L*?C^$h>Nz0J&K`2StH@-2|ue!!05KL`K-NWUAzIgbIk00000NkvXXu0mjf|6rlx literal 313 zcmeAS@N?(olHy`uVBq!ia0vp^azM<^2qYNHCmo0ZQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fIO>_%)r1c48n{Iv*t(u1=&kHeO=ifGVw7eD^?0Cz6J{Ec)B=-a9mH`@%{gQ`L=!R z|05+%{af}namU`$mr`xkJI`-7xU>8GhvtX&0b&dVnxa9n4fRbxeX1p{5hW>!C8<`) zMX5lF!N|bST-U%z*U%)yz`)Ab)XLac+rZGuz`$X$`4bckx%nxXX_dG&7@q5o0BT_H MboFyt=akR{0B2NH#{d8T diff --git a/radio/src/fonts/std/font_10x14_extra.png b/radio/src/fonts/std/font_10x14_extra.png index 5050a46e6e4a934bbd8f107781608db1054ed3ef..77b66edaaf57b1773abeb8a488535a4d125e576f 100644 GIT binary patch literal 4007 zcmV;Y4_NStP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+O3&swj8^Sg#U9DUIGV@AeTdMIHz~u<@-Zc>S}n> zYrET3x;11mnIsU12&BUK=l|UB4<1EJ3sSYW(OTpoLq?u_=<)OTyr(G7>+`7ZPkjIB zcu3!V$Q&xXm(SOB-tm*;_4^4b?{WM2c+mCE)8C1{&HPSS{K}aR@3{U>RPyI|dcTM9 zo;T%(?Yw_QpDDfu|N32&VC>4ll0!ZvmB_1~n9JvHax6cuok6km=X2#%O8-N zf>+A#V;AQ;qWm0+5ZgPT{Su@1c&fjT-4mf-vXeczR9NXTp^8=iS|vBcADv?^SrOLSfb>U zmG_)iF3+)EG>^PUKqBxw)6H5&*@2AYvdCKDaQ<3LdagU3>#fwe@=lD*iOD>pe|d)A z9sIvMzb3lZp_|eJ#PY<7*X#gf8J;Oje$YWFrHq*1S`= zf)Y9OcPKGAQ5~<)vrGueaOO;S-ZB=Wpqs~^EwAxzJ z<{UM(sA$!us$GZ9Ub^(!Ti4$E=yT*zps+gH&@lQKV@@tQnR;^eWW=17t(aJ~W@_Dr z%>{gxth(CL)z?^a=Uq1CzuVTZ`yP9qbb!*4Q%^g3`Wa_luy)IpTW`C1`yF?FW$n%C z&sj^qWbW^?mfoy+#^f2N-?PSH)o)WIr<3YABV$<-8CTB$fX<#X>RBXv<~(O{WQw9@ zvX-hRXD81X8I+T9z3D4=-!u2Oc?(tkqrBxmWiEK?{u`MKp1L=4f6d!(vbN`=D4%Nd zD)gAfav?Sb&D{A1AOGq7CT1GtrWM(v*3{c_^0`FKw8mwjtisOg-nRC&q4G$r@_LKi z*_01UYdQJqBKapCs|=G}#ylr(olMnFIGIh=mij(fYRL!wYVaa^?QGR|SZ=&=-8i); zU2tMzyJ@#}&u+J^+87fCIWi`-*7{vbhuBy>_D;5HyTTZ#Ih~_7nz1fPC}9L8yPZZV zlr=T$K|LqcD%sDLe#Xd zrjX4Sj6CeI^d2_UkjdLp1%F&gycmy*Dm;$8TLyKl+wGoWyOh-`@afdrA*ppw&@`#| zxbnD7dOTa|NEGQBLQS#jNtkrY_1Svzi+~3`*%yIibJ>vrjQ_CO>Hgm9wo7{N>CL5V zWP9R3^nnz$w^O}&5db@7QafjtutXc1=tC>py6{Wgep2iGi4VCtlvX}WUr*ompc=4) z2k<(!OhB#@nk7QIcM~vq+h*sz^UW!_dO1dD5EAU=Owy8%N9tR|KJVb*n|bV5Y~Cug?p9AYFW4|Z=ZnI6(cE#=gyw!5ZnC7xd4@X%$G?I~C_KT^OZ z0P1j79(F>JyGnK_!88u4Ib|@kX;wLiF|~p%a^?mZ-~eAsk^pp$8)QcmZ^M28=ACSo z3L04nZg%R1J(}1ug{l$mVu=NwLP|TtgeQYi#yuRmHw$bSZ@9j#;Y&s!^SliJ#=qH6 z-EWQ6+uL0g%|JwV3thk075aeB z62BIBAE^FJR}}S!upYWHj(7`UlXyE%jNx#Gl^fAl7?BGm7>`BhsOb*%4^F~bjvEcY zgwuzbg{J0=R9QhsI;dIliCb+@l$k;Lc?(eFZ0Ms;SQoh)lVzk{iH*_>(n}uc;n+s2 zC;>!S44!dqpkC^-3!FxFmqBU;dzG|61a9O~j_Q(!-XY!%`3qZ+&xCjz(HiK)UKa5m zv+<46)r%p^+t4fIoC?dhG$PkIiCQ#=T7*3U;o;I7?iDNt6JFUH#yQIn3)f}b#Xc7m zU=_(QaCo`ggjUsmCtgqR0}ZeF2L%{t@7`XVi+mxU55adiqh!S_Y-^(`%+?|OLA7n- z$u-iVJi~-9;z1TV`vCCi;&{gNSTW78ULQzsvx|AeXM%DT2=`{U?^5rhm9aRf(51iP{FDs(Hw=~3_b7y%oF2h ziZ)+d?WtfnKa$^|5yycLGJMC4NW&EB653l$Nf&ssGzz5EGM0@dz8`pHIa!nEjOHLF z;K(iC+|~ET!l2^TGZ)0h!7~o!nxXWx*gOjJ7$!^`%fHCo#+Sa@9QwuZ4=QRh5domE z_;yGZo}3Q)Zdo`WEd_44j=@QFQ@|jOBBmA*X;6n7(I>$$&GgMOQQFSeEL#E0Q-Fua zTx>^0-x-e+Cqy|TmuPrGn^&SaMjCv;yaF8_zY-s!I0CSmZmJj85F8bqCc=!AE-I=3 z{8_NN7&Gt{FpFy>V6=6yoG9iCW?#=bo0HL$n`>3Tv&MuU5ee*}Z#^H{nRN{}8~Ev< zub}Ojdf#%qZ$G|7ioow+K{(idTp`E-f}jsT8x)WIpK+9mYtoS1zR-wCA=6J2w~e-= z;>A9-HZLdzLkZO2*s+Kn-@_8Y1%{SRDABM5CuFR`F(d~Z4r2}gjpw42 zr+RsJ)SOO6?s#7?(=(BEs;A9FD<1E*Tme0k7!ydO;53|1oTF(zkmI>Pau_L7pDk7z zN{khPYToO5ped?00rD##g!u8halU?+&ABsj%=Lz2gIy+xgmUt8sRpQH$K--wS_Z0# z47v4IL>mbQP_!jpoXf!}Zg%Git&h3SaKYR(W5_uH?=&a1J3yF3;pqlVEsT;|N(wd? zq-VOdCGgIsL&G;Zr8#}*6tieVLa;4BFB&8zT!^zFEax}`IEk~VXnENbVTOQs@VXnz6ZZKW>>e}POnB72epy@S&!9zijOFapH3Keq zD)0jtXHbVsZSrV8{Q&T?N9fk{@>bfzb!mg0{~_Rnd~>0OV`NQk4=0`_y9K6Epb%=Z zfKgp2D#isnLiXH7Je;=?TBM^dg%DD!8#?NeIB3taQ=X0X2$ttj19F2b;{GC({8Sg^ ziG|0`(W(!?IGVHCpqhcefGyp|^^sgw5|+9wzt<8XCw}li4Mu!0_L82wWT57SNugDD zCN#l|3KT|C9$lm4L3c*>=qmb(VL1sA9m+cC+m6!~p`Hslrl0`WE#h;z8mM*Dfkuh~ zU<~5o_a5*TA@)I3*aT`z&({-?2Ispgbxi*7s;koQww)18Wa4SDSfbD98(Xry3k0DBmyBFK&Q zpYQ82z#BV=<#05e=g%@Yqxk_&6l1}V6xQt~EVDT=ACTyG8@#b!l@bRA z2xzZtXF4z83QdR_@s}+(-E`i*@Uj)2~q|yi6j9;7HJj0gJ@AA+j_^lxt zEzBNHWmDPoKpCzZSw_Z^yV=g_Uqbb_vd+_|I)MNicDwspIq=EYD<7tU-0&xOH+F`aWW5Es+%CSdRAO!LDmH9cC{68V=(@Y$q_Rt6= zP2D}L1f1N=pmL`_%mblwxC4spx6VMg8+xoJ&c?7@q#lx1nxWwL5{8h(G!Vd;pSBlA zzq8+Wn#I!54M9UFr#D2?WBXL*V40S7ZX6-!e{-`!k6NBi8LM!Nhq$?~MchIv{V7zeXC zo#DQLRP%ek3ujtnmo@1YnM_Fa7(fgL2VvD;Z}D*N_1@17@qfMH`|rK~#}iRAWS0Ky zU*U+$n?xgbF8}}l22e~?MF0Q*|NsA`*`M720004EOGiWihy@);00009a7bBm000XU z000XU0RWnu7ytkO2XskIMF->z5(f`3+V8u^0001TNkl zaS+qy%yB!Xn#W*fMgRZ9|38A5c82ml7=Q?*mf0T2`~zmTV{r})003+Ud>doKu@nFR N002ovPDHLkV1jskzBT{= literal 383 zcmeAS@N?(olHy`uVBq!ia0vp^Hb5-E2qYMiUMfxkQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fIEal|aXtA5Kcl>a-Ty`- zxkD1{|NbQZ_&$Ef_Fw(C{Xcn$p4@-_(>7XgUQ@l3T)}kYM|zFR zPanp^&yCZ&=C7Dm!I(G{(%oan+-b(8y Date: Fri, 18 Dec 2020 08:38:26 +0100 Subject: [PATCH 09/13] More recent chinese translation --- radio/src/translations/cn.h.txt | 376 ++++++++++++-------------------- 1 file changed, 142 insertions(+), 234 deletions(-) diff --git a/radio/src/translations/cn.h.txt b/radio/src/translations/cn.h.txt index 6d9bb69d3..801d4252a 100644 --- a/radio/src/translations/cn.h.txt +++ b/radio/src/translations/cn.h.txt @@ -56,7 +56,7 @@ #define TR_VBLMODE "关闭" "按键" "操控" "全部" "开启" #define LEN_TRNMODE "\004" -#define TR_TRNMODE "关\0" "相加" "替换" +#define TR_TRNMODE "关\0 " "相加" "替换" #define LEN_TRNCHN "\003" #define TR_TRNCHN "CH1CH2CH3CH4" @@ -76,27 +76,25 @@ #define LEN_VLCD "\006" #define TR_VLCD "Normal" "Optrex" -#define LEN_VPERSISTENT "\014" -#define TR_VPERSISTENT "OFF\0 " "Flight\0 " "Manual Reset" +#define LEN_VPERSISTENT "\016" +#define TR_VPERSISTENT "禁用\0 " "随飞行记录复位" "随手动复位\0 " #define LEN_COUNTRY_CODES "\004" #define TR_COUNTRY_CODES "美国" "日本" "欧洲" -#define LEN_USBMODES "\008" -#define TR_USBMODES "询问\0 " "游戏柄 \0 " "U盘 \0 " "串行\0 " +#define LEN_USBMODES "\006" +#define TR_USBMODES "询问\0 " "游戏柄" "U盘\0 " "串行\0 " -#define LEN_JACK_MODES "\006" -#define TR_JACK_MODES "询问\0" "音频\0" "教练\0" +#define LEN_JACK_MODES "\004" +#define TR_JACK_MODES "询问" "音频" "教练" #define LEN_TELEMETRY_PROTOCOLS "\017" -#define TR_TELEMETRY_PROTOCOLS "FrSky S.PORT\0 ""FrSky D\0 ""FrSky D (cable)""TBS Crossfire\0 ""Spektrum\0 ""AFHDS2A IBUS\0 ""Multi Telemetry" - -#define TR_MULTI_CUSTOM "自定义" +#define TR_TELEMETRY_PROTOCOLS "FrSky S.PORT\0 " "FrSky D\0 " "FrSky D (cable)" "TBS Crossfire\0 " "Spektrum\0 " "AFHDS2A IBUS\0 " "Multi Telemetry" #define LEN_VTRIMINC "\004" #define TR_VTRIMINC "指数" "很小" "较小" "中等" "较大" -#define LEN_VDISPLAYTRIMS "\008" +#define LEN_VDISPLAYTRIMS "\010" #define TR_VDISPLAYTRIMS "不显示\0 " "改变时\0 " "始终显示" #define LEN_VBEEPCOUNTDOWN "\004" @@ -113,154 +111,121 @@ #define LEN_RETA123 "\001" -#if defined(PCBHORUS) - #define TR_RETA123 "RETA13245LR" -#elif defined(PCBX9E) - #define TR_RETA123 "RETA1234LRLR" -#elif defined(PCBTARANIS) || defined(REVX) - #define TR_RETA123 "RETA123LR" -#elif defined(PCBSKY9X) - #define TR_RETA123 "RETA123a" -#else - #define TR_RETA123 "RETA123" -#endif - -#if defined(PCBSKY9X) && defined(REVX) - #define LEN_VOUTPUT_TYPE "\011" - #define TR_VOUTPUT_TYPE "OpenDrain""PushPull\0" -#endif +#define TR_RETA123 "RETA13245LR" #define LEN_VCURVEFUNC "\003" -#define TR_VCURVEFUNC "---""x>0""x<0""|x|""f>0""f<0""|f|" +#define TR_VCURVEFUNC "---" "x>0" "x<0" "|x|" "f>0" "f<0" "|f|" #define LEN_VMLTPX "\004" -#define TR_VMLTPX "相加""相乘""替换" +#define TR_VMLTPX "相加" "相乘" "替换" #define LEN_VMLTPX2 "\002" -#define TR_VMLTPX2 "+=""*="":=" +#define TR_VMLTPX2 "+=" "*=" ":=" #define LEN_VMIXTRIMS "\004" #if defined(PCBHORUS) - #define TR_VMIXTRIMS "禁用""启用""Rud""Ele""Thr""Ail""T5\0""T6\0" + #define TR_VMIXTRIMS "禁用" "启用" "Rud\0" "Ele\0" "Thr\0" "Ail\0" "T5\0 " "T6\0 " #else - #define TR_VMIXTRIMS "禁用""启用""Rud""Ele""Thr""Ail" + #define TR_VMIXTRIMS "禁用" "启用" "Rud\0" "Ele\0" "Thr\0" "Ail\0" #endif -#if LCD_W >= 212 - #define TR_CSWTIMER "定时\0" - #define TR_CSWSTICKY "粘滞\0" - #define TR_CSWRANGE "范围\0" - #define TR_CSWSTAY "边沿\0" -#else - #define TR_CSWTIMER "Tim\0 " - #define TR_CSWSTICKY "Stky\0" - #define TR_CSWRANGE "Rnge\0" - #define TR_CSWSTAY "Edge\0" -#endif +#define TR_CSWTIMER "定时\0 " +#define TR_CSWSTICKY "粘滞\0 " +#define TR_CSWRANGE "范围\0 " +#define TR_CSWSTAY "边沿\0 " - #define TR_CSWEQUAL "a=x\0 " +#define TR_CSWEQUAL "a=x\0 " -#define LEN_VCSWFUNC "\005" -#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a~x\0 ""a>x\0 ""ax""|a|b\0 ""ax\0 " "ax\0" "|a|b\0 " "a= 212 - #define TR_SF_SAFETY "锁定通道值   " -#elif defined(OVERRIDE_CHANNEL_FUNCTION) - #define TR_SF_SAFETY "Overr.\0 " +#if defined(OVERRIDE_CHANNEL_FUNCTION) + #define TR_SF_SAFETY "锁定通道值\0 " #else - #define TR_SF_SAFETY "---\0 " + #define TR_SF_SAFETY "---\0 " #endif -#define TR_SF_SCREENSHOT "截屏      " -#define TR_SF_RESERVE "[保留]\0 " +#define TR_SF_SCREENSHOT "截屏\0 " +#define TR_SF_RESERVE "[保留]\0 " -#define TR_VFSWFUNC TR_SF_SAFETY "教练     " "摇杆值存储到微调" "复位      " "设置      " TR_ADJUST_GVAR "音量    " "设置失控保护   " "测距模式    " "模块对频    " TR_SOUND TR_PLAY_TRACK TR_PLAY_VALUE TR_SF_RESERVE TR_SF_PLAY_SCRIPT TR_SF_RESERVE TR_SF_BG_MUSIC TR_VVARIO TR_HAPTIC TR_SDCLOGS "背光      " TR_SF_SCREENSHOT TR_SF_TEST +#define TR_VFSWFUNC TR_SF_SAFETY "教练\0 " "摇杆值存储到微调" "复位\0 " "设置\0 " TR_ADJUST_GVAR "音量\0 " "设置失控保护\0 " "测距模式\0 " "模块对频\0 " TR_SOUND TR_PLAY_TRACK TR_PLAY_VALUE TR_SF_RESERVE TR_SF_PLAY_SCRIPT TR_SF_RESERVE TR_SF_BG_MUSIC TR_VVARIO TR_HAPTIC TR_SDCLOGS "背光\0 " TR_SF_SCREENSHOT TR_SF_TEST -#define LEN_VFSWRESET TR("\004", "\008") +#define LEN_VFSWRESET TR("\004", "\010") #define TR_FSW_RESET_TELEM TR("Telm", "回传参数") -#if LCD_W >= 212 - #define TR_FSW_RESET_TIMERS "计时器1\0 ""计时器2\0 ""计时器3\0 " -#else - #define TR_FSW_RESET_TIMERS "Tmr1""Tmr2""Tmr3" -#endif +#define TR_FSW_RESET_TIMERS "计时器1\0" "计时器2\0" "计时器3\0" -#define TR_VFSWRESET TR(TR_FSW_RESET_TIMERS "All\0" TR_FSW_RESET_TELEM, TR_FSW_RESET_TIMERS "Flight\0 " TR_FSW_RESET_TELEM) +#define TR_VFSWRESET TR_FSW_RESET_TIMERS "Flight\0 " TR_FSW_RESET_TELEM -#define LEN_FUNCSOUNDS TR("\004", "\006") -#define TR_FUNCSOUNDS TR("Bp1\0""Bp2\0""Bp3\0""Wrn1""Wrn2""Chee""Rata""Tick""Sirn""Ring""SciF""Robt""Chrp""Tada""Crck""Alrm", "Beep1 ""Beep2 ""Beep3 ""Warn1 ""Warn2 ""Cheep ""Ratata""Tick ""Siren ""Ring ""SciFi ""Robot ""Chirp ""Tada ""Crickt""AlmClk") +#define LEN_FUNCSOUNDS "\006" +#define TR_FUNCSOUNDS "Beep1\0" "Beep2\0" "Beep3\0" "Warn1\0" "Warn2\0" "Cheep\0" "Ratata" "Tick\0 " "Siren\0" "Ring\0 " "SciFi\0" "Robot\0" "Chirp\0" "Tada\0 " "Crickt" "AlmClk" #define LEN_VTELEMCHNS "\004" -#define LENGTH_UNIT_IMP "ft\0" -#define SPEED_UNIT_IMP "mph" -#define LENGTH_UNIT_METR "m\0 " -#define SPEED_UNIT_METR "kmh" +#define LENGTH_UNIT_IMP "ft\0 " +#define SPEED_UNIT_IMP "mph\0" +#define LENGTH_UNIT_METR "m\0 " +#define SPEED_UNIT_METR "kmh\0" + +#define LEN_VUNITSSYSTEM "\004" +#define TR_VUNITSSYSTEM "公制" "英制" -#define LEN_VUNITSSYSTEM TR("\006", "\004") -#define TR_VUNITSSYSTEM TR("Metric""Imper.", "公制""英制") #define LEN_VTELEMUNIT "\003" -#define TR_VTELEMUNIT "-\0 ""V\0 ""A\0 ""mA\0""kts""m/s""f/s""kmh""mph""m\0 ""ft\0""@C\0""@F\0""%\0 ""mAh""W\0 ""mW\0""dB\0""rpm""g\0 ""@\0 ""rad""ml\0""fOz""mlm""Hz\0""mS\0""uS\0" +#define TR_VTELEMUNIT "-\0 " "V\0 " "A\0 " "mA\0" "kts" "m/s" "f/s" "kmh" "mph" "m\0 " "ft\0" "@C\0" "@F\0" "%\0 " "mAh" "W\0 " "mW\0" "dB\0" "rpm" "g\0 " "@\0 " "rad" "ml\0" "fOz" "mlm" "Hz\0" "mS\0" "uS\0" #define STR_V (STR_VTELEMUNIT+1) #define STR_A (STR_VTELEMUNIT+4) @@ -269,130 +234,105 @@ #define TR_VTELEMSCREENTYPE "禁用\0 " "数值\0 " "条形图" "脚本\0 " #define LEN_GPSFORMAT "\004" -#define TR_GPSFORMAT "DMS\0""NMEA" +#define TR_GPSFORMAT "DMS\0" "NMEA" -#define LEN2_VTEMPLATES 12 -#define LEN_VTEMPLATES "\014" -#define TR_TEMPLATE_CLEAR_MIXES "Clear Mixes " -#define TR_TEMPLATE_SIMPLE_4CH "Simple 4-CH " -#define TR_TEMPLATE_STICKY_TCUT "Sticky-T-Cut" -#define TR_TEMPLATE_VTAIL "V-Tail " -#define TR_TEMPLATE_DELTA "Elevon\\Delta" -#define TR_TEMPLATE_ECCPM "eCCPM " -#define TR_TEMPLATE_HELI "Heli Setup " -#define TR_TEMPLATE_SERVO_TEST "Servo Test " +#define LEN2_VTEMPLATES 12 +#define LEN_VTEMPLATES "\014" +#define TR_TEMPLATE_CLEAR_MIXES "Clear Mixes\0" +#define TR_TEMPLATE_SIMPLE_4CH "Simple 4-CH\0" +#define TR_TEMPLATE_STICKY_TCUT "Sticky-T-Cut" +#define TR_TEMPLATE_VTAIL "V-Tail\0 " +#define TR_TEMPLATE_DELTA "Elevon\\Delta" +#define TR_TEMPLATE_ECCPM "eCCPM\0 " +#define TR_TEMPLATE_HELI "Heli Setup\0 " +#define TR_TEMPLATE_SERVO_TEST "Servo Test\0 " #define LEN_VSWASHTYPE "\004" -#define TR_VSWASHTYPE "---\0""120\0""120X""140\0""90\0" +#define TR_VSWASHTYPE "---\0" "120\0" "120X" "140\0" "90\0" -#if defined(PCBHORUS) - #define LEN_VKEYS "\004" - #define TR_VKEYS "菜单" "退出" "确认" "向上" "向下" "向右" "向左" -#elif defined(PCBXLITE) - #define LEN_VKEYS "\005" - #define TR_VKEYS "Shift""Exit\0""Enter""Down\0""Up\0 ""Right""Left\0" -#elif defined(RADIO_T12) - #define LEN_VKEYS "\005" - #define TR_VKEYS "Exit\0""Enter""Down\0""Up\0 ""Right""Left\0" -#elif defined(PCBTARANIS) - #define LEN_VKEYS "\005" - #define TR_VKEYS "Menu\0""Exit\0""Enter""Page\0""Plus\0""Minus" -#else - #define LEN_VKEYS "\005" - #define TR_VKEYS "Menu\0""Exit\0""Down\0""Up\0 ""Right""Left\0" -#endif +#define LEN_VKEYS "\004" +#define TR_VKEYS "菜单" "退出" "确认" "向上" "向下" "向右" "向左" #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\207Rud""\207Ele""\207Thr""\207Ail" +#define TR_STICKS_VSRCRAW "\207Rud" "\207Ele" "\207Thr" "\207Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\213Rud""\213Ele""\213Thr""\213Ail""\213T5\0""\213T6\0" + #define TR_TRIMS_VSRCRAW "\213Rud" "\213Ele" "\213Thr" "\213Ail" "\213T5\0" "\213T6\0" #else - #define TR_TRIMS_VSRCRAW "\213Rud""\213Ele""\213Thr""\213Ail" + #define TR_TRIMS_VSRCRAW "\213Rud" "\213Ele" "\213Thr" "\213Ail" #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\213Rl""\213Rr""\213Ed""\213Eu""\213Td""\213Tu""\213Al""\213Ar""\2135d""\2135u""\2136d""\2136u" + #define TR_TRIMS_SWITCHES "\213Rl" "\213Rr" "\213Ed" "\213Eu" "\213Td" "\213Tu" "\213Al" "\213Ar" "\2135d" "\2135u" "\2136d" "\2136u" #else - #define TR_TRIMS_SWITCHES TR("tRl""tRr""tEd""tEu""tTd""tTu""tAl""tAr", "\213Rl""\213Rr""\213Ed""\213Eu""\213Td""\213Tu""\213Al""\213Ar") + #define TR_TRIMS_SWITCHES TR("tRl" "tRr" "tEd" "tEu" "tTd" "tTu" "tAl" "tAr", "\213Rl" "\213Rr" "\213Ed" "\213Eu" "\213Td" "\213Tu" "\213Al" "\213Ar") #endif -#if defined(PCBSKY9X) - #define TR_ROTARY_ENCODERS "REa\0" - #define TR_ROTENC_SWITCHES "REa" -#else - #define TR_ROTARY_ENCODERS - #define TR_ROTENC_SWITCHES -#endif +#define TR_ROTARY_ENCODERS +#define TR_ROTENC_SWITCHES -#define TR_ON_ONE_SWITCHES "ON\0""One" +#define TR_ON_ONE_SWITCHES "ON\0" "One" #if defined(GYRO) - #define TR_GYR_VSRCRAW "GyrX""GyrY" + #define TR_GYR_VSRCRAW "GyrX" "GyrY" #else #define TR_GYR_VSRCRAW #endif #if defined(HELI) - #define TR_CYC_VSRCRAW "CYC1""CYC2""CYC3" + #define TR_CYC_VSRCRAW "CYC1" "CYC2" "CYC3" #else - #define TR_CYC_VSRCRAW "[C1]""[C2]""[C3]" + #define TR_CYC_VSRCRAW "[C1]" "[C2]" "[C3]" #endif #define TR_RESERVE_VSRCRAW "[--]" -#define TR_EXTRA_VSRCRAW "Batt""Time""GPS\0" TR_RESERVE_VSRCRAW TR_RESERVE_VSRCRAW TR_RESERVE_VSRCRAW TR_RESERVE_VSRCRAW "Tmr1""Tmr2""Tmr3" +#define TR_EXTRA_VSRCRAW "Batt" "Time" "GPS\0" TR_RESERVE_VSRCRAW TR_RESERVE_VSRCRAW TR_RESERVE_VSRCRAW TR_RESERVE_VSRCRAW "Tmr1" "Tmr2" "Tmr3" #define LEN_VTMRMODES "\004" -#define TR_VTMRMODES "OFF\0""ON\0 ""Strt""THs\0""TH%\0""THt" +#define TR_VTMRMODES "OFF\0" "ON\0 " "Strt" "THs\0" "TH%\0" "THt" #define LEN_VTRAINERMODES "\022" -#define TR_VTRAINER_MASTER_OFF "禁用\0 " -#define TR_VTRAINER_MASTER_JACK "教练主机/音频插孔\0 " -#define TR_VTRAINER_SLAVE_JACK "学生从机/音频插孔\0 " -#define TR_VTRAINER_MASTER_SBUS_MODULE "教练主机/SBUS模块\0 " -#define TR_VTRAINER_MASTER_CPPM_MODULE "教练从机/CPPM模块\0 " -#define TR_VTRAINER_MASTER_BATTERY "教练主机/串口\0 " -#define TR_VTRAINER_BLUETOOTH TR("Master/BT\0 ""Slave/BT\0 ", "教练主机/蓝牙\0 " "教练从机/蓝牙\0 ") -#define TR_VTRAINER_MULTI "Master/Multi" +#define TR_VTRAINER_MASTER_OFF "禁用\0 " +#define TR_VTRAINER_MASTER_JACK "教练主机/音频插孔\0" +#define TR_VTRAINER_SLAVE_JACK "学生从机/音频插孔\0" +#define TR_VTRAINER_MASTER_SBUS_MODULE "教练主机/SBUS模块\0" +#define TR_VTRAINER_MASTER_CPPM_MODULE "教练从机/CPPM模块\0" +#define TR_VTRAINER_MASTER_BATTERY "教练主机/串口\0 " +#define TR_VTRAINER_BLUETOOTH TR("Master/BT\0 ""Slave/BT\0 ", "教练主机/蓝牙\0 " "教练从机/蓝牙\0 ") +#define TR_VTRAINER_MULTI "教练主机/多协议\0 " -#define LEN_VFAILSAFE "\008" +#define LEN_VFAILSAFE "\010" #define TR_VFAILSAFE "未设置\0 " "失控保持" "自定义\0 " "无脉冲\0 " "接收机\0 " #define LEN_VSENSORTYPES "\006" #define TR_VSENSORTYPES "自定义" "运算\0 " #define LEN_VFORMULAS "\010" -#define TR_VFORMULAS "加\0 " "平均值\0 " "最小值\0 " "最大值\0 " "乘\0 " "总计值\0 " "单节电池\0" "Consumpt\0 " "距离\0 " +#define TR_VFORMULAS "加\0 " "平均值\0 " "最小值\0 " "最大值\0 " "乘\0 " "总计值\0 " "单节电池" "消耗量\0 " "距离\0 " #define LEN_VPREC "\004" -#define TR_VPREC "0.--""0.0 ""0.00" +#define TR_VPREC "0.--" "0.0 " "0.00" -#define LEN_VCELLINDEX "\007" -#define TR_VCELLINDEX "最低值\0""1\0 " "2\0 " "3\0 " "4\0 " "5\0 " "6\0 " "最高值\0" "差值\0" +#define LEN_VCELLINDEX "\006" +#define TR_VCELLINDEX "最低值" "1\0 " "2\0 " "3\0 " "4\0 " "5\0 " "6\0 " "最高值" "差值\0 " #define LEN_GYROS "\004" -#define TR_GYROS "GyrX""GyrY" +#define TR_GYROS "GyrX" "GyrY" #define LEN_TEXT_SIZE "\004" #define TR_TEXT_SIZE "标准" "小\0 " "较小" "中等" "双倍" -#define LEN_SUBTRIMMODES "\017" -#define TR_SUBTRIMMODES STR_CHAR_DELTA" (center only)""= (symetrical) " +#define LEN_SUBTRIMMODES "\010" +#define TR_SUBTRIMMODES STR_CHAR_DELTA "(中点)\0 " "= (整体)" // ZERO TERMINATED STRINGS -#if defined(COLORLCD) - #define INDENT - #define LEN_INDENT 3 - #define INDENT_WIDTH 12 - #define BREAKSPACE "\036" -#else - #define INDENT "\001" - #define LEN_INDENT 1 - #define INDENT_WIDTH (FW/2) - #define BREAKSPACE " " -#endif + +#define INDENT +#define LEN_INDENT 3 +#define INDENT_WIDTH 12 +#define BREAKSPACE "\036" #if defined(PCBFRSKY) #define TR_ENTER "[ENTER]" @@ -402,19 +342,10 @@ #define TR_ENTER "[MENU]" #endif -#if defined(COLORLCD) - #define TR_EXIT "RTN" - #define TR_OK TR_ENTER -#else - #define TR_EXIT "EXIT" - #define TR_OK TR("\010" "\010" "\010" "[OK]", "\010" "\010" "\010" "\010" "\010" "[OK]") -#endif +#define TR_EXIT "RTN" +#define TR_OK TR_ENTER -#if defined(PCBTARANIS) - #define TR_POPUPS_ENTER_EXIT TR(TR_EXIT "\010" TR_ENTER, TR_EXIT "\010" "\010" "\010" "\010" TR_ENTER) -#else - #define TR_POPUPS_ENTER_EXIT TR_ENTER "\010" TR_EXIT -#endif +#define TR_POPUPS_ENTER_EXIT TR_ENTER "\010" TR_EXIT #define TR_FREE "空闲" #define TR_DELETEMODEL "删除" BREAKSPACE "模型" @@ -439,13 +370,10 @@ #define TR_TTRIM_SW TR("T-Trim-Sw", INDENT "微调选择") #define TR_BEEPCTR TR("Ctr Beep", "中点蜂鸣") #define TR_USE_GLOBAL_FUNCS TR("Glob.Funcs", "全局功能可介入") -#if defined(PCBSKY9X) && defined(REVX) - #define TR_OUTPUT_TYPE INDENT "Output" -#endif #define TR_PROTO TR(INDENT "Proto", INDENT "协议") - #define TR_PPMFRAME INDENT "PPM帧" - #define TR_REFRESHRATE TR(INDENT "Refresh", INDENT "刷新速率") - #define STR_WARN_BATTVOLTAGE TR(INDENT "Output is VBAT: ", INDENT "注意: 输出电平为电池电压: ") +#define TR_PPMFRAME INDENT "PPM帧" +#define TR_REFRESHRATE TR(INDENT "Refresh", INDENT "刷新速率") +#define STR_WARN_BATTVOLTAGE TR(INDENT "Output is VBAT: ", INDENT "注意: 输出电平为电池电压: ") #define TR_WARN_5VOLTS "注意: 输出电平是5V" #define TR_MS "ms" #define TR_FREQUENCY INDENT "频率" @@ -464,7 +392,7 @@ #define TR_ELEDIRECTION "俯仰方向" #define TR_AILDIRECTION "横滚方向" #define TR_COLDIRECTION "螺距方向" -#define TR_MODE "摇杆模式" +#define TR_MODE "模式" #define TR_SUBTYPE INDENT "子类型" #define TR_NOFREEEXPO "指数曲线已满!" #define TR_NOFREEMIXER "混控数量已满!" @@ -473,7 +401,7 @@ #define TR_EXPO TR("Expo", "指数") #define TR_SIDE "单边" #define TR_DIFFERENTIAL "差动" -#define TR_OFFSET "偏移量" +#define TR_OFFSET "偏移量" #define TR_TRIM "使用微调" #define TR_DREX "DRex" #define DREX_CHBOX_OFFSET 30 @@ -488,13 +416,9 @@ #define TR_DELAYUP "上行延时" #define TR_SLOWDOWN TR("Slow dn", "下行慢动作") #define TR_SLOWUP "上行慢动作" -#define TR_MIXES "混控" +#define TR_MIXES "混控设置" #define TR_CV "曲线" -#if defined(PCBNV14) #define TR_GV "GV" -#else -#define TR_GV TR("G", "GV") -#endif #define TR_ACHANNEL "A\004通道" #define TR_RANGE INDENT "范围" #define TR_CENTER INDENT "中点" @@ -551,7 +475,7 @@ #define TR_STICKS "摇杆" #define TR_POTS "电位器" #define TR_SWITCHES "开关" -#define TR_SWITCHES_DELAY TR("Play delay", "延时播放 (开关经过)") +#define TR_SWITCHES_DELAY TR("Play delay", "延时播放(开关经过)") #define TR_SLAVE CENTER "从机" #define TR_MODESRC "Mode\006% Source" #define TR_MULTIPLIER "倍率" @@ -564,15 +488,10 @@ #define TR_MENUTOSTART "按 [Enter] 键开始" #define TR_SETMIDPOINT "将摇杆/旋钮/滑块居中后按[Enter]开始" #define TR_MOVESTICKSPOTS "转动摇杆/旋钮/滑块到最大边界后按[Enter]结束" -#elif defined(COLORLCD) +#else #define TR_MENUTOSTART TR_ENTER " 开始" #define TR_SETMIDPOINT "将摇杆、旋钮和滑块居中" #define TR_MOVESTICKSPOTS "转动摇杆、旋钮和滑块到最大边界" -#else - #define TR_MENUTOSTART CENTER "\010" TR_ENTER " 开始" - #define TR_SETMIDPOINT TR(CENTER "\004SET STICKS MIDPOINT", CENTER "\004将摇杆/旋钮/滑块居中") - #define TR_MOVESTICKSPOTS CENTER "\006转动摇杆/旋钮/滑块到最大边界" - #define TR_MENUWHENDONE CENTER "\006" TR_ENTER " 结束" #endif #define TR_RXBATT "Rx Batt:" #define TR_TXnRX "Tx:\0Rx:" @@ -615,11 +534,7 @@ #define TR_MENU_RADIO_SWITCHES TR("SWITCHES", "开关及按键测试") #define TR_MENU_RADIO_ANALOGS TR("ANALOGS", "类比输入测试") #define TR_MENUCALIBRATION "校准" -#if defined(COLORLCD) - #define TR_TRIMS2OFFSETS "将当前微调量保存至中点" -#else - #define TR_TRIMS2OFFSETS "\006Trims => Subtrims" -#endif +#define TR_TRIMS2OFFSETS "将当前微调量保存至中点" #define TR_CHANNELS2FAILSAFE "将当前所有通道值保存至接收机失控保护" #define TR_CHANNEL2FAILSAFE "将当前通道值保存至接收机失控保护" #define TR_MENUMODELSEL TR("MODELSEL", "模型选择") @@ -628,8 +543,8 @@ #define TR_MENUFLIGHTMODE "飞行模式" #define TR_MENUHELISETUP "直升机设置" - #define TR_MENUINPUTS "输入设置" - #define TR_MENULIMITS "输出这种" +#define TR_MENUINPUTS "输入设置" +#define TR_MENULIMITS "输出设置" #define TR_MENUCURVES "曲线设置" #define TR_MENUCURVE "曲线" #define TR_MENULOGICALSWITCH "逻辑开关" @@ -647,8 +562,9 @@ #define TR_MONITOR_SWITCHES "逻辑开关查看" #define TR_MONITOR_OUTPUT_DESC "输出查看" #define TR_MONITOR_MIXER_DESC "混控查看" - #define TR_RECEIVER_NUM TR("RxNum", "接收机ID.") - #define TR_RECEIVER "接收机ID" +#define TR_RECEIVER_NUM TR("RxNum", "接收机编号") +#define TR_RECEIVER "接收机ID" +#define TR_MULTI_CUSTOM "自定义" #define TR_MULTI_RFTUNE TR("Freq tune", "频率微调") #define TR_MULTI_RFPOWER "发射功率" #define TR_MULTI_TELEMETRY "回传" @@ -693,7 +609,7 @@ #define TR_SYNCMENU "[Sync]" #define TR_LIMIT INDENT "限制" #define TR_MINRSSI "Min Rssi" -#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling") +#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "使用 FlySky RSSI 值无需重缩放") #define TR_LATITUDE "纬度" #define TR_LONGITUDE "经度" #define TR_GPS_COORDS_FORMAT TR("GPS Coords", "方向角格式") @@ -705,8 +621,8 @@ #define TR_SAVE_MODEL "正在存储模型" #define TR_BATT_CALIB TR("Batt. calib", "电池电压校准") #define TR_CURRENT_CALIB "Current calib" -#define TR_VOLTAGE TR(INDENT "Voltage", INDENT "Voltage source") -#define TR_CURRENT TR(INDENT "Current", INDENT "Current source") +#define TR_VOLTAGE TR(INDENT "Voltage", INDENT "电压来源") +#define TR_CURRENT TR(INDENT "Current", INDENT "电流来源") #define TR_SELECT_MODEL "选择模型" #define TR_SELECT_MODE "选择模式" #define TR_CREATE_CATEGORY "创建分类" @@ -791,7 +707,7 @@ #define TR_COPROC_TEMP "主板温度" #define TR_CAPAWARNING INDENT "电流过低" #define TR_TEMPWARNING INDENT "过热" -#define TR_TTL_WARNING "Warning: use only TLL or 5v" +#define TR_TTL_WARNING "注意: 串口仅能使用TTL电平或5V" #define TR_FUNC "功能" #define TR_V1 "V1" #define TR_V2 "V2" @@ -830,12 +746,8 @@ #define TR_BLUETOOTH_LOCAL_ADDR "本机地址" #define TR_BLUETOOTH_PIN_CODE "PIN码" #define TR_BAUDRATE "蓝牙带宽" -#define LEN_BLUETOOTH_MODES "\011" -#if defined(PCBX9E) -#define TR_BLUETOOTH_MODES "---\0 ""启用\0 " -#else -#define TR_BLUETOOTH_MODES "---\0 ""回传""教练\0" -#endif +#define LEN_BLUETOOTH_MODES "\004" +#define TR_BLUETOOTH_MODES "---\0" "回传" "教练" #define TR_SD_INFO_TITLE "存储卡详情" #define TR_SD_TYPE "类型:" @@ -846,7 +758,7 @@ #define TR_GLOBAL_VARS "全局变量" #define TR_GVARS "全局变量" #define TR_GLOBAL_VAR "全局变量" -#define TR_MENU_GLOBAL_VARS "全局变量功能" +#define TR_MENU_GLOBAL_VARS "全局变量功能" #define TR_OWN "Own" #define TR_DATE "日期" #define TR_MONTHS { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" } @@ -859,7 +771,7 @@ #define TR_PATH_TOO_LONG "路径太长" #define TR_VIEW_TEXT "查看文本" #define TR_FLASH_BOOTLOADER "更新引导程序" -#define TR_FLASH_EXTERNAL_DEVICE TR("Flash S.Port", "从 S.Port 端口刷新外设") +#define TR_FLASH_EXTERNAL_DEVICE TR("Flash S.Port", "从 S.Port 端口更新外设固件") #define TR_FLASH_RECEIVER_OTA "Flash receiver OTA" #define TR_FLASH_RECEIVER_BY_EXTERNAL_MODULE_OTA "Flash RX by ext. OTA" #define TR_FLASH_RECEIVER_BY_INTERNAL_MODULE_OTA "Flash RX by int. OTA" @@ -867,12 +779,12 @@ #define TR_FLASH_FLIGHT_CONTROLLER_BY_INTERNAL_MODULE_OTA "Flash FC by int. OTA" #define TR_FLASH_BLUETOOTH_MODULE TR("Flash BT module", "刷新蓝牙模块") #define TR_FLASH_POWER_MANAGEMENT_UNIT "Flash pwr mngt unit" -#define TR_CURRENT_VERSION "Current version: " +#define TR_CURRENT_VERSION "当前版本: " #define TR_FLASH_INTERNAL_MODULE TR("Flash int. module", "更新内置模块固件") #define TR_FLASH_INTERNAL_MULTI TR("Flash Int. Multi", "更新内置多协议模块固件") #define TR_FLASH_EXTERNAL_MODULE TR("Flash ext. module", "更新外置模块固件") #define TR_FLASH_EXTERNAL_MULTI TR("Flash Ext. Multi", "更新外置多协议模块固件") -#define TR_FIRMWARE_UPDATE_ERROR TR("FW update error", "固件更新失败固件") +#define TR_FIRMWARE_UPDATE_ERROR TR("FW update error", "固件更新失败") #define TR_FIRMWARE_UPDATE_SUCCESS "固件更新成功" #define TR_WRITING "正在写入..." #define TR_CONFIRM_FORMAT "是否格式化?" @@ -883,7 +795,7 @@ #define TR_TELEMETRY_DISABLED "禁用回传" #define TR_MORE_OPTIONS_AVAILABLE "更多可用选项" #define TR_NO_MODULE_INFORMATION "无模块信息" -#define TR_EXTERNALRF "外汇射频" +#define TR_EXTERNALRF "外置射频" #define TR_FAILSAFE TR(INDENT "Failsafe", INDENT "失控保护模式") #define TR_FAILSAFESET "失控保护设置" #define TR_REG_ID "Reg. ID" @@ -954,7 +866,7 @@ #define TR_RECEIVER_OPTIONS TR("REC. OPTIONS", "接收机选项") #define TR_DEL_BUTTON BUTTON(TR("Del", "删除")) #define TR_RESET_BTN BUTTON("复位") -#define TR_DEBUG "Debug" +#define TR_DEBUG "调试" #define TR_KEYS_BTN BUTTON("按键") #define TR_ANALOGS_BTN BUTTON(TR("Anas", "类比")) #define TR_TOUCH_NOTFOUND "未找到触摸硬件" @@ -963,11 +875,7 @@ #define TR_TRAINER "教练" #define TR_CHANS "通道" #define TR_ANTENNAPROBLEM CENTER "发射机天线故障!" -#if defined(COLORLCD) - #define TR_MODELIDUSED "ID已使用:" -#else - #define TR_MODELIDUSED TR("ID used in:","接收机编号已使用:") -#endif +#define TR_MODELIDUSED "ID已使用:" #define TR_MODULE "模块" #define TR_RX_NAME "接收机名称" #define TR_TELEMETRY_TYPE TR("Type", "回传类型") @@ -985,7 +893,7 @@ #define LEN_ANTENNA_MODES "\010" #define TR_ANTENNA_MODES "内置天线""询问\0 ""基于模型""外置天线" #else -#define LEN_ANTENNA_MODES "\011" +#define LEN_ANTENNA_MODES "\010" #define TR_ANTENNA_MODES "内置天线""询问\0 ""基于模型""外置天线" #endif #define TR_USE_INTERNAL_ANTENNA TR("Use int. antenna", "请使用内置天线") @@ -1015,9 +923,9 @@ #define TR_PT "点" #define TR_PTS "点" #define TR_SMOOTH "平滑" -#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "当前摇杆位置保存为中点微调") +#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "当前摇杆位置保存为中点") #define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "当前所有通道中点/低位/高位保存为所有输出值") -#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "当前微调按钮值保存到中点微调") +#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "当前微调按钮值保存到中点") #define TR_INCDEC "增减" #define TR_GLOBALVAR "全局变量" #define TR_MIXSOURCE "混控源" @@ -1061,7 +969,7 @@ #define TR_LIMITS_HEADERS_CURVE "曲线" #define TR_LIMITS_HEADERS_PPMCENTER "PPM中点" #define TR_LIMITS_HEADERS_SUBTRIMMODE "微调模式" -#define TR_INVERTED "Inverted" +#define TR_INVERTED "反向" #define TR_LSW_HEADERS_FUNCTION "功能" #define TR_LSW_HEADERS_V1 "V1" From acdc2343dd3a8709e4da2f81f77ad1d5ebb51434 Mon Sep 17 00:00:00 2001 From: 3djc Date: Fri, 18 Dec 2020 20:36:54 +0100 Subject: [PATCH 10/13] Fix CN and TW --- radio/src/translations/cn.h.txt | 10 ++++----- radio/src/translations/tw.h.txt | 36 ++++++++++++++++----------------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/radio/src/translations/cn.h.txt b/radio/src/translations/cn.h.txt index 801d4252a..dd95ca12f 100644 --- a/radio/src/translations/cn.h.txt +++ b/radio/src/translations/cn.h.txt @@ -256,18 +256,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\207Rud" "\207Ele" "\207Thr" "\207Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rud" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Thr" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\213Rud" "\213Ele" "\213Thr" "\213Ail" "\213T5\0" "\213T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW "\213Rud" "\213Ele" "\213Thr" "\213Ail" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\213Rl" "\213Rr" "\213Ed" "\213Eu" "\213Td" "\213Tu" "\213Al" "\213Ar" "\2135d" "\2135u" "\2136d" "\2136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl" "tRr" "tEd" "tEu" "tTd" "tTu" "tAl" "tAr", "\213Rl" "\213Rr" "\213Ed" "\213Eu" "\213Td" "\213Tu" "\213Al" "\213Ar") + #define TR_TRIMS_SWITCHES TR("tRl" "tRr" "tEd" "tEu" "tTd" "tTu" "tAl" "tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #define TR_ROTARY_ENCODERS diff --git a/radio/src/translations/tw.h.txt b/radio/src/translations/tw.h.txt index f9b74680f..f818e7db3 100644 --- a/radio/src/translations/tw.h.txt +++ b/radio/src/translations/tw.h.txt @@ -256,18 +256,18 @@ #define LEN_VSWITCHES "\003" #define LEN_VSRCRAW "\004" -#define TR_STICKS_VSRCRAW "\207Rud" "\207Ele" "\207Thr" "\207Ail" +#define TR_STICKS_VSRCRAW STR_CHAR_STICK "Rud" STR_CHAR_STICK "Ele" STR_CHAR_STICK "Thr" STR_CHAR_STICK "Ail" #if defined(PCBHORUS) - #define TR_TRIMS_VSRCRAW "\213Rud" "\213Ele" "\213Thr" "\213Ail" "\213T5\0" "\213T6\0" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" STR_CHAR_TRIM "T5\0" STR_CHAR_TRIM "T6\0" #else - #define TR_TRIMS_VSRCRAW "\213Rud" "\213Ele" "\213Thr" "\213Ail" + #define TR_TRIMS_VSRCRAW STR_CHAR_TRIM "Rud" STR_CHAR_TRIM "Ele" STR_CHAR_TRIM "Thr" STR_CHAR_TRIM "Ail" #endif #if defined(PCBHORUS) - #define TR_TRIMS_SWITCHES "\213Rl" "\213Rr" "\213Ed" "\213Eu" "\213Td" "\213Tu" "\213Al" "\213Ar" "\2135d" "\2135u" "\2136d" "\2136u" + #define TR_TRIMS_SWITCHES STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar" STR_CHAR_TRIM "5d" STR_CHAR_TRIM "5u" STR_CHAR_TRIM "6d" STR_CHAR_TRIM "6u" #else - #define TR_TRIMS_SWITCHES TR("tRl" "tRr" "tEd" "tEu" "tTd" "tTu" "tAl" "tAr", "\213Rl" "\213Rr" "\213Ed" "\213Eu" "\213Td" "\213Tu" "\213Al" "\213Ar") + #define TR_TRIMS_SWITCHES TR("tRl" "tRr" "tEd" "tEu" "tTd" "tTu" "tAl" "tAr", STR_CHAR_TRIM "Rl" STR_CHAR_TRIM "Rr" STR_CHAR_TRIM "Ed" STR_CHAR_TRIM "Eu" STR_CHAR_TRIM "Td" STR_CHAR_TRIM "Tu" STR_CHAR_TRIM "Al" STR_CHAR_TRIM "Ar") #endif #define TR_ROTARY_ENCODERS @@ -1129,19 +1129,19 @@ #define TR_BAR1_COLOR "主條形圖顏色" #define TR_TEXT_COLOR "文本顏色" #define TR_TEXT_VIEWER "文本視圖" -#define TR_MENU_INPUTS "\214輸入" -#define TR_MENU_LUA "\222LUA腳本" -#define TR_MENU_STICKS "\207搖桿" -#define TR_MENU_POTS "\210旋鈕" -#define TR_MENU_MAX "\215固定值MAX" -#define TR_MENU_HELI "\216斜盤混控CYC" -#define TR_MENU_TRIMS "\213微調" -#define TR_MENU_SWITCHES "\212開關" -#define TR_MENU_LOGICAL_SWITCHES "\212邏輯開關" -#define TR_MENU_TRAINER "\217教練" -#define TR_MENU_CHANNELS "\220通道" -#define TR_MENU_GVARS "\211全局變量" -#define TR_MENU_TELEMETRY "\221回傳" +#define TR_MENU_INPUTS STR_CHAR_INPUT "輸入" +#define TR_MENU_LUA STR_CHAR_LUA "LUA腳本" +#define TR_MENU_STICKS STR_CHAR_STICK "搖桿" +#define TR_MENU_POTS STR_CHAR_POT "旋鈕" +#define TR_MENU_MAX STR_CHAR_FUNCTION "固定值MAX" +#define TR_MENU_HELI STR_CHAR_CYC "斜盤混控CYC" +#define TR_MENU_TRIMS STR_CHAR_TRIM "微調" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "開關" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "邏輯開關" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "教練" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "通道" +#define TR_MENU_GVARS STR_CHAR_SLIDER "全局變量" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "回傳" #define TR_MENU_DISPLAY "顯示" #define TR_MENU_OTHER "其它" #define TR_MENU_INVERT "反向" From 7d2178cb5c93e74c67819c1cd98f9acf3d80123d Mon Sep 17 00:00:00 2001 From: 3djc Date: Fri, 18 Dec 2020 20:37:11 +0100 Subject: [PATCH 11/13] fix chars continued --- radio/src/fonts/CMakeLists.txt | 8 +------ radio/src/gui/colorlcd/lcd.cpp | 7 ++---- radio/src/targets/horus/libopenui_config.h | 2 +- radio/src/targets/nv14/libopenui_config.h | 2 +- radio/src/translations.h | 2 ++ radio/src/translations/CMakeLists.txt | 3 --- radio/src/translations/cn.h.txt | 26 +++++++++++----------- radio/src/translations/en.h.txt | 2 +- tools/build-font-bitmap.py | 15 +++++++------ tools/charset.py | 8 +++---- tools/encode-translation.py | 2 +- 11 files changed, 34 insertions(+), 43 deletions(-) diff --git a/radio/src/fonts/CMakeLists.txt b/radio/src/fonts/CMakeLists.txt index e0aa64384..9de1b6acc 100644 --- a/radio/src/fonts/CMakeLists.txt +++ b/radio/src/fonts/CMakeLists.txt @@ -9,13 +9,7 @@ set(CJK_FONT_BOLD "Noto/NotoSansCJKsc-Bold") #set(FONT "Ubuntu/Ubuntu-Regular") #set(FONT_BOLD "Ubuntu/Ubuntu-Bold") -if(TRANSLATIONS STREQUAL CN) - set(subset all) -elseif(TRANSLATIONS STREQUAL TW) - set(subset all) -else() - string(TOLOWER ${TRANSLATIONS} subset) -endif() +string(TOLOWER ${TRANSLATIONS} subset) add_truetype_font_target(9 9 ${subset} none) add_truetype_font_target(13 13 ${subset} none) diff --git a/radio/src/gui/colorlcd/lcd.cpp b/radio/src/gui/colorlcd/lcd.cpp index 94b86b23b..f70683f5b 100644 --- a/radio/src/gui/colorlcd/lcd.cpp +++ b/radio/src/gui/colorlcd/lcd.cpp @@ -29,10 +29,7 @@ uint8_t getMappedChar(uint8_t c) { uint8_t result; - if (c < 0x80) - result = c - 0x20; - else - result = c - 0x80 + 32 + 26 + 6 + 26 + 5; // 96; + result = c - 0x20; // TRACE("getMappedChar '%c' (0x%x) = %d", c, c, result); @@ -61,7 +58,7 @@ int getTextWidth(const char * s, int len, LcdFlags flags) int result = 0; for (int i = 0; len == 0 || i < len; ++i) { - unsigned int c = uint8_t(*s); + unsigned c = uint8_t(*s); if (!c) { break; } diff --git a/radio/src/targets/horus/libopenui_config.h b/radio/src/targets/horus/libopenui_config.h index 2182517be..3ea472efe 100644 --- a/radio/src/targets/horus/libopenui_config.h +++ b/radio/src/targets/horus/libopenui_config.h @@ -169,7 +169,7 @@ constexpr LcdFlags MENU_FONT = FONT(STD); constexpr LcdFlags TABLE_HEADER_FONT = FONT(STD); constexpr LcdFlags TABLE_BODY_FONT = FONT(STD); -constexpr int CJK_FIRST_LETTER_INDEX = 189; +constexpr int CJK_FIRST_LETTER_INDEX = 128 - 32 + 21; constexpr coord_t CHAR_SPACING = 0; #define ROTARY_ENCODER_SPEED() rotencSpeed diff --git a/radio/src/targets/nv14/libopenui_config.h b/radio/src/targets/nv14/libopenui_config.h index a19246e18..9bb6d1c9d 100644 --- a/radio/src/targets/nv14/libopenui_config.h +++ b/radio/src/targets/nv14/libopenui_config.h @@ -173,7 +173,7 @@ constexpr LcdFlags MENU_FONT = FONT(STD); constexpr LcdFlags TABLE_HEADER_FONT = FONT(STD); constexpr LcdFlags TABLE_BODY_FONT = FONT(STD); -constexpr int CJK_FIRST_LETTER_INDEX = 168; +constexpr int CJK_FIRST_LETTER_INDEX = 128 - 32 + 21; constexpr coord_t CHAR_SPACING = 0; #endif // _LIBOPENUI_CONFIG_H_ diff --git a/radio/src/translations.h b/radio/src/translations.h index ed68c407b..978cddef1 100644 --- a/radio/src/translations.h +++ b/radio/src/translations.h @@ -55,6 +55,8 @@ #define LEN_SPECIAL_CHARS 0 #elif defined(TRANSLATIONS_CN) #include "translations/cn.h" +#elif defined(TRANSLATIONS_TW) +#include "translations/tw.h" #define LEN_SPECIAL_CHARS 0 #else #include "translations/en.h" diff --git a/radio/src/translations/CMakeLists.txt b/radio/src/translations/CMakeLists.txt index 5d7155a38..59d048a1c 100644 --- a/radio/src/translations/CMakeLists.txt +++ b/radio/src/translations/CMakeLists.txt @@ -4,9 +4,6 @@ foreach(translation ${translations}) get_filename_component(language ${translation} NAME_WE) get_filename_component(path ${translation} DIRECTORY) set(target ${language}.h) - if(PCB STREQUAL X12S OR PCB STREQUAL X10 OR PCB STREQUAL NV14) - set(language all) - endif() if(PYTHONINTERP_FOUND) add_custom_command( OUTPUT ${target} diff --git a/radio/src/translations/cn.h.txt b/radio/src/translations/cn.h.txt index dd95ca12f..9dd8ccffc 100644 --- a/radio/src/translations/cn.h.txt +++ b/radio/src/translations/cn.h.txt @@ -1129,19 +1129,19 @@ #define TR_BAR1_COLOR "主条形图颜色" #define TR_TEXT_COLOR "文本颜色" #define TR_TEXT_VIEWER "文本视图" -#define TR_MENU_INPUTS "\214输入" -#define TR_MENU_LUA "\222LUA脚本" -#define TR_MENU_STICKS "\207摇杆" -#define TR_MENU_POTS "\210旋钮" -#define TR_MENU_MAX "\215固定值MAX" -#define TR_MENU_HELI "\216斜盘混控CYC" -#define TR_MENU_TRIMS "\213微调" -#define TR_MENU_SWITCHES "\212开关" -#define TR_MENU_LOGICAL_SWITCHES "\212逻辑开关" -#define TR_MENU_TRAINER "\217教练" -#define TR_MENU_CHANNELS "\220通道" -#define TR_MENU_GVARS "\211全局变量" -#define TR_MENU_TELEMETRY "\221回传" +#define TR_MENU_INPUTS STR_CHAR_INPUT "输入" +#define TR_MENU_LUA STR_CHAR_LUA "LUA脚本" +#define TR_MENU_STICKS STR_CHAR_STICK "摇杆" +#define TR_MENU_POTS STR_CHAR_POT "旋钮" +#define TR_MENU_MAX STR_CHAR_FUNCTION "固定值MAX" +#define TR_MENU_HELI STR_CHAR_CYC "斜盘混控CYC" +#define TR_MENU_TRIMS STR_CHAR_TRIM "微调" +#define TR_MENU_SWITCHES STR_CHAR_SWITCH "开关" +#define TR_MENU_LOGICAL_SWITCHES STR_CHAR_SWITCH "逻辑开关" +#define TR_MENU_TRAINER STR_CHAR_TRAINER "教练" +#define TR_MENU_CHANNELS STR_CHAR_CHANNEL "通道" +#define TR_MENU_GVARS STR_CHAR_SLIDER "全局变量" +#define TR_MENU_TELEMETRY STR_CHAR_TELEMETRY "回传" #define TR_MENU_DISPLAY "显示" #define TR_MENU_OTHER "其它" #define TR_MENU_INVERT "反向" diff --git a/radio/src/translations/en.h.txt b/radio/src/translations/en.h.txt index 038730658..a1c3098ef 100644 --- a/radio/src/translations/en.h.txt +++ b/radio/src/translations/en.h.txt @@ -388,7 +388,7 @@ #define TR_TEXT_SIZE "Standard""Tiny\0 ""Small\0 ""Mid\0 ""Double\0 " #define LEN_SUBTRIMMODES "\017" -#define TR_SUBTRIMMODES STR_CHAR_DELTA" (center only)""= (symetrical) " +#define TR_SUBTRIMMODES STR_CHAR_DELTA " (center only)""= (symetrical) " // ZERO TERMINATED STRINGS diff --git a/tools/build-font-bitmap.py b/tools/build-font-bitmap.py index 6351a97ee..e4954376b 100755 --- a/tools/build-font-bitmap.py +++ b/tools/build-font-bitmap.py @@ -9,8 +9,9 @@ from charset import get_chars, special_chars, extra_chars, standard_chars class FontBitmap: - def __init__(self, chars, font_size, font_name, cjk_font_name, foreground, background): - self.chars = chars + def __init__(self, language, font_size, font_name, cjk_font_name, foreground, background): + self.language = language + self.chars = get_chars(language) self.font_size = font_size self.foreground = foreground self.background = background @@ -95,11 +96,9 @@ class FontBitmap: for c in self.chars: if c == " ": w = 4 - elif c in special_chars["cn"]: - w = self.draw_char(image, width, c, self.cjk_font, -3) elif c in extra_chars: if self.extra_bitmap: - for i in range(128 - 32 - len(standard_chars) - 1): + for i in range(128 - 32 - len(standard_chars)): coords.append(width) image.paste(self.extra_bitmap.copy(), (width, 0)) for coord in [14, 14, 12, 12, 13, 13, 13, 13, 13] + [15] * 12: @@ -107,6 +106,8 @@ class FontBitmap: width += coord self.extra_bitmap = None continue + elif c in special_chars[self.language]: + w = self.draw_char(image, width, c, self.cjk_font, -3) else: w = self.draw_char(image, width, c, self.font) @@ -135,13 +136,13 @@ def main(): parser = argparse.ArgumentParser(description="Builder for OpenTX font files") parser.add_argument('--output', help="Output file name") - parser.add_argument('--subset', help="Subset", default="all") + parser.add_argument('--subset', help="Subset") parser.add_argument('--size', type=int, help="Font size") parser.add_argument('--font', help="Font name") parser.add_argument('--cjk-font', help="CJK font name") args = parser.parse_args() - font = FontBitmap(get_chars(args.subset), args.size, args.font, args.cjk_font, (0, 0, 0), (255, 255, 255)) + font = FontBitmap(args.subset, args.size, args.font, args.cjk_font, (0, 0, 0), (255, 255, 255)) font.generate(args.output) diff --git a/tools/charset.py b/tools/charset.py index 8169da9b3..66576c628 100644 --- a/tools/charset.py +++ b/tools/charset.py @@ -54,7 +54,7 @@ subset_lowercase = { def get_chars(subset): result = standard_chars + extra_chars - if subset == "all": + if False: # subset == "all": for key, chars in special_chars.items(): result += "".join([char for char in chars if char not in result]) else: @@ -65,11 +65,11 @@ def get_chars(subset): def get_chars_encoding(subset): result = {} - if subset == "all": + if subset in ("cn", "tw"): chars = get_chars(subset) for char in chars: - if char in special_chars["cn"]: - index = special_chars["cn"].index(char) + 1 + if char in special_chars[subset]: + index = special_chars[subset].index(char) + 1 if index >= 0x100: index += 1 result[char] = "\\%03o\\%03o" % (0xFE + ((index >> 8) & 0x01), index & 0xFF) diff --git a/tools/encode-translation.py b/tools/encode-translation.py index 10282afa3..c4b237a63 100755 --- a/tools/encode-translation.py +++ b/tools/encode-translation.py @@ -15,7 +15,7 @@ def main(): parser.add_argument("--reverse", help="Reversed char conversion (from number to char)", action="store_true") args = parser.parse_args() - if args.language != "all" and args.language not in special_chars: + if args.language not in special_chars: parser.error(args.language + ' is not a supported language. Try one of the supported ones: %s' % list(special_chars.keys())) sys.exit() From cda66fa13b3fc37ff2e74bf2c8b21bd252dd60a9 Mon Sep 17 00:00:00 2001 From: 3djc Date: Sat, 19 Dec 2020 09:09:11 +0100 Subject: [PATCH 12/13] Fix CN and TW --- radio/src/gui/colorlcd/model_setup.cpp | 5 ++--- tools/commit-tests.sh | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/radio/src/gui/colorlcd/model_setup.cpp b/radio/src/gui/colorlcd/model_setup.cpp index 13c28fae5..b0f916bcc 100644 --- a/radio/src/gui/colorlcd/model_setup.cpp +++ b/radio/src/gui/colorlcd/model_setup.cpp @@ -1024,9 +1024,8 @@ void ModelSetupPage::build(FormWindow * window) TimerData * timer = &g_model.timers[i]; // Timer label - char timerLabel[8]; - strAppendStringWithIndex(timerLabel, STR_TIMER, i + 1); - new Subtitle(window, grid.getLineSlot(), timerLabel); + strAppendStringWithIndex(reusableBuffer.moduleSetup.msg, STR_TIMER, i + 1); + new Subtitle(window, grid.getLineSlot(), reusableBuffer.moduleSetup.msg); grid.nextLine(); auto group = new FormGroup(window, grid.getFieldSlot(), FORM_BORDER_FOCUS_ONLY | PAINT_CHILDREN_FIRST); diff --git a/tools/commit-tests.sh b/tools/commit-tests.sh index b9a336b01..0530eb65f 100755 --- a/tools/commit-tests.sh +++ b/tools/commit-tests.sh @@ -214,7 +214,7 @@ fi if [[ " TX16S COLORLCD ALL " =~ \ ${FLAVOR}\ ]] ; then # OpenTX on TX16S boards rm -rf ./* || true - cmake "${COMMON_OPTIONS}" -DPCB=X10 -DPCBREV=TX16S -DHELI=YES -DLUA=YES -DGVARS=YES "${SRCDIR}" + cmake "${COMMON_OPTIONS}" -DPCB=X10 -DPCBREV=TX16S -DHELI=YES -DLUA=YES -DGVARS=YES -DTRANSLATIONS=CN "${SRCDIR}" make -j"${CORES}" ${FIRMARE_TARGET} make -j"${CORES}" libsimulator make -j"${CORES}" tests-radio From e298de0884974e1a55bf052a931263cd3a3b849e Mon Sep 17 00:00:00 2001 From: 3djc Date: Mon, 21 Dec 2020 08:30:22 +0100 Subject: [PATCH 13/13] Improve CN and TW by Ren --- radio/src/translations/cn.h.txt | 2 +- radio/src/translations/tw.h.txt | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/radio/src/translations/cn.h.txt b/radio/src/translations/cn.h.txt index 9dd8ccffc..2d9ac47ef 100644 --- a/radio/src/translations/cn.h.txt +++ b/radio/src/translations/cn.h.txt @@ -138,7 +138,7 @@ #define TR_CSWEQUAL "a=x\0 " #define LEN_VCSWFUNC "\006" -#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a~x\0 " "a>x\0 " "ax\0" "|a|b\0 " "ax\0 " "ax\0" "|a|b\0 " "ax\0 " "ax\0" "|a|b\0 " "ax\0 " "ax\0" "|a|b\0 " "a