| キーカスタマイズ(リマップ) |
| 2007.04.22.Sun / 23:27 |
配列全体の変更と、個別キーの変更とを扱います。これらのカスタマイズ結果はレジストリファイルとして保存可能で、以後はクリックひとつでカスタマイズ可能です。また窓使いの憂鬱がWindows Vistaでは動作しないことを受け、代替策を模索する向きも多いことでしょう。レジストリ書き換え型のリマップはVistaでも可能です(ただし複雑なキーバインドなどは望めません)。 手許にある、いまお使いのキーボードは何配列のものでしょうか? そしてそれに適用している、Windows上でのキーボードドライバーは…? 大抵の場合、(ハード+ソフト)のキー配列というのは、(JIS+JIS)や(ASCII+ASCII)といった具合に一致しており、キートップの刻印通りに入力できるものです。 しかし、OSをインストールした直後に誤表示・誤認識されるのはよくありがちなことですし、その後の運用でUSBキーボードを接続した結果、配列を変えられてしまうこともあります。LogitechのSetPointに至っては、インストール時に否応無く、キーボードドライバーを上書きしてしまうバージョンもあります(*1)。 ところで、典型的なキーボード配列誤認識の症状としては、次のようなものが挙げられます。
さていずれにせよ、これらの不具合を解決するには、デバイスマネージャ経由で、キーボードドライバーを正しく指定し直せば良い訳です。ただしひとつ条件があり、この作業が行えるのは、PS/2キーボードを接続している時に限られます(VistaではUSBキーボードだけの環境でも可能のようです)。ご本家Microsoftに、画像入りの丁寧な説明があります(XP用/Vista用)ので、本記事では割愛します。 ただ誤認識の不具合の度に、面倒な配列変更作業を行うというのも不便です。またUSBキーボードしか無い2000/XP環境では、デバイスマネージャ経由でのドライバー変更は行えません。結局この変更作業とは、使用するキーボードドライバーのDLLファイル(*2)名を、レジストリの該当部分に指定することそのものです。それ故、直接その部分を操作することで容易に変更できますし、またREGファイルとして保存しておくことで、今後はワンクリック+再起動(XPなら再ログオン)で配列変更が可能です。下記の破線内のテキストを、メモ帳などのテキストエディタにコピー&ペーストし、拡張子を.REGとして任意の名前で保存すると良いでしょう。
ご覧のように、JIS配列に変更するときにはOverride関連の項目も必要ですが、ASCII配列に変更するときには、Layer〜の項目だけで構いません。汎用性を考えると、1.のレジストリを保存し、Layer〜の項目を106/101と書き換えて使い分けると良いでしょう。なお、各項目の詳しい解説はKB102989にあります。 ところで"kbd101.dll"を適用する場合、日本語入力切り替えは、ASCII配列のAlt+`(JIS配列のAlt+半角/全角)で行うことになります。この2アクションを面倒と感じるならば、"kbdax2.dll"というものもあります。こちらは日本語入力切り替えが右Altの1アクションで可能であり、それ以外は"kbd101.dll"とほぼ同じレイアウト(*3)で、日本でのASCII配列使用者に広く愛用されているようです。 ただ拙別記事(霧の晴れない東南部)で触れているように、メインキーボード部最下段右半分のキー位置というのはとかく流動的で、私見ながら、右Altが押し易いとは到底思えません。しかし一つのキーボードを使い続けるのなら、それも些細な問題なのかもしれませんね。皆さんは如何思われますか? リマップの目的は人それぞれですが、圧倒的に多いのはCtrl⇔CapsLockとEsc⇔半角/全角の入れ替えで、UNIX系OSの操作が長い人ほど、この変更を好まれるようです。他にJIS配列のスペースキー両脇に控える無変換変換カタカナ ひらがななども、一等地の割には遊休しがちで、代わりに需要の高いEnterShiftCtrlWin半角/全角などに変更されているケースを散見します。 さて、リマップの方法は、次の2つに大別されるでしょう。
本稿では2.のレジストリ書き換え型を扱います。レジストリ改変時のお約束として、不用意な値操作は重大なシステム障害を招く可能性がありますので、各自のスキルと責任においてご利用ください。また、今回は特にキー配列変更というカスタマイズの性質上、共用や社有のPCにおける無断改変は絶対に避けるべきです。 さて、早速どちらかのソフトを起動してみましょう。なおVista環境では、実行ファイルを右クリック ⇒ 管理者として実行 を選択し、権限を昇格させる必要があります(重要)。操作手順はRemapKeyなら、下段のリマップされるキーに、上段のリマップしたいキーをドラッグアンドドロップし、ファイル ⇒ 保存して終了 ⇒ 再起動 です。ChangeKeyなら、リマップされるキーをクリックすると、もう一つキーボードウィンドウが表示されますので、リマップしたいキーをクリック ⇒ 登録 ⇒ 現在の設定内容で登録します ⇒ 再起動 です。 なお、両者ともレジストリ書き換えのフロントエンド、つまり視覚的・直感的に操作を解り易くした、登録代行ツールとして動作しているに過ぎません。よって設定を登録した後は、該当部分をREGファイルとして書き出しておけば、今後はこれらのツールを使わずとも直接カスタマイズ可能で、これは先の配列変更の時と同じです。また、レジストリ変更を反映するためには、再起動が必要です。
■ カスタマイズ結果の統合保存および再導入 前述2か所のレジストリ項目は、1つのREGファイルに統合して、%SystemDrive%(Windowsをインストールしたドライブ)以外の任意の場所に、任意の名前でバックアップしておくと良いでしょう。REGファイルとして認識させるためには、テキスト1行目に"Windows Registry Editor Version 5.00"や"REGEDIT4"(小文字不可)の記述をお忘れなく。 このファイルが最も活躍するのは、クリーンインストール直後でしょう。レジストリ内容をシステムに統合し、カスタマイズを反映させるには、単純にファイルをクリックして、統合確認のダイアログに答えるもよし。BATファイルに "REGEDIT.EXE /S KeyLayout.REG" と書いて、サイレント実行するもよし。貴方次第です(KeyLayout.REGは保存時の任意の名前でフルパスで記述のこと)。 ■ その他のリマップ方法 究極の方法としては、土台となるDLLファイルを、直接自分の好みに書き換える手段もあります。ですが手作業で行う方法は、バイナリーエディターやスキャンコード(*5)の知識が必要なうえ、WFPをオフにするかセーフモードにしてファイルを置き換える必要があり、幾分イリーガルな方法で、万人にはお薦め出来ません。 正統的には、Microsoft純正のキーレイアウトDLL作成アプリケーションMicrosoft Keyboard Layout Creatorを利用します。Windows Vistaにも対応した、最新のVer.1.4が適当でしょう。使用方法や作成したDLLの適用方法などはマニュアルに詳しく、英語とはいえ平易な文章ですので、そちらを参照すると良いでしょう。 (*1) |
| 電脳雑記 / CM (2) / TB (1) / PAGE TOP△ |
| COMMENT TO THIS ENTRY |
|
176Lu さま - from Everyday People -
こんにちは。ともあれ問題解決おめでとうございます。 - from 176Lu -
|
|
|
|
Windows用の106/109キーボードだと、Caps LockがAの左に、C
2009.05.20.Wed .No1 / プラスα空間 / PAGE TOP△ |


