自作キーボード入門にErgo68を購入したのでレポ(前半)の続きです。
とはいえ公式ドキュメントを見ればもうつまづくところはほとんどないはずなので、主にdvorak配列利用者を対象とした小技をまとめたような内容です。
達成したいこと
- dvorak-qwertyで入力できること
- アルファベットと記号はdvorak
- 修飾キーを押下中のみqwertyに切り替わる
- qwertyにチューニングされたショートカット配列の恩恵を受けられる
- 日本語入力がdvorakJPで行えること
- ゲームやblenderなどのために、まるごとqwertyにスイッチできること
- カーソルキーの操作をラクに行えること
現在はwinではDvorakJ、macではKarabinerを使ってソフトウェアでこれを実現しているんですが、ハードでやれるならハードでやりたいと思っていました。
特にDvorakJは動作が不安定で、dvorak利用中に突然qwertyに切り替わり再起動までうんともすんとも言わなくなる等の現象が多発しておりストレスになっていました。
設計
こう書くとレイヤーは3つあれば十分そうですが、remapでの設定では以下の制約によりいくつかを諦めなければいけませんでした。
- 設定できるレイヤーは4つまで
- MOによるレイヤー切替時、押下中のキーにはキーを割り振ることができないため、修飾キー同士でレイヤーを共通化することができない
https://remap-keys.app/configure
さっぱりした設定を書くならものすごく使いやすいんですけど、ちょっとだけ勿体ない。
他にもキーリマップの方法はあるものの、一旦remapだけで完結することを目指して以下の形を目指すことにしました。
検討の結果、自分自身ではaltやwinなどのショートカットを使う機会がほとんどないので、ctrl(cmd)のみ対応することにしました。
なにかあればまるごとqwertyにトグルして対応すればOKという判断です。
できたもの
歴史的経緯でlayer2とlayer3が逆転していますが気にせず。
キーボードをUS配列として認識させる
このままだと「`」が入力できず、プログラミングにおいて不便を被ることになります。
なので以下の手順でUS配列として認識させました。
▼日本語の右側にある「…」をクリック -> 言語のオプション
▼レイアウトを変更する -> 英語キーボードを選択
※接続するすべてのキーボードがUS配列扱いになることに注意
日本語/英語の入力切り替え
当初は変換/無変換に割り当てていたんですが、US配列として認識させると変換/無変換を認識しなくなるので、ファンクションキーの端っこを間借りすることにしました。
▼すべての状態でF23をIME無効化、F24をIME有効化に設定
F13~F24は物理キーとして存在するキーボードはほとんど無いはずなので、事実上こういうソフトウェア上のキーアサインを自由に中継するのに使えます。便利。
TODO
おおむねやりたいことは達成できたんですが、修飾キー周りが万全ではないので、もっとリッチなキーマップツールを使って再挑戦する予定です。