]> git.eshelyaron.com Git - emacs.git/commitdiff
Add support for the Tirhuta script
authorसमीर सिंह Sameer Singh <lumarzeli30@gmail.com>
Sun, 8 May 2022 12:12:35 +0000 (17:42 +0530)
committerEli Zaretskii <eliz@gnu.org>
Sun, 8 May 2022 14:35:29 +0000 (17:35 +0300)
* lisp/language/indian.el ("Tirhuta"): New language environment.
Add composition rules for Tirhuta.  Add sample text and input
method.
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Support Tirhuta.
* lisp/leim/quail/indian.el ("tirhuta"): New input method.

* etc/HELLO: Add a Tirhuta 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 ac0cb823eae3d9065f311205c5a9eb40aec56b05..bd33c32b7a9fc07133afd17d4a7c3a9b4e3e67e5 100644 (file)
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -86,6 +86,8 @@ TaiViet (ꪁꪫꪱꪣ ꪼꪕ) ꪅꪰꪙꫂ ꪨꪮꫂ ꪁꪫꪱ / ꪅꪽ ꪨꪷ 
 Thai (ภาษาไทย)   สวัสดีครับ / สวัสดีค่ะ
 Tibetan (བོད་སྐད་)     བཀྲ་ཤིས་བདེ་ལེགས༎
 Tigrigna (ትግርኛ)        ሰላማት
+
+Tirhuta (𑒞𑒱𑒩𑒯𑒳𑒞𑒰) 𑒣𑓂𑒩𑒢𑒰𑒧 / 𑒮𑒲𑒞𑒰𑒩𑒰𑒧
 Turkish (Türkçe)     Merhaba
 Ukrainian (українська)       Вітаю
 Vietnamese (tiếng Việt)    Chào bạn
index 5c13b72c29b7cab54eb261e8b86475766a001bb0..5d2b5e12cfa09a9ce62951762196467b3a88f5ef 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -744,6 +744,11 @@ an important writing system of the past mainly used for administrative
 purposes.  A new input method, 'kaithi', is provided to type text in
 this script.
 
+*** New language environment "Tirhuta".
+This language environment supports Tirhuta or Mithilaakshar, which is
+used to write the Maithili language.  A new input method, 'tirhuta',
+is provided to type text in this script.
+
 \f
 * Changes in Specialized Modes and Packages in Emacs 29.1
 
index 66f5068cf76a633bed0dcfc1c727e37544e9d7d7..2d417d632f86e8e0575622a45c39081636fe8a63 100644 (file)
        (khudawadi #x112B0)
        (grantha #x11305)
        (newa #x11400)
-       (tirhuta #x11481)
+       (tirhuta #x11481 #x1148F #x114D0)
        (siddham #x11580)
        (modi #x11600)
        (takri #x11680)
                     old-uyghur
                     brahmi
                     kaithi
+                    tirhuta
                    makasar
                     dives-akuru
                    cuneiform
index ce46d325494fc3f69664dface683a357a68afa44..922061c3b6a953e905afa97c4a148a83ad5503ff 100644 (file)
@@ -147,6 +147,17 @@ Languages such as Awadhi, Bhojpuri, Magahi and Maithili
 which used the Kaithi script are supported in this language environment."))
  '("Indian"))
 
+(set-language-info-alist
+ "Tirhuta" '((charset unicode)
+             (coding-system utf-8)
+             (coding-priority utf-8)
+             (input-method . "tirhuta")
+             (sample-text . "Tirhuta (𑒞𑒱𑒩𑒯𑒳𑒞𑒰)        𑒣𑓂𑒩𑒢𑒰𑒧")
+             (documentation . "\
+Maithili language and its script Tirhuta is supported in this
+language environment."))
+ '("Indian"))
+
 
 ;; Replace mnemonic characters in REGEXP according to TABLE.  TABLE is
 ;; an alist of (MNEMONIC-STRING . REPLACEMENT-STRING).
@@ -466,4 +477,17 @@ which used the Kaithi script are supported in this language environment."))
 
 (provide 'indian)
 
+;; Tirhuta composition rules
+(let ((consonant            "[\x1148F-\x114AF]")
+      (nukta                "\x114C3")
+      (vowel                "[\x114B0-\x114BE]")
+      (anusvara-candrabindu "[\x114BF\x114C0]")
+      (virama               "\x114C2"))
+  (set-char-table-range composition-function-table
+                        '(#x114B0 . #x114C3)
+                        (list (vector
+                               (concat consonant nukta "?\\(?:" virama consonant nukta "?\\)*\\(?:"
+                                       virama "\\|" vowel "*" nukta "?" anusvara-candrabindu "?\\)")
+                               1 'font-shape-gstring))))
+
 ;;; indian.el ends here
index a52d44bc083675e472496939f2ea6999cea98cff..f730a5ca0f1252c557e7a5006f4f270cb289a457 100644 (file)
@@ -860,6 +860,7 @@ Full key sequences are listed below:")
 ("8"  ?८)
 ("`8" ?8)
 ("9"  ?९)
+("`9" ?9)
 ("0"  ?०)
 ("`0" ?0)
 ("`\)" ?𑂻)
@@ -936,5 +937,111 @@ Full key sequences are listed below:")
 ("`m" ?𑂀)
 )
 
+(quail-define-package
+ "tirhuta" "Tirhuta" "𑒞𑒱" t "Tirhuta 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"  ?𑒚)
+("w"  ?𑒛)
+("W"  ?𑒜)
+("e"  ?𑒺)
+("E"  ?𑒹)
+("`e" ?𑒋)
+("r"  ?𑒩)
+("R"  ?𑒵)
+("`r" ?𑒇)
+("t"  ?𑒞)
+("T"  ?𑒟)
+("y"  ?𑒨)
+("Y"  ?𑒻)
+("`y" ?𑒌)
+("u"  ?𑒳)
+("U"  ?𑒴)
+("`u" ?𑒅)
+("`U" ?𑒆)
+("i"  ?𑒱)
+("I"  ?𑒲)
+("`i" ?𑒃)
+("`I" ?𑒄)
+("o"  ?𑒽)
+("O"  ?𑒼)
+("`o" ?𑒍)
+("p"  ?𑒣)
+("P"  ?𑒤)
+("a"  ?𑒰)
+("A"  ?𑒂)
+("`a" ?𑒁)
+("s"  ?𑒮)
+("S"  ?𑒬)
+("d"  ?𑒠)
+("D"  ?𑒡)
+("f"  ?𑓂)
+("F" ?𑒶)
+("`f" ?𑒈)
+("g"  ?𑒑)
+("G"  ?𑒒)
+("h"  ?𑒯)
+("H"  ?𑓁)
+("j"  ?𑒖)
+("J"  ?𑒗)
+("k"  ?𑒏)
+("K"  ?𑒐)
+("l"  ?𑒪)
+("L" ?𑒷)
+("`l" ?𑒉)
+("z"  ?𑒘)
+("Z"  ?𑒓)
+("`z" ?𑒸)
+("`Z" ?𑒊)
+("x"  ?𑒭)
+("X"  ?𑓃)
+("c"  ?𑒔)
+("C"  ?𑒕)
+("`c" #x200C)  ; ZWNJ
+("v"  ?𑒫)
+("V" ?𑒾)
+("`v" ?𑒎)
+("b"  ?𑒥)
+("B"  ?𑒦)
+("`b" ?𑒀)
+("`B" ?𑓄)
+("n"  ?𑒢)
+("N"  ?𑒝)
+("`n" ?𑓇)
+("`N" ?𑓅)
+("m"  ?𑒧)
+("M"  ?𑓀)
+("`m" ?𑒿)
+)
+
 
 ;;; indian.el ends here