Edited at

ErgoDoxのキーマップをいじる時に見るチートシート

More than 1 year has passed since last update.


はじめに

ErgoDoxというかQMKのキーマップについて、です。READMEとかソースコードとかみてまわるのがつらいので対応表にしました。全てではなく、特殊なものだけ抽出しています。

(簡単なものはREADME見ればすぐに理解できて覚えられると思います。)

キーマップの変更方法はErgoDox EZのキーマップを変更する - Qiitaを参照してください:bow:


キーマップ


  • 大文字の場合はそのままの表記(そのままをキーマップに指定する)


  • mod は何らかのmodifier(ctlやshiftのキー)を指す


  • kc は何らかのkey(aや;等のキー)を指す

機能
キーマップ
詳細

Reset
RESET
リセット(ピンで指すのと同じ)

No action
KC_NO
何もしない

Transparent

KC_TRNS
KC_TRANSPARENT

下層レイヤーのキーマップを引き継ぐ

Shift

S(kc)
LSFT(kc)

Shift + kc

Function

F(n)
FUNC(n)
KC_FNn

fn_actionsに登録された機能を呼びだす(1.5 Fn keyを参照)

Modifier Tap

MT(mod, kc)
mod_T(kc)

押しっぱなしでmod、タップでkc

C_S
C_S_T(kc)
押しっぱなしでCtrl + Shift、タップでkc

Meh
MEH_T(kc)
押しっぱなしでCtrl + Alt + Shift、タップでkc

Cag
LCAG_T(kc)
押しっぱなしでCtrl + Alt + Gui、タップでkc

ALL
ALL_T(kc)
押しっぱなしでCtrl + Alt + Shift + Gui、タップでkc

Tap layer
LT(layer, kc)
押しっぱなしでレイヤーを一時的に切り替え、タップでkc

Switch layer

MO(layer)
LT(layer, KC_TRNS)

一時的にレイヤーを切り替え。キーを離せば元に戻る。(2つめはKC_NOでもほぼ同じ意味)

Toggle layer

TG(layer)

レイヤーを切り替え。キーを押すたびにレイヤーを行き来する。切り替えた先のレイヤーにも同じ指定が必要(KC_TRNSで引き継げばOK)。

Temporary default layer
DF(layer)
デフォルトレイヤーを切り替える。電源切れたら元に戻る。


補足事項


Guiキーについて


  • MacならCommandに相当するもの


mod_T(kc)mod(kc)は意味が異なるので注意



  • SFT_T(kc)LSFT(kc) の例でいうと



    • LSFT(KC_J) → Shift + J(大文字)


    • SFT_T(KC_J) → タップならj(小文字), 長押しならShift


    • MT(KC_LSFT, KC_J) → タップならj(小文字), 長押しならShift




マクロの独自定義

エイリアスの定義

// LALTのエイリアス

#define A(kc) LALT(kc)

独自Modifierの定義

// `Gui + Shift + kc` (= `kc | 0x5000`でも可)

// quantum/keymap_common.hの以下記述を参考に設定している
// #define LGUI(kc) kc | 0x0800
// #define LSFT(kc) kc | 0x0200
#define G_S(kc) kc | 0x0800 | 0x0200

こうすれば、LGUI(LSFT(KC_4))と入れ子にしていたのがG_S(KC_4)のように簡潔になる


参考資料