« Linuxログファイル全世代を連結するスクリプト(PowerShell、Perl) | トップページ | Wireshark 1.4.1の日付時刻表示バグ »

2010年12月 4日

日本語キーボードを英語配列で使うカスタマイズ

以前から取り組んでいる、右手の負担を軽くするキーボードカスタマイズをもう一段進めた。右手は、通常の文字や記号キーに加えて、マウス操作、カーソルキー、バックスペースキー、Enterキーなど、ホームポジションから離れて大忙しである。それが肩こりや腕の疲れの原因になっているのではないかというのが発想の発端。これまでに実施したカスタマイズはこの記事を参照。

窓使いの憂鬱からAutoHotkeyへ移行
http://raven.air-nifty.com/night/2009/05/autohotkey-33c0.html

今回は、英語キーボードへの移行を想定してカスタマイズを行った。英語キーボードはEnterキーや右シフトキーが、日本語配列に比べてキーひとつ分近い。ホームポジションを崩さずに打てるメリットがある。それに加えて、記号の配列が理にかなっている。アンダースコアはハイフンと同じキーである。パス名の空白の代わりとして、「-」や「_」を区切り文字に使うから、このふたつが同じキーで打てるのは合理的だ。かつ、右手小指を右下に動かす頻度が少なくなり、疲労軽減が期待できる。コロンとセミコロン、引用符と二重引用符も同じキーであり、意味的に分かりやすい。次のPCを買うときは英語キーボードを選択することにして、今のうちから英語配列に慣れておこう考えた。

日本語キーボードのPCを英語配列で使うには、キーボードのドライバを英語キーボードに変えればよい。工場出荷状態で既に「101/102 英語キーボードまたは Microsoft Natural PS/2 キーボード」と表示されているが、これは表示上の問題らしい。いったん「日本語 PS/2 キーボード (106/109 キー Ctrl + 英数)」に更新して再起動する。そのあともう一度「101/102 英語キーボードまたは Microsoft Natural PS/2 キーボード」に変えて再起動すれば英語配列になる。変換キー、無変換キー、ひらがなキー、バックスラッシュキー、円記号キーの5つが使えなくなる。IMEのオンとオフは、通常はAlt-`(全角/半角)で行う。

ところで私はモードレスのIME切替を実践している。ここで言うモードレスとは、状況(モード)を気にせずに操作ができるということである。Windows標準は、全角/半角キーでIMEをオン/オフにする。IMEがオンの時はオフになるし、オフの時はオンになる。これはモーダル(modal)である。いまどちらのモードにあるかを意識していなければならない。話は逸れるが、viもモーダルだ。表示モードと編集モードが分かれていて、いまどちらのモードかを意識せずにタイプすると思わぬ結果を招く。

私のキーカスタマイズは、無変換キーをIMEオフに、変換キーをIMEオンに割り当てている。IMEがオンかオフかに関わらず、変換キーを(何回でも)押せばIMEがオンになるし、無変換キーを押せばIMEがオフになる。IMEの状態をいちいち目で確認しなくてよいので、視線移動も減らせる。

英語配列ではこの2つのキーが使えないので、別のキーを探した。他のショートカットキーと極力重ならないように、Ctrl-EをIMEオフに、Ctrl-JをIMEオンにした。English、Japaneseと語呂合わせもできていて分かりやすい。この設定はATOKのキーカスタマイズで行う。ATOKはCtrl-Eをカーソル先頭移動や変換候補移動に割り当てているが、あまり使っていないので問題にならない。いざとなれば、カーソル先頭移動はCtrl-Aにでも割り当てればよい。候補移動はスペースとShift-スペースで十分だ。

Ctrl-JはFirefoxのダウンロードマネージャと重複している。ただし入力部分にカーソルがあるときは、ATOKのショートカットのみが効き、副作用がない。Escキーと全角/半角キーをレジストリ編集で入れ替えていると「`/~」を打つのが大変だが、頻度がきわめて少ないし、この記号をタッチタイプするさしたる理由もない。

以上のカスタマイズを実施して、いまこの記事を打っている。案の定、記号キーの位置を体が日本語配列で覚えていて、ミスタイプが多い。まあ、そのうち慣れるだろう。

(2010/12/05追記)
Ctrl-EはFirefox 4でPanoramaのショートカットに割り当てられた(下記記事)。これをIMEオフに使うのはまずい。Firefox 3.6でも、このショートカットは検索窓への移動に割り当てられていて、ブラウザ内の入力フォームで2回以上叩くと、カーソルが意図しないところに跳んでしまう。他に使えそうなCtrl-英字のショートカットが見つからない。

ホームポジションで右手小指をひとつ右に動かした「'」(日本語配列でセミコロン)は、ATOKで設定しても反応しない。使えそうなのは「[」(日本語配列で@)。右小指をホームポジションから離れたキーに頻繁に動かすのは、右手の負担を減らすという趣旨に反するが、当面これでやってみる。

Firefox Panorama Keyboard Shortcut Changed,New one is Ctrl/cmd+E
http://techdows.com/2010/09/firefox-panorama-keyboard-shortcut-changednew-one-is-ctrlcmde.html

(2010/12/09追記)
Ctrl-[はどうにも使いにくい。モードレス切替をあきらめて、Ctrl-スペースを日本語入力ON/OFFに設定した(トグル切り替え)。ATOKナビをカーソル位置に簡易表示して、現在のモードが分かるようにした。常に表示されているわけではないので、Ctrl-スペースを1~2回押してモードを確かめるという手間がかかる。

(2010/12/11追記)
どうやらCtrl-スペースでトグル切替する方が打鍵数が少なくなっている。モードレス切り替えの場合、これから英字を入力するというとき、無変換キーを3回くらい押していた。1回押せば十分なのだが、どうも3回押すリズムが身についてしまっている。念には念を入れてと言うことらしい。そういえば、Escキーで何かを取り消すときも、3回くらい押している。トグル切替の場合は、モードがどちらかをカーソル位置のATOKナビで目視確認する。最大で2回押せば目的のモードになっている。打鍵数が1~2回少ない。とはいえ、いまは新しいキー割り当てを確認しながら打っている状態だ。慣れてくると、以前のように同じキーをやたらと打つようになるかもしれない。

Ctrl-スペースのもうひとつのメリットは、スペースバーが大きいから、無変換キーや変換キーに比べて押しやすいことだ。英語キーボードにすればもっと楽になるだろう。Ctrl-スペースでの日本語ON/OFFが意外と理にかなっていることが分かったのは収穫だ。

|

« Linuxログファイル全世代を連結するスクリプト(PowerShell、Perl) | トップページ | Wireshark 1.4.1の日付時刻表示バグ »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« Linuxログファイル全世代を連結するスクリプト(PowerShell、Perl) | トップページ | Wireshark 1.4.1の日付時刻表示バグ »