mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-26 07:33:47 +00:00
Add support for the Syloti Nagri script
* lisp/language/indian.el ("Syloti Nagri"): New language environment. Add composition rules for Syloti Nagri. Add sample text and input method. Improve composition rules for Kaithi, Tirhuta, Sharada and Siddham. * lisp/international/fontset.el (script-representative-chars) (setup-default-fontset): Support Syloti Nagri. * lisp/leim/quail/indian.el ("syloti-nagri"): New input method. * etc/HELLO: Add two Syloti Nagri greetings. * etc/NEWS: Announce the new language environment and its input method.
This commit is contained in:
parent
9ac40fb980
commit
f8b2aa5e0f
@ -82,6 +82,7 @@ Slovak (slovenčina) Dobrý deň
|
||||
Slovenian (slovenščina) Pozdravljeni!
|
||||
Spanish (español) ¡Hola!
|
||||
Swedish (svenska) Hej / Goddag / Hallå
|
||||
Syloti Nagri (ꠍꠤꠟꠐꠤ ꠘꠣꠉꠞꠤ) ꠀꠌ꠆ꠍꠣꠟꠣꠝꠥ ꠀꠟꠣꠁꠇꠥꠝ / ꠘꠝꠡ꠆ꠇꠣꠞ
|
||||
Tamil (தமிழ்) வணக்கம்
|
||||
Telugu (తెలుగు) నమస్కారం
|
||||
TaiViet (ꪁꪫꪱꪣ ꪼꪕ) ꪅꪰꪙꫂ ꪨꪮꫂ ꪁꪫꪱ / ꪅꪽ ꪨꪷ ꪁꪫꪱ
|
||||
|
5
etc/NEWS
5
etc/NEWS
@ -796,6 +796,11 @@ language. Nowadays it is mostly used by the Buddhist monks in Japan for
|
||||
religious writings. A new input method, 'siddham', is provided to type
|
||||
text in this script.
|
||||
|
||||
*** New language environment "Syloti Nagri"
|
||||
This language environment supports the Syloti Nagri script for the Sylheti
|
||||
language, which is spoke in parts of Bangladesh, Assam and Tripura. A new
|
||||
input method, 'syloti-nagri', is provided to type text in this script.
|
||||
|
||||
---
|
||||
*** New Greek translation of the Emacs tutorial.
|
||||
Type 'C-u C-h t' to select it in case your language setup does not do
|
||||
|
@ -194,6 +194,7 @@
|
||||
(kanbun #x319D)
|
||||
(han #x5B57)
|
||||
(yi #xA288)
|
||||
(syloti-nagri #xA807 #xA823 #xA82C)
|
||||
(javanese #xA980)
|
||||
(cham #xAA00)
|
||||
(tai-viet #xAA80)
|
||||
@ -748,6 +749,7 @@
|
||||
symbol
|
||||
braille
|
||||
yi
|
||||
syloti-nagri
|
||||
javanese
|
||||
tai-viet
|
||||
aegean-number
|
||||
|
@ -180,6 +180,17 @@ Sanskrit language and one of its script Siddham is supported
|
||||
in this language environment."))
|
||||
'("Indian"))
|
||||
|
||||
(set-language-info-alist
|
||||
"Syloti Nagri" '((charset unicode)
|
||||
(coding-system utf-8)
|
||||
(coding-priority utf-8)
|
||||
(input-method . "syloti-nagri")
|
||||
(sample-text . "Syloti Nagri (ꠍꠤꠟꠐꠤ ꠘꠣꠉꠞꠤ) ꠀꠌ꠆ꠍꠣꠟꠣꠝꠥ ꠀꠟꠣꠁꠇꠥꠝ")
|
||||
(documentation . "\
|
||||
Sylheti language and its script Syloti Nagri is supported
|
||||
in this language environment."))
|
||||
'("Indian"))
|
||||
|
||||
|
||||
;; Replace mnemonic characters in REGEXP according to TABLE. TABLE is
|
||||
;; an alist of (MNEMONIC-STRING . REPLACEMENT-STRING).
|
||||
@ -485,12 +496,13 @@ in this language environment."))
|
||||
'(#x110B0 . #x110BA)
|
||||
(list (vector
|
||||
;; Consonant based syllables
|
||||
(concat consonant nukta "?\\(?:" virama zwj "?" consonant nukta "?\\)*\\(?:"
|
||||
virama zwj "?\\|" vowel "*" nukta "?" nasal "?\\)")
|
||||
(concat consonant nukta "?\\(?:" virama zwj "?" consonant
|
||||
nukta "?\\)*\\(?:" virama zwj "?\\|" vowel "*" nukta
|
||||
"?" nasal "?\\)")
|
||||
1 'font-shape-gstring)
|
||||
(vector
|
||||
;; Nasal vowels
|
||||
(concat independent-vowel nasal "?")
|
||||
;; Vowel based syllables
|
||||
(concat independent-vowel nukta "?" virama "?" vowel "?")
|
||||
1 'font-shape-gstring)))
|
||||
(set-char-table-range composition-function-table
|
||||
'(#x110BD . #x110BD)
|
||||
@ -516,12 +528,13 @@ in this language environment."))
|
||||
'(#x114B0 . #x114C3)
|
||||
(list (vector
|
||||
;; Consonant based syllables
|
||||
(concat consonant nukta "?\\(?:" virama consonant nukta "?\\)*\\(?:"
|
||||
virama "\\|" vowel "*" nukta "?" nasal "?\\)")
|
||||
(concat consonant nukta "?\\(?:" virama consonant nukta
|
||||
"?\\)*\\(?:" virama "\\|" vowel "*" nukta "?"
|
||||
nasal "?\\)")
|
||||
1 'font-shape-gstring)
|
||||
(vector
|
||||
;; Nasal vowels
|
||||
(concat independent-vowel nasal "?")
|
||||
;; Vowel based syllables
|
||||
(concat independent-vowel nukta "?" virama "?" vowel "?" nasal "?")
|
||||
1 'font-shape-gstring))))
|
||||
|
||||
;; Sharada composition rules
|
||||
@ -535,19 +548,21 @@ in this language environment."))
|
||||
(virama "\x111C0")
|
||||
(fricatives "[\x111C2\x111C3]")
|
||||
(sandhi-mark "\x111C9")
|
||||
(misc "[^\x11180-\x111C0\x111C2\x111C3\x111C9-\x111CC\x111CE-\x111CF]"))
|
||||
(misc "[\x111C4-\x111C8\x111CD]"))
|
||||
(set-char-table-range composition-function-table
|
||||
'(#x111B3 . #x111CF)
|
||||
'(#x111B3 . #x111CE)
|
||||
(list (vector
|
||||
;; Consonant based syllables
|
||||
(concat consonant nukta "?" vowel-modifier "?\\(?:" virama
|
||||
consonant nukta "?" vowel-modifier "?\\)*\\(?:" virama
|
||||
"\\|" vowel "*" nukta "?" nasal "?" extra-short-vowel-mark
|
||||
"?" vowel-modifier "?" sandhi-mark "?+" misc "?\\)")
|
||||
"?" vowel-modifier "?" sandhi-mark "?+" misc "?\\)")
|
||||
1 'font-shape-gstring)
|
||||
(vector
|
||||
;; Nasal vowels
|
||||
(concat independent-vowel nasal "?")
|
||||
;; Vowel based syllables
|
||||
(concat independent-vowel nukta "?" vowel-modifier "?" virama "?"
|
||||
vowel "?" extra-short-vowel-mark "?" sandhi-mark "?"
|
||||
fricatives "?" misc "?")
|
||||
1 'font-shape-gstring)
|
||||
(vector
|
||||
;; Fricatives with Consonants
|
||||
@ -560,17 +575,47 @@ in this language environment."))
|
||||
(independent-vowel "[\x11580-\x1158D\x115D8-\x115DB]")
|
||||
(vowel "[\x115AF-\x115BB\x115DC\x115DD]")
|
||||
(nasal "[\x115BC\x115BD]")
|
||||
(visarga "\x115BE")
|
||||
(virama "\x115BF"))
|
||||
(set-char-table-range composition-function-table
|
||||
'(#x115AF . #x115C0)
|
||||
(list (vector
|
||||
;; Consonant based syllables
|
||||
(concat consonant nukta "?\\(?:" virama consonant nukta "?\\)*\\(?:"
|
||||
virama "\\|" vowel "*" nukta "?" nasal "?\\)")
|
||||
(concat consonant nukta "?" "\\(?:" virama consonant nukta
|
||||
"?\\)*\\(?:" virama "\\|" vowel "*" nukta "?" nasal
|
||||
"?" visarga "?\\)")
|
||||
1 'font-shape-gstring)
|
||||
(vector
|
||||
;; Nasal vowels
|
||||
(concat independent-vowel nasal "?")
|
||||
;; Vowels based syllables
|
||||
(concat independent-vowel nukta "?" virama "?" vowel "?"
|
||||
nasal "?" visarga "?")
|
||||
1 'font-shape-gstring))))
|
||||
|
||||
;; Syloti Nagri composition rules
|
||||
(let ((consonant "[\xA807-\xA80A\xA80C-\xA822]")
|
||||
(vowel "[\xA802\xA823-\xA827]")
|
||||
(nasal "[\xA80B]")
|
||||
(virama "\xA806")
|
||||
(alternate-virama "\xA82C"))
|
||||
(set-char-table-range composition-function-table
|
||||
'(#xA806 . #xA806)
|
||||
(list (vector
|
||||
;; Consonant conjunct based syllables
|
||||
(concat consonant "\\(?:" virama consonant "\\)+"
|
||||
vowel "?" nasal "?")
|
||||
1 'font-shape-gstring)))
|
||||
(set-char-table-range composition-function-table
|
||||
'(#xA823 . #xA827)
|
||||
(list (vector
|
||||
;; Non Consonant conjunct based syllables
|
||||
(concat consonant vowel nasal "?")
|
||||
1 'font-shape-gstring)))
|
||||
(set-char-table-range composition-function-table
|
||||
'(#xA82C . #xA82C)
|
||||
(list (vector
|
||||
;; Consonant with the alternate virama
|
||||
(concat consonant "\\(?:" alternate-virama consonant "\\)+"
|
||||
vowel "?" nasal "?")
|
||||
1 'font-shape-gstring))))
|
||||
|
||||
(provide 'indian)
|
||||
|
@ -1267,4 +1267,85 @@ Full key sequences are listed below:")
|
||||
("`m" ?𑖼)
|
||||
)
|
||||
|
||||
|
||||
(quail-define-package
|
||||
"syloti-nagri" "Syloti Nagri" "ꠍꠤ" t "Syloti Nagri 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" ?꠨)
|
||||
("`Q" ?꠩)
|
||||
("w" ?ꠒ)
|
||||
("W" ?ꠓ)
|
||||
("`w" ?꠪)
|
||||
("`W" ?꠫)
|
||||
("e" ?ꠦ)
|
||||
("E" ?ꠄ)
|
||||
("r" ?ꠞ)
|
||||
("R" ?ꠠ)
|
||||
("t" ?ꠔ)
|
||||
("T" ?ꠕ)
|
||||
("y" ?ꠂ)
|
||||
("u" ?ꠥ)
|
||||
("U" ?ꠃ)
|
||||
("i" ?ꠤ)
|
||||
("I" ?ꠁ)
|
||||
("o" ?ꠧ)
|
||||
("O" ?ꠅ)
|
||||
("p" ?ꠙ)
|
||||
("P" ?ꠚ)
|
||||
("a" ?ꠣ)
|
||||
("A" ?ꠀ)
|
||||
("s" ?ꠡ)
|
||||
("d" ?ꠖ)
|
||||
("D" ?ꠗ)
|
||||
("f" ?꠆)
|
||||
("F" ?꠬)
|
||||
("g" ?ꠉ)
|
||||
("G" ?ꠊ)
|
||||
("h" ?ꠢ)
|
||||
("j" ?ꠎ)
|
||||
("J" ?ꠏ)
|
||||
("k" ?ꠇ)
|
||||
("K" ?ꠈ)
|
||||
("l" ?ꠟ)
|
||||
("c" ?ꠌ)
|
||||
("C" ?ꠍ)
|
||||
("`c" #x200C) ; ZWNJ
|
||||
("b" ?ꠛ)
|
||||
("B" ?ꠜ)
|
||||
("n" ?ꠘ)
|
||||
("m" ?ꠝ)
|
||||
("M" ?ꠋ)
|
||||
)
|
||||
|
||||
;;; indian.el ends here
|
||||
|
Loading…
Reference in New Issue
Block a user