QMK Configurator updates: Atom47, Atomic and Atreus (#2883)
* QMK Configurator update for Alpha 28-key * QMK Configurator update for AMJ40 * QMK Configurator update for AMJ Pad * QMK Configurator update for Atom47 * QMK Configurator update for OLKB Atomic * QMK Configurator updates: Atom47 and Atreus * QMK Configurator updates: Atom47 and Atreus * QMK Configurator update for OLKB Atomic and Atreus * QMK C10R: Attempting fixes for Atreus keymap errors * QMK C10R: Attempting fixes for Atreus keymap errors * QMK Configurator: Bug fixes for Atreus keymaps
This commit is contained in:
		
							parent
							
								
									c52b3c6126
								
							
						
					
					
						commit
						72b276bd8f
					
				
					 24 changed files with 1278 additions and 1278 deletions
				
			
		| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atom47.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -13,25 +13,25 @@
 | 
			
		|||
#define _______ KC_TRNS
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[_MA] = KEYMAP_ANSI(
 | 
			
		||||
[_MA] = LAYOUT_ansi(
 | 
			
		||||
  KC_ESC,		KC_Q,		KC_W,		KC_E,		KC_R,		KC_T,		KC_Y,		KC_U,		KC_I,		KC_O,		KC_P,		KC_DEL,		KC_BSPC,	\
 | 
			
		||||
  KC_TAB,		KC_A,		KC_S,		KC_D,		KC_F,		KC_G,		KC_H,		KC_J,		KC_K,		KC_L,		KC_SCLN,				KC_ENT,  	\
 | 
			
		||||
  KC_LSFT,					KC_Z,		KC_X,		KC_C,		KC_V,		KC_B,		KC_N,		KC_M,		KC_COMM,	KC_DOT,		KC_RSFT,	MO(_FN1),	\
 | 
			
		||||
  KC_LCTL,		KC_LGUI,	KC_LALT,	MO(_PN),				KC_SPC, 				KC_SPC,					MO(_FN),	KC_RALT,	KC_APP,		KC_RCTRL),	\
 | 
			
		||||
 
 | 
			
		||||
[_FN] = KEYMAP_ANSI(
 | 
			
		||||
[_FN] = LAYOUT_ansi(
 | 
			
		||||
  _______,		KC_VOLD,	KC_VOLU,	KC_MUTE,	RESET,		_______,	KC_CALC,	KC_PGUP,	KC_UP,		KC_PGDN,	KC_PSCR,	KC_SLCK,	KC_PAUS,	\
 | 
			
		||||
  KC_CAPS,		KC_MPRV,	KC_MPLY,	KC_MNXT,	_______,	_______,	KC_HOME,	KC_LEFT,	KC_DOWN,	KC_RIGHT,	KC_INS,					_______,	\
 | 
			
		||||
  _______,					_______,	_______,	_______,	_______,	_______,	_______,	BL_TOGG,	BL_DEC,		BL_INC,		_______,	_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,				_______, 				_______,				_______,	_______,	_______,	_______),	\
 | 
			
		||||
 
 | 
			
		||||
[_FN1] = KEYMAP_ANSI(
 | 
			
		||||
[_FN1] = LAYOUT_ansi(
 | 
			
		||||
  KC_GRV,		KC_F1,		KC_F2,		KC_F3,		KC_F4,		KC_F5,		KC_F6,		KC_F7,		KC_F8,		KC_F9,		KC_F10,		KC_F11,		KC_F12,		\
 | 
			
		||||
  KC_1,			KC_2,		KC_3,		KC_4,		KC_5,		KC_6,		KC_7,		KC_8,		KC_9,		KC_0,		KC_MINS,				KC_EQL,		\
 | 
			
		||||
  _______,					_______,	_______,	_______,	_______,	KC_QUOT,	KC_SLSH,	KC_LBRC,	KC_RBRC,	KC_BSLS,	KC_RSFT,	_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,				_______, 				_______,				_______,	_______,	_______,	_______),	\
 | 
			
		||||
 
 | 
			
		||||
[_PN] = KEYMAP_ANSI(
 | 
			
		||||
[_PN] = LAYOUT_ansi(
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	\
 | 
			
		||||
  RGB_TOG,		RGB_HUI,	RGB_SAI,	RGB_VAI,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	\
 | 
			
		||||
  RGB_MOD,					RGB_HUD,	RGB_SAD,	RGB_VAD,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atom47.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -19,19 +19,19 @@ enum custom_keycodes {
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[_MA] = KEYMAP_ANSI(
 | 
			
		||||
[_MA] = LAYOUT_ansi(
 | 
			
		||||
  KC_GESC,		KC_Q,		KC_W,		KC_E,		KC_R,		KC_T,		KC_Y,		KC_U,		KC_I,		KC_O,		KC_P,		KC_DEL,		KC_BSPC,	\
 | 
			
		||||
  KC_TAB,		KC_A,		KC_S,		KC_D,		KC_F,		KC_G,		KC_H,		KC_J,		KC_K,		KC_L,		KC_SCLN,				KC_ENT,  	\
 | 
			
		||||
  KC_LSFT,					KC_Z,		KC_X,		KC_C,		KC_V,		KC_B,		KC_N,		KC_M,		KC_COMM,	KC_DOT,		KC_SLSH,	KC_RSFT,	\
 | 
			
		||||
  KC_LCTL,		KC_LGUI,	KC_LALT,	MO(_LO),				KC_SPC, 				KC_SPC,					MO(_RA),	KC_RALT,	KC_APP,		KC_RCTRL),	\
 | 
			
		||||
 | 
			
		||||
[_LO] = KEYMAP_ANSI(
 | 
			
		||||
[_LO] = LAYOUT_ansi(
 | 
			
		||||
  KC_GRV,		KC_F1,		KC_F2,		KC_F3,		KC_F4,		KC_F5,		KC_F6,		KC_F7,		KC_F8,		KC_F9,		KC_F10,		KC_F11,		KC_F12,		\
 | 
			
		||||
  KC_1,			KC_2,		KC_3,		KC_4,		KC_5,		KC_6,		KC_7,		KC_8,		KC_9,		KC_0,		KC_MINS,				KC_EQL,		\
 | 
			
		||||
  _______,					CTRLZ,		CTRLX,		CTRLC,		CTRLV,		_______,	_______,	KC_QUOT,	KC_LBRC,	KC_RBRC,	KC_BSLS,	_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,				_______, 				_______,				_______,	_______,	_______,	RESET),	\
 | 
			
		||||
 | 
			
		||||
[_RA] = KEYMAP_ANSI(
 | 
			
		||||
[_RA] = LAYOUT_ansi(
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	KC_PGUP,	KC_UP,		KC_PGDN,	_______,	_______,	_______,	\
 | 
			
		||||
  KC_CAPS,		_______,	_______,	_______,	_______,	_______,	_______,	KC_LEFT,	KC_DOWN,	KC_RIGHT,	_______,				_______,	\
 | 
			
		||||
  _______,					_______,	_______,	_______,	_______,	_______,	_______,	_______,	KC_VOLD,	KC_VOLU,	KC_MPLY,	KC_PSCR,	\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atom47.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// These are all aliases for the  function layers.
 | 
			
		||||
#define _L0 0
 | 
			
		||||
| 
						 | 
				
			
			@ -9,25 +9,25 @@
 | 
			
		|||
#define _______ KC_TRNS
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[_L0] = KEYMAP_ANSI(
 | 
			
		||||
[_L0] = LAYOUT_ansi(
 | 
			
		||||
  KC_ESC,		KC_Q,		KC_W,		KC_E,		KC_R,		KC_T,		KC_Y,		KC_U,		KC_I,		KC_O,		KC_P,		KC_DEL,		KC_BSPC,	\
 | 
			
		||||
  KC_TAB,		KC_A,		KC_S,		KC_D,		KC_F,		KC_G,		KC_H,		KC_J,		KC_K,		KC_L,		KC_SCLN,				KC_ENT,  	\
 | 
			
		||||
  KC_LSFT,		KC_Z,		KC_X,		KC_C,		KC_V,		KC_B,		KC_N,		KC_M,		KC_COMM,	KC_DOT,		KC_RSFT,				MO(_L1),	\
 | 
			
		||||
  KC_LCTL,		KC_LGUI,	KC_LALT,	TG(_L3),	KC_SPC, 				KC_SPC,					MO(_L2),	KC_RALT,	KC_APP,					KC_RCTRL),	\
 | 
			
		||||
 
 | 
			
		||||
[_L2] = KEYMAP_ANSI(
 | 
			
		||||
[_L2] = LAYOUT_ansi(
 | 
			
		||||
  _______,		KC_VOLD,	KC_VOLU,	KC_MUTE,	RESET,		_______,	KC_CALC,	KC_PGUP,	KC_UP,		KC_PGDN,	KC_PSCR,	KC_SLCK,	KC_PAUS,	\
 | 
			
		||||
  KC_CAPS,		KC_MPRV,	KC_MPLY,	KC_MNXT,	_______,	_______,	KC_HOME,	KC_LEFT,	KC_DOWN,	KC_RIGHT,	KC_INS,					_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	BL_TOGG,	BL_DEC,		BL_INC,		_______,				_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______, 				_______,				_______,	_______,	_______,				_______),	\
 | 
			
		||||
 
 | 
			
		||||
[_L1] = KEYMAP_ANSI(
 | 
			
		||||
[_L1] = LAYOUT_ansi(
 | 
			
		||||
  KC_GRV,		KC_F1,		KC_F2,		KC_F3,		KC_F4,		KC_F5,		KC_F6,		KC_F7,		KC_F8,		KC_F9,		KC_F10,		KC_F11,		KC_F12,		\
 | 
			
		||||
  KC_1,			KC_2,		KC_3,		KC_4,		KC_5,		KC_6,		KC_7,		KC_8,		KC_9,		KC_0,		KC_MINS,				KC_EQL,		\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	KC_QUOT,	KC_SLSH,	KC_LBRC,	KC_RBRC,	KC_BSLS,	KC_RSFT,				_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______, 				_______,				_______,	_______,	_______,				_______),	\
 | 
			
		||||
 
 | 
			
		||||
[_L3] = KEYMAP_ANSI(
 | 
			
		||||
[_L3] = LAYOUT_ansi(
 | 
			
		||||
  _______,		_______,	_______,	   KC_7,	   KC_8,	   KC_9,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	\
 | 
			
		||||
  _______,		_______,	_______,	   KC_4,	   KC_5,	   KC_6,	_______,	_______,	_______,	_______,	_______,				_______,	\
 | 
			
		||||
  _______,		_______,	_______,	   KC_1,	   KC_2,	   KC_3,	_______,	_______,	_______,	_______,	_______,				_______,	\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atom47.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -13,25 +13,25 @@
 | 
			
		|||
#define _______ KC_TRNS
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[_MA] = KEYMAP_ANSI(
 | 
			
		||||
[_MA] = LAYOUT_ansi(
 | 
			
		||||
  KC_ESC,		KC_Q,		KC_W,		KC_E,		KC_R,		KC_T,		KC_Y,		KC_U,		KC_I,		KC_O,		KC_P,		KC_DEL,		KC_BSPC,	\
 | 
			
		||||
  KC_TAB,		KC_A,		KC_S,		KC_D,		KC_F,		KC_G,		KC_H,		KC_J,		KC_K,		KC_L,		KC_SCLN,				KC_ENT,  	\
 | 
			
		||||
  KC_LSFT,		KC_Z,		KC_X,		KC_C,		KC_V,		KC_B,		KC_N,		KC_M,		KC_COMM,	KC_DOT,		KC_RSFT,				MO(_FN1),	\
 | 
			
		||||
  KC_LCTL,		KC_LGUI,	KC_LALT,	MO(_PN),	KC_SPC, 				KC_SPC,					MO(_FN),	KC_RALT,	KC_APP,					KC_RCTRL),	\
 | 
			
		||||
 
 | 
			
		||||
[_FN] = KEYMAP_ANSI(
 | 
			
		||||
[_FN] = LAYOUT_ansi(
 | 
			
		||||
  _______,		KC_VOLD,	KC_VOLU,	KC_MUTE,	RESET,		_______,	KC_CALC,	KC_PGUP,	KC_UP,		KC_PGDN,	KC_PSCR,	KC_SLCK,	KC_PAUS,	\
 | 
			
		||||
  KC_CAPS,		KC_MPRV,	KC_MPLY,	KC_MNXT,	_______,	_______,	KC_HOME,	KC_LEFT,	KC_DOWN,	KC_RIGHT,	KC_INS,					_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	BL_TOGG,	BL_DEC,		BL_INC,		_______,				_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______, 				_______,				_______,	_______,	_______,				_______),	\
 | 
			
		||||
 
 | 
			
		||||
[_FN1] = KEYMAP_ANSI(
 | 
			
		||||
[_FN1] = LAYOUT_ansi(
 | 
			
		||||
  KC_GRV,		KC_F1,		KC_F2,		KC_F3,		KC_F4,		KC_F5,		KC_F6,		KC_F7,		KC_F8,		KC_F9,		KC_F10,		KC_F11,		KC_F12,		\
 | 
			
		||||
  KC_1,			KC_2,		KC_3,		KC_4,		KC_5,		KC_6,		KC_7,		KC_8,		KC_9,		KC_0,		KC_MINS,				KC_EQL,		\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	KC_QUOT,	KC_SLSH,	KC_LBRC,	KC_RBRC,	KC_BSLS,	KC_RSFT,				_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______, 				_______,				_______,	_______,	_______,				_______),	\
 | 
			
		||||
 
 | 
			
		||||
[_PN] = KEYMAP_ANSI(
 | 
			
		||||
[_PN] = LAYOUT_ansi(
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,				_______,	\
 | 
			
		||||
  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,				_______,	\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,7 +10,7 @@
 | 
			
		|||
// The following is an example using the Planck MIT layout
 | 
			
		||||
// The first section contains all of the arguements
 | 
			
		||||
// The second converts the arguments into a two-dimensional array
 | 
			
		||||
#define KEYMAP_SEMI_STANDARD( \
 | 
			
		||||
#define LAYOUT_semi_standard( \
 | 
			
		||||
    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C,   K0E,    \
 | 
			
		||||
    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \
 | 
			
		||||
    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,    K2D,   K2E, \
 | 
			
		||||
| 
						 | 
				
			
			@ -24,7 +24,7 @@
 | 
			
		|||
    { K40, K41, KC_NO, K43, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B,   K4C,   K4D,   K4E }  \
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#define KEYMAP_GRID( \
 | 
			
		||||
#define LAYOUT_grid( \
 | 
			
		||||
    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E,\
 | 
			
		||||
    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E,\
 | 
			
		||||
    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E,\
 | 
			
		||||
| 
						 | 
				
			
			@ -38,6 +38,6 @@
 | 
			
		|||
    { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4E }  \
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_ortho_5x15 KEYMAP_GRID
 | 
			
		||||
#define LAYOUT_ortho_5x15 LAYOUT_grid
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -1,30 +1,28 @@
 | 
			
		|||
#include "atomic.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 [0] = { /* Colemak */
 | 
			
		||||
  { KC_ESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_NO   },
 | 
			
		||||
  { KC_TAB,  CM_Q,    CM_W,    CM_F,    CM_P,    CM_G,    CM_J,    CM_L,    CM_U,    CM_Y,    CM_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL  },
 | 
			
		||||
  { KC_BSPC, CM_A,    CM_R,    CM_S,    CM_T,    CM_D,    CM_H,    CM_N,    CM_E,    CM_I,    CM_O,    KC_QUOT, KC_ENT,  KC_NO,   KC_PGUP },
 | 
			
		||||
  { KC_LSFT, CM_Z,    CM_X,    CM_C,    CM_V,    CM_B,    CM_K,    CM_M,    CM_COMM, CM_DOT,  CM_SLSH, KC_RSFT, KC_NO,   KC_UP,   KC_PGDN },
 | 
			
		||||
  { KC_LCTL, KC_LGUI, KC_NO,   KC_LALT, FUNC(1), KC_SPC,  KC_NO,   KC_RALT, FUNC(2), KC_RGUI, KC_NO,   KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT },
 | 
			
		||||
 },
 | 
			
		||||
 [1] = { /* function */
 | 
			
		||||
  { KC_GRV,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_BSPC, KC_NO   },
 | 
			
		||||
  { 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, KC_TRNS },
 | 
			
		||||
  { KC_TRNS, KC_TRNS, KC_TRNS, KC_SLEP, 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, KC_CALC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MPLY },
 | 
			
		||||
  { KC_TRNS, KC_TRNS, KC_NO,   KC_TRNS, FUNC(1), KC_TRNS, KC_NO,   KC_TRNS, FUNC(2), KC_TRNS, KC_NO,   KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT },
 | 
			
		||||
 }
 | 
			
		||||
  [0] = LAYOUT_grid( /* Colemak */
 | 
			
		||||
    KC_ESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_NO  ,
 | 
			
		||||
    KC_TAB,  CM_Q,    CM_W,    CM_F,    CM_P,    CM_G,    CM_J,    CM_L,    CM_U,    CM_Y,    CM_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
 | 
			
		||||
    KC_BSPC, CM_A,    CM_R,    CM_S,    CM_T,    CM_D,    CM_H,    CM_N,    CM_E,    CM_I,    CM_O,    KC_QUOT, KC_ENT,  KC_NO,   KC_PGUP,
 | 
			
		||||
    KC_LSFT, CM_Z,    CM_X,    CM_C,    CM_V,    CM_B,    CM_K,    CM_M,    CM_COMM, CM_DOT,  CM_SLSH, KC_RSFT, KC_NO,   KC_UP,   KC_PGDN,
 | 
			
		||||
    KC_LCTL, KC_LGUI, KC_NO,   KC_LALT, FUNC(1), KC_SPC,  KC_NO,   KC_RALT, FUNC(2), KC_RGUI, KC_NO,   KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT,
 | 
			
		||||
  ),
 | 
			
		||||
  [1] = LAYOUT_grid( /* function */
 | 
			
		||||
    KC_GRV,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_BSPC, KC_NO  ,
 | 
			
		||||
    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, KC_TRNS,
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_TRNS, KC_SLEP, 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, KC_CALC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MPLY,
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_NO,   KC_TRNS, FUNC(1), KC_TRNS, KC_NO,   KC_TRNS, FUNC(2), KC_TRNS, KC_NO,   KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT,
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
  [1] = ACTION_LAYER_MOMENTARY(1),
 | 
			
		||||
  [2] = ACTION_LAYER_MOMENTARY(1),
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 
 | 
			
		||||
{
 | 
			
		||||
const macro_t * action_get_macro(keyrecord_t * record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch (id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			@ -33,4 +31,3 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		|||
  }
 | 
			
		||||
  return MACRO_NONE;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atomic.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Fillers to make layering more clear
 | 
			
		||||
#define _______ KC_TRNS
 | 
			
		||||
| 
						 | 
				
			
			@ -92,13 +92,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
 [_QW] = { /* QWERTY */
 | 
			
		||||
  { KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC  },
 | 
			
		||||
  { KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL   },
 | 
			
		||||
  { KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,  KC_ENT,  KC_PGUP  },
 | 
			
		||||
  { KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN  },
 | 
			
		||||
  { M(0),    KC_LCTL, KC_LALT, KC_LGUI, MO(_RS), KC_SPC,  KC_SPC,  MO(_LW), KC_RGUI, KC_RALT, KC_RCTL, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
 },
 | 
			
		||||
  [_QW] = LAYOUT_grid( /* QWERTY */
 | 
			
		||||
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC,
 | 
			
		||||
    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
 | 
			
		||||
    KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,  KC_ENT,  KC_PGUP,
 | 
			
		||||
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN,
 | 
			
		||||
    M(0),    KC_LCTL, KC_LALT, KC_LGUI, MO(_RS), KC_SPC,  KC_SPC,  MO(_LW), KC_RGUI, KC_RALT, KC_RCTL, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* COLEMAK - MIT ENHANCED / GRID COMPATIBLE
 | 
			
		||||
   * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -114,13 +114,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
 [_CM] = { /* COLEMAK */
 | 
			
		||||
  { KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC  },
 | 
			
		||||
  { KC_TAB,  KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,    KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL   },
 | 
			
		||||
  { KC_ESC,  KC_A,    KC_R,    KC_S,    KC_T,    KC_D,    KC_H,    KC_N,    KC_E,    KC_I,    KC_O,    KC_QUOT, KC_ENT,  KC_ENT,  KC_PGUP  },
 | 
			
		||||
  { KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_K,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN  },
 | 
			
		||||
  { M(0),    KC_LCTL, KC_LALT, KC_LGUI, MO(_RS), KC_SPC,  KC_SPC,  MO(_LW), KC_RGUI, KC_RALT, KC_RCTL, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
 },
 | 
			
		||||
  [_CM] = LAYOUT_grid( /* COLEMAK */
 | 
			
		||||
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC,
 | 
			
		||||
    KC_TAB,  KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,    KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
 | 
			
		||||
    KC_ESC,  KC_A,    KC_R,    KC_S,    KC_T,    KC_D,    KC_H,    KC_N,    KC_E,    KC_I,    KC_O,    KC_QUOT, KC_ENT,  KC_ENT,  KC_PGUP,
 | 
			
		||||
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_K,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN,
 | 
			
		||||
    M(0),    KC_LCTL, KC_LALT, KC_LGUI, MO(_RS), KC_SPC,  KC_SPC,  MO(_LW), KC_RGUI, KC_RALT, KC_RCTL, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* DVORAK - MIT ENHANCED / GRID COMPATIBLE
 | 
			
		||||
   * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -136,13 +136,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
 [_DV] = { /* DVORAK */
 | 
			
		||||
  { KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC  },
 | 
			
		||||
  { KC_TAB,  KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL   },
 | 
			
		||||
  { KC_ESC,  KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_H,    KC_T,    KC_N,    KC_S,    KC_SLSH, KC_ENT,  KC_ENT,  KC_PGUP  },
 | 
			
		||||
  { KC_LSFT, KC_SCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_B,    KC_M,    KC_W,    KC_V,    KC_Z,    KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN  },
 | 
			
		||||
  { M(0),    KC_LCTL, KC_LALT, KC_LGUI, MO(_RS), KC_SPC,  KC_SPC,  MO(_LW), KC_RGUI, KC_RALT, KC_RCTL, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
 },
 | 
			
		||||
  [_DV] = LAYOUT_grid( /* DVORAK */
 | 
			
		||||
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC,
 | 
			
		||||
    KC_TAB,  KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
 | 
			
		||||
    KC_ESC,  KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_H,    KC_T,    KC_N,    KC_S,    KC_SLSH, KC_ENT,  KC_ENT,  KC_PGUP,
 | 
			
		||||
    KC_LSFT, KC_SCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_B,    KC_M,    KC_W,    KC_V,    KC_Z,    KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN,
 | 
			
		||||
    M(0),    KC_LCTL, KC_LALT, KC_LGUI, MO(_RS), KC_SPC,  KC_SPC,  MO(_LW), KC_RGUI, KC_RALT, KC_RCTL, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* LOWERED
 | 
			
		||||
   * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -158,13 +158,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
 [_LW] = { /* LOWERED */
 | 
			
		||||
  { _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___  },
 | 
			
		||||
  { _______, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, _______, KC_INS   },
 | 
			
		||||
  { _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, ___T___, ___T___, _______  },
 | 
			
		||||
  { _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  _______, _______, _______, _______, ___T___, ___T___, _______, _______  },
 | 
			
		||||
  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______  },
 | 
			
		||||
 },
 | 
			
		||||
  [_LW] = LAYOUT_grid( /* LOWERED */
 | 
			
		||||
    _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___,
 | 
			
		||||
    _______, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, _______, KC_INS ,
 | 
			
		||||
    _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, ___T___, ___T___, _______,
 | 
			
		||||
    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  _______, _______, _______, _______, ___T___, ___T___, _______, _______,
 | 
			
		||||
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* RAISED
 | 
			
		||||
   * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -180,13 +180,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
 [_RS] = { /* RAISED */
 | 
			
		||||
  { _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___  },
 | 
			
		||||
  { _______, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    _______, _______, _______, KC_INS   },
 | 
			
		||||
  { _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS, ___T___, ___T___, _______  },
 | 
			
		||||
  { _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  _______, _______, _______, _______, ___T___, ___T___, _______, _______  },
 | 
			
		||||
  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______  },
 | 
			
		||||
 },
 | 
			
		||||
  [_RS] = LAYOUT_grid( /* RAISED */
 | 
			
		||||
    _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___,
 | 
			
		||||
    _______, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    _______, _______, _______, KC_INS ,
 | 
			
		||||
    _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS, ___T___, ___T___, _______,
 | 
			
		||||
    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  _______, _______, _______, _______, ___T___, ___T___, _______, _______,
 | 
			
		||||
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* FUNCTION
 | 
			
		||||
   * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -202,21 +202,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
 [_FN] = { /* FUNCTION */
 | 
			
		||||
  { KC_NLCK, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___  },
 | 
			
		||||
  { KC_SLCK, KC_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19,  KC_F20,  KC_F21,  KC_F22,  KC_F23,  KC_F24,  KC_PAUS, KC_PSCR  },
 | 
			
		||||
  { KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, ___T___, ___T___, KC_WH_U  },
 | 
			
		||||
  { _______, _______, DF(_QW), DF(_CM), DF(_DV), _______, _______, _______, _______, _______, _______, ___T___, ___T___, KC_MS_U, KC_WH_D  },
 | 
			
		||||
  { _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R  },
 | 
			
		||||
 },
 | 
			
		||||
  [_FN] = LAYOUT_grid( /* FUNCTION */
 | 
			
		||||
     KC_NLCK, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___,
 | 
			
		||||
     KC_SLCK, KC_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19,  KC_F20,  KC_F21,  KC_F22,  KC_F23,  KC_F24,  KC_PAUS, KC_PSCR,
 | 
			
		||||
     KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, ___T___, ___T___, KC_WH_U,
 | 
			
		||||
     _______, _______, DF(_QW), DF(_CM), DF(_DV), _______, _______, _______, _______, _______, _______, ___T___, ___T___, KC_MS_U, KC_WH_D,
 | 
			
		||||
     _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,22 +1,22 @@
 | 
			
		|||
#include "atomic.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 [0] = { /* Dvorak */
 | 
			
		||||
  { KC_ESC, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_LBRC, KC_RBRC,  KC_BSPC, KC_NO   },
 | 
			
		||||
  [0] = LAYOUT_grid( /* Dvorak */
 | 
			
		||||
    KC_ESC, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_LBRC, KC_RBRC,  KC_BSPC, KC_NO  ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_TAB, KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_SLSH, KC_EQL, KC_INS, KC_DEL   },
 | 
			
		||||
    KC_TAB, KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_SLSH, KC_EQL, KC_INS, KC_DEL  ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
  // ┌─ 2u ────────────┐                                                                                                  ┌─ 2u ────────────┐
 | 
			
		||||
  // │   X             │                                                                                                  │   X             │
 | 
			
		||||
  // └─────────────────┘                                                                                                  └─────────────────┘
 | 
			
		||||
  { KC_CAPS, KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_H,    KC_T,    KC_N,    KC_S,   KC_MINS,  KC_ENT,  KC_NO,  KC_PGUP  },
 | 
			
		||||
    KC_CAPS, KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_H,    KC_T,    KC_N,    KC_S,   KC_MINS,  KC_ENT,  KC_NO,  KC_PGUP ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_LSFT, KC_SCLN,  KC_Q,   KC_J,    KC_K,   KC_X,    KC_B,    KC_M,    KC_W,    KC_V,     KC_Z,    KC_RSFT, KC_NO, KC_UP,  KC_PGDN  },
 | 
			
		||||
    KC_LSFT, KC_SCLN,  KC_Q,   KC_J,    KC_K,   KC_X,    KC_B,    KC_M,    KC_W,    KC_V,     KC_Z,    KC_RSFT, KC_NO, KC_UP,  KC_PGDN ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_LCTL, MO(1),   KC_NO,  KC_LALT,  KC_NO,   KC_NO,  KC_SPC,   KC_NO,   KC_NO,   KC_NO,   KC_LGUI, MO(2),  KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
    KC_LCTL, MO(1),   KC_NO,  KC_LALT,  KC_NO,   KC_NO,  KC_SPC,   KC_NO,   KC_NO,   KC_NO,   KC_LGUI, MO(2),  KC_LEFT, KC_DOWN, KC_RGHT ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -55,23 +55,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                       ┌─────────────────────── 6.25u ──────────────────────────┬─ 1.25u ──┬─ 1.25u ──┬─ 1.25u ──┬─── 1.25u ┬── 1.25u ──┐
 | 
			
		||||
  //                       │                          X                             │     X    │   X      │ X        │        X │      X    │
 | 
			
		||||
  //                       └────────────────────────────────────────────────────────┴──────────┴──────────┴──────────┴──────────┴───────────┘
 | 
			
		||||
 },
 | 
			
		||||
 [1] = { /* Qwerty + F keys */
 | 
			
		||||
  { KC_ESC, KC_F1,   KC_F2,    KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_BSPC, KC_NO   },
 | 
			
		||||
  ),
 | 
			
		||||
  [1] = LAYOUT_grid( /* Qwerty + F keys */
 | 
			
		||||
    KC_ESC, KC_F1,   KC_F2,    KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_BSPC, KC_NO  ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_INS, KC_DEL   },
 | 
			
		||||
    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_INS, KC_DEL  ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
  // ┌─ 2u ────────────┐                                                                                                  ┌─ 2u ────────────┐
 | 
			
		||||
  // │   X             │                                                                                                  │   X             │
 | 
			
		||||
  // └─────────────────┘                                                                                                  └─────────────────┘
 | 
			
		||||
  { KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,  KC_NO,  KC_PGUP  },
 | 
			
		||||
    KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,  KC_NO,  KC_PGUP ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -81,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM,  KC_DOT,  KC_SLSH, KC_RSFT, KC_NO,  KC_UP,  KC_PGDN  },
 | 
			
		||||
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM,  KC_DOT,  KC_SLSH, KC_RSFT, KC_NO,  KC_UP,  KC_PGDN ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_LCTL, KC_TRNS, KC_NO,   KC_LALT,  KC_NO,   KC_NO,  KC_SPC,   KC_NO,   KC_NO,   KC_NO,   KC_LGUI, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
    KC_LCTL, KC_TRNS, KC_NO,   KC_LALT,  KC_NO,   KC_NO,  KC_SPC,   KC_NO,   KC_NO,   KC_NO,   KC_LGUI, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -110,23 +110,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                       ┌─────────────────────── 6.25u ──────────────────────────┬─ 1.25u ──┬─ 1.25u ──┬─ 1.25u ──┬─── 1.25u ┬── 1.25u ──┐
 | 
			
		||||
  //                       │                          X                             │     X    │   X      │ X        │        X │      X    │
 | 
			
		||||
  //                       └────────────────────────────────────────────────────────┴──────────┴──────────┴──────────┴──────────┴───────────┘
 | 
			
		||||
 },
 | 
			
		||||
 [2] = { /* Numpad + qwerty shortcut keys */
 | 
			
		||||
  { KC_ESC, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_P7,    KC_P8,   KC_P9,   KC_0,    KC_LBRC, KC_RBRC,  KC_BSPC, KC_NO   },
 | 
			
		||||
  ),
 | 
			
		||||
  [2] = LAYOUT_grid( /* Numpad + qwerty shortcut keys */
 | 
			
		||||
    { KC_ESC, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_P7,    KC_P8,   KC_P9,   KC_0,    KC_LBRC, KC_RBRC,  KC_BSPC, KC_NO  ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_TAB, KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_P4,    KC_P5,   KC_P6,   KC_L,    KC_SLSH, KC_EQL, KC_INS, KC_DEL   },
 | 
			
		||||
    KC_TAB, KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_P4,    KC_P5,   KC_P6,   KC_L,    KC_SLSH, KC_EQL, KC_INS, KC_DEL  ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
  // ┌─ 2u ────────────┐                                                                                                  ┌─ 2u ────────────┐
 | 
			
		||||
  // │   X             │                                                                                                  │   X             │
 | 
			
		||||
  // └─────────────────┘                                                                                                  └─────────────────┘
 | 
			
		||||
  { KC_CAPS, KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_P1,   KC_P2,   KC_P3,    KC_S,   KC_MINS,  KC_ENT,  KC_NO,  KC_PGUP  },
 | 
			
		||||
    KC_CAPS, KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_P1,   KC_P2,   KC_P3,    KC_S,   KC_MINS,  KC_ENT,  KC_NO,  KC_PGUP ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -136,7 +136,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,   KC_X,    KC_B,     KC_P0,   KC_P0,   KC_PENT, KC_Z,    KC_RSFT, KC_NO, KC_UP,  KC_PGDN  },
 | 
			
		||||
    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,   KC_X,    KC_B,     KC_P0,   KC_P0,   KC_PENT, KC_Z,    KC_RSFT, KC_NO, KC_UP,  KC_PGDN ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -149,7 +149,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                                                                                                                      ┌─ 2u ────────────┐
 | 
			
		||||
  //                                                                                                                      │   X             │
 | 
			
		||||
  //                                                                                                                      └─────────────────┘
 | 
			
		||||
  { KC_LCTL, KC_TRNS, KC_NO,  KC_LALT,  KC_NO,   KC_NO,  KC_SPC,   KC_NO,   KC_NO,   KC_NO,   KC_LGUI, KC_TRNS,  KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
    KC_LCTL, KC_TRNS, KC_NO,  KC_LALT,  KC_NO,   KC_NO,  KC_SPC,   KC_NO,   KC_NO,   KC_NO,   KC_LGUI, KC_TRNS,  KC_LEFT, KC_DOWN, KC_RGHT ,
 | 
			
		||||
  // ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
 | 
			
		||||
  // │        │        │        │        │        │        │        │        │        │        │        │        │        │        │        │
 | 
			
		||||
  // └────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┴────────┘
 | 
			
		||||
| 
						 | 
				
			
			@ -165,14 +165,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  //                       ┌─────────────────────── 6.25u ──────────────────────────┬─ 1.25u ──┬─ 1.25u ──┬─ 1.25u ──┬─── 1.25u ┬── 1.25u ──┐
 | 
			
		||||
  //                       │                          X                             │     X    │   X      │ X        │        X │      X    │
 | 
			
		||||
  //                       └────────────────────────────────────────────────────────┴──────────┴──────────┴──────────┴──────────┴───────────┘
 | 
			
		||||
 },
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atomic.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
#include "eeconfig.h"
 | 
			
		||||
#include "led.h"
 | 
			
		||||
| 
						 | 
				
			
			@ -124,13 +124,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    | LCTRL  | LWIN   | FN     | LALT   | UPPER  | SPACE  . SPACE  | LOWER  | OSHIFT | RALT   | APP    | RCTRL  | LEFT   | DOWN   | RIGHT  |
 | 
			
		||||
    '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
  */
 | 
			
		||||
[LAYER_QWERTY] = {
 | 
			
		||||
  { KC_ESC , KC_1   , KC_2   , KC_3   , KC_4   , KC_5   , KC_6   , KC_7   , KC_8   , KC_9   , KC_0   , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC },
 | 
			
		||||
  { KC_TAB , KC_Q   , KC_W   , KC_E   , KC_R   , KC_T   , KC_Y   , KC_U   , KC_I   , KC_O   , KC_P   , KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL  },
 | 
			
		||||
  { KC_CAPS, KC_A   , KC_S   , KC_D   , KC_F   , KC_G   , KC_H   , KC_J   , KC_K   , KC_L   , KC_SCLN, KC_QUOT, KC_ENT , KC_ENT , KC_PGUP },
 | 
			
		||||
  { KC_LSFT, KC_Z   , KC_X   , KC_C   , KC_V   , KC_B   , KC_N   , KC_M   , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_RSFT, KC_UP  , KC_PGDN },
 | 
			
		||||
  { KC_LCTL, KC_LGUI, M_FUNCT, KC_LALT, M_UPPER, KC_SPC , KC_SPC , M_LOWER, OS_SHFT, KC_RALT, KC_APP , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT }
 | 
			
		||||
},
 | 
			
		||||
  [LAYER_QWERTY] = LAYOUT_grid(
 | 
			
		||||
    KC_ESC , KC_1   , KC_2   , KC_3   , KC_4   , KC_5   , KC_6   , KC_7   , KC_8   , KC_9   , KC_0   , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC,
 | 
			
		||||
    KC_TAB , KC_Q   , KC_W   , KC_E   , KC_R   , KC_T   , KC_Y   , KC_U   , KC_I   , KC_O   , KC_P   , KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
 | 
			
		||||
    KC_CAPS, KC_A   , KC_S   , KC_D   , KC_F   , KC_G   , KC_H   , KC_J   , KC_K   , KC_L   , KC_SCLN, KC_QUOT, KC_ENT , KC_ENT , KC_PGUP,
 | 
			
		||||
    KC_LSFT, KC_Z   , KC_X   , KC_C   , KC_V   , KC_B   , KC_N   , KC_M   , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_RSFT, KC_UP  , KC_PGDN,
 | 
			
		||||
    KC_LCTL, KC_LGUI, M_FUNCT, KC_LALT, M_UPPER, KC_SPC , KC_SPC , M_LOWER, OS_SHFT, KC_RALT, KC_APP , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
  ),
 | 
			
		||||
  /* LAYER = LAYER_UPPER
 | 
			
		||||
    .--------------------------------------------------------------------------------------------------------------------------------------.
 | 
			
		||||
    | PRINT  | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | NUM LK | KP /   | KP *   | KP -   | XXXXXX | XXXXXX | ______ . ______ |
 | 
			
		||||
| 
						 | 
				
			
			@ -144,13 +144,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    | ______ | ______ | ______ | ______ | UPPER  | KP 0   . KP 0   | ______ | RALT   | KP .   | KP ENT | ______ | ______ | ______ | ______ |
 | 
			
		||||
    '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
  */
 | 
			
		||||
[LAYER_UPPER] = {
 | 
			
		||||
  { KC_PSCR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, XXXXXXX, XXXXXXX, _______, _______ },
 | 
			
		||||
  { KC_PAUS, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_NLCK, KC_PSLS, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______, _______, _______, KC_INS  },
 | 
			
		||||
  { _______, KC_F5  , KC_F6  , KC_F7  , KC_F8  , KC_CAPS, KC_PAST, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, _______, _______, KC_HOME },
 | 
			
		||||
  { _______, KC_F9  , KC_F10 , KC_F11 , KC_F12 , KC_SLCK, KC_KP_0, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______, _______, _______, KC_END  },
 | 
			
		||||
  { _______, _______, _______, _______, M_UPPER, KC_KP_0, KC_KP_0, _______, KC_RALT, KC_PDOT, KC_PENT, _______, _______, _______, _______ }
 | 
			
		||||
},
 | 
			
		||||
  [LAYER_UPPER] = LAYOUT_grid(
 | 
			
		||||
    KC_PSCR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, XXXXXXX, XXXXXXX, _______, _______,
 | 
			
		||||
    KC_PAUS, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_NLCK, KC_PSLS, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______, _______, _______, KC_INS ,
 | 
			
		||||
    _______, KC_F5  , KC_F6  , KC_F7  , KC_F8  , KC_CAPS, KC_PAST, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, _______, _______, KC_HOME,
 | 
			
		||||
    _______, KC_F9  , KC_F10 , KC_F11 , KC_F12 , KC_SLCK, KC_KP_0, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______, _______, _______, KC_END ,
 | 
			
		||||
    _______, _______, _______, _______, M_UPPER, KC_KP_0, KC_KP_0, _______, KC_RALT, KC_PDOT, KC_PENT, _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
  /* LAYER = LAYER_LOWER
 | 
			
		||||
    .--------------------------------------------------------------------------------------------------------------------------------------.
 | 
			
		||||
    | PRINT  | F1     | F2     | F3     | F4     | F5     | F6     | F7     | F8     | F9     | F10    | F11    | F12    | ______ . ______ |
 | 
			
		||||
| 
						 | 
				
			
			@ -164,13 +164,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    | ______ | ______ | ______ | ______ | ______ | ______ . ______ | LOWER  | ______ | ______ | ______ | ______ | ______ | ______ | ______ |
 | 
			
		||||
    '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
  */
 | 
			
		||||
[LAYER_LOWER] = {
 | 
			
		||||
  { KC_PSCR, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_F5  , KC_F6  , KC_F7  , KC_F8  , KC_F9  , KC_F10 , KC_F11 , KC_F12 , _______, _______ },
 | 
			
		||||
  { _______, KC_DLR , KC_LCBR, KC_LBRC, KC_LPRN, KC_PERC, KC_HASH, KC_RPRN, KC_RBRC, KC_RCBR, KC_AT  , _______, _______, _______, KC_INS  },
 | 
			
		||||
  { _______, KC_CIRC, KC_ASTR, KC_PLUS, KC_MINS, KC_SLSH, KC_BSLS, KC_UNDS, KC_QUOT, KC_DQT , KC_GRV , _______, _______, _______, KC_HOME },
 | 
			
		||||
  { _______, KC_PIPE, KC_AMPR, KC_EXLM, KC_TILD, KC_SCLN, KC_COLN, KC_EQL , KC_LT  , KC_GT  , KC_QUES, _______, _______, _______, KC_END  },
 | 
			
		||||
  { _______, _______, _______, _______, _______, _______, _______, M_LOWER, _______, _______, _______, _______, _______, _______, _______ }
 | 
			
		||||
},
 | 
			
		||||
  [LAYER_LOWER] = LAYOUT_grid(
 | 
			
		||||
    KC_PSCR, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_F5  , KC_F6  , KC_F7  , KC_F8  , KC_F9  , KC_F10 , KC_F11 , KC_F12 , _______, _______,
 | 
			
		||||
    _______, KC_DLR , KC_LCBR, KC_LBRC, KC_LPRN, KC_PERC, KC_HASH, KC_RPRN, KC_RBRC, KC_RCBR, KC_AT  , _______, _______, _______, KC_INS ,
 | 
			
		||||
    _______, KC_CIRC, KC_ASTR, KC_PLUS, KC_MINS, KC_SLSH, KC_BSLS, KC_UNDS, KC_QUOT, KC_DQT , KC_GRV , _______, _______, _______, KC_HOME,
 | 
			
		||||
    _______, KC_PIPE, KC_AMPR, KC_EXLM, KC_TILD, KC_SCLN, KC_COLN, KC_EQL , KC_LT  , KC_GT  , KC_QUES, _______, _______, _______, KC_END ,
 | 
			
		||||
    _______, _______, _______, _______, _______, _______, _______, M_LOWER, _______, _______, _______, _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
  /* LAYER = LAYER_FUNCTION
 | 
			
		||||
    .--------------------------------------------------------------------------------------------------------------------------------------.
 | 
			
		||||
    | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX . XXXXXX |
 | 
			
		||||
| 
						 | 
				
			
			@ -184,13 +184,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    | ______ | ______ | FN     | ______ | ______ | PLAY   . PLAY   | ______ | ______ | ______ | ______ | ______ | PREV   | VOL DN | NEXT   |
 | 
			
		||||
    '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
  */
 | 
			
		||||
[LAYER_FUNCTION] = {
 | 
			
		||||
  { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
 | 
			
		||||
  { XXXXXXX, KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_NLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
 | 
			
		||||
  { XXXXXXX, KC_F17 , KC_F18 , KC_F19 , KC_F20 , KC_SLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
 | 
			
		||||
  { _______, KC_F21 , KC_F22 , KC_F23 , KC_F24 , KC_CAPS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_VOLU, KC_MUTE },
 | 
			
		||||
  { _______, _______, M_FUNCT, _______, _______, KC_MPLY, KC_MPLY, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT }
 | 
			
		||||
},
 | 
			
		||||
  [LAYER_FUNCTION] = LAYOUT_grid(
 | 
			
		||||
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
 | 
			
		||||
    XXXXXXX, KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_NLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
 | 
			
		||||
    XXXXXXX, KC_F17 , KC_F18 , KC_F19 , KC_F20 , KC_SLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
 | 
			
		||||
    _______, KC_F21 , KC_F22 , KC_F23 , KC_F24 , KC_CAPS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_VOLU, KC_MUTE,
 | 
			
		||||
    _______, _______, M_FUNCT, _______, _______, KC_MPLY, KC_MPLY, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
 | 
			
		||||
  ),
 | 
			
		||||
  /* LAYER = LAYER_MOUSE
 | 
			
		||||
    .--------------------------------------------------------------------------------------------------------------------------------------.
 | 
			
		||||
    | ESC    | MS AC0 | MS AC1 | MS AC2 | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX . XXXXXX |
 | 
			
		||||
| 
						 | 
				
			
			@ -204,13 +204,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    | ______ | ______ | ______ | ______ | ______ | MS BT1 . MS BT1 | ______ | ______ | ______ | ______ | ______ | MS L   | MS D   | MS R   |
 | 
			
		||||
    '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
  */
 | 
			
		||||
[LAYER_MOUSE] = {
 | 
			
		||||
  { KC_ESC , KC_ACL0, KC_ACL1, KC_ACL2, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
 | 
			
		||||
  { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_MS_UL, KC_MS_U, M_MS_UR, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_L, KC_WH_R },
 | 
			
		||||
  { XXXXXXX, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, XXXXXXX, XXXXXXX, KC_MS_L, XXXXXXX, KC_MS_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_U },
 | 
			
		||||
  { _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_MS_DL, KC_MS_D, M_MS_DR, XXXXXXX, _______, _______, KC_MS_U, KC_WH_D },
 | 
			
		||||
  { _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R }
 | 
			
		||||
},
 | 
			
		||||
  [LAYER_MOUSE] = LAYOUT_grid(
 | 
			
		||||
    KC_ESC , KC_ACL0, KC_ACL1, KC_ACL2, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
 | 
			
		||||
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_MS_UL, KC_MS_U, M_MS_UR, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_L, KC_WH_R,
 | 
			
		||||
    XXXXXXX, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, XXXXXXX, XXXXXXX, KC_MS_L, XXXXXXX, KC_MS_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_U,
 | 
			
		||||
    _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_MS_DL, KC_MS_D, M_MS_DR, XXXXXXX, _______, _______, KC_MS_U, KC_WH_D,
 | 
			
		||||
    _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R
 | 
			
		||||
  ),
 | 
			
		||||
  /* LAYER = LAYER_ADJUST
 | 
			
		||||
    .--------------------------------------------------------------------------------------------------------------------------------------.
 | 
			
		||||
    | XXXXXX | HELP 1 | HELP 2 | HELP 3 | HELP 4 | HELP 5 | HELP 6 | HELP 7 | HELP 8 | HELP 9 | XXXXXX | MUSIC  | AUDIO  | XXXXXX . XXXXXX |
 | 
			
		||||
| 
						 | 
				
			
			@ -224,13 +224,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    | XXXXXX | XXXXXX | XXXXXX | XXXXXX | UPPER  | XXXXXX . XXXXXX | LOWER  | XXXXXX | XXXXXX | XXXXXX | XXXXXX | TEMPO- | VOICE- | TEMPO+ |
 | 
			
		||||
    '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
  */
 | 
			
		||||
[LAYER_ADJUST] = {
 | 
			
		||||
  { XXXXXXX, M_HELP1, M_HELP2, M_HELP3, M_HELP4, M_HELP5, M_HELP6, M_HELP7, M_HELP8, M_HELP9, XXXXXXX, MU_TOG , AU_TOG , XXXXXXX, XXXXXXX },
 | 
			
		||||
  { XXXXXXX, M_BRTOG, M_BSPDU, M_BSPDD, M_BDFLT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
 | 
			
		||||
  { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
 | 
			
		||||
  { XXXXXXX, M_QWRTY, XXXXXXX, XXXXXXX, M_BACKL, RESET  , XXXXXXX, M_MOUSE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MUV_IN , XXXXXXX },
 | 
			
		||||
  { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_UPPER, XXXXXXX, XXXXXXX, M_LOWER, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TMPO_DN, MUV_DE , TMPO_UP }
 | 
			
		||||
},
 | 
			
		||||
  [LAYER_ADJUST] = LAYOUT_grid(
 | 
			
		||||
    XXXXXXX, M_HELP1, M_HELP2, M_HELP3, M_HELP4, M_HELP5, M_HELP6, M_HELP7, M_HELP8, M_HELP9, XXXXXXX, MU_TOG , AU_TOG , XXXXXXX, XXXXXXX,
 | 
			
		||||
    XXXXXXX, M_BRTOG, M_BSPDU, M_BSPDD, M_BDFLT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
 | 
			
		||||
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
 | 
			
		||||
    XXXXXXX, M_QWRTY, XXXXXXX, XXXXXXX, M_BACKL, RESET  , XXXXXXX, M_MOUSE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MUV_IN , XXXXXXX,
 | 
			
		||||
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_UPPER, XXXXXXX, XXXXXXX, M_LOWER, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TMPO_DN, MUV_DE , TMPO_UP
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#ifdef AUDIO_ENABLE
 | 
			
		||||
| 
						 | 
				
			
			@ -255,8 +255,7 @@ float tone_scroll_off[][2] = SONG(SCROLL_LOCK_OFF_SOUND);
 | 
			
		|||
 | 
			
		||||
#endif /* AUDIO_ENABLE */
 | 
			
		||||
 | 
			
		||||
void persistent_default_layer_set(uint16_t default_layer)
 | 
			
		||||
{
 | 
			
		||||
void persistent_default_layer_set(uint16_t default_layer) {
 | 
			
		||||
  eeconfig_update_default_layer(default_layer);
 | 
			
		||||
  default_layer_set(default_layer);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -265,12 +264,10 @@ const uint16_t PROGMEM fn_actions[] = {
 | 
			
		|||
  [0] = ACTION_MODS_ONESHOT(MOD_LSFT),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
    switch(id)
 | 
			
		||||
    {
 | 
			
		||||
  switch(id) {
 | 
			
		||||
 | 
			
		||||
        case MACRO_HELP_1:
 | 
			
		||||
            if (record->event.pressed)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atomic.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -15,15 +15,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * | BRITE  | LALT   |  FN    |               XXXXXX . SPACE                        | RCTRL  | RALT   | FN     | LEFT   | DOWN   | RIGHT  |
 | 
			
		||||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
	
 | 
			
		||||
 [0] = { /* QWERTY */
 | 
			
		||||
  { KC_ESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC  },
 | 
			
		||||
  { KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL   },
 | 
			
		||||
  { KC_LCTL,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,  KC_ENT,  KC_PGUP  },
 | 
			
		||||
  { KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN  },
 | 
			
		||||
  { M(0),    KC_ALT, MO(1), KC_SPC, KC_SPC, KC_SPC,  KC_SPC,  KC_SPC,  KC_SPC, KC_RCTL, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT  },
 | 
			
		||||
 },
 | 
			
		||||
 | 
			
		||||
  [0] = LAYOUT_grid( /* QWERTY */
 | 
			
		||||
    KC_ESC,  KC_1,   KC_2,  KC_3,   KC_4,   KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC,
 | 
			
		||||
    KC_TAB,  KC_Q,   KC_W,  KC_E,   KC_R,   KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
 | 
			
		||||
    KC_LCTL, KC_A,   KC_S,  KC_D,   KC_F,   KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,  KC_ENT,  KC_PGUP,
 | 
			
		||||
    KC_LSFT, KC_Z,   KC_X,  KC_C,   KC_V,   KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,   KC_PGDN,
 | 
			
		||||
    M(0),    KC_ALT, MO(1), KC_SPC, KC_SPC, KC_SPC,  KC_SPC,  KC_SPC,  KC_SPC,  KC_RCTL, KC_RALT, MO(1),   KC_LEFT, KC_DOWN, KC_RGHT,
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* FUNCTION
 | 
			
		||||
   * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -38,14 +36,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * |        |        |   FN   |                  XXXXXX . MS BT1                      |      |        |   FN   | MOUS L | MOUS D | MOUS R |
 | 
			
		||||
   * '--------------------------------------------------------------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
 
 | 
			
		||||
 [1] = { /* FUNCTION LAYER*/
 | 
			
		||||
  { KC_GRV, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___  },
 | 
			
		||||
  { KC_SLCK, KC_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19,  KC_F20,  KC_F21,  KC_F22,  KC_F23,  KC_F24,  KC_PAUS, KC_PSCR  },
 | 
			
		||||
  { KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, ___T___, ___T___, KC_WH_U  },
 | 
			
		||||
  { KC_NLCK, _______, _______, _______, _______, _______, _______, _______, KC_INSERT, KC_END, KC_HOME, ___T___, ___T___, KC_MS_U, KC_WH_D  },
 | 
			
		||||
  { _______, _______, MO(1), _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, MO(1), KC_MS_L, KC_MS_D, KC_MS_R  },
 | 
			
		||||
 },
 | 
			
		||||
  [1] = LAYOUT_grid( /* FUNCTION LAYER*/
 | 
			
		||||
    KC_GRV,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,     KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___,
 | 
			
		||||
    KC_SLCK, KC_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19,  KC_F20,    KC_F21,  KC_F22,  KC_F23,  KC_F24,  KC_PAUS, KC_PSCR,
 | 
			
		||||
    KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD,   KC_VOLU, KC_MPLY, _______, ___T___, ___T___, KC_WH_U,
 | 
			
		||||
    KC_NLCK, _______, _______, _______, _______, _______, _______, _______, KC_INSERT, KC_END,  KC_HOME, ___T___, ___T___, KC_MS_U, KC_WH_D,
 | 
			
		||||
    _______, _______, MO(1),   _______, _______, KC_BTN1, KC_BTN1, _______, _______,   _______, _______, MO(1),   KC_MS_L, KC_MS_D, KC_MS_R,
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
| 
						 | 
				
			
			@ -53,8 +50,7 @@ const uint16_t PROGMEM fn_actions[] = {
 | 
			
		|||
  [2] = ACTION_LAYER_MOMENTARY(1),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,7 +9,7 @@
 | 
			
		|||
// This a shortcut to help you visually see your layout.
 | 
			
		||||
// The first section contains all of the arguements
 | 
			
		||||
// The second converts the arguments into a two-dimensional array
 | 
			
		||||
#define KEYMAP( \
 | 
			
		||||
#define LAYOUT( \
 | 
			
		||||
  k00, k01, k02, k03, k04,           k05, k06, k07, k08, k09, \
 | 
			
		||||
  k10, k11, k12, k13, k14,           k15, k16, k17, k18, k19, \
 | 
			
		||||
  k20, k21, k22, k23, k24,           k25, k26, k27, k28, k29, \
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										13
									
								
								keyboards/atreus/info.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								keyboards/atreus/info.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,13 @@
 | 
			
		|||
{
 | 
			
		||||
  "keyboard_name": "Atreus", 
 | 
			
		||||
  "url": "", 
 | 
			
		||||
  "maintainer": "qmk", 
 | 
			
		||||
  "bootloader": "", 
 | 
			
		||||
  "width": 12.5, 
 | 
			
		||||
  "height": 4.6, 
 | 
			
		||||
  "layouts": {
 | 
			
		||||
    "LAYOUT": {
 | 
			
		||||
      "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":10.5, "y":0}, {"x":11.5, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":7.5, "y":2}, {"x":8.5, "y":2}, {"x":9.5, "y":2}, {"x":10.5, "y":2}, {"x":11.5, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3, "h":1.5}, {"x":6.5, "y":3, "h":1.5}, {"x":7.5, "y":3}, {"x":8.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}]
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
#define BASE 0
 | 
			
		||||
#define SYMB 1
 | 
			
		||||
| 
						 | 
				
			
			@ -9,22 +9,21 @@ enum macro_id {
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
[BASE] = KEYMAP(
 | 
			
		||||
  [BASE] = LAYOUT(
 | 
			
		||||
    KC_Q,          KC_W,    KC_D,     KC_F,           KC_K,                                              KC_J,             KC_U,            KC_R,     KC_L,     KC_SCLN,
 | 
			
		||||
    LT(ETC,KC_A),  KC_S,    KC_E,     KC_T,           KC_G,                                              KC_Y,             KC_N,            KC_I,     KC_O,     KC_H,
 | 
			
		||||
    SFT_T(KC_Z),   KC_X,    KC_C,     KC_V,           KC_B,                                              KC_P,             KC_M,            KC_COMM,  KC_DOT,   SFT_T(KC_SLSH),
 | 
			
		||||
    KC_GRV,        KC_DEL,  KC_LALT,  GUI_T(KC_TAB),  LT(SYMB,KC_BSPC),  CTL_T(KC_ESC),  SFT_T(KC_ENT),  LT(SYMB,KC_SPC),  GUI_T(KC_LEFT),  KC_DOWN,  KC_UP,    LCAG_T(KC_RGHT)
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[SYMB] = KEYMAP(
 | 
			
		||||
  [SYMB] = LAYOUT(
 | 
			
		||||
    KC_EXLM,  KC_AT,    KC_LCBR,  KC_RCBR,  KC_PIPE,                      KC_EQL,   KC_7,  KC_8,   KC_9,    KC_PLUS,
 | 
			
		||||
    KC_HASH,  KC_DLR,   KC_LPRN,  KC_RPRN,  KC_BSLS,                      KC_MINS,  KC_4,  KC_5,   KC_6,    KC_QUOT,
 | 
			
		||||
    KC_PERC,  KC_CIRC,  KC_LBRC,  KC_RBRC,  KC_ASTR,                      KC_UNDS,  KC_1,  KC_2,   KC_3,    KC_DQUO,
 | 
			
		||||
    KC_TILD,  KC_AMPR,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_0,  KC_NO,  KC_DOT,  KC_TRNS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[ETC] = KEYMAP(
 | 
			
		||||
  [ETC] = LAYOUT(
 | 
			
		||||
    RESET,         KC_NO,  KC_NO,    KC_NO,    KC_PGUP,                      KC_VOLU,  KC_F7,  KC_F8,  KC_F9,   KC_HOME,
 | 
			
		||||
    LT(ETC,KC_A),  KC_NO,  KC_NO,    KC_NO,    KC_PGDN,                      KC_VOLD,  KC_F4,  KC_F5,  KC_F6,   KC_END,
 | 
			
		||||
    KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_DEL,                       KC_MUTE,  KC_F1,  KC_F2,  KC_F3,   KC_INS,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -9,23 +9,26 @@
 | 
			
		|||
#define _LW 2
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  [_QW] = KEYMAP( /* Qwerty */
 | 
			
		||||
  [_QW] = LAYOUT( /* Qwerty */
 | 
			
		||||
    KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,                      KC_Y,    KC_U,    KC_I,    KC_O,    KC_P    ,
 | 
			
		||||
    KC_A,    KC_S,    KC_D,    KC_F,    KC_G,                      KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN ,
 | 
			
		||||
    KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,                      KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH ,
 | 
			
		||||
  KC_ESC,  KC_TAB, KC_LGUI,  KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  MO(_RS), KC_MINS, KC_QUOT, KC_ENT  ),
 | 
			
		||||
    KC_ESC,  KC_TAB, KC_LGUI,  KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  MO(_RS), KC_MINS, KC_QUOT, KC_ENT
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_RS] = KEYMAP( /* [> RAISE <] */
 | 
			
		||||
  [_RS] = LAYOUT( /* [> RAISE <] */
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_LCBR, KC_RCBR, KC_PIPE,                   KC_PGUP, KC_7,    KC_8,   KC_9, KC_ASTR ,
 | 
			
		||||
    KC_HASH, KC_DLR,  KC_LPRN, KC_RPRN, KC_GRV,                    KC_PGDN, KC_4,    KC_5,   KC_6, KC_PLUS ,
 | 
			
		||||
    KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD,                   KC_AMPR, KC_1,    KC_2,   KC_3, KC_BSLS ,
 | 
			
		||||
  TG(_LW), KC_INS,  KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  KC_TRNS, KC_DOT, KC_0, KC_EQL  ),
 | 
			
		||||
    TG(_LW), KC_INS,  KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  KC_TRNS, KC_DOT, KC_0, KC_EQL
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_LW] = KEYMAP( /* [> LOWER <] */
 | 
			
		||||
  [_LW] = LAYOUT( /* [> LOWER <] */
 | 
			
		||||
    KC_INS,  KC_HOME, KC_UP,   KC_END,  KC_PGUP,                   KC_UP,   KC_F7,   KC_F8,   KC_F9,   KC_F10 ,
 | 
			
		||||
    KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN,                   KC_DOWN, KC_F4,   KC_F5,   KC_F6,   KC_F11 ,
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS, KC_F1,   KC_F2,   KC_F3,   KC_F12 ,
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  DF(_QW), KC_TRNS, KC_TRNS, RESET  )
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  DF(_QW), KC_TRNS, KC_TRNS, RESET
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
// this is the style you want to emulate.
 | 
			
		||||
// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -12,18 +12,20 @@
 | 
			
		|||
#define _LW 2
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[_QW] = KEYMAP( /* Qwerty */
 | 
			
		||||
  [_QW] = LAYOUT( /* Qwerty */
 | 
			
		||||
    KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,                      KC_Y,    KC_U,    KC_I,    KC_O,    KC_P    ,
 | 
			
		||||
    KC_A,    KC_S,    KC_D,    KC_F,    KC_G,                      KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN ,
 | 
			
		||||
    KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,                      KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH ,
 | 
			
		||||
  KC_ESC, KC_TAB, KC_LGUI,  KC_LSFT, KC_BSPC,  KC_LCTL, KC_LALT, KC_SPC,  MO(_RS), KC_MINS, KC_QUOT, KC_ENT  ),
 | 
			
		||||
    KC_ESC, KC_TAB, KC_LGUI,  KC_LSFT, KC_BSPC,  KC_LCTL, KC_LALT, KC_SPC,  MO(_RS), KC_MINS, KC_QUOT, KC_ENT
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /*
 | 
			
		||||
   *  !       @     up     {    }        ||     pgup    7     8     9    *
 | 
			
		||||
   *  #     left   down  right  $        ||     pgdn    4     5     6    +
 | 
			
		||||
   *  [       ]      (     )    &        ||       `     1     2     3    \
 | 
			
		||||
   * lower  insert super shift bksp ctrl || alt space   fn    .     0    =
 | 
			
		||||
   */
 | 
			
		||||
[_RS] = KEYMAP( /* [> RAISE <] */
 | 
			
		||||
  [_RS] = LAYOUT( /* [> RAISE <] */
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_UP,   KC_LCBR, KC_RCBR,                   KC_PGUP, KC_7,    KC_8,   KC_9, KC_ASTR ,
 | 
			
		||||
    KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DLR,                    KC_PGDN, KC_4,    KC_5,   KC_6, KC_PLUS ,
 | 
			
		||||
    KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR,                   KC_GRV,  KC_1,    KC_2,   KC_3, KC_BSLS ,
 | 
			
		||||
| 
						 | 
				
			
			@ -34,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   *       volup             reset      ||             F1    F2    F3   F12
 | 
			
		||||
   *       voldn  super shift bksp ctrl || alt space   L0  prtsc scroll pause
 | 
			
		||||
   */
 | 
			
		||||
[_LW] = KEYMAP( /* [> LOWER <] */
 | 
			
		||||
  [_LW] = LAYOUT( /* [> LOWER <] */
 | 
			
		||||
    KC_INS,  KC_HOME, KC_UP,   KC_END,  KC_PGUP,                   KC_UP,   KC_F7,   KC_F8,   KC_F9,   KC_F10  ,
 | 
			
		||||
    KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN,                   KC_DOWN, KC_F4,   KC_F5,   KC_F6,   KC_F11  ,
 | 
			
		||||
    KC_NO,   KC_VOLU, KC_NO,   KC_NO,   RESET,                     KC_NO,   KC_F1,   KC_F2,   KC_F3,   KC_F12  ,
 | 
			
		||||
| 
						 | 
				
			
			@ -45,8 +47,7 @@ const uint16_t PROGMEM fn_actions[] = {
 | 
			
		|||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// layers
 | 
			
		||||
#define BASE      0
 | 
			
		||||
| 
						 | 
				
			
			@ -35,50 +35,47 @@ enum custom_keycodes {
 | 
			
		|||
// avrdude -p atmega32u4 -c avr109 -U flash:w:atreus_dvorak_42_key.hex  -P COM7
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  [BASE] = LAYOUT(
 | 
			
		||||
    KC_QUOTE,      KC_COMMA,      KC_DOT,     KC_P,                KC_Y,                                 KC_F,       KC_G,      KC_C,    KC_R,          KC_L,
 | 
			
		||||
    KC_A,          KC_O,          KC_E,       KC_U,                KC_I,                                 KC_D,       KC_H,      KC_T,    KC_N,          KC_S,
 | 
			
		||||
    KC_SCOLON,     KC_Q,          KC_J,       KC_K,                KC_X,                                 KC_B,       KC_M,      KC_W,    KC_V,          KC_Z,
 | 
			
		||||
    OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL), MO(COMBINED), MO(KEYNAV), KC_ENTER,   KC_SPACE,  KC_BSPC, RCTL(KC_BSPC), KC_CAPSLOCK, OSM(MOD_LSFT)
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[BASE] = { 
 | 
			
		||||
  {KC_QUOTE,      KC_COMMA,      KC_DOT,    KC_P,       KC_Y,         KC_TRNS,    KC_F,  KC_G,  KC_C,   KC_R,   KC_L, },
 | 
			
		||||
  {KC_A,          KC_O,          KC_E,      KC_U,       KC_I,         KC_TRNS,    KC_D,  KC_H,  KC_T,   KC_N,   KC_S, },
 | 
			
		||||
  {KC_SCOLON,     KC_Q,          KC_J,      KC_K,       KC_X,         MO(KEYNAV), KC_B,  KC_M,  KC_W,   KC_V,   KC_Z, },
 | 
			
		||||
  {OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL), MO(COMBINED), KC_ENTER,   KC_SPACE,  KC_BSPC, RCTL(KC_BSPC), KC_CAPSLOCK, OSM(MOD_LSFT), }
 | 
			
		||||
},	
 | 
			
		||||
  [KEYNAV] = LAYOUT(
 | 
			
		||||
    KC_ESC,      CLOUD9_GOTO_LINE,   RCTL(KC_Z),      RCTL(KC_S),       MEH(KC_F10),                         KC_TRNS,       KC_HOME,    KC_UP,           KC_END,     KC_PGUP,
 | 
			
		||||
    MEH(KC_F11), CLOUD9_GOTO_SYMBOL, RSFT(KC_TAB),    KC_TAB,           MEH(KC_A),                           LCTL(KC_LEFT), KC_LEFT,    KC_DOWN,         KC_RIGHT,   LCTL(KC_RIGHT),
 | 
			
		||||
    MEH(KC_B),   CLOUD9_NAVIGATE,    CLOUD9_TAB_LEFT, CLOUD9_TAB_RIGHT, CLOUD9_TAB_CLOSE,                    KC_TRNS,       RCTL(KC_C), RCTL(KC_X),      RCTL(KC_V), KC_PGDOWN,
 | 
			
		||||
    KC_TRNS,     KC_TRNS,            KC_TRNS,         KC_TRNS,          KC_TRNS,          KC_TRNS, KC_ENTER, KC_SPACE,      KC_BSPC,    RCTL(KC_BSPC),   KC_DELETE,  LCTL(KC_DELETE)
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[KEYNAV] = { 
 | 
			
		||||
  {KC_ESC,      CLOUD9_GOTO_LINE,   RCTL(KC_Z),      RCTL(KC_S),       MEH(KC_F10),      KC_TRNS,    KC_TRNS,       KC_HOME,    KC_UP,           KC_END,     KC_PGUP, },
 | 
			
		||||
  {MEH(KC_F11), CLOUD9_GOTO_SYMBOL, RSFT(KC_TAB),    KC_TAB,           MEH(KC_A),        KC_TRNS,    LCTL(KC_LEFT), KC_LEFT,    KC_DOWN,         KC_RIGHT,   LCTL(KC_RIGHT), },
 | 
			
		||||
  {MEH(KC_B),   CLOUD9_NAVIGATE,    CLOUD9_TAB_LEFT, CLOUD9_TAB_RIGHT, CLOUD9_TAB_CLOSE, KC_TRNS,    KC_TRNS,       RCTL(KC_C), RCTL(KC_X),      RCTL(KC_V), KC_PGDOWN, },
 | 
			
		||||
  {KC_TRNS,     KC_TRNS,            KC_TRNS,         KC_TRNS,          KC_TRNS,          KC_ENTER,   KC_SPACE,      KC_BSPC,   RCTL(KC_BSPC),    KC_DELETE,  LCTL(KC_DELETE), }
 | 
			
		||||
},	
 | 
			
		||||
  [KEYSEL] = LAYOUT(
 | 
			
		||||
    MEH(KC_G), MEH(KC_H),MEH(KC_I), MEH(KC_J), MEH(KC_K),                    KC_TRNS,             RSFT(KC_HOME), RSFT(KC_UP),   RSFT(KC_END),   RSFT(KC_PGUP),
 | 
			
		||||
    MEH(KC_L), MEH(KC_M),MEH(KC_N), MEH(KC_O), MEH(KC_P),                    RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)),
 | 
			
		||||
    MEH(KC_Q), MEH(KC_R),MEH(KC_S), MEH(KC_T), MEH(KC_U),                    KC_TRNS,             RCTL(KC_C),    RCTL(KC_X),    RCTL(KC_V),     RSFT(KC_PGDN),
 | 
			
		||||
    RESET,     KC_TRNS,  KC_TRNS,   KC_TRNS,   KC_TRNS,   KC_TRNS, KC_ENTER, KC_SPACE,            KC_BSPC,       RCTL(KC_BSPC), KC_DELETE,      LCTL(KC_DELETE)
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[KEYSEL] = { 
 | 
			
		||||
  {MEH(KC_G), MEH(KC_H),MEH(KC_I), MEH(KC_J), MEH(KC_K), KC_TRNS,    KC_TRNS,             RSFT(KC_HOME), RSFT(KC_UP),  RSFT(KC_END), RSFT(KC_PGUP), },
 | 
			
		||||
  {MEH(KC_L), MEH(KC_M),MEH(KC_N), MEH(KC_O), MEH(KC_P), KC_TRNS,    RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)), },
 | 
			
		||||
  {MEH(KC_Q), MEH(KC_R),MEH(KC_S), MEH(KC_T), MEH(KC_U), KC_TRNS,    KC_TRNS,             RCTL(KC_C),RCTL(KC_X),     RCTL(KC_V), RSFT(KC_PGDN), },
 | 
			
		||||
  {RESET,     KC_TRNS,  KC_TRNS,   KC_TRNS,   KC_TRNS,   KC_ENTER,   KC_SPACE,            KC_BSPC,   RCTL(KC_BSPC),  KC_DELETE,  LCTL(KC_DELETE), }
 | 
			
		||||
},	
 | 
			
		||||
 | 
			
		||||
[COMBINED] = { 
 | 
			
		||||
  {KC_EXLM, KC_AT,      KC_HASH,     KC_DLR,      KC_PERC, KC_TRNS,  KC_PLUS,  KC_7, KC_8,    KC_9,    KC_ASTR, },
 | 
			
		||||
  {KC_LPRN, KC_RPRN,    KC_LBRACKET, KC_RBRACKET, KC_UNDS, KC_TRNS,  KC_MINS,  KC_4, KC_5,    KC_6,    KC_SLSH, },
 | 
			
		||||
  {KC_COLN, KC_DQUO,    KC_LCBR,     KC_RCBR,     KC_AMPR, KC_TRNS,  KC_EQUAL, KC_1, KC_2,    KC_3,    KC_QUES, },
 | 
			
		||||
  {KC_TRNS, KC_TILD,    KC_GRAVE,    KC_CIRC,     KC_TRNS, KC_TRNS,  KC_TRNS,  KC_0, KC_DOT,  KC_PIPE, KC_BSLS, }
 | 
			
		||||
},	
 | 
			
		||||
 | 
			
		||||
[MOUSE] = { 
 | 
			
		||||
  {KC_TRNS,      KC_PGUP, KC_MS_WH_UP,   KC_UP,        KC_TRNS, KC_TRNS, KC_UP,     KC_HOME,   KC_MS_U,   KC_END,  KC_MS_WH_UP,  },
 | 
			
		||||
  {KC_MS_ACCEL0, KC_PGDN, KC_MS_WH_DOWN, KC_DOWN,      KC_TRNS, KC_TRNS, KC_DOWN,   KC_MS_L,   KC_MS_D,   KC_MS_R, KC_MS_WH_DOWN, },
 | 
			
		||||
  {KC_TRNS,      KC_TRNS, KC_TRNS,       KC_TRNS,      KC_TRNS, KC_BTN3, MEH(KC_X), MEH(KC_Y), MEH(KC_Z), KC_F5,   RCTL(KC_W), },
 | 
			
		||||
  {KC_TRNS, M(MOUSE_LOCK), KC_TRNS, KC_MS_ACCEL0, KC_TRNS, KC_BTN1, KC_BTN2, RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), }
 | 
			
		||||
},	
 | 
			
		||||
 | 
			
		||||
[BROWSER_CONTROL] = { 
 | 
			
		||||
  {KC_TRNS, KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_TRNS,    KC_UP,      KC_PGUP,            KC_PGDN,      KC_MS_WH_UP,   KC_TRNS, },
 | 
			
		||||
  {KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS,    KC_DOWN,    RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), KC_MS_WH_DOWN, LALT(KC_LEFT), },
 | 
			
		||||
  {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS,    RCTL(KC_1),         RCTL(KC_9),   KC_F6,         KC_F5, },
 | 
			
		||||
  {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), RSFT(RCTL(KC_TAB)), KC_TRNS,      KC_TRNS,       KC_TRNS,  }
 | 
			
		||||
},	
 | 
			
		||||
  [COMBINED] = LAYOUT(
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_HASH,     KC_DLR,      KC_PERC,                   KC_PLUS,  KC_7, KC_8,   KC_9,    KC_ASTR,
 | 
			
		||||
    KC_LPRN, KC_RPRN, KC_LBRACKET, KC_RBRACKET, KC_UNDS,                   KC_MINS,  KC_4, KC_5,   KC_6,    KC_SLSH,
 | 
			
		||||
    KC_COLN, KC_DQUO, KC_LCBR,     KC_RCBR,     KC_AMPR,                   KC_EQUAL, KC_1, KC_2,   KC_3,    KC_QUES,
 | 
			
		||||
    KC_TRNS, KC_TILD, KC_GRAVE,    KC_CIRC,     KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_0, KC_DOT, KC_PIPE, KC_BSLS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [MOUSE] = LAYOUT(
 | 
			
		||||
    KC_TRNS,      KC_PGUP,       KC_MS_WH_UP,   KC_UP,        KC_TRNS,                   KC_UP,     KC_HOME,            KC_MS_U,      KC_END,     KC_MS_WH_UP,
 | 
			
		||||
    KC_MS_ACCEL0, KC_PGDN,       KC_MS_WH_DOWN, KC_DOWN,      KC_TRNS,                   KC_DOWN,   KC_MS_L,            KC_MS_D,      KC_MS_R,    KC_MS_WH_DOWN,
 | 
			
		||||
    KC_TRNS,      KC_TRNS,       KC_TRNS,       KC_TRNS,      KC_TRNS,                   MEH(KC_X), MEH(KC_Y),          MEH(KC_Z),    KC_F5,      RCTL(KC_W),
 | 
			
		||||
    KC_TRNS,      M(MOUSE_LOCK), KC_TRNS,       KC_MS_ACCEL0, KC_TRNS, KC_BTN3, KC_BTN1, KC_BTN2,   RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT)
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [BROWSER_CONTROL] = LAYOUT(
 | 
			
		||||
    KC_TRNS, KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2,                      KC_UP,      KC_PGUP,            KC_PGDN,      KC_MS_WH_UP,   KC_TRNS,
 | 
			
		||||
    KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,                      KC_DOWN,    RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), KC_MS_WH_DOWN, LALT(KC_LEFT),
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                      KC_TRNS,    RCTL(KC_1),         RCTL(KC_9),   KC_F6,         KC_F5,
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), RSFT(RCTL(KC_TAB)), KC_TRNS,      KC_TRNS,       KC_TRNS
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
// this is the style you want to emulate.
 | 
			
		||||
// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -17,23 +17,26 @@
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[BASE] = KEYMAP( /* Qwerty */
 | 
			
		||||
  [BASE] = LAYOUT( /* Qwerty */
 | 
			
		||||
    KC_Q       , KC_W   , KC_E   , KC_R   ,  KC_T   ,                 KC_Y  ,  KC_U   , KC_I   , KC_O   , KC_P          ,
 | 
			
		||||
    KC_A       , KC_S   , KC_D   , KC_F   ,  KC_G   ,                 KC_H  ,  KC_J   , KC_K   , KC_L   , KC_SCLN       ,
 | 
			
		||||
    SFT_T(KC_Z), KC_X   , KC_C   , KC_V   ,  KC_B   ,                 KC_N  ,  KC_M   , KC_COMM, KC_DOT , SFT_T(KC_QUOT),
 | 
			
		||||
  KC_LCTL    , KC_LALT, KC_LALT, KC_LGUI,  KC_BSPC, KC_ESC, KC_ENT, KC_SPC,  F(NUMS), KC_RALT, KC_SLSH, KC_BSLS      ),
 | 
			
		||||
    KC_LCTL    , KC_LALT, KC_LALT, KC_LGUI,  KC_BSPC, KC_ESC, KC_ENT, KC_SPC,  F(NUMS), KC_RALT, KC_SLSH, KC_BSLS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[NUMS] = KEYMAP( /* Numbers / Arrows / Symbols */
 | 
			
		||||
  [NUMS] = LAYOUT( /* Numbers / Arrows / Symbols */
 | 
			
		||||
    KC_GRV , KC_1   , KC_2   , KC_3   , KC_4   ,                   KC_LPRN, KC_RPRN, KC_MINS, KC_EQL , KC_LBRC,
 | 
			
		||||
    KC_TAB , KC_5   , KC_6   , KC_7   , KC_8   ,                   KC_LEFT, KC_DOWN, KC_UP  , KC_RGHT, KC_RBRC,
 | 
			
		||||
    _______, KC_9   , KC_0   , KC_DOT , KC_COMM,                   KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______,
 | 
			
		||||
  _______, _______, _______, _______, KC_DEL , F(MOUS), _______, _______, _______, _______, _______, _______),
 | 
			
		||||
    _______, _______, _______, _______, KC_DEL , F(MOUS), _______, _______, _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[MOUS] = KEYMAP( /* Mouse and Media Keys */
 | 
			
		||||
  [MOUS] = LAYOUT( /* Mouse and Media Keys */
 | 
			
		||||
    KC_SLCK, KC_PAUSE, KC_F11 , KC_F10 , KC_F9  ,                   KC_F8  , KC_F7  , KC_F6  , KC_F5  , KC_F4,
 | 
			
		||||
    KC_VOLD, KC_ACL0 , KC_ACL1, KC_ACL2, KC_VOLU,                   KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_F3,
 | 
			
		||||
    KC_MUTE, KC_MPRV , KC_MPLY, KC_MNXT, KC_MUTE,                   KC_WH_R, KC_WH_U, KC_WH_D, KC_WH_L, KC_F2,
 | 
			
		||||
  _______, _______ , _______, _______, _______, _______, _______, KC_BTN1, F(BASE), RESET  , KC_F12 , KC_F1)
 | 
			
		||||
    _______, _______ , _______, _______, _______, _______, _______, KC_BTN1, F(BASE), RESET  , KC_F12 , KC_F1
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -45,8 +48,7 @@ const uint16_t PROGMEM fn_actions[] = {
 | 
			
		|||
  [MOUS] = ACTION_LAYER_ON(2, 1)  // switch to layer 2
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
// This is the personal keymap of Chris Gerber (@gerbercj). I haven't worked out the kinks
 | 
			
		||||
// with the Colemak and Dvorak support yet, but everything else works nicely.
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -14,44 +14,43 @@
 | 
			
		|||
#define _L2 4
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
  [_QW] = { /* Qwerty */
 | 
			
		||||
    {KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_NO,   KC_Y,    KC_U,    KC_I,    KC_O,    KC_P   },
 | 
			
		||||
    {KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_NO,   KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN},
 | 
			
		||||
    {KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_LALT, KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH},
 | 
			
		||||
    {KC_ESC,  KC_TAB,  KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC,  MO(_L1), KC_MINS, KC_QUOT, KC_ENT }
 | 
			
		||||
  },
 | 
			
		||||
  [_CM] = { /* Colemak */
 | 
			
		||||
    {KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,    KC_NO,   KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN},
 | 
			
		||||
    {KC_A,    KC_R,    KC_S,    KC_T,    KC_D,    KC_NO,   KC_H,    KC_N,    KC_E,    KC_I,    KC_O   },
 | 
			
		||||
    {KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_LALT, KC_K,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH},
 | 
			
		||||
    {KC_ESC,  KC_TAB,  KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC,  MO(_L1), KC_MINS, KC_QUOT, KC_ENT }
 | 
			
		||||
  },
 | 
			
		||||
  [_DV] = { /* Dvorak */
 | 
			
		||||
    {KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_NO,   KC_F,    KC_G,    KC_C,    KC_R,    KC_L   },
 | 
			
		||||
    {KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_NO,   KC_D,    KC_H,    KC_T,    KC_N,    KC_S   },
 | 
			
		||||
    {KC_SCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_LALT, KC_B,    KC_M,    KC_W,    KC_V,    KC_Z   },
 | 
			
		||||
    {KC_ESC,  KC_TAB,  KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC,  MO(_L1), KC_MINS, KC_SLSH, KC_ENT }
 | 
			
		||||
  },
 | 
			
		||||
  [_L1] = { /* LAYER 1 */
 | 
			
		||||
    {KC_INS,  KC_HOME, KC_UP,   KC_END,  KC_PGUP, KC_NO,   KC_VOLU, KC_7,    KC_8,    KC_9,    KC_LBRC},
 | 
			
		||||
    {KC_DEL,  KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_NO,   KC_VOLD, KC_4,    KC_5,    KC_6,    KC_RBRC},
 | 
			
		||||
    {KC_GRV,  KC_MPRV, KC_MPLY, KC_MNXT, KC_MINS, KC_LALT, KC_MUTE, KC_1,    KC_2,    KC_3,    KC_BSLS},
 | 
			
		||||
    {TG(_L2), KC_APP,  KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC,  KC_TRNS, KC_DOT,  KC_0,    KC_EQL }
 | 
			
		||||
  },
 | 
			
		||||
  [_L2] = { /* LAYER 2 */
 | 
			
		||||
    {KC_TRNS, KC_WH_L, KC_MS_U, KC_WH_R, KC_WH_U, KC_NO,   DF(_QW), KC_F7,   KC_F8,   KC_F9,   KC_F10 },
 | 
			
		||||
    {KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, KC_NO,   DF(_CM), KC_F6,   KC_F5,   KC_F6,   KC_F11 },
 | 
			
		||||
    {KC_BTN4, KC_BTN1, KC_BTN2, KC_BTN3, KC_BTN4, KC_LALT, DF(_DV), KC_F1,   KC_F2,   KC_F3,   KC_F12 },
 | 
			
		||||
    {KC_TRNS, KC_TRNS, KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC,  KC_TRNS, KC_TRNS, KC_TRNS, RESET  }
 | 
			
		||||
  }
 | 
			
		||||
  [_QW] = LAYOUT( /* Qwerty */
 | 
			
		||||
    KC_Q,   KC_W,   KC_E,    KC_R,    KC_T,                      KC_Y,   KC_U,    KC_I,    KC_O,    KC_P,
 | 
			
		||||
    KC_A,   KC_S,   KC_D,    KC_F,    KC_G,                      KC_H,   KC_J,    KC_K,    KC_L,    KC_SCLN,
 | 
			
		||||
    KC_Z,   KC_X,   KC_C,    KC_V,    KC_B,                      KC_N,   KC_M,    KC_COMM, KC_DOT,  KC_SLSH,
 | 
			
		||||
    KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_RCTL, KC_SPC, MO(_L1), KC_MINS, KC_QUOT, KC_ENT
 | 
			
		||||
  ),
 | 
			
		||||
  [_CM] = LAYOUT( /* Colemak */
 | 
			
		||||
    KC_Q,   KC_W,   KC_F,    KC_P,    KC_G,                      KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN,
 | 
			
		||||
    KC_A,   KC_R,   KC_S,    KC_T,    KC_D,                      KC_H,    KC_N,    KC_E,    KC_I,    KC_O,
 | 
			
		||||
    KC_Z,   KC_X,   KC_C,    KC_V,    KC_B,                      KC_K,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,
 | 
			
		||||
    KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_RCTL, KC_SPC,  MO(_L1), KC_MINS, KC_QUOT, KC_ENT
 | 
			
		||||
  ),
 | 
			
		||||
  [_DV] = LAYOUT( /* Dvorak */
 | 
			
		||||
    KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,                      KC_F,    KC_G,    KC_C,    KC_R,    KC_L,
 | 
			
		||||
    KC_A,    KC_O,    KC_E,    KC_U,    KC_I,                      KC_D,    KC_H,    KC_T,    KC_N,    KC_S,
 | 
			
		||||
    KC_SCLN, KC_Q,    KC_J,    KC_K,    KC_X,                      KC_B,    KC_M,    KC_W,    KC_V,    KC_Z,
 | 
			
		||||
    KC_ESC,  KC_TAB,  KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_RCTL, KC_SPC,  MO(_L1), KC_MINS, KC_SLSH, KC_ENT
 | 
			
		||||
  ),
 | 
			
		||||
  [_L1] = LAYOUT( /* LAYER 1 */
 | 
			
		||||
    KC_INS,  KC_HOME, KC_UP,   KC_END,  KC_PGUP,                   KC_VOLU, KC_7,    KC_8,   KC_9, KC_LBRC,
 | 
			
		||||
    KC_DEL,  KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,                   KC_VOLD, KC_4,    KC_5,   KC_6, KC_RBRC,
 | 
			
		||||
    KC_GRV,  KC_MPRV, KC_MPLY, KC_MNXT, KC_MINS,                   KC_MUTE, KC_1,    KC_2,   KC_3, KC_BSLS,
 | 
			
		||||
    TG(_L2), KC_APP,  KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_RCTL, KC_SPC,  KC_TRNS, KC_DOT, KC_0, KC_EQL
 | 
			
		||||
  ),
 | 
			
		||||
  [_L2] = LAYOUT( /* LAYER 2 */
 | 
			
		||||
    KC_TRNS, KC_WH_L, KC_MS_U, KC_WH_R, KC_WH_U,                   DF(_QW), KC_F7,   KC_F8,   KC_F9,   KC_F10,
 | 
			
		||||
    KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D,                   DF(_CM), KC_F6,   KC_F5,   KC_F6,   KC_F11,
 | 
			
		||||
    KC_BTN4, KC_BTN1, KC_BTN2, KC_BTN3, KC_BTN4,                   DF(_DV), KC_F1,   KC_F2,   KC_F3,   KC_F12,
 | 
			
		||||
    KC_TRNS, KC_TRNS, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_RCTL, KC_SPC,  KC_TRNS, KC_TRNS, KC_TRNS, RESET
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 0:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
#include "eeconfig.h"
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -19,14 +19,13 @@ enum custom_keycodes {
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
  /*
 | 
			
		||||
   *  q   w   e    r    t        ||       y     u    i  o   p
 | 
			
		||||
   *  a   s   d    f    g        ||       h     j    k  l   ;
 | 
			
		||||
   *  z   x   c    v    b        ||       n     m    ,  .   /
 | 
			
		||||
   * esc tab gui shift bksp ctrl || alt space lower  -  ' enter
 | 
			
		||||
   */
 | 
			
		||||
    [_QWERTY] = KEYMAP( \
 | 
			
		||||
  [_QWERTY] = LAYOUT( \
 | 
			
		||||
    KC_Q,   KC_W,   KC_E,    KC_R,    KC_T,                      KC_Y,   KC_U,  KC_I,    KC_O,    KC_P,    \
 | 
			
		||||
    KC_A,   KC_S,   KC_D,    KC_F,    KC_G,                      KC_H,   KC_J,  KC_K,    KC_L,    KC_SCLN, \
 | 
			
		||||
    KC_Z,   KC_X,   KC_C,    KC_V,    KC_B,                      KC_N,   KC_M,  KC_COMM, KC_DOT,  KC_SLSH, \
 | 
			
		||||
| 
						 | 
				
			
			@ -39,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   *  [       ]      (     )    &        ||       `     1     2     3    \
 | 
			
		||||
   * raise  insert  gui  shift bksp ctrl || alt space  ____   .     0    =
 | 
			
		||||
   */
 | 
			
		||||
    [_LOWER] = KEYMAP( \
 | 
			
		||||
  [_LOWER] = LAYOUT( \
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_UP,   KC_LCBR, KC_RCBR,                   KC_PGUP, KC_7,    KC_8,   KC_9, KC_ASTR, \
 | 
			
		||||
    KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL,                    KC_PGDN, KC_4,    KC_5,   KC_6, KC_PLUS, \
 | 
			
		||||
    KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR,                   KC_GRV,  KC_1,    KC_2,   KC_3, KC_BSLS, \
 | 
			
		||||
| 
						 | 
				
			
			@ -52,13 +51,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   *       volup             reset      ||              F1    F2     F3    F12
 | 
			
		||||
   *       voldn super shift bksp  ctrl || alt space QWERTY  prtsc scroll pause
 | 
			
		||||
   */
 | 
			
		||||
    [_RAISE] = KEYMAP( \
 | 
			
		||||
  [_RAISE] = LAYOUT( \
 | 
			
		||||
    KC_INS,  KC_HOME, KC_UP,   KC_END,  KC_PGUP,                   KC_UP,   KC_F7,  KC_F8,   KC_F9,   KC_F10, \
 | 
			
		||||
    KC_DEL,  KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,                   KC_DOWN, KC_F4,  KC_F5,   KC_F6,   KC_F11, \
 | 
			
		||||
    KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, RESET,                     KC_TRNS, KC_F1,  KC_F2,   KC_F3,   KC_F12, \
 | 
			
		||||
    KC_NO,   KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  QWERTY, KC_PSCR, KC_SLCK, KC_PAUS \
 | 
			
		||||
            )
 | 
			
		||||
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
void persistent_default_layer_set(uint16_t default_layer) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
// This is the personal keymap of Jeremy Cowgar (@jcowgar). It is written for the programmer.
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
#include "keymap_colemak.h"
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -25,41 +25,43 @@
 | 
			
		|||
#define KM_REDO LGUI(LSFT(KC_Z))
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[ALPH] = {
 | 
			
		||||
  {KC_Q,    KC_W,           KC_E,           KC_R,    KC_T,    KC_TRNS, KC_Y,    KC_U,    KC_I,           KC_O,           KC_P},
 | 
			
		||||
  {KC_A,    LT(NUMS, KC_S), LT(FKEY, KC_D), KC_F,    KC_G,    KC_TRNS, KC_H,    KC_J,    LT(CURS, KC_K), LT(SYMB, KC_L), KC_SCLN},
 | 
			
		||||
  {KC_Z,    KC_X,           KC_C,           KC_V,    KC_B,    KC_LALT, KC_N,    KC_M,    KC_COMM,        KC_DOT,         KC_SLSH},
 | 
			
		||||
  {KC_LCTL, KC_ESC,         KC_NO,          KC_LSFT, KC_SPC,  KC_LGUI, KC_ENT,  KC_RSFT, KC_NO,          KC_ESC,         KC_RCTL}
 | 
			
		||||
},
 | 
			
		||||
[NUMS] = {
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_TRNS,        KC_ASTR, KC_SLSH, KC_TRNS, KC_TRNS, KC_7,    KC_8,           KC_9,           KC_SLSH},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_EQL,         KC_PLUS, KC_MINS, KC_TRNS, KC_LPRN, KC_4,    KC_5,           KC_6,           KC_ASTR},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_DOT,         KC_COMM, CM_SCLN, KC_TRNS, KC_RPRN, KC_1,    KC_2,           KC_3,           KC_MINS},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0,    KC_DOT,         KC_EQL,         KC_PLUS}
 | 
			
		||||
},
 | 
			
		||||
[CURS] = {
 | 
			
		||||
  {KC_TRNS, KC_BSPC,        KC_UP,          KC_DELT, KC_PGUP, KC_TRNS, KC_TRNS, KM_SAVE, KC_TRNS,        KM_OPEN,        KC_TRNS},
 | 
			
		||||
  {KC_TRNS, KC_LEFT,        KC_DOWN,        KC_RGHT, KC_PGDN, KC_TRNS, KM_UNDO, KC_LALT, KC_TRNS,        KC_LGUI,        KC_TRNS},
 | 
			
		||||
  {KC_TRNS, KC_VOLD,        KC_MUTE,        KC_VOLU, KC_MPLY, KM_COPY, KM_REDO, KM_CLSE, KC_TRNS,        KC_TRNS,        KC_TRNS},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        RESET,          KC_TRNS, KC_TAB,  KM_CUT,  KM_PAST, KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS}
 | 
			
		||||
},
 | 
			
		||||
[SYMB] = {
 | 
			
		||||
  {KC_BSLS, KC_EXLM,        KC_LABK,        KC_RABK, CM_COLN, KC_TRNS, KC_UNDS, KC_DLR,  KC_QUES,       KC_TRNS,         KC_PERC},
 | 
			
		||||
  {KC_AT,   KC_AMPR,        KC_LPRN,        KC_RPRN, CM_SCLN, KC_TRNS, KC_COMM, KC_DOT,  KC_QUOT,       KC_TRNS,         KC_TILD},
 | 
			
		||||
  {KC_HASH, KC_PIPE,        KC_LCBR,        KC_RCBR, KC_SLSH, KC_TRNS, KC_TRNS, KC_GRV,  KC_DQT,        KC_TRNS,         KC_CIRC},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_LBRC,        KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,       KC_TRNS,         KC_TRNS}
 | 
			
		||||
},
 | 
			
		||||
[FKEY] = {
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F9,   KC_F10,        KC_F11,          KC_F12},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F5,   KC_F6,         KC_F7,           KC_F8},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1,   KC_F2,         KC_F3,           KC_F4},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,       KC_TRNS,         KC_TRNS}
 | 
			
		||||
}};
 | 
			
		||||
  [ALPH] = LAYOUT(
 | 
			
		||||
    KC_Q,    KC_W,           KC_E,           KC_R,    KC_T,                      KC_Y,    KC_U,    KC_I,           KC_O,           KC_P,
 | 
			
		||||
    KC_A,    LT(NUMS, KC_S), LT(FKEY, KC_D), KC_F,    KC_G,                      KC_H,    KC_J,    LT(CURS, KC_K), LT(SYMB, KC_L), KC_SCLN,
 | 
			
		||||
    KC_Z,    KC_X,           KC_C,           KC_V,    KC_B,                      KC_N,    KC_M,    KC_COMM,        KC_DOT,         KC_SLSH,
 | 
			
		||||
    KC_LCTL, KC_ESC,         KC_NO,          KC_LSFT, KC_SPC,  KC_LALT, KC_LGUI, KC_ENT,  KC_RSFT, KC_NO,          KC_ESC,         KC_RCTL
 | 
			
		||||
  ),
 | 
			
		||||
  [NUMS] = LAYOUT(
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_TRNS,        KC_ASTR, KC_SLSH,                   KC_TRNS, KC_7,    KC_8,           KC_9,           KC_SLSH,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_EQL,         KC_PLUS, KC_MINS,                   KC_LPRN, KC_4,    KC_5,           KC_6,           KC_ASTR,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_DOT,         KC_COMM, CM_SCLN,                   KC_RPRN, KC_1,    KC_2,           KC_3,           KC_MINS,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0,    KC_DOT,         KC_EQL,         KC_PLUS
 | 
			
		||||
  ),
 | 
			
		||||
  [CURS] = LAYOUT(
 | 
			
		||||
    KC_TRNS, KC_BSPC,        KC_UP,          KC_DELT, KC_PGUP,                   KC_TRNS, KM_SAVE, KC_TRNS,        KM_OPEN,        KC_TRNS,
 | 
			
		||||
    KC_TRNS, KC_LEFT,        KC_DOWN,        KC_RGHT, KC_PGDN,                   KM_UNDO, KC_LALT, KC_TRNS,        KC_LGUI,        KC_TRNS,
 | 
			
		||||
    KC_TRNS, KC_VOLD,        KC_MUTE,        KC_VOLU, KC_MPLY,                   KM_REDO, KM_CLSE, KC_TRNS,        KC_TRNS,        KC_TRNS,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        RESET,          KC_TRNS, KC_TAB,  KM_COPY, KM_CUT,  KM_PAST, KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS
 | 
			
		||||
  ),
 | 
			
		||||
  [SYMB] = LAYOUT(
 | 
			
		||||
    KC_BSLS, KC_EXLM,        KC_LABK,        KC_RABK, CM_COLN,                   KC_UNDS, KC_DLR,  KC_QUES,       KC_TRNS,         KC_PERC,
 | 
			
		||||
    KC_AT,   KC_AMPR,        KC_LPRN,        KC_RPRN, CM_SCLN,                   KC_COMM, KC_DOT,  KC_QUOT,       KC_TRNS,         KC_TILD,
 | 
			
		||||
    KC_HASH, KC_PIPE,        KC_LCBR,        KC_RCBR, KC_SLSH,                   KC_TRNS, KC_GRV,  KC_DQT,        KC_TRNS,         KC_CIRC,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_LBRC,        KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,       KC_TRNS,         KC_TRNS
 | 
			
		||||
  ),
 | 
			
		||||
  [FKEY] = LAYOUT(
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS,                   KC_TRNS, KC_F9,   KC_F10,        KC_F11,          KC_F12,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS,                   KC_TRNS, KC_F5,   KC_F6,         KC_F7,           KC_F8,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS,                   KC_TRNS, KC_F1,   KC_F2,         KC_F3,           KC_F4,
 | 
			
		||||
    KC_TRNS, KC_TRNS,        KC_TRNS,        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,       KC_TRNS,         KC_TRNS
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {};
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  switch(id) {}
 | 
			
		||||
 | 
			
		||||
  return MACRO_NONE;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
// Personal keymap of khitsule
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
#define ALPH 0
 | 
			
		||||
#define LOWR 1
 | 
			
		||||
| 
						 | 
				
			
			@ -24,24 +24,24 @@
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[ALPH] = {
 | 
			
		||||
  {KC_Q,   KC_W,      KC_E,     KC_R,           KC_T,             KC_TRNS,         KC_Y,              KC_U,    KC_I,      KC_O,    KC_P},
 | 
			
		||||
  {KC_A,   KC_S,      KC_D,     KC_F,           KC_G,             KC_TRNS,         KC_H,              KC_J,    KC_K,      KC_L,    KC_SCLN},
 | 
			
		||||
  {KC_Z,   KC_X,      KC_C,     KC_V,           KC_B,             CTL_T(KC_SPC),   KC_N,              KC_M,    KC_COMM,   KC_DOT,  KC_SLSH},
 | 
			
		||||
  {KC_ESC, KC_TRNS,   KC_TRNS,  ALT_T(KC_ENT),  LT(LOWR, KC_TAB), SFT_T(KC_BSPC),  LT(RAIS, KC_DEL),  KC_LGUI, KC_TRNS,   KC_QUOT, KC_MINUS}
 | 
			
		||||
},
 | 
			
		||||
[LOWR] = {
 | 
			
		||||
  {KC_PSCR,  KC_HOME,   KC_UP,        KC_END,   KC_TRNS, KC_TRNS, KC_LPRN,       KC_F7,    KC_F8,   KC_F9, KC_RPRN},
 | 
			
		||||
  {KC_VOLU,  KC_LEFT,   KC_DOWN,      KC_RIGHT, KC_PGUP, KC_TRNS, KC_LBRC,       KC_F4,    KC_F5,   KC_F6, KC_RBRC},
 | 
			
		||||
  {KC_VOLD,  KC_MPRV,   KC_MPLY,      KC_MNXT,  KC_PGDN, KC_TRNS, LSFT(KC_LBRC), KC_F1,    KC_F2,   KC_F3, LSFT(KC_RBRC)},
 | 
			
		||||
  {KM_DLEFT, KM_DRIGHT, LALT(KC_TAB), KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS,       KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS}
 | 
			
		||||
},
 | 
			
		||||
[RAIS] = {
 | 
			
		||||
  {KC_EXLM, KC_AT,    KC_HASH,  KC_DLR,  KC_PERC, KC_TRNS, KC_TRNS,   KC_7,     KC_8, KC_9,   KC_TRNS},
 | 
			
		||||
  {KC_CIRC, KC_AMPR,  KC_GRV,   KC_TILD, KC_PIPE, KC_TRNS, KC_PLUS,   KC_4,     KC_5, KC_6,   KC_ASTR},
 | 
			
		||||
  {KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS, KC_BSLS, KC_TRNS, KC_MINUS,  KC_1,     KC_2, KC_3,   KC_SLASH},
 | 
			
		||||
  {RESET,   KC_TRNS,  KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,   KC_TRNS,  KC_0, KC_DOT,  KC_EQL}
 | 
			
		||||
}
 | 
			
		||||
  [ALPH] = LAYOUT(
 | 
			
		||||
    KC_Q,    KC_W,     KC_E,     KC_R,           KC_T,                                               KC_Y,              KC_U,     KC_I,     KC_O,     KC_P,
 | 
			
		||||
    KC_A,    KC_S,     KC_D,     KC_F,           KC_G,                                               KC_H,              KC_J,     KC_K,     KC_L,     KC_SCLN,
 | 
			
		||||
    KC_Z,    KC_X,     KC_C,     KC_V,           KC_B,                                               KC_N,              KC_M,     KC_COMM,  KC_DOT,   KC_SLSH,
 | 
			
		||||
    KC_ESC,  KC_TRNS,  KC_TRNS,  ALT_T(KC_ENT),  LT(LOWR, KC_TAB),  CTL_T(KC_SPC),  SFT_T(KC_BSPC),  LT(RAIS, KC_DEL),  KC_LGUI,  KC_TRNS,  KC_QUOT,  KC_MINUS
 | 
			
		||||
  ),
 | 
			
		||||
  [LOWR] = LAYOUT(
 | 
			
		||||
    KC_PSCR,   KC_HOME,    KC_UP,         KC_END,   KC_TRNS,                      KC_LPRN,        KC_F7,    KC_F8,    KC_F9,    KC_RPRN,
 | 
			
		||||
    KC_VOLU,   KC_LEFT,    KC_DOWN,       KC_RIGHT, KC_PGUP,                      KC_LBRC,        KC_F4,    KC_F5,    KC_F6,    KC_RBRC,
 | 
			
		||||
    KC_VOLD,   KC_MPRV,    KC_MPLY,       KC_MNXT,  KC_PGDN,                      LSFT(KC_LBRC),  KC_F1,    KC_F2,    KC_F3,    LSFT(KC_RBRC),
 | 
			
		||||
    KM_DLEFT,  KM_DRIGHT,  LALT(KC_TAB),  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,        KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS
 | 
			
		||||
  ),
 | 
			
		||||
  [RAIS] = LAYOUT(
 | 
			
		||||
    KC_EXLM,  KC_AT,    KC_HASH,  KC_DLR,   KC_PERC,                      KC_TRNS,   KC_7,     KC_8,  KC_9,    KC_TRNS,
 | 
			
		||||
    KC_CIRC,  KC_AMPR,  KC_GRV,   KC_TILD,  KC_PIPE,                      KC_PLUS,   KC_4,     KC_5,  KC_6,    KC_ASTR,
 | 
			
		||||
    KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_BSLS,                      KC_MINUS,  KC_1,     KC_2,  KC_3,    KC_SLASH,
 | 
			
		||||
    RESET,    KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,   KC_TRNS,  KC_0,  KC_DOT,  KC_EQL
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
| 
						 | 
				
			
			@ -49,8 +49,7 @@ const uint16_t PROGMEM fn_actions[] = {
 | 
			
		|||
  [2] = ACTION_MACRO_TAP(2)
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case 1:
 | 
			
		||||
      return tap_mod_macro(record, LGUI, MACRO( D(LSFT), T(9), U(LSFT), END));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,7 +15,7 @@
 | 
			
		|||
 * here: https://colemakmods.github.io/mod-dh/
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
 | 
			
		||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | 
			
		||||
| 
						 | 
				
			
			@ -47,7 +47,6 @@
 | 
			
		|||
; // This doesn't do anything. It's just for VSCode because its syntax highlighting is weird for the above #define statements.
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
  /*
 | 
			
		||||
   * Colemak-ModDH
 | 
			
		||||
   *
 | 
			
		||||
| 
						 | 
				
			
			@ -62,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * `----------------------------------' `------'   `------' `----------------------------------'
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
[_CO] = KEYMAP(
 | 
			
		||||
  [_CO] = LAYOUT(
 | 
			
		||||
    KC_Q,        KC_W,    KC_F,    KC_P,    KC_B,                                   KC_J,            KC_L,    KC_U,    KC_Y,    KC_SCLN,
 | 
			
		||||
    KC_A,        KC_R,    KC_S,    KC_T,    KC_G,                                   KC_M,            KC_N,    KC_E,    KC_I,    KC_O,
 | 
			
		||||
    SFT_T(KC_Z), KC_X,    KC_C,    KC_D,    KC_V,                                   KC_K,            KC_H,    KC_COMM, KC_DOT,  SFT_T(KC_SLSH),
 | 
			
		||||
| 
						 | 
				
			
			@ -83,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * `----------------------------------' `------'   `------' `----------------------------------'
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
[_QW] = KEYMAP( /* Qwerty */
 | 
			
		||||
  [_QW] = LAYOUT( /* Qwerty */
 | 
			
		||||
    KC_Q,        KC_W,    KC_E,    KC_R,    KC_T,                                  KC_Y,            KC_U,    KC_I,    KC_O,    KC_P,
 | 
			
		||||
    KC_A,        KC_S,    KC_D,    KC_F,    KC_G,                                  KC_H,            KC_J,    KC_K,    KC_L,    KC_SCLN,
 | 
			
		||||
    SFT_T(KC_Z), KC_X,    KC_C,    KC_V,    KC_B,                                  KC_N,            KC_M,    KC_COMM, KC_DOT,  SFT_T(KC_SLSH),
 | 
			
		||||
| 
						 | 
				
			
			@ -108,7 +107,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * `----------------------------------' `------'   `------' `----------------------------------'
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
[_EX] = KEYMAP( /* Extend */
 | 
			
		||||
  [_EX] = LAYOUT( /* Extend */
 | 
			
		||||
    _______, _______, _______, _______, LCTL(KC_GRV),              KC_PGUP, KC_HOME, KC_UP,   KC_END,  KC_DEL,
 | 
			
		||||
    KC_LGUI, KC_LSFT, KC_LALT, KC_LCTL, _______,                   KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC,
 | 
			
		||||
    KC_LSFT, KX_CUT,  KX_COPY, _______, KX_PAST,                   _______, KCX_LST, KC_TAB,  _______, KC_INS,
 | 
			
		||||
| 
						 | 
				
			
			@ -129,7 +128,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * `----------------------------------' `------'   `------' `----------------------------------'
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
[_NU] = KEYMAP( /* Numbers and symbols */
 | 
			
		||||
  [_NU] = LAYOUT( /* Numbers and symbols */
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_LCBR, KC_RCBR, KC_AMPR,                    KC_SLSH, KC_7,    KC_8,   KC_9,   KC_ASTR,
 | 
			
		||||
    KC_HASH, KC_DLR,  KC_LPRN, KC_RPRN, KC_TILD,                    KC_PIPE, KC_4,    KC_5,   KC_6,   KC_MINS,
 | 
			
		||||
    KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_GRV,                     KC_BSLS, KC_1,    KC_2,   KC_3,   KC_PLUS,
 | 
			
		||||
| 
						 | 
				
			
			@ -150,7 +149,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * `----------------------------------' `------'   `------' `----------------------------------'
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
[_FN] = KEYMAP( /* Functions */
 | 
			
		||||
  [_FN] = LAYOUT( /* Functions */
 | 
			
		||||
    KC_CAPS, KC_F9,   KC_F10,  KC_F11,  KC_F12,                    M(_USER),KC_WH_U, KC_MS_U, KC_WH_D, _______,
 | 
			
		||||
    _______, KC_F5,   KC_F6,   KC_F7,   KC_F8,                     KC_VOLU, KC_MS_L, KC_MS_D, KC_MS_R, _______,
 | 
			
		||||
    _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,                     KC_VOLD, _______, _______, _______, _______,
 | 
			
		||||
| 
						 | 
				
			
			@ -171,12 +170,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
   * `----------------------------------' `------'   `------' `----------------------------------'
 | 
			
		||||
   *
 | 
			
		||||
   */
 | 
			
		||||
[_GA] = KEYMAP( /* Gaming */
 | 
			
		||||
  [_GA] = LAYOUT( /* Gaming */
 | 
			
		||||
    _______, _______, _______, _______, _______,                   _______, KC_WH_U, KC_MS_U, KC_WH_D, _______,
 | 
			
		||||
    _______, _______, _______, _______, _______,                   _______, KC_MS_L, KC_MS_D, KC_MS_R, _______,
 | 
			
		||||
    KC_Z,    _______, _______, _______, _______,                   _______, _______, KC_MS_D, _______, _______,
 | 
			
		||||
    _______, TG(_GA), _______, KC_LSFT, KC_SPC,  KC_BSPC, KC_BTN2, KC_BTN1, KC_BTN3, _______, _______, _______
 | 
			
		||||
)};
 | 
			
		||||
  )
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Template
 | 
			
		||||
| 
						 | 
				
			
			@ -197,8 +197,7 @@ const uint16_t PROGMEM fn_actions[] = {
 | 
			
		|||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case _USER:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
// this is the style you want to emulate.
 | 
			
		||||
// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
#define _COLEMAK  0
 | 
			
		||||
#define _KAMELOC  1
 | 
			
		||||
| 
						 | 
				
			
			@ -143,7 +143,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  */
 | 
			
		||||
 | 
			
		||||
  // Colemak PB&J (Mod-DH)
 | 
			
		||||
[_COLEMAK] = KEYMAP( \
 | 
			
		||||
  [_COLEMAK] = LAYOUT( \
 | 
			
		||||
    KC_Q,   KC_W,   KC_F,   KC_P,         KC_B,                      KC_J,    KC_L,    KC_U,     KC_Y,    ALT_IT, \
 | 
			
		||||
    KC_A,   KC_R,   KC_S,   KC_T,         KC_G,                      KC_M,    KC_N,    KC_E,     KC_I,    KC_O,   \
 | 
			
		||||
    KC_X,   KC_C,   KC_D,   KC_V,         KC_Z,                      KC_K,    KC_H,    KC_COMM,  SFT_IT,  CTL_IT, \
 | 
			
		||||
| 
						 | 
				
			
			@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  ),
 | 
			
		||||
 | 
			
		||||
  // useful for one-handed typing
 | 
			
		||||
[_KAMELOC] = KEYMAP( \
 | 
			
		||||
  [_KAMELOC] = LAYOUT( \
 | 
			
		||||
    KC_SCLN,  KC_Y,    KC_U,         KC_L,     KC_J,                        KC_B,    KC_P,     KC_F,   KC_W,   KC_Q, \
 | 
			
		||||
    KC_O,     KC_I,    KC_E,         KC_N,     KC_M,                        KC_G,    KC_T,     KC_S,   KC_R,   KC_A, \
 | 
			
		||||
    KC_SLSH,  KC_DOT,  KC_COMM,      KC_H,     KC_K,                        KC_Z,    KC_V,     KC_D,   KC_C,   KC_X, \
 | 
			
		||||
| 
						 | 
				
			
			@ -170,7 +170,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    └────┴────┴────┴────┴────┴────┘    └────┴────┴────┴────┴────┴────┘
 | 
			
		||||
  */
 | 
			
		||||
 | 
			
		||||
[_IKAPILA] = KEYMAP( \
 | 
			
		||||
  [_IKAPILA] = LAYOUT( \
 | 
			
		||||
    KC_1,     KC_2,     KC_3,     KC_4,     KC_5,                           KC_6,     KC_7,     KC_8,     KC_9,     KC_0,    \
 | 
			
		||||
    KC_MUTE,  KC_VOLD,  KC_VOLU,  TD(MND),  KC_MPLY,                        KC_LEFT,  KC_DOWN,  KC_UP,    KC_RGHT,  TD(DSH), \
 | 
			
		||||
    KC_MINS,  KC_EQL,   KC_GRV,   KC_LGUI,  LCTL(KC_Z),                     TD(HND),  KC_HOME,  TD(HND),  KC_INS,   KC_BSLS, \
 | 
			
		||||
| 
						 | 
				
			
			@ -189,7 +189,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    └────┴────┴────┴────┴────┴────┘    └────┴────┴────┴────┴────┴────┘
 | 
			
		||||
  */
 | 
			
		||||
 | 
			
		||||
[_IKASHFT] =  KEYMAP( \
 | 
			
		||||
  [_IKASHFT] =  LAYOUT( \
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC,                  KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, \
 | 
			
		||||
    KC_PSCR, KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT,                  TD(MND), KC_PGUP, KC_VOLU, TD(VOM), KC_MDSH, \
 | 
			
		||||
    KC_UNDS, KC_PLUS, KC_TILD, KC_HOME, KC_END,                   M(1),    M(0),    M(5),    KC_LBRC, KC_RBRC, \
 | 
			
		||||
| 
						 | 
				
			
			@ -208,14 +208,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    └────┴────┴────┴────┴────┴────┘    └────┴────┴────┴────┴────┴────┘
 | 
			
		||||
  */
 | 
			
		||||
 | 
			
		||||
[_FNCTION] =  KEYMAP( \
 | 
			
		||||
  [_FNCTION] =  LAYOUT( \
 | 
			
		||||
    TD(F11), TD(F12), TD(F13), TD(F14), TD(F15),                    TD(F16), TD(F17), TD(F18), TD(F19), TD(F20), \
 | 
			
		||||
    KC_F21,  KC_F22,  KC_F23,  KC_F24,  XXXXXXX,                    XXXXXXX, KC_SLCK, XXXXXXX, XXXXXXX, TGNKRO,  \
 | 
			
		||||
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,                    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CAPS, \
 | 
			
		||||
    _______, _______, _______, _______, _______,  _______, _______, _______, _______, _______, _______, _______  \
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
[_GAMEQWERTY] = KEYMAP( \
 | 
			
		||||
  [_GAMEQWERTY] = LAYOUT( \
 | 
			
		||||
    KC_P,    KC_Q,    KC_W,    KC_E,    KC_R,                        KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    \
 | 
			
		||||
    KC_SCLN, KC_A,    KC_S,    KC_D,    KC_F,                        KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    \
 | 
			
		||||
    KC_SLSH, KC_Z,    KC_X,    KC_C,    KC_V,                        KC_B,    KC_N,    KC_M,    KC_COMM, TD(COD), \
 | 
			
		||||
| 
						 | 
				
			
			@ -234,7 +234,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    └────┴────┴────┴────┴────┴────┘    └────┴────┴────┴────┴────┴────┘
 | 
			
		||||
  */
 | 
			
		||||
 | 
			
		||||
[_MLAYER] =  KEYMAP( \
 | 
			
		||||
  [_MLAYER] = LAYOUT( \
 | 
			
		||||
    LALT(KC_ESC), KC_9,    KC_8,    KC_7,    KC_6,                      M(1),    M(0),    KC_MS_U, M(0),    M(2),     \
 | 
			
		||||
    KC_0,         KC_2,    KC_3,    KC_4,    KC_5,                      M(5),    KC_MS_L, KC_MS_D, KC_MS_R, KC_ACL2,  \
 | 
			
		||||
    KC_1,         KC_0,    XXXXXXX, XXXXXXX, KC_BTN5,                   KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, M(5),     \
 | 
			
		||||
| 
						 | 
				
			
			@ -242,12 +242,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  ),
 | 
			
		||||
 | 
			
		||||
  //one_ring=2__rule__them-all
 | 
			
		||||
[_GRVTABL] =  KEYMAP( \
 | 
			
		||||
  [_GRVTABL] = LAYOUT( \
 | 
			
		||||
    LALT(KC_PSCR), M(4),            KC_PWR,      KC_POWER,     RESET,                          RESET,        KC_R,         KC_E,        KC_I,            LALT(KC_PSCR), \
 | 
			
		||||
    TG(_NINEKEY),  TG(_FNCTION),    TG(_MLAYER), TG(_IKASHFT), TG(_IKAPILA),                   TG(_IKAPILA), KC_S,         KC_U,        KC_B,            TG(_NINEKEY),  \
 | 
			
		||||
    M(3),          TG(_GAMEQWERTY), XXXXXXX,     XXXXXXX,      XXXXXXX,                        KC_MYCM,      KC_CALC,      XXXXXXX,     TG(_GAMEQWERTY), M(3),          \
 | 
			
		||||
    TT(_GRVTABL),  TG(_FNCTION),    TG(_MLAYER), TG(_IKASHFT), TG(_IKAPILA), _______, _______, TG(_IKAPILA), TG(_IKASHFT), TG(_MLAYER), TG(_MLAYER),     TG(_NINEKEY)   \
 | 
			
		||||
)};
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
qk_tap_dance_action_t tap_dance_actions[] = {
 | 
			
		||||
  [VOM] = ACTION_TAP_DANCE_DOUBLE(KC_VOLD, KC_MUTE),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,7 +2,7 @@
 | 
			
		|||
// Chris Gerber (@gerbercj), with the addition of persistent layers like the Planck and
 | 
			
		||||
// Preonic keyboards by Jack Humbert.
 | 
			
		||||
 | 
			
		||||
#include "atreus.h"
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
#include "eeconfig.h"
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -53,12 +53,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||Enter |------+------+------+------+------|
 | 
			
		||||
	|  Esc |  Tab |  GUI | LOWER| BkSp |------'`------|  Spc | RAISE|   -  |   /  |   \  |
 | 
			
		||||
	`----------------------------------'              `----------------------------------' */
 | 
			
		||||
  [_DVORAK] = {
 | 
			
		||||
    {KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    XXXXXXX, KC_F,    KC_G,    KC_C,    KC_R,    KC_L   },
 | 
			
		||||
    {KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    XXXXXXX, KC_D,    KC_H,    KC_T,    KC_N,    KC_S   },
 | 
			
		||||
    {SFTSCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_LCTL, KC_B,    KC_M,    KC_W,    KC_V,    SFTZED },
 | 
			
		||||
    {ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_SLSH, KC_BSLS}
 | 
			
		||||
  },
 | 
			
		||||
  [_DVORAK] = LAYOUT(
 | 
			
		||||
    KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,                      KC_F,    KC_G,    KC_C,    KC_R,    KC_L   ,
 | 
			
		||||
    KC_A,    KC_O,    KC_E,    KC_U,    KC_I,                      KC_D,    KC_H,    KC_T,    KC_N,    KC_S   ,
 | 
			
		||||
    SFTSCLN, KC_Q,    KC_J,    KC_K,    KC_X,                      KC_B,    KC_M,    KC_W,    KC_V,    SFTZED ,
 | 
			
		||||
    ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, KC_LCTL, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_SLSH, KC_BSLS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* QWERTY Layer
 | 
			
		||||
	,----------------------------------.              ,----------------------------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -70,12 +70,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||Enter |------+------+------+------+------|
 | 
			
		||||
	|  Esc |  Tab |  GUI | LOWER| BkSp |------'`------|  Spc | RAISE|   -  |   '  |   \  |
 | 
			
		||||
	`----------------------------------'              `----------------------------------' */
 | 
			
		||||
  [_QWERTY] = {
 | 
			
		||||
    {KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    XXXXXXX, KC_Y,    KC_U,    KC_I,    KC_O,    KC_P   },
 | 
			
		||||
    {KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    XXXXXXX, KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN},
 | 
			
		||||
    {SFTZED,  KC_X,    KC_C,    KC_V,    KC_B,    KC_LCTL, KC_N,    KC_M,    KC_COMM, KC_DOT,  SFTSLSH},
 | 
			
		||||
    {ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_QUOT, KC_BSLS}
 | 
			
		||||
  },
 | 
			
		||||
  [_QWERTY] = LAYOUT(
 | 
			
		||||
    KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,                      KC_Y,    KC_U,    KC_I,    KC_O,    KC_P   ,
 | 
			
		||||
    KC_A,    KC_S,    KC_D,    KC_F,    KC_G,                      KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN,
 | 
			
		||||
    SFTZED,  KC_X,    KC_C,    KC_V,    KC_B,                      KC_N,    KC_M,    KC_COMM, KC_DOT,  SFTSLSH,
 | 
			
		||||
    ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, KC_LCTL, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_QUOT, KC_BSLS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* Colemak Layer
 | 
			
		||||
	,----------------------------------.              ,----------------------------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -87,12 +87,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||Enter |------+------+------+------+------|
 | 
			
		||||
	|  Esc |  Tab |  GUI | LOWER| BkSp |------'`------|  Spc | RAISE|   -  |   '  |   \  |
 | 
			
		||||
	`----------------------------------'              `----------------------------------'*/
 | 
			
		||||
  [_COLEMAK] = {
 | 
			
		||||
    {KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,    XXXXXXX, KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN},
 | 
			
		||||
    {KC_A,    KC_R,    KC_S,    KC_T,    KC_D,    XXXXXXX, KC_H,    KC_N,    KC_E,    KC_I,    KC_O   },
 | 
			
		||||
    {SFTZED,  KC_X,    KC_C,    KC_V,    KC_B,    KC_LCTL, KC_K,    KC_M,    KC_COMM, KC_DOT,  SFTSLSH},
 | 
			
		||||
    {ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_QUOT, KC_BSLS}
 | 
			
		||||
  },
 | 
			
		||||
  [_COLEMAK] = LAYOUT(
 | 
			
		||||
    KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,                      KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN,
 | 
			
		||||
    KC_A,    KC_R,    KC_S,    KC_T,    KC_D,                      KC_H,    KC_N,    KC_E,    KC_I,    KC_O   ,
 | 
			
		||||
    SFTZED,  KC_X,    KC_C,    KC_V,    KC_B,                      KC_K,    KC_M,    KC_COMM, KC_DOT,  SFTSLSH,
 | 
			
		||||
    ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, KC_LCTL, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_QUOT, KC_BSLS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* Dvorak Layer with Command key on left thumb instead of Control
 | 
			
		||||
	,----------------------------------.              ,----------------------------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -104,12 +104,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||Enter |------+------+------+------+------|
 | 
			
		||||
	|  Esc |  Tab |  GUI | LOWER| BkSp |------'`------|  Spc | RAISE|   -  |   /  |   \  |
 | 
			
		||||
	`----------------------------------'              `----------------------------------' */
 | 
			
		||||
  [_DVORMAC] = {
 | 
			
		||||
    {KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    XXXXXXX, KC_F,    KC_G,    KC_C,    KC_R,    KC_L   },
 | 
			
		||||
    {KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    XXXXXXX, KC_D,    KC_H,    KC_T,    KC_N,    KC_S   },
 | 
			
		||||
    {SFTSCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_LGUI, KC_B,    KC_M,    KC_W,    KC_V,    SFTZED },
 | 
			
		||||
    {ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_SLSH, KC_BSLS}
 | 
			
		||||
  },
 | 
			
		||||
  [_DVORMAC] = LAYOUT(
 | 
			
		||||
    KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,                      KC_F,    KC_G,    KC_C,    KC_R,    KC_L   ,
 | 
			
		||||
    KC_A,    KC_O,    KC_E,    KC_U,    KC_I,                      KC_D,    KC_H,    KC_T,    KC_N,    KC_S   ,
 | 
			
		||||
    SFTSCLN, KC_Q,    KC_J,    KC_K,    KC_X,                      KC_B,    KC_M,    KC_W,    KC_V,    SFTZED ,
 | 
			
		||||
    ESCTRL,  TABALT,  KC_LGUI, LOWER,   KC_BSPC, KC_LGUI, ALTENT,  KC_SPC,  RAISE,   KC_MINS, KC_SLSH, KC_BSLS
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* LOWER Layer
 | 
			
		||||
	,----------------------------------.              ,----------------------------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -121,12 +121,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||      |------+------+------+------+------|
 | 
			
		||||
	|   ~  |      |      |      | Del  |------'`------| Ins  |      |      |      |      |
 | 
			
		||||
	`----------------------------------'              `----------------------------------'*/
 | 
			
		||||
  [_LOWER] = {
 | 
			
		||||
    {KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, XXXXXXX, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN},
 | 
			
		||||
    {KC_CAPS, _______, KC_UP,   _______, KC_HOME, XXXXXXX, KC_PGUP, _______, KC_PLUS, KC_LCBR, KC_RCBR},
 | 
			
		||||
    {_______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,  _______, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, _______},
 | 
			
		||||
    {KC_TILD, _______, _______, _______, KC_DEL,  _______, KC_INS,  _______, _______, _______, _______}
 | 
			
		||||
  },
 | 
			
		||||
  [_LOWER] = LAYOUT(
 | 
			
		||||
    KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC,                   KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,
 | 
			
		||||
    KC_CAPS, _______, KC_UP,   _______, KC_HOME,                   KC_PGUP, _______, KC_PLUS, KC_LCBR, KC_RCBR,
 | 
			
		||||
    _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,                    KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, _______,
 | 
			
		||||
    KC_TILD, _______, _______, _______, KC_DEL,  _______, _______, KC_INS,  _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* RAISE Layer
 | 
			
		||||
	,----------------------------------.              ,----------------------------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -138,12 +138,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||      |------+------+------+------+------|
 | 
			
		||||
	|   `  |      |      |      | Del  |------'`------| Ins  |      |      |      |      |
 | 
			
		||||
	`----------------------------------'              `----------------------------------'*/
 | 
			
		||||
  [_RAISE] = {
 | 
			
		||||
    {KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    XXXXXXX, KC_6,    KC_7,    KC_8,    KC_9,    KC_0   },
 | 
			
		||||
    {KC_CAPS, _______, KC_UP,   _______, KC_HOME, XXXXXXX, KC_PGUP, _______, KC_EQL,  KC_LBRC, KC_RBRC},
 | 
			
		||||
    {_______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,  _______, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, _______},
 | 
			
		||||
    {KC_GRV,  _______, _______, _______, KC_DEL,  _______, KC_INS,  _______, _______, _______, _______}
 | 
			
		||||
  },
 | 
			
		||||
  [_RAISE] = LAYOUT(
 | 
			
		||||
    KC_1,    KC_2,    KC_3,    KC_4,    KC_5,                      KC_6,    KC_7,    KC_8,    KC_9,    KC_0   ,
 | 
			
		||||
    KC_CAPS, _______, KC_UP,   _______, KC_HOME,                   KC_PGUP, _______, KC_EQL,  KC_LBRC, KC_RBRC,
 | 
			
		||||
    _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END,                    KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, _______,
 | 
			
		||||
    KC_GRV,  _______, _______, _______, KC_DEL,  _______, _______, KC_INS,  _______, _______, _______, _______
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  /* ADJUST Layer
 | 
			
		||||
	,----------------------------------.              ,----------------------------------.
 | 
			
		||||
| 
						 | 
				
			
			@ -155,13 +155,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	|------+------+------+------+------|      ||      |------+------+------+------+------|
 | 
			
		||||
	|      |      |      |      |      |------'`------|      |      |      |      | RESET|
 | 
			
		||||
	`----------------------------------'              `----------------------------------'*/
 | 
			
		||||
  [_ADJUST] = {
 | 
			
		||||
    {KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   XXXXXXX, KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10 },
 | 
			
		||||
    {KC_F11,  _______, _______, _______, _______, XXXXXXX, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12 },
 | 
			
		||||
    {_______, QWERTY,  COLEMAK, DVORAK,  DVORMAC, _______, _______, _______, _______, _______, _______},
 | 
			
		||||
    {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET  }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  [_ADJUST] = LAYOUT(
 | 
			
		||||
    KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,                     KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10 ,
 | 
			
		||||
    KC_F11,  _______, _______, _______, _______,                   _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12 ,
 | 
			
		||||
    _______, QWERTY,  COLEMAK, DVORAK,  DVORMAC,                   _______, _______, _______, _______, _______,
 | 
			
		||||
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET  
 | 
			
		||||
  ),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue