Windows 10でJISキーボードとUSキーボードを併用する
Windows 10は通常、キーボードレイアウトを1種類しか選択できない(はず)。 今回JISキーボードとUSキーボードの両方を同時に利用したかったためゴニョゴニョすることにした。
環境
- OS
- エディション: Windows 10 Home
- バージョン: 22H2
- OSビルド: 19045.2251
- 併用したいキーボード
- JISキーボード: バッファロー BSKBW125BK ※ブラックフライデーで買ったゲーム用のサブ
- USキーボード: Kinesis Freestyle Pro KB900 ※こっちをメインで使っている
今回やった設定
いろいろ調べた結果、レジストリを書き換える手法が一番簡単だったのでその方法を採用した。
キーボードレイアウトの設定を日本語にしておき、USキーボードの方の設定をレジストリ(KeyboardTypeOverride
とKeyboardSubtypeOverride
)で上書きする。
どうやら i8042prt のレジストリキーに共通設定?のようなものがあり、これが個別の設定を打ち消してしまうようだった。個別設定を反映するために i8042prt の方の設定は消。
※ちなみに 日本語キーボードと英語キーボードの共存(Windows) _ てく2テック によると、Windows 11だとキーボードレイアウトに「接続済みキーボードレイアウトを使用する」の選択肢が増えており、これを選択しておくと i8042prt のレジストリにOverrideKeyboardType
・OverrideKeyboardSubtype
が生えてこないらしい。
手順
- Windowsの言語設定から、キーボードレイアウトを「日本語キーボード(106/109 キー)」に設定する
- デバイスマネージャーの「キーボード > HIDキーボードデバイス」から各キーボードの「デバイス インスタンス パス」を控える
- レジストリ登録のスクリプトを作成する(一旦 regedit してレジストリキーを確認しながら作成)(既存のエントリをエクスポートして改造したほうが安全)
|
|
- 「3.」で作成したスクリプトを実行
- PC再起動
これでJISキーボード・USキーボード両方を繋いだ状態でそれぞれ印字通りの入力ができるようになった。
先人たちの努力や関連情報
若干関係のない(脇道に逸れた)情報も混ざってる
- レジストリ関連
- Windows10で配列の異なる複数のキーボードを使う方法(再起動なし)
- 日本語キーボードと英語キーボードの共存(Windows) _ てく2テック
- USB英語キーボード付けた。(英語、日本語キーボードの共存、KeyboardTypeOverride) 202122
- レジストリの特定のキーと値を一部_全部を削除する方法 - Windows 10
- Happy Hacking Keyboardを買ってWindowsに設定したこと - Qiita
- キーボードごとにキーレイアウトを設定する - ふなWiki
- Windows で US 配列と JIS 配列を共存させたい - ほげほげー
- Windows 10 ノートPC内蔵JISキーボードと外付けUSキーボードとの共存 - Qiita
- ULE4JIS関連
- AutoHotKey関連
- 特定のデバイスにだけAutoHotKeyを適用させる手段関連
- HID Macros
- Windowsのデバイスドライバ関連
- その他
- 5ch: Happy Hacking Keyboard US Part50
- キーボード配列を変換するアダプター: かえうち