以下の内容はhttps://hake.hatenablog.com/entry/20050302/p1より取得しました。


IMkit-Anthyの辞書登録 その3

KeyHelperからスクリプトを実行させてIMkit-Anthyの辞書登録をさせてみる。「よみ」と「単語」はクリップボードを使って受け渡しをさせる。
クリップボードと標準入力/標準出力と連携させるqcfをhttp://tbox.jpn.org/linuzau/misc/から入手、インストール。http://digit.que.ne.jp/visit/index.cgi?Linux%a5%b6%a5%a6%a5%eb%a5%b9%2f%a5%c0%a5%a6%a5%f3%a5%ed%a1%bc%a5%c9からperlとsudoを入手、インストール。

シェルスクリプト/home/zaurus/bin/anthy_rec.shを作成、chmod a+xを忘れずに、内容は以下

#!/bin/sh

OUTFILE=/home/zaurus/.anthy/private-dic.src
MEISI=/home/zaurus/.anthy/meisi_rec.src
NAMAE=/home/zaurus/.anthy/namae_rec.src
TIMEI=/home/zaurus/.anthy/timei_rec.src

qcf -w | perl -e '$_ = <>;s/(.+?) (.+)/\1 1 \2/;print $_."\n"' > $OUTFILE

case "$1" in
    meisi)
	cat $MEISI >> $OUTFILE
	;;
    namae)
	cat $NAMAE >> $OUTFILE
	;;
    timei)
	cat $TIMEI >> $OUTFILE
	;;
    *)
	;;
    esac

cat $OUTFILE | /home/QtPalmtop/bin/anthy-dic-tool --load

/home/zaurus/.anthy/以下にmeisi_rec.src,namae_rec.src,timei_rec.srcを作成、内容は名詞、人名、地名の登録フォーマットの2行目以下、副詞や形容詞は使用頻度が小さいと思うので今回はパス。下記は名詞の場合、文字はEUCで書くこと。

品詞 = 名詞
な接続 = y
さ接続 = y
する接続 = y
語幹のみで文節 = y
格助詞接続 = y
(空行)

qcfの行で登録フォーマットの1行目を作成している、具体的にはクリップボード上の「よみ(半角スペース)単語」を「よみ(半角スペース)1(半角スペース)単語」に変更して改行コードを付加している。sedあたりを使用してもっとシンプルにできそうな気がするけど使い方を知らないのでperlを使用、perlの文法もイマイチ怪しいけれで動いているから、まあいいか。
このスクリプトをkeyhelper.confのShift+全/半キーの入力モード選択のメニューに追加する。ただ追加するだけでは上手くいかないので、sudoを使用してユーザーzaurusで動作させる必要があるようだ。

[Menu01]
07_名詞登録= @exec(TAB)/usr/bin/sudo -u zaurus -s /home/zaurus/bin/anthy_rec.sh meisi
08_人名登録= @exec(TAB)/usr/bin/sudo -u zaurus -s /home/zaurus/bin/anthy_rec.sh namae
09_地名登録= @exec(TAB)/usr/bin/sudo -u zaurus -s /home/zaurus/bin/anthy_rec.sh timei

Menu01の日本語コードはUTF8で書くこと。
Zeditor上で「よみ 単語」をコピーして、KeyHelperのメニューから3つの辞書登録を実行させてみる、なんとか上手くいっているようだ。




以上の内容はhttps://hake.hatenablog.com/entry/20050302/p1より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14