zmk-configs/config/macros.dtsi
2023-08-30 01:24:45 -04:00

34 lines
1 KiB
Text

/* Macro macro: */
#define str(s) #s
#define MACRO(NAME, BINDINGS) \
macro_##NAME: macro_##NAME { \
compatible = "zmk,behavior-macro"; \
label = str(macro_##NAME); \
#binding-cells = <0>; \
wait-ms = <30>; \
tap-ms = <40>; \
bindings = <BINDINGS>; \
};
/* Brackets */
MACRO(parentheses, &kp LEFT_PARENTHESIS &kp RIGHT_PARENTHESIS &kp LEFT)
MACRO(brackets, &kp LEFT_BRACKET &kp RIGHT_BRACKET &kp LEFT)
MACRO(ltgt, &kp LESS_THAN &kp GREATER_THAN &kp LEFT)
/* Suspend macOS by holding power key for 1 second */
MACRO(power, &macro_tap_time 1000 &kp C_POWER)
/* Excel Macros */
MACRO(exl_auto_sum, &kp LA(EQUAL)) // AutoSum
MACRO(exl_tgl_df, &kp LC(GRAVE)) // Toggle data/formulas
MACRO(exl_pct_fmt, &kp LC(LS(PRCNT))) // Percent format
MACRO(exl_cmt_ins, &kp LC(LS(F2))) // Cell Comment
MACRO(exl_sel_dep, &kp LC(RBKT)) // Select Dependents
MACRO(exl_sel_pre, &kp LC(LBKT)) // Select Precendents
ZMK_MACRO(exl_cur_fmt, // Currency format
wait-ms = <0>;
tap-ms = <0>;
bindings = <&kp LC(LS(DLLR))>;)