KC_EXCLAIM

This commit is contained in:
nik gaffney 2021-09-14 19:07:43 +02:00
parent e2c9f4d364
commit 63b89e2747
4 changed files with 96 additions and 81 deletions

View file

@ -71,7 +71,7 @@ A complete keymap can be defined within =mugur-mugur= which will generate the re
tab q w e r t y u i o p bspace
C a s d f g h j k l scolon (LT move ?\')
(LT S up) z x c v b n m comma dot slash (LT hypm down)
(MO emacs) lapo (G space) ent rapc (TT numeric))
(MO emacs) lapo (G space) (G ent) rapc (TT numeric))
("numeric"
"~" ?\! ?\@ ?\# ?\$ ?\% ?\^ ?\& ?\* - = bspace
@ -81,7 +81,7 @@ A complete keymap can be defined within =mugur-mugur= which will generate the re
("move"
--- M-v up --- --- --- --- --- --- --- --- ---
C-a left down right C-e --- left up down right --- ---
C-a left down right C-e --- left up down right -x- ---
--- M-< C-v M-> --- --- --- --- --- --- --- ---
C S --- --- --- --- )
@ -92,8 +92,8 @@ A complete keymap can be defined within =mugur-mugur= which will generate the re
--- --- (H-i e) (C-x 8) --- (MO hypm))
("hypm"
x --- --- --- --- --- --- --- H-i (H-i o) (H-i l) ---
--- --- --- H-d --- --- --- --- --- --- --- ---
x --- --- --- --- " - [ ] " --- --- H-i (H-i o) (H-i l) ---
--- --- --- H-d --- " - " --- --- --- --- --- ---
--- --- --- --- --- --- (H-m n) (H-m m) (H-m s) --- --- ---
--- --- --- --- --- --- )
@ -105,6 +105,16 @@ A complete keymap can be defined within =mugur-mugur= which will generate the re
)))
#+END_SRC
an optional base config for Colemak
#+BEGIN_SRC emacs-lisp
("colemak"
tab q w f p g j l u y scolon bspace
C a r s t d h n e i o (LT move ?\')
(LT S up) z x c v b k m comma dot slash (LT hypm down)
(MO emacs) lapo (G space) ent rapc (TT numeric))
#+END_SRC
** keymap.c
This will generate a =keymap.c= file with =org-babel-tangle= and should be run before the elisp code block for the keymap described above.
@ -112,6 +122,7 @@ This will generate a =keymap.c= file with =org-babel-tangle= and should be run b
#+BEGIN_SRC c :tangle keymap.c
#include QMK_KEYBOARD_H
#include "version.h"
#include "split_util.h"
#+END_SRC
=mugur= will write the keymap and only overwrite the region between these comments.
@ -200,7 +211,7 @@ this will create a =rules.mk= file with some specifics for the [[https://github.
# START-MUGUR-REGION
# END-MUGUR-REGION
BOOTLOADER = dfu-ee # Elite-C
BOOTLOADER = dfu # Elite-C
RGBLIGHT_ENABLE = no
RGB_MATRIX_ENABLE = yes # WS2812 # per-key RGB and underglow
@ -211,7 +222,7 @@ OLED_DRIVER_ENABLE = yes
MOUSEKEY_ENABLE = no # use mouse keys or not
CONSOLE_ENABLE = no # debug info
VIA_ENABLE = yes # to enable configuraiton with VIA
VIA_ENABLE = no # to enable configuraiton with VIA
#+END_SRC
** config.h
@ -227,6 +238,12 @@ This will generate a =config.h= file
#define EE_HANDS
#+END_SRC
and some layers
#+BEGIN_SRC c :tangle config.h
#define DYNAMIC_KEYMAP_LAYER_COUNT 6
#+END_SRC
taping timing and tap/hold (as seen in the [[https://beta.docs.qmk.fm/using-qmk/software-features/tap_hold][QMK docs]])
#+BEGIN_SRC c :tangle config.h

View file

@ -13,9 +13,11 @@
#define EE_HANDS
#define TAPPING_TOGGLE 2
#define DYNAMIC_KEYMAP_LAYER_COUNT 6
#define TAPPING_TERM 175
#define COMBO_TERM 300
// #define RETRO_TAPPING
#define UNICODE_SELECTED_MODES UC_MAC
@ -36,7 +38,7 @@
#define DISABLE_RGB_MATRIX_ALPHAS_MODS
#define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN
#define DISABLE_RGB_MATRIX_BREATHING
/* #define DISABLE_RGB_MATRIX_BREATHING */
#define DISABLE_RGB_MATRIX_CYCLE_ALL
#define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
#define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN

View file

@ -4,9 +4,8 @@
// START-MUGUR-REGION
/* Macros */
enum custom_keycodes {EPRM = SAFE_RANGE, MACRO_16, MACRO_15, MACRO_14, MACRO_13, MACRO_12, MACRO_11, MACRO_10, MACRO_9, MACRO_8, MACRO_7, MACRO_6, MACRO_5, MACRO_4, MACRO_3, MACRO_2, MACRO_1};
enum custom_keycodes {EPRM = SAFE_RANGE, MACRO_18, MACRO_17, MACRO_16, MACRO_15, MACRO_14, MACRO_13, MACRO_12, MACRO_11, MACRO_10, MACRO_9, MACRO_8, MACRO_7, MACRO_6, MACRO_5, MACRO_4, MACRO_3, MACRO_2, MACRO_1};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
@ -22,11 +21,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
case MACRO_9: SEND_STRING(SS_LALT(SS_TAP(X_X)) "magit" SS_TAP(X_ENTER)); return false;
case MACRO_10: SEND_STRING(SS_RCMD(SS_TAP(X_I)) SS_TAP(X_E)); return false;
case MACRO_11: SEND_STRING(SS_LCTL(SS_TAP(X_X)) SS_TAP(X_8)); return false;
case MACRO_12: SEND_STRING(SS_RCMD(SS_TAP(X_I)) SS_TAP(X_O)); return false;
case MACRO_13: SEND_STRING(SS_RCMD(SS_TAP(X_I)) SS_TAP(X_L)); return false;
case MACRO_14: SEND_STRING(SS_RCMD(SS_TAP(X_M)) SS_TAP(X_N)); return false;
case MACRO_15: SEND_STRING(SS_RCMD(SS_TAP(X_M)) SS_TAP(X_M)); return false;
case MACRO_16: SEND_STRING(SS_RCMD(SS_TAP(X_M)) SS_TAP(X_S)); return false;}
case MACRO_12: SEND_STRING(" - [ ] "); return false;
case MACRO_13: SEND_STRING(SS_RCMD(SS_TAP(X_I)) SS_TAP(X_O)); return false;
case MACRO_14: SEND_STRING(SS_RCMD(SS_TAP(X_I)) SS_TAP(X_O)); return false;
case MACRO_15: SEND_STRING(" - "); return false;
case MACRO_16: SEND_STRING(SS_RCMD(SS_TAP(X_M)) SS_TAP(X_N)); return false;
case MACRO_17: SEND_STRING(SS_RCMD(SS_TAP(X_M)) SS_TAP(X_M)); return false;
case MACRO_18: SEND_STRING(SS_RCMD(SS_TAP(X_M)) SS_TAP(X_S)); return false;}
}
return true;
};
@ -38,13 +39,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[BASE] = LAYOUT_split_3x6_3(KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPACE, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, LT(MOVE, KC_QUOTE), MT(MOD_LSFT, KC_UP), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, LT(HYPM, KC_DOWN), MO(EMACS), KC_LAPO, MT(MOD_LGUI, KC_SPACE), MT(MOD_RGUI, KC_ENTER), KC_RAPC, TT(NUMERIC)),
[NUMERIC] = LAYOUT_split_3x6_3(KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_MINUS, KC_EQUAL, KC_BSPACE, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LT(MOVE, KC_ENTER), MT(MOD_LSFT, KC_LEFT), KC_GRAVE, KC_TRNS, KC_TRNS, KC_LEFT_CURLY_BRACE, KC_LBRACKET, KC_RBRACKET, KC_RIGHT_CURLY_BRACE, KC_COMMA, KC_DOT, KC_PIPE, MT(MOD_RSFT, KC_RIGHT), TG(QMIK), KC_LAPO, KC_TRNS, KC_TRNS, KC_RAPC, KC_TRNS),
[NUMERIC] = LAYOUT_split_3x6_3(KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_MINUS, KC_EQUAL, KC_BSPACE, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LT(MOVE, KC_ENTER), MT(MOD_LSFT, KC_LEFT), KC_GRAVE, KC_TRNS, KC_BSLASH, KC_LEFT_CURLY_BRACE, KC_LBRACKET, KC_RBRACKET, KC_RIGHT_CURLY_BRACE, KC_COMMA, KC_DOT, KC_PIPE, MT(MOD_RSFT, KC_RIGHT), TG(QMIK), KC_LAPO, KC_TRNS, KC_TRNS, KC_RAPC, KC_TRNS),
[MOVE] = LAYOUT_split_3x6_3(KC_TRNS, LALT(KC_V), KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_A), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), KC_TRNS, KC_LEFT, KC_UP, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, LALT(KC_LEFT_ANGLE_BRACKET), LCTL(KC_V), LALT(KC_RIGHT_ANGLE_BRACKET), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCTL, KC_LSFT, KC_LGUI, KC_TRNS, KC_TRNS, KC_TRNS),
[MOVE] = LAYOUT_split_3x6_3(KC_TRNS, LALT(KC_V), KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, LCTL(KC_A), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), KC_TRNS, KC_LEFT, KC_UP, KC_DOWN, KC_RIGHT, KC_NO, KC_TRNS, KC_TRNS, LALT(KC_LEFT_ANGLE_BRACKET), LCTL(KC_V), LALT(KC_RIGHT_ANGLE_BRACKET), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCTL, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[EMACS] = LAYOUT_split_3x6_3(KC_ESCAPE, KC_TRNS, KC_TRNS, MACRO_1, MACRO_2, MACRO_3, MACRO_4, KC_TRNS, KC_TRNS, MACRO_5, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, LALT(KC_PERCENT), KC_TRNS, KC_TRNS, MACRO_6, MACRO_7, KC_TRNS, KC_TRNS, MACRO_8, KC_TRNS, KC_TRNS, RESET, KC_TRNS, LALT(KC_X), LCTL(KC_C), KC_TRNS, KC_LEFT_PAREN, KC_RIGHT_PAREN, MACRO_9, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MACRO_10, MACRO_11, KC_TRNS, MO(HYPM)),
[HYPM] = LAYOUT_split_3x6_3(KC_X, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_I, MACRO_12, MACRO_13, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_D, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MACRO_14, MACRO_15, MACRO_16, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[HYPM] = LAYOUT_split_3x6_3(KC_X, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MACRO_12, KC_TRNS, KC_TRNS, KC_I, MACRO_13, MACRO_14, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_D, KC_TRNS, MACRO_15, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MACRO_16, MACRO_17, MACRO_18, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[QMIK] = LAYOUT_split_3x6_3(KC_NO, RGB_TOG, RGB_MOD, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, RGB_SAD, RGB_VAD, RGB_HUD, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAI, RGB_VAI, RGB_HUI, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)};
@ -107,8 +108,8 @@ void oled_task_user(void) {
#endif
void keyboard_post_init_user(void) {
debug_enable=true;
debug_keyboard=true;
// debug_enable=true;
// debug_matrix=true;
// debug_keyboard=true;
// debug_mouse=true;
}

View file

@ -1,27 +1,22 @@
BOOTLOADER = dfu # Elite-C
# START-MUGUR-REGION
FORCE_NKRO = yes
LEADER_ENABLE = no
RGBLIGHT_ENABLE = no
RGBLIGHT_ENABLE = yes
TAP_DANCE_ENABLE = no
COMBO_ENABLE = no
# END-MUGUR-REGION
NKRO_ENABLE = no # six simultaneous keys should be enough
BOOTLOADER = dfu # Elite-C
RGBLIGHT_ENABLE = no
RGB_MATRIX_ENABLE = no # yes # WS2812 # per-key RGB and underglow
VIA_ENABLE = yes
RGB_MATRIX_ENABLE = yes # WS2812 # per-key RGB and underglow
UNICODE_ENABLE = yes
OLED_DRIVER_ENABLE = yes
MOUSEKEY_ENABLE = no # use mouse keys or not
CONSOLE_ENABLE = no # debug info
VIA_ENABLE = no # to enable configuraiton with VIA