SKK とは Emacs 上で動作する日本語入力システムです。
普通の日本語入力システムは連文節変換を用います。 ある程度文章を入力してから変換を行なうと、 文法的な解析を行って文節区切りを行ない、 文節毎に漢字変換していきます。
この解析の精度が高ければ全く問題ないのですが、 そこいらにある入力システムではそのレベルまで達していないようです。 部分的な字面だけで完全な解析を行なうのは無理がありますし、 標準語ベース(しかも結構固めの文体)の解析を行なうので、 くだけた言い回しとか、方言とかを入力すると誤変換の嵐でやってられなくなります。
SKK では文法的な解析を行ないません。 入力の際に、 変換したい場所の先頭位置と終了位置をユーザが指定することによって変換します。 「えっ、何でそんなこと自分で指定せなあかんの?そんなの時代錯誤やん」 と考える人も多いと思います。
ところが、これが実際にやってみると、慣れるまで戸惑うこともありますが、 慣れれば非常に快適です。 IME 等で文節区切りを変更したりする方が余程手間がかかります (文節区切りを変更するときに、 間違って確定してしまい「あ゛〜」なんて思いをすることって結構ありますよね?)。 SKK では入力していく端から確定していくので、 スムーズに入力できるようになること請合いです。
確かに入力方法に独特な部分はありますし、それで躊躇することもあると思います (私もそうでした)。でも試してみる価値は十分あると思います。
ダウンロードする必要があるのは以下の 3 点です。
Meadow 1.14 より前のバージョンでは、APEL はインストール済みですので、 SKK および SKK 辞書のインストールのみ OK です。 Meadow 1.14 の場合には、 Meadow 用のバイトコンパイル済み APEL が配布されてますので、 それを利用することができます。
まず、「APEL って何?」と思った人のために APEL について簡単に説明します。 APEL は "A Portable Emacs Library" の略で、 バージョンの異なる Emacs 間での移植性を高めるモジュールです。 SKK はこの APEL を用いているので、予めインストールしておく必要がある訳です。
現在の最新バージョンは daredevil SKK 11.6.0 です。 また、開発版は頻繁に tarball がアップロードされているようです (中身が新しくなっているかどうかは分かりませんが)。 最先端は http://openlab.ring.gr.jp/skk/cvs-ja.html を参照すれば CVS で取得することができるでしょう。 なお、本家 SKK は 10.62a で開発が停止しています。
また、SKK は本体と辞書を別々ダウンロードする必要があります。 更新のタイミングがそれぞれ異なるので、別々にリリースしているらしいです。
APEL のインストールについては、 別ページに書いてあるのでそれを参考にして下さい。
make.bat を以下のように変更します。
%PREFIX% の部分は、
set PREFIX=... の行で指定したパスに置換されます。
rem --- 安全のためデフォルトの値はすべて空文字列になっています。お使い rem --- のシステムにあわせてこれらの変数を指定してください。(To take a rem --- safe side, default values are all set to null strings. Please rem --- specify these variables accordingly for your system.) rem --- なお、DEFAULT_MAKE_ARG に可能な値は make1.bat を御覧ください。 rem --- (Please see make1.bat for possible values of DEFAULT_MAKE_ARG.) set PREFIX=d:\usr\local\Meadow(↑ Meadow をインストールしたディレクトリ)set EMACS=%PREFIX%\1.14\bin\meadowNT.exe(↑ NT 系列(NT 4.0/2000/XP)の場合。 9xの場合は meadow95.exe のままで良い)set LISPDIR=%PREFIX%\site-lispset VERSION_SPECIFIC_LISPDIR=%PREFIX%\1.14\site-lispset INFODIR=%PREFIX%\1.14\infoset DEFAULT_MAKE_ARG=(↑ここは必ずしも設定する必要はありません。後で説明します)
修正してみたら makeit.bat を実行してみましょう。 正常に実行されれば以下のような表示がなされるはずです。 makeit.bat で修正した内容が黄色で示した部分に反映されているはずです (実際に実行したときには色は付きません。念のため)。 パスの設定が正しいのを確認したら次に進みましょう。
D:\home\gonbe\ddskk-11.6.0%gt;makeit.bat ---- INFORMATIVE: No pre-configured batch (e.g. ~/.elispmk.bat INVORMATIVE: or ~/.elispmk.skk.bat) found. INFORMATIVE: You may create one for your convenience. INFORMATIVE: See comments in makeit.bat. ---- ---- Executing make1.bat in the current directory using the folloiwing env. HOME=d:\home\gonbePREFIX=d:\usr\local\MeadowEMACS=d:\usr\local\Meadow\1.14\bin\meadowNT.exeEXEC_PREFIX= LISPDIR=d:\usr\local\Meadow\site-lispINFODIR=d:\usr\local\Meadow\1.14\infoVERSION_SPECIFIC_LISPDIR=d:\usr\local\Meadow\1.14\site-lisp---- Executing .\make1.bat with argument= Unrecognized argument: specify either 'elc', 'all', 'install', 'clean' or 'what-where'. Type any key when you're done reading the error message. 続行するには何かキーを押してください . . .D:\home\gonbe\ddskk-11.6.0%gt;
makeit.bat の設定が済んだらインストールと行きたいのですが、その前にダ
ウンロードしてきた辞書を展開したものを ddskk パッケージの
dic ディレクトリにコピーしておきます。dic の
下に辞書が存在するとインストールの時に辞書もインストールしてくれます。
D:\home\gonbe\ddskk-11.6.0>copy D:\home\gonbe\SKK-JISYO.L dic
次にコンパイルを行ないます。"makeit.bat elc" と引数
elc を追加して実行して下さい。
D:\home\gonbe\ddskk-11.6.0>makeit.bat elc Executing make1.bat in the current directory using the folloiwing env. HOME=d:\home\gonbe PREFIX=d:\usr\local\Meadow EMACS=d:\usr\local\Meadow\1.14\bin\meadowNT.exe EXEC_PREFIX= LISPDIR=d:\usr\local\Meadow\site-lisp INFODIR=d:\usr\local\Meadow\1.14\info VERSION_SPECIFIC_LISPDIR=d:\usr\local\Meadow\1.14\site-lisp ---- Executing .\make1.bat with argument=elc Loading d:/home/gonbe/ddskk-11.6.0/SKK-CFG... No need to update d:/home/gonbe/ddskk-11.6.0/skk-dic.el Generating autoloads for skk-cus.el... Generating autoloads for skk-cus.el...done Generating autoloads for skk-cursor.el...(長いので省略)Wrote d:/home/gonbe/ddskk-11.6.0/skk-tut.elc Wrote d:/home/gonbe/ddskk-11.6.0/skk-vars.elc Wrote d:/home/gonbe/ddskk-11.6.0/skk-version.elc While compiling the end of the data in file d:/home/gonbe/ddskk-11.6. 0/skk.el: ** the function skk-jisx0213-henkan-list-filter is not known to be defined. Wrote d:/home/gonbe/ddskk-11.6.0/skk.elcD:\home\gonbe\ddskk-11.6.0>
コンパイルが完了すれば次はインストールです。
ですが、その前に "makeit.bat what-where" と入力すると、
何が何処にインストールされるかを確認することができます。
D:\home\gonbe\ddskk-11.6.0>makeit.bat what-where ----(省略)---- Executing .\make1.bat with argument=what-where Loading d:/home/gonbe/ddskk-11.6.0/SKK-CFG... SKK modules: skk-cus, skk-cursor, skk-viper, skk-lookup, skk-leim, ccc, queue-m, skk-abbrev , skk-annotation, skk-auto, skk-autoloads, skk-comp, skk-dcomp, skk-develop, skk -dic, skk-gadget, skk-isearch, skk-jisx0201, skk-jisyo-edit-mode, skk-kakasi, sk k-kcode, skk-look, skk-macs, skk-num, skk-obsolete, skk-server, skk-tut, skk-var s, skk-version, skk -> d:/usr/local/Meadow/1.14/site-lisp/skk SKK infos: skk.info -> d:/usr/local/Meadow/info SKK tutorials: SKK.tut, SKK.tut.E, NICOLA-SKK.tut -> d:/usr/local/Meadow/share/skkD:\home\gonbe\ddskk-11.6.0>
何処にインストールされるかを確認したら、いよいよインストールの実行です。
"makeit.bat install" とインストールが実行されます。
SKK 本体、辞書(dic ディレクトリのコピーを実行していた場合)、info ファイル、
チュートリアル等がインストールされます。
なお、DOS プロンプトで実行した場合、 途中文字化けのようなのものが表示されますが、バグではありません。
D:\home\gonbe\ddskk-11.6.0>makeit.bat install(長いので省略。途中から文字化けするがバグっている訳ではない)Tagifying skk.info ... Tagifying skk.info ... Splitting Info file... Wrote d:/home/gonbe/ddskk-11.6.0/doc/skk.info-1 Wrote d:/home/gonbe/ddskk-11.6.0/doc/skk.info-2 Wrote d:/home/gonbe/ddskk-11.6.0/doc/skk.info-3 Wrote d:/home/gonbe/ddskk-11.6.0/doc/skk.info-4 Splitting Info file...done. Wrote d:/home/gonbe/ddskk-11.6.0/doc/skk.info skk.info -> d:/usr/local/Meadow/info skk.info-1 -> d:/usr/local/Meadow/info skk.info-2 -> d:/usr/local/Meadow/info skk.info-3 -> d:/usr/local/Meadow/info skk.info-4 -> d:/usr/local/Meadow/info Wrote d:/usr/local/Meadow/info/dirD:\home\gonbe\ddskk-11.6.0>
これでインストールが完了しました。
Emacs で何かをインストールすると、
.emacs を編集するのがお約束です。
ところが、SKK については特に .emacs
で指定しなくても基本設定がなされるようになっています。
ただし、Emacs 20 以上であることが条件なので、
Emacs 19 を利用する場合には、以下の指定が必要です。
.emacs に追加して下さい。
;; SKK のセットアップ (require 'skk-setup)
使い方についていろいろ書こうかとも思ったのですが、 チュートリアルの出来が結構良いのでわざわざ書く必要もないかなと思っています。
まずは、チュートリアルで実際に体験してみるのが良いでしょう。
M-x skk-tutorial でチュートリアルが起動します。
チュートリアルで出題される問題をクリアしていくうちに、
操作の概要が理解できるようになっています。
ある程度操作ができるようになっても、 たまにはチュートリアルを実行してみるのも良いかもしれません。 最初の頃に覚えきれなかった便利な機能に気が付くことでしょう。
デフォルト設定では、SKK の起動は C-x C-j にバインドされています。
デフォルト設定では、SKK の終了も C-x C-j にバインドされています。