diff options
author | lokher <lokher@gmail.com> | 2022-12-06 17:04:10 +0800 |
---|---|---|
committer | lokher <lokher@gmail.com> | 2022-12-06 17:04:10 +0800 |
commit | 27fc28fd2ff52e079a5bc58d6aaea4c752420615 (patch) | |
tree | 7ac943fb1ba4f430a7220efd18f66f6a77205c30 /keyboards/kinesis | |
parent | e736133392fe6427cfb995da0787337189828272 (diff) | |
parent | 2709b6ed616f8012ff4cfd3ee69a822a8d188351 (diff) |
Merge upstream master
Diffstat (limited to 'keyboards/kinesis')
-rw-r--r-- | keyboards/kinesis/keymaps/default/keymap.c | 53 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/default_pretty/keymap.c | 46 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/dvorak/keymap.c | 56 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/dvorak_nguyenvietyen/keymap.c | 30 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/ericgebhart/keymap.c | 18 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/ericgebhart/rules.mk | 15 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/farmergreg/keymap.c | 233 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/heatxsink/keymap.c | 228 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/insertsnideremarks/keymap.c | 477 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/jwon/keymap.c | 174 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/peott-fr/keymap.c | 28 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/stapelberg/keymap.c | 95 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/tuesdayjohn/keymap.c | 427 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/tw1t611/keymap.c | 64 | ||||
-rw-r--r-- | keyboards/kinesis/keymaps/xyverz/keymap.c | 237 | ||||
-rw-r--r-- | keyboards/kinesis/kint36/keymaps/kzar/keymap.c | 405 |
16 files changed, 2586 insertions, 0 deletions
diff --git a/keyboards/kinesis/keymaps/default/keymap.c b/keyboards/kinesis/keymaps/default/keymap.c new file mode 100644 index 0000000000..e0f114902c --- /dev/null +++ b/keyboards/kinesis/keymaps/default/keymap.c @@ -0,0 +1,53 @@ +#include QMK_KEYBOARD_H + +#define QWERTY 0 // Base qwerty + + +/**************************************************************************************************** +* +* Keymap: Default Layer in Qwerty +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | PSCR | SLCK | PAUS | FN0 | BOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Caps | A | S | D | F | G | | H | J | K | L | ;: | '" | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | `~ | INS | Left | Right| | Up | Down | [{ | ]} | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Ctrl | Alt | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Return| Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[QWERTY] = 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_E ,KC_R ,KC_T , + KC_CAPS,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , + KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , + KC_GRV ,KC_INS ,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_SCRL ,KC_PAUS, KC_NO, QK_BOOT, + KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, + KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, + KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, + KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT, + KC_UP ,KC_DOWN,KC_LBRC,KC_RBRC, + KC_RGUI,KC_RCTL, + KC_PGUP, + KC_PGDN,KC_ENTER ,KC_SPC + ) +}; diff --git a/keyboards/kinesis/keymaps/default_pretty/keymap.c b/keyboards/kinesis/keymaps/default_pretty/keymap.c new file mode 100644 index 0000000000..c790e08945 --- /dev/null +++ b/keyboards/kinesis/keymaps/default_pretty/keymap.c @@ -0,0 +1,46 @@ +#include QMK_KEYBOARD_H + +#define QWERTY 0 // Base qwerty + + +/**************************************************************************************************** +* +* Keymap: Default Layer in Qwerty +* +* ,-------------------------------------------------------------------------------------------------------------------. +* | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | PSCR | SLCK | PAUS | FN0 | BOOT | +* |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| +* | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Caps | A | S | D | F | G | | H | J | K | L | ;: | '" | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | `~ | INS | Left | Right| | Up | Down | [{ | ]} | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Ctrl | Alt | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* | BkSp | Del |------| |------|Return| Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [QWERTY] = LAYOUT_pretty( + KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, KC_NO, QK_BOOT, + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_CAPS, 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_RSFT, + KC_GRV, KC_INS, KC_LEFT, KC_RGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, + KC_LCTL, KC_LALT, KC_RGUI, KC_RCTL, + KC_HOME, KC_PGUP, + KC_BSPC, KC_DEL, KC_END, KC_PGDN, KC_ENTER, KC_SPC + ) + +}; diff --git a/keyboards/kinesis/keymaps/dvorak/keymap.c b/keyboards/kinesis/keymaps/dvorak/keymap.c new file mode 100644 index 0000000000..9ebb088cf7 --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak/keymap.c @@ -0,0 +1,56 @@ +#include QMK_KEYBOARD_H + +#define _DVORAK 0 // Base Dvorak layer +#define _MEDIA 1 // Media layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_DVORAK] = LAYOUT( + // left hand + 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_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, + KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, + KC_GRV, KC_INS, KC_LEFT, KC_RIGHT, + // left thumb + KC_LCTL, KC_LALT, + KC_HOME, + KC_BSPC, KC_DEL, KC_END, + // right hand + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, KC_NO, QK_BOOT, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_BSLS, + KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, + // right thumb + KC_RGUI, KC_RCTL, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC + ), + +[_MEDIA] = LAYOUT( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_BTN4, KC_BTN3, KC_BTN2, KC_BTN1, KC_NO, + KC_NO, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, + KC_NO, KC_NO, KC_MS_D, KC_MS_U, + // left thumb + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_TRNS, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PWR, + KC_NO, KC_VOLU, KC_MS_U, KC_VOLD, KC_NO, KC_NO, + KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, KC_NO, + KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, KC_NO, + KC_MS_L, KC_MS_R, KC_NO, KC_NO, + // right thumb + KC_NO, KC_NO, + KC_NO, + KC_TRNS, KC_ENT, KC_NO +) +}; diff --git a/keyboards/kinesis/keymaps/dvorak_nguyenvietyen/keymap.c b/keyboards/kinesis/keymaps/dvorak_nguyenvietyen/keymap.c new file mode 100644 index 0000000000..b6a4fa2d10 --- /dev/null +++ b/keyboards/kinesis/keymaps/dvorak_nguyenvietyen/keymap.c @@ -0,0 +1,30 @@ +#include QMK_KEYBOARD_H + +#define DVORAK_MAC_MODE 0 // Base Dvorak in Kinesis's Mac Mode with (Cmd, Option, Ctrl, Cmd) thumbkeys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[DVORAK_MAC_MODE] = LAYOUT( + // left hand + KC_CAPS, 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_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, + KC_GRV, KC_INS, KC_LEFT, KC_RIGHT, + // left thumb + KC_LGUI, KC_LALT, + KC_HOME, + KC_BSPC, KC_DEL, KC_END, + // right hand + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, KC_NUM, KC_PWR, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_BSLS, + KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, + // right thumb + KC_RCTL, KC_RGUI, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC + ) +}; diff --git a/keyboards/kinesis/keymaps/ericgebhart/keymap.c b/keyboards/kinesis/keymaps/ericgebhart/keymap.c new file mode 100644 index 0000000000..c534fe3c6d --- /dev/null +++ b/keyboards/kinesis/keymaps/ericgebhart/keymap.c @@ -0,0 +1,18 @@ +/* + Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com> + + 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/>. +*/ + +// See: users/ericgebhart. diff --git a/keyboards/kinesis/keymaps/ericgebhart/rules.mk b/keyboards/kinesis/keymaps/ericgebhart/rules.mk new file mode 100644 index 0000000000..dd62550343 --- /dev/null +++ b/keyboards/kinesis/keymaps/ericgebhart/rules.mk @@ -0,0 +1,15 @@ +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output +UNICODE_ENABLE = no # Unicode +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/kinesis/keymaps/farmergreg/keymap.c b/keyboards/kinesis/keymaps/farmergreg/keymap.c new file mode 100644 index 0000000000..393b7c074b --- /dev/null +++ b/keyboards/kinesis/keymaps/farmergreg/keymap.c @@ -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 QK_BOOT 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_SCRL ,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),_______ ,_______, + _______,_______,_______ ,_______, + + _______,_______, + _______, + _______,_______,_______, + + QK_BOOT,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + + _______,_______, + _______, + _______,_______,_______ + ) +/* + ,[_TEMPLATE] = LAYOUT( + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + + _______,_______, + _______, + _______,_______,_______, + + _______,_______,_______,_______,_______,_______,_______,_______, _______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + + _______,_______, + _______, + _______,_______,_______ + ) +*/ +}; diff --git a/keyboards/kinesis/keymaps/heatxsink/keymap.c b/keyboards/kinesis/keymaps/heatxsink/keymap.c new file mode 100644 index 0000000000..53b4b57cf5 --- /dev/null +++ b/keyboards/kinesis/keymaps/heatxsink/keymap.c @@ -0,0 +1,228 @@ +/* Copyright 2022 Nicholas Granado <ngranado@gmail.com> + * + * 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 layer_names { + _DEFAULT, + _QWERTY, + _COLEMAK_MOD_DH, + _WORKMAN, + _KEYPAD, + _LAYERS, +}; + +#define DEFAULT DF(_DEFAULT) +#define QWERTY TO(_QWERTY) +#define CMMDH TO(_COLEMAK_MOD_DH) +#define WM TO(_WORKMAN) +#define KEYPAD TO(_KEYPAD) +#define LAYERS OSL(_LAYERS) +#define HCTLESC CTL_T(KC_ESC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_DEFAULT] = LAYOUT( + // LHAND + 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 ,_______,_______,_______,_______,_______, + HCTLESC,_______,_______,_______,_______,_______, + SC_LSPO,_______,_______,_______,_______,_______, + KC_GRV ,LAYERS ,KC_LEFT,KC_RGHT, + // LTHUMB + KC_LALT,KC_LCTL, + KC_HOME, + KC_BSPC,KC_DEL ,KC_END , + // RHAND + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SCRL,KC_PAUS,KEYPAD ,QK_BOOT, + KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, + _______,_______,_______,_______,_______,KC_BSLS, + _______,_______,_______,_______,_______,KC_QUOT, + _______,_______,_______,_______,_______,SC_RSPC, + KC_UP ,KC_DOWN,KC_LBRC,KC_RBRC, + // RTHUMB + KC_RCTL,KC_LGUI, + KC_PGUP, + KC_PGDN,KC_ENT ,KC_SPC + ), + + [_QWERTY] = LAYOUT( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,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 , + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,_______, + KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,_______, + KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), + + [_COLEMAK_MOD_DH] = LAYOUT( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B, + _______,KC_A ,KC_R ,KC_S ,KC_T ,KC_G, + _______,KC_Z ,KC_X ,KC_C ,KC_D ,KC_V, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN,_______, + KC_M ,KC_N ,KC_E ,KC_I ,KC_O ,_______, + KC_K ,KC_H ,KC_COMM,KC_DOT ,KC_SLSH,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), + + [_WORKMAN] = LAYOUT( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,KC_Q ,KC_D ,KC_R ,KC_W ,KC_B, + _______,KC_A ,KC_S ,KC_H ,KC_T ,KC_G, + _______,KC_Z ,KC_X ,KC_M ,KC_C ,KC_V, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + KC_J ,KC_F ,KC_U ,KC_P ,KC_SCLN,_______, + KC_Y ,KC_N ,KC_E ,KC_O ,KC_I ,_______, + KC_K ,KC_L ,KC_COMM,KC_DOT ,KC_SLSH,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), + + [_KEYPAD] = LAYOUT ( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,KC_MUTE,KC_VOLD,KC_VOLU,_______, + _______,KC_MSTP,KC_MPRV,KC_MPLY,KC_MNXT,KC_MSEL, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,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_LPRN,KC_RPRN,KC_PDOT,KC_PENT, + // RTHUMB + _______,_______, + _______, + _______,KC_PENT,KC_P0 + ), + + [_LAYERS] = LAYOUT ( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,QWERTY ,CMMDH ,WM ,KEYPAD ,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + writePinHigh(LED_NUM_LOCK_PIN); + writePinHigh(LED_SCROLL_LOCK_PIN); + writePinHigh(LED_COMPOSE_PIN); + writePinHigh(LED_CAPS_LOCK_PIN); + switch (get_highest_layer(state)) { + case _QWERTY: + // Caps Lock Lit + writePinLow(LED_CAPS_LOCK_PIN); + break; + case _COLEMAK_MOD_DH: + // Num Lock Lit + writePinLow(LED_NUM_LOCK_PIN); + break; + case _WORKMAN: + // Scroll Lock Lit + writePinLow(LED_SCROLL_LOCK_PIN); + break; + case _KEYPAD: + // Compose Lit + writePinLow(LED_COMPOSE_PIN); + break; + case _LAYERS: + // All LEDs Lit + writePinLow(LED_SCROLL_LOCK_PIN); + writePinLow(LED_NUM_LOCK_PIN); + writePinLow(LED_CAPS_LOCK_PIN); + writePinLow(LED_COMPOSE_PIN); + break; + } + return state; +} + +bool led_update_user(led_t led_state) { + // disable led_update_kb() so that we do not override layer indicators + return false; +} + diff --git a/keyboards/kinesis/keymaps/insertsnideremarks/keymap.c b/keyboards/kinesis/keymaps/insertsnideremarks/keymap.c new file mode 100644 index 0000000000..0888f3f8cd --- /dev/null +++ b/keyboards/kinesis/keymaps/insertsnideremarks/keymap.c @@ -0,0 +1,477 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +enum kinesis_layers { + _COLEMAK, // Colemak (default layer) + _QWERTY, // Qwerty + _COLEMAKGM, // Colemak gaming/vanilla (limited dual-role keys with layer access) + _QWERTYGM, // QWERTY gaming/vanilla (limited dual-role keys with layer access) + _NUMBERS, // Numbers & Symbols + _NUMBERS2, // Numbers & Symbols 2 (identical as _NUMBERS; basically used for tri-layer access to _ADJUST) + _FUNCTION, // Function + _FUNCTION2, // Function 2 (identical as _FUNCTION; used to allow for easier use of space and backspace while using function layer arrows) + _NUMPAD, // Numpad + _ADJUST, // Adjust layer (accessed via tri-layer feature) + _ADJUST2 // Second Adjust layer (accessed outside of tri-layer feature) +}; + +enum kinesis_keycodes { + COLEMAK = SAFE_RANGE, + QWERTY, + COLEMAKGM, + QWERTYGM, + NUMPAD = TG(_NUMPAD), + ADJUST = MO(_ADJUST2), + SPCFN = LT(_FUNCTION, KC_SPC), + BSPCFN = LT(_FUNCTION2, KC_BSPC), + ENTNS = LT(_NUMBERS, KC_ENT), + DELNS = LT(_NUMBERS2, KC_DEL), + CTLESC = CTL_T(KC_ESC), + ALTAPP = ALT_T(KC_APP), + NKROTG = MAGIC_TOGGLE_NKRO +}; + +//Tap Dance Declarations +enum { + ADJ = 0, + LBCB, + RBCB, + EQPL, + PLEQ, + MNUN, + SLAS, + GVTL, + PPLEQ, + PMNUN, + PSLPAS +}; + +void dance_LAYER_finished(qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 2) { + layer_on(_ADJUST2); + set_oneshot_layer(_ADJUST2, ONESHOT_START); + } +} +void dance_LAYER_reset(qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 2) { + layer_off(_ADJUST2); + clear_oneshot_layer_state(ONESHOT_PRESSED); + } +} + +qk_tap_dance_action_t tap_dance_actions[] = { +[ADJ] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_LAYER_finished, dance_LAYER_reset), // Double-tap to activate Adjust layer via oneshot layer +[LBCB] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_LCBR), // Left bracket on a single-tap, left brace on a double-tap +[RBCB] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, KC_RCBR), // Right bracket on a single-tap, right brace on a double-tap |