qwerty_code_friendly: configurable left thumb
Also add mouse-wheel keys.
This commit is contained in:
		
				
					committed by
					
						
						Jack Humbert
					
				
			
			
				
	
			
			
			
						parent
						
							363aa8aa2e
						
					
				
				
					commit
					aee6785476
				
			@@ -15,16 +15,25 @@
 | 
			
		||||
#define CFQ_USE_DYNAMIC_MACRO
 | 
			
		||||
 | 
			
		||||
#if !defined(CFQ_USER_KEY1)
 | 
			
		||||
#define CFQ_USER_KEY1 KC_SPC
 | 
			
		||||
#define CFQ_USER_KEY1 CFQ_KC_FN1
 | 
			
		||||
#endif
 | 
			
		||||
#if !defined(CFQ_USER_KEY2)
 | 
			
		||||
#define CFQ_USER_KEY2 KC_ENT
 | 
			
		||||
#define CFQ_USER_KEY2 KC_INS
 | 
			
		||||
#endif
 | 
			
		||||
#if !defined(CFQ_USER_KEY3)
 | 
			
		||||
#define CFQ_USER_KEY3 CFQ_KC_FN3
 | 
			
		||||
#endif
 | 
			
		||||
#if !defined(CFQ_USER_KEY4)
 | 
			
		||||
#define CFQ_USER_KEY4 KC_APP
 | 
			
		||||
#define CFQ_USER_KEY4 KC_SPC
 | 
			
		||||
#endif
 | 
			
		||||
#if !defined(CFQ_USER_KEY5)
 | 
			
		||||
#define CFQ_USER_KEY5 KC_ENT
 | 
			
		||||
#endif
 | 
			
		||||
#if !defined(CFQ_USER_KEY6)
 | 
			
		||||
#define CFQ_USER_KEY5 CFQ_KC_FN2
 | 
			
		||||
#endif
 | 
			
		||||
#if !defined(CFQ_USER_KEY7)
 | 
			
		||||
#define CFQ_USER_KEY5 CFQ_KC_FN1
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define BASE 0 // default layer
 | 
			
		||||
@@ -93,16 +102,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 * |--------+------+------+------+------+------|   [  |           |  ]   |------+------+------+------+------+--------|
 | 
			
		||||
 * | LShift |   Z  |   X  |   C  |   V  |   B  |      |           |      |   N  |   M  |   ,  |   .  |   /  | RShift |
 | 
			
		||||
 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
 | 
			
		||||
 *   | LCtl |Super | Alt  | USR4 |Space |                                       | Left | Down | Up   |Right | Del  |
 | 
			
		||||
 *   | LCtl |Super | Alt  | ~L1  |Space |                                       | Left | Down | Up   |Right | Del  |
 | 
			
		||||
 *   `----------------------------------'                                       `----------------------------------'
 | 
			
		||||
 *                                        ,-------------.       ,-------------.
 | 
			
		||||
 *                                        | Ins  | USR3 |       | Home | End  |
 | 
			
		||||
 *                                        | Ins  | ~L3  |       | Home | End  |
 | 
			
		||||
 *                                 ,------|------|------|       |------+------+------.
 | 
			
		||||
 *                                 |      |      | ~L2  |       | PgUp |      |      |
 | 
			
		||||
 *                                 | USR1 | USR2 |------|       |------|Enter |Space |
 | 
			
		||||
 *                                 |Space |Enter |------|       |------|Enter |Space |
 | 
			
		||||
 *                                 |      |      | ~L1  |       | PgDn |      |      |
 | 
			
		||||
 *                                 `--------------------'       `--------------------'
 | 
			
		||||
 *
 | 
			
		||||
 * Optional overrides: see CFQ_USER_KEY# defines.
 | 
			
		||||
 *
 | 
			
		||||
 *   -------+------+------+------+------+
 | 
			
		||||
 *   |      |      |      | USR1 |      |
 | 
			
		||||
 *   `----------------------------------'
 | 
			
		||||
 *
 | 
			
		||||
 *                                        ,-------------.
 | 
			
		||||
 *                                        | USR2 | USR3 |
 | 
			
		||||
 *                                 ,------|------|------|
 | 
			
		||||
 *                                 |      |      | USR6 |
 | 
			
		||||
 *                                 | USR4 | USR5 |------|
 | 
			
		||||
 *                                 |      |      | USR7 |
 | 
			
		||||
 *                                 `--------------------'
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
// If it accepts an argument (i.e, is a function), it doesn't need KC_.
 | 
			
		||||
// Otherwise, it needs KC_*
 | 
			
		||||
[BASE] = LAYOUT_ergodox(  // layer 0 : default
 | 
			
		||||
@@ -111,10 +135,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  KC_TAB,  KC_Q,    KC_W,    KC_E,          KC_R,   KC_T,    KC_LPRN,
 | 
			
		||||
  KC_ESC,  KC_A,    KC_S,    KC_D,          KC_F,   KC_G,
 | 
			
		||||
  KC_LSFT, KC_Z,    KC_X,    KC_C,          KC_V,   KC_B,    KC_LBRC,
 | 
			
		||||
  KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY4, KC_SPC,
 | 
			
		||||
                                                    KC_INS,        CFQ_USER_KEY3,
 | 
			
		||||
                                                                   CFQ_KC_FN2,
 | 
			
		||||
                                     CFQ_USER_KEY1, CFQ_USER_KEY2, CFQ_KC_FN1,
 | 
			
		||||
  KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY1, KC_SPC,
 | 
			
		||||
                                                    CFQ_USER_KEY2, CFQ_USER_KEY3,
 | 
			
		||||
                                                                   CFQ_USER_KEY6,
 | 
			
		||||
                                     CFQ_USER_KEY4, CFQ_USER_KEY5, CFQ_USER_KEY7,
 | 
			
		||||
  // right hand
 | 
			
		||||
  KC_RCBR,     KC_CIRC, KC_AMPR, KC_ASTR,KC_MINS, KC_EQL,    KC_BSPC,
 | 
			
		||||
  KC_RPRN,     KC_Y,    KC_U,    KC_I,   KC_O,    KC_P,      KC_BSLS,
 | 
			
		||||
@@ -182,10 +206,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 * ,--------------------------------------------------.           ,--------------------------------------------------.
 | 
			
		||||
 * |        |      |      |      |      |      |      |           |      |      |      |      |      |      |        |
 | 
			
		||||
 * |--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
 | 
			
		||||
 * |        |      |      | MsUp |      |      |      |           |      |      |      |      |      |      |        |
 | 
			
		||||
 * |        |      |      | MsUp |      |      |MWhlUp|           |      |      |      |      |      |      |        |
 | 
			
		||||
 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
 | 
			
		||||
 * |        |      |MsLeft|MsDown|MsRght|      |------|           |------| Left | Down | Up   |Right |      |        |
 | 
			
		||||
 * |--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
 | 
			
		||||
 * |--------+------+------+------+------+------|MWhlDn|           |      |------+------+------+------+------+--------|
 | 
			
		||||
 * |        |      | Rclk | Mclk | Lclk |      |      |           |      |      |      |      |      |      |        |
 | 
			
		||||
 * `--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
 | 
			
		||||
 *   |      |      |      |      |      |                                       |      |      |      |      |      |
 | 
			
		||||
@@ -202,9 +226,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[MDIA] = LAYOUT_ergodox(
 | 
			
		||||
  // left hand
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_WH_U,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN3, KC_BTN1, KC_TRNS, KC_TRNS,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN3, KC_BTN1, KC_TRNS, KC_WH_D,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
                                      KC_MRWD, KC_MFFD,
 | 
			
		||||
                                               KC_TRNS,
 | 
			
		||||
 
 | 
			
		||||
@@ -27,7 +27,7 @@
 | 
			
		||||
Some optional behavior is configurable without editing the code
 | 
			
		||||
using `CFQ_` prefixed defines which can be set by passing `EXTRAFLAGS` to make.
 | 
			
		||||
 | 
			
		||||
- `CFQ_USER_KEY1` (1..4) are used for custom-keys
 | 
			
		||||
- `CFQ_USER_KEY1` (1..7) are used for custom-keys
 | 
			
		||||
- `CFQ_USE_MOMENTARY_LAYER_KEYS` is used to prevent layer keys from toggling when tapped.
 | 
			
		||||
- `CFQ_USE_SWAP_RIGHT_SPACE_ENTER` swap Enter and Space on the right hand thumb cluster.
 | 
			
		||||
  While asymmetric, it makes Enter more easily accessible.
 | 
			
		||||
@@ -38,14 +38,8 @@ using `CFQ_` prefixed defines which can be set by passing `EXTRAFLAGS` to make.
 | 
			
		||||
 | 
			
		||||
## Keymap 0: Basic layer
 | 
			
		||||
 | 
			
		||||
When undefined:
 | 
			
		||||
 | 
			
		||||
- `USR1` defaults to `KC_SPC`, otherwise use `CFQ_USER_KEY1`.
 | 
			
		||||
- `USR2` defaults to `KC_ENT`, otherwise use `CFQ_USER_KEY2`.
 | 
			
		||||
- `USR3` defaults to `KC_FN3`, otherwise use `CFQ_USER_KEY3`.
 | 
			
		||||
- `USR4` defaults to `APP`, otherwise use `CFQ_USER_KEY4`.
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
Keymap 0: Basic layer
 | 
			
		||||
,--------------------------------------------------.           ,--------------------------------------------------.
 | 
			
		||||
| Grave  |   !  |   @  |   #  |   $  |   %  |   {  |           |  }   |   ^  |   &  |   *  |   -  |   =  | BSpace |
 | 
			
		||||
|--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
 | 
			
		||||
@@ -55,15 +49,29 @@ When undefined:
 | 
			
		||||
|--------+------+------+------+------+------|   [  |           |  ]   |------+------+------+------+------+--------|
 | 
			
		||||
| LShift |   Z  |   X  |   C  |   V  |   B  |      |           |      |   N  |   M  |   ,  |   .  |   /  | RShift |
 | 
			
		||||
`--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
 | 
			
		||||
  | LCtl |Super | Alt  | USR4 |Space |                                       | Left | Down | Up   |Right | Del  |
 | 
			
		||||
  | LCtl |Super | Alt  | ~L1  |Space |                                       | Left | Down | Up   |Right | Del  |
 | 
			
		||||
  `----------------------------------'                                       `----------------------------------'
 | 
			
		||||
                                       ,-------------.       ,-------------.
 | 
			
		||||
                                       | Ins  | USR3 |       | Home | End  |
 | 
			
		||||
                                       | Ins  | ~L3  |       | Home | End  |
 | 
			
		||||
                                ,------|------|------|       |------+------+------.
 | 
			
		||||
                                |      |      | ~L2  |       | PgUp |      |      |
 | 
			
		||||
                                | USR1 | USR2 |------|       |------|Enter |Space |
 | 
			
		||||
                                |Space |Enter |------|       |------|Enter |Space |
 | 
			
		||||
                                |      |      | ~L1  |       | PgDn |      |      |
 | 
			
		||||
                                `--------------------'       `--------------------'
 | 
			
		||||
 | 
			
		||||
Optional overrides: see CFQ_USER_KEY# defines
 | 
			
		||||
 | 
			
		||||
  -------+------+------+------+------+
 | 
			
		||||
  |      |      |      | USR1 |      |
 | 
			
		||||
  `----------------------------------'
 | 
			
		||||
 | 
			
		||||
                                       ,-------------.
 | 
			
		||||
                                       | USR2 | USR3 |
 | 
			
		||||
                                ,------|------|------|
 | 
			
		||||
                                |      |      | USR6 |
 | 
			
		||||
                                | USR4 | USR5 |------|
 | 
			
		||||
                                |      |      | USR7 |
 | 
			
		||||
                                `--------------------'
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Keymap 1: Symbol layer
 | 
			
		||||
@@ -100,10 +108,10 @@ Notes:
 | 
			
		||||
,--------------------------------------------------.           ,--------------------------------------------------.
 | 
			
		||||
|        |      |      |      |      |      |      |           |      |      |      |      |      |      |        |
 | 
			
		||||
|--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
 | 
			
		||||
|        |      |      | MsUp |      |      |      |           |      |      |      |      |      |      |        |
 | 
			
		||||
|        |      |      | MsUp |      |      |MWhlUp|           |      |      |      |      |      |      |        |
 | 
			
		||||
|--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
 | 
			
		||||
|        |      |MsLeft|MsDown|MsRght|      |------|           |------| Left | Down | Up   |Right |      |        |
 | 
			
		||||
|--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
 | 
			
		||||
|--------+------+------+------+------+------|MWhlDn|           |      |------+------+------+------+------+--------|
 | 
			
		||||
|        |      | Rclk | Mclk | Lclk |      |      |           |      |      |      |      |      |      |        |
 | 
			
		||||
`--------+------+------+------+------+-------------'           `-------------+------+------+------+------+--------'
 | 
			
		||||
  |      |      |      |      |      |                                       |      |      |      |      |      |
 | 
			
		||||
@@ -119,10 +127,14 @@ Notes:
 | 
			
		||||
 | 
			
		||||
## Changelog
 | 
			
		||||
 | 
			
		||||
- 2017/11/07
 | 
			
		||||
  Make thumb left thumb cluster completely configurable with defines.
 | 
			
		||||
  Add mouse wheel to mouse layer.
 | 
			
		||||
 | 
			
		||||
- 2017/10/28
 | 
			
		||||
  Make more keys user defined on the left thumb cluster.
 | 
			
		||||
  Add macro record/replay keys.
 | 
			
		||||
 | 
			
		||||
- 2017/10/4
 | 
			
		||||
- 2017/10/04
 | 
			
		||||
  Move Insert key to the left thumb cluster (away from the modifier keys).
 | 
			
		||||
  Replace with `USR2` which defaults to `APP`.
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user