summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--etc/HELLO1
-rw-r--r--etc/NEWS9
-rw-r--r--lisp/international/fontset.el2
-rw-r--r--lisp/language/misc-lang.el22
-rw-r--r--lisp/leim/quail/misc-lang.el97
5 files changed, 126 insertions, 5 deletions
diff --git a/etc/HELLO b/etc/HELLO
index d73465318ca..18c5ee5e540 100644
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -24,6 +24,7 @@ Non-ASCII examples:
LANGUAGE (NATIVE NAME) HELLO
---------------------- -----
+Adlam (๐žค€๐žคฃ๐žคค๐žคข๐žคฅ) ๐žค…๐žคข๐žคค๐žคข๐žฅ„๐žคฅ
Amharic (แŠ แˆ›แˆญแŠ›) แˆ แˆ‹แˆ
Arabic (ุงู„ุนุฑุจูŠู‘ุฉ) ุงู„ุณู‘ู„ุงู… ุนู„ูŠูƒู…
Armenian (ีฐีกีตีฅึ€ีฅีถ) ิฒีกึ€ึ‡ ีฑีฅีฆ
diff --git a/etc/NEWS b/etc/NEWS
index e70f9be5468..8cb4de4d064 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1229,10 +1229,10 @@ to edit such sequences by allowing point to "enter" the sequence.
*** Support for many old scripts and writing systems.
Emacs now supports and has language-environments and input methods for
several dozens of old scripts that were used in the past for various
-languages in South and South-East Asia. For each such script Emacs
-now has font-selection and character composition rules, a language
-environment, and an input method. The newly-added scripts and the
-corresponding language environments are:
+languages. For each such script Emacs now has font-selection and
+character composition rules, a language environment, and an input
+method. The newly-added scripts and the corresponding language
+environments are:
Tai Tham script and the Northern Thai language environment
Brahmi script and language environment
@@ -1259,6 +1259,7 @@ Grantha script and language environment
Kharoshthi script and language environment
Lepcha script and language environment
Meetei Mayek script and language environment
+Adlam script and language environment
---
*** The "Oriya" language environment was renamed to "Odia".
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index ff2411eb869..3cd7765ef81 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -295,7 +295,7 @@
(wancho #x1e2c0)
(nag-mundari #x1E4D0 #x1E4EB #x1E4F0)
(mende-kikakui #x1E810)
- (adlam #x1E900)
+ (adlam #x1E900 #x1E943)
(indic-siyaq-number #x1ec71)
(ottoman-siyaq-number #x1ed01)
(mahjong-tile #x1F000)
diff --git a/lisp/language/misc-lang.el b/lisp/language/misc-lang.el
index 3d5b68f84be..bd1edb91853 100644
--- a/lisp/language/misc-lang.el
+++ b/lisp/language/misc-lang.el
@@ -269,6 +269,28 @@ using the Kharoแนฃแนญhฤซ script.")))
modifier "*")
1 'font-shape-gstring))))
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Adlam
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(set-language-info-alist
+ "Adlam" '((charset unicode)
+ (coding-system utf-8)
+ (coding-priority utf-8)
+ (input-method . "adlam")
+ (sample-text . "Adlam (๐žค€๐žคฃ๐žคค๐žคข๐žคฅ) ๐žค…๐žคข๐žคค๐žคข๐žฅ„๐žคฅ")
+ (documentation . "\
+Fulani language and its script Adlam are supported
+in this language environment.")))
+
+;; Adlam composition rules
+(set-char-table-range
+ composition-function-table
+ '(#x1E900 . #x1E95F)
+ (list (vector
+ "[\x1E900-\x1E95F]+"
+ 0 'font-shape-gstring)))
+
(provide 'misc-lang)
;;; misc-lang.el ends here
diff --git a/lisp/leim/quail/misc-lang.el b/lisp/leim/quail/misc-lang.el
index 0c4a0d4ce40..6bafa6b5fb3 100644
--- a/lisp/leim/quail/misc-lang.el
+++ b/lisp/leim/quail/misc-lang.el
@@ -1180,5 +1180,102 @@
(".||" ?๐ฉ—)
(".=" ?๐ฉ˜))
+(quail-define-package
+ "adlam" "Adlam" "๐žค€" t "Adlam 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" ?๐žฅ‘)
+ ("`!" ?๐žฅž)
+ ("2" ?๐žฅ’)
+ ("3" ?๐žฅ“)
+ ("4" ?๐žฅ”)
+ ("5" ?๐žฅ•)
+ ("6" ?๐žฅ–)
+ ("7" ?๐žฅ—)
+ ("8" ?๐žฅ˜)
+ ("9" ?๐žฅ™)
+ ("0" ?๐žฅ)
+ ("q" ?๐žคน)
+ ("Q" ?๐žค—)
+ ("`q" ?๐žฅ†)
+ ("w" ?๐žคฑ)
+ ("W" ?๐žค)
+ ("`w" ?๐žฅˆ)
+ ("`W" ?๐žฅ‰)
+ ("e" ?๐žคซ)
+ ("E" ?๐žค‰)
+ ("`e" ?๐žฅ…)
+ ("r" ?๐žคช)
+ ("R" ?๐žคˆ)
+ ("t" ?๐žคผ)
+ ("T" ?๐žคš)
+ ("y" ?๐žคด)
+ ("Y" ?๐žค’)
+ ("`y" ?๐žคฐ)
+ ("`Y" ?๐žคŽ)
+ ("u" ?๐žคต)
+ ("U" ?๐žค“)
+ ("i" ?๐žคญ)
+ ("I" ?๐žค‹)
+ ("o" ?๐žคฎ)
+ ("O" ?๐žคŒ)
+ ("p" ?๐žคจ)
+ ("P" ?๐žค†)
+ ("a" ?๐žคข)
+ ("A" ?๐žค€)
+ ("`a" ?๐žฅ„)
+ ("s" ?๐žคง)
+ ("S" ?๐žค…)
+ ("`s" ?๐žฅƒ)
+ ("`S" ?๐žคก)
+ ("d" ?๐žคฃ)
+ ("D" ?๐žค)
+ ("`d" ?๐žคฏ)
+ ("`D" ?๐žค)
+ ("f" ?๐žคฌ)
+ ("F" ?๐žคŠ)
+ ("g" ?๐žคบ)
+ ("G" ?๐žค˜)
+ ("`g" ?๐žฅ€)
+ ("`G" ?๐žคž)
+ ("h" ?๐žคธ)
+ ("H" ?๐žค–)
+ ("`h" ?๐žฅ‡)
+ ("j" ?๐žคถ)
+ ("J" ?๐žค”)
+ ("k" ?๐žคณ)
+ ("K" ?๐žค‘)
+ ("`k" ?๐žคฟ)
+ ("`K" ?๐žค)
+ ("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" ?๐žฅ‹)
+ ("`/" ?๐žฅŸ))
+
(provide 'misc-lang)
;;; misc-lang.el ends here