forked from mfulz_github/qmk_firmware
		
	Keymap: meagerfindings ergodox (#3920)
* initial commit * updating after review
This commit is contained in:
		
							parent
							
								
									c23233f41a
								
							
						
					
					
						commit
						14f691d2a7
					
				
							
								
								
									
										109
									
								
								layouts/community/ergodox/meagerfindings/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								layouts/community/ergodox/meagerfindings/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,109 @@ | |||||||
|  |  | ||||||
|  | 
 | ||||||
|  | # Meagerfinding's ErgoDox Layout | ||||||
|  | 
 | ||||||
|  | <!-- TOC depthFrom:2 depthTo:6 withLinks:1 updateOnSave:1 orderedList:0 --> | ||||||
|  | 
 | ||||||
|  | - [Overview](#overview) | ||||||
|  | - [Credit where credit is due](#credit-where-credit-is-due) | ||||||
|  | - [Features](#features) | ||||||
|  | 	- [Tap/Hold Macro Keys](#taphold-macro-keys) | ||||||
|  | 	- [TapDance Keys](#tapdance-keys) | ||||||
|  | - [Base Layer](#base-layer) | ||||||
|  | 	- [Things to note:](#things-to-note) | ||||||
|  | - [Old Base Layer](#old-base-layer) | ||||||
|  | - [Symbols Layer](#symbols-layer) | ||||||
|  | - [Mouse & Media Keys Layer](#mouse-media-keys-layer) | ||||||
|  | - [Markdown Layer](#markdown-layer) | ||||||
|  | - [Arrow/Movements Layer](#arrowmovements-layer) | ||||||
|  | - [Numpad Layer](#numpad-layer) | ||||||
|  | 
 | ||||||
|  | <!-- /TOC --> | ||||||
|  | 
 | ||||||
|  | ## Overview | ||||||
|  | 
 | ||||||
|  | The overall goals of this layout are to: | ||||||
|  | 1. Use the Ergodox thumb clusters to eliminate pinky reach. | ||||||
|  | 2. Place as many useful keys under the home rows as possible. | ||||||
|  | 
 | ||||||
|  | I first decided to build an ErgoDox as I wanted to use my thumbs for more with the added ergonomic benefits of a split board and ortholinear layout. I knew my hands were hurting from the weird contortions of copying and pasting constantly on my Mac, but I had no idea how strained I really was until I started moving as many modifier keys to the thumb clusters. | ||||||
|  | 
 | ||||||
|  | ## Credit where credit is due | ||||||
|  | 
 | ||||||
|  | The initial layout used created on the [ErgoDox EZ Configurator](https://ergodox-ez.com/pages/graphical-configurator). I went through 26+ iterations within the configurator prior to beginning my journey with QMK itself. Much of the dual function/layer keys are influenced by and adapted from the EZ Configurator. | ||||||
|  | 
 | ||||||
|  | Many features in this layout are either directly inspired by or are adaptations of [Algernon's incredible ErgoDox layout](https://github.com/algernon/ergodox-layout). Specifically: TapDance and its usage, and the brilliant idea of using TapDance to pair down the four keys for parens, brackets, and curly braces into just 2 keys. | ||||||
|  | 
 | ||||||
|  | ## Features | ||||||
|  | 
 | ||||||
|  | ### Tap/Hold Macro Keys | ||||||
|  | * `Paste/Paste Special` key sends Paste on tap and Paste Special when held. | ||||||
|  | * `Screen/Video` key sends `||scrn` when tapped and `||video` when held | ||||||
|  |   - [Typinator](http://www.ergonis.com/products/typinator/) expands `||scrn` into `(Screenshot: <CLIPBOARD CONTENTS>)`, and `||video` into `(Video: <CLIPBOARD CONTENTS>)`, the QMK macro then moves back to before the last paren, inserts a space and removes a space to create a hyperlink for use in Zendesk. | ||||||
|  | * When tapped, `Todoist` toggles quick add window for a new Todoist task (`CMD + Shift + A`) and switches to Todoist when held | ||||||
|  | * The RubyMine key opens RubyMine by triggering spotlight, typing out `Rubymine`, and submitting the enter key. | ||||||
|  | * `Zendesk` triggers spotlight and then calls Typinator expansion to open my Zendesk Agent dashboard in Chrome. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ### TapDance Keys | ||||||
|  | * `Copy/Cut` key copies on tap, cut's on two taps. | ||||||
|  | * One tap on `Snagit` key = sends `Ctrl + Shift + C` which is Snagit's selector and two taps on `Snagit` key = `Cmd + Shift + Opt + 4`, OS X cropping screenshot that is copied to the clipboard only. | ||||||
|  | * Tapping the `[{(`/`)}]` keys once yields `[` or `{` when the shift key is engaged, tapping them twice yields `(`. | ||||||
|  | 
 | ||||||
|  | ## Base Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | The base layer retains the alphas from the QWERTY layout without any modifications. | ||||||
|  | 
 | ||||||
|  | ### Things to note: | ||||||
|  | 
 | ||||||
|  | - The shift key is a One Shot Modifier key, meaning shift is not submitted when the key is tapped, instead, it only submits when you either tap it again, or on the next key press. | ||||||
|  |   - There is no CAPSLOCK key designated as it is pretty comfortable to simply hold down shift in this layout and continue typing. | ||||||
|  | - There is only one layer that you can fully switch to on this layout, the [Old Base layer](#old-base-layer). All other layers require holding a key to reach them. For the most part, the key that toggles a layer, will be on the opposite hand that will be typing with that layer. | ||||||
|  |   - For example: the symbols layer is reached by holding down the enter key with your right thumb, and most of the symbols are located on the left hand board. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ## Old Base Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | I am moving into a new position (software engineering) at work from a Support position. My hope is to use my F keys more often and write fewer emails. This is my old base layer, still easily accessible, as I'm not used to having F key's on my top row quite yet. | ||||||
|  | 
 | ||||||
|  | ## Symbols Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | Holding down the `enter` key with your right thumb toggles the symbol layer. | ||||||
|  | 
 | ||||||
|  | I've placed my most used symbols under the homerow. Granted, right now I mainly right emails/support ticket responses, so this home row may need to change as I transition to software engineering. | ||||||
|  | 
 | ||||||
|  | ## Mouse & Media Keys Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | Holding down the `:` key on with your right pinky toggles the mouse and media layer. Your left hand controls the mouse directions just in a similar fashion to the keys used in the [movement layer](#arrowmovements-layer). | ||||||
|  | 
 | ||||||
|  | The right hand has a media controls under the homerow for quick muting/pausing. | ||||||
|  | 
 | ||||||
|  | * `XKCD #1319` Key that ironically partially-automates accessing the link to [XKCD #1319](https://xkcd.com/1319/). | ||||||
|  | 
 | ||||||
|  | ## Markdown Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | This layer places most common markdown symbols under the right hand. You can reach this layer by holding down the `F` key on your left hand. | ||||||
|  | 
 | ||||||
|  | ## Arrow/Movements Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | Toggled by holding down the space key with the right thumb. This isn't vim like movement, nope, it's `WASD` but over one column. So I guess it's actually `ESDF` on the left hand and `IJKL` on the right hand to better line up with the columns offset/staggered columns on the Dox. | ||||||
|  | 
 | ||||||
|  | ## Numpad Layer | ||||||
|  | 
 | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | My right hand is pretty comfortable with tenkey number input so this is easily accessible by holding down backspace with the left thumb. | ||||||
|  | 
 | ||||||
|  | Also, on the left hand, there is a tap to copy and hold to cut macro under the `D` key, and a tap to paste and a hold to paste special macro on the `F` key. I guess I'm to too lazy to move my fingers when copying/pasting... | ||||||
							
								
								
									
										26
									
								
								layouts/community/ergodox/meagerfindings/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								layouts/community/ergodox/meagerfindings/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | |||||||
|  | #undef VENDOR_ID | ||||||
|  | #define VENDOR_ID       0xFEED | ||||||
|  | #undef PRODUCT_ID | ||||||
|  | #define PRODUCT_ID      0x1307 | ||||||
|  | #undef DEVICE_VER | ||||||
|  | #define DEVICE_VER      0x0001 | ||||||
|  | #undef MANUFACTURER | ||||||
|  | #define MANUFACTURER    meagerfindings | ||||||
|  | #undef PRODUCT | ||||||
|  | #define PRODUCT         ErgoDox | ||||||
|  | #undef DESCRIPTION | ||||||
|  | #define DESCRIPTION     meagerfindings firmware for Ergodox | ||||||
|  | 
 | ||||||
|  | #define USB_MAX_POWER_CONSUMPTION 500 | ||||||
|  | 
 | ||||||
|  | #undef MOUSEKEY_INTERVAL | ||||||
|  | #define MOUSEKEY_INTERVAL       20 | ||||||
|  | #undef MOUSEKEY_DELAY | ||||||
|  | #define MOUSEKEY_DELAY          0 | ||||||
|  | #undef MOUSEKEY_TIME_TO_MAX | ||||||
|  | #define MOUSEKEY_TIME_TO_MAX    18 | ||||||
|  | #undef MOUSEKEY_MAX_SPEED | ||||||
|  | #define MOUSEKEY_MAX_SPEED      4 | ||||||
|  | 
 | ||||||
|  | #undef TAPPING_TERM | ||||||
|  | #define TAPPING_TERM 200 | ||||||
							
								
								
									
										558
									
								
								layouts/community/ergodox/meagerfindings/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										558
									
								
								layouts/community/ergodox/meagerfindings/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,558 @@ | |||||||
|  | #include QMK_KEYBOARD_H | ||||||
|  | #include "version.h" | ||||||
|  | 
 | ||||||
|  | enum { | ||||||
|  |   BASE = 0, | ||||||
|  |   OLD_BASE, | ||||||
|  |   SYMBL, | ||||||
|  |   MEDIA, | ||||||
|  |   MKDWN, | ||||||
|  |   ARROWS, | ||||||
|  |   NUM, | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | enum custom_keycodes { | ||||||
|  |   PLACEHOLDER = SAFE_RANGE, // can always be here
 | ||||||
|  |   EPRM, | ||||||
|  |   VRSN, | ||||||
|  |   MD_LINK, | ||||||
|  |   XKCD, | ||||||
|  |   DBLE_ZER0, | ||||||
|  |   L_ID_0, | ||||||
|  |   L_ID_1, | ||||||
|  |   L_ID_2, | ||||||
|  |   PAST_PS, | ||||||
|  |   TODO, | ||||||
|  |   RUBYMINE, | ||||||
|  |   ZENDESK, | ||||||
|  |   DBLE_ASTR, | ||||||
|  |   TRPLE_GRAVE, | ||||||
|  |   H_ONE, | ||||||
|  |   H_TWO, | ||||||
|  |   H_THREE, | ||||||
|  |   H_FOUR, | ||||||
|  |   H_FIVE, | ||||||
|  |   M_LINK, | ||||||
|  |   M_GREATER, | ||||||
|  |   TD_COPY_CUT = 6, | ||||||
|  |   TD_SNAGIT = 8, | ||||||
|  |   TD_B_L_SEL = 10, | ||||||
|  |   CT_LBP = 11, | ||||||
|  |   CT_RBP = 12 | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | //Redefine Key Names for Readaibilty
 | ||||||
|  | #define XXXXXXX KC_NO | ||||||
|  | #define SCRN_CLIPB LCTL(LGUI(LSFT(KC_4))) | ||||||
|  | #define CHRM_L LALT(LGUI(KC_LEFT)) //Move left one tab in Chrome
 | ||||||
|  | #define CHRM_R LALT(LGUI(KC_RIGHT)) //Move right one tab in Chrome
 | ||||||
|  | #define S_CMD_S LGUI_T(KC_S) //`S` when typing `CMD` when held
 | ||||||
|  | #define D_CMD_OPT LGUI_T(LALT_T(KC_D)) //`D` when typing `CMD + Opt` when held
 | ||||||
|  | 
 | ||||||
|  | static uint16_t key_timer; //key timer for macros
 | ||||||
|  | 
 | ||||||
|  | //Tap Dance Definitions
 | ||||||
|  | qk_tap_dance_action_t tap_dance_actions[] = { | ||||||
|  |   //Tap once for Copy, twice for Paste, three times for Cut.
 | ||||||
|  |   [TD_COPY_CUT]  = ACTION_TAP_DANCE_DOUBLE(LGUI(KC_C),LGUI(KC_X)), | ||||||
|  |     //Tap once for Snagit, twice for Cmd + Shift + Opt + 4 (OS X cropping screenshot that is copied to the clipboard only.)
 | ||||||
|  |   [TD_SNAGIT] = ACTION_TAP_DANCE_DOUBLE(LCTL(LSFT(KC_C)), LCTL(LGUI(LSFT(KC_4)))), | ||||||
|  |   [CT_LBP] = ACTION_TAP_DANCE_DOUBLE (KC_LBRC, KC_LPRN), | ||||||
|  |   [CT_RBP] = ACTION_TAP_DANCE_DOUBLE (KC_RBRC, KC_RPRN) | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||||
|  | 
 | ||||||
|  |   /* Keymap 0: Basic layer
 | ||||||
|  |   * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |   * |   =    |  F1  |  F2  |  F3  |  F4  |  F5  |  F6  |           |  F7  |  F8  |  F9  |  F10 |  F11 |  F12 |   -    | | ||||||
|  |   * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |   * | Tab    |   Q  |   W  |   E  |   R  |   T  | "> " |           | []() |   Y  |   U  |   I  |   O  |   P  |   \    | | ||||||
|  |   * |--------+------+------+------+------+------|      |           | SCRN |------+------+------+------+------+--------| | ||||||
|  |   * | Hyper  |   A  |S /CMD|D/OPT | F /MD|   G  |------|           |------|   H  |   J  |K/OPT |L /CMD| ; /L2| '/Hyper| | ||||||
|  |   * |--------+------+------+------+------+------|   (  |           |   )  |------+------+------+------+------+--------| | ||||||
|  |   * |Shft Tab|Z/Ctrl|X/Alt |   C  |   V  |   B  | [  { |           | ]  } |   N  |   M  |   ,  | ./Alt|//Ctrl|CMD+SHFT|
 | ||||||
|  |   * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |   *   |  `   |Zendsk|RBMINE|CMD+S | ToDo |                                       |   _  |      |  00  |  00  |OLD BASE| | ||||||
|  |   *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |   *                                        ,-------------.       ,--------------. | ||||||
|  |   *                                        | Esc  | Home |       |Layer?| Esc   | | ||||||
|  |   *                                 ,------|------|------|       |------+-------+------. | ||||||
|  |   *                                 |      |      | End  |       | Undo |       |      | | ||||||
|  |   *                                 |Shift |Backsp|------|       |------| Return|Space/| | ||||||
|  |   *                                 | OSM  | /NUM | DEL  |       | Ctrl | /SYML |Arrows| | ||||||
|  |   *                                 `--------------------'       `---------------------' | ||||||
|  |   * | ||||||
|  |   *Copy/Cut key copies on tap, cut's on two taps. | ||||||
|  |   * | ||||||
|  |   *One tap on Snagit key = is Ctrl + Shift + C which is Snagit's selector. | ||||||
|  |   *Two taps on Snagit key = Cmd + Shift + Opt + 4 (OS X cropping screenshot that is copied to the clipboard only.) | ||||||
|  |   */ | ||||||
|  | 
 | ||||||
|  |   [BASE] = LAYOUT_ergodox( | ||||||
|  |     //left hand
 | ||||||
|  |     KC_EQUAL,           KC_F1,    KC_F2,       KC_F3,       KC_F4,      KC_F5,    KC_F6, | ||||||
|  |     KC_TAB,             KC_Q,     KC_W,        KC_E,        KC_R,       KC_T,     M_GREATER, | ||||||
|  |     OSM(MOD_HYPR),      KC_A,  S_CMD_S,    ALT_T(KC_D), LT(MKDWN,KC_F), KC_G, | ||||||
|  |     LSFT(KC_TAB), CTL_T(KC_Z), ALT_T(KC_X),    KC_C,        KC_V,       KC_B,     TD(CT_LBP), | ||||||
|  |                KC_GRAVE, ZENDESK, RUBYMINE,   LGUI(KC_S),   TODO, | ||||||
|  |                                                           KC_ESCAPE,    KC_HOME, | ||||||
|  |                                                                         KC_END, | ||||||
|  |                                   OSM(MOD_LSFT), LT(NUM,KC_BSPACE),     LT(MKDWN,KC_DELETE), | ||||||
|  | 
 | ||||||
|  |     //right hand
 | ||||||
|  |     KC_F7,           KC_F8,     KC_F9,    KC_F10,   KC_F11,        KC_F12,           KC_MINUS, | ||||||
|  |     MD_LINK,          KC_Y,     KC_U,     KC_I,     KC_O,          KC_P,             KC_BSLASH, | ||||||
|  |                       KC_H,     KC_J, ALT_T(KC_K),  LGUI_T(KC_L),  LT(MEDIA,KC_SCOLON),  ALL_T(KC_QUOTE), | ||||||
|  |     TD(CT_RBP),       KC_N,     KC_M,     KC_COMMA, ALT_T(KC_DOT), CTL_T(KC_SLASH),  SCMD_T(_______), | ||||||
|  |                 LSFT(KC_MINUS), _______,  DBLE_ZER0, DBLE_ZER0,   TO(OLD_BASE), | ||||||
|  |     L_ID_0,         KC_ESCAPE, | ||||||
|  |     LGUI(KC_Z), | ||||||
|  |     LT(MEDIA,KC_LCTL),  LT(SYMBL,KC_ENTER),  LT(ARROWS,KC_SPACE)), | ||||||
|  | 
 | ||||||
|  |     /* Keymap 1: OLD Base layer
 | ||||||
|  |     * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |     * |   =    |   1  |   2  |   3  |   4  |   5  | []() |           |Snagit|   6  |   7  |   8  |   9  |   0  |   -    | | ||||||
|  |     * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |     * | Tab    |   Q  |   W  |   E  |   R  |   T  | "> " |           | []() |   Y  |   U  |   I  |   O  |   P  |   \    | | ||||||
|  |     * |--------+------+------+------+------+------|      |           | SCRN |------+------+------+------+------+--------| | ||||||
|  |     * | Hyper  |   A  |S /CMD|   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |L /CMD| ; /L2| '/Hyper| | ||||||
|  |     * |--------+------+------+------+------+------|   (  |           |   )  |------+------+------+------+------+--------| | ||||||
|  |     * |Shft Tab|Z/Ctrl|X/Alt |   C  |   V  |   B  | [  { |           | ]  } |   N  |   M  |   ,  | ./Alt|//Ctrl|CMD+SHFT|
 | ||||||
|  |     * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |     *   |  `   |Zendsk|RBMINE|CMD+S | ToDo |                                       |   _  |      |  00  |  00  |ToBase| | ||||||
|  |     *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |     *                                        ,-------------.       ,--------------. | ||||||
|  |     *                                        | Esc  | Home |       |Layer?| Esc   | | ||||||
|  |     *                                 ,------|------|------|       |------+-------+------. | ||||||
|  |     *                                 |      |      | End  |       | Undo |       |      | | ||||||
|  |     *                                 |Shift |Backsp|------|       |------| Return|Space/| | ||||||
|  |     *                                 | OSM  | /L5  | DEL  |       | Ctrl | /LT1  |Arrows| | ||||||
|  |     *                                 `--------------------'       `---------------------' | ||||||
|  |     * | ||||||
|  |     *Copy/Cut key copies on tap, cut's on two taps. | ||||||
|  |     * | ||||||
|  |     *One tap on Snagit key = is Ctrl + Shift + C which is Snagit's selector. | ||||||
|  |     *Two taps on Snagit key = Cmd + Shift + Opt + 4 (OS X cropping screenshot that is copied to the clipboard only.) | ||||||
|  |     */ | ||||||
|  | 
 | ||||||
|  |     [OLD_BASE] = LAYOUT_ergodox( | ||||||
|  |       //left hand
 | ||||||
|  |       KC_EQUAL,           KC_1,     KC_2,    KC_3,        KC_4,     KC_5,     M_LINK, | ||||||
|  |       KC_TAB,             KC_Q,     KC_W,    KC_E,        KC_R,     KC_T,     M_GREATER, | ||||||
|  |       OSM(MOD_HYPR),      KC_A,  S_CMD_S, D_CMD_OPT, LT(MKDWN,KC_F),KC_G, | ||||||
|  |       LSFT(KC_TAB), CTL_T(KC_Z), ALT_T(KC_X),  KC_C,      KC_V,     KC_B,     TD(CT_LBP), | ||||||
|  |                  KC_GRAVE, ZENDESK, RUBYMINE, LGUI(KC_S), TODO, | ||||||
|  |                                                           KC_ESCAPE, KC_HOME, | ||||||
|  |                                                                      KC_END, | ||||||
|  |                                     OSM(MOD_LSFT), LT(NUM,KC_BSPACE),  LT(MKDWN,KC_DELETE), | ||||||
|  | 
 | ||||||
|  |       //right hand
 | ||||||
|  |       TD(TD_SNAGIT),    KC_6,     KC_7,     KC_8,     KC_9,          KC_0,             KC_MINUS, | ||||||
|  |       MD_LINK,          KC_Y,     KC_U,     KC_I,     KC_O,          KC_P,             KC_BSLASH, | ||||||
|  |                         KC_H,     KC_J,     KC_K,     LGUI_T(KC_L),  LT(MEDIA,KC_SCOLON),  ALL_T(KC_QUOTE), | ||||||
|  |       TD(CT_RBP),       KC_N,     KC_M,     KC_COMMA, ALT_T(KC_DOT), CTL_T(KC_SLASH),  SCMD_T(_______), | ||||||
|  |                   LSFT(KC_MINUS), _______,  DBLE_ZER0, DBLE_ZER0,   TO(BASE), | ||||||
|  |       L_ID_0,         KC_ESCAPE, | ||||||
|  |       LGUI(KC_Z), | ||||||
|  |       LT(MEDIA,KC_LCTL),  LT(SYMBL,KC_ENTER),  LT(ARROWS,KC_SPACE)), | ||||||
|  | 
 | ||||||
|  |     /* Keymap 2: Symbol
 | ||||||
|  |      * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |      * |        |  1   |   2  |   3  |   4  |   5  | []() |           |Snagit|   6  |  7   |  8   |   9  |   0  |   -    | | ||||||
|  |      * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |      * |        |      |   $  |   &  |   `  |   |  | Cmd  |           |      |      |      |   *  |      |      |        | | ||||||
|  |      * |--------+------+------+------+------+------| + K  |           |      |------+------+------+------+------+--------| | ||||||
|  |      * |        |   #  |   $  |   &  |   !  |   @  |------|           |------|   -  |   [  |   ]  |   (  |   )  |        | | ||||||
|  |      * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |      * |        |   %  |   ^  |      |      |   ~  |      |           |      |      |      |      |      |      |        | | ||||||
|  |      * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |      *   |      |      |      |      |      |                                       |      |      |      |      |      | | ||||||
|  |      *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |      *                                        ,-------------.       ,-------------. | ||||||
|  |      *                                        |      |      |       |Layer?|      | | ||||||
|  |      *                                 ,------|------|------|       |------+------+------. | ||||||
|  |      *                                 |      |      |      |       |      |      |      | | ||||||
|  |      *                                 |      |      |------|       |------|      |      | | ||||||
|  |      *                                 |      |      |      |       |      |      |      | | ||||||
|  |      *                                 `--------------------'       `--------------------' | ||||||
|  |      */ | ||||||
|  |     // SYMBOLS
 | ||||||
|  |   [SYMBL] = LAYOUT_ergodox( | ||||||
|  |     //left hand
 | ||||||
|  |     _______,          KC_1,        KC_2,           KC_3,         KC_4,        KC_5,      M_LINK, | ||||||
|  |     _______,        _______,     KC_DLR,        KC_AMPR,     KC_GRAVE,     KC_PIPE,  LGUI(KC_K), | ||||||
|  |     _______,        KC_HASH,     KC_DLR,        KC_AMPR,      KC_EXLM,       KC_AT, | ||||||
|  |     _______,        KC_PERC,     KC_CIRC,       _______,      _______,     KC_TILD,     _______, | ||||||
|  |                     _______,     _______,       _______,      _______,     _______, | ||||||
|  |                                                                                         _______,   _______, | ||||||
|  |                                                                                                    _______, | ||||||
|  |                                                                            _______,     _______,   _______, | ||||||
|  | 
 | ||||||
|  |     //right hand
 | ||||||
|  |    TD(TD_SNAGIT),    KC_6,        KC_7,         KC_8,         KC_9,        KC_0,   KC_MINUS, | ||||||
|  |     _______,      _______,     _______,      KC_PAST,      _______,     _______,    _______, | ||||||
|  |                   KC_MINUS,    KC_LBRC,      KC_RBRC,      KC_LPRN,     KC_RPRN,    _______, | ||||||
|  |     _______,      _______,     _______,      _______,      _______,     _______,    _______, | ||||||
|  |                   _______,     _______,      _______,      _______,     _______, | ||||||
|  |     L_ID_1,       _______, | ||||||
|  |     _______, | ||||||
|  |     _______,      _______,     _______), | ||||||
|  | 
 | ||||||
|  |   /* Keymap 3: Media and mouse keys
 | ||||||
|  |    * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |    * |        |      |      |      |      |      |      |           | XKCD |      |      |      |      |      |  F15   | | ||||||
|  |    * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |    * |        |      |Whl Up| MsUp |Whl Dn|      |      |           |      |      |      |      |      |      |  F14   | | ||||||
|  |    * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |    * |        |Ctl L |MsLeft|MsDown|MsRght| Ctl R|------|           |------|      | Mute | VolDn| VolUp| TL 2 |  Play  | | ||||||
|  |    * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |    * |        |      |WHL L |      |Whl R |      |      |           |      |      |      | Prev | Next |      |        | | ||||||
|  |    * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |    *   |      |      |      |      |      |                                       | Mute |      |      |      |      | | ||||||
|  |    *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |    *                                        ,-------------.       ,-------------. | ||||||
|  |    *                                        |      |      |       |LAYER?|      | | ||||||
|  |    *                                 ,------|------|------|       |------+------+------. | ||||||
|  |    *                                 | Left |Right |      |       |      |Copy/ | paste| | ||||||
|  |    *                                 | Click|Click |------|       |------| cut  |/paste| | ||||||
|  |    *                                 |      |      |      |       |      |      |spcial| | ||||||
|  |    *                                 `--------------------'       `--------------------' | ||||||
|  |    */ | ||||||
|  |   // MEDIA AND MOUSE
 | ||||||
|  | 
 | ||||||
|  |   [MEDIA] = LAYOUT_ergodox( | ||||||
|  |     //left hand
 | ||||||
|  |     _______,    _______,         _______,         _______,         _______,         _______,         _______, | ||||||
|  |     _______,    _______,         KC_MS_WH_UP,     KC_MS_UP,        KC_MS_WH_DOWN,   _______,         _______, | ||||||
|  |     _______,    LCTL(KC_LEFT),   KC_MS_LEFT,      KC_MS_DOWN,      KC_MS_RIGHT,     RCTL(KC_RIGHT), | ||||||
|  |     XXXXXXX,    _______,         KC_MS_WH_LEFT,   _______,         KC_MS_WH_RIGHT,  _______,         _______, | ||||||
|  |                 _______,         _______,         _______,         _______,         _______, | ||||||
|  |                                                                                     _______,         _______, | ||||||
|  |                                                                                                      _______, | ||||||
|  |                                                                    KC_MS_BTN1,      KC_MS_BTN2,      _______, | ||||||
|  | 
 | ||||||
|  |     //right hand
 | ||||||
|  |     XKCD,       _______,       _______,         _______,         _______,    _______,    KC_F15, | ||||||
|  |     _______,    _______,       _______,         _______,         _______,    _______,    KC_F14, | ||||||
|  |                 _______, KC_AUDIO_MUTE,     KC_AUDIO_VOL_DOWN,       KC_AUDIO_VOL_UP,    _______,    KC_MEDIA_PLAY_PAUSE, | ||||||
|  |    _______,     _______,       _______,   KC_MEDIA_PREV_TRACK,   KC_MEDIA_NEXT_TRACK,    _______,    XXXXXXX, | ||||||
|  |                                _______,         _______,         _______,    _______,    _______, | ||||||
|  |     L_ID_2,     _______, | ||||||
|  |     _______, | ||||||
|  |     _______,    TD(TD_COPY_CUT),    PAST_PS), | ||||||
|  | 
 | ||||||
|  |   /* Keymap 4: Markdown Symbols
 | ||||||
|  |   * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |   * |        |      |      |      |      |      |      |           |SCRNCL|      |      |      |      |      |        | | ||||||
|  |   * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |   * |        |      |      |      |      |      |      |           |      |      |  ``` |  **  |   _  |  `   |        | | ||||||
|  |   * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |   * |        |      |      |      | TL MD|      |------|           |------|   -  |   [  |   ]  |   (  |   )  |        | | ||||||
|  |   * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |   * |        |      |      |      |      |      |      |           |      |   #  |  ##  |  ### | #### | #####|        | | ||||||
|  |   * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |   *   |      |      |      |      |      |                                       |      |      |      |      |      | | ||||||
|  |   *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |   *                                        ,-------------.       ,-------------. | ||||||
|  |   *                                        |      |      |       |Layer?|      | | ||||||
|  |   *                                 ,------|------|------|       |------+------+------. | ||||||
|  |   *                                 |      |      |      |       |      |      |      | | ||||||
|  |   *                                 |      |      |------|       |------|      |      | | ||||||
|  |   *                                 |      |      |      |       |      |      |      | | ||||||
|  |   *                                 `--------------------'       `--------------------' | ||||||
|  |   * Sc cp = OS X cropping screenshot that is copied to the clipboard only. | ||||||
|  |   */ | ||||||
|  |   // Markdown  Layer
 | ||||||
|  |   [MKDWN] = LAYOUT_ergodox( | ||||||
|  |     //left hand
 | ||||||
|  |     _______,       _______,       _______,       _______,       _______,       _______,       _______, | ||||||
|  |     _______,       _______,       _______,       _______,       _______,       _______,       _______, | ||||||
|  |     _______,       _______,       _______,       _______,       _______,       _______, | ||||||
|  |     _______,       _______,       _______,       _______,       _______,       _______,       _______, | ||||||
|  |                    _______,       _______,       _______,       _______,       _______, | ||||||
|  |                                                                                _______,       _______, | ||||||
|  |                                                                                               _______, | ||||||
|  |                                                 _______,     _______, _______, | ||||||
|  | 
 | ||||||
|  |    //right hand
 | ||||||
|  |    SCRN_CLIPB,       _______,       _______,       _______,       _______,       _______,       _______, | ||||||
|  |    _______,          _______,   TRPLE_GRAVE,     DBLE_ASTR,LSFT(KC_MINUS),      KC_GRAVE,       _______, | ||||||
|  |                     KC_MINUS,       KC_LBRC,       KC_RBRC,       KC_LPRN,       KC_RPRN,       _______, | ||||||
|  |    _______,            H_ONE,         H_TWO,       H_THREE,        H_FOUR,        H_FIVE,       _______, | ||||||
|  |                      _______,       _______,       _______,       _______,       _______, | ||||||
|  |    _______,          _______, | ||||||
|  |    _______, | ||||||
|  |    _______,          _______,       _______), | ||||||
|  | 
 | ||||||
|  |    /* Keymap 5: Arrows
 | ||||||
|  |     * | ||||||
|  |     * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |     * |  RESET |      |      |      |      |      |      |           |      |      |      |      |      |      |        | | ||||||
|  |     * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |     * |        |      | Opt+L|  Up  |Opt+R |      |      |           |      |      | Opt+L|  Up  |Opt+R |      |        | | ||||||
|  |     * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |     * |        |Ctrl+L| Left |  Dn  | Right|Ctrl+R|------|           |------|Ctrl+L| Left |  Dn  | Right|Ctrl+R|        | | ||||||
|  |     * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |     * |        |      |      |      |      |      |      |           |      |      |      |      |      |      |        | | ||||||
|  |     * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |     *   |      |      |      |      |      |                                       |         |      |   |      |      | | ||||||
|  |     *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |     *                                        ,-------------.       ,-------------. | ||||||
|  |     *                                        |      |      |       |      |      | | ||||||
|  |     *                                 ,------|------|------|       |------+------+------. | ||||||
|  |     *                                 |      |      |      |       |      |      |      | | ||||||
|  |     *                                 |      |      |------|       |------|      |      | | ||||||
|  |     *                                 |      |      |      |       |      |      |      | | ||||||
|  |     *                                 `--------------------'       `--------------------' | ||||||
|  |     * | ||||||
|  |     * | ||||||
|  |     * | ||||||
|  |     */ | ||||||
|  |    // Movement  Layer
 | ||||||
|  | 
 | ||||||
|  |   [ARROWS] = LAYOUT_ergodox( | ||||||
|  |   //left hand
 | ||||||
|  |     RESET,       _______,       _______,       _______,        _______,         _______,       _______, | ||||||
|  |     _______,     _______,        CHRM_L,       KC_UP,           CHRM_R,         _______,       _______, | ||||||
|  |     _______,LCTL(KC_LEFT),      KC_LEFT,       KC_DOWN,       KC_RIGHT,    LCTL(KC_RIGHT), | ||||||
|  |     _______,    _______,       _______,       _______,        _______,         _______,       _______, | ||||||
|  |                  _______,       _______,       _______,        _______,         _______, | ||||||
|  |                                                                                 _______,       _______, | ||||||
|  |                                                                                                _______, | ||||||
|  |                                                                _______,         _______,       _______, | ||||||
|  |   //right hand
 | ||||||
|  |     _______,     _______,       _______,       _______,        _______,         _______,       _______, | ||||||
|  |     _______,     _______,        CHRM_L,         KC_UP,         CHRM_R,         _______,       _______, | ||||||
|  |            LCTL(KC_LEFT),       KC_LEFT,       KC_DOWN,       LGUI_T(KC_RIGHT),  LCTL(KC_RIGHT),       _______, | ||||||
|  |     _______,     _______,       _______,       _______,        _______,         _______,       _______, | ||||||
|  |                  _______,       _______,       _______,        _______,         _______, | ||||||
|  |     _______,     _______, | ||||||
|  |     _______, | ||||||
|  |     _______,     _______,       _______), | ||||||
|  | 
 | ||||||
|  |     /* Keymap 6: Numpad
 | ||||||
|  |     * ,--------------------------------------------------.           ,--------------------------------------------------. | ||||||
|  |     * |        |      |      |      |      |      |      |           |      |      |      |      |      |      |        | | ||||||
|  |     * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------| | ||||||
|  |     * |        |      |      |      |      |      |      |           |      |   =  |   7  |   8  |   9  |   *  |        | | ||||||
|  |     * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |     * |        |      |      |Cp/Cut|paste |      |------|           |------|   +  |   4  |   5  |   6  |   +  |        | | ||||||
|  |     * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------| | ||||||
|  |     * |        |      |      |      |      |      |      |           |      |   -  |   1  |   2  |   3  |   /  |        | | ||||||
|  |     * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------' | ||||||
|  |     *   |      |      |      |      |      |                                       |   0  |   .  |  00  |  00  | Enter| | ||||||
|  |     *   `----------------------------------'                                       `----------------------------------' | ||||||
|  |     *                                        ,-------------.       ,-------------. | ||||||
|  |     *                                        |      |      |       |      |      | | ||||||
|  |     *                                 ,------|------|------|       |------+------+------. | ||||||
|  |     *                                 |      |      |      |       |      |Nupmad|      | | ||||||
|  |     *                                 |      |      |------|       |------|Enter |      | | ||||||
|  |     *                                 |      |      |      |       |      |      |      | | ||||||
|  |     *                                 `--------------------'       `--------------------' | ||||||
|  |     */ | ||||||
|  |     // Numpad  Layer
 | ||||||
|  |     [NUM] = LAYOUT_ergodox( | ||||||
|  |       //left hand
 | ||||||
|  |       _______,        _______,     _______,     _______,        _______,        _______,    _______, | ||||||
|  |       _______,        _______,     _______,     _______,        _______,        _______,    _______, | ||||||
|  |       _______,        _______,     _______,   TD(TD_COPY_CUT),  PAST_PS,        _______, | ||||||
|  |       _______,        _______,     _______,     _______,        _______,        _______,    _______, | ||||||
|  |                       _______,     _______,     _______,        _______,        _______, | ||||||
|  |                                                                                             _______,    _______, | ||||||
|  |                                                                                                         _______, | ||||||
|  |                                                                             _______,        _______,    _______, | ||||||
|  | 
 | ||||||
|  |       //right hand
 | ||||||
|  |       _______,      _______,      _______,       _______,     _______,     _______,        _______, | ||||||
|  |       _______,     KC_EQUAL,      KC_7,          KC_8,        KC_9,        KC_ASTR,        _______, | ||||||
|  |                     KC_PLUS,      KC_4,          KC_5,        KC_6,        KC_PLUS,        _______, | ||||||
|  |       _______,     KC_MINUS,      KC_1,          KC_2,        KC_3,        KC_KP_SLASH,    _______, | ||||||
|  |                     KC_KP_0,      KC_DOT,        DBLE_ZER0,   DBLE_ZER0,   KC_KP_ENTER, | ||||||
|  |       _______,      _______, | ||||||
|  |       _______, | ||||||
|  |       _______,      KC_PENT,      _______), | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||||||
|  | 
 | ||||||
|  |   switch (keycode) { | ||||||
|  |     case EPRM: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         eeconfig_init(); | ||||||
|  |       } | ||||||
|  |       return false; | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case VRSN: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||||||
|  |       } | ||||||
|  |       return false; | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case MD_LINK: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         key_timer = timer_read(); | ||||||
|  |       } else { | ||||||
|  |         if (timer_elapsed(key_timer) > 150) { | ||||||
|  |           SEND_STRING ("([Video]("); | ||||||
|  |         } else { | ||||||
|  |           SEND_STRING ("([Screenshot]("); | ||||||
|  |         } | ||||||
|  |         SEND_STRING(SS_LGUI("v")); | ||||||
|  |         SEND_STRING("))"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case XKCD: | ||||||
|  |         if (record->event.pressed) { | ||||||
|  |         SEND_STRING ("https://xkcd.com/1319/"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case DBLE_ZER0: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("00"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case DBLE_ASTR: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("**"); | ||||||
|  |         SEND_STRING ("**"); | ||||||
|  |         SEND_STRING (SS_TAP(X_LEFT)); | ||||||
|  |         SEND_STRING (SS_TAP(X_LEFT)); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case TRPLE_GRAVE: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("```"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case L_ID_0: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         SEND_STRING (SS_LGUI(" ")); | ||||||
|  |         SEND_STRING ("Layer 0: Base"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case L_ID_1: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         SEND_STRING (SS_LGUI(" ")); | ||||||
|  |         SEND_STRING ("Layer 1: Symbols"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case L_ID_2: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         SEND_STRING (SS_LGUI(" ")); | ||||||
|  |         SEND_STRING ("Layer 2: Media & Mousekeys"); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case PAST_PS: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         key_timer = timer_read(); | ||||||
|  |       } else { | ||||||
|  |         if (timer_elapsed(key_timer) > 150) { | ||||||
|  |           SEND_STRING (SS_LGUI("V")); // Paste special
 | ||||||
|  |         } else { | ||||||
|  |           SEND_STRING (SS_LGUI("v")); // Paste
 | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case TODO: | ||||||
|  |       if (record->event.pressed) { | ||||||
|  |         key_timer = timer_read(); | ||||||
|  |       } else { | ||||||
|  |         if (timer_elapsed(key_timer) > 150) { //switch to Todoist when held and released
 | ||||||
|  |           SEND_STRING (SS_LGUI(" ")); | ||||||
|  |           SEND_STRING ("Todoist"); | ||||||
|  |           SEND_STRING (SS_TAP(X_ENTER)); | ||||||
|  |         } else { | ||||||
|  |           SEND_STRING (SS_LGUI(SS_LCTRL("a"))); //macro to open Todoist new task dialog
 | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case RUBYMINE: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING (SS_LGUI(" ")); | ||||||
|  |         SEND_STRING ("RUBYMINE"); | ||||||
|  |         SEND_STRING (SS_TAP(X_ENTER)); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case ZENDESK: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING (SS_LGUI(" ")); | ||||||
|  |         SEND_STRING ("||ZEN"); | ||||||
|  |         SEND_STRING (SS_TAP(X_ENTER)); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case H_ONE: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("# "); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case H_TWO: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("## "); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case H_THREE: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("### "); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case H_FOUR: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("#### "); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  | 
 | ||||||
|  |     case H_FIVE: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |         SEND_STRING ("##### "); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  |     case M_LINK: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |           SEND_STRING ("[]()"); | ||||||
|  |         } | ||||||
|  |         break; | ||||||
|  |     case M_GREATER: | ||||||
|  |       if (record->event.pressed){ | ||||||
|  |           SEND_STRING ("> "); | ||||||
|  |       } | ||||||
|  |       break; | ||||||
|  |     } | ||||||
|  |   return true; | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | void matrix_scan_user(void) { | ||||||
|  |   uint8_t layer = biton32(layer_state); | ||||||
|  | 
 | ||||||
|  |   ergodox_board_led_off(); | ||||||
|  |   ergodox_right_led_1_off(); | ||||||
|  |   ergodox_right_led_2_off(); | ||||||
|  |   ergodox_right_led_3_off(); | ||||||
|  |   switch (layer) { | ||||||
|  |     case 1: | ||||||
|  |       ergodox_right_led_1_on(); | ||||||
|  |       break; | ||||||
|  |     case 2: | ||||||
|  |       ergodox_right_led_2_on(); | ||||||
|  |       break; | ||||||
|  |     default: | ||||||
|  |         break; | ||||||
|  |   } | ||||||
|  | }; | ||||||
							
								
								
									
										3
									
								
								layouts/community/ergodox/meagerfindings/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								layouts/community/ergodox/meagerfindings/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,3 @@ | |||||||
|  | COMMAND_ENABLE = no | ||||||
|  | TAP_DANCE_ENABLE = yes | ||||||
|  | FORCE_NKRO = yes | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Mat Greten
						Mat Greten