@ -6,12 +6,26 @@
# define BASE 0 // default layer
# define SYMB 1 // symbols
# define MDIA 2 // media keys
# define CRSR 3 // media keys
# define SMLY 3 // media keys
# define NUMB 4 // number keys
# define EGOS 5 // Egoshooter layer
# define M_CTRL_CMDV 1
# define M_CTRL_CMDC 2
# define M_MEH_SH_ACUT 3
# define M_DE_PLUS_CTRLALT 12
# define M_DE_CIRC_CTRLCMD 13
# define M_TOGGLE_5 14
# define SM_SMILE 4
# define SM_SMIRK 5
# define SM_FROWN 6
# define SM_CRY 7
# define SM_KISS 8
# define SM_HEART 9
# define SM_LAUGH 10
# define SM_SAD 11
const uint16_t PROGMEM keymaps [ ] [ MATRIX_ROWS ] [ MATRIX_COLS ] = {
/* Keymap 0: Basic layer
@ -43,16 +57,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB , DE_Q , DE_W , DE_E , DE_R , DE_T , KC_LGUI ,
KC_LALT , DE_A , DE_S , DE_D , DE_F , DE_G ,
KC_LSFT , CTL_T ( DE_Y ) , DE_X , DE_C , DE_V , DE_B , KC_LALT ,
LT ( SYMB , KC_GRV) , DE_LESS , LALT ( KC_LSFT ) , KC_LEFT , KC_RGHT ,
LT ( SYMB , DE_LESS) , M ( M_DE_CIRC_CTRLCMD ) , M ( M_DE_PLUS_CTRLALT ) , LALT ( KC_LSFT ) , LGUI ( KC_LSFT ) ,
M ( M_MEH_SH_ACUT ) , TG ( 2 ) ,
KC_HOME ,
KC_BSPC , KC_DEL , KC_END ,
KC_BSPC , KC_DEL , LT ( SMLY , KC_END ) ,
// right hand
M ( M_CTRL_CMDC ) , DE_6 , DE_7 , DE_8 , DE_9 , DE_0 , DE_SS ,
KC_RGUI , DE_Z , DE_U , DE_I , DE_O , DE_P , DE_UE ,
DE_H , DE_J , DE_K , DE_L , DE_OE , ALT_T ( DE_AE ) ,
KC_RALT , DE_N , DE_M , DE_COMM , DE_DOT , CTL_T ( DE_MINS ) , KC_RSFT ,
KC_ UP, KC_DOWN , LGUI ( KC_LSFT ) , DE_PLUS , LT ( SYMB , DE_HASH ) ,
KC_ LEFT, KC_UP , KC_DOWN , KC_RIGHT , LT ( SYMB , DE_HASH ) ,
TG ( 4 ) , ALL_T ( DE_ACUT ) ,
KC_PGUP ,
KC_PGDN , KC_ENT , KC_SPC
@ -60,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 1: Symbol Layer
*
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
* | | F1 | F2 | F3 | F4 | F5 | | | L5 | F6 | F7 | F8 | F9 | F10 | F11 |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - - - - - - | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | < | > | ! | ? | | | | | \ | [ | ] | | | # | F12 |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - | | | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
@ -90,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS ,
KC_TRNS , KC_DEL , KC_TRNS ,
// right hand
KC_TRNS , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 ,
M ( M_TOGGLE_5 ) , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 ,
KC_TRNS , LALT ( LSFT ( KC_7 ) ) , LALT ( KC_5 ) , LALT ( KC_6 ) , LALT ( KC_7 ) , DE_HASH , KC_F12 ,
DE_SLSH , DE_LPRN , DE_RPRN , LALT ( KC_8 ) , LALT ( KC_9 ) , KC_TRNS ,
KC_TRNS , DE_AMPR , KC_GRV , LSFT ( KC_GRV ) , DE_DQOT , DE_QUOT , DE_QST ,
@ -102,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 2: Media and mouse keys
*
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | | | | | | | | | Mute | | | | | | Play |
* | | | | | | | | | Mute | | | | | | EGOS |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - - - - - - | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | | Lclk | MsUp | Rclk | WlUp | | | | | | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - | | | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
@ -140,20 +154,20 @@ KEYMAP(
KC_TRNS ,
KC_TRNS , KC_TRNS , KC_WBAK
) ,
// ADNW-KOY layer
/* Keymap 3: ADNW-Koy layer
* ADNW- Koy is a special layout designed to be ergonomic . Was created using software to determine the most ergonomic way to type German and English texts .
/* Keymap 3: Smiley layer
* making it easier to type smileys . . . tipp : on osx you can easily replace those smileys with the UTF - 8 character using
* keyboard short commands . . .
*
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | | | | | | | | | | | | | | | - |
* | | | | | | | | | : - ) | ; - ) | : - D | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - - - - - - | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | K | . | O | , | Y | | | | V | G | C | L | ß | Z |
* | | | | | | | | | | : - { | : - ( | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - | | | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | H | A | E | I | U | - - - - - - | | - - - - - - | D | T | R | N | S | F / L2 |
* | | | | | | | - - - - - - | | - - - - - - | < 3 | : - * | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - | | | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | X / Ctrl | Q | Ä | Ü | Ö | | | | B | P | W | M | J / Ctrl | RShift |
* | | | | | | | | | | | | | | | |
* ` - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - - - - - - ' ` - - - - - - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - '
* | < / L1 | ^ | AltShf | Left | Right | | Up | Down | CMD - SHIFT | ´ | //L1 |
* | | | | | | | | | | | r |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
* , - - - - - - - - - - - - - . , - - - - - - - - - - - - - .
* | | | | | |
@ -165,18 +179,18 @@ KEYMAP(
*/
KEYMAP (
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
KC_TRNS , KC_ K, KC_DOT , KC_O , KC_COMM , KC_Z , KC_TRNS ,
KC_TRNS , KC_ H, KC_A , KC_E , KC_I , KC_U ,
KC_TRNS , CTL_T ( KC_X ) , KC_Q , DE_AE , DE_UE , DE_OE , 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_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_TRNS ,
// right hand
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_SLSH ,
KC_TRNS , KC_V , KC_G , KC_C , KC_L , KC_MINS , KC_Y ,
KC_D , KC_T , KC_R , KC_N , KC_S , LT ( MDIA , KC_F ) ,
KC_TRNS , KC_ B, KC_P , KC_W , KC_M , CTL_T ( KC_J ) , KC_TRNS ,
M ( SM_SMILE ) , M ( SM_SMIRK ) , M ( SM_LAUGH ) , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
KC_TRNS , M ( SM_FROWN ) , M ( SM_SAD ) , M ( SM_CRY ) , KC_TRNS , KC_TRNS , KC_TRNS ,
M ( SM_HEART ) , M ( SM_KISS ) , 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_TRNS ,
@ -195,9 +209,50 @@ KEYMAP(
// right hand
KC_TRNS , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 ,
KC_TRNS , KC_UP , KC_7 , KC_8 , KC_9 , LSFT ( KC_RBRC ) , KC_F12 ,
KC_DOWN , KC_4 , KC_5 , KC_6 , KC_RBRC , KC_TR NS,
KC_DOWN , KC_4 , KC_5 , KC_6 , KC_RBRC , DE_MI NS,
KC_TRNS , LSFT ( KC_6 ) , KC_1 , KC_2 , KC_3 , LSFT ( KC_7 ) , KC_TRNS ,
KC_0 , KC_DOT , KC_0 , KC_EQL , KC_TRNS ,
KC_0 , KC_DOT , KC_0 , DE_EQL , KC_TRNS ,
KC_TRNS , KC_TRNS ,
KC_TRNS ,
KC_TRNS , KC_TRNS , KC_TRNS
) ,
/* Keymap 3: Egoshooter layer
*
* , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . , - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .
* | | | | | | | | | L5 | | | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - - - - - - | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | | | | | | | | | | | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - | | | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | SHIFT | | | | | | - - - - - - | | - - - - - - | | | | | | |
* | - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - | | | | - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - |
* | | | | | | | | | | | | | | | |
* ` - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - - - - - - ' ` - - - - - - - - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - + - - - - - - - - '
* | CTRL | | | | | | | | | | |
* ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' ` - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '
* , - - - - - - - - - - - - - . , - - - - - - - - - - - - - .
* | F1 | F2 | | | |
* , - - - - - - | - - - - - - | - - - - - - | | - - - - - - + - - - - - - - - + - - - - - - .
* | | | F3 | | | | |
* | SPACE | CTRL | - - - - - - | | - - - - - - | | |
* | | | F4 | | | | |
* ` - - - - - - - - - - - - - - - - - - - - ' ` - - - - - - - - - - - - - - - - - - - - - - '
*/
KEYMAP (
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_LSFT , 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_LCTL , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
KC_F1 , KC_F2 ,
KC_F3 ,
KC_SPC , KC_LCTL , KC_F4 ,
// right hand
M ( M_TOGGLE_5 ) , 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_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_TRNS
@ -206,7 +261,7 @@ KEYMAP(
const uint16_t PROGMEM fn_actions [ ] = {
[ 1 ] = ACTION_LAYER_TAP_TOGGLE ( SYMB ) , // FN1 - Momentary Layer 1 (Symbols)
[ 2 ] = ACTION_LAYER_TAP_TOGGLE ( CRSR) // FN2 - Momentary Layer 2 (Cursors )
[ 2 ] = ACTION_LAYER_TAP_TOGGLE ( SMLY) // FN2 - Momentary Layer 2 (Smiley )
} ;
const macro_t * action_get_macro ( keyrecord_t * record , uint8_t id , uint8_t opt )
@ -257,7 +312,80 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
}
}
break ;
}
case M_DE_CIRC_CTRLCMD :
if ( record - > event . pressed ) {
start = timer_read ( ) ;
return MACRO ( D ( LCTRL ) , D ( LGUI ) , END ) ;
} else {
if ( timer_elapsed ( start ) > 150 ) {
return MACRO ( U ( LCTRL ) , U ( LGUI ) , END ) ;
} else {
return MACRO ( U ( LCTRL ) , U ( LGUI ) , T ( NUBS ) , END ) ;
}
}
break ;
case M_DE_PLUS_CTRLALT :
if ( record - > event . pressed ) {
start = timer_read ( ) ;
return MACRO ( D ( LCTRL ) , D ( LALT ) , END ) ;
} else {
if ( timer_elapsed ( start ) > 150 ) {
return MACRO ( U ( LCTRL ) , U ( LALT ) , END ) ;
} else {
return MACRO ( U ( LCTRL ) , U ( LALT ) , T ( RBRC ) , END ) ;
}
}
break ;
case SM_SMILE :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( DOT ) , U ( LSFT ) , T ( SLSH ) , D ( LSFT ) , T ( 9 ) , U ( LSFT ) , END ) ;
}
break ;
case SM_SMIRK :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( COMM ) , U ( LSFT ) , T ( SLSH ) , D ( LSFT ) , T ( 9 ) , U ( LSFT ) , END ) ;
}
break ;
case SM_CRY :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( COMM ) , U ( LSFT ) , T ( SLSH ) , D ( LSFT ) , T ( 8 ) , U ( LSFT ) , END ) ;
}
break ;
case SM_SAD :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( DOT ) , U ( LSFT ) , T ( SLSH ) , D ( LSFT ) , T ( 8 ) , U ( LSFT ) , END ) ;
}
break ;
case SM_HEART :
if ( record - > event . pressed ) {
return MACRO ( T ( GRV ) , T ( 3 ) , END ) ;
}
break ;
case SM_LAUGH :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( DOT ) , U ( LSFT ) , T ( SLSH ) , D ( LSFT ) , T ( D ) , U ( LSFT ) , END ) ;
}
break ;
case SM_KISS :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( DOT ) , U ( LSFT ) , T ( SLSH ) , D ( LSFT ) , T ( RBRC ) , U ( LSFT ) , END ) ;
}
break ;
case SM_FROWN :
if ( record - > event . pressed ) {
return MACRO ( D ( LSFT ) , T ( DOT ) , U ( LSFT ) , T ( SLSH ) , D ( LALT ) , T ( 8 ) , U ( LALT ) , END ) ;
}
break ;
case M_TOGGLE_5 :
if ( record - > event . pressed ) {
layer_state ^ = ( 1 < < 5 ) ;
layer_state & = ( 1 < < 5 ) ;
}
break ;
}
return MACRO_NONE ;
} ;
@ -291,6 +419,11 @@ void * matrix_scan_user(void) {
ergodox_right_led_3_on ( ) ;
//ergodox_board_led_on();
break ;
case 5 :
ergodox_right_led_1_on ( ) ;
ergodox_right_led_2_on ( ) ;
ergodox_right_led_3_on ( ) ;
break ;
default :
// none
break ;