]> git.eshelyaron.com Git - emacs.git/commitdiff
Add Arabic support.
authorKenichi Handa <handa@m17n.org>
Wed, 25 Aug 2010 05:13:27 +0000 (14:13 +0900)
committerKenichi Handa <handa@m17n.org>
Wed, 25 Aug 2010 05:13:27 +0000 (14:13 +0900)
etc/ChangeLog
etc/HELLO
lisp/ChangeLog
lisp/international/fontset.el
lisp/international/mule-cmds.el
lisp/language/misc-lang.el

index 5b000fc66c6ce4fef0250d6497968c6f206b5be9..0e021c8707c3b6d081b2cd4ecd075f4ea9f9ab04 100644 (file)
@@ -1,3 +1,7 @@
+2010-08-25  Kenichi Handa  <handa@m17n.org>
+
+       * HELLO: Change designation sequences for Arabic text.
+
 2010-08-14  Eli Zaretskii  <eliz@gnu.org>
 
        * tutorials/TUTORIAL.he: Use MAQAF instead of hyphen where appropriate.
index 621f061a66490aadcec93be1442740d700ba889f..f7320f7301f10b51426e613c675f7c4f4ce9b1b0 100644 (file)
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -4,7 +4,7 @@ Non-ASCII examples:
   Europe: \e,A!\e(BHola!, Gr\e,A|_\e(B Gott, Hyv\e,Add\e(B p\e,Ad\e(Biv\e,Add\e(B, Tere \e,Au\e(Bhtust, Bon\e,Cu\e(Bu
           Cze\e,B6f\e(B!, Dobr\e,B}\e(B den, \e,L7T`PRabRcYbU\e(B!, \e,FCei\\e(B \e,Fsar\e(B, \e$,1J2J0J;J0J@JOJ=J1J0\e(B
   Africa: \e$(3!A!,!>\e(B
-  Middle/Near East: \e,Hylem\e(B, \e,GGdSqdGe\e(B \e,GYdjce\e(B
+  Middle/Near East: \e,Hylem\e(B, \e$,1-g.$-s.1.$-g.%\e(B \e$,1-y.$.*.#.%\e(B
   South Asia: \e$,19h9n9x:-9d:'\e(B, \e$,15h5n5x6-5d6'\e(B, \e$,1?(?.?8?M>u?>?0\e(B, \e$,1@H@N@X@m@5@^@P@"\e(B, \e$,1;6;A;#;?;,;G\e(B,
               \e$,1AFAzB4AvB=B AqB*\e(B, \e$,1<U<C<5<m<5<N<m\e(B, \e$,1=h=n=x>-=U=~=p=B\e(B, \e$(7"7"!#C!;"E"S"G!;"7"2"[!;"D"["#"G!>\e(B
   South East Asia: \e$,1\'\f\:\V\4\?\]\:\e(B, \e(1JP:R-4U\e(B, \e$,1H9H$HZHYH"H<HLH5HK\e(B, \e,TJGQJ4U$CQ:\e(B, Ch\e,1`\e(Bo b\e,1U\e(Bn
@@ -16,7 +16,7 @@ Non-ASCII examples:
 LANGUAGE (NATIVE NAME) HELLO
 ---------------------- -----
 Amharic (\e$,1O M[MmN{\e(B)      \e$,1M`MKM]\e(B
-Arabic \e$,1ro\e(B(\e,GGdYQHjqI\e(B)       \e,GGdSqdGe\e(B \e,GYdjce\e(B
+Arabic \e$,1ro\e(B(\e$,1-g.$-y-q-h.*.1-i\e(B)      \e$,1-g.$-s.1.$-g.%\e(B \e$,1-y.$.*.#.%\e(B
 Bengali (\e$,17,7>6b727>\e(B)    \e$,17(7.787M6u7>70\e(B
 Braille        \e$,2(3(1('('(5\e(B
 Burmese (\e$,1H9H\H4HZH9HL\e(B)  \e$,1H9H$HZHYH"H<HLH5HK\e(B
index ce5baa1b1a1a8211eaf6d28811e1997aacb1924d..962b1618fbd70814d5bd9fa111238c0feef21453 100644 (file)
@@ -1,3 +1,11 @@
+2010-08-25  Kenichi Handa  <handa@m17n.org>
+
+       * language/misc-lang.el ("Arabic"): New language environment.
+       Setup composition-function-table for Arabic characters.
+
+       * international/fontset.el (setup-default-fontset): Fix typo for
+       arabic OTF spec (fini->fina).
+
 2010-08-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * simple.el (prog-mode-map): New var.
index ecb2088de89fc17d4fa19dc3d189d1f0fc1db71b..753b1ab25e7e36fb042d400814c434597e847a3c 100644 (file)
               (nil . "koi8-r"))
 
      (arabic ,(font-spec :registry "iso10646-1"
-                        :otf '(arab nil (init medi fini liga)))
+                        :otf '(arab nil (init medi fina liga)))
             (nil . "MuleArabic-0")
             (nil . "MuleArabic-1")
             (nil . "MuleArabic-2")
index c961decfed5907211e8becff0ea75ea4b71c074a..91b4e42807d5f5e75b0539b7e0c2df74a7c9b26f 100644 (file)
@@ -2179,7 +2179,7 @@ See `set-language-info-alist' for use in programs."
     ("af" . "Latin-1") ; Afrikaans
     ("am" "Ethiopic" utf-8) ; Amharic
     ("an" . "Latin-9") ; Aragonese
-    ; ar Arabic glibc uses 8859-6
+    ("ar" . "Arabic")
     ; as Assamese
     ; ay Aymara
     ("az" . "UTF-8") ; Azerbaijani
index 2431c9d9e99183de02847653ccfaa997379ba810..e2e4f29dd9e4a3b3a5f85abbd9a379abe0738f75 100644 (file)
@@ -40,8 +40,9 @@
 IPA is International Phonetic Alphabet for English, French, German
 and Italian.")))
 
-;; This is for Arabic.  But, as we still don't have Arabic language
-;; support, we at least define a coding system here.
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Arabic
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (define-coding-system 'iso-8859-6
   "ISO-8859-6 based encoding (MIME:ISO-8859-6)."
@@ -58,6 +59,19 @@ and Italian.")))
   :mime-charset 'windows-1256)
 (define-coding-system-alias 'cp1256 'windows-1256)
 
+(set-language-info-alist
+ "Arabic" '((charset unicode)
+           (coding-system utf-8 iso-8859-6 windows-1256)
+           (coding-priority utf-8 iso-8859-6 windows-1256)
+           (input-method . "arabic")
+           (sample-text . "Arabic      السّلام عليكم")
+           (documentation . "Bidirectional editing is supported.")))
+
+(set-char-table-range
+ composition-function-table
+ '(#x600 . #x6FF)
+ (list ["[\u0600-\u06FF]+" 0 font-shape-gstring]))
+
 (provide 'misc-lang)
 
 ;; arch-tag: 6953585c-1a1a-4c09-be82-a2518afb6074