自作キーボードChoco60 rev.2のキーマップを変更する
3ヶ月に1回ぐらい使用しているキーボードのキーマップを変更したくなるのですが、毎回やり方を忘れてしまうのでメモしておきます。
キーボードに書き込むファームウェアファイルを生成する
QMK Configuratorを使ってファームウェアファイルを作成します。ブラウザ上でGUI操作でキーマップをレイアウトすることができるので便利です。
KEYBOARD
というドロップダウンリストからデフォルトキーマップを選択します。私は、recompile_keys製のchoco60/rev2というキーボードを使用していますので、それを選んだ状態でLOAD DEFAULT
を押します。
画面下部に表示されているようにGUI上にデフォルトのキーマップが表示されます。このキーボードのコンセプトは「プログラマーに人気のキー配列を分割した 60% キーボード」なので、デフォルトのキーマップはHHKBと全く同じになっていますね。
私はHHKBも所持しており、気分によってこのchoco60と使い分けています。物理的なキー配置が同じなので、同じキーマップにしておくと切り替えが楽です。
あとはGUIでポチポチキーマップを変更します。できたら、COMPILE
を押すとジャガイモが焼かれ始めます、、、少し待つと焼き上がりますのでFIRMWARE
のボタンからダウンロードします。
ファームウェアをキーボードに書き込む
ここからは専用のソフトウェアをインストールしなければなりません。QMK Toolboxというソフトウェアです。
キーボードを接続するとこのような表示が出ます。
*** Atmel DFU device connected: ATMEL ATmega32U2 DFU (03EB:2FF0:0000)
この表示をもとに、画面上部にMCUを選択するドロップダウンリストからATmega32U2
を選択します。この選択が間違っているとファームウェアを書き込めないので注意が必要です。
Local File
には、さきほど作ったファームウェアの場所を指定します。
この状態で、キーボードのPCB上に物理的に付いているリセットボタンを押すとファームウェアの書き込みが始まります。
ちなみに私の使用しているchoco60/rev2は分割キーボードなので、左右両方この手順でファームウェアを書き込む必要があります。
書き込んだキーマップ
現在の私のキーマップはこのようになっています。
先程書いたとおりchoco60の物理キー配置はHHKBと全く同じなので、私はHHKBにもこのキーマップを適用しています。
特徴は、下のとおりです。
- 左手の親指でEnterとBackspaceを押すことができる
- Fn ー キーマップ上ではMO(1) が左手の手のひらの付け根で押せるように、左下にマッピングされている
- これはかなり変態なFnの押し方なのでは、と思われるかもしれませんが、ホームポジションから離れることなくFnキーを押すことができる最も良い方法だと思っています。とても理にかなっているので、すべてのHHKBユーザーにおすすめしたいです。
- 矢印キーをFn+h/j/k/lに割り当てており、Vimバインディングで操作することができる
- このキーマップの真骨頂です。先述の通りFnは左手の手のひらの付け根で押し、左手でhjklを押せば矢印を操作できる
- つまりホームポジションを崩すことなく、矢印操作ができる
- Media系の機能は使わないのですべて取り除いている
Fnを左手の手のひらの付け根で押すとLeft CtrlやLeft Shiftが押しづらい、という唯一の欠点を克服するために、HHKBデフォルトの矢印操作もできるようにしています。
Discussion