[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/international/mule-cmds.el
From: |
Kenichi Handa |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/international/mule-cmds.el |
Date: |
Mon, 17 Mar 2003 23:23:50 -0500 |
Index: emacs/lisp/international/mule-cmds.el
diff -c emacs/lisp/international/mule-cmds.el:1.225
emacs/lisp/international/mule-cmds.el:1.226
*** emacs/lisp/international/mule-cmds.el:1.225 Thu Mar 13 03:32:17 2003
--- emacs/lisp/international/mule-cmds.el Mon Mar 17 23:23:50 2003
***************
*** 483,489 ****
(defun find-coding-systems-for-charsets (charsets)
"Return a list of proper coding systems to encode characters of CHARSETS.
! CHARSETS is a list of character sets."
(cond ((or (null charsets)
(and (= (length charsets) 1)
(eq 'ascii (car charsets))))
--- 483,492 ----
(defun find-coding-systems-for-charsets (charsets)
"Return a list of proper coding systems to encode characters of CHARSETS.
! CHARSETS is a list of character sets.
! It actually checks at most the first 96 characters of each charset.
! So, if a charset of dimension two is included in CHARSETS, the value may
! contain a coding system that can't encode all characters of the charset."
(cond ((or (null charsets)
(and (= (length charsets) 1)
(eq 'ascii (car charsets))))
***************
*** 493,513 ****
'(raw-text emacs-mule))
(t
(let ((codings t)
! charset l ll)
(while (and codings charsets)
(setq charset (car charsets) charsets (cdr charsets))
(unless (eq charset 'ascii)
! (setq l (aref char-coding-system-table (make-char charset)))
(if (eq codings t)
(setq codings l)
(let ((ll nil))
! (while codings
! (if (memq (car codings) l)
! (setq ll (cons (car codings) ll)))
! (setq codings (cdr codings)))
(setq codings ll)))))
! (append codings
! (char-table-extra-slot char-coding-system-table 0))))))
(defun find-multibyte-characters (from to &optional maxcount excludes)
"Find multibyte characters in the region specified by FROM and TO.
--- 496,526 ----
'(raw-text emacs-mule))
(t
(let ((codings t)
! charset l str)
(while (and codings charsets)
(setq charset (car charsets) charsets (cdr charsets))
(unless (eq charset 'ascii)
! (setq str (make-string 96 32))
! (if (= (charset-dimension charset) 1)
! (if (= (charset-chars charset) 96)
! (dotimes (i 96)
! (aset str i (make-char charset (+ i 32))))
! (dotimes (i 94)
! (aset str i (make-char charset (+ i 33)))))
! (if (= (charset-chars charset) 96)
! (dotimes (i 96)
! (aset str i (make-char charset 32 (+ i 32))))
! (dotimes (i 94)
! (aset str i (make-char charset 33 (+ i 33))))))
! (setq l (find-coding-systems-string str))
(if (eq codings t)
(setq codings l)
(let ((ll nil))
! (dolist (elt codings)
! (if (memq elt l)
! (setq ll (cons elt ll))))
(setq codings ll)))))
! codings))))
(defun find-multibyte-characters (from to &optional maxcount excludes)
"Find multibyte characters in the region specified by FROM and TO.