Add support for the Limbu script (bug#55621)

* lisp/language/indian.el ("Limbu"): New language environment.
Add composition rules for Limbu.  Add sample text and input
method.
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Support Limbu.
* lisp/leim/quail/indian.el ("limbu"): New input method.

* etc/HELLO: Add a Limbu greeting.
* etc/NEWS: Announce the new language environment and its
input method.
This commit is contained in:
समीर सिंह Sameer Singh 2022-05-25 07:42:29 +05:30 committed by Eli Zaretskii
parent e256752160
commit 8d5eff3d84
5 changed files with 121 additions and 0 deletions

View file

@ -70,6 +70,7 @@ Kannada (ಕನ್ನಡ) ನಮಸ್ಕಾರ
Khmer (ភាសាខ្មែរ) ជំរាបសួរ
Lakota (Lakȟotiyapi) Taŋyáŋ yahí!
Lao (ພາສາລາວ) ສະບາຍດີ / ຂໍໃຫ້ໂຊກດີ
Limbu (ᤕᤰᤌᤢᤱ ᤐᤠᤴ) ᤛᤣᤘᤠᤖᤥ
Malayalam (മലയാളം) നമസ്കാരം
Maldivian (ދިވެހި) އައްސަލާމު ޢަލައިކުމް / ކިހިނެހް؟
Maltese (il-Malti) Bonġu / Saħħa

View file

@ -822,6 +822,7 @@ corresponding language environments are:
**** Hanunoo script and language environment
**** Buhid script and language environment
**** Tagbanwa script and language environment
**** Limbu script and language environment
---
*** The "Oriya" language environment was renamed to "Odia".

View file

@ -188,6 +188,7 @@
(tagbanwa #x1760)
(khmer #x1780)
(mongolian #x1826)
(limbu #x1901 #x1920 #x1936)
(tai-le #x1950)
(tai-lue #x1980)
(tai-tham #x1A20 #x1A55 #x1A61 #x1A80)
@ -756,6 +757,7 @@
hanunoo
buhid
tagbanwa
limbu
symbol
braille
yi

View file

@ -222,6 +222,17 @@ Marathi language and one of its script Modi is supported
in this language environment."))
'("Indian"))
(set-language-info-alist
"Limbu" '((charset unicode)
(coding-system utf-8)
(coding-priority utf-8)
(input-method . "limbu")
(sample-text . "Limbu (ᤕᤠᤰᤌᤢᤱ ᤐᤠᤴ) ᤛᤣᤘᤠᤖᤥ")
(documentation . "\
Limbu language and its script is supported in this
language environment."))
'("Indian"))
;; Replace mnemonic characters in REGEXP according to TABLE. TABLE is
;; an alist of (MNEMONIC-STRING . REPLACEMENT-STRING).
@ -670,5 +681,20 @@ in this language environment."))
nasal "?" visarga "?")
1 'font-shape-gstring))))
;; Limbu composition rules
(let ((consonant "[\x1900-\x191E]")
(vowel "[\x1920-\x1928]")
(subjoined-letter "[\x1929-\x192B]")
(small-letter "[\x1930-\x1938]")
(other-signs "[\x1939\x193A]")
(sa-i "\x193B"))
(set-char-table-range composition-function-table
'(#x1920 . #x193B)
(list (vector
;; Consonant based syllables
(concat consonant sa-i "?" subjoined-letter "?" small-letter
"?" vowel "?" other-signs "?")
1 'font-shape-gstring))))
(provide 'indian)
;;; indian.el ends here

View file

@ -1565,4 +1565,95 @@ Full key sequences are listed below:")
("`M" ?ଽ)
)
(quail-define-package
"limbu" "Limbu" "" t "Limbu phonetic input method.
`\\=`' is used to switch levels instead of Alt-Gr.
" nil t t t t nil nil nil nil nil t)
(quail-define-rules
("``" ?₹)
("1" ?᥇)
("`1" ?1)
("`!" ?᥄)
("2" ?᥈)
("`2" ?2)
("3" ?᥉)
("`3" ?3)
("4" ?᥊)
("`4" ?4)
("5" ?᥋)
("`5" ?5)
("6" ?᥌)
("`6" ?6)
("7" ?᥍)
("`7" ?7)
("8" ?᥎)
("`8" ?8)
("9" ?᥏)
("`9" ?9)
("0" ?᥆)
("`0" ?0)
("`\\" ?।)
("`|" ?॥)
("`" ?ᤘ)
("q" ?ᤧ)
("Q" ?ᤨ)
("`q" ?᥀)
("w" ?ᤘ)
("W" ?ᤫ)
("e" ?ᤣ)
("E" ?ᤤ)
("r" ?ᤖ)
("R" ?ᤷ)
("`r" ?ᤪ)
("t" ?ᤋ)
("T" ?ᤌ)
("`t" ?ᤳ)
("`T" ?ᤞ)
("y" ?ᤕ)
("Y" ?ᤩ)
("u" ?ᤢ)
("i" ?ᤡ)
("o" ?ᤥ)
("O" ?ᤦ)
("p" ?ᤐ)
("P" ?ᤑ)
("`p" ?ᤵ)
("a" ?ᤠ)
("A" ?ᤀ)
("s" ?ᤛ)
("S" ?ᤙ)
("d" ?ᤍ)
("D" ?ᤎ)
("f" ?᤻)
("g" ?ᤃ)
("G" ?ᤄ)
("`g" ?ᤝ)
("h" ?ᤜ)
("j" ?ᤈ)
("J" ?ᤉ)
("k" ?ᤁ)
("K" ?ᤂ)
("`k" ?ᤰ)
("l" ?ᤗ)
("L" ?ᤸ)
("z" ?ᤊ)
("Z" ?ᤅ)
("x" ?ᤚ)
("X" ?᤹)
("c" ?ᤆ)
("C" ?ᤇ)
("`c" #x200C) ; ZWNJ
("v" ?᤺)
("b" ?ᤒ)
("B" ?ᤓ)
("n" ?ᤏ)
("N" ?ᤴ)
("m" ?ᤔ)
("M" ?ᤱ)
("`m" ?ᤲ)
("`?" ?᥅)
)
;;; indian.el ends here