plamo3.x->oyayubi
戻るボタンで戻りませう。

日本語入力環境

Wnn7のインストール

FreeWnnのアンインストール(しません!)

初期状態ではFreeWnnが動いています。起動スクリプトの解除をしておく必要が あります。ただし、アンインストールはしません。 起動スクリプトは、/etc/rc.d/init.d/wnn.rです。wnn.rを削除しておきます。
アンインストールすると、nicolatterのmakeでエラーになってしまいます。

パッケージからインストール

$ rpm2tgz wnn7-*-i386.rpm '.rpmを.tgzへ変換
# installpkg *.tgz
マイナーバージョンの初期のものは、tgzへの変換がうまく行かないことがある みたいです。このときは新しいものを探すのがよいと思いますが、cpioを使って どうにかする方法もあるみたいです。

ライセンスキーを導入

CD-ROMに入っているものをコピー # cp /cdrom/passwd/dpkeylist /etc/dpkey/ オンラインユーザ登録するとライセンスをもう一つ貰えました。 貰ったらテキストエディタで書き込んでおきます。

起動スクリプトを書く

/etc/rc.d/rc.localに書き足す /usr/sbin/dpkeyserv > /dev/null
/usr/sbin/jserver > /dev/null
も少し起動スクリプトらしく書いても良いかもしれません。 親指シフトによる日本語入力をするので、まずはここまで。下へ続く。

Q's nicolatter

Wnn7で使うので、予めWnn7のSDKを導入しておき、nicolatterはソースからコン パイルします。

起動スクリプトの修正

仮名を親指シフト入力するのに、Q's nicolatterをつかうので、kinput2やxwnmo は使いません。 .xinitrc に有る kinput2 を起動する部分をコメントアウトしておきます。

Wnn7SDKのインストール

仮名を親指シフトで入力するので、Q's nicolatterを導入する。Wnn7に合わせて makeするためにSDKを導入しておきます。 $ tar -zxvf Wnn7SDK.tgz '/srcに展開されてしまう。
$ cd /src
$ make World -f Makefile.ini
# mv /src/Wnn/include/*.h /usr/local/include/wnn7
# mv /src/Wnn/jlib/libwnn.* /usr/local/lib/wnn7

ソースファイルの修正

アーカイブを展開し、configureスクリプトを修正します。

FreeWnnやWnn6の分しか記述がありません。Wnn7用に書き換えておきます。 /usr/lib/wnn6/ja_JP/wnnenvrc や、/usr/local/lib/wnn6/ja_JP/wnnenvrc などと、まとまって書かれているブロックがあります。 /usr/lib/wnn6/ja_JP/wnnenvrc
/usr/local/lib/wnn6/ja_JP/wnnenvrc

/usr/lib/wnn7/ja_JP/wnnenvrc

@WNNENVRC=, @JLLIB=, @LIBWNN= なる部分のパラメータをwnn7関連のものに置き 換える。 @WNNENVRC=('/usr/lib/wnn7/ja_JP/wnnenvrc');
@JLLIB=('/usr/local/include/wnn7/jllib.h'); 'SDK(*.h)の導入先
@LIBWNN=('/usr/local/lib/wnn7/libwnn.a'); 'SDK(libwnn.*)の導入先

コンパイル

とくに難しいことはないです。 $ perl ./configure xt wnn
$ make
# make install

設定ファイルを作成

キー設定については、nicolatterの付属文書を見てください。設定ツールも あるみたいです。

設定ファイル例

自作マシンで使っている定義ファイルです。汚いところもありますが、 まんま掲載します。HTML化するときに注釈等をつけていませんので、同じ機体で あればそのまま使えるはずです。

oasys互換ということで、参考にしているのはFM-TOWNSの親指シフトキーボードです。 かなモードが無変換キーだったり変換キーで変換できたり、MSちっくと云うか、 OASYSちっくと云うか。 ともかく、UNIXちっくとは到底思えないキー配置になってますねー。

ファイルの構成

大元の設定ファイルは、~/.nicolatter/globalです。 ここで指定したファイルからimport文を使って各種の設定ファイルを呼び出ししています。

global

先ずは設定ファイル群の大元締めです。


conversion-server: wnn
use-keymap: yes
keymap-file: /home/yamashina/.nicolatter/oasys_oyayubi.keymap
alnum-keymap: 
kana-key: Muhenkan
shift-method: synchronous
left-shift-key: Muhenkan
right-shift-key: Henkan_Mode
use-roma: no
roma-file: /home/hori/src/nicolatter-current/rc/tut.roma
roma-case-sensitive: yes
preedit-font: -*-fixed-medium-r-normal--24-*-*-*-*-*-jisx0208.1983-0
status-font: -*-fixed-medium-r-normal--16-*-*-*-*-*-jisx0208.1983-0

oasys_oyayubi.keymap

かなキーの配置を定義しているファイルです。


#
# oasys_oyayubi.keymap
#
# 機能キーの定義
import oasys_common.keymap

begin-key
#
# 図形キーの定義
#
# { キー  単独打鍵    左シフト    右シフト }
	1   "1"   "?" "!"
	2   "2"   "/" "”"
	3   "3"   "〜" "#"
	4   "4"   "「" "$"
	5   "5"   "」" "%"

	6   "6"   "&"   "["
	7   "7"   "’"   "]"
	8   "8"   ""   "("
	9   "9"   ""   ")"
	0   "0"   "@"   "『"
	minus       "−"  ""  "』"
	asciicircum "|"  ""  "¥"
	backslash   ""    ""  ""
	bracketright  ""  ""  ""

	a   "う"   "を"   "ヴ"
	apostrophe   "’"   ":"   "”"
	b   "へ"   "ぃ"   "べ"
	bracketleft   "、"   "{"   ""
	c   "す"   "ろ"   "ず"
	colon   "、"   ":"   "*"
	comma   "ね"   "ぺ"   "む"
	d   "て"   "な"   "で"
	e   "た"   "り"   "だ"
	equal   "="   "…"   "+"
	f   "け"   "ゅ"   "げ"
	g   "せ"   "も"   "ぜ"
	grave   "`"   "‾"   ""
	h   "は"   "ば"   "み"
	i   "く"   "ぐ"   "る"
	j   "と"   "ど"   "お"
	k   "き"   "ぎ"   "の"
	l   "い"   "ぽ"   "ょ"
	m   "そ"   "ぞ"   "ゆ"
	n   "め"   "ぷ"   "ぬ"
	o   "つ"   "づ"   "ま"
	p   ","   "ぴ"   "ぇ"
	period   "ほ"   "ぼ"   "わ"
	q   "。"   "ぁ"   "ゐ"
	r   "こ"   "ゃ"   "ご"
	s   "し"   "あ"   "じ"
	semicolon   "ん"   ";"   "っ"
	slash   "・"  "ゎ"    "ぉ"
	t   "さ"   "れ"   "ざ"
	u   "ち"   "ぢ"   "に"
	v   "ふ"   "や"   "ぶ"
	w   "か"   "え"   "が"
	x   "ひ"   "ー"   "び"
	y   "ら"   "ぱ"   "よ"
	z   "."   "ぅ"   "ゑ"
end-define

oasys_common.keymap

変換機能キーの動作を設定します。 前半で機能名に対する実際の動作を設定して、 後半でキーに対して機能名を割り当てします。 それにしても、コメントに書いてあるファイル名(oasys_oyayubi.keymap) が、実際のファイル名と違ってますね。うきゃー。


#
# oasys_common.keymap
#


begin-function
# { 機能名    未入力  入力中  全変換  候補一覧 }
	右	through	caret-right	expand	expand
	左	through	caret-left	shrink	shrink
	右削除	through	right-erase	na	na
#	左削除	through	left-erase	revert	revert
	前進	na	caret-right	expand	expand
	後退	through left-erase 	shrink	shrink
#
	撤退	through	clear		head	revert		
	取消	through head		revert	revert	
#
	変換	na	convert	next-cand	next-cand
        前候補  na	na	prev-cand	prev-cand
        文節右  through	na	clause-right	clause-right
        文節左  through	na	clause-left	clause-left
	確定	through	all-determine	all-determine	all-determine
#
	無変換	na	all-determine	revert	revert
#
	先頭	through	head	head
	末尾	through	tail	tail
#
	漢字モード	kanji kanji head revert
end-define

begin-key
#
# 機能キーの定義
#
# { キー  単独打鍵    左シフト    右シフト }
    Eisu_toggle 漢字モード
    Henkan_Mode 変換
    ctrl-Henkan_Mode 前候補
    Left        左
    Right       右
    Tab		文節右
    ctrl-Tab	文節左
    Return      確定
    R_ctrl      	確定
    KP_Enter    	確定
    Escape      	撤退	
    BackSpace   	後退
    ctrl-BackSpace	前進
    Delete      右削除
    Home        先頭
    End         取消
    Muhenkan    無変換
#
# 図形キーの定義は,oasys_oyayubi.keymap
#
end-define


起動の設定

.xinitrc に以下のスクリプトを追加する。 /usr/local/bin/nicolatter -D
export XMODIFIERS = "@im=nicolatter"
.Xresourcesに次の行を追加する。 *international: True
*inputMethod: nicolatter
※ kinput2は使わないので、.xinitrcのkinput2関連の部分をコメントアウトしておく。

Q's nicolatterで仮名入力するために

Q's nicolatterでは、XIMという仕組みを使って仮名入力を実現していますが、 明示的に指定しないとXIMが有効にならないことがあります。
ktermオプション -ximで起動する。もしくは
.Xresourcesで"KTerm*openIm : True"を記述する
emacs.Xresourcesに"Emacs*useIm : True"を追加。


tsushiro.s, 2003. [→戻る]