Hiroyuki Komatsu
komat****@taiya*****
2004年 1月 15日 (木) 04:53:31 JST
小松です。 At Wed, 14 Jan 2004 19:34:50 +0900 (JST), Hidetaka Iwai wrote: > > これは、init-prime.el 内の > > > > (global-set-key @PRIMEEL_KEYBINDING@ 'prime-mode) > > > > を > > > > (register-input-method "japanese-prime" "Japanese" > > 'prime-mode "[PRIME]" > > "PRIME: Japanese PRedictive IME") > > > > に変えればよい、ということですかね。Debian 以外の環境でもこちらの方が > > よいようならば、こちらを標準にします。 > > 手元で実験してみたのですが、どこかで > inactivate-current-input-method-function を設定しないと駄目な気がしま > す。とりあえず、ddskkのskk-leim.elからコードをぱちってdiffを作成したの > で、添付します。 どうもありがとうございます。 inactivate-current-input-method-function 変数の設定は、prime-mode から 実行される prime-mode-on でやってしまおうかと思います。 また、添付していただいたコードにはミニバッファまわりの記述がありましたが、 これは leim を使用するために必要なものでしょうか。ミニバッファへの 考慮はすでにしているはずなので、特に必要ないかなと考えています。 # よく分かってなくてすみません。 prime.el 内の prime-mode-on を以下のように書き換えました。 これだけで大丈夫なのではと思います。 prime.el:61 (defun prime-mode-on (&optional forcep) (if (or forcep (not prime-mode)) (progn ;; ここ (setq inactivate-current-input-method-function 'prime-mode) ;; (or (markerp prime-marker) (setq prime-marker (make-marker))) (prime-server-open) (setq prime-mode t) (prime-toggle-mode-line) (prime-reset-before-input) (prime-fund-mode-on) (and prime-style-kutouten-autochange-p (prime-style-kutouten-set-automatically)) ))) > ; init-prime.el/emacsen-startupに初期化回りのコードを放りこむよりは > ; prime-leim.elを別途作ってその中に入れたほうが幸せ度があがりそう? 話がずれますが、etc/init-prime.el を debian/emacsen-startup として 使用することは可能でしょうか? configure の --with-prime-el-initdir と --with-prime-el-initfile でインストール先とファイル名の制御は可能です。 これではお行儀が悪いようでしたら、現状通りということで。 -- 小松弘幸 ----------------------- http://taiyaki.org/ > > -- > Hidetaka Iwai > tyuyu****@sings***** > [2 prime-leim.diff <text/plain; iso-2022-jp (7bit)>] > diff -urN prime-el-1.2.1.orig/debian/emacsen-startup.in prime-el-1.2.1/debian/emacsen-startup.in > --- prime-el-1.2.1.orig/debian/emacsen-startup.in 2004-01-14 19:21:40.000000000 +0900 > +++ prime-el-1.2.1/debian/emacsen-startup.in 2004-01-14 19:24:34.000000000 +0900 > @@ -21,9 +21,27 @@ > > (autoload 'prime-mode "prime" "Toggle PRIME mode. > PRIME is a Japanese Predictive Input Method Editor." t) > -(global-set-key "\C-\\" 'prime-mode) > + > +(defun prime-activate (&optional name) > + (setq inactivate-current-input-method-function 'prime-inactivate) > + (prime-mode) > + (when (eq (selected-window) (minibuffer-window)) > + (add-hook 'minibuffer-exit-hook > + 'prime-leim-exit-from-minibuffer))) > + > +(defun prime-inactivate () > + (prime-mode)) > + > +(defun prime-leim-exit-from-minibuffer () > + (inactivate-input-method) > + (when (<= (minibuffer-depth) 1) > + (remove-hook 'minibuffer-exit-hook 'prime-leim-exit-from-minibuffer))) > + > +(register-input-method "japanese-prime" "Japanese" > + 'prime-activate "" > + "PRIME: Japanese PRedictive IME") > > ;;;; Text properties for Emacs. > ; Local variables: > ; mode: emacs-lisp > -; End: > \ ファイル末尾に改行がありません > +; End: > diff -urN prime-el-1.2.1.orig/etc/init-prime.el prime-el-1.2.1/etc/init-prime.el > --- prime-el-1.2.1.orig/etc/init-prime.el 2004-01-14 19:21:40.000000000 +0900 > +++ prime-el-1.2.1/etc/init-prime.el 2004-01-14 19:24:14.000000000 +0900 > @@ -20,7 +20,25 @@ > > (autoload 'prime-mode "prime" "Toggle PRIME mode. > PRIME is a Japanese Predictive Input Method Editor." t) > -(global-set-key "\C-\\" 'prime-mode) > + > +(defun prime-activate (&optional name) > + (setq inactivate-current-input-method-function 'prime-inactivate) > + (prime-mode) > + (when (eq (selected-window) (minibuffer-window)) > + (add-hook 'minibuffer-exit-hook > + 'prime-leim-exit-from-minibuffer))) > + > +(defun prime-inactivate () > + (prime-mode)) > + > +(defun prime-leim-exit-from-minibuffer () > + (inactivate-input-method) > + (when (<= (minibuffer-depth) 1) > + (remove-hook 'minibuffer-exit-hook 'prime-leim-exit-from-minibuffer))) > + > +(register-input-method "japanese-prime" "Japanese" > + 'prime-activate "" > + "PRIME: Japanese PRedictive IME") > > (provide 'init-prime) > ;;;; Text properties for Emacs. > [3 <text/plain; iso-2022-jp (7bit)>] > _______________________________________________ > Prime-dev mailing list > Prime****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/prime-dev