* bug#58111: [PATCH] Add support for the Adlam script @ 2022-09-27 11:19 समीर सिंह Sameer Singh 2022-09-27 11:22 ` समीर सिंह Sameer Singh 0 siblings, 1 reply; 11+ messages in thread From: समीर सिंह Sameer Singh @ 2022-09-27 11:19 UTC (permalink / raw) To: 58111 [-- Attachment #1: Type: text/plain, Size: 116 bytes --] Adlam script is added to Emacs this time. Please review the patch (which will be attached in the next mail) Thanks [-- Attachment #2: Type: text/html, Size: 186 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 11:19 bug#58111: [PATCH] Add support for the Adlam script समीर सिंह Sameer Singh @ 2022-09-27 11:22 ` समीर सिंह Sameer Singh 2022-09-27 13:05 ` Robert Pluim 2022-09-27 13:15 ` Eli Zaretskii 0 siblings, 2 replies; 11+ messages in thread From: समीर सिंह Sameer Singh @ 2022-09-27 11:22 UTC (permalink / raw) To: 58111 [-- Attachment #1.1: Type: text/plain, Size: 237 bytes --] On Tue, Sep 27, 2022 at 4:49 PM समीर सिंह Sameer Singh < lumarzeli30@gmail.com> wrote: > Adlam script is added to Emacs this time. > > Please review the patch (which will be attached in the next mail) > Thanks > [-- Attachment #1.2: Type: text/html, Size: 577 bytes --] [-- Attachment #2: 0001-Add-support-for-the-Adlam-script-bug-58111.patch --] [-- Type: text/x-patch, Size: 5915 bytes --] From 4ebba7b238f050efeee3f8197991f3a58919f4e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=A4=B8=E0=A4=AE=E0=A5=80=E0=A4=B0=20=E0=A4=B8=E0=A4=BF?= =?UTF-8?q?=E0=A4=82=E0=A4=B9=20Sameer=20Singh?= <lumarzeli30@gmail.com> Date: Tue, 27 Sep 2022 16:44:28 +0530 Subject: [PATCH] Add support for the Adlam script (bug#58111) * lisp/language/misc-lang.el ("Adlam"): New language environment. Add composition rules for Adlam. Add sample text and input method. * lisp/international/fontset.el (script-representative-chars): Support Adlam. * lisp/leim/quail/misc-lang.el ("adlam"): New input method. * etc/HELLO: Add Adlam greeting. * etc/NEWS: Announce the new language environment. --- etc/HELLO | 1 + etc/NEWS | 8 +-- lisp/international/fontset.el | 2 +- lisp/language/misc-lang.el | 22 ++++++++ lisp/leim/quail/misc-lang.el | 97 +++++++++++++++++++++++++++++++++++ 5 files changed, 125 insertions(+), 5 deletions(-) diff --git a/etc/HELLO b/etc/HELLO index d73465318c..18c5ee5e54 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 99243481a0..10d5fc13c5 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1229,10 +1229,9 @@ 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 +1258,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 99c7848704..65bc1b4024 100644 --- a/lisp/international/fontset.el +++ b/lisp/international/fontset.el @@ -295,7 +295,7 @@ font-encoding-charset-alist (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 3d5b68f84b..7d2f577aa2 100644 --- a/lisp/language/misc-lang.el +++ b/lisp/language/misc-lang.el @@ -269,6 +269,28 @@ egyptian-shape-grouping 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]+" + 1 '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 0c4a0d4ce4..6bafa6b5fb 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 -- 2.37.3 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 11:22 ` समीर सिंह Sameer Singh @ 2022-09-27 13:05 ` Robert Pluim 2022-09-27 15:42 ` समीर सिंह Sameer Singh 2022-09-27 13:15 ` Eli Zaretskii 1 sibling, 1 reply; 11+ messages in thread From: Robert Pluim @ 2022-09-27 13:05 UTC (permalink / raw) To: समीर सिंह Sameer Singh Cc: 58111 >>>>> On Tue, 27 Sep 2022 16:52:22 +0530, समीर सिंह Sameer Singh <lumarzeli30@gmail.com> said: समीर> * lisp/language/misc-lang.el ("Adlam"): New language environment. समीर> Add composition rules for Adlam. Add sample text and input method. Two spaces after full stop. समीर> @@ -1229,10 +1229,9 @@ 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: I think this text should be re-wrapped ('M-q') समीर> +(quail-define-package समीर> + "adlam" "Adlam" "𞤀" t "Adlam input method. समीर> + समीर> + `\\=`' is used to switch levels instead of Alt-Gr. Are the `' necessary around the "\\=" ? The rest looks good to a limited Latin-1 person such as myself :-) Thanks for doing this. Robert -- ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 13:05 ` Robert Pluim @ 2022-09-27 15:42 ` समीर सिंह Sameer Singh 2022-09-27 16:10 ` Robert Pluim 0 siblings, 1 reply; 11+ messages in thread From: समीर सिंह Sameer Singh @ 2022-09-27 15:42 UTC (permalink / raw) To: Robert Pluim; +Cc: 58111, Eli Zaretskii [-- Attachment #1: Type: text/plain, Size: 2216 bytes --] > > I think this text should be re-wrapped ('M-q') Will do, thanks Are the `' necessary around the "\\=" ? > Not really, but there is also no harm letting them be there. They are also in the other input methods which I have added. See in indian.el, philippine.el, indonesian.el etc This was copied from the brahmi input method written by Eli. On Tue, Sep 27, 2022 at 6:35 PM Robert Pluim <rpluim@gmail.com> wrote: > >>>>> On Tue, 27 Sep 2022 16:52:22 +0530, समीर सिंह Sameer Singh < > lumarzeli30@gmail.com> said: > > > समीर> * lisp/language/misc-lang.el ("Adlam"): New language environment. > समीर> Add composition rules for Adlam. Add sample text and input > method. > > Two spaces after full stop. > > समीर> @@ -1229,10 +1229,9 @@ 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: > > I think this text should be re-wrapped ('M-q') > > समीर> +(quail-define-package > समीर> + "adlam" "Adlam" "𞤀" t "Adlam input method. > समीर> + > समीर> + `\\=`' is used to switch levels instead of Alt-Gr. > > Are the `' necessary around the "\\=" ? > > The rest looks good to a limited Latin-1 person such as myself :-) > > Thanks for doing this. > > Robert > -- > [-- Attachment #2: Type: text/html, Size: 3164 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 15:42 ` समीर सिंह Sameer Singh @ 2022-09-27 16:10 ` Robert Pluim 0 siblings, 0 replies; 11+ messages in thread From: Robert Pluim @ 2022-09-27 16:10 UTC (permalink / raw) To: समीर सिंह Sameer Singh Cc: 58111, Eli Zaretskii >>>>> On Tue, 27 Sep 2022 21:12:30 +0530, समीर सिंह Sameer Singh <lumarzeli30@gmail.com> said: समीर> Are the `' necessary around the "\\=" ? >> समीर> Not really, but there is also no harm letting them be there. They are also समीर> in the other input methods which I have added. समीर> See in indian.el, philippine.el, indonesian.el etc समीर> This was copied from the brahmi input method written by Eli. Youʼre right, I misread the quoting, it does help to make backquote stand out. Robert -- ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 11:22 ` समीर सिंह Sameer Singh 2022-09-27 13:05 ` Robert Pluim @ 2022-09-27 13:15 ` Eli Zaretskii 2022-09-27 15:53 ` समीर सिंह Sameer Singh 1 sibling, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2022-09-27 13:15 UTC (permalink / raw) To: समीर सिंह Sameer Singh Cc: 58111 > From: समीर सिंह Sameer Singh > <lumarzeli30@gmail.com> > Date: Tue, 27 Sep 2022 16:52:22 +0530 > > --- a/etc/NEWS > +++ b/etc/NEWS > @@ -1229,10 +1229,9 @@ 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: The new text needs to be re-filled. > +;; Adlam composition rules > +(set-char-table-range > + composition-function-table > + '(#x1E900 . #x1E95F) > + (list (vector > + "[\x1E900-\x1E95F]+" > + 1 'font-shape-gstring))) This doesn't look right: why 1 and not 0? ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 13:15 ` Eli Zaretskii @ 2022-09-27 15:53 ` समीर सिंह Sameer Singh 2022-09-27 16:36 ` Eli Zaretskii 0 siblings, 1 reply; 11+ messages in thread From: समीर सिंह Sameer Singh @ 2022-09-27 15:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 58111 [-- Attachment #1.1: Type: text/plain, Size: 1626 bytes --] > > This doesn't look right: why 1 and not 0? I copied this from my hanifi-rohingya composition rules, where I do not remember why I added 0 instead of 1. Even though they were working as intended I have replaced it with 0 there just to be safe. On Tue, Sep 27, 2022 at 6:46 PM Eli Zaretskii <eliz@gnu.org> wrote: > > From: समीर सिंह Sameer Singh > > <lumarzeli30@gmail.com> > > Date: Tue, 27 Sep 2022 16:52:22 +0530 > > > > --- a/etc/NEWS > > +++ b/etc/NEWS > > @@ -1229,10 +1229,9 @@ 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: > > The new text needs to be re-filled. > > > +;; Adlam composition rules > > +(set-char-table-range > > + composition-function-table > > + '(#x1E900 . #x1E95F) > > + (list (vector > > + "[\x1E900-\x1E95F]+" > > + 1 'font-shape-gstring))) > > This doesn't look right: why 1 and not 0? > [-- Attachment #1.2: Type: text/html, Size: 2305 bytes --] [-- Attachment #2: 0001-Add-support-for-the-Adlam-script-bug-58111.patch --] [-- Type: text/x-patch, Size: 6167 bytes --] From bfa1e6f86d442e220f2208e7fb08d222ab0733ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=A4=B8=E0=A4=AE=E0=A5=80=E0=A4=B0=20=E0=A4=B8=E0=A4=BF?= =?UTF-8?q?=E0=A4=82=E0=A4=B9=20Sameer=20Singh?= <lumarzeli30@gmail.com> Date: Tue, 27 Sep 2022 16:44:28 +0530 Subject: [PATCH] Add support for the Adlam script (bug#58111) * lisp/language/misc-lang.el ("Adlam"): New language environment. Add composition rules for Adlam. Add sample text and input method. * lisp/international/fontset.el (script-representative-chars): Support Adlam. * lisp/leim/quail/misc-lang.el ("adlam"): New input method. * etc/HELLO: Add Adlam greeting. * etc/NEWS: Announce the new language environment. --- etc/HELLO | 1 + etc/NEWS | 9 ++-- lisp/international/fontset.el | 2 +- lisp/language/misc-lang.el | 24 ++++++++- lisp/leim/quail/misc-lang.el | 97 +++++++++++++++++++++++++++++++++++ 5 files changed, 127 insertions(+), 6 deletions(-) diff --git a/etc/HELLO b/etc/HELLO index d73465318c..18c5ee5e54 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 99243481a0..99027744c6 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 99c7848704..65bc1b4024 100644 --- a/lisp/international/fontset.el +++ b/lisp/international/fontset.el @@ -295,7 +295,7 @@ font-encoding-charset-alist (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 3d5b68f84b..8482a64cd1 100644 --- a/lisp/language/misc-lang.el +++ b/lisp/language/misc-lang.el @@ -236,7 +236,7 @@ egyptian-shape-grouping '(#x10D1D . #x10D27) (list (vector "[\x10D00-\x10D27]+" - 1 'font-shape-gstring))) + 0 'font-shape-gstring))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Kharoṣṭhī @@ -269,6 +269,28 @@ egyptian-shape-grouping 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 0c4a0d4ce4..6bafa6b5fb 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 -- 2.37.3 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 15:53 ` समीर सिंह Sameer Singh @ 2022-09-27 16:36 ` Eli Zaretskii 2022-09-28 6:25 ` समीर सिंह Sameer Singh 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2022-09-27 16:36 UTC (permalink / raw) To: समीर सिंह Sameer Singh Cc: 58111 > From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com> > Date: Tue, 27 Sep 2022 21:23:40 +0530 > Cc: 58111@debbugs.gnu.org > > This doesn't look right: why 1 and not 0? > > I copied this from my hanifi-rohingya composition rules, where I do not remember > why I added 0 instead of 1. Even though they were working as intended I have replaced it with 0 > there just to be safe. In hanifi-rohingya, the codepoints that triggered composition were between #x10D1D and #x10D27, whereas the regexp was "[\x10D00-\x10D27]+", which matches many more characters. With 1 as the 2nd element of the rule vector, this means the sequence of characters U+10D00 U+10D00 will not cause composition, but the sequence U+10D00 U+10D1D will. By contrast, in Adlam case, the characters that trigger composition and the regexp are identical, so I see no reason to trigger the composition only on the second character of a sequence. I see that you have now changed the hanifi-rohingya as well, but I'm not sure that does what you want. Please consider the effect I described above, and decide whether you want 0 or 1 there. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-27 16:36 ` Eli Zaretskii @ 2022-09-28 6:25 ` समीर सिंह Sameer Singh 2022-09-28 12:44 ` Eli Zaretskii 0 siblings, 1 reply; 11+ messages in thread From: समीर सिंह Sameer Singh @ 2022-09-28 6:25 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 58111 [-- Attachment #1.1: Type: text/plain, Size: 1585 bytes --] > > I see that you have now changed the hanifi-rohingya as well, but I'm > not sure that does what you want. Please consider the effect I > described above, and decide whether you want 0 or 1 there. You are right, adding 0 there results in incorrect composition, I have now reverted my change. Thanks On Tue, Sep 27, 2022 at 10:06 PM Eli Zaretskii <eliz@gnu.org> wrote: > > From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com> > > Date: Tue, 27 Sep 2022 21:23:40 +0530 > > Cc: 58111@debbugs.gnu.org > > > > This doesn't look right: why 1 and not 0? > > > > I copied this from my hanifi-rohingya composition rules, where I do not > remember > > why I added 0 instead of 1. Even though they were working as intended I > have replaced it with 0 > > there just to be safe. > > In hanifi-rohingya, the codepoints that triggered composition were > between #x10D1D and #x10D27, whereas the regexp was > "[\x10D00-\x10D27]+", which matches many more characters. With 1 as > the 2nd element of the rule vector, this means the sequence of > characters U+10D00 U+10D00 will not cause composition, but the > sequence U+10D00 U+10D1D will. By contrast, in Adlam case, the > characters that trigger composition and the regexp are identical, so I > see no reason to trigger the composition only on the second character > of a sequence. > > I see that you have now changed the hanifi-rohingya as well, but I'm > not sure that does what you want. Please consider the effect I > described above, and decide whether you want 0 or 1 there. > [-- Attachment #1.2: Type: text/html, Size: 2239 bytes --] [-- Attachment #2: 0001-Add-support-for-the-Adlam-script-bug-58111.patch --] [-- Type: text/x-patch, Size: 5918 bytes --] From 73597b95e54f7b4bbc3065c18556d2677230a5ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=A4=B8=E0=A4=AE=E0=A5=80=E0=A4=B0=20=E0=A4=B8=E0=A4=BF?= =?UTF-8?q?=E0=A4=82=E0=A4=B9=20Sameer=20Singh?= <lumarzeli30@gmail.com> Date: Tue, 27 Sep 2022 16:44:28 +0530 Subject: [PATCH] Add support for the Adlam script (bug#58111) * lisp/language/misc-lang.el ("Adlam"): New language environment. Add composition rules for Adlam. Add sample text and input method. * lisp/international/fontset.el (script-representative-chars): Support Adlam. * lisp/leim/quail/misc-lang.el ("adlam"): New input method. * etc/HELLO: Add Adlam greeting. * etc/NEWS: Announce the new language environment. --- etc/HELLO | 1 + etc/NEWS | 9 ++-- lisp/international/fontset.el | 2 +- lisp/language/misc-lang.el | 22 ++++++++ lisp/leim/quail/misc-lang.el | 97 +++++++++++++++++++++++++++++++++++ 5 files changed, 126 insertions(+), 5 deletions(-) diff --git a/etc/HELLO b/etc/HELLO index d73465318c..18c5ee5e54 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 99243481a0..99027744c6 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 99c7848704..65bc1b4024 100644 --- a/lisp/international/fontset.el +++ b/lisp/international/fontset.el @@ -295,7 +295,7 @@ font-encoding-charset-alist (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 3d5b68f84b..bd1edb9185 100644 --- a/lisp/language/misc-lang.el +++ b/lisp/language/misc-lang.el @@ -269,6 +269,28 @@ egyptian-shape-grouping 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 0c4a0d4ce4..6bafa6b5fb 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 -- 2.37.3 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-28 6:25 ` समीर सिंह Sameer Singh @ 2022-09-28 12:44 ` Eli Zaretskii 2022-09-28 12:56 ` समीर सिंह Sameer Singh 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2022-09-28 12:44 UTC (permalink / raw) To: समीर सिंह Sameer Singh Cc: 58111-done > From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com> > Date: Wed, 28 Sep 2022 11:55:10 +0530 > Cc: 58111@debbugs.gnu.org > > I see that you have now changed the hanifi-rohingya as well, but I'm > not sure that does what you want. Please consider the effect I > described above, and decide whether you want 0 or 1 there. > > You are right, adding 0 there results in incorrect composition, I have now reverted my change. Thanks, installed. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#58111: [PATCH] Add support for the Adlam script 2022-09-28 12:44 ` Eli Zaretskii @ 2022-09-28 12:56 ` समीर सिंह Sameer Singh 0 siblings, 0 replies; 11+ messages in thread From: समीर सिंह Sameer Singh @ 2022-09-28 12:56 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 58111-done [-- Attachment #1: Type: text/plain, Size: 581 bytes --] Thanks! On Wed, Sep 28, 2022 at 6:15 PM Eli Zaretskii <eliz@gnu.org> wrote: > > From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com> > > Date: Wed, 28 Sep 2022 11:55:10 +0530 > > Cc: 58111@debbugs.gnu.org > > > > I see that you have now changed the hanifi-rohingya as well, but I'm > > not sure that does what you want. Please consider the effect I > > described above, and decide whether you want 0 or 1 there. > > > > You are right, adding 0 there results in incorrect composition, I have > now reverted my change. > > Thanks, installed. > [-- Attachment #2: Type: text/html, Size: 1031 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2022-09-28 12:56 UTC | newest] Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-09-27 11:19 bug#58111: [PATCH] Add support for the Adlam script समीर सिंह Sameer Singh 2022-09-27 11:22 ` समीर सिंह Sameer Singh 2022-09-27 13:05 ` Robert Pluim 2022-09-27 15:42 ` समीर सिंह Sameer Singh 2022-09-27 16:10 ` Robert Pluim 2022-09-27 13:15 ` Eli Zaretskii 2022-09-27 15:53 ` समीर सिंह Sameer Singh 2022-09-27 16:36 ` Eli Zaretskii 2022-09-28 6:25 ` समीर सिंह Sameer Singh 2022-09-28 12:44 ` Eli Zaretskii 2022-09-28 12:56 ` समीर सिंह Sameer Singh
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).