Canna + YC を Windows で使う


Canna + YC とは、パソコンで使用できる日本語入力システムのひとつです。 かな漢字変換エンジン かんな と クライアントの YC を組み合わせたものです。


日本語をローマ字入力するとき、私にはこれが一番快適でした。 ただしテキストエディタ Emacs の上でしか動きません。

長所


日本語打つときに IME をオン/オフする必要がないんです! 「いま日本語モードなのか英語モードなのか」を気にする必要がないのがすごい楽ですよ。


PC 関連などの文章では日本語の文章のなかにもアルファペットが頻繁に出てきますが、そういうとき便利です。


常に半角英数モードのままでよくて、 英字はそのまま入力します。 日本語も下記のようにローマ字のままバリバリ入力します。(べつにこんな長文をいっぺんに変換しなくても、こまめに変換できます)

kyoudainomawarinihayoikissatengatakusannarunode,jikanwotsubusunonihakomarimasen.

(「京大の回りには良い喫茶店がたくさんあるので、時間を潰すのには困りません。」 quoted from http://d.hatena.ne.jp/yoriyuki/20040721 )



入力後、最後の文字のうしろにカーソル置いて Ctrl+j すると漢字変換モードに入ります。
誤変換を確定してしまったときも、テキストエディタで Undo (Emacs の場合は Ctrl+/ とか Ctrl+_ とか Ctrl+x Ctrl+u) するだけで、変換前のローマ字に戻ります。


この入力方式のすばらしさに関しては以下も参照。

短所

ローマ字入力まちがえたときは、いったん漢字変換をキャンセル (Ctrl+g) して、アルファベット文字列をながめて解釈して、 「あっ、n が一個足りない」とか修正する必要があります。
← これに違和感を感じてしまい、今は Canna + YC 使ってないです。


インストール方法

(2004-07-16 のものです)


動作確認環境

  • Windows2000 Professional
  • Meadow 2.0 (≒ Emacs21.1)
  • Cygwin はインストールしてもいいが、インストールしなくても下記の方法で動くはず。


まず Windowscanna 3.7p1 バイナリを http://www.on.ics.keio.ac.jp/%7Emaru/cygwin-xfree-jp-supplement/canna.tgz を取得する。C:\cygwin 以下に展開する。


ただしこれを実行するには新しい 2004/4 頃以降の Cygwin DLL が必要。

cygwin1.dll -- 1.5.10-3(2004/07/16 現在の最新)

だと動いた。 http://www.cygwin.com/ から setup.exe をダウンロードして実行して download only 指定してファイル取得。 cygwin..tgz を展開して、含まれている cygwin1.dll を cannaserver.exe と同じディレクトリに置く。


これを簡単起動するために以下の bat ファイルを書く。 canna.bat などの名前で、これも cannaserver.exe と同じディレクトリ (たとえば C:\cygwin\usr\local\canna\sbin\ )に置く。

rm -rf C:\cygwin\tmp.iroha_unix
mkdir C:\cygwin\var\log
rm -rf C:\cygwin\var\log\CANNA*
cd C:\cygwin\usr\local\canna\sbin
cannaserver -inet


こいつをダブルクリックでcannaserver 起動できる。エラーなく起動できることを確認したあとは [スタートアップ] フォルダに入れておけば PC 起動時に自動起動する。


cannaserver をストップするには、Windows のタスクバーを右クリックして [タスクマネージャ] でプロセスを終了させればよい。でもいったん問題なく動くようになれば、サーバとめる必要はないと思う。


このあと YC 4.0.13 http://www.ceres.dti.ne.jp/~knak/yc.html をインストール (C:\home\local\yc\yc.el 用意するだけ) して ~/.emacs に以下のように書けばとりあえず使える。 このとき HOME=C:\home です。 yc-server-host の行は書かないとなぜかエラーになるんだよなぁ。

;; YC
(setq load-path (cons (expand-file-name "~/local/yc") load-path))
(setq yc-canna-lib-path "~/../usr/local/canna/share/canna")
(setq yc-canna-dic-path "~/../usr/local/canna/share/canna/dic")
(setq yc-server-host "localhost")
(setq yc-use-color t)
(load "yc")
(global-yc-mode 1)
(setq yc-use-fence (not (eq window-system 'x)))
(setq yc-enable-hankaku nil)
(setq yc-stop-chars "(){}<>\'#:;")


あとは辞書の入れ換えをする。これをしないと泣けるくらいヘボイ変換結果になるからです。 http://cannadic.oucrc.org/ で cannadic0.95b を取得する。 コマンドプロンプト

crxdic -m -o gcanna.cbd gcanna.ctd
crfreq -div 512 gcanna.cbd gcanna.mwd

と手で入力。(実行ファイル crfreq, crxdic は cygwin1.dll 共々カレントディレクトリにコピーしてくる) gcanna.c[lb]d, gcannaf.ctd を README どおりにコピーして dics.dir を書き換える。


C:\home\.canna を書き換える。

  (use-dictionary
  ; "iroha"
   "fuzokugo"
+  "gcanna"
+  "gcannaf"
   "hojomwd"
   "hojoswd"
   :bushu "bushu"
   :user "user"
   )

で快適なのだが、「,」「.」が句点と読点にならない。 なぜ?
http://www.on.ics.keio.ac.jp/%7Emaru/cygwin-xfree-jp-supplement/binaries/startup.tgz に入っている .canna はその設定になってる。 修正すればよい。


関連: