[Keymap] Added Deft layout (#6153)
	
		
	
				
					
				
			* Added Deft layout * Updated style and keymap * Updated readme, removed files * Updated readme and keymap * Updated readme * Fixed broken keymap * Fixed a typo in keymap and readme layer images * Fixed a typo in readme * Embedded layout image for readme * Embedded layout image for readme * Embedded layout image for readme * Fixed typos in keymap Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fixed typo in keymap Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fixed typo in keymap Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Fixed a spelling error in the readme * Typos and formatting in readme Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> Co-Authored-By: fauxpark <fauxpark@gmail.com>pull/6171/head
							parent
							
								
									9639f44f48
								
							
						
					
					
						commit
						db0c179552
					
				| @ -0,0 +1,39 @@ | ||||
| #pragma once | ||||
| 
 | ||||
| #ifdef AUDIO_ENABLE | ||||
|     #define STARTUP_SONG SONG(PLANCK_SOUND) | ||||
|     // #define STARTUP_SONG SONG(NO_SOUND)
 | ||||
| 
 | ||||
|     #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ | ||||
|                                   SONG(COLEMAK_SOUND), \ | ||||
|                                   SONG(DVORAK_SOUND) \ | ||||
|                                 } | ||||
| #endif | ||||
| 
 | ||||
| /*
 | ||||
|  * MIDI options | ||||
|  */ | ||||
| 
 | ||||
| /* Prevent use of disabled MIDI features in the keymap */ | ||||
| //#define MIDI_ENABLE_STRICT 1
 | ||||
| 
 | ||||
| /* enable basic MIDI features:
 | ||||
|    - MIDI notes can be sent when in Music mode is on | ||||
| */ | ||||
| 
 | ||||
| #define MIDI_BASIC | ||||
| 
 | ||||
| /* enable advanced MIDI features:
 | ||||
|    - MIDI notes can be added to the keymap | ||||
|    - Octave shift and transpose | ||||
|    - Virtual sustain, portamento, and modulation wheel | ||||
|    - etc. | ||||
| */ | ||||
| //#define MIDI_ADVANCED
 | ||||
| 
 | ||||
| /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ | ||||
| //#define MIDI_TONE_KEYCODE_OCTAVES 2
 | ||||
| 
 | ||||
| // Most tactile encoders have detents every 4 stages
 | ||||
| #define ENCODER_RESOLUTION 4 | ||||
| 
 | ||||
| @ -0,0 +1,141 @@ | ||||
| [ | ||||
|   { | ||||
|     "backcolor": "#ffffff", | ||||
|     "name": "Deft Plank", | ||||
|     "author": "Michael Speiserß", | ||||
|     "switchMount": "cherry", | ||||
|     "switchBrand": "gateron", | ||||
|     "switchType": "KS-3-Tea", | ||||
|     "plate": true, | ||||
|     "pcb": true | ||||
|   }, | ||||
|   [ | ||||
|     { | ||||
|       "c": "#ba0000", | ||||
|       "sb": "gateron", | ||||
|       "st": "KS-3-Tea", | ||||
|       "a": 5 | ||||
|     }, | ||||
|     "\nDel\n\n\n\n\nEsc", | ||||
|     { | ||||
|       "c": "#cccccc", | ||||
|       "a": 4 | ||||
|     }, | ||||
|     "\n\n!\n\n\n\n\n\n1\nQ\nAlt 1", | ||||
|     "\n\n@\n\n\n\n\n\n2\nW\nAlt 2", | ||||
|     "\n\n#\n\n\n\n\n\n3\nE\nAlt 3", | ||||
|     "\n\n$\n\n\n\n\n\n4\nR\nAlt 4", | ||||
|     "\n\n%\n\n\n\n\n\n5\nT\n(", | ||||
|     "\n\n^\n\n\n\n\n\n6\nY\n)", | ||||
|     "\n\n&\n\n\n\n\n\n7\nU\nNum 7", | ||||
|     "\n\n*\n\n\n\n\n\n8\nI\nNum 8", | ||||
|     "\n\n(\n\n\n\n\n\n9\nO\nNum 9", | ||||
|     "\n\n)\n\n\n\n\n\n0\nP\nNum 0", | ||||
|     { | ||||
|       "c": "#ba0000", | ||||
|       "a": 7 | ||||
|     }, | ||||
|     "Bksp" | ||||
|   ], | ||||
|   [ | ||||
|     { | ||||
|       "c": "#365eff" | ||||
|     }, | ||||
|     "Tab", | ||||
|     { | ||||
|       "c": "#cccccc", | ||||
|       "a": 4 | ||||
|     }, | ||||
|     "\n\n\n~\n\n\n\n\nF1\nA\n`", | ||||
|     "\n\n\n|\n\n\n\n\nF2\nS\n\\", | ||||
|     "\n\n\n+\n\n\n\n\nF3\nD\n=", | ||||
|     { | ||||
|       "n": true | ||||
|     }, | ||||
|     "\n\n\n_\n\n\n\n\nF4\nF\n-", | ||||
|     { | ||||
|       "a": 5 | ||||
|     }, | ||||
|     "F5\n<\n\n\n\n\nG", | ||||
|     "F6\n>\n\n\n\n\nH", | ||||
|     { | ||||
|       "n": true | ||||
|     }, | ||||
|     "F7\nNum 4\n\n\n\n\nJ", | ||||
|     "F8\nNum 5\n\n\n\n\nK", | ||||
|     "F9\nNum 6\n\n\n\n\nL", | ||||
|     { | ||||
|       "a": 4 | ||||
|     }, | ||||
|     "\n\n\n\n\n\n\n:\nF10\n;\nNum .", | ||||
|     "\n\n\n\n\n\n\n\"\n\n'\nNumLk" | ||||
|   ], | ||||
|   [ | ||||
|     { | ||||
|       "c": "#365eff", | ||||
|       "a": 7 | ||||
|     }, | ||||
|     "Shift", | ||||
|     { | ||||
|       "c": "#cccccc", | ||||
|       "a": 5 | ||||
|     }, | ||||
|     "F11\nNum /\n\n\n\n\nZ", | ||||
|     "F12\nNum *\n\n\n\n\nX", | ||||
|     "F13\nNum -\n\n\n\n\nC", | ||||
|     "F14\nNum +\n\n\n\n\nV", | ||||
|     "F15\n[\n\n\n\n\nB", | ||||
|     "F16\n]\n\n\n\n\nN", | ||||
|     "F17\nNum 1\n\n\n\n\nM", | ||||
|     { | ||||
|       "a": 4 | ||||
|     }, | ||||
|     "\n\n\n\n\n\n\n<\nF18\n,\nNum 2", | ||||
|     "\n\n\n\n\n\n\n>\nF19\n.\nNum 3", | ||||
|     { | ||||
|       "c": "#365eff", | ||||
|       "a": 5 | ||||
|     }, | ||||
|     "Vol+\nPgup\n\n\n\n\n↑", | ||||
|     { | ||||
|       "c": "#cccccc", | ||||
|       "a": 4 | ||||
|     }, | ||||
|     "\n\n\n\n\n\n\n?\n\n/\nNum =" | ||||
|   ], | ||||
|   [ | ||||
|     { | ||||
|       "c": "#365eff", | ||||
|       "a": 7 | ||||
|     }, | ||||
|     "Ctrl", | ||||
|     { | ||||
|       "a": 5 | ||||
|     }, | ||||
|     "\nOption\n\n\n\n\nAlt", | ||||
|     "\n⌘\n\n\n\n\nWin", | ||||
|     "Cut\nPaste\n\n\n\n\nCopy", | ||||
|     { | ||||
|       "c": "#3f8f00", | ||||
|       "a": 7 | ||||
|     }, | ||||
|     "Lower", | ||||
|     { | ||||
|       "c": "#cccccc", | ||||
|       "w": 2 | ||||
|     }, | ||||
|     "", | ||||
|     { | ||||
|       "c": "#3f8f00" | ||||
|     }, | ||||
|     "Raise", | ||||
|     { | ||||
|       "c": "#365eff", | ||||
|       "a": 5 | ||||
|     }, | ||||
|     "\nNumE\n\n\n\n\nReturn", | ||||
|     "Play\nHome\n\n\n\n\n←", | ||||
|     "Vol -\nPgdn\n\n\n\n\n↓", | ||||
|     "Next\nEnd\n\n\n\n\n→" | ||||
|   ] | ||||
| ] | ||||
| @ -0,0 +1,138 @@ | ||||
| /*
 | ||||
|  * The Deft layout for the Planck Keyboard | ||||
|  * Version 1.0 | ||||
|  * | ||||
|  * A keyboard layout designed for efficiency in programming and transferability between ortholinear boards. | ||||
|  * Deft is currently supported on the following boards: | ||||
|  * Planck (12x4) | ||||
|  * | ||||
|  * The Deft keyboard layout was designed by Michael Speiser. You can find other Deft layouts at my Github: | ||||
|  * https://github.com/Speiserm
 | ||||
|  * | ||||
|  * For questions, issues, or feedback, feel free to email me at Speiserm@pm.me. | ||||
|  * | ||||
|  * | ||||
|  * Flashing: | ||||
|  * | ||||
|  * Rev 5 or earlier: | ||||
|  * make planck/revX:deft:dfu | ||||
|  * | ||||
|  * Rev 6: | ||||
|  * make planck/rev6:deft:dfu-util | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * | ||||
|  * Follow my cat: | ||||
|  * https://twitter.com/CatBucha
 | ||||
|  * https://www.instagram.com/buchathecat/
 | ||||
|  * | ||||
|  */ | ||||
| 
 | ||||
| #include QMK_KEYBOARD_H | ||||
| 
 | ||||
| extern keymap_config_t keymap_config; | ||||
| 
 | ||||
| enum planck_layers { | ||||
|   _QWERTY, | ||||
|   _LOWER, | ||||
|   _RAISE, | ||||
|   _ADJUST | ||||
| }; | ||||
| 
 | ||||
| enum planck_keycodes { | ||||
|   QWERTY = SAFE_RANGE | ||||
| }; | ||||
| 
 | ||||
| #define LOWER MO(_LOWER) | ||||
| #define RAISE MO(_RAISE) | ||||
| 
 | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| 
 | ||||
| /* Qwerty
 | ||||
|  * ,-----------------------------------------------------------------------------------. | ||||
|  * | Esc  |  Q   |   W  |   E  |   R  |   T  |   Y  |   U  |   I  |   O  |   P  | Bksp | | ||||
|  * |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
|  * | Tab  |  A   |   S  |   D  |   F  |   G  |   H  |   J  |   K  |   L  |   ;  |  '   | | ||||
|  * |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
|  * |Shift |  Z   |   X  |   C  |   V  |   B  |   N  |   M  |   ,  |   .  |  Up  |  /   | | ||||
|  * |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
|  * | Ctrl | Alt  | GUI  | Copy |Lower |    Space    |Raise |Enter | Left | Down |Right | | ||||
|  * `-----------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_QWERTY] = LAYOUT_planck_grid( | ||||
|      KC_ESC,    KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    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_QUOT, | ||||
|     KC_LSFT,    KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_UP,   KC_SLSH, | ||||
|     KC_LCTL, KC_LALT, KC_LGUI, C(KC_C),   LOWER,  KC_SPC,  KC_SPC,   RAISE,   KC_ENT, KC_LEFT, KC_DOWN,   KC_RGHT | ||||
| ), | ||||
| 
 | ||||
| /* Lower
 | ||||
|  * ,-----------------------------------------------------------------------------------. | ||||
|  * | Del  | Alt1 | Alt2 | Alt3 | Alt4 |  (   |  )   | Num7 | Num8 | Num9 | Num0 |      | | ||||
|  * |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
|  * |      |  `   |  \   |  =   |  -   |  <   |  >   | Num4 | Num5 | Num6 | Num. | NumL | | ||||
|  * |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
|  * |      | Num/ | Num* | Num- | Num+ |  [   |  ]   | Num1 | Num2 | Num3 | Pgup | Num= | | ||||
|  * |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
|  * |      |      |      |Paste |      |             |      | NumE | Home | Pgdn | End  | | ||||
|  * `-----------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_LOWER] = LAYOUT_planck_grid( | ||||
|      KC_DEL, A(KC_1), A(KC_2), A(KC_3), A(KC_4), S(KC_9), S(KC_0),   KC_P7,   KC_P8,   KC_P9,   KC_P0, _______, | ||||
|     _______,  KC_GRV,KC_BSLS,KC_EQL, KC_MINS,S(KC_COMM),S(KC_DOT),   KC_P4,   KC_P5,   KC_P6, KC_PDOT, KC_NLCK, | ||||
|     _______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_LBRC, KC_RBRC,   KC_P1,   KC_P2,   KC_P3, KC_PGUP, KC_PEQL, | ||||
|     _______, _______, _______, C(KC_V), _______, _______, _______, _______, KC_PENT, KC_HOME,KC_PGDOWN, KC_END | ||||
| ), | ||||
| 
 | ||||
| /* Raise
 | ||||
|  * ,-----------------------------------------------------------------------------------. | ||||
|  * |      |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  |      | | ||||
|  * |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
|  * |      |  F1  |  F2  |  F3  |  F4  |  F5  |  F6  |  F7  |  F8  |  F9  | F10  |      | | ||||
|  * |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
|  * |      | F11  | F12  | F13  | F14  | F15  | F16  | F17  | F18  | F19  | Vol+ |      | | ||||
|  * |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
|  * |      |      |      | Cut  |      |             |      |      | Play | Vol- | Next | | ||||
|  * `-----------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_RAISE] = LAYOUT_planck_grid( | ||||
|     _______,    KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0, _______, | ||||
|     _______,   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_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19, KC_VOLU, _______, | ||||
|     _______, _______, _______, C(KC_X), _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_MNXT | ||||
| ), | ||||
| 
 | ||||
| /* Adjust (Lower + Raise)
 | ||||
|  * ,-----------------------------------------------------------------------------------. | ||||
|  * |Reset |      |      |      |      |      |      |      |      |      |      |      | | ||||
|  * |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
|  * |      |      |      |      |      |      |      |      |      |      |      |      | | ||||
|  * |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
|  * |      |      |      |      |      |      |      |      |      |      |      |      | | ||||
|  * |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
|  * |      |      |      |      |      |             |      |      |      |      |      | | ||||
|  * `-----------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_ADJUST] = LAYOUT_planck_grid( | ||||
|       RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||||
|     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||||
|     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||||
|     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||||
| ) | ||||
| 
 | ||||
| }; | ||||
| 
 | ||||
| uint32_t layer_state_set_user(uint32_t state) { | ||||
|   return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); | ||||
| } | ||||
| @ -0,0 +1,73 @@ | ||||
| # The Deft Planck Layout | ||||
| 
 | ||||
|  | ||||
| 
 | ||||
| The Deft Planck layout is designed for efficiency in programming and transferability between ortholinear boards. It features a fairly standard default layer with properly placed arrow keys, a lower layer with a usable numpad and symbols, and a raise layer for numbers, f-keys, and music controls. The code is also cut down to only what you need. The result is a very usable Planck that can easily replace fullsize layouts. | ||||
| 
 | ||||
| The strangely placed Enter key is meant to be closer to your thumb and moving it allows for proper arrow key placement without disturbing our layout too much. I wanted to separate the enter key from the forward slash key anyway, as I was commonly pressing enter when I meant to type a question mark. You get used to it pretty fast. | ||||
| 
 | ||||
| Follow my cat: | ||||
| 
 | ||||
| https://twitter.com/CatBucha | ||||
| 
 | ||||
| https://www.instagram.com/buchathecat/ | ||||
| 
 | ||||
| 
 | ||||
| ## Flashing: | ||||
| | Rev 5 or earlier: | Rev 6: | | ||||
| |-|-| | ||||
| | `make planck/revX:deft:dfu` | `make planck/rev6:deft:dfu-util` | | ||||
| 
 | ||||
| ## Layout: | ||||
| 
 | ||||
| ### QWERTY layer | ||||
| ``` | ||||
| ,-----------------------------------------------------------------------------------. | ||||
| | Esc  |  Q   |   W  |   E  |   R  |   T  |   Y  |   U  |   I  |   O  |   P  | Bksp | | ||||
| |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
| | Tab  |  A   |   S  |   D  |   F  |   G  |   H  |   J  |   K  |   L  |   ;  |  '   | | ||||
| |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
| |Shift |  Z   |   X  |   C  |   V  |   B  |   N  |   M  |   ,  |   .  |  Up  |  /   | | ||||
| |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
| | Ctrl | Alt  | GUI  | Copy |Lower |    Space    |Raise |Enter | Left | Down |Right | | ||||
| `-----------------------------------------------------------------------------------' | ||||
| ``` | ||||
| 
 | ||||
| ### Lower layer | ||||
| ``` | ||||
| ,-----------------------------------------------------------------------------------. | ||||
| | Del  | Alt1 | Alt2 | Alt3 | Alt4 |  (   |  )   | Num7 | Num8 | Num9 | Num0 |      | | ||||
| |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
| |      |  `   |  \   |  =   |  -   |  <   |  >   | Num4 | Num5 | Num6 | Num. | NumL | | ||||
| |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
| |      | Num/ | Num* | Num- | Num+ |  [   |  ]   | Num1 | Num2 | Num3 | Pgup | Num= | | ||||
| |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
| |      |      |      |Paste |      |             |      | NumE | Home | Pgdn | End  | | ||||
| `-----------------------------------------------------------------------------------' | ||||
| ``` | ||||
| 
 | ||||
| ### Raise layer | ||||
| ``` | ||||
| ,-----------------------------------------------------------------------------------. | ||||
| |      |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  |      | | ||||
| |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
| |      |  F1  |  F2  |  F3  |  F4  |  F5  |  F6  |  F7  |  F8  |  F9  | F10  |      | | ||||
| |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
| |      | F11  | F12  | F13  | F14  | F15  | F16  | F17  | F18  | F19  | Vol+ |      | | ||||
| |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
| |      |      |      | Cut  |      |             |      |      | Play | Vol- | Next | | ||||
| `-----------------------------------------------------------------------------------' | ||||
| ``` | ||||
| 
 | ||||
| ### Adjust layer | ||||
| ``` | ||||
| ,-----------------------------------------------------------------------------------. | ||||
| |Reset |      |      |      |      |      |      |      |      |      |      |      | | ||||
| |------+------+------+------+------+-------------+------+------+------+------+------| | ||||
| |      |      |      |      |      |      |      |      |      |      |      |      | | ||||
| |------+------+------+------+------+------|------+------+------+------+------+------| | ||||
| |      |      |      |      |      |      |      |      |      |      |      |      | | ||||
| |------+------+------+------+------+------+------+------+------+------+------+------| | ||||
| |      |      |      |      |      |             |      |      |      |      |      | | ||||
| `-----------------------------------------------------------------------------------' | ||||
| ``` | ||||
| @ -0,0 +1 @@ | ||||
| SRC += muse.c | ||||
					Loading…
					
					
				
		Reference in new issue
	
	 Michael Speiser
						Michael Speiser