summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorसमीर सिंह Sameer Singh <lumarzeli30@gmail.com>2022-05-30 17:46:14 +0530
committerEli Zaretskii <eliz@gnu.org>2022-05-31 16:12:59 +0300
commitf1e21a03419f6b2071153098a6129e5701884643 (patch)
treece6f3e64f4dffd678704e10bf5c377e029260bbf /lisp
parent90957dfb7a21528b19f587b1aa64752f5f2f194e (diff)
downloademacs-f1e21a03419f6b2071153098a6129e5701884643.tar.gz
Add support for the Makasar and Lontara scripts (bug#55734)
* lisp/language/indonesian.el ("Makasar") ("Buginese"): New language environment. Add composition rules for Makasar and Lontara. Add sample texts and input methods. * lisp/international/fontset.el (script-representative-chars) (setup-default-fontset): Support Makasar and Buginese. * lisp/leim/quail/indonesian.el ("makasar") ("lontara"): New input methods. * etc/HELLO: Add Makasar and Buginese greetings. * etc/NEWS: Announce the new language environments.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/international/fontset.el4
-rw-r--r--lisp/language/indonesian.el28
-rw-r--r--lisp/leim/quail/indonesian.el71
3 files changed, 100 insertions, 3 deletions
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index 0c008f90b70..425e9dcb416 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -189,6 +189,7 @@
(khmer #x1780)
(mongolian #x1826)
(limbu #x1901 #x1920 #x1936)
+ (buginese #x1A00 #x1A1E)
(balinese #x1B13 #x1B35 #x1B5E)
(sundanese #x1B8A #x1BAB #x1CC4)
(batak #x1BC2 #x1BE7 #x1BFF)
@@ -266,7 +267,7 @@
(marchen #x11C72)
(masaram-gondi #x11D00)
(gunjala-gondi #x11D60)
- (makasar #x11EE0)
+ (makasar #x11EE0 #x11EF7)
(cuneiform #x12000)
(cypro-minoan #x12F90)
(egyptian #x13000)
@@ -762,6 +763,7 @@
buhid
tagbanwa
limbu
+ buginese
balinese
sundanese
batak
diff --git a/lisp/language/indonesian.el b/lisp/language/indonesian.el
index efc7b739047..699f8192543 100644
--- a/lisp/language/indonesian.el
+++ b/lisp/language/indonesian.el
@@ -73,6 +73,24 @@ and Simalungun, are supported in this language environment.")))
(documentation . "\
Rejang language and its script are supported in this language environment.")))
+(set-language-info-alist
+ "Makasar" '((charset unicode)
+ (coding-system utf-8)
+ (coding-priority utf-8)
+ (input-method . "makasar")
+ (sample-text . "Makasar (𑻪𑻢𑻪𑻢) 𑻦𑻤𑻵𑻱")
+ (documentation . "\
+Makassarese language and its script Makasar are supported in this language environment.")))
+
+(set-language-info-alist
+ "Buginese" '((charset unicode)
+ (coding-system utf-8)
+ (coding-priority utf-8)
+ (input-method . "lontara")
+ (sample-text . "Buginese (ᨒᨚᨈᨑ) ᨖᨒᨚ")
+ (documentation . "\
+Buginese language and its script Lontara are supported in this language environment.")))
+
;; Balinese composition rules
(let ((consonant "[\x1B13-\x1B33\x1B45-\x1B4B]")
(independent-vowel "[\x1B05-\x1B12]")
@@ -165,5 +183,15 @@ Rejang language and its script are supported in this language environment.")))
dependant-consonant "?")
1 'font-shape-gstring))))
+;; Makasar composition rules
+(let ((akshara "[\x11EE0-\x11EF2]")
+ (vowel "[\x11EF3-\x11EF6]"))
+ (set-char-table-range composition-function-table
+ '(#x11EF3 . #x11EF6)
+ (list (vector
+ ;; Akshara based syllables
+ (concat akshara vowel "*")
+ 1 'font-shape-gstring))))
+
(provide 'indonesian)
;;; indonesian.el ends here
diff --git a/lisp/leim/quail/indonesian.el b/lisp/leim/quail/indonesian.el
index 206bcfc5fe3..8d0d158076a 100644
--- a/lisp/leim/quail/indonesian.el
+++ b/lisp/leim/quail/indonesian.el
@@ -444,8 +444,8 @@
("`m" ?ᯣ))
(quail-define-package
- "rejang" "Rejang" "ꤽꥍ" nil "Rejang phonetic input method."
- nil t t t t nil nil nil nil nil t)
+ "rejang" "Rejang" "ꤽꥍ" nil "Rejang phonetic input method."
+ nil t t t t nil nil nil nil nil t)
(quail-define-rules
("q" ?꥟)
@@ -486,5 +486,72 @@
("m" ?ꤸ)
("M" ?ꥂ))
+(quail-define-package
+ "makasar" "Makasar" "𑻪" nil "Makasar phonetic input method."
+ nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("q" ?𑻷)
+ ("Q" ?𑻸)
+ ("e" ?𑻵)
+ ("r" ?𑻭)
+ ("t" ?𑻦)
+ ("y" ?𑻬)
+ ("u" ?𑻴)
+ ("i" ?𑻳)
+ ("o" ?𑻶)
+ ("p" ?𑻣)
+ ("a" ?𑻱)
+ ("s" ?𑻰)
+ ("d" ?𑻧)
+ ("g" ?𑻡)
+ ("j" ?𑻪)
+ ("k" ?𑻠)
+ ("l" ?𑻮)
+ ("z" ?𑻢)
+ ("Z" ?𑻲)
+ ("x" ?𑻫)
+ ("c" ?𑻩)
+ ("v" ?𑻯)
+ ("b" ?𑻤)
+ ("n" ?𑻨)
+ ("m" ?𑻥))
+
+(quail-define-package
+ "lontara" "Lontara" "ᨒ" nil "Lontara phonetic input method."
+ nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("q" ?᨞)
+ ("Q" ?᨟)
+ ("e" ?ᨙ)
+ ("E" ?ᨛ)
+ ("r" ?ᨑ)
+ ("t" ?ᨈ)
+ ("y" ?ᨐ)
+ ("u" ?ᨘ)
+ ("i" ?ᨗ)
+ ("o" ?ᨚ)
+ ("p" ?ᨄ)
+ ("a" ?ᨕ)
+ ("s" ?ᨔ)
+ ("d" ?ᨉ)
+ ("g" ?ᨁ)
+ ("h" ?ᨖ)
+ ("j" ?ᨍ)
+ ("k" ?ᨀ)
+ ("l" ?ᨒ)
+ ("z" ?ᨂ)
+ ("Z" ?ᨃ)
+ ("x" ?ᨎ)
+ ("X" ?ᨏ)
+ ("c" ?ᨌ)
+ ("v" ?ᨓ)
+ ("b" ?ᨅ)
+ ("n" ?ᨊ)
+ ("N" ?ᨋ)
+ ("m" ?ᨆ)
+ ("M" ?ᨇ))
+
(provide 'indonesian)
;;; indonesian.el ends here