forked from mfulz_github/qmk_firmware
		
	[Keymap] farmergreg's kint41 Kinesis Advantage 2 Layout (#16784)
This commit is contained in:
		
							parent
							
								
									46644b0a64
								
							
						
					
					
						commit
						701db278e4
					
				
							
								
								
									
										233
									
								
								keyboards/kinesis/keymaps/farmergreg/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										233
									
								
								keyboards/kinesis/keymaps/farmergreg/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,233 @@ | ||||
| /*
 | ||||
|  * Copyright 2022 Gregory L. Dietsche <gregory.dietsche@cuw.edu> | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
|  * it under the terms of the GNU General Public License as published by | ||||
|  * the Free Software Foundation, either version 2 of the License, or | ||||
|  * (at your option) any later version. | ||||
|  * | ||||
|  * This program is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  * GNU General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License | ||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||
|  * | ||||
|  * To build this layout run: | ||||
|  * qmk compile -kb kinesis/kint41 -km farmergreg | ||||
|  * | ||||
|  * Layout Details: | ||||
|  * PROGM + F9 to RESET and load new firmware. | ||||
|  * Colemak (default / PROGM+C), Dvorak (PROGM + F4) and QWERTY (PROGM+F3) layouts are available for use | ||||
|  * CAPS LOCK is ESC (for use in VIM). Double tap to activate CAPS Lock | ||||
|  * UP and DOWN arrows are swapped to be more like VIM | ||||
|  * [] and {} are swapped to make programming easier | ||||
|  */ | ||||
| 
 | ||||
| #include QMK_KEYBOARD_H | ||||
| 
 | ||||
| 
 | ||||
| enum { | ||||
| 	_COLEMAK, | ||||
| 	_DVORAK, | ||||
| 	_QWERTY, | ||||
| 	_QWERTY_GAME, | ||||
| 	_KEYPAD, | ||||
| 	_PROGM, | ||||
| 	_LAYER_COUNT, | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * Tap Dances | ||||
|  */ | ||||
| enum tap_dances { | ||||
| 	TD_CAPS,	// ESC on tap, CAPS on double tap
 | ||||
| }; | ||||
| 
 | ||||
| qk_tap_dance_action_t tap_dance_actions[] = { | ||||
|     [TD_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CAPS), | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * Key Overrides | ||||
|  */ | ||||
| const key_override_t lcurlytobracket = ko_make_basic(MOD_MASK_SHIFT, KC_LEFT_BRACKET, KC_LEFT_BRACKET); | ||||
| const key_override_t rcurlytobracket = ko_make_basic(MOD_MASK_SHIFT, KC_RIGHT_BRACKET, KC_RIGHT_BRACKET); | ||||
| const key_override_t lbrackettocurly = ko_make_basic(0, KC_LEFT_BRACKET, KC_LEFT_CURLY_BRACE); | ||||
| const key_override_t rbrackettocurly = ko_make_basic(0, KC_RIGHT_BRACKET, KC_RIGHT_CURLY_BRACE); | ||||
| 
 | ||||
| const key_override_t **key_overrides = (const key_override_t *[]){ | ||||
| 	&lcurlytobracket, | ||||
| 	&rcurlytobracket, | ||||
| 	&lbrackettocurly, | ||||
| 	&rbrackettocurly, | ||||
| 	NULL | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * Key Maps | ||||
|  */ | ||||
| const uint16_t PROGMEM keymaps[_LAYER_COUNT][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| [_COLEMAK] = LAYOUT( | ||||
| 	KC_ESC     , KC_F1 ,KC_F2  ,KC_F3  ,KC_F4  ,KC_F5  ,KC_F6  ,KC_F7  ,KC_F8, | ||||
| 	KC_EQL     , KC_1  ,KC_2   ,KC_3   ,KC_4   ,KC_5   , | ||||
| 	KC_TAB     , KC_Q  ,KC_W   ,KC_F   ,KC_P   ,KC_G   , | ||||
| 	TD(TD_CAPS), KC_A  ,KC_R   ,KC_S   ,KC_T   ,KC_D   , | ||||
| 	KC_LSFT    ,KC_Z   ,KC_X   ,KC_C   ,KC_V   ,KC_B   , | ||||
| 		    KC_GRV ,KC_BSLS,KC_LEFT,KC_RGHT, | ||||
| 
 | ||||
| 			KC_LCTL,KC_LALT, | ||||
| 				KC_HOME, | ||||
| 			KC_BSPC,KC_DEL ,KC_END, | ||||
| 
 | ||||
| 	KC_F9  ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK  ,KC_PAUS, TG(_KEYPAD), MO(_PROGM),	// I would prefer OSL(_PROGM) but MO emulates what Kinesis does in their firmware.
 | ||||
| 	KC_6   ,KC_7   ,KC_8   ,KC_9   ,KC_0   ,KC_MINS, | ||||
| 	KC_J   ,KC_L   ,KC_U   ,KC_Y   ,KC_SCLN,KC_BSLS, | ||||
| 	KC_H   ,KC_N   ,KC_E   ,KC_I   ,KC_O   ,KC_QUOT, | ||||
| 	KC_K   ,KC_M   ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT, | ||||
| 		KC_DOWN,KC_UP  ,KC_LBRC,KC_RBRC, | ||||
| 
 | ||||
| 			KC_RGUI,KC_RCTL, | ||||
| 				KC_PGUP, | ||||
| 			KC_PGDN,KC_ENT ,KC_SPC | ||||
| 	) | ||||
| ,[_DVORAK] = LAYOUT( | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,KC_QUOT,KC_COMM,KC_DOT ,KC_P   ,KC_Y   , | ||||
| 	_______,KC_A   ,KC_O   ,KC_E   ,KC_U   ,KC_I   , | ||||
| 	_______,KC_SCLN,KC_Q   ,KC_J   ,KC_K   ,KC_X   , | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______, | ||||
| 
 | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______, _______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	KC_F   ,KC_G   ,KC_C   ,KC_R   ,KC_L   ,KC_SLSH, | ||||
| 	KC_D   ,KC_H   ,KC_T   ,KC_N   ,KC_S   ,KC_QUOT, | ||||
| 	KC_B   ,KC_M   ,KC_W   ,KC_V   ,KC_Z   ,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______ | ||||
| 	) | ||||
| ,[_QWERTY] = LAYOUT( | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,KC_Q  ,KC_W   ,KC_E   ,KC_R   ,KC_T   , | ||||
| 	_______,KC_A  ,KC_S   ,KC_D   ,KC_F   ,KC_G   , | ||||
| 	_______,KC_Z  ,KC_X   ,KC_C   ,KC_V   ,KC_B   , | ||||
| 		    _______,_______,_______,_______, | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______, | ||||
| 
 | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	KC_Y   ,KC_U   ,KC_I   ,KC_O   ,KC_P   ,_______, | ||||
| 	KC_H   ,KC_J   ,KC_K   ,KC_L   ,KC_SCLN,_______, | ||||
| 	KC_N   ,KC_M   ,_______,_______,_______,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______ | ||||
| 	) | ||||
| ,[_QWERTY_GAME] = LAYOUT( // Shift WASD over to ESDF (QWERTY). Also move T and G
 | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,KC_T   ,KC_Q   , KC_W  ,KC_E   ,KC_R   , | ||||
| 	_______,KC_G   ,KC_A   , KC_S  ,KC_D   ,KC_F   , | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			KC_SPC ,_______,_______, // BACKSPACE becomes SPACE
 | ||||
| 
 | ||||
| 	_______,_______,_______,_______,_______,_______,_______, _______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,KC_BSPC // SPACE becomes BACKSPACE
 | ||||
| 	) | ||||
| ,[_KEYPAD] = LAYOUT( | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 		_______,KC_INS ,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______, | ||||
| 
 | ||||
| 	_______,_______,_______ ,_______,KC_MUTE,KC_VOLD,KC_VOLU,TG(_KEYPAD), _______, | ||||
| 	_______,KC_NUM  ,KC_PEQL,KC_PSLS,KC_PAST,_______, | ||||
| 	_______,KC_P7   ,KC_P8  ,KC_P9  ,KC_PMNS,_______, | ||||
| 	_______,KC_P4   ,KC_P5  ,KC_P6  ,KC_PPLS,_______, | ||||
| 	_______,KC_P1   ,KC_P2  ,KC_P3  ,KC_PENT,_______, | ||||
| 		_______,_______ ,KC_PDOT,KC_PENT, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,KC_P0 | ||||
| 	) | ||||
| 	,[_PROGM] = LAYOUT( | ||||
| 	_______,_______,_______,DF(_QWERTY),DF(_DVORAK),_______         ,_______,_______,_______, | ||||
| 	_______,_______,_______,_______     ,_______    ,_______         , | ||||
| 	_______,_______,_______,_______     ,_______    ,DF(_QWERTY_GAME),	// The G in Colemak
 | ||||
| 	_______,_______,_______,_______     ,_______    ,DF(_QWERTY_GAME),	// The G in QWERTY
 | ||||
| 	_______,_______,_______,DF(_COLEMAK),_______    ,_______, | ||||
| 		_______,_______,_______     ,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______, | ||||
| 
 | ||||
| 	RESET  ,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______ | ||||
| 	) | ||||
| /*
 | ||||
| 	,[_TEMPLATE] = LAYOUT( | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______, | ||||
| 
 | ||||
| 	_______,_______,_______,_______,_______,_______,_______,_______, _______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 	_______,_______,_______,_______,_______,_______, | ||||
| 		_______,_______,_______,_______, | ||||
| 
 | ||||
| 			_______,_______, | ||||
| 				_______, | ||||
| 			_______,_______,_______ | ||||
| 	) | ||||
| */ | ||||
| }; | ||||
							
								
								
									
										1
									
								
								keyboards/kinesis/keymaps/farmergreg/readme.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keyboards/kinesis/keymaps/farmergreg/readme.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| [farmergreg](https://github.com/farmergreg)'s kinesis advantage 2 kint41 layout | ||||
							
								
								
									
										5
									
								
								keyboards/kinesis/keymaps/farmergreg/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								keyboards/kinesis/keymaps/farmergreg/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | ||||
| BOOTMAGIC_ENABLE = no | ||||
| COMMAND_ENABLE = yes | ||||
| NKRO_ENABLE = yes | ||||
| KEY_OVERRIDE_ENABLE = yes | ||||
| TAP_DANCE_ENABLE = yes | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Greg Dietsche
						Greg Dietsche