forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Keymap] Add masoncowen planck keymap (qmk#14353)
Co-authored-by: Drashna Jael're <drashna@live.com>
- Loading branch information
1 parent
7ed34bb
commit 3076d3c
Showing
3 changed files
with
106 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
/* Copyright 2021 masoncowen | ||
* | ||
* 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/>. | ||
*/ | ||
|
||
#include QMK_KEYBOARD_H | ||
|
||
|
||
enum planck_layers { | ||
_ZWFP, | ||
_NUMNAV | ||
}; | ||
|
||
enum planck_keycodes { | ||
ZWFP = SAFE_RANGE, | ||
NUMNAV | ||
}; | ||
|
||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
[_ZWFP] = LAYOUT_planck_grid( | ||
KC_Z , KC_W , KC_F , KC_P , KC_Q , KC_NO , KC_NO , KC_J , KC_L , KC_U , KC_Y , OSL(_NUMNAV) , | ||
KC_A , KC_R , KC_S , KC_T , KC_G , KC_NO , KC_NO , KC_M , KC_N , KC_E , KC_I , KC_O , | ||
KC_X , KC_V , KC_C , KC_D , KC_B , KC_NO , KC_NO , KC_K , KC_H , KC_DOT , KC_COMM , KC_SCLN , | ||
KC_NO , KC_NO , KC_ESC , KC_SPC , OSM(MOD_LCTL) , KC_NO , KC_NO , KC_BSPC , OSM(MOD_LSFT) , OSM(MOD_LALT) , KC_NO , KC_NO | ||
), | ||
|
||
//TRANSPARENT keys are to be decided on | ||
[_NUMNAV] = LAYOUT_planck_grid( | ||
KC_PPLS , KC_4 , KC_5 , KC_6 , KC_PAST , KC_NO , KC_NO , KC_BSLS , KC_HOME , KC_PGDN , KC_PGUP , KC_END , | ||
KC_0 , KC_1 , KC_2 , KC_3 , KC_PENT , KC_NO , KC_NO , KC_NUHS , KC_LEFT , KC_DOWN , KC_UP , KC_RIGHT , | ||
KC_PMNS , KC_7 , KC_8 , KC_9 , KC_PSLS , KC_NO , KC_NO , KC_QUOT , , _______ , _______ , _______ , | ||
KC_NO , KC_NO , _______ , _______ , _______ , KC_NO , KC_NO , _______ , _______ , _______ , KC_NO , KC_NO | ||
) | ||
|
||
}; | ||
|
||
const key_override_t delete_key_override = ko_make_basic(MOD_MASK_SHIFT, KC_BSPC, KC_DEL); | ||
const key_override_t enter_key_override = ko_make_basic(MOD_MASK_SHIFT, KC_ESC, KC_ENTER); | ||
const key_override_t tab_key_override = ko_make_basic(MOD_MASK_SHIFT, KC_SPC, KC_TAB); | ||
|
||
const key_override_t **key_overrides = (const key_override_t *[]){ | ||
&delete_key_override, | ||
&enter_key_override, | ||
&tab_key_override, | ||
NULL | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# ZWFP Layout Notes | ||
## About | ||
|
||
ZWFP is a layout largely based on Colemak Mod-DH. | ||
The layout rotates the QZXVB keys for the following reasons: | ||
* XCV are brought together. | ||
* One design goal of colemak was to keep ZXCV close together as they are commonly uses control shortcuts. | ||
* Mod-dh moved D to where the V key was as that position was too ergonomic for an infrequent letter like V. | ||
* XCV benefit more from being together are Cut-Copy-Paste are more related than Undo (which Z commonly represents). | ||
* B is returned to its QWERTY position. | ||
* This was an unintentional benefit. | ||
* The original rotation of QZXV moved Q to a better position than B despite being was less frequent. | ||
* This is based off the grid on [the colemak mod-dh page](https://colemakmods.github.io/mod-dh/model.html). | ||
* This needs more testing, and may be reverted as despite the above mentioned grid, the current Q position feels easier than the current B position. | ||
* Based off [the layout analyser](https://colemakmods.github.io/mod-dh/analyze.html) its slightly better. | ||
* I like being different. | ||
|
||
## Todo | ||
* Work out punctuation locations. | ||
* Figure out what the thumb cluster is doing. | ||
* I've somewhat settled on left home-row (centre) thumb key is space and right is shift OSL. | ||
* Maybe a deadkey instead of using shift-/alt- key overrides? | ||
* [Repeat key](https://www.jonashietala.se/blog/2021/09/05/t-34-0/) | ||
* Move Home, End, PgDn and PgUp to a kc/ko/dk with the arrow keys. | ||
|
||
### Keys still to add | ||
* A reset key, cba with finding small pokey things to use at the back. | ||
* Shifted numbers \(not including $^\*\) | ||
* Dedicated Pipe | | ||
* Dedicated Underscore \(\_\) | ||
* Backslash \(\\\) and shifted \(Don't forget to use NOUS\) | ||
* Square brackets \(\[ \]\) and shifted | ||
* Dedicated question mark | ||
* Backtick (`) and shifted | ||
* Function keys 1-12 | ||
|
||
#### Obscure keys to add just for completeness | ||
* Normal Minus and Equals \(Don't know if they are needed or not \) | ||
* Function keys 13-24 | ||
* Capslock \(Not sure if multi-tapping OSL actually counts as a caps lock for shift\) | ||
* Numlock, Scrolllock and the Locking lock keys | ||
* Keypad characters | ||
* Command Keys in general | ||
* International Keys | ||
* Right Modifiers | ||
* Windows keys for either side |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
KEY_OVERRIDE_ENABLE = yes |