? arabic22.patch ? leim/quail/arabic.el ? lisp/language/arabic.el Index: etc/HELLO =================================================================== RCS file: /cvsroot/emacs/emacs/etc/HELLO,v retrieving revision 1.40 diff -u -u -r1.40 HELLO --- etc/HELLO 3 Apr 2004 04:41:21 -0000 1.40 +++ etc/HELLO 22 Nov 2005 05:59:14 -0000 @@ -2,7 +2,7 @@ Its purpose is to illustrate a number of scripts. --------------------------------------------------------- Amharic ($(3"c!(B -Arabic (38R(47d(3T!JSa(4W(3W(B +Arabic (,GGdYQHjI(B) (,GGdSdGe(B ,GYdjce(B) Braille $,2(3(1('('(5(B C printf ("Hello, world!\n"); Czech (,Bh(Be,B9(Btina) Dobr,B}(B den @@ -57,6 +57,7 @@ A short test for characters represented by the character set mule-unicode-0100-24ff: +Arabic ($,1-g.$-y-q-h.*-i(B) ($,1-g.$-s.$-g.%(B $,1-y.$.*.#.%(B) Czech ($,1 ,(Besky) Dobr,A}(B den Esperanto Saluton (E$,1 E(Bo$,1 }(Ban$,1 =(Bo $,1 )(Biu$,1 U(Ba$,1!-(Bde) Greek ($,1'5';';'7'='9':',(B) $,1&s'5'9',(B $,1'C'1'B(B Index: leim/Makefile.in =================================================================== RCS file: /cvsroot/emacs/emacs/leim/Makefile.in,v retrieving revision 1.72 diff -u -u -r1.72 Makefile.in --- leim/Makefile.in 3 Nov 2005 17:00:51 -0000 1.72 +++ leim/Makefile.in 22 Nov 2005 05:59:14 -0000 @@ -125,6 +125,7 @@ RUSSIAN=${srcdir}/quail/cyrillic.elc ${srcdir}/quail/cyril-jis.elc OTHERS= \ + ${srcdir}/quail/arabic.elc \ ${srcdir}/quail/ethiopic.elc \ ${srcdir}/quail/ipa.elc \ ${srcdir}/quail/hebrew.elc \ Index: leim/makefile.w32-in =================================================================== RCS file: /cvsroot/emacs/emacs/leim/makefile.w32-in,v retrieving revision 1.29 diff -u -u -r1.29 makefile.w32-in --- leim/makefile.w32-in 4 Jul 2005 15:27:32 -0000 1.29 +++ leim/makefile.w32-in 22 Nov 2005 05:59:15 -0000 @@ -114,6 +114,7 @@ RUSSIAN=$(srcdir)/quail/cyrillic.elc $(srcdir)/quail/cyril-jis.elc MISC= \ + $(srcdir)/quail/arabic.elc \ $(srcdir)/quail/ethiopic.elc \ $(srcdir)/quail/ipa.elc \ $(srcdir)/quail/hebrew.elc \ Index: lib-src/makefile.w32-in =================================================================== RCS file: /cvsroot/emacs/emacs/lib-src/makefile.w32-in,v retrieving revision 2.38 diff -u -u -r2.38 makefile.w32-in --- lib-src/makefile.w32-in 11 Sep 2005 22:28:28 -0000 2.38 +++ lib-src/makefile.w32-in 22 Nov 2005 05:59:15 -0000 @@ -203,6 +203,7 @@ $(lispsource)case-table.elc lisp2 = \ + $(lispsource)language/arabic.el \ $(lispsource)language/chinese.elc \ $(lispsource)language/cyrillic.elc \ $(lispsource)language/indian.elc \ Index: lisp/ldefs-boot.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/ldefs-boot.el,v retrieving revision 1.11 diff -u -u -r1.11 ldefs-boot.el --- lisp/ldefs-boot.el 28 Oct 2005 17:06:02 -0000 1.11 +++ lisp/ldefs-boot.el 22 Nov 2005 05:59:38 -0000 @@ -29877,7 +29877,7 @@ ;;;;;; "international/subst-gb2312.el" "international/subst-jis.el" ;;;;;; "international/subst-ksc.el" "international/ucs-tables.el" ;;;;;; "international/utf-16.el" "international/utf-8.el" "isearch.el" -;;;;;; "jka-cmpr-hook.el" "kermit.el" "language/chinese.el" "language/cyrillic.el" +;;;;;; "jka-cmpr-hook.el" "kermit.el" "language/arabic.el" "language/chinese.el" "language/cyrillic.el" ;;;;;; "language/czech.el" "language/devanagari.el" "language/english.el" ;;;;;; "language/ethiopic.el" "language/european.el" "language/georgian.el" ;;;;;; "language/greek.el" "language/hebrew.el" "language/indian.el" Index: lisp/loadup.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/loadup.el,v retrieving revision 1.144 diff -u -u -r1.144 loadup.el --- lisp/loadup.el 16 Nov 2005 02:26:37 -0000 1.144 +++ lisp/loadup.el 22 Nov 2005 05:59:39 -0000 @@ -98,6 +98,7 @@ (load "international/latin-8") (load "international/latin-9")) ;; Load language-specific files. +(load "language/arabic") (load "language/chinese") (load "language/cyrillic") (load "language/indian") Index: lisp/international/characters.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/international/characters.el,v retrieving revision 1.54 diff -u -u -r1.54 characters.el --- lisp/international/characters.el 4 Jul 2005 17:22:27 -0000 1.54 +++ lisp/international/characters.el 22 Nov 2005 05:59:40 -0000 @@ -1235,7 +1235,7 @@ (latin-iso8859-4 . iso-latin-4) (thai-tis620 . thai-tis620) (greek-iso8859-7 . greek-iso-8bit) - (arabic-iso8859-6 . iso-2022-7bit) + (arabic-iso8859-6 . arabic-iso-8bit) (hebrew-iso8859-8 . hebrew-iso-8bit) (katakana-jisx0201 . japanese-shift-jis) (latin-jisx0201 . japanese-shift-jis) Index: lisp/international/code-pages.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/international/code-pages.el,v retrieving revision 1.31 diff -u -u -r1.31 code-pages.el --- lisp/international/code-pages.el 24 Sep 2005 13:43:59 -0000 1.31 +++ lisp/international/code-pages.el 22 Nov 2005 05:59:41 -0000 @@ -3791,72 +3791,6 @@ (define-coding-system-alias 'iso-8859-16 'iso-latin-10) (define-coding-system-alias 'latin-10 'iso-latin-10) -;; Unicode-based alternative which has the possible advantage of -;; having its relative sparseness specified. -;;;###autoload(autoload-coding-system 'iso-8859-6 '(require 'code-pages)) -(cp-make-coding-system - ;; The base system uses arabic-iso-8bit, but that's not a MIME charset. - iso-8859-6 - [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil - nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil - ?\  - ?\¤ - ?\، - ?\­ - ?\؛ - ?\؟ - ?\ء - ?\آ - ?\أ - ?\ؤ - ?\إ - ?\ئ - ?\ا - ?\ب - ?\ة - ?\ت - ?\ث - ?\ج - ?\ح - ?\خ - ?\د - ?\ذ - ?\ر - ?\ز - ?\س - ?\ش - ?\ص - ?\ض - ?\ط - ?\ظ - ?\ع - ?\غ - ?\ـ - ?\ف - ?\ق - ?\ك - ?\ل - ?\م - ?\ن - ?\ه - ?\و - ?\ى - ?\ي - ?\ً - ?\ٌ - ?\ٍ - ?\َ - ?\ُ - ?\ِ - ?\ّ - ?\ْ - nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil - nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil - nil nil nil nil nil nil nil nil nil nil nil] - "Unicode-based Arabic ISO/IEC 8859-6 (MIME: ISO-8859-6)" - ?6) -(define-coding-system-alias 'arabic-iso-8bit 'iso-8859-6) - ;;;###autoload(autoload-coding-system 'iso-8859-10 '(require 'code-pages)) (cp-make-coding-system iso-latin-6 Index: lisp/international/mule-cmds.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/international/mule-cmds.el,v retrieving revision 1.287 diff -u -u -r1.287 mule-cmds.el --- lisp/international/mule-cmds.el 20 Nov 2005 07:45:19 -0000 1.287 +++ lisp/international/mule-cmds.el 22 Nov 2005 05:59:44 -0000 @@ -2103,7 +2103,7 @@ ("af" . "Latin-1") ; Afrikaans ("am" "Ethiopic" utf-8) ; Amharic ("an" . "Latin-9") ; Aragonese - ; ar Arabic glibc uses 8859-6 + ("ar" "Arabic" iso-8859-6) ; as Assamese ; ay Aymara ("az" . "UTF-8") ; Azerbaijani Index: lisp/international/ucs-tables.el =================================================================== RCS file: /cvsroot/emacs/emacs/lisp/international/ucs-tables.el,v retrieving revision 1.43 diff -u -u -r1.43 ucs-tables.el --- lisp/international/ucs-tables.el 16 Nov 2005 22:21:16 -0000 1.43 +++ lisp/international/ucs-tables.el 22 Nov 2005 05:59:46 -0000 @@ -129,6 +129,10 @@ "Used as `translation-table-for-encode' for iso-8859-5. Translates from the iso8859 charsets and `mule-unicode-0100-24ff'.") +(defvar ucs-8859-6-encode-table nil + "Used as `translation-table-for-encode' for iso-8859-6. +Translates from the iso8859 charsets and `mule-unicode-0100-24ff'.") + (defvar ucs-8859-7-encode-table nil "Used as `translation-table-for-encode' for iso-8859-7. Translates from the iso8859 charsets and `mule-unicode-0100-24ff'.") @@ -1114,8 +1118,7 @@ ;; Derive tables that can be used as per-coding-system ;; `translation-table-for-encode's. - ;; N.B., there's no 8859-6 coding system. - (dolist (n (list 15 14 9 8 7 5 4 3 2 1)) + (dolist (n (list 15 14 9 8 7 6 5 4 3 2 1)) (let* ((alist (symbol-value (intern (format "ucs-8859-%d-alist" n)))) (encode-translator (set (intern (format "ucs-8859-%d-encode-table" n)) @@ -1194,7 +1197,7 @@ ;; Adjust the 8859 coding systems to fragment the unified characters ;; on encoding. - (dolist (n '(1 2 3 4 5 7 8 9 14 15)) + (dolist (n '(1 2 3 4 5 6 7 8 9 14 15)) (let* ((coding-system (coding-system-base (intern (format "iso-8859-%d" n)))) (table (symbol-value @@ -1237,7 +1240,7 @@ ;; For each charset, remove the parent of `safe-chars' property of ;; the corresponding coding system. - (dolist (n '(1 2 3 4 5 7 8 9 14 15)) + (dolist (n '(1 2 3 4 5 6 7 8 9 14 15)) (let* ((coding-system (coding-system-base (intern (format "iso-8859-%d" n)))) (safe (coding-system-get coding-system 'safe-chars))) Index: src/Makefile.in =================================================================== RCS file: /cvsroot/emacs/emacs/src/Makefile.in,v retrieving revision 1.318 diff -u -u -r1.318 Makefile.in --- src/Makefile.in 16 Nov 2005 02:38:24 -0000 1.318 +++ src/Makefile.in 22 Nov 2005 05:59:48 -0000 @@ -745,6 +745,7 @@ ${lispsource}international/latin-8.el \ ${lispsource}international/latin-9.el \ ${lispsource}case-table.elc \ + ${lispsource}language/arabic.el \ ${lispsource}language/chinese.elc \ ${lispsource}language/cyrillic.elc \ ${lispsource}language/indian.elc \ @@ -841,6 +842,7 @@ ../lisp/international/latin-8.el \ ../lisp/international/latin-9.el \ ../lisp/case-table.elc \ + ../lisp/language/arabic.el \ ../lisp/language/chinese.elc \ ../lisp/language/cyrillic.elc \ ../lisp/language/indian.elc \