Xperia pro/mini proでキートップにない記号を入力する ― 2011/11/07 11:38
Xperia pro(MK16i)/mini pro(SK17i) で、キーマップの置換というか追加をしてみた。
Xperia pro/mini proは、QWERTYキーボードが付いていて、なかなか便利。通常のAndroidアプリを使う分には、もう完璧って感じなのだが、ベースになっているLinuxにアクセスする場合、ちょっと困った事になる。標準状態では、キーボードから入力できない記号が多いのだ。端末エミュレータ等を使用する場合に、シェル(sh)で頻繁に使用するパイプ"|"や、リダイレクト"<"・">"・">>"といった記号がキートップに無く、非常に苦労する。
このままだと不都合な事が多いので、キーマップの修正にチャレンジしてみた。
技術的な詳細は、下記のZIPファイル内の「キーマップ技術情報.txt」を参照されたい。
バイナリーエディタでファイルの中身を変更して書き戻すだけなので、この情報が理解できる人なら、好みに合わせていろいろ変えてみる事も容易だろう。
で、結論として、「かなりうまくいった」ので、公開することにする。「かなり」ってのは、つまり、ダメな部分もあったのだ。残念な事に、入力方法に「POBox Touch」を選んでいる場合、この変更が有効にならない。どうやら、POBox Touchは、直接、キーコードを読み込んで、独自に物理キーの処理を行っているようだ。入力方法に「nicoWnnG IME」や「ATOK」を使用すれば、問題なく記号類が入力できるようになるので、入力方法を適宜選んで使ってもらえば良いだろう。
以下に、修正したキーマップ定義の導入方法を示す。
なお、修正されたキーマップを導入した場合に入力できる記号類は、文末に記載したので、そちらを参照の事。
※注意事項
以下、すべて自己責任で行うこと。端末が動作しなくなったり、何らかの動作不良となった場合でも、一切の保証は行わないので、そのことを了承した上で操作する事。
1) 準備
この作業は、要rootedだ。Xperia pro/mini proは、事前に「root取り」を行っておくこと。
やり方は、以下を参照の事(ブートローダーのアンロックは不要!)。
[NEW][26/OCT/2011][ROOTING] Xperia 2011 Easy Rooting Toolkit [v1.0](zergRush Exploit)
http://forum.xda-developers.com/showthread.php?t=1320350
簡単に手順を示しておく(要Windows PC)。
a) 上記のサイトから、DooMLoRD_v1_ROOT-zergRush-busybox-su.zipをダウンロード
b) Xperia側でUSBデバッグを有効化した後、PCに接続(PC Companionは起動しない事)
c) PC上で入手したzipファイルを解凍し、フォルダ内の runme を実行
※上記以外の方法でrootを取っている場合、busyboxが未導入なら導入して、/system/xbinに
busybox --install -s /system/xbin
とでもして、リンクを作っておくこと。
2) 修正版キーマップ用ファイルをXperia側へコピー
先ず、以下のZIPファイルをPC上でダウンロードして、解凍しておく。
MK16i-SK17i-key-remap.zip
Xperia側のmicroSDに、「keymap」フォルダーを作成し、上記のZIPファイル内の以下のファイルをコピーする。
pm8058-keypad.kcm.bin.remap
3) 端末エミュレーターのインストール
以降の操作は、Xperia側で端末エミュレーターを使って行うので、端末エミュレーターをインストールしておく。お薦めは…
ConnectBot
このConnectBotでは、表示される文字サイズがボリュームボタンで変更できるので、見やすいサイズに簡単に変更できる。日本語の入力はできないが、ファイル名等は日本語でも化けずに表示される。インストールしたら、「local」で接続先を作っておけば良い。
4) 端末エミュレータを起動して、キーマップファイルを置換
端末エミュレーター上で、以下のコマンドを実行する。なお、「$ 」や「# 」は、シェルが表示するプロンプトなので、入力しない事。
$ su
# mount -o remount,rw /dev/block/mtdblock0 /system
# cd /system/usr/keychars
# mv pm8058-keypad.kcm.bin pm8058-keypad.kcm.bin.org
# cp /sdcard/keymap/pm8058-keypad.kcm.bin.remap ./pm8058-keypad.kcm.bin
# chmod 644 pm8058-keypad.kcm.bin
# chown root.root pm8058-keypad.kcm.bin
# reboot
以上で、Xperiaが再起動する。これで、置換終了。
=====
入力可能となる文字等
入力文字 キー操作 コメント
------------------------------------------------------------------------
ETX(0x03) ALT+SHIFT+C Ctrl+C シェル(sh)で、フォアグラウンドプロセスの強制終了
EOT(0x04) ALT+SHIFT+D Ctrl+D シェル(sh)で、入力の終了(End of file)
SUB(0x1a) ALT+SHIFT+Z Ctrl+Z シェル(sh)で、フォアグラウンドプロセスの一時停止
ESC(0x1b) ALT+SHIFT+Q エスケープ
< ALT+SHIFT+,
> ALT+SHIFT+.
[ ALT+SHIFT+K ブラケット(bracket)
\ ALT+SHIFT+B
] ALT+SHIFT+L ブラケット(bracket)
^ ALT+SHIFT+O カレット(caret)
` ALT+SHIFT+' バッククォート
{ ALT+SHIFT+N ブレース(brace)
| ALT+SHIFT+? パイプ(vertical bar)
} ALT+SHIFT+M ブレース(brace)
~ ALT+SHIFT+P チルダ (ConnectBotの場合、ALT+DELETEでも入力可能)
------------------------------------------------------------------------
※ ALTキーは「■」マークのキー
Xperia pro/mini proは、QWERTYキーボードが付いていて、なかなか便利。通常のAndroidアプリを使う分には、もう完璧って感じなのだが、ベースになっているLinuxにアクセスする場合、ちょっと困った事になる。標準状態では、キーボードから入力できない記号が多いのだ。端末エミュレータ等を使用する場合に、シェル(sh)で頻繁に使用するパイプ"|"や、リダイレクト"<"・">"・">>"といった記号がキートップに無く、非常に苦労する。
このままだと不都合な事が多いので、キーマップの修正にチャレンジしてみた。
技術的な詳細は、下記のZIPファイル内の「キーマップ技術情報.txt」を参照されたい。
バイナリーエディタでファイルの中身を変更して書き戻すだけなので、この情報が理解できる人なら、好みに合わせていろいろ変えてみる事も容易だろう。
で、結論として、「かなりうまくいった」ので、公開することにする。「かなり」ってのは、つまり、ダメな部分もあったのだ。残念な事に、入力方法に「POBox Touch」を選んでいる場合、この変更が有効にならない。どうやら、POBox Touchは、直接、キーコードを読み込んで、独自に物理キーの処理を行っているようだ。入力方法に「nicoWnnG IME」や「ATOK」を使用すれば、問題なく記号類が入力できるようになるので、入力方法を適宜選んで使ってもらえば良いだろう。
以下に、修正したキーマップ定義の導入方法を示す。
なお、修正されたキーマップを導入した場合に入力できる記号類は、文末に記載したので、そちらを参照の事。
※注意事項
以下、すべて自己責任で行うこと。端末が動作しなくなったり、何らかの動作不良となった場合でも、一切の保証は行わないので、そのことを了承した上で操作する事。
1) 準備
この作業は、要rootedだ。Xperia pro/mini proは、事前に「root取り」を行っておくこと。
やり方は、以下を参照の事(ブートローダーのアンロックは不要!)。
[NEW][26/OCT/2011][ROOTING] Xperia 2011 Easy Rooting Toolkit [v1.0](zergRush Exploit)
http://forum.xda-developers.com/showthread.php?t=1320350
簡単に手順を示しておく(要Windows PC)。
a) 上記のサイトから、DooMLoRD_v1_ROOT-zergRush-busybox-su.zipをダウンロード
b) Xperia側でUSBデバッグを有効化した後、PCに接続(PC Companionは起動しない事)
c) PC上で入手したzipファイルを解凍し、フォルダ内の runme を実行
※上記以外の方法でrootを取っている場合、busyboxが未導入なら導入して、/system/xbinに
busybox --install -s /system/xbin
とでもして、リンクを作っておくこと。
2) 修正版キーマップ用ファイルをXperia側へコピー
先ず、以下のZIPファイルをPC上でダウンロードして、解凍しておく。
MK16i-SK17i-key-remap.zip
Xperia側のmicroSDに、「keymap」フォルダーを作成し、上記のZIPファイル内の以下のファイルをコピーする。
pm8058-keypad.kcm.bin.remap
3) 端末エミュレーターのインストール
以降の操作は、Xperia側で端末エミュレーターを使って行うので、端末エミュレーターをインストールしておく。お薦めは…
ConnectBot
このConnectBotでは、表示される文字サイズがボリュームボタンで変更できるので、見やすいサイズに簡単に変更できる。日本語の入力はできないが、ファイル名等は日本語でも化けずに表示される。インストールしたら、「local」で接続先を作っておけば良い。
4) 端末エミュレータを起動して、キーマップファイルを置換
端末エミュレーター上で、以下のコマンドを実行する。なお、「$ 」や「# 」は、シェルが表示するプロンプトなので、入力しない事。
$ su
# mount -o remount,rw /dev/block/mtdblock0 /system
# cd /system/usr/keychars
# mv pm8058-keypad.kcm.bin pm8058-keypad.kcm.bin.org
# cp /sdcard/keymap/pm8058-keypad.kcm.bin.remap ./pm8058-keypad.kcm.bin
# chmod 644 pm8058-keypad.kcm.bin
# chown root.root pm8058-keypad.kcm.bin
# reboot
以上で、Xperiaが再起動する。これで、置換終了。
=====
入力可能となる文字等
入力文字 キー操作 コメント
------------------------------------------------------------------------
ETX(0x03) ALT+SHIFT+C Ctrl+C シェル(sh)で、フォアグラウンドプロセスの強制終了
EOT(0x04) ALT+SHIFT+D Ctrl+D シェル(sh)で、入力の終了(End of file)
SUB(0x1a) ALT+SHIFT+Z Ctrl+Z シェル(sh)で、フォアグラウンドプロセスの一時停止
ESC(0x1b) ALT+SHIFT+Q エスケープ
< ALT+SHIFT+,
> ALT+SHIFT+.
[ ALT+SHIFT+K ブラケット(bracket)
\ ALT+SHIFT+B
] ALT+SHIFT+L ブラケット(bracket)
^ ALT+SHIFT+O カレット(caret)
` ALT+SHIFT+' バッククォート
{ ALT+SHIFT+N ブレース(brace)
| ALT+SHIFT+? パイプ(vertical bar)
} ALT+SHIFT+M ブレース(brace)
~ ALT+SHIFT+P チルダ (ConnectBotの場合、ALT+DELETEでも入力可能)
------------------------------------------------------------------------
※ ALTキーは「■」マークのキー
コメント
_ ☆ぬ~☆ ― 2011/11/23 14:17
_ S.Poe ― 2011/11/23 22:55
☆ぬ~☆さん、お役に立てたようで何よりです。
pro/mini proで、キーマップを書き替えて使いたいって人は、
全然いないのか…とか思っていたので、反応があって、ちょっと嬉しいです。
pro/mini proで、キーマップを書き替えて使いたいって人は、
全然いないのか…とか思っていたので、反応があって、ちょっと嬉しいです。
_ くべるトゥず ― 2011/12/23 06:49
こんにちは、ドイツ語配列(qwertz)のmini proを使用しており、
いつもZとYを打ち間違えてはイライラとしていた者です。
キーマップを変更すればよいということはわかったものの、
具体的にどうバイナリファイルの中身をいじればいいのか、
途方にくれていたところ、S.Poeさんのリマップファイルを発見し、
早速ダウンロードさせていただきました。
入力文字を追加する、というS.Poeさんの趣旨からは
ずれた目的での利用で大変恐縮ですが、無事に
qwerty配列となり、喜びを噛みしめております。
もちろん、追加された記号も活用させていただきます☆
どうもありがとうございました!
いつもZとYを打ち間違えてはイライラとしていた者です。
キーマップを変更すればよいということはわかったものの、
具体的にどうバイナリファイルの中身をいじればいいのか、
途方にくれていたところ、S.Poeさんのリマップファイルを発見し、
早速ダウンロードさせていただきました。
入力文字を追加する、というS.Poeさんの趣旨からは
ずれた目的での利用で大変恐縮ですが、無事に
qwerty配列となり、喜びを噛みしめております。
もちろん、追加された記号も活用させていただきます☆
どうもありがとうございました!
_ S.Poe ― 2011/12/23 15:29
くべるトゥず さん、お役に立てたようで、幸いです。
ドイツ語配列のものでも、問題なく使えたんですね。なるほど…。
参考になる情報頂けて、感謝です。
ドイツ語配列のものでも、問題なく使えたんですね。なるほど…。
参考になる情報頂けて、感謝です。
_ takuya ― 2012/01/18 20:06
初めましていつも楽しく読ませてもらっています。緊急でご相談したいことがあります。今日xperia pro mk16iが届きました。b-mobileの1GB定額 talkingをさしても、APN設定が出てきません。理由に考えられることは何かありますか?
_ S.Poe ― 2012/01/19 08:42
takuya さん、xperia pro mk16i ご購入ですか。おめでとうございます。
いろいろ楽しんでくださいね。
で、b-mobileですが、もしかして、FOMA SIMのカードを逆挿ししてませんか? SIMを挿したときに、バッテリー側に切り欠きのある方が見える状態が正しい方向です(なんか、一般的には逆方向に挿すって感じだとは思いますが…)。
APNが設定できないってのは、SIMを認識できてない状況ですので、逆挿しでないなら、初期不良かもしれない…。
いろいろ楽しんでくださいね。
で、b-mobileですが、もしかして、FOMA SIMのカードを逆挿ししてませんか? SIMを挿したときに、バッテリー側に切り欠きのある方が見える状態が正しい方向です(なんか、一般的には逆方向に挿すって感じだとは思いますが…)。
APNが設定できないってのは、SIMを認識できてない状況ですので、逆挿しでないなら、初期不良かもしれない…。
_ (未記入) ― 2012/05/31 11:24
root化対応のファイルエクスプローラーなどのソフトで直接「pm8058-keypad.kcm.bin」を上書きrebootで書き換え出来ました。(元ファイルは念のため別名保存しました。)
_ (未記入) ― 2012/06/18 13:50
Android 4.0.4にUPするとこの方法は使用出来ません、格納ファイル群も別物ようです。解析をお願いいたします。
_ (未記入) ― 2012/06/19 10:31
>格納ファイル群も別物ようです。
すみません、関係性は見たところ無いです。Android 4.0.4のpm8058-keypad.kcmを開くとキーの割り当てを変更出来ますが、「ETX(0x03)」のコマンド群は駄目でしたので、何か紐付けが必要です。「| ALT+SHIFT+? パイプ」などの記号であれば割り当ては可能のようです。
すみません、関係性は見たところ無いです。Android 4.0.4のpm8058-keypad.kcmを開くとキーの割り当てを変更出来ますが、「ETX(0x03)」のコマンド群は駄目でしたので、何か紐付けが必要です。「| ALT+SHIFT+? パイプ」などの記号であれば割り当ては可能のようです。
_ はらぺこ ― 2013/01/09 00:59
Xperia pro
Droid Editを使っています。
jsとhtmlを書いていたのですが
<>{}がでない事に困っていたので助かりました。
Droid Editを使っています。
jsとhtmlを書いていたのですが
<>{}がでない事に困っていたので助かりました。
_ はらぺこ ― 2013/01/09 02:38
試してみたところ4.04ではシンボリックリンク作っても駄目そうですね。
上の方の方法はよく分からないですが、<>{}の割り当てどうにかできないかなぁ・・・
上の方の方法はよく分からないですが、<>{}の割り当てどうにかできないかなぁ・・・
_ S.Poe ― 2013/01/09 21:12
ICS(Android 4.0x)だと、キーマップのファイルがバイナリー形式ではなく、テキストファイルになっているので、ここのやり方ではダメなんですよぉ。
ICSで、キーマップを変更されている方は結構いるので、探してみて下さい。
ICSで、キーマップを変更されている方は結構いるので、探してみて下さい。
先日mini proを購入し、ハードキーのマッピングで困っていたところ、
こちらのサイトを見つけ活用させていただきました。
おかげさまでかなり使いやすくなりました。
有用な記事をありがとうございます。