Subject: bug#55341: closed (Re: bug#55341: Independent vowels with nasal sounds do not render in the Tirhuta and Sharada script.)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 10 May 2022 13:14:02 +0000

Your bug report

#55341: Independent vowels with nasal sounds do not render in the Tirhuta and Sharada script.

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
55341: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55341
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#55341: Independent vowels with nasal sounds do not render in the Tirhuta and Sharada script.
From: Eli Zaretskii <[email-masked]>
To: समीर सिंह Sameer Singh<[email-masked]>
Cc: [email-masked]
Date: Tue, 10 May 2022 16:13:16 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: समीर सिंह Sameer Singh
>  <[email-masked]>
> Date: Tue, 10 May 2022 01:04:12 +0530
> 
> Due to my mistake, I had overlooked the composition rules for the nasal vowels for the scripts which I had
> added.
> Therefore I have attached a patch which will fix the problem.
> Even though I did not notice the problem with the kaithi script, I have added the rule to that too.
> I have also renamed "anusvara-candrabindu" as "nasal".

Thanks, installed.

Subject: Independent vowels with nasal sounds do not render in the Tirhuta and Sharada script.
From: समीर सिंह Sameer Singh<[email-masked]>
To: [email-masked]
Date: Tue, 10 May 2022 01:04:12 +0530
List-Id: <debbugs-submit.debbugs.gnu.org>

Due to my mistake, I had overlooked the composition rules for the nasal
vowels for the scripts which I had added.
Therefore I have attached a patch which will fix the problem.
Even though I did not notice the problem with the kaithi script, I have
added the rule to that too.
I have also renamed "anusvara-candrabindu" as "nasal".

Steps to reproduce:
1. emacs -Q
2. Type:
     𑒅𑒿 𑒆𑓀
     𑆅𑇏 𑆏𑇏
From 1d08f4ab76952264296a0f0d0e1725d53dbe4147 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?= <[email-masked]>
Date: Tue, 10 May 2022 00:49:58 +0530
Subject: [PATCH] * ; lisp/language/indian.el Improve composition rules.

---
 lisp/language/indian.el | 39 +++++++++++++++++++++++++--------------
 1 file changed, 25 insertions(+), 14 deletions(-)

diff --git a/lisp/language/indian.el b/lisp/language/indian.el
index 4b6c4744f1..1e10c2a61a 100644
--- a/lisp/language/indian.el
+++ b/lisp/language/indian.el
@@ -462,8 +462,9 @@ malayalam-composable-pattern
 ;; Kaithi composition rules
 (let ((consonant            "[\x1108D-\x110AF]")
       (nukta                "\x110BA")
+      (independent-vowel    "[\x11083-\x1108C]")
       (vowel                "[\x1108D-\x110C2]")
-      (anusvara-candrabindu "[\x11080\x11081]")
+      (nasal                "[\x11080\x11081]")
       (virama               "\x110B9")
       (number-sign          "\x110BD")
       (number-sign-above    "\x110CD")
@@ -474,7 +475,11 @@ malayalam-composable-pattern
                         (list (vector
                                ;; Consonant based syllables
                                (concat consonant nukta "?\\(?:" virama zwj "?" consonant nukta "?\\)*\\(?:"
-                                       virama zwj "?\\|" vowel "*" nukta "?" anusvara-candrabindu "?\\)")
+                                       virama zwj "?\\|" vowel "*" nukta "?" nasal "?\\)")
+                               1 'font-shape-gstring)
+                              (vector
+                               ;; Nasal vowels
+                               (concat independent-vowel nasal "?")
                                1 'font-shape-gstring)))
   (set-char-table-range composition-function-table
                         '(#x110BD . #x110BD)
@@ -489,29 +494,33 @@ malayalam-composable-pattern
                                (concat number-sign-above numerals)
                                0 'font-shape-gstring))))
 
-(provide 'indian)
-
 ;; Tirhuta composition rules
 (let ((consonant            "[\x1148F-\x114AF]")
       (nukta                "\x114C3")
+      (independent-vowel    "[\x11481-\x1148E]")
       (vowel                "[\x114B0-\x114BE]")
-      (anusvara-candrabindu "[\x114BF\x114C0]")
+      (nasal                "[\x114BF\x114C0]")
       (virama               "\x114C2"))
   (set-char-table-range composition-function-table
                         '(#x114B0 . #x114C3)
                         (list (vector
                                ;; Consonant based syllables
                                (concat consonant nukta "?\\(?:" virama consonant nukta "?\\)*\\(?:"
-                                       virama "\\|" vowel "*" nukta "?" anusvara-candrabindu "?\\)")
+                                       virama "\\|" vowel "*" nukta "?" nasal "?\\)")
+                               1 'font-shape-gstring)
+                              (vector
+                               ;; Nasal vowels
+                               (concat independent-vowel nasal "?")
                                1 'font-shape-gstring))))
 
 ;; Sharada composition rules
 (let ((consonant              "[\x11191-\x111B2]")
       (nukta                  "\x111CA")
+      (independent-vowel      "[\x11183-\x11190]")
       (vowel                  "[\x111B3-\x111BF\x111CE]")
       (vowel-modifier         "\x111CB")
       (extra-short-vowel-mark "\x111CC")
-      (anusvara-candrabindu   "[\x11181\x11180\x111CF]")
+      (nasal                  "[\x11181\x11180\x111CF]")
       (virama                 "\x111C0")
       (fricatives             "[\x111C2\x111C3]")
       (sandhi-mark            "\x111C9")
@@ -522,15 +531,17 @@ malayalam-composable-pattern
                                ;; Consonant based syllables
                                (concat consonant nukta "?" vowel-modifier "?\\(?:" virama
                                        consonant nukta "?" vowel-modifier "?\\)*\\(?:" virama
-                                       "\\|" vowel "*" nukta "?" anusvara-candrabindu "?"
-                                       extra-short-vowel-mark "?" vowel-modifier "?" sandhi-mark
-                                       "?+" misc "?\\)")
-                               1 'font-shape-gstring)))
-  (set-char-table-range composition-function-table
-                        '(#x111C2 . #x111C3)
-                        (list (vector
+                                       "\\|" vowel "*" nukta "?" nasal "?" extra-short-vowel-mark
+                                       "?" vowel-modifier "?" sandhi-mark "?+" misc "?\\)")
+                               1 'font-shape-gstring)
+                              (vector
+                               ;; Nasal vowels
+                               (concat independent-vowel nasal "?")
+                               1 'font-shape-gstring)
+                              (vector
                                ;; Fricatives with Consonants
                                (concat fricatives "?" consonant vowel "?")
                                0 'font-shape-gstring))))
 
+(provide 'indian)
 ;;; indian.el ends here
-- 
2.36.1