雨上がりの空

TONE/NOTEミニキーボード

はじめに

数年前に遊舎工房で自作キーボードキットを購入しました。
TONE&NOTEというロータリーエンコーダー付きの小さいキーボードです。
組み立て、動作確認は行っていたのですが、2020年に使っていた mac mini の HDD がクラッシュして以来、ビルド環境を再整備出来ていませんでした。
ブログサイトを改めてはじめたのをきっかけに、簡単な記事にまとめてみました。

IMG_5891.jpeg

AdobeXDのショートカットを割り当てようと思います

最近、AdobeXDを使い始めたのですが、TONEにショートカットキーを割り当てたいと思います。
どんなキーが使用頻度が高そうなのか考えてみました。

キー 機能
V 選択ツール
R 長方形ツール
E 楕円形ツール
Y 多角形ツール
L 線ツール
P ペンツール
T テキストツール
A アートボード
Z ズーム、虫眼鏡ツール
SHIFT + cmd + Y ライブラリ
cmd + Y レイヤー
cmd グループやコンポーネントの中のひとつの部品のみを選択するとき、マウス操作と合わせて使う。
cmd + 3 選択した部品を中心に拡大表示。
cmd + 0 全体を表示。
SHIFT 押しながら、矢印キーで移動すると10px単位で動く。
CTRL 押しながらクリックすると、右クリック。(macの場合)
ESC なにかを選択しているときは、選択解除。
cmd + C コピー
cmd + V ペースト

キーマップを作成してみた

TONE&NOTEは、8個のキーと1個のロータリーエンコーダーで構成されています。
「Fnキーを押しながら...」と同等の使用方法も可能です。
ちょっと悩みましたが、とりあえず下記のようにマッピングしてみました。
filename : keyboards/tone_rev2/keymaps/myxdkeys/keymap.c

    const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
      [0] = LAYOUT( 
          KC_T,          KC_R, G(KC_V), G(KC_C),
          LT(1, KC_ESC), KC_V, KC_LSFT, KC_LCMD
      ),
      [1] = LAYOUT( 
          G(KC_0), KC_L,    KC_Y,      KC_E,
          _______, G(KC_3), LSG(KC_Y), G(KC_Y)
      )
    };
    
    /* Rotary encoder settings */
    bool encoder_update_user(uint8_t index, bool clockwise) {
      if (clockwise) {
            tap_code(KC_UP);    //Rotary encoder clockwise
      }
      else {
            tap_code(KC_DOWN);  //Rotary encoder Reverse clockwise
      }
      return true;
    }    
    

簡単に解説するとKC_Tは、Tです。
G(KC_C)は、cmd + Cです。
興味深いのは、LT(1, KC_ESC)
押している間は、LAYOUT[1]のキー配列になります。押してすぐ放す、つまり普通にポンっとたたいたときは、ESCとなります。
LSG(KC_Y)は、LEFT-SHIFT + cmd + Yとなり、ライブラリパネルに切り替えます。
下半分のコードで、ロータリーエンコーダーの動作を設定しています。時計回りで、反時計回りでです。クリック感があるので、ワンクリックで1回押下したのと同じです。

当面は、各機能を書いた紙をキーキャップに貼り付けて使うことにしました。

おわりに

少し使ってみて気がついたことは、楕円形ツールのようにひとつのキーで切り替えられることを、Fn + ○としたことで「押しながら」という手数が増えてしまいました。
コピーのように、2つ以上のキーを組み合わせる場合は、1つのキーで済むので効率がよくなります。
ロータリーエンコーダーは上下のみなので、左右移動ができません。
でも、SHIFTと組み合わせると回転操作で部品が10px単位で上下移動できるのは、微調整に便利でした。
もう少し使ってみて、使用頻度の高い複数キーの組み合わせ操作を探してみたいと思います。
ビルド方法や、Promicroへhexファイルを焼く方法などは、また別の機会に記事にします。


  • 前の記事はありません。
  • 次回投稿をお待ちください。