見出し画像

VIA/QMKで英語キーボードを日本語キーボードに近づける方法

自作キーボードには殆ど日本語キーボードが存在しない。
どうしても日本語キーボードとなると選択肢がほぼ無くなってしまうため、
英語(ANSI)キーボードを使った方が良い。
ここでは英語キーボードを日本語キーボードに極力近づけるための設定メモを書いておく。


英語キーボードと日本語キーボードの違い

大体下記にまとまってる。

エンターキーの形が違う

ぱっと見で分かりやすい違い。
実は英語キーボードの方が右シフトとBSキーが大きく、そのためこの右手小指近辺のキー数と記号が異なっている。

スペースバーの両サイドが違う

英語キーボードには変換キー、無変換キー、ひらがな/カタカナキーが存在しない。その分スペースキーが長い。
このスペースバーの長さを理由にして英語キーボードを使っている人も多い(と思う)。

数字の1の左横キーが違う

日本語キーボードだと半角/全角キー
英語キーボードだと`/~キー
英語キーボードだとALTとこのキーを押すと日本語入力オン。
ALTを押さなきゃならないため、コレを理由に英語キーボードに移行しない人がいるらしい。

シフト+キーの記号が違う(数字キーと右手小指部分)

英語キーであっても、OS側で日本語キーボードと認識させると日本語キーボードと同じ記号が使える。
ただしキーキャップの印字と異なることになる。

例:英語キーボードの2キーは2/@印字だが、日本語キーボードして認識させている場合にシフト+2だと”が出力される

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

OSに日本語キーボードとして認識させる

これでシフト押しながら数字キーや右手小指まわりのキーを押した場合の記号が、日本語キーボードと同一になる。
ただしキーキャップ印字と食い違う。

日本語キーボードと同等の記号が印字されているキーキャップも存在するが、選択肢がごくごく少数。
プロファイル(高さやキーの形)や、色、素材(ABS/PBT/その他)の選択肢も当然殆ど無くなる。

あとはグループバイのものが殆どのため、買えるときに買わないとあとから入手は困難。

記号が印字されていないキーキャップを使えば食い違っている事は無くなるが、分かりにくい。キーキャップ選択肢はかなり多くなる。
あとは食い違っていても気にしないのも当然あり。この場合キーキャップ選択肢は多数。

キーの形が違う、大きさが違う(エンターキー、右シフトキー、BSキー)

右シフトキーとBSキーが大きい事そのものより、それによりキー数が日本語キーボードより少ない点がおそらく問題点。

別レイヤーにキーを仕込むことでFn+仕込んだ該当キーで対応で切るとは思うが、一手間多いのは間違い無い。
何とかしようと思うと、キー数自体増やすしかないわけだが、
自作キーボード(ベアボーン)ではこれをなんとかしてくれる物がけっこうある。
split backspace, split left shiftというやつ。
つまりはこれとか(現在入手不可能)。split spacebarが欲しいので、欲しかったな-・・・追加販売かv2待ち。

エンターキーは、いわゆるISO配列だと日本語キーボードと同じ逆L字型。
これをベースにキー配列変えるのも良いかもしれない。
ISO配列は日本語キーボードよりは自作キーボードの選択肢広め(ANSIよりは少ないが)
なお個人的にはだが右手小指で押せるのでANSI配列で何も困っていない。

スペースバーの両サイドが違う

スペースバーの両サイドのキー数が異なる。
キーマップのカスタムで対応可能だが、実はアプリでも何とかなる。

ALTキーだけを押すことは無いため、それで挙動を変えてくれるらしい。
(自分で使用したことはないが・・・)
このアプリだけでも十分便利そう。

ただ今回は同様のことがVIA/QMKでも可能なのでこちらについて記載。
とりあえず作ってみたキーマップとそれの説明。
動作未確認なので、動いた/動かなかった報告ください。

メインのキーマップ
  • スペースバー : LT(3,KC_SPC)
    短押しだとスペース、長押ししているときはキーマップをレイヤー3に切り替え

  • スペースバーの左隣のキー : MT(MOD_LALT,KC_MHEN)
    単押しだと無変換キー、長押しだと左ALTキーとして動作

  • スペースバーの1つ右隣のキー : MT(MOD_RALT,KC_HENK)
    短押しだと変換キー、長押しだと右ALTキーとして動作

  • スペースバーの2つ右隣のキー : LT(3,KC_KANA)
    短押しだとひらがな/カタカナキー、長押しだとレイヤー3にキーマップ切り替え。
    レイヤー3はスペースバーだけで足りてそうなので他のレイヤーか他の機能でも良いかもしれない。

  • Caps Lockとか使わんだろ・・・とは思いつつそのまま残し。長押しでレイヤ切り替えにするなりご自由に。

数字の1の左横キーが違う

日本語キーボードでは半角/全角キーのところ。
KC_LANG5らしいのでこれを割り当てれば・・・と思うがキー数が足りない問題が起きるためレイヤー切り替えを使う必要が出てくる。
なおKC_LANG5で動かないならマクロで対応可能と思われる。
でもそもそも変換キー/無変換キーあれば問題無いと思うんですけどどうでしょう?
個人的にはIME(ATOK使用中)設定でCTRL+スペースでIMEオンオフを割り振っているため全然問題無い。CapsLockキーを使うのも有りかと。

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