unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "समीर सिंह Sameer Singh" <lumarzeli30@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 55694@debbugs.gnu.org
Subject: bug#55694: [PATCH] Add support for the Batak scripts
Date: Sun, 29 May 2022 19:04:38 +0530	[thread overview]
Message-ID: <CAOR1sLzbEpQbV-AcckBZDjD2nzH-W4zzdH3wLb-D0Nnt=8_N3Q@mail.gmail.com> (raw)
In-Reply-To: <83wne4jy0y.fsf@gnu.org>


[-- Attachment #1.1: Type: text/plain, Size: 954 bytes --]

I have rewrote the patch, please review it.
I have also not decided to add the Karo greeting to etc/HELLO since it is
no longer a language environment, but if you wish to do that, I have
written it below for copy pasting.
Batak Karo (ᯘᯬᯒᯗ᯳ᯆᯗᯂ᯳)    ᯔᯧᯐᯬᯀᯱᯐᯬᯀᯱ

On Sun, May 29, 2022 at 6:28 PM Eli Zaretskii <eliz@gnu.org> wrote:

> > From: समीर सिंह Sameer Singh <lumarzeli30@gmail.com>
> > Date: Sun, 29 May 2022 18:03:19 +0530
> > Cc: 55694@debbugs.gnu.org
> >
> > Thank you, I will implement all these changes, also now is there any
> need for five different language
> > environments and news entries?
> > The only reason I separated them because of the different input methods.
>
> I guess a single language environment is enough, but please mention
> the languages we support both in the doc string of the language
> environment and in the doc string of the input method.
>

[-- Attachment #1.2: Type: text/html, Size: 1418 bytes --]

[-- Attachment #2: 0001-Add-support-for-the-Batak-script-bug-55694.patch --]
[-- Type: text/x-patch, Size: 6735 bytes --]

From 1820e80c48004e27bbaa1bcd219965bedb2bc997 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: Sun, 29 May 2022 18:55:58 +0530
Subject: [PATCH] Add support for the Batak script (bug #55694)

* lisp/language/indonesian.el ("Batak"): New language environment.
Add composition rules for Batak.  Add sample text and input
method.
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Support Batak.
* lisp/leim/quail/indonesian.el ("batak"): New input method.
Rename TITLE of balinese, javanese and sundanese in
("quail-define-package").

* etc/HELLO: Add a Batak greeting.
* etc/NEWS: Announce the new language environment and its
input method.
---
 etc/HELLO                     |  1 +
 etc/NEWS                      |  1 +
 lisp/international/fontset.el |  2 +
 lisp/language/indonesian.el   | 24 ++++++++++++
 lisp/leim/quail/indonesian.el | 72 +++++++++++++++++++++++++++++++++--
 5 files changed, 97 insertions(+), 3 deletions(-)

diff --git a/etc/HELLO b/etc/HELLO
index 4ff066847d..c89f8943c7 100644
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -28,6 +28,7 @@ Amharic (አማርኛ)	ሠላም
 Arabic (العربيّة)	السّلام عليكم
 Armenian (հայերեն)	Բարև ձեզ
 Balinese (ᬅᬓ᭄ᬱᬭᬩᬮᬶ)	ᬒᬁᬲ᭄ᬯᬲ᭄ᬢ᭄ᬬᬲ᭄ᬢᬸ
+Batak (ᯘᯮᯒᯗ᯲ᯅᯗᯂ᯲)	ᯂᯬᯒᯘ᯲
 Belarusian (беларуская)	Прывітанне
 Bengali (বাংলা)	নমস্কার
 Brahmi (𑀩𑁆𑀭𑀸𑀳𑁆𑀫𑀻)	𑀦𑀫𑀲𑁆𑀢𑁂
diff --git a/etc/NEWS b/etc/NEWS
index d8d22449f7..5987acdac9 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -836,6 +836,7 @@ corresponding language environments are:
 **** Balinese script and language environment
 **** Javanese script and language environment
 **** Sundanese script and language environment
+**** Batak 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 00ee0cf475..bf4b9b578e 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -191,6 +191,7 @@ font-encoding-charset-alist
         (limbu #x1901 #x1920 #x1936)
         (balinese #x1B13 #x1B35 #x1B5E)
         (sundanese #x1B8A #x1BAB #x1CC4)
+        (batak #x1BC2 #x1BE7 #x1BFF)
         (tai-le #x1950)
         (tai-lue #x1980)
         (tai-tham #x1A20 #x1A55 #x1A61 #x1A80)
@@ -762,6 +763,7 @@ setup-default-fontset
                     limbu
                     balinese
                     sundanese
+                    batak
 		    symbol
 		    braille
 		    yi
diff --git a/lisp/language/indonesian.el b/lisp/language/indonesian.el
index 4bdcd0a49c..319ec48158 100644
--- a/lisp/language/indonesian.el
+++ b/lisp/language/indonesian.el
@@ -54,6 +54,16 @@
               (documentation . "\
 Sundanese language and its script are supported in this language environment.")))
 
+(set-language-info-alist
+ "Batak" '((charset unicode)
+           (coding-system utf-8)
+           (coding-priority utf-8)
+           (input-method . "batak")
+           (sample-text . "Batak (ᯘᯮᯒᯗ᯲ᯅᯗᯂ᯲)    ᯂᯬᯒᯘ᯲")
+           (documentation . "\
+Such languages using the Batak script such as Karo, Toba, Pakpak, Mandailing
+and Simalungun are supported in this language environment.")))
+
 ;; Balinese composition rules
 (let ((consonant            "[\x1B13-\x1B33\x1B45-\x1B4B]")
       (independent-vowel    "[\x1B05-\x1B12]")
@@ -119,5 +129,19 @@
                                        vowel "?" modifier-above "?" dependant-consonant "?")
                                1 'font-shape-gstring))))
 
+;; Batak composition rules
+(let ((akshara              "[\x1BC0-\x1BE5]")
+      (vowel                "[\x1BE7-\x1BEF]")
+      (dependant-consonant  "[\x1BF0\x1BF1]")
+      (modifier-above       "\x1BE6")
+      (virama               "[\x1BF2\x1BF3]"))
+  (set-char-table-range composition-function-table
+                        '(#x1BE6 . #x1BF3)
+                        (list (vector
+                               ;; Akshara based syllables
+                               (concat akshara virama "?" vowel "*" modifier-above
+                                       "?" dependant-consonant "?")
+                               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 3a0654db90..fd232c4f71 100644
--- a/lisp/leim/quail/indonesian.el
+++ b/lisp/leim/quail/indonesian.el
@@ -32,7 +32,7 @@
 ;; Javanese.
 
 (quail-define-package
- "balinese" "Balinese" "ᬅ" t "Balinese phonetic input method.
+ "balinese" "Balinese" "ᬩ" t "Balinese phonetic input method.
 
  `\\=`' is used to switch levels instead of Alt-Gr.
 " nil t t t t nil nil nil nil nil t)
@@ -174,7 +174,7 @@
  ("`M" ?ᬀ))
 
 (quail-define-package
- "javanese" "Javanese" "ꦄ" t "Javanese phonetic input method.
+ "javanese" "Javanese" "ꦗ" t "Javanese phonetic input method.
 
  `\\=`' is used to switch levels instead of Alt-Gr.
 " nil t t t t nil nil nil nil nil t)
@@ -287,7 +287,7 @@
  ("`m" ?ꦀ))
 
 (quail-define-package
- "sundanese" "Sundanese" "ᮃ" t "Sundanese phonetic input method.
+ "sundanese" "Sundanese" "ᮞᮥ" t "Sundanese phonetic input method.
 
  `\\=`' is used to switch levels instead of Alt-Gr.
 " nil t t t t nil nil nil nil nil t)
@@ -377,5 +377,71 @@
  ("`m" ?ᮿ)
  ("`M" ?ᮬ))
 
+(quail-define-package
+ "batak" "Batak" "ᯅ" t "Batak phonetic input method,
+ used by languages such as Karo, Toba, Pakpak, Mandailing
+ and Simalungun.
+
+ `\\=`' is used to switch levels instead of Alt-Gr.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("q"  ?᯼)
+ ("Q"  ?᯽)
+ ("w"  ?ᯋ)
+ ("W"  ?ᯌ)
+ ("`w" ?ᯍ)
+ ("e"  ?ᯧ)
+ ("E"  ?ᯨ)
+ ("`e" ?ᯩ)
+ ("r"  ?ᯒ)
+ ("R"  ?ᯓ)
+ ("t"  ?ᯖ)
+ ("T"  ?ᯗ)
+ ("y"  ?ᯛ)
+ ("Y"  ?ᯜ)
+ ("u"  ?ᯮ)
+ ("U"  ?ᯥ)
+ ("`u" ?ᯯ)
+ ("i"  ?ᯪ)
+ ("I"  ?ᯫ)
+ ("`i" ?ᯤ)
+ ("o"  ?ᯬ)
+ ("O"  ?ᯭ)
+ ("p"  ?ᯇ)
+ ("P"  ?ᯈ)
+ ("a"  ?ᯀ)
+ ("A"  ?ᯁ)
+ ("s"  ?ᯘ)
+ ("S"  ?ᯙ)
+ ("`s" ?ᯚ)
+ ("d"  ?ᯑ)
+ ("f"  ?᯲)
+ ("F"  ?᯳)
+ ("g"  ?ᯎ)
+ ("G"  ?ᯏ)
+ ("h"  ?ᯂ)
+ ("H"  ?ᯃ)
+ ("`h" ?ᯄ)
+ ("`H" ?ᯱ)
+ ("j"  ?ᯐ)
+ ("k"  ?᯦)
+ ("l"  ?ᯞ)
+ ("L"  ?ᯟ)
+ ("z"  ?ᯝ)
+ ("Z"  ?ᯰ)
+ ("x"  ?ᯠ)
+ ("c"  ?ᯡ)
+ ("v"  ?᯾)
+ ("V"  ?᯿)
+ ("b"  ?ᯅ)
+ ("B"  ?ᯆ)
+ ("n"  ?ᯉ)
+ ("N"  ?ᯊ)
+ ("`n" ?ᯢ)
+ ("m"  ?ᯔ)
+ ("M"  ?ᯕ)
+ ("`m" ?ᯣ))
+
 (provide 'indonesian)
 ;;; indonesian.el ends here
-- 
2.36.1


  reply	other threads:[~2022-05-29 13:34 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-29  0:51 bug#55694: [PATCH] Add support for the Batak scripts समीर सिंह Sameer Singh
2022-05-29  7:13 ` Eli Zaretskii
2022-05-29 11:44   ` समीर सिंह Sameer Singh
2022-05-29 12:07     ` Eli Zaretskii
2022-05-29 12:33       ` समीर सिंह Sameer Singh
2022-05-29 12:58         ` Eli Zaretskii
2022-05-29 13:34           ` समीर सिंह Sameer Singh [this message]
2022-05-29 16:37             ` Eli Zaretskii
2022-05-29 16:43               ` समीर सिंह Sameer Singh
2022-05-29 17:13                 ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAOR1sLzbEpQbV-AcckBZDjD2nzH-W4zzdH3wLb-D0Nnt=8_N3Q@mail.gmail.com' \
    --to=lumarzeli30@gmail.com \
    --cc=55694@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).