]> git.eshelyaron.com Git - emacs.git/commitdiff
Add support for the Hanifi Rohingya script (bug#55745)
authorसमीर सिंह Sameer Singh <lumarzeli30@gmail.com>
Tue, 31 May 2022 14:07:34 +0000 (19:37 +0530)
committerEli Zaretskii <eliz@gnu.org>
Wed, 1 Jun 2022 12:06:36 +0000 (15:06 +0300)
* lisp/language/misc-lang.el ("Hanifi Rohingya"):
New language environment.
Add composition rules for Hanifi Rohingya.
Add sample text and input method.
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Support Hanifi Rohingya.
* lisp/leim/quail/misc-lang.el ("hanifi-rohingya"):
New input method.

* etc/HELLO: Add a Hanifi Rohingya greeting.
* etc/NEWS: Announce the new language environment.

etc/HELLO
etc/NEWS
lisp/international/fontset.el
lisp/language/misc-lang.el
lisp/leim/quail/misc-lang.el [new file with mode: 0644]

index f63f65ff7dd7fd10efadd43b2f2a5f24c7d533ae..4148183949962471cbf1b52c2db6506ade104778 100644 (file)
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -60,6 +60,7 @@ Greek (ελληνικά)      Γειά σας
 Greek, ancient (ἑλληνική)     Οὖλέ τε καὶ μέγα χαῖρε
 Gujarati (ગુજરાતી)       નમસ્તે
 Gurmukhi (ਗੁਰਮੁਖੀ)       ਸਤ ਸ੍ਰੀ ਅਕਾਲ
+Hanifi Rohingya (𐴌𐴟𐴇𐴥𐴝𐴚𐴒𐴙𐴝 𐴇𐴝𐴕𐴞𐴉𐴞 𐴓𐴠𐴑𐴤𐴝)   𐴀𐴝𐴏𐴓𐴝𐴀𐴡𐴤𐴛𐴝𐴓𐴝𐴙𐴑𐴟𐴔
 Hanunoo (ᜱᜨᜳᜨᜳᜢ)   ᜫᜬᜧ᜴ ᜣᜭᜯᜥ᜴ ᜰᜲᜭᜥ᜴
 Hebrew (עִבְרִית)      שָׁלוֹם
 Hindi (हिन्दी)     प्रणाम / पाय लागू
index 1233e245a048900e602db10a2dec28e274df70cb..4d68f066fce0c3ddb019bd0f7ed0ba1856983a8a 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -840,6 +840,7 @@ corresponding language environments are:
 **** Rejang script and language environment
 **** Makasar script and language environment
 **** Lontara script and language environment
+**** Hanifi Rohingya script and language environment
 
 ---
 *** The "Oriya" language environment was renamed to "Odia".
index 425e9dcb41607f76b145075451a98b8bbb38a577..2c54c86ab778d85d1e7630d35100f55d81bda1e2 100644 (file)
        (lydian #x10920)
        (kharoshthi #x10A00)
        (manichaean #x10AC0)
-       (hanifi-rohingya #x10D00)
+       (hanifi-rohingya #x10D00 #x10D24 #x10D39)
        (yezidi #x10E80)
        (old-sogdian #x10F00)
        (sogdian #x10F30)
                    cypriot-syllabary
                    phoenician
                    lydian
+                    hanifi-rohingya
                     yezidi
                    kharoshthi
                    manichaean
index c8a4821abf7f22f74ed7b93e3fb3a49bcc7d44fd..46429a4380d3cbce1d5f540107a938437952670c 100644 (file)
@@ -212,6 +212,28 @@ thin (i.e. 1-dot width) space."
    (list (vector "[\U00013000-\U0001342E]+"
                  0 #'font-shape-gstring))))
 
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Hanifi Rohingya
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(set-language-info-alist
+ "Hanifi Rohingya" '((charset unicode)
+                     (coding-system utf-8)
+                     (coding-priority utf-8)
+                     (input-method . "hanifi-rohingya")
+                     (sample-text . "Hanifi Rohingya (𐴌𐴟𐴇𐴥𐴝𐴚𐴒𐴙𐴝 𐴇𐴝𐴕𐴞𐴉𐴞 𐴓𐴠𐴑𐴤𐴝)      𐴀𐴝𐴏𐴓𐴝𐴀𐴡𐴤𐴛𐴝𐴓𐴝𐴙𐴑𐴟𐴔")
+                     (documentation . "\
+Rohingya language and its script Hanifi Rohingya are supported
+in this language environment.")))
+
+;; Hanifi Rohingya composition rules
+(set-char-table-range
+ composition-function-table
+ '(#x10D1D . #x10D27)
+ (list (vector
+        "[\x10D00-\x10D27]+"
+        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
new file mode 100644 (file)
index 0000000..bdb86ab
--- /dev/null
@@ -0,0 +1,101 @@
+;;; misc-lang.el --- Quail package for inputting Miscellaneous characters  -*- lexical-binding: t; -*-
+
+;; Copyright (C) 2022 Free Software Foundation, Inc.
+
+;; Author: समीर सिंह Sameer Singh <lumarzeli30@gmail.com>
+;; Keywords: multilingual, input method, i18n, Miscellaneous
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;; Input methods for Miscellaneous languages.
+
+;;; Code:
+
+(require 'quail)
+
+(quail-define-package
+ "hanifi-rohingya" "Hanifi Rohingya" "𐴌𐴟" t "Hanifi Rohingya phonetic 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"  ?𐴱)
+ ("`1" ?1)
+ ("2"  ?𐴲)
+ ("`2" ?2)
+ ("3"  ?𐴳)
+ ("`3" ?3)
+ ("4"  ?𐴴)
+ ("`4" ?4)
+ ("5"  ?𐴵)
+ ("`5" ?5)
+ ("6"  ?𐴶)
+ ("`6" ?6)
+ ("7"  ?𐴷)
+ ("`7" ?7)
+ ("8"  ?𐴸)
+ ("`8" ?8)
+ ("9"  ?𐴹)
+ ("`9" ?9)
+ ("0"  ?𐴰)
+ ("`0" ?0)
+ ("q"  ?𐴄)
+ ("w"  ?𐴋)
+ ("W"  ?𐴍)
+ ("e"  ?𐴠)
+ ("E"  ?𐴤)
+ ("r"  ?𐴌)
+ ("R"  ?𐴥)
+ ("t"  ?𐴃)
+ ("T"  ?𐴦)
+ ("y"  ?𐴘)
+ ("Y"  ?𐴙)
+ ("u"  ?𐴟)
+ ("U"  ?𐴧)
+ ("i"  ?𐴞)
+ ("o"  ?𐴡)
+ ("p"  ?𐴂)
+ ("a"  ?𐴀)
+ ("A"  ?𐴝)
+ ("s"  ?𐴏)
+ ("S"  ?𐴐)
+ ("d"  ?𐴊)
+ ("f"  ?𐴉)
+ ("F"  ?𐴢)
+ ("g"  ?𐴒)
+ ("h"  ?𐴇)
+ ("j"  ?𐴅)
+ ("k"  ?𐴑)
+ ("K"  ?𐴈)
+ ("l"  ?𐴓)
+ ("z"  ?𐴎)
+ ("c"  ?𐴆)
+ ("C"  #x200C) ; ZWNJ
+ ("v"  ?𐴖)
+ ("V"  ?𐴗)
+ ("`v" ?𐴜)
+ ("b"  ?𐴁)
+ ("n"  ?𐴕)
+ ("N"  ?𐴚)
+ ("`n" ?𐴛)
+ ("`N" ?𐴣)
+ ("m"  ?𐴔))
+
+(provide 'misc-lang)
+;;; misc-lang.el ends here