Mercurial > hg > xemacs-beta
changeset 3970:949ac151a10d
[xemacs-hg @ 2007-05-20 20:09:20 by aidan]
Test that all listed langenv input methods exist; comment out those we can't
support while using 21.4 to compile our packages.
author | aidan |
---|---|
date | Sun, 20 May 2007 20:09:40 +0000 |
parents | a7c03016302e |
children | de8a6fef7fcc |
files | lisp/ChangeLog lisp/mule/devanagari.el lisp/mule/ethiopic.el lisp/mule/hebrew.el lisp/mule/lao.el lisp/mule/mule-category.el lisp/mule/tibetan.el lisp/mule/vietnamese.el tests/ChangeLog tests/automated/mule-tests.el |
diffstat | 10 files changed, 76 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sun May 20 16:04:10 2007 +0000 +++ b/lisp/ChangeLog Sun May 20 20:09:40 2007 +0000 @@ -1,3 +1,25 @@ +2007-05-20 Aidan Kehoe <kehoea@parhasard.net> + + * mule/devanagari.el ("Devanagari"): + * mule/ethiopic.el ("Ethiopic"): + * mule/hebrew.el ("Hebrew"): + * mule/lao.el ("Lao"): + * mule/tibetan.el ("Tibetan"): + * mule/vietnamese.el ("Vietnamese"): + The Hebrew input method we don't provide, for less than stellar + reasons; we should reconsider when and if we get bidi support. + The other input methods require changes to mule-category.el that + 21.4 doesn't have, and as such supporting them in the packages is + mostly impossible. I've commented out the references to them in + the corresponding language environment. + + * mule/mule-category.el (define-category): + Add an optional argument to define-category, taken from GNU; it's + still only a partial implementation, though. This whole file is + chaos. + * mule/mule-category.el (make-category-table): New. + Trivial implementation, for GNU compatibility. + 2007-05-20 Stephen J. Turnbull <stephen@xemacs.org> * gutter-items.el (progress-feedback-with-label): Clarify docstring.
--- a/lisp/mule/devanagari.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/devanagari.el Sun May 20 20:09:40 2007 +0000 @@ -62,7 +62,8 @@ "Devanagari" '((charset indian-is13194 indian-2-column indian-1-column) (coding-system in-is13194-devanagari) (coding-priority in-is13194-devanagari) - (input-method . "devanagari-itrans") + ;; Not available in packages. + ; (input-method . "devanagari-itrans") (features devan-util) (documentation . "\ Such languages using Devanagari script as Hindi and Marathi
--- a/lisp/mule/ethiopic.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/ethiopic.el Sun May 20 20:09:40 2007 +0000 @@ -78,7 +78,7 @@ (charset ethiopic) (coding-system iso-2022-7bit) (coding-priority iso-2022-7bit) - (input-method . "ethiopic") + ;; (input-method . "ethiopic") (features ethio-util) (sample-text . "$(3$Q#U!.(B") (documentation . t)))
--- a/lisp/mule/hebrew.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/hebrew.el Sun May 20 20:09:40 2007 +0000 @@ -73,7 +73,8 @@ "Hebrew" '((charset hebrew-iso8859-8) (coding-system iso-8859-8) (coding-priority iso-8859-8) - (input-method . "hebrew") + ;; Not available in packages. + ;; (input-method . "hebrew") (sample-text . "Hebrew [2],Hylem[0](B") (documentation . "Right-to-left writing is not yet supported.") ))
--- a/lisp/mule/lao.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/lao.el Sun May 20 20:09:40 2007 +0000 @@ -62,7 +62,7 @@ "Lao" '((charset lao) (coding-system lao) (coding-priority lao) - (input-method . "lao") + ;; (input-method . "lao") (nonascii-translation . lao) (unibyte-display . lao) (features lao-util)
--- a/lisp/mule/mule-category.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/mule-category.el Sun May 20 20:09:40 2007 +0000 @@ -37,13 +37,18 @@ (defvar defined-category-hashtable (make-hash-table :size 50)) -(defun define-category (designator doc-string) +(defun define-category (designator doc-string &optional table) "Make a new category whose designator is DESIGNATOR. DESIGNATOR should be a visible letter of ' ' thru '~'. -STRING is a doc string for the category. -Letters of 'a' thru 'z' are already used or kept for the system." +DOC-STRING is a doc string for the category. +Letters of 'a' thru 'z' are already used or kept for the system. +The category should be defined only in category table TABLE, which defaults +to the current buffer's category table, but this is not implemented. " + ;; #### Implement the limiting of the definition. (check-argument-type 'category-designator-p designator) (check-argument-type 'stringp doc-string) + (setq table (or table (category-table))) + (check-argument-type 'category-table-p table) (puthash designator doc-string defined-category-hashtable)) (defun undefine-category (designator) @@ -142,6 +147,10 @@ (progn ,@body) (set-category-table current-category-table)))) +(defun make-category-table () + "Construct a new and empty category table and return it." + (make-char-table 'category)) + (defun describe-category () "Describe the category specifications in the category table. The descriptions are inserted in a buffer, which is then displayed."
--- a/lisp/mule/tibetan.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/tibetan.el Sun May 20 20:09:40 2007 +0000 @@ -136,7 +136,8 @@ "Tibetan" '((charset tibetan tibetan-1-column) (coding-system tibetan-iso-8bit) (coding-priority iso-2022-7bit tibetan-iso-8bit) - (input-method . "tibetan-wylie") + ;; Not available in packages. + ;; (input-method . "tibetan-wylie") (features tibet-util) (documentation . t) (sample-text
--- a/lisp/mule/vietnamese.el Sun May 20 16:04:10 2007 +0000 +++ b/lisp/mule/vietnamese.el Sun May 20 20:09:40 2007 +0000 @@ -331,7 +331,8 @@ (coding-system viscii vscii viqr) (coding-priority viscii) (locale "vietnamese" "vi") - (input-method . "vietnamese-viqr") + ;; Not available in packages. + ;; (input-method . "vietnamese-viqr") (features viet-util) (sample-text . "Vietnamese (Ti,1*(Bng Vi,1.(Bt) Ch,1`(Bo b,1U(Bn") (documentation . "\
--- a/tests/ChangeLog Sun May 20 16:04:10 2007 +0000 +++ b/tests/ChangeLog Sun May 20 20:09:40 2007 +0000 @@ -1,3 +1,11 @@ +2007-05-20 Aidan Kehoe <kehoea@parhasard.net> + + * automated/mule-tests.el: + Make the file name coding system tests work on OS X. + Check various slots of the language environment structure to make + sure they're well formed--we've been shipping without a Turkish or + Latin-10 input method for years, for example, which is an error. + 2007-04-30 Aidan Kehoe <kehoea@parhasard.net> * automated/mule-tests.el (featurep):
--- a/tests/automated/mule-tests.el Sun May 20 16:04:10 2007 +0000 +++ b/tests/automated/mule-tests.el Sun May 20 20:09:40 2007 +0000 @@ -327,23 +327,26 @@ ;;--------------------------------------------------------------- ;; Test file-system character conversion (and, en passant, file ops) ;;--------------------------------------------------------------- - (let* ((scaron (make-char 'latin-iso8859-2 57)) - (latin2-string (make-string 4 scaron)) + (let* ((dstroke (make-char 'latin-iso8859-2 80)) + (latin2-string (make-string 4 dstroke)) (prefix (concat (file-name-as-directory (file-truename (temp-directory))) latin2-string)) - (name1 (make-temp-name prefix)) - (name2 (make-temp-name prefix)) (file-name-coding-system ;; 'iso-8859-X doesn't work on darwin (as of "Panther" 10.3), it ;; seems to know that file-name-coding-system is definitely utf-8 (if (string-match "darwin" system-configuration) 'utf-8 'iso-8859-2)) - ) + ;; make-temp-name does stat(), which on OS X requires that you + ;; normalise, where open() will normalise for you. Previously we + ;; used scaron as the Latin-2 character, and make-temp-name errored + ;; on OS X. LATIN CAPITAL LETTER D WITH STROKE does decompose. + (name1 (make-temp-name prefix)) + (name2 (make-temp-name prefix))) + ;; This is how you suppress output from `message', called by `write-region' (Assert (not (equal name1 name2))) (Assert (not (file-exists-p name1))) - ;; This is how you suppress output from `message', called by `write-region' (Silence-Message (write-region (point-min) (point-max) name1)) (Assert (file-exists-p name1)) @@ -352,8 +355,7 @@ (Assert (file-exists-p name2)) (Assert (equal (file-truename name2) name1)) (Assert (equal (file-truename name1) name1))) - - (ignore-file-errors (delete-file name1) (delete-file name2))) + (ignore-file-errors (delete-file name1) (delete-file name2))) ;; Add many more file operation tests here... @@ -476,6 +478,20 @@ katakana-jisx0201 korean-ksc5601 latin-iso8859-1 latin-iso8859-2 thai-xtis vietnamese-viscii-lower)))) + ;; Language environments. + (dolist (language (mapcar 'car language-info-alist)) + (set-language-environment language) + (Assert (equal language current-language-environment)) + (set-input-method (get-language-info language 'input-method)) + (Assert (equal (get-language-info language 'input-method) + current-input-method)) + (dolist (charset (get-language-info language 'charset)) + (Assert (charsetp (find-charset charset)))) + (dolist (coding-system (get-language-info language 'coding-system)) + (Assert (coding-system-p (find-coding-system coding-system)))) + (dolist (coding-system (get-language-info language 'coding-system)) + (Assert (coding-system-p (find-coding-system coding-system))))) + (with-temp-buffer (flet ((Assert-elc-is-escape-quoted ()