左ALTキーと左SHIFTキーの位置入れ替えを敢行しました(/system/usr/keylayout/SH_qwerty_key.kl)。
320
右ShiftをTabに変えたから入力補完かなり便利だわ…
321
キーがちょっと少ないから,キーマップは結構悩むよね
右shiftはconnectbot改のパイプ入力に慣れちゃった
325
>>321
キーマッピングファイル(.kcm.bin)いじればモディファイアキーの
組み合わせに任意の文字コードを割り当てられるよ。Alt+1=ESC、
Alt+Shift+0=|、とか。ただConnectBotはShift+数字で強制的にFKey
入力になっちゃうから、Shiftが入った組み合わせを使う場合は結局
FKey無効にしたバージョンを使うことになるが。
329
>>325
なるほど
.klと.kcm.binの違いがよくわからないので
ちょっと調べて試してみます
330
.kcm.bin見たけど対応がいまいち分からないな
ただこれ弄れば自分の理想のキーマップにできるんだな
334
>>330
/system/usr/keychars/SH_qwerty_key.kcl.bin
ヘッダ32バイトの後にキーマップ定義16バイトがキーの
個数分続く。キーマップ定義は先頭2ワードがキーコードで、
後半の4ワードが以下の順に並ぶ4つの文字コード。
モディファイアなし/Shift/Alt/Alt+shift
例) Pキーのキーマップ
00001d0: 2c 00 00 00 50 00 37 00 70 00 50 00 40 00 60 00
キーコード: 0x0000002c
文字コード[0]: 0x0070 = 'p' (単独Pキー)
文字コード[1]: 0x0050 = 'P' (Shift+Pキー)
文字コード[2]: 0x0040 = '@' (Alt+Pキー)
文字コード[3]: 0x0060 = '`' (Shift+Alt+Pキー)
その他細かい仕様はAndroidのソースでKeyCharacterMap.(cpp,h)
見ればわかる。
336
>>331
キーマッピングファイルのフォーマットにバージョンがいくつか
あるみたいなんだけど、もしそれが同じなら使えるかも。
バイナリ直接いじるのはちょっとめんどいしね。
337
IS01はqwerty.kl書き換えでいけないの?
338
>>334
thx
5Byte目からだと思ったら8Byte目からだったんだな
分からないところもあるけど、それだけわかれば十分そうだわ
341
あーごめん、>>331はレイアウトファイルのほうだけいじるやつかも。
キーレイアウトファイル(.kl/Key Layout Map)はハードキーとキーコードの
対応関係を定義するテキストファイル。単純にキーの入れ替えとかなら
こっちいじるだけでOK。
キーマッピングファイル(.kcm.bin/Key Character Map)はキーコードと
文字コードの対応関係を定義するバイナリファイルで、モディファイア
キーの組み合わせも定義可。
http://source.android.com/porting/keymaps_keyboard_input.html
※ここの説明にある.kcm.binのフォーマットはIS01のものとは異なる
最終更新:2010年12月08日 07:40