]> git.eshelyaron.com Git - emacs.git/commitdiff
* leim/quail/persian.el: Add some mappings.
authorMohsen BANAN <libre@mohsen.1.banan.byname.net>
Mon, 6 Aug 2012 07:34:35 +0000 (00:34 -0700)
committerGlenn Morris <rgm@gnu.org>
Mon, 6 Aug 2012 07:34:35 +0000 (00:34 -0700)
(farsi-isiri-9147, farsi-transliterate-banan): Doc fixes.

Fixes: debbugs:11812
leim/ChangeLog
leim/quail/persian.el

index cafaf5a9eb1bf0c734000261be4692ff5c6b6e32..fcf0e72c3f4c8b6f1584291e3df290be59e6c140 100644 (file)
@@ -1,3 +1,8 @@
+2012-08-06  Mohsen BANAN  <libre@mohsen.1.banan.byname.net>
+
+       * quail/persian.el: Add some mappings.  (Bug#11812)
+       (farsi-isiri-9147, farsi-transliterate-banan): Doc fixes.
+
 2012-07-30  Paul Eggert  <eggert@cs.ucla.edu>
 
        Update .PHONY listings in makefiles.
index 70e2d38032922d113883b4b7737a08931cb2c919..c795c0811b25f5fc67c00f51645ab0c4bb23aebc 100644 (file)
@@ -1,9 +1,9 @@
 ;;; persian.el  --- Quail package for inputting Persian/Farsi keyboard -*- coding: utf-8;-*-
 
-;; Copyright (C) 2011-2012  Free Software Foundation, Inc.
+;; Copyright (C) 2011-2012 Free Software Foundation, Inc.
 
-;; Author: Mohsen BANAN  <libre@mohsen.1.banan.byname.net>
-;; http://mohsen.1.banan.byname.net/contact
+;; Author: Mohsen BANAN <libre@mohsen.1.banan.byname.net>
+;; X-URL: http://mohsen.1.banan.byname.net/contact
 
 ;; Keywords: multilingual, input method, Farsi, Persian, keyboard
 
@@ -31,7 +31,7 @@
 ;;
 ;; At this time, the following input methods are specified:
 ;;
-;;  - (farsi-isiri-9149) Persian Keyboard based on Islamic Republic of Iran's ISIR-9147
+;;  - (farsi-isiri-9149) Persian Keyboard based on Islamic Republic of Iran's ISIRI-9147
 ;;  - (farsi-transliterate-banan) An intuitive transliteration keyboard for Farsi
 ;;
 ;; Additional documentation for these input methods can be found at:
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;
 ;; The keyboard mapping defined here is based on:
+;; فنّاوریِ اطلاعات - چیدمان حروف و علائم فارسی بر صفحه کلید رایانه
+;; استاندارد ملی ایران ۹۱۴۷ − چاپ اول
 ;;
 ;; Institute of Standards and Industrial Research of Iran
 ;; Information Technology – Layout of Persian Letters and Symbols
 ;; on Computer Keyboards
 ;; ISIRI 9147 -- 1st edition
-;; http://www.isiri.org/UserStd/DownloadStd.aspx?id=9147
+;; Published at: http://www.isiri.org/portal/files/std/9147.pdf
+;; Re-Published at: http://www.persoarabic.org/Repub/fpf-isiri-9147
 ;;
-;; The specification is also republished at
-;;     http://www.farsiweb.ir/wiki/Image:Isiri-9147.pdf
-;; and various other sites.
 ;;
-;; ISIRI-6219 is also relevant.
+;; Specification of Iran's Persian Character Set is also relevant:
+;; فنّاوریِ اطلاعات -- تبادل و شیوه‌ی نمایش اطلاعاتِ فارسی بر اساس یونی کُد
+;; استاندارد ملی ایران ۶۲۱۹ −− نسخهی نهایی
+;;
+;; Institute of Standards and Industrial Research of Iran
+;; Information Technology – Persian Information Interchange and Display Mechanism, using Unicode
+;; ISIRI-6219 Final Version
+;; Published at: http://www.isiri.org/portal/files/std/6219.htm
+;; Re-Published at: http://www.persoarabic.org/Repub/fpf-isiri-6219
 ;;
 ;; Layers 1, 2 and 3 of ISIRI-9147 are fully implemented with the
 ;; exception of the Backslash, Alt-Backslash, Shift-Space and
 
 
 (quail-define-package
- "farsi-isiri-9147" "Farsi" " ف" nil "Farsi input method.
-
-Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
-" nil t t t t nil nil nil nil nil t)
+ "farsi-isiri-9147" "Persian" " ف" nil
+ "Farsi keyboard based on ISIRI-9147.
+  See http://www.persoarabic.org/PLPC/120036 for additional documentation."
+ nil t t t t nil nil nil nil nil t)
 
 ;; Note: the rows of keys below are enclosed in Left-To-Right Override
 ;; embedding, to prevent them from being reordered by the Emacs
@@ -305,11 +313,11 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
 ;;
 ;; For some persian characters there are multiple ways of inputting
 ;; the same character. For example both ``i'' and ``y'' produce ی.
-;; For یک ``yk'', ``y'' is more natural and for این ``ain'', ``i'' is more natural. 
+;; For یک ``yk'', ``y'' is more natural and for این ``ain'', ``i'' is more natural.
 ;;
 ;; The more frequently used keys are mapped to lower case. The less frequently used letter moves to
-;; upper case. For example: ``s'' is س and ``S'' is ص.  ``h'' is ح and ``H''
-;; is ه.
+;; upper case. For example: ``s'' is س and ``S'' is ص.  ``h'' is ه and ``H''
+;; is ح.
 ;;
 ;; Multi-character input is based on \, &, and / prefix
 ;; characters. The letter 'h' is used as a postfix for the following two character mappings:
@@ -317,29 +325,30 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
 ;;
 ;;
 ;; Prefix letter \ is used for two character inputs when an alternate form of a letter
-;; is desired for example \% is: ‌÷ when % is: ٪.
+;; is desired for example '\-' is: '÷' when '-' is: '-'.
 ;;
 ;; Prefix letter & is used for multi-character inputs when special characters are
 ;; desired based on their abbreviate name. For example you can enter &lrm; to enter the
 ;; ``LEFT-TO-RIGHT MARK'' character.
 ;;
-;; Prefix letter / is used to provide two characters. / is: ``ZERO WIDTH NON-JOINER'' 
+;; Prefix letter / is used to provide two characters. / is: ``ZERO WIDTH NON-JOINER''
 ;; and // is /.
 ;;
 ;; The letter 'h' is used in a number of two character postfix mappings,
 ;; for example ``sh'' ش. So if you need the sequence of ``s'' and ``h'' you
-;; need to repeat the ``s''. For example: سحر = 's' 's' 'h' 'r'.
+;; need to repeat the ``s''. For example: سهم = 's' 's' 'h' 'm'.
 ;;
 
 
 (quail-define-package
- "farsi-transliterate-banan" "Farsi" "ب" t
+ "farsi-transliterate-banan" "Persian" "ب" t
  "Intuitive transliteration keyboard layout for persian/farsi.
-" nil t t t t nil nil nil nil nil t)
+  See http://www.persoarabic.org/PLPC/120036 for additional documentation."
+ nil t t t t nil nil nil nil nil t)
 
 
 (quail-define-rules
-;;;;;;;;;;;  isiri-6219 Table 5 -- جدول ۵ - حروِفِ اصلیِ فارسی 
+;;;;;;;;;;;  isiri-6219 Table 5 -- جدول ۵ - حروِفِ اصلیِ فارسی
  ("W"  ?ء)        ;; hamzeh
  ("A"  ?آ)        ;; U+0622   & ARABIC LETTER ALEF WITH MADDA ABOVE & الف با  کلاه
  ("a"  ?ا)        ;; U+0627   & ARABIC LETTER ALEF  & الف
@@ -352,7 +361,8 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("cc"  ?ث)
  ("j"  ?ج)
  ("ch" ?چ)
- ("h"  ?ح)
+ ("H"  ?ح)
+ ("hh"  ?ح)
  ("kh" ?خ)
  ("d"  ?د)
  ("Z"  ?ذ)
@@ -370,6 +380,9 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("X"  ?ظ)
  ("w"  ?ع)
  ("q"  ?غ)
+ ("G"  ?غ)
+ ("Gh"  ?غ)
+ ("GG"  ?غ)
  ("f"  ?ف)
  ("Q"  ?ق)
  ("gh" ?ق)
@@ -383,13 +396,13 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("v"  ?و)
  ("u"  ?و)
  ("V" ?ؤ)
- ("H"  ?ه)
+ ("h"  ?ه)
  ("y"  ?ی)
  ("i"  ?ی)
  ("I" ?ئ)
 
 
-;;;;;;;;;;;  isiri-6219 Table 6 -- جدول ۶ - حروِفِ  عربی 
+;;;;;;;;;;;  isiri-6219 Table 6 -- جدول ۶ - حروِفِ  عربی
  ("F" ?إ)
  ("D" ?\u0671)     ;; (ucs-insert #x0671)ٱ   named: حرفِ الفِ وصل
  ("K"  ?ك)         ;;  Arabic kaf
@@ -416,8 +429,8 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("+" ?\u002B)     ;; (ucs-insert #x002B)+   named: علامتِ به‌اضافه
  ("-" ?\u2212)     ;; (ucs-insert #x2212)−   named: علامتِ منها
  ("\\*" ?\u00D7)     ;; (ucs-insert #x00D7)×   named: علامتِ ضرب
- ("\\%" ?\u007F)    ;; (ucs-insert #x00F7)÷   named: علامتِ تقسیم
- ("<" ?\u003C)     ;; (ucs-insert #x003C)<   named: علامتِ کوچکتر  
+ ("\\-" ?\u00F7)    ;; (ucs-insert #x00F7)÷   named: علامتِ تقسیم
+ ("<" ?\u003C)     ;; (ucs-insert #x003C)<   named: علامتِ کوچکتر
  ("=" ?\u003D)     ;; (ucs-insert #x003D)=   named: علامتِ مساوی
  (">" ?\u003E)     ;; (ucs-insert #x003E)>   named: علامتِ بزرگتر
 
@@ -425,24 +438,25 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
 ;;;;;;;;;;;  isiri-6219 Table 2 -- جدول ۲ -  علائم نقطه گذاریِ مشترک
  ;;; Space
  ("."  ?.)  ;;
- (":" ?\u003A)     ;; (ucs-insert #x003A):   named: 
- ("!" ?\u0021)     ;; (ucs-insert #x0021)!   named: 
- ("\\." ?\u2026)     ;; (ucs-insert #x2026)…   named: 
- ("\\-" ?\u2010)     ;; (ucs-insert #x2010)‐   named: 
- ("-" ?\u002D)     ;; (ucs-insert #x002D)-   named: 
+ (":" ?\u003A)     ;; (ucs-insert #x003A):   named:
+ ("!" ?\u0021)     ;; (ucs-insert #x0021)!   named:
+ ("\\." ?\u2026)     ;; (ucs-insert #x2026)…   named:
+ ("\\-" ?\u2010)     ;; (ucs-insert #x2010)‐   named:
+ ("-" ?\u002D)     ;; (ucs-insert #x002D)-   named:
  ("|" ?|)
  ;;("\\\\" ?\)
  ("//" ?/)
- ("*" ?\u002A)     ;; (ucs-insert #x002A)*   named: 
- ("(" ?\u0028)     ;; (ucs-insert #x0028)(   named: 
- (")" ?\u0029)     ;; (ucs-insert #x0029))   named: 
- ("[" ?\u005B)     ;; (ucs-insert #x005B)[   named: 
- ("[" ?\u005D)     ;; (ucs-insert #x005D)]   named: 
- ("{" ?\u007B)     ;; (ucs-insert #x007B){   named: 
- ("}" ?\u007D)     ;; (ucs-insert #x007D)}   named: 
- ("\\<" ?\u00AB)     ;; (ucs-insert #x00AB)«   named: 
- ("\\>" ?\u00BB)     ;; (ucs-insert #x00BB)»   named: 
-
+ ("*" ?\u002A)     ;; (ucs-insert #x002A)*   named:
+ ("(" ?\u0028)     ;; (ucs-insert #x0028)(   named:
+ (")" ?\u0029)     ;; (ucs-insert #x0029))   named:
+ ("[" ?\u005B)     ;; (ucs-insert #x005B)[   named:
+ ("[" ?\u005D)     ;; (ucs-insert #x005D)]   named:
+ ("{" ?\u007B)     ;; (ucs-insert #x007B){   named:
+ ("}" ?\u007D)     ;; (ucs-insert #x007D)}   named:
+ ("\\<" ?\u00AB)     ;; (ucs-insert #x00AB)«   named:
+ ("\\>" ?\u00BB)     ;; (ucs-insert #x00BB)»   named:
+ ("N" ?\u00AB)     ;; (ucs-insert #x00AB)«   named:
+ ("M" ?\u00BB)     ;; (ucs-insert #x00BB)»   named:
 
 ;;;;;;;;;;;  isiri-6219 Table 3 -- جدول ۳ -  علائم نقطه گذاریِ فارسی
  ("," ?،)  ;; farsi
@@ -455,9 +469,9 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ;; LF
  ;; CR
  ("&zwnj;" ?\u200C) ;; (ucs-insert #x200C)‌   named: فاصله‌ی مجازی
- ("/" ?\u200C)      ;; 
+ ("/" ?\u200C)      ;;
  ("&zwj;" ?\u200D)  ;; (ucs-insert #x200D)‍   named: اتصالِ مجازی
- ("J" ?\u200D)      ;; 
+ ("J" ?\u200D)      ;;
  ("&lrm;" ?\u200E)  ;; (ucs-insert #x200E)‎   named: نشانه‌ی چپ‌به‌راست
  ("&rlm;" ?\u200F)  ;; (ucs-insert #x200F)‏   named: نشانه‌ی راست‌به‌چپ
  ("&ls;" ?\u2028)   ;; (ucs-insert #x2028)
   named: جداکننده‌ی سطرها
@@ -468,7 +482,7 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("&lro;" ?\u202D)   ;; (ucs-insert #x202D)   named: زیرمتنِ اکیداً چپ‌به‌راست
  ("&rlo;" ?\u202D)   ;; (ucs-insert #x202E)   named: زیرمتنِ اکیداً راست‌به‌چپ
  ("&bom;" ?\uFEFF)   ;; (ucs-insert #xFEFF)   named: نشانه‌ی ترتیبِ بایت‌ها
+
 
 ;;;;;;;;;;;  isiri-6219 Table 7 -- جدول ۷ -  نشانه‌هایِ فارسی
  ("^"  ?َ)  ;; zbar ;; زبر فارسى
@@ -481,12 +495,12 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("@" ?ْ)   ;; ساکن فارسى
  ("U" ?\u0653)  ;; (ucs-insert #x0653)ٓ   named: مدِ فارسی
  ("`" ?ٔ)  ;; همزه فارسى بالا
- ("C" ?\u0655)  ;; (ucs-insert #x0655)ٕ   named: همزه فارسى پایین 
+ ("C" ?\u0655)  ;; (ucs-insert #x0655)ٕ   named: همزه فارسى پایین
  ("$" ?\u0670)  ;; (ucs-insert #x0670)ٰ   named: الفِ مقصوره‌ی فارسی
 
 
 ;;;;;;;;;;;  isiri-6219 Table 8 - Forbidden Characters -- جدول ۸ - نویسه‌هایِ ممنوع
-;;  ;; he ye (ucs-insert 1728) kills emacs-24.0.90
+;;  ;; he ye (ucs-insert 1728)  (ucs-insert #x06c0) kills emacs-24.0.90
 ;; arabic digits 0-9
 
 
@@ -496,7 +510,7 @@ Based on ISIRI-9147 Layout of Persian Letters and Symbols on Computer Keyboards.
  ("\\~" ?~)
  ("\\@" ?@)
  ("\\#" ?#)
- ("\\$" ?\uFDFC)  ;; (ucs-insert #xFDFC)﷼   named: 
+ ("\\$" ?\uFDFC)  ;; (ucs-insert #xFDFC)﷼   named:
  ("\\^" ?^)
  ("\\1" ?1)
  ("\\2" ?2)