「Nape」のキーマップ変更(カスタムファーム作成)ガイド

「Nape(ネイプ)」はZMK firmwareを使用しています。ZMKのキーマップ編集にはいくつか方法がありますが、NapeではGitHubとKeymap Editorを使用した方法を推奨します。
GitHubアカウントがない場合はこちらから作成して、ログインしてください。
GitHub・Keymap Editorのセットアップ
Napeのデフォルトファームウェアの設定をまとめたリポジトリはこちらです。
このリポジトリを自分のアカウントでフォークしてください。


フォークしたリポジトリの「Actions」タブをクリックします(自分のアカウントの画面であることを確認してください。
「I understand my workflows, go ahead and enable them」をクリックします。


KeymapEditorにアクセスします。

「GitHub」を選択したあと「Login with GitHub」から自分のGitHubアカウンtのでログイン。以下の画像の通り進めます。





Keymap Editorの編集画面が表示されればOKです。

キーマップを編集する
注意事項

キーマップを変えるには、対象のキーをクリックします。
各キーにはBehavior(動作の種類)とParameters(動作の設定)が割り当てられており、これらを変更することでキーの役割が変えられます。Napeのデフォルトファームウェアで主に使っているもの・代表的なものを表で簡単に解説します。

Behavior | 動作の種類 |
---|---|
&kp | キー入力 |
&mkp | マウスボタン入力 |
&to | レイヤー切り替え |
&mo | 押している間だけレイヤー切り替え |
&mt | 押しっぱなし(Hold)と短押し(Tap)で別のキー入力 |
< | 押している間(Hold)はレイヤー切り替え、短押し(Tap)でキー入力 |
&mod_mkp(カスタム) | 押している間(Hold)はキー入力、短押し(Tap)でマウスボタン入力 |
<_mkp(カスタム) | 押している間(Hold)はレイヤー切り替え、短押し(Tap)でマウスボタン入力 |
COMBOS(コンボ)
COMBOSタブでは2キー以上の同時押しに対して、Behaviorを割り当てられます。デフォルトファームウェアではKey2と3を同時押ししている間、スクロールレイヤーに切り替わります。

ZMKには他にもたくさんBehaviorや機能があるので、公式ドキュメントで調べてカスタマイズしてみてください。

カスタムしたファームウェアをビルド・ダウンロード
上部の「Save」→「Commit」とクリックすると新しいファームウェアのビルドが始まります。3〜5分ほどでビルドが完了するとチェックマークが表示されるのでクリックします。



遷移した先の画面でファームウェアをダウンロードします。

本体への書き込み方法は組み立て時の方法と同じです。
デフォルトレイヤーの変更
起動時のデフォルトの向きレイヤーを変更します。
フォークしたリポジトリのconfig/boards/shields/nape/Kconfig.defconfigを開きます。編集ボタンをクリックします。

defaultの値を起動時に設定したいレイヤー番号に変更します。「Commit changes...」をクリックします。


Actionsタブに移動すると自動でファームウェアのビルドが始まっています。完了したらダウンロードして本体に書き込んでください。


FAQ. レイヤー移動中にトラックボールの向きが変わってしまう
デフォルトでは8方向の向きに対応するため、トラックボールセンサーの標準ドライバ(zmk-pmw3610-driver)をカスタムしたものが適用されています。このカスタムドライバでは別レイヤーに移動中にトラックボールの向きが変わってしまうデメリットがあります(ただしスクロールレイヤーだけは向きが継承されます)。
複数レイヤーにまたがってトラックボールを使う必要がある場合は、カスタムしていない標準のドライバーを適用したブランチ(basic-driver)を使用してください。ただし、Napeの使用向きは1つに固定されます。
ブランチを「basic-driver」に変更します。

Napeの使用向きを設定するには「config/boards/shields/nape/nape.conf」を編集します。「CONFIG_PMW3610_ORIENTATION_270=y」の「270」が角度です。お好みに変更してコミットしてください。

角度 | 記述 |
---|---|
0°(USBポートが下向き) | CONFIG_PMW3610_ORIENTATION_0=y |
90°(以降時計回り) | CONFIG_PMW3610_ORIENTATION_90=y |
180° | CONFIG_PMW3610_ORIENTATION_180=y |
270° | CONFIG_PMW3610_ORIENTATION_270=y |
コミットすると、Actionsタブでビルドが自動開始しますので、完了したら完成したファームウェアをダウンロードして書き込んでください。