NuPhyIO使ってみた(日本語のこととか)
NuPhy IOでの日本語のこととか。
日本語表示
画面の右隅の文字アイコンをクリックすると、日本語表示に切り替えられます。
英語レイアウトだと使えない文字キー
Windowsでキーボードのレイアウトに「英語キーボード(101/102キー)」を指定していると、特殊文字キーの赤枠の所が使えないよ。
キーボードのレイアウトに「日本語キーボード(106/109キー)」を指定すると使えるようになるけど…そうすると「SHIFT+2」が「"」になったり「P」キーの右横のキーが「@」になったりするので、「英語キーボード(101/102キー)」で赤枠のキーは使わないのが良いかも。
これってバグですよね!
いいえ、これは仕様です!
クライアントと開発者の間で、数限りなく繰り返されてきたやりとり…
こうなる理由
例えば、キーボードから「A」のキーを押したとします。するとキーボードからOS(Windowsとか)には「a」という文字ではなく、スキャンコードと呼ばれる「A」のキーがある場所のコードを返します。
OSはスキャンコードを受け取ると、レイアウト情報(101/102キーとか106/109キー)を見てスキャンコードの場所にある文字はなにかを調べて「a」という文字に変換します。
キーボードマッピングでは、実はキーの位置に文字ではなくスキャンコードを設定しているのです。
「無変換」「漢字」「変換」「かな」の問題では、マッピングツールでは、設定したキーにそれぞれのスキャンコードが設定されますが、スキャンコードを受け取ったOSの101/102キーレイアウトには「無変換」「漢字」「変換」「かな」のスキャンコードに対応する文字(コード)がないので変換することが出来ないのです。なので、無効なコードとして捨てられてしまいます。
CTRL+SPACEでIMEのON/OFFを切り替えるときの補足
前回、IMEのON/OFFをマクロで「CTRL+SPACE」していたのはこの辺りの理由からです。
Windows 環境で IMEのON/OFFを「CTRL+SPACE」するには、IMEの設定から選択すると変えられます。
ここを、変えたくなければ、マクロので入力するコードを「CTRL+SPACE」じゃなくて「ALT+`」にするといいかも。「`」文字は初期状態だと「Fn+ESC」で入力できるよ。
※この辺りの日本語の問題は、NuPhyIOに限らず、VIA やMelGeek Hiveそのほかキーボード付属のキーマッピングツールでも同じことが発生します。