RETURN

■なんとかなるさLinuxZau



KeyHelperのバージョンアップにより、このページの内容は古いものとなりました。最新バージョンの設定に関しては、

KeyHelper導入ツアー

をご覧下さい。

2003/4/5

■リナザウチップス 〜キーカスタマイズ!!タコ的ビフォーアフター設定編

■

 KeyHelperの設定はちょっとややこしいです。そこで、最初は開発者さんと同じ環境、つまりサンプル通りに使っていました。でも慣れてくると欲が出てきます。ああしたいこうしたい。

 そこで、環境ファイルのカスタマイズにチャレンジ。やってみると意外にも簡単でした。

■ 作業の前に……

KeyHelper開発バージョン Version 0.9.4 の設定を行っています。他バージョンでは微妙に設定が変る可能性があります。ご注意下さい。

※ここで紹介している設定は、KeyHelperが持つ全ての機能を網羅しているわけではありません。基本的なものを中心に、ボク個人の必要性を優先して紹介しています。現在、開発バージョンですので正式バージョンになれば全てを紹介する気持はあります。気持だけね。

※以下で紹介する作業は自己責任でお願いします。いかなる不具合が発生しても当方は責任を負いません。作業はバックアップを取ってからにしましょう。

※ここで説明する内容と、LinuZau ToolBox で公開されているマニュアル(readme.txt)の内容が違った場合、マニュアルが正解です。マニュアルに従って下さい。間違いのないように注意していますが、絶対に間違っていないことはあり得ません。その場合は広い心で接して下さいm(__)m。




 やりたいこと

 段取り八分、という言葉が好きです。準備に時間をかければ、目標を80%達成したも同じということ。あとは実行するのみ。

 KeyHelperの設定は結構面倒です。ちまちま設定を変更していると、何をやっているのか自分でもわからなくなり混乱してきます。きっちり整理して作業しないと面倒な作業がますます面倒になりかねません。そこで、段取りよくやるために、何をしたいのか整理しておきましょう。

 KeyHelperで設定したいキー割当ては下記の通り。

割当てキー key name/code 機能 備考
Home F12 メニューランチャー1(Menu) 使用頻度は低いが愛用のアプリを起動
Shift Home F12 タスクセレクター(select)
Mail F13 メニューランチャー2(Menu2) 毎日編集する常用のテキストファイルを開く
Shift Mail F13 メニューランチャー3(Menu3) 設定ツールの起動、設定ファイルを開く
Shift Menu F11 メニューランチャー4(Menu4) テキスト挿入専用メニュー
Address F10 ランチャー 使用頻度が高い常用アプリを起動
Calendar F9 HOME画面切替 滅多に使わないので
カナひら F26 Ctrl w3m、yEditカスタマイズ対策。
Shift カナひら F26 Alt yEditカスタマイズ対策。
Fn O 2015 {
Fn P 2016 }

※この他にタスク切替(switch)という機能がありますが、いい割当てキーがないので保留。タスクセレクター(select)で代用することにしました。

Menu KeyHelperを使うようになって、標準搭載のランチャーであるHOME画面はほとんど呼び出さなくなりました。そこで、両手持ちだと一番押しにくい[Calendar]にHOME画面呼出/切替を移し、[Home]キーにKeyHelperのメニューランチャー(右図)を割当てました。

 さて、これらのことをKeyHelperで実現するには、2つの設定ファイルを書く必要があります。

 名前からすると、まず基本設定ファイルから設定していった方がよさそうですが、キー設定XMLファイルから書いていった方が、自分が何をやろうとしているのか、自分で解りやすいと思います。

2003/3/21




 キー設定XMLファイル

 キー設定XMLファイル keyhelper.xml をまず準備しましょう。

 ざっと下のような感じになります。長くなるので左右2段に分けています。

keyhelper.xml 物草版(2003/3/21)

<?xml version="1.0"?>
<keyhelper>

<modifiers>
<define key="F26" type="Control" mapping="True">
<release key="F31"/>
</define>
<define key="F10" type="User1" mapping="True">
</define>
<define key="Shift" type="Shift" toggle="True"/>
</modifiers>

<mappings>
<define key="F9">
<map key="F12"/>
</define>
<define key="F26">
<modifier Shift="On"/>
<map key="Alt"/>
<map_modifier Shift="Off"/>
</define>
<define code="2015">
<map_modifier Shift="On"/>
<map key="Less"/>
</define>
<define code="2016">
<map_modifier Shift="On"/>
<map key="Greater"/>
</define>
</mappings>

<repeater>
<repeat delay="300" period="35" mode"1"/>
</repeater>

<extensions>
<define key="All" kind="launch">
<modifier User1="On"/>
</define>
<define key="F12" kind="select">
<modifier Shift="On"/>
</define>
<define key="F12" kind="menu">
</define>
<define key="F13" kind="menu2">
</define>
<define key="F13" kind="menu3">
<modifier Shift="On"/>
</define>
<define key="F11" kind="menu4">
<modifier Shift="On"/>
</define>
</extensions>


</keyhelper>

 ご覧の通り、

 という6つのセクションに別れており、最後と最後の基本部分は固定です。触りません。その他の4つのセクションについて、ボクのやったことをご紹介していきます。

 正直、設定ファイルの中身を完全に理解できていません。それぞれのタグが具体的にどんな意味があるのかさっぱり解りません。
 解らないなら真似ればいいのです。ボクも紹介されている設定例を元に、見よう見まねでオリジナルのものにしていきました。具体的な書式は、KeyHelperのマニュアル(ReadMe)を見ていただくとして、ここではボクの設定の中身を紹介し、簡単な解説を載せるにとどめます。盗むところは盗み、真似るところは真似ていただくと、自然と自分オリジナルの設定ファイルができていくものです。

キー設定XMLファイル:装飾キー設定

 まずは装飾キー設定<modifiers></modifiers> に挟まれたセクションです。

keyhelper.xml 物草版(2003/3/21) 抜粋 ■簡単な解説

<modifiers>

開始タグ。触らない。

<define key="F26" type="Control" mapping="True">
<release key="F31"/>
</define>
キー名F26の[カナひら]を殺して[Ctrl]を割当て。[カナひら]機能は無効になる。
[カナひら]は[Fn]と同時押しで[記号](F31?)になる。[記号]を有効にするためのお呪い。
<define key="F10" type="User1" mapping="True">
</define>
[Address](F10)に”User1”機能を割当て。
 ”User1”は後ほどでてくる拡張動作設定<extensions>セクションでランチャー機能を割当てる。
<define key="Shift" type="Shift" toggle="True"/> ・シフトをトグルに設定。
 トグルというのはシフトキーを押しっぱなしにしていなくても、一度押したらシフトを押しっぱなしにしたのと同じことになる機能。続けてもう一度押すとシフト解除。有効→解除→有効……と押すたびに交互に変る。
</modifiers> 終了タグ。触らない。

キー設定XMLファイル:キーマッピング設定

 続いてキーマッピング設定<mappings></mappings> に挟まれたセクションです。

キーマッピング設定には、KeyHelperConf という設定補助ツールがあります。こちらを使っていただければ、簡単に設定ができるようになります。

keyhelper.xml 物草版(2003/3/21) 抜粋 ■簡単な解説  ちと自信なし(^^;

<mappings>

開始タグ。触らない。

<define key="F9">
<map key="F12"/>
</define>
[Calendar](F9)の設定。
キー名F12([Home])を割当てる。
これで[Calendar]を押すとHOME画面が起動/切り替る。
<define key="F26">
<modifier Shift="On"/>
<map key="Alt"/>
<map_modifier Shift="Off"/>
</define>
◎この設定はちょっと不安。

・[カナひら](F26)の設定。
シフトを押して、[カナひら](F26)を押したとき[Alt]キーとして機能する。

装飾キー設定<modifiers>セクションで[カナひら]に[Ctrl]を割当てた。これで[Shift]+[カナひら]で[Alt]キーとなる。キー操作は同時押しではダメというのが難点。[Shift]+[カナひら]+任意のキーと順番に押していかなければならない。

<define code="2015">
<map_modifier Shift="On"/>
<map key="Less"/>
</define>
・[Fn]+[O](キーコード2015)の設定をするぞ! という宣言。
・もともと "{" は [Shift]+[Fn]+[/] である。ゆえに、[Shift]を押した状態にする。
・[Fn]+[/]のキーコードはQt::Key_LessなのでLessのコードを送って "{" が入力される。
<define code="2016">
<map_modifier Shift="On"/>
<map key="Greater"/>
</define>
・[Fn]+[P](キーコード2016)の設定をするぞ! という宣言。
・もともと "}" は [Shift]+[Fn]+[?] である。ゆえに、[Shift]を押した状態にする。
・[Fn]+[?]のキーコードはQt::Key_GreaterなのでGreaterのコードを送って "}" が入力される。
</mappings> 終了タグ。触らない。

2003/3/21

キー設定XMLファイル:キーリピート設定

 キーリピート設定<repeater></repeater> に挟まれたセクションです。ここは簡単。

keyhelper.xml 物草版(2003/3/21) 抜粋 ■簡単な解説

<repeater>

開始タグ。触らない。

<repeat delay="300" period="35" mode="1"/> ・キーを長押ししたときの繰返し開始タイミング(delay)繰返しスピード(period)を設定。数字の部分を変えるだけ。
mode="1"はキーリピートを使用するというお呪い。"0"ならシステムでリピート、"2"なら無効。デフォルトは"1"なのでよく解らんという方は"1"。だからボクも"1"(^^;。この設定はターミナルで切替可能。詳しくはマニュアルをm(__)m。
</repeater> 終了タグ。触らない。

2003/3/16

キー設定XMLファイル:装飾キー設定

 最後に拡張動作設定<extensions></extensions> に挟まれたセクション。装飾キー設定<modifiers> セクションと密接に関係しています。

keyhelper.xml 物草版(2003/3/21) 抜粋 ■簡単な解説

<extensions>

開始タグ。触らない。

<define key="All" kind="launch">
<modifier User1="On"/>
</define>
※この設定の解説はあてにならない(^^;。

装飾キー設定<modifiers>セクションで[Address](F10)に割当てた”User1”の機能は、ランチャーであり、[Address](F10)を押した時全てのキーがランチャーキーとして動く(基本設定ファイルkeyhelper.conf [Launch]セクションにて設定)。

<define key="F12" kind="select">
<modifier Shift="On"/>
</define>
[Shift]+[Home](F12)タスクセレクター
<define key="F12" kind="menu">
</define>
[Home](F12)メニューランチャー1
<define key="F13" kind="menu2">
</define>
[Mail](F13)メニューランチャー2
<define key="F13" kind="menu3">
<modifier Shift="On"/>
</define>
[Shift]+[Mail](F13)メニューランチャー3
<define key="F11" kind="menu4">
<modifier Shift="On"/>
</define>
[Shift]+[Menu](F11)メニューランチャー4
</extensions> 終了タグ。触らない。

 以上で、キー設定XMLファイル keyhelper.xml の設定は終わりです。続いて基本設定ファイル。

2003/3/21




 基本設定ファイル

 基本設定ファイル keyhelper.conf は、下記の通り4つのセクションに別れています。

[Global]
 よく解りませんが(^^;、KeyHelperを制御するための設定のようです。普通は使いません。

Menu[Launch]
 ランチャー機能を使って起動したいアプリケーションの登録をします。

[Menu] [Menu2] [Menu3]
 メニューランチャー(メニュー選択形式のランチャー)にアプリーケーションを登録します。(右図)

[Style]
 メニューランチャー、およびタスクセレクター(後述)のメニューのスタイルを指定します。

 

keyhelper.conf (物草2003/3/21版)
[Global]
UseFilterApps =
XmlFile =

[Launch]
D = Applications/yEdit /mnt/card/0/diary.txt
F = Applications/tkcExplorer
F35 = Applications/textedit
I = Applications/imgview
J = Applications/zten
C = @qcop QPE/Application/zten lookup()
K = Applications/embeddedkonsole-ja
L = __7x009rotate
M = Applications/qtmail
N = __7x020netmon
T = Applications/zeditor
U = Settings/userdic
Y = Applications/yEdit
Escape = __9quit
Backspace = __9quit

[Menu]
01_mail(&M) = Applications/qtmail
02_netfront(&N) = network/netfront3
03_portaBase(&B) = Applications/portabase
04_imager(&I) = Applications/zimager
05_qpPhoto(&P) = Applications/qpPhoto
06_calculator(&C) = Applications/calculator
[Menu2]
01_diary(&D) = Applications/yEdit /mnt/card/0/diary.txt
02_enter(&E) = Applications/yEdit /mnt/card/0/enter.html
03_urlList(&U) = Applications/zeditor /mnt/card/0/url_list.txt
[Menu3]
01_install(&I) = Settings/qinstall
02_backup(&B) = Settings/backup
03_keyhlperConf(&C) = Applications/yEdit /home/zaurus/Settings/keyhelper.conf keyhelpconf.png
04_keyhelperXml(&X) = Applications/yEdit /home/zaurus/Settings/keyhelper.xml keyhelpconf.png
05_kh_reload(&R) = @qcop QPE/KeyHelper reload() keyhelpconf.png

[Menu4]
01_<a>(&A) = @text <a href="" target="_blank"></a> i_mikan/png
02_<br>(&K) = @text <br> i_mikan/png
03_<b>(&B) = @text <b></b> i_mikan/png
04_<font>(&F) = @text <font size="" color=""></font> i_mikan/png

[Style]
BgColor_menu = #FF0000
BgColor_menu2 = #0000FF
BgColor_menu3 = #00FF00
BgColor_menu4 = #000000
BgColor_select = #000000
Caption_menu = TaskMenu
Caption_menu2 = EditFiles
Caption_menu3 = Settings
Caption_menu4 = HTML_tags
Caption_select = TaskSelector
FontColor_menu = #FFFFFF
FontColor_menu2 = #FFFFFF
FontColor_menu3 = #FFFFFF
FontColor_menu4 = #FFFFFF
FontColor_select = #FFFFFF

基本設定ファイル:ランチャーへのアプリ割当て

まずは赤文字の[Launch] セクション。ここで[ランチャーキー]+[アルファベットキー]に割当てるアプリケーションを設定します。基本の書式は下記の通り。当然全て半角英数文字です。

[アルファベットキー] = [起動したいアプリの.desktopファイル名]

 で、ボクの基本設定ファイルはこんな感じ。

keyhelper.conf (物草020309版) 抜粋
[Launch]
D = Applications/yEdit /mnt/card/0/diary.txt
F = Applications/tkcExplorer
F35 = Applications/textedit
I = Applications/imgview
J = Applications/zten
C = @qcop QPE/Application/zten lookup()
K = Applications/embeddedkonsole-ja
L = __7x009rotate
M = Applications/qtmail
N = __7x020netmon
P = @text (^-^)
T = Applications/zeditor
U = Settings/userdic
Y = Applications/yEdit
Backspace = __9quit
Escape = __9quit

 見ていただいたら解ると思いますが、ポイントは太文字の部分。

[TAB] はタブです。文字列の入力ではありません。

Y = Applications/yEdit

 アプリケーションの指定はアプリケーション名ではなく、HOME画面の設定で作成された.desktopファイルのファイル名で指定します。

※yEditファイナルテスト版(ver.0.7-0)以前のyEditでは、.desktopファイル名が”yedit.desktop”であるため、”yedit”と全て小文字となります。ご注意下さい。

※HOME画面設定と.desktopファイルについては、「リナザウチップス 〜タコ風味編」>「8枚目――HOME画面設定の中身を知ろう」を参照して下さい。

D = Applications/zeditor [TAB] /mnt/card/0/diary.txt

 基本書式のあとに、TABを入れ、とファイル名(フルパス)をつけると、そのファイルを開いてアプリが起動します(多分、起動するアプリ側でファイル名を受け取る仕様になっていないとだめ)。
 この例では、SDカードの”0”ディレクトリにある”dairy.txt”というファイルを開いてテキストエディタZEditorが起動します。

U = Settings/userdic

 〔ユーザー辞書登録〕を起動します。
 ”Applications”ではなく、”Settings”となっています。これもHOME画面の設定で作成された.desktopファイルのファイル名で指定するからです。
 .desktopファイルは”/home/QtPalmtop/apps/”というディレクトリの中にあります。上記のyEditであれば、”/home/QtPalmtop/apps/Applications/”の中にあります。userdic(ユーザー辞書登録)ならば、”/home/QtPalmtop/apps/Settings/”の中にあります。お分りですね。KeyHlper での設定では、”/home/QtPalmtop/apps/”以下の”Applications”や”Settings”から指定する必要があるのです。

Backspace = __9quit
Escape = __9quit

 いずれも電源オフ。キーボードで電源オフできるのは便利ですよ。アルファベットだけではなく、特殊キーも設定できるようです。”Escape”は[Cancel]のことです。

N = __7x020netmon

 [N]でネットワークの接続/切断ができます。その為にはDIGITAL-MONOさんから「地球アイコンをQtメニューに追加アイコンを1つにしたもの」をダウンロード&インストールし、KeyHelper に登録します。便利です。

C = @qcop [TAB] QPE/Application/zten lookup()

 辞書検索ソフトztenver.1.6.0 から、クリップボードの文字列を受け取って検索するという機能が追加されました。(1)辞書引きしたい文字列を選択し、(2)[Fn]+[C] でコピー、(3)[Address]+[C]でztenが起動し、コピーした文字列を自動的に検索してくれます。
ztenのマニュアルでは
qcop QPE/Application/zten 'lookup()'
 となっているが、KeyHelper の設定ではシングルコーテーション「’」は不要。

P = @text [TAB] (^-^)v

 カーソル位置に文字列”(^-^)v”を入力してくれます。

2003/3/21

基本設定ファイル:メニューランチャーの設定

 続いて[Menu]セクションです。このセクションでメニューランチャー(メニュー選択形式のランチャー)に登録するアプリーケーションを設定します。

 メニューランチャーのメニューは複数設定できます。この例では、[Menu] [Menu2] [Menu3]と3つのメニューを設定しています。それぞれに割当てたキーでメニューランチャーを起動して、メニューの中から選択したアプリケーションを起動します。勿論、1つだけでもかまいません。

 設定の書式は下記の通り2通りあります。

 冒頭の[数字2桁]は表示順の設定のためのもの。
 [アルファベット]は起動キーです。メニューランチャーを表示して指定したキーを押すと、そのアプリが起動します。この[アルファベット]部分に2文字以上の文字を書き、その後に、”(&[アルファベット])”と続けると、2文字以上の文字列をメニューに表示し、指定したキーでアプリが起動します。
 [起動したいアプリの.desktopファイル名]部分は、[Launch] セクションで紹介したルールと同じです。TABのあとにフルパスでファイルを指定すれば、そのファイルを開いて起動するのも同じです。
 [アイコンファイル名]でメニューに表示されるアイコンを指定します。指定しなければデフォルトのアイコンが表示されます。アイコンは”/home/QtPalmtop/pics/”ディレクトリにあるアイコンファイルを読込みます。ディレクトリの指定は不要です。

 バージョン 0.9.4 から、ランチャー機能でアプリケーションを起動するほかに、シェルコマンドを実行したり、文字列を挿入することができるようになりました。

 書式は下記の通り。

●シェルコマンドを実行する

 [実行したいシェル]はフルパスで指定してください。引数との間には半角スペースを入れます。[TAB]ではありませんのでご注意を。

●文字列を挿入する

 言葉で説明するとややこしいので、下記の例をご覧下さい。そんなに難しいものではありません。

keyhelper.conf (物草2003/3/21版) 抜粋
[Menu]
01_mail(&M) = Applications/qtmail
02_netfront(&N) = network/netfront3
03_portaBase(&B) = Applications/portabase
04_imager(&I) = Applications/zimager
05_qpPhoto(&P) = Applications/qpPhoto
06_calculator(&C) = Applications/calculator
[Menu2]
01_diary(&D) = Applications/yEdit /mnt/card/0/diary.txt
02_enter(&E) = Applications/yEdit /mnt/card/0/enter.html
03_urlList(&U) = Applications/zeditor /mnt/card/0/url_list.txt
[Menu3]
01_install(&I) = Settings/qinstall
02_backup(&B) = Settings/backup
03_keyhlperConf(&C) = Applications/yEdit /home/zaurus/Settings/keyhelper.conf keyhelpconf.png
04_keyhelperXml(&X) = Applications/yEdit /home/zaurus/Settings/keyhelper.xml keyhelpconf.png
05_kh_reload(&R) = @qcop QPE/KeyHelper reload() keyhelpconf.png

[Menu4]
01_<a>(&A) = @text <a href="" target="_blank"></a> i_mikan/png
02_<br>(&K) = @text <br> i_mikan/png
03_<b>(&B) = @text <b></b> i_mikan/png
04_<font>(&F) = @text <font size="" color=""></font> i_mikan/png

 では太字の部分の解説。

01_M = Applications/qtmail

 [Menu]を起動してフォーカスを1行目に合わせるか、”M”を押すとメーラーが起動します。

03_portaBase(&B) = Applications/portabase

 [Menu]を起動してフォーカスを2行目に合わせるか、””を押すとPortaBaseが起動します。


01_diary(&D) = Applications/yEdit [TAB]  /mnt/card/0/diary.txt

 [Menu2]を起動してフォーカスを1行目に合わせるか、””を押すとSDカードの”0”ディレクトリにある”dairy.txt”を開いてyEditが起動します。ファイルはフルパスで指定、その前はスペースではなくTABが入ります。


03_keyhlperConf(&C) = Applications/yEdit /home/zaurus/Settings/keyhelper.conf [TAB]  keyhelpconf.png

 ”keyhelper.conf”設定ファイルを開いて yEdit を起動します。[TAB]のあとで指定したアイコン(KeyHelper 設定補助ツール KeyHelpConfのアイコン)を表示させます。

05_kh_reload(&R) = @qcop [TAB] QPE/KeyHelper reload() [TAB] keyhelpconf.png

 KeyHelper のXML設定ファイルを編集したら、設定ファイルを再読込する必要があります。その為に、これまでターミナルでコマンドを打ち込んでいたと思いますが、このように設定すると、[Menu3]を起動してフォーカスを5行目に合わせるか、””を押すだけで、設定ファイルの再読込ができるようになります。


01_<a>(&A) = @text [TAB] <a href="" target="_blank"></a> [TAB] i_mikan/png

 [Menu4]を起動してフォーカスを1行目に合わせるか、””を押すとリンク用のHTMLタグを挿入します。

2003/3/21

基本設定ファイル:メニューのスタイル

 メニューウィンドウのタイトルバーのスタイルを設定します。面倒なら省略可能(多分(^^;)。

 下記の書式で、メニュー・タイトル・バーそれぞれについて、背景色表示タイトル文字色の3つのスタイルを設定します。

[スタイル項目]_[メニュー名] = [色コード/文字列]

keyhelper.conf (物草2003/3/21版) 抜粋
[Style]
BgColor_menu = #FF0000
BgColor_menu2 = #0000FF
BgColor_menu3 = #00FF00
BgColor_select = #000000
Caption_menu = TaskMenu
Caption_menu2 = EditFiles
Caption_menu3 = Settings
Caption_select = TaskSelector
FontColor_menu = #FFFFFF
FontColor_menu2 = #FFFFFF
FontColor_menu3 = #FFFFFF
FontColor_select = #FFFFFF

 太文字部分の解説。前項で紹介したメニューランチャー[Menu3]のスタイルを設定しています。結果は右の画像。

Menu2BgColor_menu3 = #00FF00

 タイトルバーの背景色を緑色(#00FF00)に設定します。

Caption_menu3 = Settings

 タイトルバーに表示する文字列を指定します。この例では”Settings”と表示されます。
 日本語も可能ですが、その際には、設定ファイルを文字コード UTF-8形式で保存する必要があります。なんのこっちゃわからん、って人は半角英数文字だけですませた方が無難でしょう。ボクもそのクチ(^^;。

FontColor_menu3 = #FFFFFF

 タイトルバーに表示される文字色を白色(#FFFFFF)に設定します。

2003/3/9



BACK