hakeの日記

Windows環境でプログラミングの勉強をしています。

OpenZaurus - InputHelper

Wikiに公開されたので早速導入してみる。最初ipkg installで

ipkg *** Couldnt kill old gunzip process *** aborting

というエラーが出たのですが再起動したら問題なくインストールできました、なんだったのだろう?


とりあえず一番使用頻度の高い日本語入力のON/OFFをキー操作でできるようにしてみる。[全/半]キーはAltに定義されていて割り当てできないのでCalenderに割り当てをしてみる。KeyHelperでHomeとAddressキーがそのまま使用できたのでCalenderもSharp/ROMと同じかと思ったらそうではないみたい、/etc/keymap-2.6.mapを参考に実験してみたらCalenderはF9だということが判明。ちなみにOpieではLCD横のソフトキーは別のキーコードに割り当てられているみたいです。


まずクリック座標取得のためのキー定義をkeyhelper.confに記述

[Launch]
G = @qcop(TAB)QPE/InputHelper 'position(QString)' ""
H = @qcop(TAB)QPE/InputHelper 'handle()'

[User1]+[H]で十字カーソルがでるので画面左下のIME ON/OFFメニューまで移動、そこで[User1]+[G]、さらに[User1]+[H]でカーソルを消す。これでメニュー位置の座標がクリップボードにコピーされる。ちなみに[User1]はKehelperのサンプル定義ファイルでは[Home]キーになります。

得た座礁をタップする動作を[F9]に割り当て。なお自分はタスクバーの幅を少し大きくしています、デフォルトではY座標値がもう少し大きくなるかもしれません。

[Launch2]
F9 = @qcop(TAB)QPE/InputHelper mouse(QString) "click 40 464"

ついでにAnthyの入力モード切替メニューを[F9]+[Shift]で表示するようにする。keyhelper.confに以下を追加。▲はQPOBoxを使いたくなったときの為の切り替え用

[Menu01]
01_カナ = @qcop(TAB)QPE/IME 'setMode(QString)' KATAKANA
02_ひら = @qcop(TAB)QPE/IME 'setMode(QString)' HIRAGANA
03_全英 = @qcop(TAB)QPE/IME 'setMode(QString)' WALPHA
04_半英 = @qcop(TAB)QPE/IME 'setMode(QString)' ALPHA
05_▲ = @qcop(TAB)QPE/InputHelper mouse(QString) "click 60 464"

keyhelper.xmlにmenu01についての定義追加

<extensions>
	<define key="F9" kind="menu01">	← [Shift]+[F9]でmenu01を表示させる定義
		<modifier Shift="On"/>
	</define>
	<define key="All" kind="launch">  	← [User1]と併用してLanchさせる定義
		<modifier User1="On"/>
	</define> 
	<define key="All" kind="launch2"/>	← キー単体でLaunchさせる定義
	</extensions>

この設定のあと

# khctl reload

ついでに十字カーソル表示時間を短くする。inputhelper.confに

[Cursor]
timeout = 100

としたあと

# qcop QPE/TaskBar "reloadApplets()"


あー、これでスゴイ使い易くなりました。やっぱKeyHelper&InputHeperは偉大です。