update.
[elisp/emacs-canna.git] / canna.el
index 9e89926..8c4e055 100644 (file)
--- a/canna.el
+++ b/canna.el
@@ -7,7 +7,6 @@
 ;; Author: Akira Kon <kon@d1.bs2.mt.nec.co.jp>
 ;;         MORIOKA Tomohiko <morioka@jaist.ac.jp>
 ;;         Stephen Turnbull <turnbull@sk.tsukuba.ac.jp>
-;; Version: $Revision: 1.21 $
 ;; Keywords: Canna, Japanese, input method, mule, multilingual
 
 ;; This file is part of Emacs-Canna.
 ;; (defalias 'self-insert-internal 'self-insert-command)
 ;; end
 
-(defconst canna-version "Emacs-Canna 1.3")
+(defconst canna-version "Emacs-Canna 1.5")
 
 (defun canna-version ()
   "Display version of canna.el in mini-buffer."
   (interactive)
   (message (concat canna-version " ...")))
 
+(defvar canna-self-insert-string-filter nil
+  "*\e$B3NDj;~$K8F$P$l$k%U%#%k%?!<4X?t$r;XDj$9$k$?$a$NJQ?t!#\e(B
+\e$B@_Dj$5$l$k%U%#%k%?!<4X?t$O#10z?t$N4X?t$G!"\e(B
+\e$B$=$N0z?t$K3NDjJ8;zNs$,EO$5$l$k!#\e(B
+\e$B$^$?!"%U%#%k%?!<4X?t$OJ8;zNs$rJV$5$J$1$l$P$J$i$J$$!#\e(B
+\e$B>e5-$N;HMQ$rK~$?$94X?t$NB>!"\e(Bnil \e$B$r;XDj$9$k$3$H$,$G$-!"\e(B
+\e$B$=$N>l9g$OL5JQ49$rI=$9!#\e(B")
+
 (cond
  ((featurep 'xemacs)
-  (defvar canna-self-insert-string-filter (function identity))
   (defun canna-self-insert-string (string)
-    (if (fboundp canna-self-insert-string-filter)
+    (if (functionp canna-self-insert-string-filter)
        (setq string (funcall canna-self-insert-string-filter string)))
     (let ((len (length string))
          (i 0)
        (setq i (1+ i)))))
   )
  (t
-  (defalias 'canna-self-insert-string 'insert)
+  ;; (defalias 'canna-self-insert-string 'insert)
+  (defun canna-self-insert-string (string)
+    (if canna-self-insert-string-filter
+       (setq string (funcall canna-self-insert-string-filter string)))
+    (insert string))
   ))
 
 
@@ -309,6 +319,8 @@ t \e$B$N;~$O%G%U%)%k%H$N?'$r;HMQ$9$k!#\e(B
        (define-key canna-mode-map [(control left)]  "\C-b")
        (define-key canna-mode-map [kanji]           " ")
        (define-key canna-mode-map [(control space)] [(control @)])
+       (define-key canna-mode-map [delete] "\C-?")
+       (define-key canna-mode-map [backspace] "\C-h")
        )
       (t
        (define-key canna-mode-map [up]      [?\C-p])