Port Devanagari layouts

This commit is contained in:
Aleksandras Kostarevas 2024-09-19 09:49:08 +03:00
parent 0ce2c7352b
commit 601470747e
12 changed files with 1859 additions and 1300 deletions

View File

@ -0,0 +1,107 @@
name: Kurdish
languages: ckb
rows:
- letters: # rowkeys_kurdish1.xml
# U+0642: ق ARABIC LETTER QAF
- {type: case, normal: ["\u0642", "`"], shifted: ["`", "\u0642"]}
# U+0648: و ARABIC LETTER WAW
- {type: case, normal: ["\u0648", "\u0648\u0648"], shifted: ["\u0648\u0648", "\u0648"]}
# U+06D5: ە ARABIC LETTER AE
# U+064A: ي ARABIC LETTER YEH
- {type: case, normal: ["\u06d5", "\u064a"], shifted: ["\u064a", "\u06d5"]}
# U+0631: ر ARABIC LETTER REH
# U+0695: ڕ ARABIC LETTER REH WITH SMALL V BELOW
- {type: case, normal: ["\u0631", "\u0695"], shifted: ["\u0695", "\u0631"]}
# U+062A: ت ARABIC LETTER TEH
# U+0637: ط ARABIC LETTER TAH
- {type: case, normal: ["\u062a", "\u0637"], shifted: ["\u0637", "\u062a"]}
# U+06CC: ی ARABIC LETTER FARSI YEH
# U+06CE: ێ ARABIC LETTER YEH WITH SMALL V
- {type: case, normal: ["\u06cc", "\u06ce"], shifted: ["\u06ce", "\u06cc"]}
# U+0626: ئ ARABIC LETTER YEH WITH HAMZA ABOVE
# U+0621: ء ARABIC LETTER HAMZA
- {type: case, normal: ["\u0626", "\u0621"], shifted: ["\u0621", "\u0626"]}
# U+062D: ح ARABIC LETTER HAH
# U+0639: ع ARABIC LETTER AIN
- {type: case, normal: ["\u062d", "\u0639"], shifted: ["\u0639", "\u062d"]}
# U+06C6: ۆ ARABIC LETTER OE
# U+0624: ؤ ARABIC LETTER WAW WITH HAMZA ABOVE
- {type: case, normal: ["\u06c6", "\u0624"], shifted: ["\u0624", "\u06c6"]}
# U+067E: پ ARABIC LETTER PEH
# U+062B: ث ARABIC LETTER THEH
- {type: case, normal: ["\u067e", "\u062b"], shifted: ["\u062b", "\u067e"]}
- letters: # rowkeys_kurdish2.xml
# U+0627: ا ARABIC LETTER ALEF
# U+0622: آ ARABIC LETTER ALEF WITH MADDA ABOVE
- {type: case, normal: ["\u0627", "\u0622"], shifted: ["\u0622", "\u0627"]}
# U+0633: س ARABIC LETTER SEEN
# U+0634: ش ARABIC LETTER SHEEN
- {type: case, normal: ["\u0633", "\u0634"], shifted: ["\u0634", "\u0633"]}
# U+062F: د ARABIC LETTER DAL
# U+0630: ذ ARABIC LETTER THAL
- {type: case, normal: ["\u062f", "\u0630"], shifted: ["\u0630", "\u062f"]}
# U+0641: ف ARABIC LETTER FEH
# U+0625: إ ARABIC LETTER ALEF WITH HAMZA BELOW
- {type: case, normal: ["\u0641", "\u0625"], shifted: ["\u0625", "\u0641"]}
# U+06AF: گ ARABIC LETTER GAF
# U+063A: غ ARABIC LETTER GHAIN
- {type: case, normal: ["\u06af", "\u063a"], shifted: ["\u063a", "\u06af"]}
# U+0647: ه ARABIC LETTER HEH
# U+200C: ZERO WIDTH NON-JOINER
- {type: case, normal: ["\u0647", "!icon/zwnj_key|\u200c"], shifted: ["!icon/zwnj_key|\u200c", "\u0647"]}
# U+0698: ژ ARABIC LETTER JEH
# U+0623: أ ARABIC LETTER ALEF WITH HAMZA ABOVE
- {type: case, normal: ["\u0698", "\u0623"], shifted: ["\u0623", "\u0698"]}
# U+06A9: ک ARABIC LETTER KEHEH
# U+0643: ك ARABIC LETTER KAF
- {type: case, normal: ["\u06a9", "\u0643"], shifted: ["\u0643", "\u06a9"]}
# U+0644: ل ARABIC LETTER LAM
# U+06B5: ڵ ARABIC LETTER LAM WITH SMALL V
- {type: case, normal: ["\u0644", "\u06b5"], shifted: ["\u06b5", "\u0644"]}
- letters: # rowkeys_kurdish3.xml
# U+0632: ز ARABIC LETTER ZAIN
# U+0636: ض ARABIC LETTER DAD
- {type: case, normal: ["\u0632", "\u0636"], shifted: ["\u0636", "\u0632"]}
# U+062E: خ ARABIC LETTER KHAH
# U+0635: ص ARABIC LETTER SAD
- {type: case, normal: ["\u062e", "\u0635"], shifted: ["\u0635", "\u062e"]}
# U+062C: ج ARABIC LETTER JEEM
# U+0686: چ ARABIC LETTER TCHEH
- {type: case, normal: ["\u062c", "\u0686"], shifted: ["\u0686", "\u062c"]}
# U+06A4: ڤ ARABIC LETTER VEH
# U+0638: ظ ARABIC LETTER ZAH
- {type: case, normal: ["\u06a4", "\u0638"], shifted: ["\u0638", "\u06a4"]}
# U+0628: ب ARABIC LETTER BEH
# U+0649: ى ARABIC LETTER ALEF MAKSURA
- {type: case, normal: ["\u0628", "\u0649"], shifted: ["\u0649", "\u0628"]}
# U+0646: ن ARABIC LETTER NOON
# U+0648: و ARABIC LETTER WAW
- {type: case, normal: ["\u0646", "\u0648"], shifted: ["\u0648", "\u0646"]}
# U+0645: م ARABIC LETTER MEEM
# U+0640: ـ ARABIC TATWEEL
- {type: case, normal: ["\u0645", "\u0640"], shifted: ["\u0640", "\u0645"]}

View File

@ -0,0 +1,37 @@
name: Hindi
languages: hi
rows:
- letters: # rowkeys_hindi1.xml
- {type: case, normal: ['ौ', 'ौं'], shifted: ['औ', 'ऒं']}
- {type: case, normal: ['ै', 'ैं'], shifted: ['ऐ', 'ऐं']}
- {type: case, normal: ['ा', 'ां', 'ाँ'], shifted: ['आ', 'आं', 'आँ']}
- {type: case, normal: ['ी', 'ीं'], shifted: ['ई', 'ईं']}
- {type: case, normal: ['ू', 'ूं', 'ूँ'], shifted: ['ऊ', 'ऊं', 'ऊँ']}
- {type: case, normal: ['ब', 'ब॒'], shifted: ['भ']}
- {type: case, normal: ['ह'], shifted: ['']}
- {type: case, normal: ['ग', 'ज्ञ', 'ग़', 'ग॒'], shifted: ['घ']}
- {type: case, normal: ['द'], shifted: ['ध', 'क्ष', 'श्र']}
- {type: case, normal: ['ज', 'ज॒', 'ज्ञ', 'ज़'], shifted: ['झ']}
- {type: case, normal: ['ड', 'ड॒', 'ड़'], shifted: ['ढ']}
- letters: # rowkeys_hindi2.xml
- {type: case, normal: ['ो', 'ों', 'ॉ', 'ॊ'], shifted: ['ओ', 'ओं', 'ऑ', 'ऒ']}
- {type: case, normal: ['े', 'ें'], shifted: ['ए', 'एं', 'एँ', 'ऍ', 'ऎ']}
- {type: case, normal: ['्'], shifted: ['अ', 'अं', 'अँ']}
- {type: case, normal: ['ि', 'िं'], shifted: ['इ', 'इं', 'इँ']}
- {type: case, normal: ['ु', 'ुं', 'ुँ'], shifted: ['उ', 'उं', 'उँ']}
- {type: case, normal: ['प'], shifted: ['फ', 'फ़']}
- {type: case, normal: ['र', 'ऋ', 'ऱ', 'ॠ'], shifted: ['ऱ', '्र', 'र्']}
- {type: case, normal: ['क', 'क़'], shifted: ['ख', 'ख़']}
- {type: case, normal: ['त', 'त्र'], shifted: ['थ']}
- {type: case, normal: ['च'], shifted: ['छ']}
- {type: case, normal: ['ट'], shifted: ['ठ']}
- letters: # rowkeys_hindi3.xml
- {type: case, normal: ['ॉ'], shifted: ['ऑ']}
- {type: case, normal: ['ं'], shifted: ['ँ', 'ॅ']}
- {type: case, normal: ['म', 'ॐ'], shifted: ['ण']}
- {type: case, normal: ['न', 'ञ', 'ङ', 'ऩ'], shifted: ['ऩ']}
- {type: case, normal: ['व'], shifted: ['ळ', 'ऴ']}
- {type: case, normal: ['ल', 'ऌ', 'ॡ'], shifted: ['श']}
- {type: case, normal: ['स'], shifted: ['ष']}
- {type: case, normal: ['य', 'य़'], shifted: ['ृ', 'ॄ']}
- {type: case, normal: ['़', '', '॰', 'ऽ'], shifted: ['ञ']}

View File

@ -0,0 +1,41 @@
name: Hindi Compact
languages: hi
useZWNJKey: true
rows:
- letters: # rowkeys_hindi_compact1.xml
- ['औ', 'ौ']
- ['ऐ', 'ै']
- ['आ', 'ा']
- ['ई', 'ी']
- ['ऊ', 'ू']
- ['ब', 'भ']
- ['ह']
- ['ग', 'घ']
- ['द', 'ध']
- ['ज', 'झ', 'ज्ञ']
- ['ड', 'ढ']
- letters: # rowkeys_hindi_compact2.xml
- ['ओ', 'ो']
- ['ए', 'े']
- ['अ', '्']
- ['इ', 'ि']
- ['उ', 'ु']
- ['प', 'फ']
- ['र', 'ऋ', 'ृ']
- ['क', 'ख']
- ['त', 'थ', 'त्र']
- ['च', 'छ']
- ['ट', 'ठ']
- letters: # rowkeys_hindi_compact3.xml
- ['ऑ', 'ॉ']
- ['्', 'ॅ', 'ऍ']
- ['ं', '', 'ँ', '़']
- ['म', 'ॐ']
- ['न', 'ण', 'ञ', 'ङ']
- ['व']
- ['ल']
- ['स', 'श', 'ष', 'श्र']
- ['य']
- ['क्ष']
- $delete
# detected 3 rows

View File

@ -0,0 +1,146 @@
name: Marathi
languages: mr-IN
rows:
- letters: # rowkeys_marathi1.xml
# U+094C: ौ DEVANAGARI VOWEL SIGN AU
# U+0914: औ DEVANAGARI LETTER AU
- ["\u094c", "\u0914"]
# U+0948: ै DEVANAGARI VOWEL SIGN AI
# U+0910: ऐ DEVANAGARI LETTER AI
- ["\u0948", "\u0910"]
# U+093E: ा DEVANAGARI VOWEL SIGN AA
# U+0906: आ DEVANAGARI LETTER AA
- ["\u093e", "\u0906"]
# U+0940: ी DEVANAGARI VOWEL SIGN II
# U+0908: ई DEVANAGARI LETTER II
- ["\u0940", "\u0908"]
# U+0942: ू DEVANAGARI VOWEL SIGN UU
# U+090A: ऊ DEVANAGARI LETTER UU
- ["\u0942", "\u090a"]
# U+092C: ब DEVANAGARI LETTER BA
# U+092D: भ DEVANAGARI LETTER BHA
- ["\u092c", "\u092d"]
# U+0939: ह DEVANAGARI LETTER HA
- ["\u0939"]
# U+0917: ग DEVANAGARI LETTER GA
# U+0918: घ DEVANAGARI LETTER GHA
- ["\u0917", "\u0918"]
# U+0926: द DEVANAGARI LETTER DA
# U+0927: ध DEVANAGARI LETTER DHA
- ["\u0926", "\u0927"]
# U+091C: ज DEVANAGARI LETTER JA
# U+091D: झ DEVANAGARI LETTER JHA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+091E: ञ DEVANAGARI LETTER NYA
- ["\u091c", "\u091d", "\u091c\u094d\u091e"]
# U+0921: ड DEVANAGARI LETTER DDA
# U+0922: ढ DEVANAGARI LETTER DDHA
- ["\u0921", "\u0922"]
- letters: # rowkeys_marathi2.xml
# U+094B: ो DEVANAGARI VOWEL SIGN O
# U+0913: ओ DEVANAGARI LETTER O
- ["\u094b", "\u0913"]
# U+0947: े DEVANAGARI VOWEL SIGN E
# U+090F: ए DEVANAGARI LETTER E
- ["\u0947", "\u090f"]
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0905: अ DEVANAGARI LETTER A
- ["\u094d", "\u0905"]
# U+093F: ि DEVANAGARI VOWEL SIGN I
# U+0907: इ DEVANAGARI LETTER I
- ["\u093f", "\u0907"]
# U+0941: ु DEVANAGARI VOWEL SIGN U
# U+0909: उ DEVANAGARI LETTER U
- ["\u0941", "\u0909"]
# U+092A: प DEVANAGARI LETTER PA
# U+092B: फ DEVANAGARI LETTER PHA
- ["\u092a", "\u092b"]
# U+0930: र DEVANAGARI LETTER RA
# U+0931: ऱ DEVANAGARI LETTER RRA
# U+090B: ऋ DEVANAGARI LETTER VOCALIC R
# U+0943: ृ DEVANAGARI VOWEL SIGN VOCALIC R
- ["\u0930", "\u0931", "\u090b", "\u0943"]
# U+0915: क DEVANAGARI LETTER KA
# U+0916: ख DEVANAGARI LETTER KHA
- ["\u0915", "\u0916"]
# U+0924: त DEVANAGARI LETTER TA
# U+0925: थ DEVANAGARI LETTER THA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0930: र DEVANAGARI LETTER RA
- ["\u0924", "\u0925", "\u0924\u094d\u0930"]
# U+091A: च DEVANAGARI LETTER CA
# U+091B: छ DEVANAGARI LETTER CHA
- ["\u091a", "\u091b"]
# U+091F: ट DEVANAGARI LETTER TTA
# U+0920: ठ DEVANAGARI LETTER TTHA
- ["\u091f", "\u0920"]
- letters: # rowkeys_marathi3.xml
# U+0949: ॉ DEVANAGARI VOWEL SIGN CANDRA O
# U+0911: ऑ DEVANAGARI LETTER CANDRA O
- ["\u0949", "\u0911"]
# U+0945: ॅ DEVANAGARI VOWEL SIGN CANDRA E
# U+090D: ऍ DEVANAGARI LETTER CANDRA E
- ["\u0945", "\u090d"]
# U+0902: ं DEVANAGARI SIGN ANUSVARA
# U+0903: DEVANAGARI SIGN VISARGA
# U+0901: ँ DEVANAGARI SIGN CANDRABINDU
- ["\u0902", "\u0903", "\u0901"]
# U+092E: म DEVANAGARI LETTER MA
- ["\u092e"]
# U+0928: न DEVANAGARI LETTER NA
# U+0923: ण DEVANAGARI LETTER NNA
# U+091E: ञ DEVANAGARI LETTER NYA
# U+0919: ङ DEVANAGARI LETTER NGA
- ["\u0928", "\u0923", "\u091e", "\u0919"]
# U+0935: व DEVANAGARI LETTER VA
- ["\u0935"]
# U+0932: ल DEVANAGARI LETTER LA
# U+0933: ळ DEVANAGARI LETTER LLA
- ["\u0932", "\u0933"]
# U+0938: स DEVANAGARI LETTER SA
# U+0936: श DEVANAGARI LETTER SHA
# U+0937: ष DEVANAGARI LETTER SSA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0930: र DEVANAGARI LETTER RA
- ["\u0938", "\u0936", "\u0937", "\u0936\u094d\u0930"]
# U+092F: य DEVANAGARI LETTER YA
- ["\u092f"]
# U+0915: क DEVANAGARI LETTER KA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0937: ष DEVANAGARI LETTER SSA
- ["\u0915\u094d\u0937"]
- $delete
# detected 3 rows

View File

@ -0,0 +1,128 @@
name: Nepali (Romanized)
languages: ne-NP
useZWNJKey: true
rows:
- letters: # rowkeys_nepali_romanized1.xml
# U+091F: ट DEVANAGARI LETTER TTA
# U+093C: ़ DEVANAGARI SIGN NUKTA
# U+0920: ठ DEVANAGARI LETTER TTHA
- {type: case, normal: ["\u091f", "%", "\u093c"], shifted: ["\u0920"]}
# U+094C: ौ DEVANAGARI VOWEL SIGN AU
# U+0914: औ DEVANAGARI LETTER AU
- {type: case, normal: ["\u094c"], shifted: ["\u0914"]}
# U+0947: े DEVANAGARI VOWEL SIGN E
# U+0948: ै DEVANAGARI VOWEL SIGN AI
- {type: case, normal: ["\u0947"], shifted: ["\u0948"]}
# U+0930: र DEVANAGARI LETTER RA
# U+0943: ृ DEVANAGARI VOWEL SIGN VOCALIC R
- {type: case, normal: ["\u0930"], shifted: ["\u0943"]}
# U+0924: त DEVANAGARI LETTER TA
# U+0925: थ DEVANAGARI LETTER THA
- {type: case, normal: ["\u0924"], shifted: ["\u0925"]}
# U+092F: य DEVANAGARI LETTER YA
# U+091E: ञ DEVANAGARI LETTER NYA
- {type: case, normal: ["\u092f"], shifted: ["\u091e"]}
# U+0941: ु DEVANAGARI VOWEL SIGN U
# U+0942: ू DEVANAGARI VOWEL SIGN UU
- {type: case, normal: ["\u0941"], shifted: ["\u0942"]}
# U+093F: ि DEVANAGARI VOWEL SIGN I
# U+0940: ी DEVANAGARI VOWEL SIGN II
- {type: case, normal: ["\u093f"], shifted: ["\u0940"]}
# U+094B: ो DEVANAGARI VOWEL SIGN O
# U+0913: ओ DEVANAGARI LETTER O
- {type: case, normal: ["\u094b"], shifted: ["\u0913"]}
# U+092A: प DEVANAGARI LETTER PA
# U+092B: फ DEVANAGARI LETTER PHA
- {type: case, normal: ["\u092a"], shifted: ["\u092b"]}
# U+0907: इ DEVANAGARI LETTER I
# U+0908: ई DEVANAGARI LETTER II
- {type: case, normal: ["\u0907"], shifted: ["\u0908"]}
- letters: # rowkeys_nepali_romanized2.xml
# U+093E: ा DEVANAGARI VOWEL SIGN AA
# U+0906: आ DEVANAGARI LETTER AA
- {type: case, normal: ["\u093e"], shifted: ["\u0906"]}
# U+0938: स DEVANAGARI LETTER SA
# U+0936: श DEVANAGARI LETTER SHA
- {type: case, normal: ["\u0938"], shifted: ["\u0936"]}
# U+0926: द DEVANAGARI LETTER DA
# U+0927: ध DEVANAGARI LETTER DHA
- {type: case, normal: ["\u0926"], shifted: ["\u0927"]}
# U+0909: उ DEVANAGARI LETTER U
# U+090A: ऊ DEVANAGARI LETTER UU
- {type: case, normal: ["\u0909"], shifted: ["\u090a"]}
# U+0917: ग DEVANAGARI LETTER GA
# U+0918: घ DEVANAGARI LETTER GHA
- {type: case, normal: ["\u0917"], shifted: ["\u0918"]}
# U+0939: ह DEVANAGARI LETTER HA
# U+0905: अ DEVANAGARI LETTER A
- {type: case, normal: ["\u0939"], shifted: ["\u0905"]}
# U+091C: ज DEVANAGARI LETTER JA
# U+091D: झ DEVANAGARI LETTER JHA
- {type: case, normal: ["\u091c"], shifted: ["\u091d"]}
# U+0915: क DEVANAGARI LETTER KA
# U+0916: ख DEVANAGARI LETTER KHA
- {type: case, normal: ["\u0915"], shifted: ["\u0916"]}
# U+0932: ल DEVANAGARI LETTER LA
# U+0965: ॥ DEVANAGARI DOUBLE DANDA
- {type: case, normal: ["\u0932"], shifted: ["\u0965"]}
# U+090F: ए DEVANAGARI LETTER E
# U+0910: ऐ DEVANAGARI LETTER AI
- {type: case, normal: ["\u090f"], shifted: ["\u0910"]}
# U+0950: ॐ DEVANAGARI OM
# U+0903: DEVANAGARI SIGN VISARGA
- {type: case, normal: ["\u0950"], shifted: ["\u0903"]}
- letters: # rowkeys_nepali_romanized3.xml
# U+0937: ष DEVANAGARI LETTER SSA
# U+090B: ऋ DEVANAGARI LETTER VOCALIC R
- {type: case, normal: ["\u0937"], shifted: ["\u090b"]}
# U+0921: ड DEVANAGARI LETTER DDA
# U+0922: ढ DEVANAGARI LETTER DDHA
- {type: case, normal: ["\u0921"], shifted: ["\u0922"]}
# U+091A: च DEVANAGARI LETTER CA
# U+091B: छ DEVANAGARI LETTER CHA
- {type: case, normal: ["\u091a"], shifted: ["\u091b"]}
# U+0935: व DEVANAGARI LETTER VA
# U+0901: ँ DEVANAGARI SIGN CANDRABINDU
- {type: case, normal: ["\u0935"], shifted: ["\u0901"]}
# U+092C: ब DEVANAGARI LETTER BA
# U+092D: भ DEVANAGARI LETTER BHA
- {type: case, normal: ["\u092c"], shifted: ["\u092d"]}
# U+0928: न DEVANAGARI LETTER NA
# U+0923: ण DEVANAGARI LETTER NNA
- {type: case, normal: ["\u0928"], shifted: ["\u0923"]}
# U+092E: म DEVANAGARI LETTER MA
# U+0902: ं DEVANAGARI SIGN ANUSVARA
- {type: case, normal: ["\u092e"], shifted: ["\u0902"]}
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+093D: ऽ DEVANAGARI SIGN AVAGRAHA
# U+0919: ङ DEVANAGARI LETTER NGA
- {type: case, normal: ["\u094d", "\u093d"], shifted: ["\u0919"]}

View File

@ -0,0 +1,166 @@
name: Nepali (Traditional)
languages: ne-NP
useZWNJKey: true
rows:
- letters: # rowkeys_nepali_traditional1.xml
# U+091F: ट DEVANAGARI LETTER TTA
# U+0924: त DEVANAGARI LETTER TA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+091E: ञ DEVANAGARI LETTER NYA
# U+091C: ज DEVANAGARI LETTER JA
# U+0965: ॥ DEVANAGARI DOUBLE DANDA
- {type: case, normal: ["\u091f"], shifted: ["\u0924\u094d\u0924", "\u091e", "\u091c\u094d\u091e", "\u0965"]}
# U+0927: ध DEVANAGARI LETTER DHA
# U+0921: ड DEVANAGARI LETTER DDA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0922: ढ DEVANAGARI LETTER DDHA
# U+0908: ई DEVANAGARI LETTER II
- {type: case, normal: ["\u0927"], shifted: ["\u0921\u094d\u0922", "\u0908"]}
# U+092D: भ DEVANAGARI LETTER BHA
# U+0910: ऐ DEVANAGARI LETTER AI
# U+0918: घ DEVANAGARI LETTER GHA
- {type: case, normal: ["\u092d"], shifted: ["\u0910", "\u0918"]}
# U+091A: च DEVANAGARI LETTER CA
# U+0926: द DEVANAGARI LETTER DA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0935: व DEVANAGARI LETTER VA
# U+0927: ध DEVANAGARI LETTER DHA
- {type: case, normal: ["\u091a"], shifted: ["\u0926\u094d\u0935", "\u0926\u094d\u0927"]}
# U+0924: त DEVANAGARI LETTER TA
# U+091F: ट DEVANAGARI LETTER TTA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+091B: छ DEVANAGARI LETTER CHA
- {type: case, normal: ["\u0924"], shifted: ["\u091f\u094d\u091f", "\u091b"]}
# U+0925: थ DEVANAGARI LETTER THA
# U+0920: ठ DEVANAGARI LETTER TTHA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+091F: ट DEVANAGARI LETTER TTA
- {type: case, normal: ["\u0925"], shifted: ["\u0920\u094d\u0920", "\u091f"]}
# U+0917: ग DEVANAGARI LETTER GA
# U+090A: ऊ DEVANAGARI LETTER UU
# U+0920: ठ DEVANAGARI LETTER TTHA
- {type: case, normal: ["\u0917"], shifted: ["\u090a", "\u0920"]}
# U+0937: ष DEVANAGARI LETTER SSA
# U+0915: क DEVANAGARI LETTER KA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0921: ड DEVANAGARI LETTER DDA
- {type: case, normal: ["\u0937"], shifted: ["\u0915\u094d\u0937", "\u0921"]}
# U+092F: य DEVANAGARI LETTER YA
# U+0907: इ DEVANAGARI LETTER I
# U+0922: ढ DEVANAGARI LETTER DDHA
- {type: case, normal: ["\u092f"], shifted: ["\u0907", "\u0922"]}
# U+0909: उ DEVANAGARI LETTER U
# U+090F: ए DEVANAGARI LETTER E
# U+0923: ण DEVANAGARI LETTER NNA
- {type: case, normal: ["\u0909"], shifted: ["\u090f", "\u0923"]}
# U+0907: इ DEVANAGARI LETTER I
# U+0914: औ DEVANAGARI LETTER AU
# U+0943: ृ DEVANAGARI VOWEL SIGN VOCALIC R
# U+0913: ओ DEVANAGARI LETTER O
- {type: case, normal: ["\u0907", "\u0914"], shifted: ["\u0943", "\u0913"]}
- letters: # rowkeys_nepali_traditional2.xml
# U+092C: ब DEVANAGARI LETTER BA
# U+0906: आ DEVANAGARI LETTER AA
- {type: case, normal: ["\u092c"], shifted: ["\u0906"]}
# U+0915: क DEVANAGARI LETTER KA
# U+0919: ङ DEVANAGARI LETTER NGA
# U+094D: ् DEVANAGARI SIGN VIRAMA
- {type: case, normal: ["\u0915"], shifted: ["\u0919\u094d"]}
# U+092E: म DEVANAGARI LETTER MA
# U+0921: ड DEVANAGARI LETTER DDA
# U+094D: ् DEVANAGARI SIGN VIRAMA
- {type: case, normal: ["\u092e"], shifted: ["\u0921\u094d\u0921"]}
# U+093E: ा DEVANAGARI VOWEL SIGN AA
# U+0901: ँ DEVANAGARI SIGN CANDRABINDU
- {type: case, normal: ["\u093e"], shifted: ["\u0901"]}
# U+0928: न DEVANAGARI LETTER NA
# U+0926: द DEVANAGARI LETTER DA
# U+094D: ् DEVANAGARI SIGN VIRAMA
- {type: case, normal: ["\u0928"], shifted: ["\u0926\u094d\u0926"]}
# U+091C: ज DEVANAGARI LETTER JA
# U+091D: झ DEVANAGARI LETTER JHA
- {type: case, normal: ["\u091c"], shifted: ["\u091d"]}
# U+0935: व DEVANAGARI LETTER VA
# U+094B: ो DEVANAGARI VOWEL SIGN O
- {type: case, normal: ["\u0935"], shifted: ["\u094b"]}
# U+092A: प DEVANAGARI LETTER PA
# U+092B: फ DEVANAGARI LETTER PHA
- {type: case, normal: ["\u092a"], shifted: ["\u092b"]}
# U+093F: ि DEVANAGARI VOWEL SIGN I
# U+0940: ी DEVANAGARI VOWEL SIGN II
- {type: case, normal: ["\u093f"], shifted: ["\u0940"]}
# U+0938: स DEVANAGARI LETTER SA
# U+091F: ट DEVANAGARI LETTER TTA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0920: ठ DEVANAGARI LETTER TTHA
- {type: case, normal: ["\u0938"], shifted: ["\u091f\u094d\u0920"]}
# U+0941: ु DEVANAGARI VOWEL SIGN U
# U+0942: ू DEVANAGARI VOWEL SIGN UU
- {type: case, normal: ["\u0941"], shifted: ["\u0942"]}
- letters: # rowkeys_nepali_traditional3.xml
# U+0936: श DEVANAGARI LETTER SHA
# U+0915: क DEVANAGARI LETTER KA
# U+094D: ् DEVANAGARI SIGN VIRAMA
- {type: case, normal: ["\u0936"], shifted: ["\u0915\u094d"]}
# U+0939: ह DEVANAGARI LETTER HA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+092E: म DEVANAGARI LETTER MA
- {type: case, normal: ["\u0939"], shifted: ["\u0939\u094d\u092e"]}
# U+0905: अ DEVANAGARI LETTER A
# U+090B: ऋ DEVANAGARI LETTER VOCALIC R
- {type: case, normal: ["\u0905"], shifted: ["\u090b"]}
# U+0916: ख DEVANAGARI LETTER KHA
# U+0950: ॐ DEVANAGARI OM
- {type: case, normal: ["\u0916"], shifted: ["\u0950"]}
# U+0926: द DEVANAGARI LETTER DA
# U+094C: ौ DEVANAGARI VOWEL SIGN AU
- {type: case, normal: ["\u0926"], shifted: ["\u094c"]}
# U+0932: ल DEVANAGARI LETTER LA
# U+0926: द DEVANAGARI LETTER DA
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+092F: य DEVANAGARI LETTER YA
- {type: case, normal: ["\u0932"], shifted: ["\u0926\u094d\u092f"]}
# U+0947: े DEVANAGARI VOWEL SIGN E
# U+0903: DEVANAGARI SIGN VISARGA
# U+093D: ऽ DEVANAGARI SIGN AVAGRAHA
# U+0902: ं DEVANAGARI SIGN ANUSVARA
- {type: case, normal: ["\u0947", "\u0903", "\u093d"], shifted: ["\u0902"]}
# U+094D: ् DEVANAGARI SIGN VIRAMA
# U+0919: ङ DEVANAGARI LETTER NGA
- {type: case, normal: ["\u094d"], shifted: ["\u0919"]}
# U+0930: र DEVANAGARI LETTER RA
# U+0941: ु DEVANAGARI VOWEL SIGN U
# U+0948: ै DEVANAGARI VOWEL SIGN AI
# U+0936: श DEVANAGARI LETTER SHA
# U+094D: ् DEVANAGARI SIGN VIRAMA
- {type: case, normal: ["\u0930", "\u0930\u0941"], shifted: ["\u0948", "\u0936\u094d\u0930"]}

View File

@ -100,13 +100,12 @@ fun List<LongPressKey>.toEncodedString(): String {
}
}
class LongPressKeySettings(val context: Context) {
private val currentSetting = context.getSettingBlocking(LongPressKeyLayoutSetting).toLongPressKeyLayoutItems()
val currentOrder: List<LongPressKey>
get() = currentSetting
data class LongPressKeySettings(val currentOrder: List<LongPressKey>) {
companion object {
@JvmStatic
fun load(context: Context): LongPressKeySettings =
LongPressKeySettings(context.getSettingBlocking(LongPressKeyLayoutSetting).toLongPressKeyLayoutItems())
@JvmStatic
fun joinMoreKeys(keys: List<String>): String =
keys.map {
@ -138,7 +137,7 @@ class LongPressKeySettings(val context: Context) {
// Add the necessary configurable keys in the correct order.
// Key kinds not enabled are not added
currentSetting.forEach { kind ->
currentOrder.forEach { kind ->
keys.forEach { key ->
if(getKind(key) == kind) {
finalKeys.add(key)
@ -148,14 +147,4 @@ class LongPressKeySettings(val context: Context) {
return finalKeys
}
override operator fun equals(other: Any?): Boolean {
return other is LongPressKeySettings && (other.currentSetting.joinToString(",") == currentSetting.joinToString(","))
}
override fun hashCode(): Int {
var result = context.hashCode()
result = 31 * result + currentSetting.hashCode()
return result
}
}

View File

@ -215,7 +215,7 @@ class KeyboardLayoutSetV2 internal constructor(
false,
false,
isNumberRowActive,
LongPressKeySettings(context)
LongPressKeySettings.load(context)
)
val layout = getKeyboardLayoutForElement(element)

View File

@ -22,9 +22,9 @@ private fun getNumForCoordinate(keyCoordinate: KeyCoordinate): String {
val centeredCol = keyCoordinate.regularColumn - colOffset
if(centeredCol == 9) {
return "!text/keyspec_symbols_0"
return "!text/keyspec_symbols_0,!text/additional_morekeys_symbols_0"
} else if(centeredCol in 0 until 9) {
return "!text/keyspec_symbols_${centeredCol + 1}"
return "!text/keyspec_symbols_${centeredCol + 1},!text/additional_morekeys_symbols_${centeredCol + 1}"
} else {
return ""
}

View File

@ -2,42 +2,42 @@
"locale": "hi",
"morekeys": {
"period": [
"!autoColumnOrder!9",
"\\\\",
"!autoColumnOrder!8",
"\\,",
".",
"?",
"!",
"॥",
"#",
")",
"(",
"/",
";",
"'",
"@",
":",
";",
"-",
"\\\"",
"+",
"\\%",
"&"
"\"",
"+"
],
"tablet_period": [
"!autoColumnOrder!8",
"\\\\",
".",
"'",
"\\,",
"?",
"!",
"॥",
"#",
")",
"(",
"'",
"/",
";",
"@",
":",
";",
"-",
"\\\"",
"+",
"\\%",
"&"
"\"",
"+"
]
},
"keyspec": {

View File

@ -2,42 +2,42 @@
"locale": "ne",
"morekeys": {
"period": [
"!autoColumnOrder!9",
"!autoColumnOrder!8",
"\\,",
".",
"\\\\",
"?",
"!",
"॥",
"#",
")",
"(",
"/",
";",
"'",
"@",
":",
";",
"-",
"\\\"",
"+",
"\\%",
"&"
"\"",
"+"
],
"tablet_period": [
"!autoColumnOrder!8",
".",
"\\\\",
"'",
"\\,",
"?",
"!",
"॥",
"#",
")",
"(",
"'",
"/",
";",
"@",
":",
";",
"-",
"\\\"",
"+",
"\\%",
"&"
"\"",
"+"
]
},
"keyspec": {