diff options
| author | Kenichi Handa | 2000-06-06 02:10:42 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2000-06-06 02:10:42 +0000 |
| commit | 04f63b87bc86baa288c3008820afa75c47dfc2a9 (patch) | |
| tree | 22cac6b734de2fc1d368aaf2bdb613a5a807fa9e | |
| parent | 1f487ef8ac423dd78048210836ee37a844d05218 (diff) | |
| download | emacs-04f63b87bc86baa288c3008820afa75c47dfc2a9.tar.gz emacs-04f63b87bc86baa288c3008820afa75c47dfc2a9.zip | |
(non-iso-charset-alist): Specify
translation table symbol instead of translation table itself.
(list-block-of-chars): CHARSET may be a translation table symbol.
| -rw-r--r-- | lisp/international/mule-diag.el | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/lisp/international/mule-diag.el b/lisp/international/mule-diag.el index 39f50e1b487..431efedb9fc 100644 --- a/lisp/international/mule-diag.el +++ b/lisp/international/mule-diag.el | |||
| @@ -241,15 +241,15 @@ but still shows the full information." | |||
| 241 | (defvar non-iso-charset-alist | 241 | (defvar non-iso-charset-alist |
| 242 | `((viscii | 242 | `((viscii |
| 243 | (ascii vietnamese-viscii-lower vietnamese-viscii-upper) | 243 | (ascii vietnamese-viscii-lower vietnamese-viscii-upper) |
| 244 | ,viet-viscii-nonascii-translation-table | 244 | viet-viscii-nonascii-translation-table |
| 245 | ((0 255))) | 245 | ((0 255))) |
| 246 | (koi8-r | 246 | (koi8-r |
| 247 | (ascii cyrillic-iso8859-5) | 247 | (ascii cyrillic-iso8859-5) |
| 248 | ,cyrillic-koi8-r-nonascii-translation-table | 248 | cyrillic-koi8-r-nonascii-translation-table |
| 249 | ((32 255))) | 249 | ((32 255))) |
| 250 | (alternativnyj | 250 | (alternativnyj |
| 251 | (ascii cyrillic-iso8859-5) | 251 | (ascii cyrillic-iso8859-5) |
| 252 | ,cyrillic-alternativnyj-nonascii-translation-table | 252 | cyrillic-alternativnyj-nonascii-translation-table |
| 253 | ((32 255))) | 253 | ((32 255))) |
| 254 | (big5 | 254 | (big5 |
| 255 | (ascii chinese-big5-1 chinese-big5-2) | 255 | (ascii chinese-big5-1 chinese-big5-2) |
| @@ -274,10 +274,10 @@ NON-ISO-CHARSET is a name (symbol) of the non-ISO charset. | |||
| 274 | CHARSET-LIST is a list of Emacs' charsets into which characters of | 274 | CHARSET-LIST is a list of Emacs' charsets into which characters of |
| 275 | NON-ISO-CHARSET are mapped. | 275 | NON-ISO-CHARSET are mapped. |
| 276 | 276 | ||
| 277 | TRANSLATION-METHOD is a char-table to translate a character code of | 277 | TRANSLATION-METHOD is a translatin table (symbol) to translate a |
| 278 | NON-ISO-CHARSET to the corresponding Emacs character code. It can | 278 | character code of NON-ISO-CHARSET to the corresponding Emacs character |
| 279 | also be a function to call with one argument, a character code in | 279 | code. It can also be a function to call with one argument, a |
| 280 | NON-ISO-CHARSET. | 280 | character code in NON-ISO-CHARSET. |
| 281 | 281 | ||
| 282 | CODE-RANGE specifies the valid code ranges of NON-ISO-CHARSET. | 282 | CODE-RANGE specifies the valid code ranges of NON-ISO-CHARSET. |
| 283 | It is a list of RANGEs, where each RANGE is of the form: | 283 | It is a list of RANGEs, where each RANGE is of the form: |
| @@ -353,8 +353,9 @@ detailed meanings of these arguments." | |||
| 353 | ;; of CHARSET is two (i.e. 2-byte charset), ROW is the first byte | 353 | ;; of CHARSET is two (i.e. 2-byte charset), ROW is the first byte |
| 354 | ;; (block index) of the characters, and MIN and MAX are the second | 354 | ;; (block index) of the characters, and MIN and MAX are the second |
| 355 | ;; bytes of the characters. If the dimension is one, ROW should be 0. | 355 | ;; bytes of the characters. If the dimension is one, ROW should be 0. |
| 356 | ;; For a non-ISO charset, CHARSET is a char-table or a function to get | 356 | ;; For a non-ISO charset, CHARSET is a translation table (symbol) or a |
| 357 | ;; Emacs' character codes that corresponds to the characters to list. | 357 | ;; function to get Emacs' character codes that corresponds to the |
| 358 | ;; characters to list. | ||
| 358 | 359 | ||
| 359 | (defun list-block-of-chars (charset row min max) | 360 | (defun list-block-of-chars (charset row min max) |
| 360 | (let (i ch) | 361 | (let (i ch) |
| @@ -374,8 +375,8 @@ detailed meanings of these arguments." | |||
| 374 | (if (= row 0) | 375 | (if (= row 0) |
| 375 | (make-char charset i) | 376 | (make-char charset i) |
| 376 | (make-char charset row i))) | 377 | (make-char charset row i))) |
| 377 | ((char-table-p charset) | 378 | ((and (symbolp charset) (get charset 'translation-table)) |
| 378 | (aref charset i)) | 379 | (aref (get charset 'translation-table) i)) |
| 379 | (t (funcall charset (+ (* row 256) i))))) | 380 | (t (funcall charset (+ (* row 256) i))))) |
| 380 | (if (and (char-table-p charset) | 381 | (if (and (char-table-p charset) |
| 381 | (or (< ch 32) (and (>= ch 127) (<= ch 255)))) | 382 | (or (< ch 32) (and (>= ch 127) (<= ch 255)))) |