Merge branch 'jackhumbert-master'
This commit is contained in:
		
							
								
								
									
										7
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -13,4 +13,9 @@ tags | ||||
| build/ | ||||
| *.bak | ||||
| .vagrant/ | ||||
| .DS_STORE | ||||
| .DS_STORE | ||||
|  | ||||
| # Eclipse Settings | ||||
| .cproject | ||||
| .project | ||||
| .settings/ | ||||
| @@ -55,7 +55,7 @@ As on the original TM 2030, when `num` layer is activated, holding `fn` disables | ||||
| ## Dvorak Layer | ||||
| Same as Layer 0 but with _Dvorak_ layout, to use with QWERTY OS layout. | ||||
|  | ||||
| Enable Dvorak layout with [`Magic`](/TMK_README.md#magic-commands+`1` (`LShift`+`RShift`+`1`), disable with `Magic`-`0`. | ||||
| Enable Dvorak layout with [`Magic`](/TMK_README.md#magic-commands)+`1` (`LShift`+`RShift`+`1`), disable with `Magic`-`0`. | ||||
|  | ||||
| The middle (green) led indicates when the Dvorak layer is activated. | ||||
|  | ||||
|   | ||||
| @@ -11,9 +11,6 @@ | ||||
|  | ||||
| #define MDBL0 1 | ||||
| #define MFNLR 2 | ||||
| #define MCUT  3 | ||||
| #define MCOPY 4 | ||||
| #define MPSTE 5 | ||||
|  | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| /* Basic layer | ||||
| @@ -142,7 +139,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|                                                KC_TRNS, | ||||
|                                                KC_TRNS, KC_TRNS,KC_TRNS, | ||||
|        // right hand | ||||
|        KC_INS,  KC_F6,   KC_F7,   KC_TAB,  KC_PSLS, KC_PAST, KC_PMNS, | ||||
|        KC_TRNS, KC_F6,   KC_F7,   KC_TAB,  KC_PSLS, KC_PAST, KC_PMNS, | ||||
|        KC_TRNS, KC_TRNS, KC_HOME, KC_P7,   KC_P8,   KC_P9,   KC_PPLS, | ||||
|                 KC_UP,   KC_END,  KC_P4,   KC_P5,   KC_P6,   KC_PPLS, | ||||
|        KC_LEFT, KC_DOWN, KC_RGHT, KC_P1,   KC_P2,   KC_P3,   KC_PENT, | ||||
| @@ -178,7 +175,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|        KC_TRNS, KC_TRNS, KC_TRNS,      KC_TRNS,     KC_TRNS,      KC_TRNS, KC_INS, | ||||
|        KC_TRNS, KC_TRNS, KC_TRNS,      KC_TRNS,     KC_TRNS,      KC_TRNS, KC_VOLU, | ||||
|        KC_TRNS, KC_TRNS, KC_TRNS,      KC_CALC,     KC_MAIL,      KC_WHOM, | ||||
|        KC_TRNS, KC_TRNS, M(MCUT),      M(MCOPY),    M(MPSTE),     KC_MUTE, KC_VOLD, | ||||
|        KC_TRNS, KC_TRNS, LSFT(KC_DELT),LCTL(KC_INS),LSFT(KC_INS), KC_MUTE, KC_VOLD, | ||||
|        KC_TRNS, KC_TRNS, KC_TRNS,      KC_TRNS,     KC_TRNS, | ||||
|  | ||||
|                                            KC_TRNS, KC_TRNS, | ||||
| @@ -210,22 +207,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||||
|             } | ||||
|         break; | ||||
|         case MFNLR: | ||||
|             layer_state ^= (1 << NUMR) | (1 << FNLR); | ||||
|             break; | ||||
|         case MCUT: | ||||
|             if (record->event.pressed) { | ||||
|                 return MACRO(D(LSFT), T(DELT), U(LSFT), END); | ||||
|             } | ||||
|             break; | ||||
|         case MCOPY: | ||||
|             if (record->event.pressed) { | ||||
|                 return MACRO(D(LCTL), T(INS), U(LCTL), END); | ||||
|             } | ||||
|             break; | ||||
|         case MPSTE: | ||||
|             if (record->event.pressed) { | ||||
|                 return MACRO(D(LSFT), T(INS), U(LSFT), END); | ||||
|             } | ||||
|             layer_invert(NUMR); | ||||
|             layer_invert(FNLR); | ||||
|             break; | ||||
|     } | ||||
|     return MACRO_NONE; | ||||
| @@ -233,7 +216,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||||
|  | ||||
| // Runs just one time when the keyboard initializes. | ||||
| void * matrix_init_user(void) { | ||||
|  | ||||
|     return NULL; | ||||
| }; | ||||
|  | ||||
| // Runs constantly in the background, in a loop. | ||||
| @@ -255,4 +238,5 @@ void * matrix_scan_user(void) { | ||||
|     if (host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK)) { | ||||
|       ergodox_right_led_3_on(); | ||||
|     } | ||||
|     return NULL; | ||||
| }; | ||||
|   | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|     */ | ||||
|   {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_DOT,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_DQOT}, | ||||
|   {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(5),    DE_MORE, DE_QST,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(1),    DE_MORE, DE_QST,  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} | ||||
| }, | ||||
| [2] = { /* Raise | ||||
| @@ -148,36 +148,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||||
|             layer_off(1); | ||||
|             unregister_code(KC_LSFT); | ||||
|         } | ||||
|         break; | ||||
|         break;        | ||||
|     case 1: // M(1) | ||||
|         if (record->event.pressed) { | ||||
|             register_code(LSFT(DE_SCLN)); | ||||
|         } else { | ||||
|             unregister_code(LSFT(DE_SCLN)); | ||||
|         } | ||||
|         break; | ||||
|     case 2: // M(2) | ||||
|         if (record->event.pressed) { | ||||
|             register_code(DE_MINS); | ||||
|         } else { | ||||
|             unregister_code(DE_MINS); | ||||
|         } | ||||
|         break; | ||||
|     case 3: // M(3) | ||||
|         if (record->event.pressed) { | ||||
|             register_code(DE_COMM); | ||||
|         } else { | ||||
|             unregister_code(DE_COMM); | ||||
|         } | ||||
|         break;         | ||||
|     case 4: // M(4) | ||||
|         if (record->event.pressed) { | ||||
|             register_code(DE_DOT); | ||||
|         } else { | ||||
|             unregister_code(DE_DOT); | ||||
|         } | ||||
|         break;         | ||||
|     case 5: // M(5) | ||||
|         if (record->event.pressed) { | ||||
|             unregister_code(KC_LSFT); | ||||
|             register_code(DE_MORE); | ||||
| @@ -185,13 +157,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||||
|             unregister_code(DE_MORE); | ||||
|         } | ||||
|         break;     | ||||
|     case 6: // M(6) | ||||
|         if (record->event.pressed) { | ||||
|             register_code(DE_LESS); | ||||
|         } else { | ||||
|             unregister_code(DE_LESS); | ||||
|         } | ||||
|         break; | ||||
|   } | ||||
|   return MACRO_NONE; | ||||
|  | ||||
|   | ||||
							
								
								
									
										64
									
								
								keyboard/planck/keymaps/lukas.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								keyboard/planck/keymaps/lukas.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| #include "planck.h" | ||||
| #ifdef BACKLIGHT_ENABLE | ||||
|   #include "backlight.h" | ||||
| #endif | ||||
|  | ||||
| // This simple keymap is optimized for xmonad users using super as their modifier key. | ||||
| // M(1) makes it possible to change virtual screens and swap windows between them. | ||||
|  | ||||
| // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||||
| #define _QW 0 | ||||
| #define _LW 1 | ||||
| #define _RS 2 | ||||
|  | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|   [_QW] = { /* Qwerty */ | ||||
|     {KC_TAB,  KC_Q,    KC_W,    KC_E, KC_R,    KC_T,   KC_Y,   KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC}, | ||||
|     {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_LSFT, KC_Z,    KC_X,    KC_C, KC_V,    KC_B,   KC_N,   KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT }, | ||||
|     {KC_LCTL, KC_LALT, KC_LGUI, M(1), MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT} | ||||
|   }, | ||||
|   [_RS] = { /* RAISE */ | ||||
|     {KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_DEL }, | ||||
|     {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS}, | ||||
|     {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} | ||||
|   }, | ||||
|   [_LW] = { /* LOWER */ | ||||
|     {KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, | ||||
|     {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, | ||||
|     {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, 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} | ||||
|   } | ||||
| }; | ||||
|  | ||||
| const uint16_t PROGMEM fn_actions[] = { | ||||
|  | ||||
| }; | ||||
|  | ||||
| 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: | ||||
|       if (record->event.pressed) { | ||||
|         register_code(KC_RSFT); | ||||
|         #ifdef BACKLIGHT_ENABLE | ||||
|           backlight_step(); | ||||
|         #endif | ||||
|       } else { | ||||
|         unregister_code(KC_RSFT); | ||||
|       } | ||||
|       break; | ||||
|     case 1: | ||||
|       if (record->event.pressed) { | ||||
|         register_code(KC_LGUI); | ||||
|         layer_on(_RS); | ||||
|       } else { | ||||
|         unregister_code(KC_LGUI); | ||||
|         layer_off(_RS); | ||||
|       } | ||||
|       break; | ||||
|   } | ||||
|   return MACRO_NONE; | ||||
| }; | ||||
| @@ -68,5 +68,7 @@ | ||||
| #define DV_RPRN	LSFT(DV_0) | ||||
| #define DV_LCBR	LSFT(DV_LBRC) | ||||
| #define DV_RCBR	LSFT(DV_RBRC) | ||||
| #define DV_UNDS LSFT(DV_MINS) | ||||
| #define DV_PLUS LSFT(DV_EQL) | ||||
|  | ||||
| #endif | ||||
| #endif | ||||
|   | ||||
							
								
								
									
										98
									
								
								quantum/keymap_extras/keymap_fr_ch.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										98
									
								
								quantum/keymap_extras/keymap_fr_ch.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,98 @@ | ||||
| #ifndef KEYMAP_FR_CH | ||||
| #define KEYMAP_FR_CH | ||||
|  | ||||
| #include "keymap_common.h" | ||||
|  | ||||
| // Alt gr | ||||
| #define ALGR(kc) kc | 0x1400 | ||||
| #define FR_CH_ALGR KC_RALT | ||||
|  | ||||
| // normal characters | ||||
| #define FR_CH_Z KC_Y | ||||
| #define FR_CH_Y KC_Z | ||||
|  | ||||
| #define FR_CH_A KC_A | ||||
| #define FR_CH_B KC_B | ||||
| #define FR_CH_C KC_C | ||||
| #define FR_CH_D KC_D | ||||
| #define FR_CH_E KC_E | ||||
| #define FR_CH_F KC_F | ||||
| #define FR_CH_G KC_G | ||||
| #define FR_CH_H KC_H | ||||
| #define FR_CH_I KC_I | ||||
| #define FR_CH_J KC_J | ||||
| #define FR_CH_K KC_K | ||||
| #define FR_CH_L KC_L | ||||
| #define FR_CH_M KC_M | ||||
| #define FR_CH_N KC_N | ||||
| #define FR_CH_O KC_O | ||||
| #define FR_CH_P KC_P | ||||
| #define FR_CH_Q KC_Q | ||||
| #define FR_CH_R KC_R | ||||
| #define FR_CH_S KC_S | ||||
| #define FR_CH_T KC_T | ||||
| #define FR_CH_U KC_U | ||||
| #define FR_CH_V KC_V | ||||
| #define FR_CH_W KC_W | ||||
| #define FR_CH_X KC_X | ||||
|  | ||||
| #define FR_CH_0 KC_0 | ||||
| #define FR_CH_1 KC_1 | ||||
| #define FR_CH_2 KC_2 | ||||
| #define FR_CH_3 KC_3 | ||||
| #define FR_CH_4 KC_4 | ||||
| #define FR_CH_5 KC_5 | ||||
| #define FR_CH_6 KC_6 | ||||
| #define FR_CH_7 KC_7 | ||||
| #define FR_CH_8 KC_8 | ||||
| #define FR_CH_9 KC_9 | ||||
|  | ||||
| #define FR_CH_DOT KC_DOT | ||||
| #define FR_CH_COMM KC_COMM | ||||
|  | ||||
| #define FR_CH_QUOT KC_MINS | ||||
| #define FR_CH_AE KC_QUOT | ||||
| #define FR_CH_UE KC_LBRC | ||||
| #define FR_CH_OE KC_SCLN | ||||
|  | ||||
| #define FR_CH_CIRC KC_EQL // accent circumflex ^ and grave ` and ~ | ||||
| #define FR_CH_LESS KC_NUBS // < and > and backslash | ||||
| #define FR_CH_MINS KC_SLSH // - and _ | ||||
| #define FR_CH_DLR KC_BSLS // $, £ and } | ||||
| #define FR_CH_PARA KC_GRV // § and ring ° | ||||
| #define FR_CH_DIAE KC_RBRC // accent ¨ | ||||
|  | ||||
| // shifted characters | ||||
| #define FR_CH_RING LSFT(KC_GRV) // ° | ||||
| #define FR_CH_EXLM LSFT(KC_RBRC) // ! | ||||
| #define FR_CH_PLUS LSFT(KC_1) // + | ||||
| #define FR_CH_DQOT LSFT(KC_2) // " | ||||
| #define FR_CH_ASTR LSFT(KC_3) // * | ||||
| #define FR_CH_PERC LSFT(KC_5) // % | ||||
| #define FR_CH_AMPR LSFT(KC_6) // & | ||||
| #define FR_CH_SLSH LSFT(KC_7) // / | ||||
| #define FR_CH_LPRN LSFT(KC_8) // ( | ||||
| #define FR_CH_RPRN LSFT(KC_9) // ) | ||||
| #define FR_CH_EQL  LSFT(KC_0) // = | ||||
| #define FR_CH_QST  LSFT(FR_CH_QUOT) // ? | ||||
| #define FR_CH_MORE LSFT(FR_CH_LESS) // > | ||||
| #define FR_CH_COLN LSFT(KC_DOT) // : | ||||
| #define FR_CH_SCLN LSFT(KC_COMM) // ; | ||||
| #define FR_CH_UNDS LSFT(FR_CH_MINS) // _ | ||||
| #define FR_CH_CCED LSFT(KC_4) // ç | ||||
| #define FR_CH_GRV  LSFT(FR_CH_CIRC) // accent grave ` | ||||
|  | ||||
| // Alt Gr-ed characters | ||||
| #define FR_CH_LCBR ALGR(KC_QUOT) // { | ||||
| #define FR_CH_LBRC ALGR(KC_LBRC) // [ | ||||
| #define FR_CH_RBRC ALGR(KC_9) // ] | ||||
| #define FR_CH_RCBR ALGR(KC_0) // } | ||||
| #define FR_CH_BSLS ALGR(FR_CH_LESS) // backslash | ||||
| #define FR_CH_AT   ALGR(KC_2) // @ | ||||
| #define FR_CH_EURO ALGR(KC_E) // € | ||||
| #define FR_CH_TILD ALGR(FR_CH_CIRC) // ~ | ||||
| #define FR_CH_PIPE ALGR(KC_1) // | | ||||
| #define FR_CH_HASH ALGR(KC_3) // # | ||||
| #define FR_CH_ACUT ALGR(FR_CH_QUOT) // accent acute ´ | ||||
|  | ||||
| #endif | ||||
		Reference in New Issue
	
	Block a user