長年連れ添った中野さんを捨ててアンシーに乗り換える
Wnn*1 のデフォルトの辞書がひどい (なにしろ「ほっきょく」がなぜか変換できない。pubdic+-sup を入れてマシになったけど) & GTK+-2 では kinput2 の変換候補一覧がウインドウの左下外に出てしまうので、Anthy + uim を使ってみる。
今のところの設定
.emacs に以下を追加
(push "/usr/local/share/emacs/site-lisp/uim-el" load-path) (require 'uim) (global-set-key "\C-o" 'uim-mode)
追記: この設定では最初だけ Ctrl-o で uim を利用するモードにしてから Ctrl-\ などで Anthy のローマ字入力モードにするという 2 ステップ必要なので面倒。最初から Ctrl-o で Anthy のローマ字入力モードに切り替えるようにする。ついでに空白を半角にする。
(push "/usr/local/share/emacs/site-lisp/anthy" load-path) (load-library "anthy") (global-set-key "\C-o" 'anthy-mode) (setq anthy-wide-space " ")
また、Emacs-20.7.2 がフリーズするので、以下のようなエイリアスを設定
alias emacs 'env XMODIFIERS="@im=none" emacs'
さらに追記: doc/ELISP 読むと、こっちの方が正統派
; Plamo Linux で wnn を使う場合の設定を無効にする。 ; (setq emacs-ime "wnn") (push "/usr/local/share/emacs/site-lisp/anthy" load-path) (load-library "anthy") ; emacsをインストールした先のprefixとanthyをインストールした先のprefixが違う場合 (load-file "/usr/local/share/emacs/site-lisp/anthy/leim-list.el") (setq default-input-method 'japanese-anthy) ; toggle-input-method が何のキーにも割り当てられてない場合は適当に割り当てる (global-set-key "\C-o" 'toggle-input-method) (setq anthy-wide-space " ") ; Tamago を利用した部首変換 (id:yshl:20050926:1127758629) を Tamago なしで無理矢理使う。 (load "busyu") (load-file "/usr/share/emacs/site-lisp/egg/menudiag.el")やっぱり Tamago 経由で Anthy を使うことにする。 CVS と http://www.meadowy.org/~shirai/elips/egg-anthy.tar.gz からソースを入手してコンパイル。 .emacs の追加はこれだけ
(setq default-input-method 'japanese-egg-anthy)キリル文字や単漢字入力が Tamago のものをそのまま使えるし、変換候補の表示が使い慣れたのものなのでいい感じ。
.xinitrc に以下を追加
if [ -x /usr/local/bin/uim-xim ] ; then export GTK_IM_MODULE=uim export QT_IM_MODULE=uim uim-xim & uim-toolbar-gtk & XMODIFIERS="@im=uim" export XMODIFIERS fi
.Xdefaults に以下を追加。XCalendar は Anthy + uim で入力しようとすると Segmentation Fault で死んでしまうので、kinput2 のままにする。
*inputMethod: uim KTerm*openIm: True *XCalendar*inputMethod: kinput2
Anthy のオン、オフに
.uim に以下を書いた。
(require "japanese.scm") ;; "lalilulelo" は "らりるれろ" にして欲しい。 (define ja-rk-rule (append '( ((("l" "a"). ())("ら" "ラ" "")) ((("l" "i"). ())("り" "リ" "")) ((("l" "u"). ())("る" "ル" "")) ((("l" "e"). ())("れ" "レ" "")) ((("l" "o"). ())("ろ" "ロ" "")) ((("z" " "). ())(" " " " " ")) ) ja-rk-rule)) ;; 全角空白 " " はあまり出て来ないで欲しい。 (define ja-space '(" " " " " ")) ;; 全角英数モードには残しといてやるか。 (define ja-alnum-space '(" " " "))
Anthy をインストールするときに
私が使っている或る Linux マッシーン (Plamo 2.2.6 だが glibc 等色々 update していて原型を留めていない。bash は 2.04) の場合、Anthy や Graphviz をコンパイルしようとすると、途中でエラーが起こる。ライブラリをコンパイルするところで
ar cru ファイル名 ファイル名 ... ファイル名 ファイル名
が
ar cru ファイル名 ファイル名 ... ファイル名@ファイル名
のようにファイル名が @ で連結されてしまい、No such file or directory と言われる。
どうやら ./configure すると出来る libtool というシェルスクリプトが、下のようなコードでシステムの文字コードを EBCDIC か ASCII か区別する時に、誤判定されてしまうためのようだ。
# test EBCDIC or ASCII
case `echo A|tr A '\301'` in
A) # EBCDIC based system
SP2NL="tr '\100' '\n'"
NL2SP="tr '\r\n' '\100\100'"
;;
*) # Assume ASCII based system
SP2NL="tr '\040' '\012'"
NL2SP="tr '\015\012' '\040\040'"
;;
esac
とりあえずこの部分を書き換えて無理矢理 ASCII と判定されるようにしてインストールした。後で bash をアップデートしよう。
*1:「私の名前は中野です」の略