emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/leim/quail/uni-input.el


From: Kenichi Handa
Subject: [Emacs-diffs] Changes to emacs/leim/quail/uni-input.el
Date: Mon, 20 Sep 2004 22:34:41 -0400

Index: emacs/leim/quail/uni-input.el
diff -c emacs/leim/quail/uni-input.el:1.5 emacs/leim/quail/uni-input.el:1.6
*** emacs/leim/quail/uni-input.el:1.5   Mon Sep  1 15:45:02 2003
--- emacs/leim/quail/uni-input.el       Tue Sep 21 02:25:16 2004
***************
*** 66,79 ****
               (write (((r0 >> 6) & ?\x3F) | ?\x80))
               (write ((r0 & ?\x3F) | ?\x80))))))))))
  
  (defun ucs-input-method (key)
    (if (or buffer-read-only
          (and (/= key ?U) (/= key ?u)))
        (list key)
      (quail-setup-overlays nil)
!     (let ((current-prefix-arg)
!         (last-command-char key))
!       (call-interactively 'self-insert-command))
      (let ((modified-p (buffer-modified-p))
          (buffer-undo-list t)
          (input-method-function nil)
--- 66,81 ----
               (write (((r0 >> 6) & ?\x3F) | ?\x80))
               (write ((r0 & ?\x3F) | ?\x80))))))))))
  
+ (defun ucs-input-insert-char (char)
+   (insert char)
+   (move-overlay quail-overlay (overlay-start quail-overlay) (point)))
+ 
  (defun ucs-input-method (key)
    (if (or buffer-read-only
          (and (/= key ?U) (/= key ?u)))
        (list key)
      (quail-setup-overlays nil)
!     (ucs-input-insert-char key)
      (let ((modified-p (buffer-modified-p))
          (buffer-undo-list t)
          (input-method-function nil)
***************
*** 94,102 ****
                                       ?b ?c ?d ?e ?f ?A ?B ?C ?D ?E ?F)))
                      (progn
                        (push key events)
!                       (let ((last-command-char key)
!                             (current-prefix-arg))
!                         (call-interactively 'self-insert-command)))
                    (let ((last-command-char key)
                          (current-prefix-arg))
                      (condition-case nil
--- 96,102 ----
                                       ?b ?c ?d ?e ?f ?A ?B ?C ?D ?E ?F)))
                      (progn
                        (push key events)
!                       (ucs-input-insert-char key))
                    (let ((last-command-char key)
                          (current-prefix-arg))
                      (condition-case nil
***************
*** 109,115 ****
                                                 (cdr (nreverse events)))
                                          16))
                     (c (decode-char 'ucs n))
!                   (status (make-vector 9 nil)))
                (if c
                    (list c)
                  (aset status 0 n)
--- 109,115 ----
                                                 (cdr (nreverse events)))
                                          16))
                     (c (decode-char 'ucs n))
!                    (status (make-vector 9 nil)))
                (if c
                    (list c)
                  (aset status 0 n)
***************
*** 129,135 ****
          (< (prefix-numeric-value arg) 0))
        (unwind-protect
          (progn
!           (quail-hide-guidance-buf)
            (quail-delete-overlays)
            (setq describe-current-input-method-function nil))
        (kill-local-variable 'input-method-function))
--- 129,135 ----
          (< (prefix-numeric-value arg) 0))
        (unwind-protect
          (progn
!           (quail-hide-guidance)
            (quail-delete-overlays)
            (setq describe-current-input-method-function nil))
        (kill-local-variable 'input-method-function))
***************
*** 155,162 ****
  
  Input as Unicode: U<hex> or u<hex>, where <hex> is a four-digit hex 
number.")))
  
! (register-input-method "ucs" "UTF-8" 'ucs-input-activate "U+"
!                      "Unicode input as hex in the form Uxxxx.")
  
  (provide 'uni-input)
  
--- 155,163 ----
  
  Input as Unicode: U<hex> or u<hex>, where <hex> is a four-digit hex 
number.")))
  
! ;; The file ../leim-ext.el contains the following call.
! ;; (register-input-method "ucs" "UTF-8" 'ucs-input-activate "U+"
! ;;                   "Unicode input as hex in the form Uxxxx.")
  
  (provide 'uni-input)
  




reply via email to

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