diff --git a/config/base.keymap b/config/base.keymap index 79bbdbd..e08a482 100644 --- a/config/base.keymap +++ b/config/base.keymap @@ -1,6 +1,5 @@ #include #include // requires auto-layer module -#include // requires leader-key module #include #ifdef CONFIG_WIRELESS #include @@ -42,10 +41,6 @@ quick-tap-ms = ; }; -&leader { // leader-key config - timeout-ms = <650>; -}; - /* Homerow mods */ #define KEYS_L LT0 LT1 LT2 LT3 LT4 LM0 LM1 LM2 LM3 LM4 LB0 LB1 LB2 LB3 LB4 // left hand diff --git a/config/corneish_zen.conf b/config/corneish_zen.conf index 541e469..416e88f 100644 --- a/config/corneish_zen.conf +++ b/config/corneish_zen.conf @@ -13,10 +13,6 @@ CONFIG_ZMK_HID_GENERIC_DESKTOP_USAGES_BASIC=y CONFIG_ZMK_COMBO_MAX_COMBOS_PER_KEY=6 CONFIG_ZMK_COMBO_MAX_KEYS_PER_COMBO=3 -# Leader config, automated by build script -CONFIG_ZMK_LEADER_MAX_SEQUENCES_PER_KEY=27 -CONFIG_ZMK_LEADER_MAX_KEYS_PER_SEQUENCE=2 - # Zen display tweaks, requires patches by caksoylar CONFIG_ZMK_DISPLAY_FULL_REFRESH_PERIOD=300 CONFIG_ZMK_DISPLAY_HIDE_MOMENTARY_LAYERS=y diff --git a/config/glove80.conf b/config/glove80.conf index fc4ff90..f6a5ea3 100644 --- a/config/glove80.conf +++ b/config/glove80.conf @@ -13,10 +13,6 @@ CONFIG_ZMK_HID_GENERIC_DESKTOP_USAGES_BASIC=y CONFIG_ZMK_COMBO_MAX_COMBOS_PER_KEY=6 CONFIG_ZMK_COMBO_MAX_KEYS_PER_COMBO=3 -# Leader config, automated by build script -CONFIG_ZMK_LEADER_MAX_SEQUENCES_PER_KEY=27 -CONFIG_ZMK_LEADER_MAX_KEYS_PER_SEQUENCE=2 - # Bluetooth tweaks CONFIG_ZMK_BLE_EXPERIMENTAL_CONN=y CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION=n diff --git a/config/leader.dtsi b/config/leader.dtsi index 68d2e08..7fbd0a1 100644 --- a/config/leader.dtsi +++ b/config/leader.dtsi @@ -1,47 +1,46 @@ -/* KEY POSITIONS - - ╭─────────────────────╮ ╭─────────────────────╮ - │ LT4 LT3 LT2 LT1 LT0 │ │ RT0 RT1 RT2 RT3 RT4 │ - │ LM4 LM3 LM2 LM1 LM0 │ │ RM0 RM1 RM2 RM3 RM4 │ - │ LB4 LB3 LB2 LB1 LB0 │ │ RB0 RB1 RB2 RB3 RB4 │ - ╰───────╮ LH2 LH1 LH0 │ │ RH0 RH1 RH2 ╭───────╯ - ╰─────────────╯ ╰─────────────╯ - -Note: The leader sequence must be pressed exactly as defined to be triggered. -To capitalize a letter, hold the shift key (or tap sticky-shift) *before* -tapping the leader key. */ +#undef ZMK_LEADER_SEQUENCE +#define ZMK_LEADER_SEQUENCE(name, leader_bindings, leader_sequence) \ + / { \ + behaviors { \ + leader: leader { \ + compatible = "zmk,behavior-leader-key"; \ + #binding-cells = <0>; \ + leader_sequence_ ## name { \ + bindings = ; \ + sequence = ; \ + }; \ + }; \ + }; \ + }; /* German umlauts */ - -ZMK_LEADER_SEQUENCE(de_ae, &de_ae, LM4) // ä -ZMK_LEADER_SEQUENCE(de_oe, &de_oe, RM4) // ö -ZMK_LEADER_SEQUENCE(de_ue, &de_ue, RT2) // ü -ZMK_LEADER_SEQUENCE(de_eszett, &de_eszett, LM2) // ß +ZMK_LEADER_SEQUENCE(de_ae, &de_ae, A) // ä +ZMK_LEADER_SEQUENCE(de_oe, &de_oe, O) // ö +ZMK_LEADER_SEQUENCE(de_ue, &de_ue, U) // ü +ZMK_LEADER_SEQUENCE(de_eszett, &de_eszett, S) // ß /* Greek letters */ - -ZMK_LEADER_SEQUENCE(el_alpha, &el_alpha, RM2 LM4) // α -ZMK_LEADER_SEQUENCE(el_beta, &el_beta, RM2 LT0) // β -ZMK_LEADER_SEQUENCE(el_gamma, &el_gamma, RM2 LM0) // γ -ZMK_LEADER_SEQUENCE(el_delta, &el_delta, RM2 LB1) // δ -ZMK_LEADER_SEQUENCE(el_epsilon, &el_epsilon, RM2 RM2) // ε -ZMK_LEADER_SEQUENCE(el_zeta, &el_zeta, RM2 LB4) // ζ -ZMK_LEADER_SEQUENCE(el_eta, &el_eta, RM2 RB1) // η -ZMK_LEADER_SEQUENCE(el_theta, &el_theta, RM2 LB0) // θ -ZMK_LEADER_SEQUENCE(el_iota, &el_iota, RM2 RM3) // ι -ZMK_LEADER_SEQUENCE(el_kappa, &el_kappa, RM2 RB0) // κ -ZMK_LEADER_SEQUENCE(el_lambda, &el_lambda, RM2 RT1) // λ -ZMK_LEADER_SEQUENCE(el_mu, &el_mu, RM2 RM0) // μ -ZMK_LEADER_SEQUENCE(el_nu, &el_nu, RM2 RM1) // ν -ZMK_LEADER_SEQUENCE(el_xi, &el_xi, RM2 LB3) // ξ -ZMK_LEADER_SEQUENCE(el_omikron, &el_omikron, RM2 RM4) // ο -ZMK_LEADER_SEQUENCE(el_pi, &el_pi, RM2 LT1) // π -ZMK_LEADER_SEQUENCE(el_rho, &el_rho, RM2 LM3) // ρ -ZMK_LEADER_SEQUENCE(el_sigma, &el_sigma, RM2 LM2) // σ -ZMK_LEADER_SEQUENCE(el_tau, &el_tau, RM2 LM1) // τ -ZMK_LEADER_SEQUENCE(el_upsilon, &el_upsilon, RM2 RT2) // υ -ZMK_LEADER_SEQUENCE(el_phi, &el_phi, RM2 LT2) // ϕ -ZMK_LEADER_SEQUENCE(el_chi, &el_chi, RM2 LB2) // χ -ZMK_LEADER_SEQUENCE(el_psi, &el_psi, RM2 RT3) // ψ -ZMK_LEADER_SEQUENCE(el_omega, &el_omega, RM2 LT3) // ω - +ZMK_LEADER_SEQUENCE(el_alpha, &el_alpha, E A) // α +ZMK_LEADER_SEQUENCE(el_beta, &el_beta, E B) // β +ZMK_LEADER_SEQUENCE(el_gamma, &el_gamma, E G) // γ +ZMK_LEADER_SEQUENCE(el_delta, &el_delta, E D) // δ +ZMK_LEADER_SEQUENCE(el_epsilon, &el_epsilon, E E) // ε +ZMK_LEADER_SEQUENCE(el_zeta, &el_zeta, E Z) // ζ +ZMK_LEADER_SEQUENCE(el_eta, &el_eta, E H) // η +ZMK_LEADER_SEQUENCE(el_theta, &el_theta, E V) // θ +ZMK_LEADER_SEQUENCE(el_iota, &el_iota, E I) // ι +ZMK_LEADER_SEQUENCE(el_kappa, &el_kappa, E K) // κ +ZMK_LEADER_SEQUENCE(el_lambda, &el_lambda, E L) // λ +ZMK_LEADER_SEQUENCE(el_mu, &el_mu, E M) // μ +ZMK_LEADER_SEQUENCE(el_nu, &el_nu, E N) // ν +ZMK_LEADER_SEQUENCE(el_xi, &el_xi, E X) // ξ +ZMK_LEADER_SEQUENCE(el_omikron, &el_omikron, E O) // ο +ZMK_LEADER_SEQUENCE(el_pi, &el_pi, E P) // π +ZMK_LEADER_SEQUENCE(el_rho, &el_rho, E R) // ρ +ZMK_LEADER_SEQUENCE(el_sigma, &el_sigma, E S) // σ +ZMK_LEADER_SEQUENCE(el_tau, &el_tau, E T) // τ +ZMK_LEADER_SEQUENCE(el_upsilon, &el_upsilon, E U) // υ +ZMK_LEADER_SEQUENCE(el_phi, &el_phi, E F) // ϕ +ZMK_LEADER_SEQUENCE(el_chi, &el_chi, E C) // χ +ZMK_LEADER_SEQUENCE(el_psi, &el_psi, E Y) // ψ +ZMK_LEADER_SEQUENCE(el_omega, &el_omega, E W) // ω diff --git a/config/planck_rev6.conf b/config/planck_rev6.conf index 941b6f8..406c7d7 100644 --- a/config/planck_rev6.conf +++ b/config/planck_rev6.conf @@ -10,7 +10,3 @@ CONFIG_ZMK_HID_GENERIC_DESKTOP_USAGES_BASIC=y # Combo config, automated by build script CONFIG_ZMK_COMBO_MAX_COMBOS_PER_KEY=6 CONFIG_ZMK_COMBO_MAX_KEYS_PER_COMBO=3 - -# Leader config, automated by build script -CONFIG_ZMK_LEADER_MAX_SEQUENCES_PER_KEY=27 -CONFIG_ZMK_LEADER_MAX_KEYS_PER_SEQUENCE=2 diff --git a/config/west.yml b/config/west.yml index cb8c845..478a10c 100644 --- a/config/west.yml +++ b/config/west.yml @@ -34,7 +34,6 @@ manifest: - name: zmk-helpers path: modules/helpers - name: zmk-leader-key - revision: legacy path: modules/leader-key - name: zmk-tri-state path: modules/tri-state