torabo tsukiで複数のBT接続先ごとに使用するレイヤとマウスジェスチャを切り替える

こんにちは、ナナオです。 前回の記事で、キーボード上でマウスジェスチャを扱えるようにしました。 今回はそれを発展させて、BT接続先(Windows / Mac)ごとにレイヤとジェスチャを切り替えるようにします。 BTの接続先ごとの対応 前の記事でマウスジェスチャ自体は実装できたのですが、私の環境ではBT接続先ごとにOSを行き来することが多くあるので、それに対応します。 どのように切り替えを行うかですが、以下のような手順で実装しました。 BT接続先によってデフォルトレイヤを変更するマクロを実装する 接続先切り替えを行っているキーを、設定したマクロに置き換える Windows用のデフォルトレイヤーと別にMac用のデフォルトレイヤを定義する Windows向けに組んでいた複数のレイヤを、Mac向けに複製しました Windowsでctrlとして定義していた部分をcommandに変更するなどの異なる定義を行いました 1. BT接続先によってデフォルトレイヤを変更するマクロを実装する Behaviorの&btと&toを使って、BT接続先の切り替えとレイヤーの切り替えを一回でできるマクロを作成します。 (= 接続先を変えた瞬間に、使うキーレイアウトも切り替える) 私の場合、BT接続先は0と1がWindows用のプロファイル、2がMac用のプロファイルになっているので、以下のように設定しました。 &toに設定している5レイヤは別途定義します。 2. マクロに置き換え 接続先切り替えを行っているキーの設定を変更します。 私の場合、接続先切り替えを行うキーをまとめたレイヤーをlayer_4に定義しています。 3. Macのデフォルトレイヤを定義 keymap editorで「Duplicate layer」という項目を選択すると、現在定義されているものと同じレイヤーを複製することができます。 これを使って、Windows用に定義していたレイヤを複製します。 Windows用のデフォルトレイヤが0レイヤ、Mac用のデフォルトレイヤは5レイヤに定義しています。 マウスジェスチャのMac対応 Windowsの仮想デスクトップ起動のコマンドと、Macのミッションコントロールの起動コマンドは異なるため、別々で定義する必要があります。 変更ファイルは以下の通りです。 /config/keymap.keymap /boards/shields/torabo_tsuki_lp/torabo_tsuki_lp.dtsi /boards/shields/torabo_tsuki_lp/torabo_tsuki_lp_right.overlay keymap.keymap 以下のようにMac用のマウスジェスチャを定義します。 ついでに前回実装したWindows用のマウスジェスチャもわかりやすい名前に変更しておきます。 / { // ...中略... // Windows用とMac用の二つを定義する zip_mouse_gesture_for_win: zip_mouse_gesture_for_win { compatible = "zmk,input-processor-mouse-gesture"; #input-processor-cells = <0>; enable-eager-mode; prev_tab { pattern = <GESTURE_RIGHT>; bindings = <&kp LC(LS(TAB))>; }; next_tab { pattern = <GESTURE_LEFT>; bindings = <&kp LC(TAB)>; }; vdesk { pattern = <GESTURE_DOWN>; bindings = <&kp LG(TAB)>; }; vdesk_send_next { pattern = <GESTURE_UP>; bindings = <&kp LG(LC(LS(RIGHT)))>; }; }; zip_mouse_gesture_for_mac: zip_mouse_gesture_for_mac { compatible = "zmk,input-processor-mouse-gesture"; #input-processor-cells = <0>; enable-eager-mode; vdesk_prev { pattern = <GESTURE_RIGHT>; bindings = <&kp LC(LEFT)>; }; vdesk_next { pattern = <GESTURE_LEFT>; bindings = <&kp LC(RIGHT)>; }; vdesk { pattern = <GESTURE_DOWN>; bindings = <&kp LC(UP)>; }; vdesk_down { pattern = <GESTURE_UP>; bindings = <&kp LC(DOWN)>; }; }; // ...中略... }; torabo_tsuki_lp.dtsi layer_listenersの設定を変更して、マウスジェスチャのオンオフを設定するレイヤを定義します。 ...

2026年4月4日 · にあえん

torabo tsukiにマウスジェスチャを入れる

こんにちは、ナナオです。 前回、torabo-tsuki lp xsを購入したという記事を書きました。 ということで最近結構カスタマイズしているのですが、今回はマウスジェスチャを実装したので一旦記事にしておこうと思います。 リポジトリはこちらです。 GitHub - satodaiki/zmk-keyboard-torabo-tsuki-lp · GitHub マウスジェスチャの実装 変更するファイルは以下の4ファイルです。 /config/west.yml /config/keymap.keymap /boards/shields/torabo_tsuki_lp/torabo_tsuki_lp.dtsi /boards/shields/torabo_tsuki_lp/torabo_tsuki_lp_right.overlay ymlファイル以外のファイル更新の際は末尾にセミコロンを入れるのをお忘れなきよう…(私はこれで何回もビルド失敗しました) west.yml まずは必要なライブラリを追加します。 マウスジェスチャの実装は以下のライブラリを使用します。 GitHub - kot149/zmk-mouse-gesture: A ZMK module that converts combinations of 4-direction mouse strokes into key presses or any other behaviors. · GitHub また、特定のレイヤに入った時と離れた時に特定のBehaviorを呼び出すためのライブラリも使用します。 (これはマウスジェスチャの実装で定義されているBehaviorを呼び出すために使用します) GitHub - ssbb/zmk-listeners: ZMK module to invoke behaviors on certain events. · GitHub ライブラリの追加はwest.ymlに以下のように追記すればよいです。 manifest: remotes: - name: zmkfirmware url-base: https://github.com/zmkfirmware - name: sekigon-gonnoc url-base: https://github.com/sekigon-gonnoc # 以下の4行を追加 - name: kot149 url-base: https://github.com/kot149 - name: ssbb url-base: https://github.com/ssbb projects: - name: zmk remote: zmkfirmware revision: v0.3 import: app/west.yml - name: zmk-component-bmp-boost remote: sekigon-gonnoc import: west.yml revision: v0.2 - name: zmk-feature-status-led remote: sekigon-gonnoc revision: main - name: zmk-driver-paw3222 remote: sekigon-gonnoc revision: torabo-tsuki - name: zmk-feature-cdc-acm-bootloader-trigger remote: sekigon-gonnoc revision: v0.2 - name: zmk-feature-non-lipo-battery-management remote: sekigon-gonnoc revision: main # 以下の6行を追加 - name: zmk-mouse-gesture remote: kot149 revision: v1 - name: zmk-listeners remote: ssbb revision: v1 self: path: config keymap.keymap マウスジェスチャを定義します。 ...

2026年4月3日 · にあえん

torabo tsuki lp xsを買った

こんにちは、ナナオです。 前々から欲しかったキーボード、torabo-tsuki lp xsを手に入れました。 torabo-tsuki LP トラックボール付き無線分割キーボードキット - のぎけす屋 - BOOTH このすっきりとした佇まい… 美しいですね。 ただ、肝心のトラックボールケースがまだ届いていないので、完全体ではないです。 特徴 このキーボードの特徴は以下の通りです。 左右分割 完全無線(左右間のケーブル、PC側のケーブルが不要) トラックボール付き ロープロファイル カラムスタッガード 乾電池駆動 ZMKファームウェア対応 これだけの特徴がこの小さな筐体に詰まっています。 また、今回キーキャップにはアライさん作成のRidgeCap、キースイッチにはLofreeのPhantomを使っています。 RidgeCap (.stl) - アライ - BOOTH Phantom Low-profile POM Switches – Lofree Japan 実際の動きはどうなの? ここが一番肝心なところだと思います。 接続状況に関してはYouTubeやブログなどを見ると「安定動作しない」という意見があったので、一番不安でした。 しかし、この不安は杞憂でした。 4日ほど使っていますが、接続は非常に安定しています! torabo-tsukiは以前までQMKファームウェアを採用していたのですが、これがZMKファームウェアになったのが接続の安定性につながっているのだと思います。 レイヤーはどうしてる? とりあえず以下のようにデフォルトレイヤー + 4レイヤーの構成にしています。 一応いろいろ考えながらこの構成にしていますが、まだこの辺は検討中です。 まとめ とてもいい買い物ができたと思います。 ただまだカラムスタッガードに慣れていないので速度がそこまで出てないですが、これは慣れでしょう。。。 ということでまた次回~👍

2026年3月18日 · にあえん