ZaruBallでキーマップを変更する(ZMK Studio)

2025/12/16

キーボード

 前回の記事でZaruBallの作成が終わりました。ここではZaruBallのセッティングメモを残しておきます。

この記事はあくまで個人的なメモなので、必ず本家のマニュアルをご確認の上作業をお願いします。

↓マニュアル

キーマップカスタマイズ方法

Keymap Editorでの設定方法は下記リンクを参照お願いします。

ZaruBallでキーマップを変更する(Keymap Editor)

ZMK Stdioのインストール

本家のマニュアルに何種類かキーマップの変更方法が紹介されてましたが、今回はZMK Stdioのアプリをインストールする方法でキーマップの変更をします。

ZMK Stdioのインストーラーは下記サイトにあります。

exeとmsiの2種類用意されてましたが、私はexeの方でセットアップしました。(恥ずかしながらmsiファイルの方をあまり詳しくないため。。。)
msiとexeの違いについては下記のサイトでまとめられてます。この記事を見る限りでは大規模で実施する場合に管理しやすいのがmsiっぽいですが、どちらも使う分には大きな差はなさそうに見受けられました。

ZMK Studioでキーマップの編集を行う

インストールが終わり、ZMK Studioを起動してしばらくすると下記のような画面が表示されます。

何も考えずに接続しようとすると下記のようにSecurtyエラーが接続が失敗してしまいます。

デフォルトのキーマップだとLayer1の下記赤丸の場所にStdiono Unlockボタンがあるため、事前にこちらを押下して、Secrityのロックを解除しておきます。 

何故かBlueToothの接続がうまくいかず、今回はUSBを接続して設定を変更しました。
何度か失敗しましたが、ZMK Studioを管理者権限で実行したうえでUSB接続にしたら下記のようになりました。
いろいろと変更できるのですが、今回はシンプルにCAPSキーをコントロールキーに変更します。画面下部に表示されるBehaviorはKey Pressを選択し、KeyはLeft Controlを選択します。
これでCAPS LOCKがctrlになりました。(HHKBを使っており、この場所にCtrlがあるのに慣れているので。。。)

キーマップの変更が終わったら保存ボタンを押下して作業は終了です。

(補足)Behaviorについて

今回は一番シンプルなKey Pressの設定を変更しましたが、Behaviorの設定を活用すればいろいろな処理ができます。

ZMK StudioのBehaviorの例
ZMK StudioのBehaviorの例

Behaviorの動作については公式ドキュメントに記載があるので詳細は下記公式サイトも参照お願いします。

参考までにサイトに記載されているBehaviorとZMK StudioにあるBehaviorを整理した表を示します。機能の説明についてはAIを活用している部分もあり、間違いがある可能性があることをご承知おきお願いします。



表示名 / 機能名 分類 機能の説明
behavior_sensor_rotate_mouse_wheel_down_up ZMK標準 ロータリーエンコーダー(回転ダイヤル)用の機能です。ダイヤルを回した際に、マウスホイールの上下スクロール入力を発生させます。
Bluetooth ZMK標準 Bluetoothのペアリングチャンネル切り替えや、アドバタイズの制御、接続情報の削除(クリア)などを行います。
Bootloader ZMK標準 キーボードをファームウェア書き込みモード(PCにUSBメモリとして認識される状態)に移行させます。
Caps Word ZMK標準 大文字入力を開始します。スペースやエンター、ピリオドを押して単語の入力が終わると自動的に解除されるインテリジェントなCaps Lock機能です。
enc_key_press 独自機能である可能性が高い -
External Power ZMK標準 キーボードの外部電源(搭載されている場合はLEDや液晶画面などへの給電)をON/OFFしてバッテリーを節約します。
Grave/Escape ZMK標準 1つのキーに2つの役割を持たせます。通常時は Escape として動き、ShiftやGUI(Winキー)と同時に押したときは `(バッククォート)を入力します。
ind_bat 独自機能である可能性が高い -
ind_con 独自機能である可能性が高い -
Key Press ZMK標準 すべての基本となる動作です。キーを普通に「1回押して離す」という通常のタイピング(アルファベット、数字、Enterなど)を担当します。
Key Repeat ZMK標準 このキーを押すと、直前に実行したキー入力やショートカット操作をそっくりそのままもう一度リピート(再実行)します。
Key Toggle ZMK標準 指定したキーを「押しっぱなし」の状態で固定します(もう一度押すと解除)。ゲームでの押しっぱなし移動などで活用されます。
Layer-Tap ZMK標準 1つのキーを2役にする機能です。短くポチッと叩くと「文字やスペース」、長押ししている間は「指定した裏レイヤー」に一時的に切り替わります。
MKP_EXIT_AML 独自機能である可能性が高い -
Mod-Tap ZMK標準 1つのキーを2役にする機能です。短く叩くと「通常の文字キー」、長押ししている間は「ShiftやCtrlなどの修飾キー(Modifier)」として動作します。
Momentary Layer ZMK標準 一般的なキーボードの「Fnキー」と同じ挙動です。そのキーを指で押さえている間だけ、指定した裏レイヤーに切り替わります。
Mouse Key Press ZMK標準 キーボードのキーを使って、マウスの「左クリック」「右クリック」「中クリック」などのボタン入力を発生させます。
mouse_move ZMK標準 キーボードの特定のキーに、マウスカーソルを上下左右に移動させる役割を与えるための設定です。
mouse_scroll ZMK標準 キーボードの特定のキーに、マウスホイールによる上下左右のスクロール動作を発生させる役割を与える設定です。
None ZMK標準 そのキーを完全に「無効化(押しても何も起きない空き地)」にします。誤操作で触りたくないキーの位置に配置します。
Output Selection ZMK標準 キーボードのデータ出力先(信号の送り先)を「USBケーブル」にするか「Bluetooth」にするかを明示的に切り替えます。
Reset ZMK標準 キーボードのシステムを強制的に再起動(ハードウェアリセット)します。
SandS 独自機能である可能性が高い -
Sticky Key ZMK標準 ワンショット修飾キーです。Shift等を1回ポチッと押して離した後の「次の1文字だけ」にShiftを有効化します(同時押しの必要がなくなります)。
Sticky Layer ZMK標準 ワンショットレイヤーです。1回押して離した後の「次の1キーだけ」を裏レイヤーの挙動にし、入力が終わると自動で通常画面に戻ります。
Studio Unlock ZMK標準 ZMK Studioとの通信接続を確立するために、キーボード側のセキュリティロックを解除する専用のBehaviorです。
tap_dance_0 独自機能である可能性が高い -
tap_dance_1 独自機能である可能性が高い -
To Layer ZMK標準 指定したレイヤーに完全に「引っ越し」します。もう一度別のレイヤー移動キーを押すまで、そのレイヤーのまま固定されます。
TO_layer_0 独自機能である可能性が高い -
Toggle Layer ZMK標準 1回押すとそのレイヤーに切り替わりっぱなし(ロック)になり、もう1回押すと元のレイヤーに戻る、トグルスイッチのような挙動です。
Transparent ZMK標準 選択したキーを「透明(透過)」にします。裏レイヤーでこのキーが押されたとき、1つ下のレイヤーに配置されているキーの機能をそのまま引き継いで実行します。
Mod-Morph ZMK標準(ZMK Studio編集不可) 特定の修飾キー(Shiftなど)が押されているかどうかで挙動を変化させるZMK標準の機能ですが、現在のZMK StudioのGUI上からは直接新規作成や編集ができません。あくまでZMK Studioで編集できないだけであり、Keymap Editorを使用したり、ソースコード(.keymap)を直接編集することで、ZaruBallでも問題なく設定・編集して使用することができます。
Macros ZMK標準(ZMK Studio編集不可) 1回のキー操作で複数の文字列やショートカットを自動実行するZMK標準の機能ですが、現在のZMK StudioのGUI上からは直接新規作成や編集ができません。あくまでZMK Studioで編集できないだけであり、Keymap Editorやソースコードの直接編集によって、ZaruBall側でも自由に実装・カスタマイズが可能です。
Hold-Tap ZMK標準(ZMK Studio編集不可) キーを押す時間の長さ(タップかホールドか)によって挙動を分けるZMK標準のベース機能ですが、現在のZMK StudioのGUI上からは直接新規作成や編集ができません。あくまでZMK Studioで編集できないだけであり、Keymap Editorなどの外部ツールやソースコードの直接編集を利用すれば、ZaruBallでも問題なく設定・変更が可能です。

(補足)ZMK Studioで編集した後にkeymapを編集する場合は注意が必要

この作業の後にkeymapの編集を直接していたところ、うまく反映できない事象がありました。公式ドキュメントに下記のような記述があったので、皆様も注意をお願いします。(下記内容は該当箇所をGoogle翻訳したものです。)
一般的に、ZMK Studioを使用する予定であれば、.keymap ファイルにはそれ以上の変更を加えないことをお勧めします(ただし、ZMK Studio内で使用する新しい空のレイヤーを追加する場合は除きます)。
詳細は下記記事参照してください。

自己紹介

はじめまして 社会人になってからバイクやプログラミングなどを始めました。 プログラミングや整備の記事を書いていますが、独学なので間違った情報が多いかもしれません。 間違っている情報や改善点がありましたらコメントしていただけると幸いです。

X(旧Twitter)

フォローお願いします!

ラベル

ブログ アーカイブ

QooQ