RETURN

■なんとかなるさLinuxZau



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

KeyHelper導入ツアー

をご覧下さい。

2003/4/5

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

■

 待望のキー・カスタマイズ・ツール KeyHelper の登場です。ランチャー機能、タスク切り替え機能まで付いた盛りだくさんの内容。

LinuZau ToolBox より

 インストールしてみれば解ります。SL−C700の操作が劇的に快適になります。「大改造!!劇的ビフォーアフター」の比じゃありません。設定ファイルを見ると敬遠したくなりますが、苦労する価値は絶対にあります。

 うだうだ言う前にまずはチャレンジしましょう。やることは簡単。饒舌であるため説明が長くなるだけです(^^;。

 KeyHelper を使ってSL−C700をカスタマイズするには次の4つの作業を行います。

  1. KeyHelperをインストールする
  2. 設定ファイルを用意する
  3. KeyHelperに設定を読込ませる
  4. KeyHelperを使ってみる

 このうち、(1)の作業だけでもタスクの切替だけはできます。
 最後に、自分なりのカスタマイズについても言及します。

■ 作業の前に……

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

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

※設定ファイルを記述するためにテキストエディタが必要です。パソコンで設定ファイルを書いて、SL−C700に転送するならば必要ありませんが、SL−C700で設定するならば、SL−C700に適当なエディタをご準備下さい。推奨は下記の2つ。




 KeyHelperをインストールする

 まずは、 LinuZau ToolBox から、に感謝しつつ、最新版の KeyHelper Applet を入手してください。

ここではKeyHelper Version 0.8.3 を紹介します。2003/3/8 現在、開発バーションが公開されていますが、(1)設定方法が変更になる可能性がある、(2)インストール時にリセットがかかるなど不安定な部分がある、という理由により、開発バージョンの説明はいたしません。開発バージョンの仕様が固まり次第、こちらも対応して改訂したいと思っております。

 KeyHelper 自体のインストールは簡単です。パッケージをダウンロードして、標準の「ソフトウェアの追加/削除」でインストールするだけです。KeyHelper は我々が直接動かすのではなく、裏で勝手に働いてくれるアプリケーション(?)です。他のアプリケーションのようにHOME画面にアイコンが登録されるわけではありませんのでご注意を。

 インストールするだけで、とりあえず「タスク切り換え」はできるようになります。

 「タスク切り換え」とは起動しているアプリケーションの切換えのことです。タスク切換えは当初からSL−C700の不満点の一つとして話題になっていました。ペン操作であれば、タスクバーの小さなアイコンをタッチすることで、アプリケーションをアクティブにすることができます。しかし、キー操作をしているときにペンでタッチするのは面倒ですよね。できるならキー操作だけでタスク切換え(アプリケーションの切換え)をしたいというのが皆の願望でしょう。

 タスク切換えの操作は簡単。

[Shift]+[Home]

 これだけです。[Shift]+[Home]を繰り返せばどんどんアプリケーションが切り替わっていきます。

※後述のキー設定XMLファイルで[Home]キー以外の特殊キーにタスク切換え割当て可能。

 これだけでも便利でしょう?

2003/3/8




 設定ファイルを準備する

 タスク切換え以外の機能、キーの割当て、ランチャー機能等を実現するには設定ファイルを書き、読込ませる必要があります。一つずつ順番にやっていけば難しいことはありません。楽ありゃ苦あり、じゃなかった苦ありゃ楽あり。ここで一手間かけるとあとは極楽(^-^)。

 KeyHelper Applet の設定ファイルには2種類あります。

 中身を見ると一見難しそうですが、難しいことをしようとするから難しくなるわけで、まずは解るところからやっていきましょう。

 設定ファイルを自分で一から書くなんてできない相談ですので、サンプルを素直に頂きましょう。「学ぶ」と「真似る」の語源は同じですから、真似るというのは大事なことなのです。

LinuZau ToolBox > KeyHelper Applet > 設定ファイル 

 ここから下記の2つのファイルを頂きます。

● 基本設定ファイル ● キー設定XMLファイル
keyhelper.conf
[Global]
UseFilterApps =
XmlFile =
[Launch]
D = Applications/datebook
K = Applications/embeddedkonsole
T = Applications/todo
M = Applications/textedit
keyhelper.xml

<?xml version="1.0"?>
<keyhelper>
<modifiers>
<define key="F26" type="Control">
<release key="F31"/>
</define>
<define key="F12" type="User1">
</define>
<define key="Shift" type="Shift" toggle="True"/>
</modifiers>
<mappings>
<define code="2015">
<map key="Less"/>
<map_modifier Control="On"/>
<map_unicode ctrl_unicode="{"/>
</define>
<define code="2016">
<map key="Greater"/>
<map_modifier Control="On"/>
<map_unicode ctrl_unicode="}"/>
</define>
</mappings>
<repeater>
<repeat delay="300" period="30"/>
</repeater>
<extensions>
<define key="F12" kind="switch">
<modifier Shift="On"/>
</define>
<define key="All" kind="launch">
<modifier User1="On"/>
</define>
</extensions>
</keyhelper>

 方法は問いません。keyhelper.confkeyhelper.xml の2つの設定ファイルを準備してください。
 PCのインターネットエクスプローラーなら右クリックで保存ができるはずです。SL−C700のNetFrontでは、 keyhelper.xml しかダウンロードできませんでした(本体保存先/home/zaurus/Documents/text/xml/)。
 どうしてもうまくいかない場合は、上記の文字列を選択してコピー、お手持ちのエディタに貼り付けてそれぞれのファイル名で保存すればOKです。

 この2つのファイルを本体メモリの下記のディレクトリに置きます。

/home/zaurus/Settings/

 設定ファイルがSDカードのルートディレクトリにあるならば、ターミナルで、

ターミナル bash-2.05$ cp /mnt/card/keyheiper.* /home/zaurus/Settings/

 とすればOKでしょう。ターミナルでのファイルコピーは、「タコのためのターミナル操作編 第2歩:ファイルを移動/コピーする&ファイル名を変更する」を参照下さい。

 もしくは、FileManegaerでコピーしてください。




 KeyHelperに設定を読込ませる

 設定ファイルを指定のディレクトリに置きましたら、設定を KeyHelper に読込ませる必要があります。以下の作業をしないと、せっかくの設定が反映されませんので、嫌がらずに必ずやって下さい。

 制御の方法としては

コマンド入力でKeyHelperを制御する

 「制御する」という表現が適切かどうかは解りませんが、KeyHelper を我々がターミナル操作で設定を読み直したり有効にしたり無効にしたりすることができます。

 KeyHelper の制御はターミナルで行います。

● 設定の読込み

ターミナル bash-2.05$ qcop QPE/KeyHelper "reload()"   ←設定を読込む
Display size = 480x640
connect:shmget ok                   ←読込み成功
bash-2.05$ ■

● 有効化、無効化

ターミナル bash-2.05$ qcop QPE/KeyHelper "enable()"   ←機能を有効にする
bash-2.05$ qcop QPE/KeyHelper "disable()"   ←機能を無効にする
Display size = 480x640                 ←どちらも同じメッセージが
connect:shmget ok                           帰ってきます
bash-2.05$ ■

 面倒ですよね。ボクのようなバカには覚え切れません。

 そこで、エイリアスとして登録して、上記のコマンドをターミナルに覚えてもらいます。

コマンドをエイリアスに登録する

 エイリアスへの登録は”/home/zaurus/.bashrc”というファイルに、

alias keyHreload="qcop QPE/KeyHelper 'reload()'"
alias keyHstart="qcop QPE/KeyHelper 'enable()'"
alias keyHstop="qcop QPE/KeyHelper 'disable()'"

 と書き込みます(斜体部は任意に)。
 そして、ターミナルを起動させ、

ターミナル bash-2.05$ keyHreload   ←設定を読込む
bash-2.05$ keyHstart     ←機能を有効にする
bash-2.05$ keyHstop     ←機能を無効にする

 と打ち込めば、それぞれの長いコマンドを打ち込むのと同じことになります。

※エイリアスの登録に関して詳しくは、「タコのためのターミナル操作編 第5歩:エイリアスに長いコマンドを登録しよう」をご覧下さい。

苦肉の策(^^; 別名「原始的手段」

 コマンド? エイリアスってなに? よく解らん、って方は、設定を書き換えるたびにシステムを再起動(リセット)するのも手です。毎度毎度5分ほど待たされますが(^^;。

2003/2/23




 KeyHelperを使ってみる

 設定ファイルの設置が終りましたら、先に紹介した「KeyHelperを制御する」のいずれかの方法で、設定ファイルの読込み(reload)を実行して下さい。これで設定が反映されました。

 以上で、下記のようにカスタマイズされました。

2003/2/23




 自分好みにカスタマイズしてみる

※以下はVersion 0.8.3 の設定例です。最新の開発バージョン Version 0.9.2 の設定例は、「キーカスタマイズ!!タコ的ビフォーアフター設定編」で紹介しています。Version 0.9.2 は開発バージョンであり仕様は固まっていません。開発バージョンから正式バージョンに上がれば、以下の設定例は削除し、最新の設定例に入れ替える予定です。

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

  1.  まず、ランチャー。割当てるアプリケーションを常用するものにしたくなりました。
  2.  続いて同じくランチャー起動キー。[HOME]以外のものにしたくなりました。
     といいますのも、[HOME]キーを押すたびに、HOME画面が切り替わっていくのです。ランチャーキーの役割とともに、[HOME]キー本来の機能が働いているのです。開発者さんに相談しましたら、[HOME]キー本来の機能を殺してしまうのは止めた方がいい、ランチャーキーを他のキーに割当てては? とアドバイスいただきました。その他にも、メールや掲示板で同様のアドバイスを受けました。(この場を借りてアドバイスいただいた皆様に御礼申し上げますm(__)m)
  3.  それとキーリピート。ボクのはちょっと反応がよすぎるようです。

 そこで、環境ファイルのカスタマイズにチャレンジ。上記程度のことなら、意外にも簡単でした。

基本設定ファイル:ランチャーへのアプリ割当て
keyhelper.conf
[Global]
UseFilterApps =
XmlFile =
[Launch]
D = Applications/datebook
K = Applications/embeddedkonsole
T = Applications/todo
M = Applications/textedit

 まずは基本設定ファイル keyhelper.conf を見てみましょう。

 基本設定ファイル keyhelper.conf は2つのパートに別れています。

 まずは黒文字の [Global] のパート。詳細はマニュアル(readme.txt)を読んでいただくのが一番ですが、今のところボク等が触ることはないようです。

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

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

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

keyhelper.conf (物草版)
[Global]
UseFilterApps =
XmlFile =
[Launch]
D = Applications/zeditor /mnt/card/0/diary.txt
I = Applications/imgview
J = Applications/zten
K = Applications/embeddedkonsole-ja
M = Applications/textedit
N = __7x020netmon
T = Applications/zeditor
U = Settings/userdic
Y = Applications/yEdit
P = __9quit
Escape = __9quit

 見ていただいたら解ると思いますが、注目は太文字の部分。

D = Applications/zeditor   /mnt/card/0/diary.txt

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

Y = Applications/yEdit

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

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

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

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”から指定する必要があるのです。
※.desktopファイルとディレクトリ構造については、「リナザウチップス 〜タコ風味編」>「8枚目――HOME画面設定の中身を知ろう」を参照して下さい。

P = __9quit
Escape = __9quit

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

N = __7x020netmon

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

2003/3/8

キー設定XMLファイル:キーの割当て

 とまあここまでは簡単。難点はここから。
 でも、冒頭で書いた、ランチャーキーを別のキーに変える、キーリピートを変更する、程度なら難しいことはありません。

 下に、簡単な解説とボクがいじった部分を書いておきます。参考にしてください。

keyhelper.xml ■ 解説&物草的カスタマイズ

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

■基本部分
触らない。
<modifiers>
<define key="F26" type="Control">
<release key="F31"/>
</define>

<define key="F12" type="User1">
</define>

<define key="Shift" type="Shift" toggle="True"/>
</modifiers>
■修飾キー設定 <modifiers>

2〜4行で[カナ/かな]に[Ctrl]を割当て。
<define key="F26" type="Control" Mapping="True">
 と変更し、[カナ/かな]を[Ctrl]専用に。[カナ/かな]は効かなくなる。

5〜6行でランチャーキーを[Home]に割当て。
<define key="F10" type="User1" Mapping="True">
 と変更し、ランチャーキーを[Address]に割当てた。

※<define>タグ内で、「Mapping="True"」と記入するとそのキー本来の機能が死んでしまう。

7行目でシフトキーをトグルに設定。

<mappings>
<define code="2015">
<map key="Less"/>
<map_modifier Control="On"/>
<map_unicode ctrl_unicode="{"/>
</define>

<define code="2016">
<map key="Greater"/>
<map_modifier Control="On"/>
<map_unicode ctrl_unicode="}"/>
</define>
</mappings>
■キーマッピング設定 <mappings>

2〜6行で[Fn]+[O]に[{]を割当て。

7〜11行で[Fn]+[P]に[}]を割当て。

<repeater>
<repeat delay="300" period="30"/>
</repeater>
■キーリピート設定 <repeater>

キーを長押ししたときの繰返し開始タイミング(delay)と繰返しスピード(period)を設定。
<repeat delay="300" period="35"/>
 と変更し、やや繰返しを遅くした。

<extensions>
<define key="F12" kind="switch">
<modifier Shift="On"/>
</define>

<define key="All" kind="launch">
<modifier User1="On"/>
</define>

</extensions>
■拡張動作設定 <extensions>

2〜4行でタスク切換を[Shift]+[Home]に設定。

5〜7行でランチャー対象を全てのキーに設定。

</keyhelper> ■基本部分
触らない

※ランチャーキーの割当てですが、ボクの好みとして、[Calendar][Mail]に割当てたいと思いました。[Calendar]なら”F9”、[Mail]なら”F13”となります。
 試してみたのですがうまくいかず、開発者に問い合せたところ、やはり割当てできないとの返事でした。今のところ原因不明と言うことです。のちのち、解明する予定はあるとのことで、[Calendar]か[Mail]への割当てはしばらくおあずけ。気長に待ちましょう(^-^)。

※各キーのコードはこちらを参考に。

キーコード資料

 特にキーの割当てに関しては、今後、各サイトで設定例が紹介されることと思います。優秀な方々の設定を参考にし、我々等タコは「真似る」ことで「学び」ましょう。いずれ「真似られる」ようになれる日を夢見て。

2003/2/23






BACK