見出し画像

英語キーボードを日本語キーボードに近づける方法 その2


初めに

自作キーボード等の選択肢が英語キーボードの方が圧倒的に多いため、英語キーボードを使いつつ日本語キーボードに近づけようと言うのが趣旨です。

前回はキーマップ変更を実際には試してなかったので試しました。
結論から言うと、windowsで日本語キーボードとして認識させていれば上手くいきますがその辺もうちょっと詳しく。

windows上で英語キーボードを日本語キーボードと認識させる方法

「設定-時刻と言語」を開き、「言語-日本語のオプション」を開き、「ハードウェアキーボードレイアウト」で日本語キーボードを選んで再起動。

これにより、英語キーボードでも日本語キーボードと同じ記号入力方法になる。
例)SHIFT+2で"になる

ただしキーキャップの刻印と食い違うことになるので、そこを合わせたい場合は前回記事等参考に日本語キーキャップに交換が必要。

windows上で英語/日本語キーボードとして認識させてる際の仕様

英語キーボードとして認識させている時の仕様

VIAで下記3つのキーを指定しても、OS側で受け取ってくれないため使用不可(他にもダメなキーもあるかもしれない)
無変換 : KC_MHEN
変換 : KC_HENK
かな : KC_KANA

下記2キーについては使用可能
IMEOFF : KC_HANJ
IMEON : KC_HAEN

日本語キーボードとして認識させているときの使用

下記全て使用可能
無変換 : KC_MHEN
変換 : KC_HENK
かな : KC_KANA
IMEOFF : KC_HANJ
IMEON : KC_HAEN

よって、日本語キーボードとして認識させていれば無変換(KC_MHEN)や変換(KC_HENK)を使ってしまって問題無い。
英語キーボードとして認識させている時にはIMEOFF/IMEONキーを使って、IME側で機能割り当てすれば同じように使える。

極力英語キーボードを日本語キーボードっぽくする方法まとめ

キーボード選択

  • ISO配列(逆L字エンター)レイアウト
    キー総数は普通の英語(ANSI)キーボードレイアウトと変わらないため我慢出来るなら普通の英語キーボードでもOK

  • バックスペースキーを2キーに分割したレイアウトに出来ること(split bs)
    英語キーボード標準のバックスペースキーサイズ(2u)だと¥キー足りない。まあ殆ど使わないINSキーとかF13キーに割り当てる手もあるけど。

  • (追記、気づいてなかった・・・)右シフトキーを2キーに分割したレイアウトにできること(split right shift?)
    右シフトキーを分割出来ないと_キーが足りない。
    ただ、分割出来るものでも左側キーが長くて、右側キーが短いものしか無さそうなので、どうしてもちょっと違う形になってしまう。
    そもそも右シフトキー近辺って、右シフトも右ALTもAppキーも需要低いからそれらに割り当ててしまっても問題無さそう。

  • キーレウアウトが柔軟なものは、半田付け(hotswap未対応)のものが多いので注意、やっぱりhotswapの方が嬉しいよね
    zoom75だと逆L字エンターキーとsplit bsは問題無さそう。

OS上でのキーボード認識は日本語キーボードとする

これでSHIFT+2で"になる(その他記号も日本語キーボード準拠に)

キーマップ

下記画像ではALTキーを単発で押したら無変換キー/変換キーになるように設定。
winキーやappキー潰して無変換キー/変換キーにするのももちろんあり。好みで設定!
なおsplit bsやsplit right shift対応キーボード持ってないからそこについては設定して無いし試すことも出来て無い。

スペース左のキー : MT(MOD_LALT,KC_MHEN) 
  単発だと無変換キー、他のキーと一緒だと左ALTキー
スペース右のキー  : MT(MOD_RALT,KC_HENK)
  単発だと変換キー、他のキーと一緒だと右ALTキー

キーキャップ

日本語キーボードとしてwindowsに認識させている場合、英語キーボード用キーキャップだと印字されている記号と、実際に入力出来る記号が食い違う。
動作上は問題無いが気になる場合は、日本語キーボードの記号が印字されてるものを使用する。
具体的には前回記事参照、他にも色々あるけども。

備考

キーボード選択で全てを満たそうとすると、流石に選択肢が少なそう。
素直に日本語(JIS)配列のものを選んでしまえ、となってしまいますね。
Keychron K8Proとか。
大まかには下記かなーと感じました。

  • 変換キー・無変換キーが欲しい
    VIA/qmk対応なら対応可能、IME側の設定も必要だけど。

  • 逆L字エンターじゃないとどうしてもイヤだ
    ISOレイアウト使えるものなら大丈夫。
    そもそも小指でエンター押す人は逆L字じゃなくても問題無い可能性大。

  • 日本語キーボードの記号配列にしたい
    windowsの設定を日本語キーボードにすればOK。
    ただしキーが2つ分足りない(BSキーの左、右シフトの左)ため、物理的にキーを増やすか、キーマップ弄って対応が必要。

今回のを踏まえ、個人的に設定したキーマップ

趣旨とは異なるが、今回分かったことも含め個人的な要件を下記に設定。

  • 記号等は英語キーボード配列のままにしたい
    ->OSでの認識は英語キーボードとすればOK

  • カナ変換はファンクションキー使わずにホームポジションから近いキーを使いたい

  • capslockキーの位置にctrlを入れたい

  • 一番左下のctrlはそのままにしておきたい
    capslockキー位置のctrlにまだ慣れきってないため

  • winキーは他のキーと同時押しで使う(winキー+Lとか)が、winキー単発押しはしない

  • Appキーは要らない

  • capslockキーも要らなそうだがとりあえずどこかに残す

キーマップ

  • スペースの左のキー : MT(MOD_LALT,KC_HANJ)
    単発だとIMEOFFキー、他のキーと一緒だと左ALTキー
    英語キーボードでは変換・無変換が使えないのでIMEONとIMEOFFを割り当ててATOK設定で機能割り当てて対応

  • スペースの右のキー : MT(MOD_RALT,KC_HAEN)
    単発だとIMEONキー、他のキーと一緒だと右ALTキー
    英語キーボードでは変換・無変換が使えないのでIMEONとIMEOFFを割り当ててATOK設定で機能割り当てて対応

  • 左カーソルキーの左のキー : MT(MOD_RCTL,KC_CAPS)
    単発だとcapslockキー、他のキーと一緒だと右CTRLキー

  • Aキーの左のキー(標準だとcapslockキーのところ) : 左CTRLキー

その他

ATOKの設定で、IMEONキーとIMEOFFキーに機能割り当て

この記事が気に入ったらサポートをしてみませんか?