• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/emacs-92/emacs/lisp/international/

Lines Matching +defs:char +defs:charset

10 ;; Keywords: multilingual, charset, coding system, fontset, diagnosis, i18n
48 ;; Re-order the elements of charset-list.
49 (defun sort-charset-list ()
50 (setq charset-list
51 (sort charset-list
52 (lambda (x y) (< (charset-id x) (charset-id y))))))
62 (define-button-type 'list-charset-chars
64 'help-function #'list-charset-chars
68 (defvar non-iso-charset-alist
96 decode-big5-char
101 decode-sjis-char
104 "Alist of charset names vs the corresponding information.
114 CHARSET is the name (symbol) of the charset.
138 The ID-NUM column contains a charset identification number for
142 multibyte sequence of characters in the charset using one to four
149 set. The FINAL-CHAR column contains an ISO-2022 <final-char> to use
170 (insert " on a charset name to list characters.")
184 (goto-char (point-max)))
189 ;; Insert body sorted by charset IDs.
193 (insert-char ?- 72)
197 (dolist (elt non-iso-charset-alist)
199 :type 'list-charset-chars
218 (goto-char (point-min))
229 (defun charset-multibyte-form-string (charset)
230 (let ((info (charset-info charset)))
231 (cond ((eq charset 'ascii)
233 ((eq charset 'eight-bit-control)
235 ((eq charset 'eight-bit-graphic)
254 (let ((tail (charset-list))
255 charset-info-list elt charset info sort-func)
257 (setq charset (car tail) tail (cdr tail)
258 info (charset-info charset))
261 (setq charset-info-list
262 (cons (list (charset-id charset) ; ID-NUM
263 charset ; CHARSET-NAME
264 (charset-multibyte-form-string charset); MULTIBYTE-FORM
269 charset-info-list)))
288 (error "Invalid charset sort key: %s" sort-key))))
290 (setq charset-info-list (sort charset-info-list sort-func))
293 (while charset-info-list
294 (setq elt (car charset-info-list)
295 charset-info-list (cdr charset-info-list))
299 :type 'list-charset-chars
301 (goto-char (point-max))
316 ## Each line corresponds to one charset.
328 ## DESCRIPTION (describing string of the charset)
330 (let ((l charset-list)
331 charset)
333 (setq charset (car l) l (cdr l))
335 (charset-id charset)
336 charset
337 (charset-dimension charset)
338 (charset-chars charset)
339 (charset-bytes charset)
340 (charset-width charset)
341 (charset-direction charset)
342 (charset-iso-final-char charset)
343 (charset-iso-graphic-plane charset)
344 (charset-description charset))))))
346 (defun decode-codepage-char (codepage code)
353 (string-to-char
354 (decode-coding-string (char-to-string code) coding-system))))
356 ;; A variable to hold charset input history.
357 (defvar charset-history nil)
361 (defun read-charset (prompt &optional default-value initial-input)
363 It must be an Emacs character set listed in the variable `charset-list'
365 `non-iso-charset-alist'.
373 charset-list)
375 non-iso-charset-alist)))
376 (charset (completing-read prompt table
377 nil t initial-input 'charset-history
379 (if (> (length charset) 0)
380 (intern charset))))
384 ;; of CHARSET is two (i.e. 2-byte charset), ROW is the first byte
387 ;; For a non-ISO charset, CHARSET is a translation table (symbol) or a
391 (defun list-block-of-chars (charset row min max)
393 (insert-char ?- (+ 4 (* 3 16)))
405 ((charsetp charset)
407 (make-char charset i)
408 (make-char charset row i)))
409 ((and (symbolp charset) (get charset 'translation-table))
410 (aref (get charset 'translation-table) i))
411 (t (funcall charset (+ (* row 256) i)))))
412 (if (and (char-table-p charset)
429 (defun list-iso-charset-chars (charset)
430 (let ((dim (charset-dimension charset))
431 (chars (charset-chars charset))
432 (plane (charset-iso-graphic-plane charset))
434 (insert (format "Characters in the coded character set %s.\n" charset))
436 (cond ((eq charset 'eight-bit-control)
438 ((eq charset 'eight-bit-graphic)
448 (list-block-of-chars charset 0 min max)
451 (list-block-of-chars charset i min max)
454 (defun list-non-iso-charset-chars (charset)
456 (let* ((slot (assq charset non-iso-charset-alist))
462 (error "Unknown character set: %s" charset))
463 (insert (format "Characters in the coded character set %s.\n" charset))
501 (defun list-charset-chars (charset)
505 PC `codepages' and other coded character sets. See `non-iso-charset-alist'."
506 (interactive (list (read-charset "Character set: ")))
513 (cons (format " (%s)" charset)
517 (cond ((charsetp charset)
518 (list-iso-charset-chars charset))
519 ((assq charset non-iso-charset-alist)
520 (list-non-iso-charset-chars charset))
522 (error "Invalid character set %s" charset))))))
526 (defun describe-character-set (charset)
528 (interactive (list (let ((non-iso-charset-alist nil))
529 (read-charset "Charset: "))))
530 (or (charsetp charset)
531 (error "Invalid charset: %S" charset))
532 (let ((info (charset-info charset)))
533 (help-setup-xref (list #'describe-character-set charset) (interactive-p))
536 (insert "Character set: " (symbol-name charset)
543 (insert "Final char of ISO2022 designation sequence: ")
550 (charset-multibyte-form-string charset)))
565 charset)
567 (setq charset (aref flags graphic-register))
571 (cond ((null charset)
573 ((eq charset t)
575 ((symbolp charset)
577 charset (charset-description charset)))
578 ((listp charset)
579 (if (charsetp (car charset))
581 (car charset)
582 (charset-description (car charset)))
586 (when (listp charset)
587 (setq charset (cdr charset))
588 (while charset
589 (cond ((eq (car charset) t)
591 ((charsetp (car charset))
593 (car charset)
594 (charset-description (car charset)))))
597 (setq charset (cdr charset))))
696 (goto-char (point-max))
861 (goto-char pos)
863 (goto-char (point-max)))
911 charset)
913 (setq charset (aref flags idx))
914 (cond ((null charset)
916 ((eq charset t)
918 ((charsetp charset)
919 (princ charset))
920 ((listp charset)
922 (princ (car charset))
923 (setq charset (cdr charset))
924 (while charset
926 (princ (car charset))
927 (setq charset (cdr charset)))
1079 elt chars font-spec opened prev-charset charset from to)
1093 (setq charset chars from nil to nil)
1095 (setq charset (char-charset chars) from chars to chars)
1096 (setq charset (char-charset (car chars))
1098 (unless (eq charset prev-charset)
1099 (insert (symbol-name charset))
1103 (let ((split (split-char from)))
1104 (if (and (= (charset-dimension charset) 2)
1107 (make-char charset (nth 1 split)
1108 (if (= (charset-chars charset) 94) 33 32))))
1112 (let ((split (split-char to)))
1113 (if (and (= (charset-dimension charset) 2)
1116 (make-char charset (nth 1 split)
1117 (if (= (charset-chars charset) 94) 126 127))))
1138 (setq prev-charset charset)
1197 (goto-char (point-min))