bouzuya.hatenablog.com

ぼうずやのにっき

QMK の Mod Tap を使う

毎週のように書いている気がするのだけど、またキー配列の話。

2017-09-01 に「押しやすいキーだけで構成すると 36 キーになる」という話を書いた。実はこの形のキーボードがあるようだ(想像しうるだいたいのものはある)。

……と、こういう流れできて、「あれ 36 って」と思い出した。どうやら ErgoDox EZ の 76 キーから Let’s Split の 48 キーへと向かってきた、ぼくのキー配列は minidox の 36 キーへと向かっているようだ。

36 キーは数字を含まない基本の 30 キーと親指部分の 6 キーだ。ここにぼくの必要なものを押し込めるだろうか。 modifier 4 レイヤー切り替え 2 スペースキー 1 。普通に考えると足りない。

この状況を打開するため、避けていた mod tap を導入することにした。

QMK 内で mod tap と呼ばれているこの機能 は、「窓使いの憂鬱」で SandS: Space and Shift という名称で呼ばれていたことで知った。 ErgoDox EZ のサイトでは dual-function keys として書かれている。挙動としては、押し続けると Shift などの modifier 、タップすると Space などの key として送られる。

良い点は 2 キーを 1 キーにするのでキー数を削減できることだ。良い場所に配置できることもそうかもしれない。悪い点は誤爆すること。タップのつもりが同時押しとして判定されてしまう、その逆もある。

とりあえず ErgoDox EZ で試してみた。v19 として gist に貼った 。なかなか良さそう。これで minidox (36 キー) に収まる。

A と Ctrl 、 Z と Shift 、 / と Shift を兼ねさせて節約する。 ; と Ctrl を兼ねていないのは CTL_T(OSL(L3)) のような単純な方法では動かないからだ。このあたりは余裕があればそのうちに書く。ソースコードを追えば分かるが、 QMK が特殊な処理をするキーコードをふたつ同時に指定してしまっており、動かない。

一日これを試してみたが、特に大きな問題はなさそうだ。ぼくのキー配列がまた前進 (?) したようだ。