feat: Hebrew radio translation 🇮🇱 (#3506)
* Hebrew radio translation 🇮🇱
* chore: loop in alphabetical order
* Replace Arial with Arimo
* Add "he" to companion settings
This commit is contained in:
@@ -105,6 +105,7 @@ class OpenTxFirmware: public Firmware
|
||||
addLanguage("es");
|
||||
addLanguage("fi");
|
||||
addLanguage("fr");
|
||||
addLanguage("he");
|
||||
addLanguage("hu");
|
||||
addLanguage("it");
|
||||
addLanguage("jp");
|
||||
|
||||
@@ -2,7 +2,7 @@ include(CMakeForceCompiler)
|
||||
include(Bitmaps)
|
||||
|
||||
set(PCB_TYPES X9LITE X9LITES X7 XLITE XLITES X9D X9D+ X9E X10 X12S NV14)
|
||||
set(RADIO_LANGUAGES CN CZ DA DE EN ES FI FR IT JP PT SK SE PL HU NL TW)
|
||||
set(RADIO_LANGUAGES CN CZ DA DE EN ES FI FR HE IT JP PT SK SE PL HU NL TW)
|
||||
set(TTS_LANGUAGES CN CZ DA DE EN ES FR HE IT JP PT SK SE PL HU NL RU)
|
||||
|
||||
set(PCB "X9D+" CACHE STRING "Radio type, one of: ${PCB_TYPES}")
|
||||
@@ -145,6 +145,13 @@ foreach(LANGUAGE ${RADIO_LANGUAGES})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(RTL_LANGUAGES HE)
|
||||
if(TRANSLATIONS IN_LIST RTL_LANGUAGES)
|
||||
add_definitions(-DTRANSLATION_IS_RTL=1)
|
||||
else()
|
||||
add_definitions(-DTRANSLATION_IS_RTL=0)
|
||||
endif()
|
||||
|
||||
set(SRC ${SRC} debug.cpp)
|
||||
|
||||
add_definitions(-DFLAVOUR="${FLAVOUR}")
|
||||
|
||||
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -26,6 +26,8 @@ JP_Katakana="0x30A0-0x30FF"
|
||||
JP_Kanji="0x4e00,0x4e0a,0x4e0b,0x4e0d,0x4e21,0x4e2d,0x4e57,0x4e86,0x4e88,0x4ed6,0x4ed8,0x4ef6,0x4efb,0x4f4d,0x4f4e,0x4f53,0x4f5c,0x4f7f,0x4fdd,0x4fe1,0x4fee,0x500d,0x5024,0x504f,0x505c,0x5099,0x50cf,0x5143,0x5145,0x5165,0x5168,0x516c,0x5171,0x5185,0x518d,0x51fa,0x5206,0x521d,0x5225,0x5229,0x524a,0x524d,0x5272,0x529b,0x529f,0x52a0,0x52b9,0x52d5,0x5316,0x5358,0x53bb,0x53d7,0x53f7,0x5408,0x540c,0x540d,0x5411,0x5426,0x542b,0x544a,0x5468,0x554f,0x5668,0x56de,0x56f2,0x56fa,0x5727,0x5728,0x5747,0x57cb,0x5831,0x5857,0x5897,0x58f0,0x5909,0x5916,0x591a,0x5927,0x592e,0x5931,0x5968,0x5b58,0x5b8c,0x5b9a,0x5b9f,0x5bb9,0x5bfe,0x5c0f,0x5c11,0x5dee,0x5e38,0x5e73,0x5ea6,0x5ea7,0x5ef6,0x5f0f,0x5f31,0x5f35,0x5f37,0x5f53,0x5f62,0x5f71,0x5f85,0x5f8c,0x5fa9,0x5fae,0x5fc5,0x5fdc,0x60c5,0x60f3,0x610f,0x614b,0x6210,0x624b,0x629e,0x62bc,0x62d2,0x62e1,0x6301,0x633f,0x63a5,0x63a8,0x63db,0x64cd,0x6539,0x6557,0x6570,0x6574,0x6587,0x65b0,0x65b9,0x65e2,0x65e5,0x660e,0x6642,0x666f,0x66f4,0x66f8,0x6700,0x6709,0x671f,0x672a,0x672b,0x672c,0x6761,0x67a0,0x683c,0x691c,0x6975,0x6982,0x69cb,0x6a19,0x6a5f,0x6b62,0x6b63,0x6b8b,0x6bce,0x6bd4,0x6c17,0x6c60,0x6cd5,0x6ce2,0x6d41,0x6d88,0x6e1b,0x6e29,0x6e90,0x6e96,0x6f14,0x6f70,0x7121,0x72b6,0x7387,0x73fe,0x7406,0x751f,0x7528,0x753b,0x756a,0x767b,0x7740,0x78ba,0x793a,0x7981,0x79d2,0x79f0,0x79fb,0x7a7a,0x7aef,0x7b2c,0x7b54,0x7b97,0x7bc4,0x7cbe,0x7d20,0x7d22,0x7d30,0x7d42,0x7d4c,0x7d71,0x7d9a,0x7dd1,0x7dda,0x7de8,0x7def,0x7e70,0x7f6e,0x7fa4,0x8003,0x8005,0x80cc,0x80fd,0x81ea,0x826f,0x8272,0x8535,0x884c,0x8868,0x8870,0x88c5,0x88fd,0x8907,0x8981,0x898b,0x898f,0x8996,0x89e3,0x8a00,0x8a08,0x8a18,0x8a2d,0x8a3c,0x8a72,0x8a73,0x8a8d,0x8a9e,0x8aac,0x8aad,0x8abf,0x8ad6,0x8b58,0x8b66,0x8cbb,0x8cbc,0x8d64,0x8d77,0x8ddd,0x8ef8,0x8f03,0x8f1d,0x8fbc,0x8fd4,0x8ffd,0x9001,0x901f,0x9020,0x9045,0x904e,0x9069,0x9078,0x90e8,0x91cf,0x9332,0x9577,0x958b,0x9593,0x9664,0x96c6,0x96e2,0x96fb,0x9752,0x975e,0x9762,0x97f3,0x984c,0x98db,0x9ad8"
|
||||
JP_SYMBOLS="${JP_Hiragana},${JP_Katakana},${JP_Kanji}"
|
||||
|
||||
HE_SYMBOLS="0x05D0-0x05F4"
|
||||
|
||||
# https://yeun.github.io/open-arrow/
|
||||
ARROWS_FONT="EdgeTX/OpenArrow-Regular.woff"
|
||||
# 0x80: right, 0x81: left, 0x82: up, 0x83: down
|
||||
@@ -110,3 +112,4 @@ make_bootloader_font "roboto_bl" "Roboto/Roboto-Regular.ttf" 16
|
||||
make_font_set "noto_tw" "Noto/NotoSansCJKsc-Regular.otf" "Noto/NotoSansCJKsc-Bold.otf" ",${TW_SYMBOLS}"
|
||||
make_font_set "noto_cn" "Noto/NotoSansCJKsc-Regular.otf" "Noto/NotoSansCJKsc-Bold.otf" ",${CN_SYMBOLS}"
|
||||
make_font_set "noto_jp" "Noto/NotoSansCJKsc-Regular.otf" "Noto/NotoSansCJKsc-Bold.otf" ",${JP_SYMBOLS}"
|
||||
make_font_set "arimo_he" "Arimo/Arimo-Regular.ttf" "Arimo/Arimo-Bold.ttf" ",${HE_SYMBOLS}"
|
||||
|
||||
@@ -41,6 +41,8 @@
|
||||
FONT_TABLE(noto_tw);
|
||||
#elif defined(TRANSLATIONS_JP)
|
||||
FONT_TABLE(noto_jp);
|
||||
#elif defined(TRANSLATIONS_HE)
|
||||
FONT_TABLE(arimo_he);
|
||||
#else
|
||||
FONT_TABLE(roboto);
|
||||
#endif
|
||||
|
||||
+18
-2
@@ -379,7 +379,7 @@
|
||||
/*Demonstrate special features*/
|
||||
#define LV_FONT_MONTSERRAT_12_SUBPX 0
|
||||
#define LV_FONT_MONTSERRAT_28_COMPRESSED 0 /*bpp = 3*/
|
||||
#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 0 /*Hebrew, Arabic, Persian letters and all their forms*/
|
||||
#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW TRANSLATION_IS_RTL /*Hebrew, Arabic, Persian letters and all their forms*/
|
||||
#define LV_FONT_SIMSUN_16_CJK 0 /*1000 most common CJK radicals*/
|
||||
|
||||
/*Pixel perfect monospace fonts*/
|
||||
@@ -440,6 +440,22 @@
|
||||
/*Always set a default font*/
|
||||
#define LV_FONT_DEFAULT &lv_font_noto_jp_16
|
||||
|
||||
#elif defined(TRANSLATIONS_HE)
|
||||
#define LV_FONT_CUSTOM_DECLARE \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_9) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_13) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_16) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_17) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_24) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_64) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_bold_16) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_bold_17) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_bold_32) \
|
||||
LV_FONT_DECLARE(lv_font_arimo_he_bold_64)
|
||||
|
||||
/*Always set a default font*/
|
||||
#define LV_FONT_DEFAULT &lv_font_arimo_he_16
|
||||
|
||||
#else
|
||||
#define LV_FONT_CUSTOM_DECLARE \
|
||||
LV_FONT_DECLARE(lv_font_roboto_9) \
|
||||
@@ -511,7 +527,7 @@
|
||||
/*Support bidirectional texts. Allows mixing Left-to-Right and Right-to-Left texts.
|
||||
*The direction will be processed according to the Unicode Bidirectional Algorithm:
|
||||
*https://www.w3.org/International/articles/inline-bidi-markup/uba-basics*/
|
||||
#define LV_USE_BIDI 0
|
||||
#define LV_USE_BIDI TRANSLATION_IS_RTL
|
||||
#if LV_USE_BIDI
|
||||
/*Set the default direction. Supported values:
|
||||
*`LV_BASE_DIR_LTR` Left-to-Right
|
||||
|
||||
@@ -68,6 +68,9 @@
|
||||
#elif defined(TRANSLATIONS_JP)
|
||||
#include "translations/jp.h"
|
||||
#define LEN_SPECIAL_CHARS 0
|
||||
#elif defined(TRANSLATIONS_HE)
|
||||
#include "translations/he.h"
|
||||
#define LEN_SPECIAL_CHARS 0
|
||||
#else
|
||||
#include "translations/en.h"
|
||||
#define LEN_SPECIAL_CHARS 0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -15,7 +15,7 @@ def is_special_char(c):
|
||||
|
||||
def get_special_chars():
|
||||
result = {}
|
||||
for lang in["en", "fr", "da", "de", "cz", "nl", "es", "fi", "it", "pl", "pt", "se", "cn", "tw", "jp"]:
|
||||
for lang in["cn", "cz", "da", "de", "en", "es", "fi", "fr", "he", "it", "jp", "nl", "pl", "pt", "se", "tw"]:
|
||||
charset = set()
|
||||
tools_path = os.path.dirname(os.path.realpath(__file__))
|
||||
with open(os.path.join(tools_path, "../radio/src/translations/%s.h" % lang), encoding='utf-8') as f:
|
||||
|
||||
Reference in New Issue
Block a user