Amazonギフト券
のメールが届いていた。先日、無線LANカードとトランスミッタを買ったためらしい。今まで本やらCDやら買ったときはなかったけどエレクトロニクス製品を買うとくれるみたいですね。やっぱジャンル的に高額の購入が多いからだろうか。
X/Qt - キーの入れ替え
Fn+O、Fn+PでBrace「{ }」を入力させるようにする設定について。とりあえずKeyHelperで何もしない場合について設定してみる。といってもX上でどうやったら良いのか検討も付かないのでX/Qt関連のページを見てまわったら、どうやらxmodmapというものを使用するらしい。ググったところ、こんなページをみつけた。
早速xevを起動してFn+O、Fn+Pのキーコードをみると142と143であることがわかった。xmodmap -pkeの出力をみるとこのキーコードには何も定義されていないので~/.Xmodmapというファイルを作って
keycode 142 = braceleft keycode 143 = braceright
として、~/.xinitrc内でxmodmap ~/.Xmodmap させるように記述。X/Qtを再起動させると見事Braceが入力できるようになった。
この状態でKeyHelper側の設定を有効にするとBraceが入力できなくなる、ま、キーコードが違うんだから当然といえば当然な話。このときのコードをxevでみるとControl+Shift+不等号になっている、KeyHelper.xmlで設定しているとおり。xmodmapの出力をみるとLess(Greater)のShift付きはちゃんとBraceになっている。ということはControlが邪魔してる?
ならば、この状態でQtでのBraceのコードはどうなっているかとKeyHelperConfでみるとControlが押されていない。ということでkeyhelper.xmlの該当部分をControlなしに書き換えてみる
<define code="2015"> <map key="Less"/> <map_modifier Shift="On"/> </define> <define code="2016"> <map key="Greater"/> <map_modifier Shift="On"/> </define>
そしたらちゃんとBraceが入力できるようになったよ、もちろんQtのアプリ上でもOK。というわけでSL-C3000のKeyHelperの設定をそのままSL-C860に持ってきて使用したのがマズかったらしいですね。結局xmodmapの設定は不要になってしまったけど、キー入れ替えの勉強にはなりました。
あ、でもSL-C3000でX/Qt-2を使用するときには上手くいかないのかもしれないなぁ。