パスワードを忘れた? アカウント作成
11980699 journal
日記

numaの日記: キーボード配列の設定変更 3

日記 by numa

日本語版Windows 7で、英語キーボード(厳密にはUS Englishキーボード。UK Englishキーボードは配列が違う)を使うための、現時点でのいちばん簡単な設定変更の方法をまとめておく。なお、Windows 8でどうなるかは、使ったことがないのでわからない。

  • Happy Hacking Keyboard公式サイトで公開されているツール「HHKBキー配列切替ツール」(プログラム名はHHKBCNG.exe)を入手して実行する。
  • CapsキーをCtrlキーとして使いたい場合、SysinternalsSuiteに含まれるツールCtrl2Cap(プログラム名はctrl2cap.exe)を実行する。 このツールはコンソールプログラムであり、コマンド プロンプトから実行する。
    プログラム起動時に、管理者権限がないので実行できないという旨のメッセージが表示される場合、次の手順で管理者権限を取得する。
    1. スタートメニューで、「プログラムとファイルの検索」の入力フィールドに「コマンド プロンプト」と入力する。(実際は「コマンド」だけで十分。)
    2. 検索結果として、当然ながら「コマンド プロンプト」が現れるので、そこにマウスカーソルを移動させて、右クリックでコンテキストメニューを表示させる。
    3. コンテキストメニューで「管理者として実行(A)...」を選択すると、コマンド プロンプトが管理者権限で起動される。(ウィンドウのタイトルが「管理者: コマンド プロンプト」になる。)

    なお、これを行うためには、ユーザーアカウントにAdministrator権限が必要ではないかと思うが、本当にそうかどうかは確認していない。 また、これを一度やったところ、その後起動されるコマンドプロンプトがみな管理者権限になってしまった。別にそれで問題ないので、そのままにしている。戻したい人はやり方を調べてくれ。 調べた結果をすぐ次の記事で公開した。

これらの設定はシステムを再起動しないと有効にならないので、必要に応じて再起動すること。

この方法の利点は、設定を元に戻したいときも同様の操作で戻せることである。また、Happy Hacking Keyboardに限らず、どのキーボードでも問題なく使える。実際、この文章はIBM Space Saver II Keyboardで打ち込んでいる。

実のところ、キー配列情報は、基本的にはデバイスドライバーで決まり、Ctrlキーについてはレジストリで管理されている。上記プログラムは、それを書き変えているだけ。 よって、キーを押したときに生成されるキーコードが同じなら、どのメーカーの、どのタイプのキーボードでも、同様に適用できるのだ。PS/2接続だろうが、USB接続だろうが、ノートPCの本体キーボードだろうが。

なお、コントロールパネルの「キーボードまたは入力方法の変更」で入力言語に「US」を追加する方式は、これとは違う動作をする。 コントロールパネル方式では、入力言語を「US」に切り替えればたしかに英語キーボードが使えるようになる。しかし、英語キーボードからは日本語が入力できない(仮名漢字変換が使えない)。日本語を入力したい場合は、入力言語を日本語(「Microsoft IME」なり「ATOK」なり)に切り替え、別途接続した日本語キーボードから打ち込む必要があるのだ。本当にやりたいのは、英語キーボード一つで、日本語入力を含めたすべてのキー入力ができることである。

ここで説明した方法なら、「Alt+`」(「Alt」と「`」(バッククォート)を同時に押す。バッククォートは日本語キーボードの「半角/全角」キーの位置にある)で日本語入力のON/OFFができる。もちろん日本語文字はローマ字入力で打ち込む。英語キーボードに慣れた手には、これが一番やりやすいのだ。なんせ、タッチタイプは英語で覚えたし、日本語を入力するようになった頃には、日本語キー配列を覚えるような悠長なことをしている余裕はなかったのだから仕方がない。さらにいえば、昔は「A」キーのすぐ左、いまの「Caps」キーの位置には「Ctrl」キーがあるのが普通だったのだ。(もっといえば、「Esc」は「Tab」のすぐ上にあった。)今から見れば、恐竜時代の話かもしれないけれど。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2015年03月27日 17時58分 (#2785921)

    私はデバイスマネージャからキーボードのドライバーを変更することで英語キーボードを使ってます。
    101キーボードなのでドライバーは「標準PS/2 101/102キーボード」と言うドライバーを使用しています。不具合もありません。
    選択時に互換性のあるドライバーのチェックを外して選択しました。

typodupeerror

192.168.0.1は、私が使っている IPアドレスですので勝手に使わないでください --- ある通りすがり

読み込み中...