vim6.0 Canna + SKK + POBox パッチ
まっつん<mattn@mail.goo.ne.jp>
□はじめに
vim は、 Bram Moolenaar 氏による vi クローンです。
オリジナルは多バイト文字に対応しましたが、文字入力においては XIM やシェルラッ
パを使用しないと入力できません。よって本パッチにて内部に入力メソッドを組み込
みます。なお、本パッチにより生じた障害等は保証しかねます。
□ないよう
本パッチにより以下の機能が働きます。
○Canna を使用した漢字入力
環境変数 CANNAHOST で指定したホストを Canna サーバとして使用し、漢字入力を
行います。
○SKK を使用した漢字入力
ホームディレクトリ下の .skk-jisyo 、もしくはサーバを使用し、漢字入力を行
います。
○POBox を使用した漢字入力
POBox サーバを使用し、漢字入力を行います。
□つくりかた
オフィシャルからソースファイルし、以下のように実行します。
--- im_custom060 以前 ---
# cd vim61
# zcat im_custom???.diff.gz | patch -p0
# make
このパッチは既に configure されたソース上から当てます。
--- im_custom061 以降 ---
# cd vim61
# zcat im_custom???.diff.gz | patch -p0
# ./configure \
--prefix=/usr \
--enable-multibyte \
--enable-canna \
--enable-skk \
--enable-pobox
関連するのは --enable-canna, --enable-skk, --enable-pobox です。
必要に応じてオプションを変更してください。
※ファイル名には、お持ちのパッチのファイル名を使用してください。
※本パッチは Windows でも動作します。
本パッチでは Microsoft Visual C++ 用と UNIX 用の Makefile が用意されて
います。
その他の環境でコンパイルされたい方は以下の作業を行ってください。
コンパイルオプションに -DFEAT_IM_CUSTOM とご使用になるインプットメソッド
にあわせて・・・
-DFEAT_CANNA
-DFEAT_SKK
-DFEAT_POBOX
を付加してください。
次にコンパイルされるソース一覧に、必要となるソース canna.c, skk.c, pobox.c
を付加してください。またプロトタイプ一覧についても canna.pro, skk.pro,
skk.pro を付加してください。
最後に Canna をご使用の場合に限ってライブラリに Canna のライブラリを付加して
ください。
□つかいかた
○Canna を使用した漢字入力
vim から
:set imoptions=canna
と入力し、 <C-\> を押下します。
入力方法は下記リンクを参照
Canna では以下の付加オプションが設定可能です。
・serv : 辞書サーバ
set imoptions=canna,serv:localhost
○SKK を使用した漢字入力
vimから
:set imoptions=skk
と入力し、 インサートモードにて <C-J> を押下します。
入力方法は下記リンクを参照
SKK では以下の付加オプションが設定可能です。
・dict : 辞書ファイル
set imoptions=skk,dict:~/.skk-jisyo
・serv : 辞書サーバ
set imoptions=skk,serv:localhost
○POBox を使用した漢字入力
vimから
:set imoptions=pobox
と入力し、 <C-\> を押下します。
入力方法は下記リンクを参照
POBox では以下の付加オプションが設定可能です。
・serv : 辞書サーバ
set imoptions=pobox,serv:localhost
・port : 辞書サーバポート
set imoptions=pobox,serv:localhost,port:1178
・key : 変換開始キー
set imoptions=pobox,serv:localhost,key:28
□りれき
2003/10/30 : readme.txt 修正
skk のトリガキーが C-\ となっていたので修正。
2003/07/14 : 064リリース
--without-x --disable-gui でビルドできない問題を修正。
2003/06/30 : 063リリース
とりあえず 6.2.014 に対応。
2003/03/31 : 062リリース
とりあえず 6.1.423 に対応。
2002/11/01 : 061リリース
configure のパッチが付きました。
SKK にて...
ユーザ辞書がない場合、終了時に落ちる問題を修正。
win32 の警告削除。
サーバが複数起動してしまう問題を修正
2002/10/30 : 060リリース
SKK にて...
一度ユーザ辞書で見つかると以後、サーバへ問い合わせない
問題を修正。
2002/10/30 : 059リリース
has("im_custom") に対応。
ビルドオプションにより
has("im_custom/canna")
has("im_custom/skk")
has("im_custom/pobox")
が取得可能になった。
SKK にて...
[かな]、[カナ]、[全英]の時にスペース挿入と記号の入力が
がおかしかったのを修正。
[かな]の時に q を押下した後でモード表示が更新されて
いなかったのを修正。
2002/10/29 : 058リリース
ui.c に xic の既述があった為、 --disable-xim でコンパイル
出来なくなっていたのを修正。
2002/10/11 : 057リリース
SKK にて...
送り仮名の処理で SEGV するバグを修正。その2
だんだん quickhack のしわよせが現れ始める。(^_^;)
2002/10/10 : 056リリース
SKK にて...
送り仮名の処理で SEGV するバグを修正。
2002/10/10 : 055リリース
SKK にて...
ローマ字エントリ、バックスペース時の処理等を修正。
2002/10/10 : 054リリース
Canna にて
ESCを押してから、再び入力モードに入った場合、
alpha-mode に戻ってしまう、という不具合を修正。
2002/10/03 の skk.c を取り入れ。
2002/10/03 : skk.c を一時的にリリース
候補が空の時、Ctrl_G を vim に流すよう修正。
Win32 にて動作がおかしかったのを修正。
2002/09/06 : 053リリース
SKK にて...
「関して」が入力出来ない問題を修正。
2002/09/02 : 052リリース
パッチ171用にリメイク。
SKK にて...
全角アルファベット入力で「,.」が入力できるよう修正。
2002/08/30 : 051リリース
SKK にて...
portを指定できるよう変更。
2002/07/24 : 050リリース
showmode, getchar に関してAIDAさんのロジックを頂く。
Canna にて...
AIDAさんのロジックを頂く。
screen.c のパッチマージによりリメイク。
2002/06/24 : 049リリース
SKK にて...
全角英数モードで記号が入力出来るよう修正。
2002/06/14 : 048リリース
SKK にて...
細かなバグ修正。
2002/06/14 : 047リリース
Canna にて...
just.canna や skk.canna では自らモードが作れてしまうため、
ESC にて挿入モードを抜けてしまうと問題があった。
SKK にて...
挿入モードを SKK の半角英数モードで実装するよう変更。
「じゃ」のテーブルが無かった
「はいった」とか「なかった」が入力出来なかったのを修正。
※ SKK の挿入モードについて考え直す必要がある。
2002/06/14 : 046リリース
SKK にて...
バックスペースで遲り仮名を消し忘れ。
2002/06/14 : 045リリース
SKK の変換ロジック全面見直し。
2002/06/14 : 044リリース
SKK にて...
デバッグプリントが残っていたのを修正。
「NokoTteita」が「残っていた」に変換出来ないのを修正。
※だいぶ SKK の動きに近くなってきた。
2002/06/13 : 043リリース
バックスペースの動きがおかしかったのを修正。
その他、全体的に修正。
2002/06/13 : 042リリース
SKK にて...
辞書を遅延ロードするよう変更。
2002/06/12 : 041リリース
SKK にて...
登録後の最初の1もじが有効にならないバグを修正。
2002/06/12 : 040リリース
039のフィックス
SKK にて...
「fafifufefo」で「ふぁふぃふふぇふぉ」となるよう変更。
2002/06/12 : 039リリース
SKK にて...
変換中の Ctrl-G で候補/仮入力/消去となるよう変更。
変換中の x で候補を逆送りするよう変更。
2002/06/11 : 038リリース
SKK にて...
Ctrl-G で仮入力をキャンセル出来るように修正。
「っ」の処理を全面的に見直し。
「送る言葉」を「▽Okuru Kotoba」でも出せるように変更。
2002/04/23 : 037リリース
SKK にて...
「送る言葉」を「▽OkuRuKotoba」で出せるように変更。
2002/04/23 : 036リリース
SKK にて...
emacsの動作を若干まねる。
2002/04/22 : 035リリース
SKK にて...
wskkserv(Win32)ではリザルトコードが4の場合、続く改行も返さ
ないのでハングする問題で、実は 0x00 のみ返す罠を修正。
2002/04/22 : 034リリース
Win32にて登録語の文字化け修正
2002/04/19 : 033リリース
iminsertにて開始しないバグを修正。
でも終了しない...。
2002/04/19 : 032リリース
変換ロジックを大幅見直し。
AIDAさんのロジックを頂く。
これにより"▽OkonaU"等がハングする問題が解決。
2002/04/18 : 031リリース
SKK にて...
wskkserv(Win32)ではリザルトコードが4の場合、続く改行も返さ
ないのでハングする問題を修正。
変換開始キーを追加。
Canna にて...
(setq bunsetu-kugiri nil) が有効にならないので、とりあえず
jrKanjiControl(0, KC_SETBUNSETSUKUGIRI, (char*) &ksv);
の処理をコメントアウト。
set noshowmode の場合、[あ]などモード行が表示されたままなの
を暫定的に修正。
2002/04/17 : 030リリース
T_MEによる回避策はやはりまずい気がしてきたので
AIDAさんにならってscreen.cを修正。
Canna にて...
未入力中にカーソルやバックスペースが効くように修正。
2002/04/17 : 029リリース
変換後のキー入力で候補を確定するようにした。
2002/04/17 : 028リリース
SKK にて...
動作をIMEスタイルに戻す。
登録については中々の動作。
2002/04/16 : 027リリース
SKK にて...
新規追加した単語をさっそくつかうと落ちる問題を修正。
2002/04/16 : 026リリース
AIDA Shinra さんの skk.c をごっそり貰う。
感謝 : AIDA Shinra さん m(_ _)m。
2002/04/16 : 025リリース
良かれと思って入れた no_mapping の処理だったが、
不調なため削除...。
2002/04/16 : 024リリース
SKK にて...
あ行の送り仮名処理がおかしかったのを修正...。
が治っていなかったのを修正。
2002/04/16 : 023リリース
SKK にて...
あ行の送り仮名処理がおかしかったのを修正。
2002/04/16 : 022リリース
ワーニングなどもろもろ修正。
021には tags ファイルが引っ付いてました m(_ _)m。
アナウンス方法を考える必要あり...。
2002/04/12 : 021リリース
SKK にて確定時の候補が消えてしまうバグを修正。
2002/04/11 : 020リリース
Canna,SKK にてモードの位置がおかしいのを修正。
2002/04/11 : 019リリース
SKK にて"あ行"の送り仮名処理がおかしいのを修正。
2002/04/08 : 018リリース
SKK にてバックスペースを1文字削除へ変更。
(1日に3つもリリースしてていいのか?)
2002/04/08 : 017リリース
POBox にて候補選択なしに決定を行うとサーバへ以上な候補(-1)
を送信してしまうバグを修正。
2002/04/08 : 016リリース
015リリースミス...。
2002/04/05 : 015リリース
vim6.1用にリメイク。
SKKの登録時にカーソルが最下部にないのを修正。
2002/02/18 : 014リリース
POBox にてフォーマットが SKK ならば SKK っぽく動作するよう
に修正。
2002/02/18 : 013リリース
Canna で F1 を押下すると落ちるバグ修正。
2002/02/15 : 012リリース
SKK と POBox は同じポートを使用するため、フォーマットの
違いから無限ループに落ち入っていた問題を解決。
POBox の Win32 対応。
2002/02/15 : 履歴を付けだす。
□さんこう
Canna:
http://www.nec.co.jp/canna/
SKK:
http://openlab.ring.gr.jp/skk/index-j.html
POBox:
http://www.csl.sony.co.jp/person/masui/OpenPOBox/
□はいふ
GPL に従います。
vim 本体は
http://www.vim.org/
からダウンロードして下さい。
Debian 等でパッケージを作成する場合、win32 関連のファイルにパッチが当らない
ように本ファイルから削り取って下さい。
□ざんかだい
・SKK にてバックスペースやカーソルによるインライン編集
(登録部はほぼ完了)
・Vine Linux + vim6.1 + im_cunstom + canna で日本語入力すると
確定すると [[[[[[36;111H7 といった具合に文字化するという噂。
□しゃじ
以下の方に謝辞を送ります。
AIDA Shinra さん
canna, skk に関して多くのヒントといただきました。
寺田 学 さん
configure.in をいただきました。
その他 2ch Vim6 Part4,Part5 の皆さん
□こめんと
どなたでも手伝っていただけると非常にありがたいです。
vim:set ts=8 sts=2 sw=2 tw=78 et: