emacs-diffs
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]