エルゴノミックな自作キーボード Dactyl Manuform のキーマップをカスタマイズした話

先週 自作キーボードの Dactyl Manuform を作った話 を書きましたが、自作キーボードの醍醐味といえばやはりキーマップのカスタマイズです。

自分の用途や手癖に合わせて自由にキーを並べ替えたり、複数のキーを1つにまとめてショートカット専用キーを作ったり、マクロを組んでもっと高度なことなんかもできるそうです、無限の可能性と沼みの深みを感じますね。

そういうわけで今日は、Dactyl Manuform 4x5 用にカスタマイズしたキーマップについて書いてみます。

さて、完全に主観ですが、自作キーボード界隈にはソフトウェアエンジニアが多い(?)ようで、なんとなくコーディング向きのキーマップが多い気がします。

僕の場合、キーボードを使う仕事は文書作成が7割、表計算2割、社内向けWebページ更新1割という感じなので、そんな事務仕事に向いたキーマップを目指してカスタムしてみました。

キーマップカスタマイズの詳しい方法については、QMKファームウエアの公式ガイドを読み解きつつ頑張りました。

docs.qmk.fm

キーマップのコンセプト

  • QWERTY配列は変えない
  • 日本語ドキュメントの打ちやすさを重視したい
  • Excelの使いやすさも考えたい
  • 記号はほどほどに覚えやすければOK

ちなみに職場のパソコンはWindowsで、ULE4JISという日本語環境で簡単にUS配列キーボードを使えるようにするソフトを入れています。

github.com

QMKファームウェアはUS配列で設定することになるので、これを入れるだけで記号の置き換えとか考えずに使えるのはありがたいです。

Dactyl Manuform 4x5 キーマップ 事務仕事エディション

こちらが、僕が2週間かけて錬成した事務仕事用の最強(当人比、暫定)キーマップです!

4x5版なので、40%キーボード相当と言うんでしょうか?キーが少なめなのでレイヤー機能*1をうまく使う必要があります。

それでは、このキーマップのこだわりポイントを解説していきます!

BASEレイヤー

長音符号をホームポジション圏内に置きたい

まず、長音符号をPの下に配置しました。

この配置とても気に入っています。「キーボード」とか打つ時の動線が格段に良くなります。

ついでにメール打つ時に頻出の「?」をその下に置きました。

EnterとBackspaceもホームポジション圏内に置きたい

僕は文章を書くときにかなり悩むタイプなので、Backspaceの打ちやすさは大事です。

前々から小指を伸ばして打つことに不満があったので、これを機に、同じく頻出のEnterと一緒に右手親指にアサインしました。

最初のうちは小指が右上を空振りがちでしたが、親指打ちに慣れるともう病みつきです。

Shiftの場所がちょっと気持ち悪い(慣れで解決)

Shiftが左手親指ゾーンにいますが、これが実際の配置だとRAISE/SPACEの真下あたりに来るので、普通に親指で打とうとすると窮屈です。

そこで、自然に手を置いた時にShiftキーに触れる親指の第一関節で打つようにしたところ、それが意外に良い感じで、慣れてしまえばこれで良いような気がしてきました。

RAISEレイヤー

英数/かな切り替えはMac方式が好き

英数/かな切り替えはMac方式が好きなので、もともとGoogle日本語入力のカスタムキーマップを使って変換→英数、無変換→かなに変更していました。

その上でRAISEレイヤーを利用して、スペース+Fを英数入力、スペース+Jをかな入力に割り当てています。

数字はテンキー配列が良い

数字行を配置するマップが多いようですが、僕はテンキー配列で入力したいのでRAISEレイヤーにテンキー配列を突っ込みました。

ふつうに使いやすいです。

左手でもカーソルキーを使いたい

右手にペンを持ちながらページ送りしたりとか、何かと左手でカーソルキーを操作したいことがあるので、RAISEレイヤーに左手用カーソルキーを付けました。

これがけっこう便利で、お気に入りポイントです。

LOWERレイヤー

記号はほどほどに覚えやすければOK

記号はあんまり悩んでも仕方ない気がしたので、なんとなく仲間っぽいものが近くに寄るようにしてみました。 $と¥とか、|と&とか。

あと、四則演算子は前述のテンキーに近いところに配置しました。

まとめ

はじめにコンセプトを決めておいたおかげで、こだわるべき所と妥協すべき所がはっきりして、かなりしっくり来るキーマップにすることができました。

やっぱり自分の用途に合わせてカスタマイズした道具というのは最高ですね。

界隈の慣習にならってLEDも取り付けてみたので、その辺りのこともこんど書こうと思います。

ところで、非ソフトウェア業界の人が自作キーボードに入門するのはまだ少しハードルが高めだなと感じました。

とくにQMKファームウェアのビルド周り、僕の場合自前のmacでビルドすると書き込んでも動きませんでした。

会社のPCでビルドしたら動いたので深追いはしませんでしたが、gccのバージョンとかが関係しているのかな...?

あと QMK toolbox もWindows上で使ってみようと思ったらシリアル通信関係っぽい謎のエラーを吐いて動かなかったり

f:id:at_you_key:20190117092806p:plain

現状ではハマりポイントを自力で抜けられるだけの力(勘と経験?)が必要かもしれません。

今後もっと自作キーボード界隈が盛り上がって、Arduinoの開発環境くらいにインフラが整って、もっとライトな層にも広く沼への入り口が開かれるといいなぁ。

※この記事はもちろん DactylManuform 4x5 で書きました

*1:レイヤー機能というのは、たとえば今回の場合だと「RAISE/SPACE」を押しながらタイプするとRAISEレイヤーのキーが入力され、同様に「LOWER」キーとの同時押しだとLOWERレイヤーのキーが入力できる機能です。