From f14629ed1cd7c7ec9089604d64f29a99981558e8 Mon Sep 17 00:00:00 2001 From: fauxpark Date: Tue, 16 Jul 2019 16:04:02 +1000 Subject: Remove/migrate action_get_macro()s from default keymaps (#5625) * Remove/migrate action_get_macro()s from default keymaps * Leave these breaks alone --- keyboards/lets_split/keymaps/OLED_sample/keymap.c | 34 ++++------------------- 1 file changed, 6 insertions(+), 28 deletions(-) (limited to 'keyboards/lets_split/keymaps') diff --git a/keyboards/lets_split/keymaps/OLED_sample/keymap.c b/keyboards/lets_split/keymaps/OLED_sample/keymap.c index 67a20971ce..0cf3503e43 100644 --- a/keyboards/lets_split/keymaps/OLED_sample/keymap.c +++ b/keyboards/lets_split/keymaps/OLED_sample/keymap.c @@ -37,15 +37,9 @@ enum custom_keycodes { RGBLED_DECREASE_SAT, RGBLED_INCREASE_VAL, RGBLED_DECREASE_VAL, + M_SAMPLE }; -enum macro_keycodes { - KC_SAMPLEMACRO, -}; - -//Macros -#define M_SAMPLE M(KC_SAMPLEMACRO) - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Qwerty @@ -278,6 +272,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; + case M_SAMPLE: + if (record->event.pressed){ + SEND_STRING("hello world"); + } + return false; } return true; } @@ -328,27 +327,6 @@ void music_scale_user(void) #endif -/* - * Macro definition - */ -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - if (!eeconfig_is_enabled()) { - eeconfig_init(); - } - - switch (id) { - case KC_SAMPLEMACRO: - if (record->event.pressed){ - return MACRO (I(10), T(H), T(E), T(L), T(L), T(O), T(SPACE), T(W), T(O), T(R), T(L), T(D), END); - } - - } - - return MACRO_NONE; -} - - void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) { if (memcmp(dest->display, source->display, sizeof(dest->display))) { -- cgit v1.2.3 From 72f382fc02b3c5c81c54fd2d239d653fe2f8083c Mon Sep 17 00:00:00 2001 From: fauxpark Date: Fri, 2 Aug 2019 13:47:52 +1000 Subject: Remove unused _BOOTLOADER defines --- keyboards/lets_split/keymaps/zer09/config.h | 1 - 1 file changed, 1 deletion(-) (limited to 'keyboards/lets_split/keymaps') diff --git a/keyboards/lets_split/keymaps/zer09/config.h b/keyboards/lets_split/keymaps/zer09/config.h index 14be4ccc59..3990c3dc5b 100644 --- a/keyboards/lets_split/keymaps/zer09/config.h +++ b/keyboards/lets_split/keymaps/zer09/config.h @@ -35,7 +35,6 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 } #define MATRIX_COL_PINS { F7, B1, B3, B2, B6 } -#define CATERINA_BOOTLOADER #define USB_MAX_POWER_CONSUMPTION 50 /* Use I2C or Serial, not both */ -- cgit v1.2.3 From c2709a7ca4a139af0606b085d21a0af460dbf87e Mon Sep 17 00:00:00 2001 From: Dylan Khor Date: Mon, 7 Oct 2019 15:35:37 -0400 Subject: [Keymap] Clean up / adjust khord let's split keymap (#6951) Remove unneeded lines and change right side mouse buttons on raise layer back to media control --- keyboards/lets_split/keymaps/khord/keymap.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'keyboards/lets_split/keymaps') diff --git a/keyboards/lets_split/keymaps/khord/keymap.c b/keyboards/lets_split/keymaps/khord/keymap.c index 4209efabed..60b2973947 100644 --- a/keyboards/lets_split/keymaps/khord/keymap.c +++ b/keyboards/lets_split/keymaps/khord/keymap.c @@ -1,6 +1,5 @@ #include QMK_KEYBOARD_H - extern keymap_config_t keymap_config; #define _QWERTY 0 @@ -25,7 +24,6 @@ enum { // Dylan's additions #define C_A_DEL LALT(LCTL(KC_DEL)) #define C_A_INS LALT(LCTL(KC_INS)) -//#define MAC_LOK S(LCTL(KC_PWR)) #define MAC_LOK LCTL(LGUI(KC_Q)) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -81,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, KC_PGDN, KC_PGUP, _______, \ - _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3, KC_BTN4 \ + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ ), /* Adjust (Lower + Raise) -- cgit v1.2.3 From 7677e8adde5a47a112a3b84fbd526133106b2d88 Mon Sep 17 00:00:00 2001 From: Endemoniada Date: Wed, 16 Oct 2019 19:48:00 +0200 Subject: [Keymap] Add Endemoniada keymaps (#6875) * Add dz60 keymap * Add my TADA68 layout * Fix descriptions and formatting * Formatting fixes * Add readme file * Formatting * move caps lock to correct key, add F-keys to both layers * Add readme for dz60 * First draft of custom Let's Split layout * Some more keys * Finalized keymap * Added a bunch of custom shortcuts to make layout easier to read * Add PERMISSIVE_HOLD option to modtap behavior * Add lock and sleep shortcuts, formatting * Minor fixes and adjustments * Add PERMISSIVE_HOLD option, add sleep/lock shortcuts, minor fixes * Add sleep/lock shortcuts, minor fixes * fixups * Major simplification of lets_split layout into more standard raise/lower/special layers * Remove layer songs, add to readme * Formatting * Switch a few keys around for reachability * Add windows/mac specific layers * simplify layers * Update README * Fix legends * Invert numpad and put Del in upper right corner * Disable arrow keys on Raise, add build instructions * Move dz60 keymap to its own branch * Remove redundant configuration * Change volume and sleep keycodes to standard * Removing empty rules.mk * Changing layer defines to enum * Adding comment to explain reason for swapping KC_TRNS and KC_NO fillers --- keyboards/lets_split/keymaps/mekberg/README.md | 65 +++++++ keyboards/lets_split/keymaps/mekberg/config.h | 34 ++++ keyboards/lets_split/keymaps/mekberg/keymap.c | 228 +++++++++++++++++++++++++ 3 files changed, 327 insertions(+) create mode 100644 keyboards/lets_split/keymaps/mekberg/README.md create mode 100644 keyboards/lets_split/keymaps/mekberg/config.h create mode 100644 keyboards/lets_split/keymaps/mekberg/keymap.c (limited to 'keyboards/lets_split/keymaps') diff --git a/keyboards/lets_split/keymaps/mekberg/README.md b/keyboards/lets_split/keymaps/mekberg/README.md new file mode 100644 index 0000000000..5202ec8366 --- /dev/null +++ b/keyboards/lets_split/keymaps/mekberg/README.md @@ -0,0 +1,65 @@ +# Let's Mekberg! + +This is my take on a Swedish 40% layout in a split format. The priority is to have the most highly used keys opposite the modifier to make chording simpler. In other words, if the layer modifier is on the left half, the most used keys should be bound on the right half. + +## Layers + +### Default + +The default layer has normal alpha layout with the addition of Swedish letters, causing Enter to move down one key and backspace to take the place of the right space. The enter key also doubles as Shift when held. + +2nd row left modifier has been bound to both Ctrl and Tab with modtap (hold for Ctrl, tap for Tab). + +Delete is available on all non-default layers, positioned on the upper right corner key. + +### Raise + +The raised layer has all the symbols and special characters predefined. As much as possible, there should be no need to use additional modifiers. + +Arrow keys have been disabled on this layer to avoid accidental misclicks when pressing the Raise key. + +#### macOS / Windows variants + +Because macOS and Windows expect quite different keycodes to produce the same special characters (for example '{' or '|'), there are two different layers, one for each OS. To toggle either macOS (default) and Windows layouts within the RAISE layer, press SPECIAL + W for Windows or SPECIAL + M for macOS. + +### Lower + +The lower layer focuses on numbers, with a numpad-like layout on the right and F-keys in a homerow-centric layout on the left. + +### Special + +The special layer has Reset and EEP Reset keys on the left half, along with media and volume controls. On the right half it has movement keys starting in the IJKL cluster. Additionally, custom macOS Sleep and Lock Screen keys can be found on the right half on this layer. + +## Configuration + +### PERMISSIVE_HOLD + +This option is used because otherwise modtap functions would fail to trigger. This increases reliability for me. + +### USE_SERIAL + +N/A + +### EE_HANDS + +Prepared for EEPROM settings and different keymaps depending on USB port connected, but default master side remains left regardless. + +## Building + +Clean the build environment: + +```shell +make clean +``` + +Build and flash left side: + +```shell +make lets_split/rev2:mekberg:avrdude-split-left +``` + +Then do the same for the right side: + +```shell +make lets_split/rev2:mekberg:avrdude-split-right +``` diff --git a/keyboards/lets_split/keymaps/mekberg/config.h b/keyboards/lets_split/keymaps/mekberg/config.h new file mode 100644 index 0000000000..5523ecb5a3 --- /dev/null +++ b/keyboards/lets_split/keymaps/mekberg/config.h @@ -0,0 +1,34 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +// Define some configuration for modtap behavior +// #define TAPPING_TERM 150 +#define PERMISSIVE_HOLD + +/* Use I2C or Serial, not both */ +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ +//#define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS diff --git a/keyboards/lets_split/keymaps/mekberg/keymap.c b/keyboards/lets_split/keymaps/mekberg/keymap.c new file mode 100644 index 0000000000..e530623f1d --- /dev/null +++ b/keyboards/lets_split/keymaps/mekberg/keymap.c @@ -0,0 +1,228 @@ +#include QMK_KEYBOARD_H + +/* +Let's Split physical layout +1u == 8chars +* == Homing keys + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | | | | | | | | | | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | * | | | | * | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | | | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | | | | | | | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ + +// Layers +enum layer_names { + _DEFAULT, + _DEFAULT_MAC, + _DEFAULT_WIN, + _RAISE_MAC, + _RAISE_WIN, + _LOWER, + _SPECIAL, +}; + +#define TO_MAC TO(_DEFAULT) +#define TO_WIN TO(_DEFAULT_WIN) + +#define RAISE_M MO(_RAISE_MAC) +#define RAISE_W MO(_RAISE_WIN) +#define LOWER MO(_LOWER) +#define SPECIAL MO(_SPECIAL) + +// Modifiers +#define SFTENT KC_SFTENT // Enter => Shift when held +#define CTLTAB LCTL_T(KC_TAB) // Tab => Ctrl when held + +// ISO keycodes with Swedish layout names +#define SE_PLUS KC_MINS // + +#define SE_QSTM S(SE_PLUS) // Question mark +#define SE_TCK KC_EQL // Fronttick (´) +#define SE_BTCK S(SE_TCK) // Backtick (`) +#define SE_UML KC_RBRC // Umlaut (¨) +#define SE_TAK S(SE_UML) // Caret (^) +#define SE_TILD RALT(SE_UML) // Tilde (~) +#define SE_QUT KC_NUHS // Singlequote (') +#define SE_DQUT S(KC_2) // Doublequote (") +#define SE_AST S(SE_QUT) // Asterisk +#define SE_AUML KC_QUOT // Ä +#define SE_ARNG KC_LBRC // Å +#define SE_OUML KC_SCLN // Ö +#define SE_LT KC_NUBS // < +#define SE_GT S(SE_LT) // > +#define SE_DASH KC_SLSH // - +#define SE_USCR S(SE_DASH) // _ +#define SE_AT RALT(KC_2) // @ +#define SE_EXCL S(KC_1) // ! +#define SE_HASH S(KC_3) // # +#define SE_USD RALT(KC_4) // $ +#define SE_PCNT S(KC_5) // % +#define SE_AMP S(KC_6) // & +#define SE_EQLS S(KC_0) // = + +// Apple-specific layout keys +#define AP_SLS S(KC_7) // / +#define AP_PIPE LALT(KC_7) // | +#define AP_BSLS A(AP_SLS) // Backslash +#define AP_LCBR A(AP_LPAR) // { +#define AP_RCBR A(AP_RPAR) // } +#define AP_LBR A(KC_8) // [ +#define AP_RBR A(KC_9) // ] +#define AP_LPAR S(KC_8) // ( +#define AP_RPAR S(KC_9) // ) + +// Windows-specific layout keys +#define MS_SLS S(KC_7) // / +#define MS_PIPE RALT(SE_LT) // | +#define MS_BSLS RALT(SE_PLUS) // Backslash +#define MS_LCBR RALT(KC_7) // { +#define MS_RCBR RALT(KC_0) // } +#define MS_LBR RALT(KC_8) // [ +#define MS_RBR RALT(KC_9) // ] +#define MS_LPAR S(KC_8) // ( +#define MS_RPAR S(KC_9) // ) + +// My common shortcuts +#define MY_PREV KC_MRWD // Media: Previous +#define MY_NEXT KC_MFFD // Media: Next +#define MY_PLAY KC_MPLY // Media: Play/Pause +#define MY_LOCK C(A(KC_L)) // Mac: Lock + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* +DEFAULT + Main layout for alphas and modifiers + Tab => Ctrl when held + Esc => MOVEMENT layer when held + Enter => Shift when held + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | Esc | Q | W | E | R | T | | Y | U | I | O | P | Å | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + |Ctrl/Tab| A | S | D | F *| G | | H |* J | K | L | Ö | Ä | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | Shift | Z | X | C | V | B | | N | M | , | . | - | Enter | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | SPECIAL| Ctrl | Alt | Cmd | LOWER | Space | | Backspc| RAISE | Left | Down | Up | Right | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ +[_DEFAULT] = LAYOUT_ortho_4x12( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, SE_ARNG, + CTLTAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SE_OUML, SE_AUML, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SE_DASH, SFTENT, + SPECIAL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_BSPC, RAISE_M, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* +DEFAULT - Windows + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | | | | | | | | | | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | * | | | | * | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | | | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | | RAISE | | | | | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ +[_DEFAULT_WIN] = LAYOUT_ortho_4x12( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, RAISE_W, _______, _______, _______, _______ +), + +/* +RAISE - Mac + This layer focuses on symbols and special characters. + + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | | ! | ? | { | } | & | | ^ | | | ` | ´ | | Del | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | # | $ | ( | ) *| " | | ~ |* / | \ | ¨ | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | @ | % | [ | ] | ' | | | < | > | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | |XXXXXXXX| | | | | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ +[_RAISE_MAC] = LAYOUT_ortho_4x12( + _______, SE_EXCL, SE_QSTM, AP_LCBR, AP_RCBR, SE_AMP, SE_TAK, AP_PIPE, SE_BTCK, SE_TCK, _______, KC_DEL, + _______, SE_HASH, SE_USD, AP_LPAR, AP_RPAR, SE_DQUT, SE_TILD, AP_SLS, AP_BSLS, SE_UML, _______, _______, + _______, SE_AT, SE_PCNT, AP_LBR, AP_RBR, SE_QUT, _______, SE_LT, SE_GT, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX +), + +/* +RAISE - Windows + This layer focuses on symbols and special characters. + + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | | ! | ? | { | } | & | | ^ | | | ` | ´ | | Del | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | # | $ | ( | ) *| " | | ~ |* / | \ | ¨ | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | @ | % | [ | ] | ' | | | < | > | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | |XXXXXXXX| | | | | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ +[_RAISE_WIN] = LAYOUT_ortho_4x12( + _______, SE_EXCL, SE_QSTM, MS_LCBR, MS_RCBR, SE_AMP, SE_TAK, MS_PIPE, SE_BTCK, SE_TCK, _______, KC_DEL, + _______, SE_HASH, SE_USD, MS_LPAR, MS_RPAR, SE_DQUT, SE_TILD, MS_SLS, MS_BSLS, SE_UML, _______, _______, + _______, SE_AT, SE_PCNT, MS_LBR, MS_RBR, SE_QUT, _______, SE_LT, SE_GT, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX +), + +/* +LOWER + This layer focuses on numbers and math. + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | | F1 | F2 | F3 | F4 | | | * | 7 | 8 | 9 | - | Del | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | F5 | F6 | F7 | F8 *| | | / |* 4 | 5 | 6 | + | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | F9 | F10 | F11 | F12 | | | / | 1 | 2 | 3 | = | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | |XXXXXXXX| | | | | 0 | . | | | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ +[_LOWER] = LAYOUT_ortho_4x12( + _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, SE_AST, KC_7, KC_8, KC_9, SE_DASH, KC_DEL, + _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, AP_SLS, KC_4, KC_5, KC_6, SE_PLUS, _______, + _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, MS_SLS, KC_1, KC_2, KC_3, SE_EQLS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, _______, _______ +), + +/* +SPECIAL + This layer focuses on special functions, media controls and movement keys. + LEFT RIGHT + ,-----------------------------------------------------. ,-----------------------------------------------------. + | Reset | | WIN | VolUp | | | | Ins | Home | Up | End | PgUp | Del | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + |EEPReset| | Prev | VolDn | Next *| | | |* Left | Down | Right | PgDn | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | Mute | | | | Lock | MAC | | | | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + |XXXXXXXX| | | | | Play | | | | | | | Sleep | + `-----------------------------------------------------´ `-----------------------------------------------------' +*/ +[_SPECIAL] = LAYOUT_ortho_4x12( + RESET, _______, TO_WIN, KC_VOLU, _______, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_DEL, + EEP_RST, _______, MY_PREV, KC_VOLD, MY_NEXT, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, + _______, _______, _______, KC_MUTE, _______, _______, MY_LOCK, TO_MAC, _______, _______, _______, _______, + _______, _______, _______, _______, _______, MY_PLAY, _______, _______, _______, _______, _______, KC_SLEP +) + +}; -- cgit v1.2.3 From 4b47abc737359a5f9c7cb8d22e33427698812e03 Mon Sep 17 00:00:00 2001 From: halvves Date: Mon, 21 Oct 2019 20:38:53 -0700 Subject: [Keymap] add halvves let's split keymap (#7063) * add halvves let's split keymap * [cr] - review requests from @fauxpark * cleanup spacing, add transparent for spaces in util layer * [cr] - use new core funcs / @fauxpark & @drashna * enable EE_HANDS * [cr] - switch to definable mask for layer state (@drashna) --- keyboards/lets_split/keymaps/halvves/config.h | 37 +++++ keyboards/lets_split/keymaps/halvves/keymap.c | 196 ++++++++++++++++++++++++++ keyboards/lets_split/keymaps/halvves/rules.mk | 1 + 3 files changed, 234 insertions(+) create mode 100644 keyboards/lets_split/keymaps/halvves/config.h create mode 100644 keyboards/lets_split/keymaps/halvves/keymap.c create mode 100644 keyboards/lets_split/keymaps/halvves/rules.mk (limited to 'keyboards/lets_split/keymaps') diff --git a/keyboards/lets_split/keymaps/halvves/config.h b/keyboards/lets_split/keymaps/halvves/config.h new file mode 100644 index 0000000000..70f6d13c7b --- /dev/null +++ b/keyboards/lets_split/keymaps/halvves/config.h @@ -0,0 +1,37 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +/* Use I2C or Serial, not both */ +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ +// #define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS + +// smooth mousekeys (copied from the ergo ez config) +#define MOUSEKEY_INTERVAL 16 +#define MOUSEKEY_DELAY 0 +#define MOUSEKEY_TIME_TO_MAX 60 +#define MOUSEKEY_MAX_SPEED 7 +#define MOUSEKEY_WHEEL_DELAY 0 diff --git a/keyboards/lets_split/keymaps/halvves/keymap.c b/keyboards/lets_split/keymaps/halvves/keymap.c new file mode 100644 index 0000000000..6fbd646519 --- /dev/null +++ b/keyboards/lets_split/keymaps/halvves/keymap.c @@ -0,0 +1,196 @@ +#include QMK_KEYBOARD_H + +enum layer_names { + _QWERTY, + _COLEMAK, + _DVORAK, + _LOWER, + _RAISE, + _UTIL, + _MOUSE, + _ADJUST, +}; + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define UTIL MO(_UTIL) +#define MOUSE MO(_MOUSE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Util | Ctrl | Alt | GUI |Lower | Space |Raise | Mouse| Mouse| | Util | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_ortho_4x12( + 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 , + UTIL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, MOUSE, MOUSE, XXXXXXX, UTIL +), + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | ' | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Util | Ctrl | Alt | GUI |Lower |Space |Space |Raise | Mouse| Mouse| | | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = LAYOUT_ortho_4x12( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + UTIL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, MOUSE, MOUSE, XXXXXXX, XXXXXXX +), + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | Tab | ' | , | . | P | Y | F | G | C | R | L | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | O | E | U | I | D | H | T | N | S | / | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Util | Ctrl | Alt | GUI |Lower |Space |Space |Raise | Mouse| Mouse| | | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = LAYOUT_ortho_4x12( + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , + UTIL, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, MOUSE, MOUSE, XXXXXXX, XXXXXXX +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_ortho_4x12( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_ortho_4x12( + 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_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Util + * ,-----------------------------------------------------------------------------------. + * | | | | | | Reset|Reset | | | | | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | LEFT | DOWN | UP | RGHT | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_UTIL] = LAYOUT_ortho_4x12( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX +), + +/* Mouse + * ,-----------------------------------------------------------------------------------. + * | | | M Up | | | | | | |L Clk |R Clk | W Up | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | |M Left|M Down|M Rght| | | | | | | |W Down| + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_MOUSE] = LAYOUT_ortho_4x12( + XXXXXXX, XXXXXXX, KC_MS_U, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BTN1, KC_BTN2, KC_WH_U, + XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_D, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX +), + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_ortho_4x12( + _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + + +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + case DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); + } + return false; + } + return true; +} diff --git a/keyboards/lets_split/keymaps/halvves/rules.mk b/keyboards/lets_split/keymaps/halvves/rules.mk new file mode 100644 index 0000000000..6c605daecf --- /dev/null +++ b/keyboards/lets_split/keymaps/halvves/rules.mk @@ -0,0 +1 @@ +MOUSEKEY_ENABLE = yes -- cgit v1.2.3 From e96cac0814995e2a0735708727cbab599d6cf5f1 Mon Sep 17 00:00:00 2001 From: fauxpark Date: Fri, 25 Oct 2019 07:50:13 +1100 Subject: Cleanup rules.mk for 32U4 keyboards, L-M (#7120) * Cleanup rules.mk for 32U4 keyboards, L-M * Move some stuff to keyboard level --- keyboards/lets_split/keymaps/default/rules.mk | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 keyboards/lets_split/keymaps/default/rules.mk (limited to 'keyboards/lets_split/keymaps') diff --git a/keyboards/lets_split/keymaps/default/rules.mk b/keyboards/lets_split/keymaps/default/rules.mk deleted file mode 100644 index e69de29bb2..0000000000 -- cgit v1.2.3