PR
PC

Windows10環境で日本語キーボードと英語キーボードを同時に使用する方法

仕事でWindows10のノートパソコンを使っているのですが、カスタマイズができないので日本語配列のキーボードです。一方、慣れの問題で個人で購入するキーボードは英語配列を好んで使っています。キーボードをBluetooth接続でWindows 10のノートパソコンに接続する場合、言語設定でキーボード配列を変更することで英語キーボードを使用することができるのですが、再起動が必要です。例えば、一時的に会議などでノートパソコンのみを持って移動するとき毎回再起動するのは非効率なので、困っている人もいると思います。

ということで、再起動することなく日本語キーボードと英語キーボードを同時に使えるように設定したので、方法を共有したいと思います。レジストリを編集しますので、自己責任でお願いします。

前提環境

今回試した環境は、日本語キーボードを備えたノートパソコン(VAIO SX14)とBluetooth接続した英語キーボード(Logitech MX Keys Mini)を使いました。また、ノートパソコンのOSはWindows 10 Pro 22H2です。通常はノートパソコン(日本語キーボード)とBluetooth接続した英語キーボードは常に接続して英語キーボードをメインで使っています。その状況でノートパソコンでタイプすると日本語配列に合わせた文字が入力できますし、Bluetooth接続した英語キーボードでタイプすると英語配列に合わせた文字が入力できます。

日本語キーボードと英語キーボードを同時に使用する方法は多くの人が公開していますが、Windows 10 22H2以降のバージョンでは一部設定方法が異なるようです。

VAIO SX14(日本語キーボード)
Logitech MX Keys Mini(英語キーボード)

設定方法

上記の前提環境で成功した手順をメモとして残しておきます。動作イメージとしては、通常はノートパソコンに英語配列の外付けキーボードを接続して英語配列が正しく使えるようにWindows10を設定しています。ただし、日本語配列のノートパソコン内蔵キーボードをタイプしたときには(変更したレジストリによりOSが日本語配列キーボードとして認識することで)日本語配列も正しく動作します。

デバイスマネージャーでキーボードのIDを確認

デスクトップ下にあるのWindowsマークを右クリックして「デバイスマネージャー」を開くとデバイスの情報を参照できるので、ここからノートパソコン内蔵キーボードのID情報を確認・メモしてください。ノートパソコン内蔵キーボードはキーボードの下に「PC/AT エンハンス PS/2 キーボード(101/102 キー)」と表示されています。BluetoothやUSBで接続されたキーボードはHIDキーボードデバイスとして表示されます。対象のキーボードを右クリックしてプロパティを開きます。

詳細のデバイスインスタンスパスを選ぶと表示される値をメモしてください。後でこのデバイスのレジストリを編集する際のID情報として必要になります。

設定画面で標準キーボード配列設定を変更

Windows10の設定から「時刻と言語」、その中の「言語」を開くと以下のような設定画面が開くので、ここで一番したの日本語のオプションをクリックしてキーボード配列を変更します。

言語のオプションを開くとその中に「レイアウトを変更する」ボタンがあるのでこれをクリックするとその右にあるような「ハードウェアキーボードレイアウトの変更」画面が表示されて日本語キーボードと英語キーボードを選択することができます。ここでは英語キーボードを選択します。その後再起動するとBluetooth接続した英語キーボードの配列通りに正しく入力できるようになりますが、ノートパソコンを使うと日本語ではなく英語配列として間違った文字が入力されます。

レジストリエディターでキーボード関連設定を変更

Windowsマークを右クリックして「ファイル名を指定して実行」すると任意のプログラムを実行できるので、「regedit」と入力してOKを押すとレジストリエディターを起動できます。ここでの変更はシステムに影響を与える影響があるので、不安であればレジストリをバックアップ後に次の作業を実行することをお勧めします。

レジストリエディターで「コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Service\i8042prt\Parameters」を開きます。他サイト説明によると、どうもここにWindowsデフォルトのキーボード関連設定が保存されていて、英語キーボードとの共存ができなくなっているようです。ここでは、この中の「OverrideKeyboardSubtype」と「OverrideKeyboardType」を削除してください。名前を右クリックして「削除」することで削除可能です。この二つの情報があると、接続されている日本語キーボードや英語キーボードの配列に関わらずこの設定でキーボード配列情報が上書きされてしまうようです。この場合、OverrideKeyboardSubtypeが0でOverrideKeyboardTypeが7ですが、これは英語キーボード配列を意味しています。

日本語配列の内蔵キーボードを使用した際に正しく日本語配列と認識させるために、同じくレジストリエディタで設定変更します。最初にノートパソコン内蔵キーボードのID情報を調べましたが、「コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\調べたID情報\Device Parameters」を開きます。ここでは、この中に「OverrideKeyboardSubtype(DWORDで”2″)」と「OverrideKeyboardType(DWORDで”7″)」を追加します。ウィンドウ右側のエリアで右クリックして「新規」-「DWORD(32ビット)値」を選び、値を追加してください。追加すると、以下のようになります。

他サイトでは、「KeyboardSubtypeOverride」のようにOverrideが最後に付くレジストリ名を追加する手順を説明しているケースが多いですが上手くいきませんでした。この手順がWindows 10 22H2以降で使えないという情報もあったので、22H2でキーボード管理の仕様が変わったのかもしれません。この記事の手順も今後のアップデートで使えなく可能性はあるのでご注意ください。

レジストリエディターで設定変更後、ノートパソコンを再起動してください。再起動後にメモ帳などで文字入力すると、ノートパソコン内蔵の日本語キーボードとBluetooth接続した英語キーボード両方でキーボードのレイアウト通りに文字入力できると思います。

スポンサーリンク

コメント

  1. OverrideKyboardSubtype ですが、eが抜けてるようにみえます。Kとyの間です。使えないという情報の理由はこのeじゃないかと思います。