]> git.eshelyaron.com Git - emacs.git/commitdiff
Add support for the Limbu script (bug#55621)
authorसमीर सिंह Sameer Singh <lumarzeli30@gmail.com>
Wed, 25 May 2022 02:12:29 +0000 (07:42 +0530)
committerEli Zaretskii <eliz@gnu.org>
Wed, 25 May 2022 18:37:12 +0000 (21:37 +0300)
* 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.

etc/HELLO
etc/NEWS
lisp/international/fontset.el
lisp/language/indian.el
lisp/leim/quail/indian.el

index a9653a416415da31a0616ce6928a190de323ad36..31f753c73a81eaf6ee89b997f731c3f98ec5794b 100644 (file)
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -70,6 +70,7 @@ Kannada (ಕನ್ನಡ)     ನಮಸ್ಕಾರ
 Khmer (ភាសាខ្មែរ)    ជំរាបសួរ
 Lakota (Lakȟotiyapi)  Taŋyáŋ yahí!
 Lao (ພາສາລາວ)    ສະບາຍດີ / ຂໍໃຫ້ໂຊກດີ
+Limbu (ᤕᤰᤌᤢᤱ ᤐᤠᤴ)      ᤛᤣᤘᤠᤖᤥ
 Malayalam (മലയാളം) നമസ്കാരം
 Maldivian (ދިވެހި)       އައްސަލާމު ޢަލައިކުމް / ކިހިނެހް؟
 Maltese (il-Malti)     Bonġu / Saħħa
index 92ebe220166fc3053de01b873486d27c629acab1..0f59d545e37830d9610bdd37da78333d8e6fddf5 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -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".
index 5967648f36f84fcae16379b05282423a73ada374..42fbedae1d4059a2e85c1ac36872396fe8604046 100644 (file)
         (tagbanwa #x1760)
        (khmer #x1780)
        (mongolian #x1826)
+        (limbu #x1901 #x1920 #x1936)
         (tai-le #x1950)
         (tai-lue #x1980)
         (tai-tham #x1A20 #x1A55 #x1A61 #x1A80)
                     hanunoo
                     buhid
                     tagbanwa
+                    limbu
                    symbol
                    braille
                    yi
index a5563a3ff77a1b39bae1794d03c05a9df68e9f8b..5082a97f34ca266fd47ea03f1d790d118a642648 100644 (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
index b76cf9a80d43def6c34ae89b43264c47b4e5841b..031c30aabb05995f6e706c83850f53978d5739ba 100644 (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