[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/international/utf-8.el [lexbind]
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/international/utf-8.el [lexbind] |
Date: |
Tue, 14 Oct 2003 19:39:37 -0400 |
Index: emacs/lisp/international/utf-8.el
diff -c emacs/lisp/international/utf-8.el:1.13.2.1
emacs/lisp/international/utf-8.el:1.13.2.2
*** emacs/lisp/international/utf-8.el:1.13.2.1 Fri Apr 4 01:20:26 2003
--- emacs/lisp/international/utf-8.el Tue Oct 14 19:39:24 2003
***************
*** 193,199 ****
(define-minor-mode utf-translate-cjk-mode
"Whether the UTF based coding systems should decode/encode CJK characters.
Enabling this loads tables which allow the coding systems mule-utf-8,
! mule-utf-16-le and mule-utf-16-be to encode characters in the charsets
`korean-ksc5601', `chinese-gb2312', `chinese-big5-1',
`chinese-big5-2', `japanese-jisx0208' and `japanese-jisx0212', and to
decode the corresponding unicodes into such characters.
--- 193,199 ----
(define-minor-mode utf-translate-cjk-mode
"Whether the UTF based coding systems should decode/encode CJK characters.
Enabling this loads tables which allow the coding systems mule-utf-8,
! mule-utf-16le and mule-utf-16be to encode characters in the charsets
`korean-ksc5601', `chinese-gb2312', `chinese-big5-1',
`chinese-big5-2', `japanese-jisx0208' and `japanese-jisx0212', and to
decode the corresponding unicodes into such characters.
***************
*** 221,227 ****
(setq ucs-mule-cjk-to-unicode
(make-hash-table :test 'eq :size 43000 :rehash-size 1000)
ucs-unicode-to-mule-cjk
! (make-hash-table :test 'eq :size 43000 :rehash-size 1000))
;; Load the files explicitly, to avoid having to keep
;; around the large tables they contain (as well as the
;; ones which get built).
--- 221,227 ----
(setq ucs-mule-cjk-to-unicode
(make-hash-table :test 'eq :size 43000 :rehash-size 1000)
ucs-unicode-to-mule-cjk
! (make-hash-table :test 'eq :size 21500 :rehash-size 1000))
;; Load the files explicitly, to avoid having to keep
;; around the large tables they contain (as well as the
;; ones which get built).
***************
*** 246,263 ****
(load "subst-gb2312")
(load "subst-big5")
(load "subst-jis"))) ; jis covers as much as big5, gb2312
- (let ((table (make-char-table 'translation-table)))
- (maphash (lambda (k v)
- (aset table k t))
- ucs-mule-cjk-to-unicode)
- (define-translation-hash-table 'utf-subst-table-for-decode
- ucs-unicode-to-mule-cjk)
- (define-translation-hash-table 'utf-subst-table-for-encode
- ucs-mule-cjk-to-unicode))
(define-translation-hash-table 'utf-subst-table-for-decode
! (make-hash-table :test 'eq))
(define-translation-hash-table 'utf-subst-table-for-encode
! (make-hash-table :test 'eq)))))
(define-ccl-program ccl-decode-mule-utf-8
;;
--- 246,265 ----
(load "subst-gb2312")
(load "subst-big5")
(load "subst-jis"))) ; jis covers as much as big5, gb2312
(define-translation-hash-table 'utf-subst-table-for-decode
! ucs-unicode-to-mule-cjk)
(define-translation-hash-table 'utf-subst-table-for-encode
! ucs-mule-cjk-to-unicode)
! (set-char-table-extra-slot (get 'utf-translation-table-for-encode
! 'translation-table)
! 1 ucs-mule-cjk-to-unicode))
! (define-translation-hash-table 'utf-subst-table-for-decode
! (make-hash-table :test 'eq))
! (define-translation-hash-table 'utf-subst-table-for-encode
! (make-hash-table :test 'eq))
! (set-char-table-extra-slot (get 'utf-translation-table-for-encode
! 'translation-table)
! 1 nil)))
(define-ccl-program ccl-decode-mule-utf-8
;;
***************
*** 446,457 ****
;; mule-unicode-e000-ffff
;; Fixme: fffe and ffff are invalid.
! ((r0 = ,(charset-id 'mule-unicode-e000-ffff))
! (r3 -= #xe000)
! (r3 //= 96)
! (r1 = (r7 + 32))
! (r1 += ((r3 + 32) << 7))
! (write-multibyte-character r0 r1)))))))))
(if (r0 < #xfe)
;; 4byte encoding
--- 448,466 ----
;; mule-unicode-e000-ffff
;; Fixme: fffe and ffff are invalid.
! ((r4 = r3) ; don't zap r3
! (lookup-integer utf-subst-table-for-decode r4 r5)
! (if r7
! ;; got a translation
! ((write-multibyte-character r4 r5)
! ;; Zapped through register starvation.
! (r5 = ,(charset-id 'eight-bit-control)))
! ((r0 = ,(charset-id 'mule-unicode-e000-ffff))
! (r3 -= #xe000)
! (r3 //= 96)
! (r1 = (r7 + 32))
! (r1 += ((r3 + 32) << 7))
! (write-multibyte-character r0 r1)))))))))))
(if (r0 < #xfe)
;; 4byte encoding
***************
*** 754,761 ****
(save-excursion (setq length (diacritic-post-read-conversion length)))
(save-excursion (setq length (thai-post-read-conversion length)))
(save-excursion (setq length (lao-post-read-conversion length)))
! (save-excursion
! (setq length (in-is13194-devanagari-post-read-conversion length))))
length)
;; ucs-tables is preloaded
--- 763,771 ----
(save-excursion (setq length (diacritic-post-read-conversion length)))
(save-excursion (setq length (thai-post-read-conversion length)))
(save-excursion (setq length (lao-post-read-conversion length)))
! (save-excursion (setq length (devanagari-post-read-conversion length)))
! (save-excursion (setq length (malayalam-post-read-conversion length)))
! (save-excursion (setq length (tamil-post-read-conversion length))))
length)
;; ucs-tables is preloaded
***************
*** 800,805 ****
--- 810,816 ----
(valid-codes (0 . 255))
;; (pre-write-conversion . utf-8-pre-write-conversion)
(post-read-conversion . utf-8-post-read-conversion)
+ (translation-table-for-encode . utf-translation-table-for-encode)
(dependency unify-8859-on-encoding-mode
unify-8859-on-decoding-mode
utf-fragment-on-decoding
***************
*** 828,831 ****
--- 839,843 ----
;;; `((,(string-as-multibyte "[\200-\237\240-\377]")
;;; . utf-8-compose-function))))
+ ;;; arch-tag: b08735b7-753b-4ae6-b754-0f3efe4515c5
;;; utf-8.el ends here
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/international/utf-8.el [lexbind],
Miles Bader <=