G-HAL's Anthyを使う

某巨大掲示板Gentoo のスレを見ていたら気になるレスを見つけたので試してみました。

396 login:Penguin [sage] 2010/01/05(火) 22:05:54 id:GfR37q7E Be:
    anthyのおバカさに我慢ならず、とりあえずkasumiをちゃんと動かしてみたら賢くなった
    なんでkasumiが学習能力に関係するのか納得いかないけど、ま、いいか
    (.anthy/private_words_defaultには手動で追加した単語しか登録されない)
    せっかくkasumiを動かしたので使えそうなユーザー辞書が落ちてないか物色中 

397 login:Penguin [sage] 2010/01/05(火) 22:12:46 id:rsh9JjHK Be:
    Modified AnthyかG-HALさんとこのパッチ当てたら結構違うよ
    こういうときGentooはソースベースだから簡単でいいよね
    ttp://www.geocities.jp/ep3797/anthy_dict_01.html
    ttp://www.fenix.ne.jp/~G-HAL/soft/nosettle/#anthy 

402 login:Penguin [sage] 2010/01/06(水) 01:03:22 ID:6ju788zY Be:
    > ttp://www.geocities.jp/ep3797/anthy_dict_01.html
    > ttp://www.fenix.ne.jp/~G-HAL/soft/nosettle/#anthy

    ebuildよろ 

405 login:Penguin [sage] 2010/01/06(水) 22:17:23 id:noR67omz Be:
    >>402>>404
    anthy-9100h-20091228ut.tar.bz2 用のanthy-9100h_p091228.ebuildアップしたから良かったら使ってみて。
    Gentoo初心者向けに野良ebuildの使い方も一緒に入れておいたからたぶん誰でも使えると思うし。
    http://usamimi.info/~linux/d/up/up0463.zip
http://pc11.2ch.net/test/read.cgi/linux/1255956757/


てことで上にあるやつをダウンロードしてきて中身を見てみる。 ebuild スクリプトと解説書つきでやさしい。:-)


しかし当時のバージョン 20091228 のファイルは既に存在せず、残念ながらそのままではソースが落ちてこなかったので、現在の stable バージョンにあわせて少し直して使ってみることにしました。

導入手順

手順を書いておきます。

1.スレに上がっている up0463.zip を落としてくる

とりあえずダウンロードしてきます。今回は ~/src にダウンロードするものとします。

2.落としてきたファイルを解凍する

落としてきたファイルを解凍します。解凍すると anthy-9100h_p091228.ebuild と README が入っています。

$ cd ~/src
$ unzip up0463.zip


README をよく読んでおきます。

3.現在ダウンロード可能なソースのバージョンを確認する

http://www.geocities.jp/ep3797/anthy_dict_01.html に行って現在配布されているバージョンを確認します。今回の安定版は anthy-9100h-20100131ut.tar.bz2 でした。

4.README にしたがってファイルを配置する。

配置する場所 (ローカルオーバーレイのディレクトリ) は任意ですが、今回は README にならいます。

$ mkdir -p /usr/local/portage/app-i18n/anthy/files
$ cd /usr/local/portage/app-i18n/anthy
$ cp ~/src/README ./
$ cp ~/src/anthy-9100h_p091228.ebuild ./
$ cp /usr/portage/app-i18n/anthy/files/50anthy-gentoo.el files/

README の 3 と 4 にあたる作業です。

ちょっとメモ
私は作業用のユーザを portage グループに加えて作業しています。さらに /usr/local/portage 以下のディレクトリには portage グループに書き込み権限を設定しています。これにより、ローカルオーバーレイのメンテナンスだけなら portage グループ所属のユーザであれば可能となります。
これだとちょっとしたミスでローカルオーバーレイは簡単に壊れてしまいますが、root 権限で作業する場合よりもシステムそのものへの影響は少なくて済みます。
5.現在ダウンロード可能なソースのバージョンに ebuild のバージョンをあわせる

anthy-9100h_p091228.ebuild を公開されている anthy-9100h-20100131ut.tar.bz2 のバージョンにあわせます。

$ mv anthy-9100h_p091228.ebuild anthy-9100h_p100131.ebuild
6.公開されているソースファイルを持ってくる

ソースをダウンロードしてきて /usr/portage/distfiles に置きます。 README の5番の作業です。

$ wget http://downloads.sourceforge.net/project/mdk-ut/30-source/source/anthy-9100h-20100131ut.tar.bz2
$ mv anthy-9100h-20100131ut.tar.bz2 /usr/portage/distfiles/

wget で手打ちしてますが、もちろんブラウザでダウンロードしても問題ないです。

7.ebuild をちょっとなおす

6の作業をした場合は必要ないですし、必須でもないですけど。個人的な趣向で ebuild 内の SRC_URI の下にでも RESTRICT="nomirror" の一文を追加します。 Gentoo の公式ミラー (/etc/make.conf 内で定義したやつ) からソースファイルをとってこようとするのを止めるという意味です。

8.Manifest を更新する

README の6の作業です。

$ ebuild anthy-9100h_p100131.ebuild digest
9.インストールする

README の7の作業です。ふつーに emerge します。

$ sudo PORTDIR_OVERLAY="/usr/local/portage" emerge -av =anthy-anthy-9100h_p100131

~amd64/~x86 でキーワードマスクされているので、外す必要がありますが、 README に書いてあるのでわかるでしょう。

uim もいじる

uim-fep で使ってみましたが…実は最初うまく変換できませんでしたw こうありますね。

辞書のエンコーディングをUTF8に変更しました。
uim では --without-anthy --with-anthy-utf8 でコンパイルしてください。scim-anthy では 1.2.7 以降はUTF8がデフォルトになっています。「1」を変換したときに「?」の候補が出れば成功です。
http://www.geocities.jp/ep3797/anthy_dict_01.html


どうも辞書が UTF-8 になってるのがまずい模様。てことで uimUTF-8 版に直してみます。端折ります。

手順

これを書いている段階での uimamd64 の安定版は uim-1.5.7 でした。これをローカルオーバーレイにコピーしてきます。

$ mkdir -p /usr/local/portage/app-i18n/uim/files
$ cd /usr/local/portage/app-i18n/uim/
$ cp /usr/portage/app-i18n/uim/uim-1.5.7.ebuild ./
$ cp /usr/portage/app-i18n/uim/files/* ./files


uim-1.5.7.ebuild を開いて configure している部分をこんな感じにいじってみます。

−-- /usr/portage/app-i18n/uim/uim-1.5.7.ebuild  2010-03-31 11:36:03.000000000 +0900
+++ /usr/local/portage/app-i18n/uim/uim-1.5.7.ebuild   2010-04-01 17:07:19.000000000 +0900
@@ -109,7 +109,7 @@

        if use anthy ; then
                if use unicode ; then
−                       myconf="${myconf} --with-anthy-utf8"
+                       myconf="${myconf} --with-anthy-utf8 --without-anthy"
                else
                        myconf="${myconf} --with-anthy"
                fi


あとは ebuild digest して emerge します。

使用感

まぁ以前とはだいぶ違って快適です。若干キーバインド変わったかなぁ…まぁあとでみてみます。


「とあるまじゅつのいんでっくす」とか「ういはるかざり」とか、その他比較的あたらし目なおたく関係の単語は結構一発で変換出来るのがちょっと笑えます。レールガンも一発。ぐーぐる IME に張りあうつもりなのか。

 $ とあるかがくのれーるがん
1:とある科学の超電磁砲 2:とあるかがくのれーるがん 3:トアルカガクノレールガン [2/3]
anthy-utf8[ AあR]


ちなみに、さすがに婚后光子は登録されてなかったw