aboutsummaryrefslogtreecommitdiffstats
path: root/layouts/community
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/community')
-rw-r--r--layouts/community/ergodox/drashna/config.h15
-rw-r--r--layouts/community/ergodox/drashna/keymap.c33
-rw-r--r--layouts/community/ergodox/drashna/rules.mk4
-rw-r--r--layouts/community/ergodox/issmirnov/README.md49
-rw-r--r--layouts/community/ergodox/issmirnov/asci-keymap.txt95
-rwxr-xr-xlayouts/community/ergodox/issmirnov/build.sh2
-rw-r--r--layouts/community/ergodox/issmirnov/config.h3
-rw-r--r--layouts/community/ergodox/issmirnov/keymap.c250
-rwxr-xr-xlayouts/community/ergodox/issmirnov/push.sh2
-rw-r--r--layouts/community/ergodox/issmirnov/template.txt17
-rw-r--r--layouts/community/ergodox/manna-harbour_miryoku/keymap.c3
-rw-r--r--layouts/community/ergodox/qwerty_code_friendly/keymap.c74
-rw-r--r--layouts/community/ergodox/qwerty_code_friendly/readme.md28
-rw-r--r--layouts/community/numpad_5x6/drashna/config.h20
-rw-r--r--layouts/community/numpad_5x6/drashna/keymap.c1
-rw-r--r--layouts/community/ortho_4x12/drashna/config.h37
-rw-r--r--layouts/community/ortho_4x12/drashna/keymap.c81
-rw-r--r--layouts/community/ortho_4x12/drashna/rules.mk60
-rw-r--r--layouts/community/ortho_4x12/jotix/keymap.c71
-rw-r--r--layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c3
-rw-r--r--layouts/community/ortho_5x12/drashna/keymap.c32
-rw-r--r--layouts/community/ortho_5x12/drashna/rules.mk18
22 files changed, 655 insertions, 243 deletions
diff --git a/layouts/community/ergodox/drashna/config.h b/layouts/community/ergodox/drashna/config.h
index 494383299..0091ebcde 100644
--- a/layouts/community/ergodox/drashna/config.h
+++ b/layouts/community/ergodox/drashna/config.h
@@ -1,18 +1,19 @@
#pragma once
#ifdef RGBLIGHT_ENABLE
-# undef RGBLIGHT_SAT_STEP
-# define RGBLIGHT_SAT_STEP 12
-
-# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3
-# define RGBLIGHT_EFFECT_SNAKE_LENGTH 3
-#endif // RGBLIGHT_ENABLE
+# undef RGBLIGHT_SAT_STEP
+# define RGBLIGHT_SAT_STEP 12
+# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3
+# define RGBLIGHT_EFFECT_SNAKE_LENGTH 3
+#endif // RGBLIGHT_ENABLE
#undef PRODUCT
-#define PRODUCT DrashnaDox - Hacked ErgoDox EZ Shine
+#define PRODUCT DrashnaDox - Hacked ErgoDox EZ Shine
#undef DEBOUNCE
#define DEBOUNCE 30
#define TAPPING_TERM_PER_KEY
+
+#define ERGODOX_LED_30
diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c
index 6ed4558e2..8308bfdaa 100644
--- a/layouts/community/ergodox/drashna/keymap.c
+++ b/layouts/community/ergodox/drashna/keymap.c
@@ -1,20 +1,3 @@
-/*
-This is the keymap for the keyboard
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-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
#include "drashna.h"
#ifdef UNICODEMAP_ENABLE
@@ -32,6 +15,13 @@ enum more_custom_keycodes { KC_SWAP_NUM = NEW_SAFE_RANGE };
// define layer change stuff for underglow indicator
bool skip_leds = false;
+/*
+ * The `LAYOUT_ergodox_pretty_base` macro is a template to allow the use of
+ * identical modifiers for the default layouts (eg QWERTY, Colemak, Dvorak,
+ * etc), so that there is no need to set them up for each layout, and modify
+ * all of them if I want to change them. This helps to keep consistency and
+ * ease of use. K## is a placeholder to pass through the individual keycodes
+ */
// clang-format off
#define LAYOUT_ergodox_pretty_base( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
@@ -40,8 +30,8 @@ bool skip_leds = false;
) \
LAYOUT_ergodox_pretty_wrapper( \
KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, \
- KC_TAB, K01, K02, K03, K04, K05, TG(_DIABLO), TG(_DIABLO), K06, K07, K08, K09, K0A, KC_BSLS, \
- KC_C1R3, ALT_T(K11), K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \
+ LALT_T(KC_TAB), K01, K02, K03, K04, K05, TG(_DIABLO), TG(_DIABLO), K06, K07, K08, K09, K0A, KC_BSLS, \
+ KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \
KC_MLSF, CTL_T(K21), K22, K23, K24, K25, TG(_GAMEPAD), TG(_GAMEPAD), K26, K27, K28, K29, RCTL_T(K2A), KC_MRSF, \
KC_GRV, OS_MEH, OS_HYPR, KC_LBRC, KC_RBRC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC(0x2E2E), \
OS_LALT, OS_LGUI, OS_RGUI, CTL_T(KC_ESCAPE), \
@@ -402,7 +392,7 @@ void rgb_matrix_indicators_user(void) {
rgb_matrix_config.enable
# endif
) {
- switch (biton32(layer_state)) {
+ switch (get_highest_layer(layer_state)) {
case _GAMEPAD:
rgb_matrix_layer_helper(HSV_ORANGE, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER);
rgb_matrix_set_color(32, 0x00, 0xFF, 0x00); // Q
@@ -432,7 +422,7 @@ void rgb_matrix_indicators_user(void) {
break;
default: {
bool mods_enabled = IS_LAYER_ON(_MODS);
- switch (biton32(default_layer_state)) {
+ switch (get_highest_layer(default_layer_state)) {
case _QWERTY:
rgb_matrix_layer_helper(HSV_CYAN, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER);
break;
@@ -466,7 +456,6 @@ void rgb_matrix_indicators_user(void) {
#endif // RGB_MATRIX_INIT
-
uint16_t get_tapping_term(uint16_t keycode) {
if (keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) {
if (mod_config(keycode & 0xf) & MOD_MASK_ALT) {
diff --git a/layouts/community/ergodox/drashna/rules.mk b/layouts/community/ergodox/drashna/rules.mk
index f9f9ea2ba..3aee59df6 100644
--- a/layouts/community/ergodox/drashna/rules.mk
+++ b/layouts/community/ergodox/drashna/rules.mk
@@ -3,8 +3,8 @@ SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
COMMAND_ENABLE = no # Commands for debug and configuration
SPACE_CADET_ENABLE = no
ifeq ($(strip $(KEYBOARD)), ergodox_ez)
- RGBLIGHT_ENABLE = yes
- RGB_MATRIX_ENABLE = no
+ RGBLIGHT_ENABLE = yes
+ RGB_MATRIX_ENABLE = no
endif
CONSOLE_ENABLE = no
BOOTMAGIC_ENABLE = yes
diff --git a/layouts/community/ergodox/issmirnov/README.md b/layouts/community/ergodox/issmirnov/README.md
new file mode 100644
index 000000000..564edfe31
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/README.md
@@ -0,0 +1,49 @@
+# Ivan's Ergodox Config
+
+
+## Details about the layout
+
+- Shift and Cmd are One Shot Modifiers, so tapping them once will apply them to the next key. When tapped twice they will lock, until tapped again to clear.
+- When switching to other layers, any stuck modifiers are cleared in order to avoid unintended key combos
+- There are a few leader key combinations. Right now, `KC_LEAD` + `s` will open my wiki homepage.
+- All transparent keys have been replaced with noops to avoid layer bleeding.
+
+## Initial Setup
+
+### QMK
+
+```
+brew tap osx-cross/avr
+brew tap PX4/homebrew-px4
+brew update
+brew install avr-gcc
+brew install dfu-programmer
+brew install gcc-arm-none-eabi
+brew install avrdude
+
+git clone https://github.com/qmk/qmk_firmware.git
+git clone https://github.com/issmirnov/ergodox-layout.git \
+ layouts/community/ergodox/ismirnov
+```
+
+### Teensy utils
+
+Download and add both of these to $PATH
+
+- [hid_listen](https://www.pjrc.com/teensy/hid_listen.html)
+- [teensy loader cli](https://www.pjrc.com/teensy/loader_cli.html)
+
+## Flashing
+
+```
+make ergodox_ez:ismirnov
+teensy_loader_cli -mmcu=atmega32u4 -w -v ergodox_ez_ismirnov.hex
+
+# or just
+make ergodox_ez:ismirnov:flash
+```
+
+## Gotchas
+
+- If you get error: `dyld: Library not loaded: /usr/local/opt/isl/lib/libisl.15.dylib` then do `brew reinstall avr-gcc`
+- If `hid_listen` just prints out a ton of dots, update makefile with `CONSOLE_ENABLE = yes`
diff --git a/layouts/community/ergodox/issmirnov/asci-keymap.txt b/layouts/community/ergodox/issmirnov/asci-keymap.txt
new file mode 100644
index 000000000..9b023f664
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/asci-keymap.txt
@@ -0,0 +1,95 @@
+ Qwerty
+,--------------------------------------------. ,--------------------------------------------.
+| Escape | 1 | 2 | 3 | 4 | 5 | ! | | = | 6 | 7 | 8 | 9 | 0 | Escape |
+|--------+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+--------|
+|Lctl(Spa| Q | W | E | R | T | * | | + | Y | U | I | O | P |Lgui(Spa|
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| Tab | A | S | D | F | G |-----| |-----| H | J | K | L |TapTo|Mo(Navi)|
+|--------+-----+-----+-----+-----+-----| / | | - |-----+-----+-----+-----+-----+--------|
+|Osm(ModL| Z | X | C | V | B | | | | N | M | . |Comma|Tg(Nu| ' |
+`--------+-----+-----+-----+-----+-----------' `-----------+-----+-----+-----+-----+--------'
+ |Ctrl |Lsft(|Lsft(| Alt | Mod | |Escap| : | % | |Lgui(|
+ `-----------------------------' ,-----------. ,-----------. `-----------------------------'
+ | | | | ← | → |
+ ,-----|-----|-----| |-----+-----+-----.
+ | | | | | ↑ | | |
+ | ⎵ | ⌫ |-----| |-----| Tab |Enter|
+ | | | Del | | ↓ | | |
+ `-----------------' `-----------------'
+
+ Symb
+,--------------------------------------------. ,--------------------------------------------.
+| Escape | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | |
+|--------+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+--------|
+| | - | @ | { | } | ` | * | | + | * | ! | | | % | + |Mo(Navi)|
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| Tab | ^ | _ | ( | ) | $ |-----| |-----| # | = | : | ; |TapTo| Dquo |
+|--------+-----+-----+-----+-----+-----| / | | - |-----+-----+-----+-----+-----+--------|
+| Lshift | < | > | [ | ] | ~ | | | | & | ? | / | \ |Tg(Nu| ' |
+`--------+-----+-----+-----+-----+-----------' `-----------+-----+-----+-----+-----+--------'
+ |Ctrl |Lsft(|Lsft(| Alt |WkspL| |Escap| : | % | | |
+ `-----------------------------' ,-----------. ,-----------. `-----------------------------'
+ | | | | ← | → |
+ ,-----|-----|-----| |-----+-----+-----.
+ | | | | | ↑ | | |
+ |WkspR| ⌫ |-----| |-----| Tab |Enter|
+ | | | Del | | ↓ | | |
+ `-----------------' `-----------------'
+
+ Nump
+,--------------------------------------------. ,--------------------------------------------.
+| | | | | | | | | = | | | | | | Reset |
+|--------+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+--------|
+| | No | No |Lgui(| | | * | | + | , | 7 | 8 | 9 | | |
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| Tab | |Lgui(|Lgui(|Lgui(| |-----| |-----| 0 | 4 | 5 | 6 |To(Sy| |
+|--------+-----+-----+-----+-----+-----| / | | - |-----+-----+-----+-----+-----+--------|
+| | | | |Audio|Audio| | | | . | 1 | 2 | 3 |To(Qw| |
+`--------+-----+-----+-----+-----+-----------' `-----------+-----+-----+-----+-----+--------'
+ |To(0)| | | | | | 0 | | |To(3)| |
+ `-----------------------------' ,-----------. ,-----------. `-----------------------------'
+ | | | | ← | → |
+ ,-----|-----|-----| |-----+-----+-----.
+ | | | | | ↑ | | |
+ | ⎵ | ⌫ |-----| |-----| Alt |Shift|
+ | | | Del | | ↓ | | |
+ `-----------------' `-----------------'
+
+ Overwatch
+,--------------------------------------------. ,--------------------------------------------.
+| Escape | 1 | 2 | 3 | 4 | 5 |To(0)| | | | | | | | |
+|--------+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+--------|
+| Tab | Q | W | E | R | T | | | | | | | | | |
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| Ctrl | A | S | D | F | P |-----| |-----| | | | | | |
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| Lshift | Z | X | C | V |Grave| | | | | | | | | |
+`--------+-----+-----+-----+-----+-----------' `-----------+-----+-----+-----+-----+--------'
+ |Ctrl | F9 |Pscre| H | R | | | | | | |
+ `-----------------------------' ,-----------. ,-----------. `-----------------------------'
+ | | | | | |
+ ,-----|-----|-----| |-----+-----+-----.
+ | | | | | | | |
+ | ⎵ | |-----| |-----| | |
+ | | | | | | | |
+ `-----------------' `-----------------'
+
+ Navi
+,--------------------------------------------. ,--------------------------------------------.
+| Escape | 1 | 2 | 3 | 4 | 5 | 6 | | | | | | | | |
+|--------+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+--------|
+| | | | ↑ | | | | | | | | | | | |
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| | | ← | ↓ | → | |-----| |-----| |Ctrl | | | | |
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| | | | | | | | | | | | | | | |
+`--------+-----+-----+-----+-----+-----------' `-----------+-----+-----+-----+-----+--------'
+ | | | | |WkspL| | ⌘⇧ | | | | |
+ `-----------------------------' ,-----------. ,-----------. `-----------------------------'
+ | | | | | |
+ ,-----|-----|-----| |-----+-----+-----.
+ | | | | | | | |
+ |WkspR| |-----| |-----| | Mod |
+ | | | | | | | |
+ `-----------------' `-----------------'
+
diff --git a/layouts/community/ergodox/issmirnov/build.sh b/layouts/community/ergodox/issmirnov/build.sh
new file mode 100755
index 000000000..7bb694d8a
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/build.sh
@@ -0,0 +1,2 @@
+#!/bin/bash
+make ergodox_ez:issmirnov
diff --git a/layouts/community/ergodox/issmirnov/config.h b/layouts/community/ergodox/issmirnov/config.h
new file mode 100644
index 000000000..fe62a7d1d
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/config.h
@@ -0,0 +1,3 @@
+// Reference: https://beta.docs.qmk.fm/reference/config-options
+// and https://github.com/qmk/qmk_firmware/blob/master/docs/config_options.md
+#include QMK_KEYBOARD_CONFIG_H
diff --git a/layouts/community/ergodox/issmirnov/keymap.c b/layouts/community/ergodox/issmirnov/keymap.c
new file mode 100644
index 000000000..ce853f3d3
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/keymap.c
@@ -0,0 +1,250 @@
+#include QMK_KEYBOARD_H
+
+// Custom user includes
+#include "issmirnov.h"
+#include "tap_tog.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[_QWERTY] = LAYOUT_ergodox_wrapper(
+KC_ESCAPE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EXLM,
+LCTL(KC_SPACE), _________________QWERTY_L1_________________, KC_ASTR,
+KC_TAB, _________________QWERTY_L2_________________,
+OSM(MOD_LSFT), _________________QWERTY_L3_________________, KC_SLASH,
+KC_LCTL, LSFT(KC_LGUI), LSFT(KC_LALT), KC_LALT, KC_LGUI,
+ XXXXXXX, XXXXXXX,
+ XXXXXXX,
+ KC_SPACE, KC_BSPACE, KC_DEL,
+
+KC_EQL , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_ESCAPE ,
+KC_PLUS , _________________QWERTY_R1_________________ , LGUI(KC_SPACE) ,
+ _________________QWERTY_R2_________________ , MO(_NAVI) ,
+KC_MINS , _________________QWERTY_R3_________________ , KC_QUOTE ,
+KC_ESCAPE , KC_COLN , KC_PERC , XXXXXXX , LGUI(KC_L) ,
+
+KC_LEFT, KC_RGHT,
+KC_UP,
+KC_DOWN, KC_TAB, KC_ENTER
+),
+
+ // layer 1
+[_SYMB] = LAYOUT_ergodox_wrapper(
+KC_ESCAPE , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 ,
+XXXXXXX , _________________SYMB_L1___________________ ,KC_ASTR ,
+KC_TAB , _________________SYMB_L2___________________,
+KC_LSHIFT , _________________SYMB_L3___________________, KC_SLASH ,
+KC_LCTL , LSFT(KC_LGUI) , LSFT(KC_LALT) , KC_LALT , WKSP_LEFT ,
+
+ XXXXXXX, XXXXXXX,
+ XXXXXXX,
+ WKSP_RIGHT, KC_BSPACE, KC_DEL,
+
+KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , XXXXXXX ,
+KC_PLUS , _________________SYMB_R1___________________ , MO(_NAVI) ,
+ _________________SYMB_R2___________________ , KC_DQUO ,
+KC_MINS , _________________SYMB_R3___________________ , KC_QUOTE ,
+KC_ESCAPE , KC_COLN , KC_PERC , XXXXXXX , XXXXXXX ,
+
+KC_LEFT, KC_RGHT,
+KC_UP,
+KC_DOWN, KC_TAB, KC_ENTER
+),
+
+ // layer 2
+[_NUMP] = LAYOUT_ergodox_wrapper(
+XXXXXXX , ___________________XXXXX___________________, XXXXXXX ,
+XXXXXXX , _________________NUMP_L1___________________ , KC_ASTR ,
+KC_TAB , _________________NUMP_L2___________________ ,
+XXXXXXX , _________________NUMP_L3___________________ , KC_SLASH ,
+TO(0) , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+
+ XXXXXXX , XXXXXXX ,
+ XXXXXXX ,
+ KC_SPACE , KC_BSPACE , KC_DEL ,
+
+KC_EQL , ___________________XXXXX___________________ , RESET ,
+KC_PLUS , _________________NUMP_R1___________________ , XXXXXXX ,
+ _________________NUMP_R2___________________ , XXXXXXX ,
+KC_MINS , _________________NUMP_R3___________________ , XXXXXXX ,
+ KC_0 , XXXXXXX , XXXXXXX , TO(3) , XXXXXXX ,
+
+KC_LEFT, KC_RGHT,
+KC_UP,
+KC_DOWN, KC_LALT, KC_LSFT
+),
+
+ // layer 3
+[_OVERWATCH] = LAYOUT_ergodox_wrapper(
+KC_ESCAPE, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , TO(0) ,
+______________OVERWATCH_L1_________________ , XXXXXXX ,
+______________OVERWATCH_L2_________________ ,
+______________OVERWATCH_L3_________________ , XXXXXXX ,
+______________OVERWATCH_L4_________________ ,
+
+XXXXXXX , XXXXXXX ,
+XXXXXXX ,
+KC_SPACE , XXXXXXX , XXXXXXX ,
+
+
+_______, _______, _______, _______, _______, _______, _______,
+_______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______,
+_______, _______, _______, _______, _______, _______, _______,
+_______, _______, _______, _______, _______,
+
+_______, _______,
+_______,
+_______, _______, _______
+
+),
+// layer 4
+[_NAVI] = LAYOUT_ergodox_wrapper(
+KC_ESCAPE, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 ,
+XXXXXXX, _________________NAVI_L1___________________ , XXXXXXX ,
+XXXXXXX, _________________NAVI_L2___________________ ,
+XXXXXXX, _________________NAVI_L3___________________ , XXXXXXX ,
+XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, WKSP_LEFT,
+
+XXXXXXX , XXXXXXX ,
+XXXXXXX ,
+WKSP_RIGHT , XXXXXXX , XXXXXXX ,
+
+
+_______, _______, _______, _______, _______, _______, _______,
+_______, _________________NAVI_R1___________________, _______,
+ _________________NAVI_R2___________________, _______,
+_______, _________________NAVI_R3___________________, _______,
+MODSFT, _______, _______, _______, _______,
+
+_______, _______,
+_______,
+_______, _______, KC_LGUI
+
+),
+};
+
+
+// called by QMK during key processing before the actual key event is handled. Useful for macros.
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ uint8_t layer = biton32(layer_state);
+ switch (keycode) {
+ case TAP_TOG_LAYER:
+ process_tap_tog(_SYMB,record);
+ return false;
+ break;
+
+ case WKSP_LEFT:
+ // Only if TAP_TOG_LAYER is being held right now do we want to do actions.
+ if (record->event.pressed && (!tap_tog_layer_toggled_on || layer == _NAVI)) {
+ tap_code16(LGUI(LSFT(KC_Z)));
+ tap_tog_layer_other_key_pressed = true; // Add flag so layer resets
+ }
+ break;
+ case WKSP_RIGHT:
+ // Only if TAP_TOG_LAYER is being held right now do we want to do actions.
+ if (record->event.pressed && (!tap_tog_layer_toggled_on || layer == _NAVI)) {
+ tap_code16(LGUI(LSFT(KC_X)));
+ tap_tog_layer_other_key_pressed = true; // Add flag so layer resets
+ }
+ break;
+ default:
+ tap_tog_count = 0; // reset counter.
+ tap_tog_layer_other_key_pressed = true; // always set this to true, TAP_TOG_LAYER handlers will handle interpreting this
+ break;
+ }
+ return true;
+}
+
+// Runs constantly in the background, in a loop every 100ms or so.
+// Best used for LED status output triggered when user isn't actively typing.
+void matrix_scan_user(void) {
+ uint8_t layer = biton32(layer_state);
+ if (layer == 0) {
+ // Set up LED indicators for stuck modifier keys.
+ // https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/report.h#L118
+ switch (keyboard_report->mods) {
+ case MOD_BIT(KC_LSFT): // LSHIFT
+ ergodox_right_led_1_set (LED_BRIGHTNESS_LO);
+ ergodox_right_led_1_on ();
+ ergodox_right_led_2_set (LED_BRIGHTNESS_LO);
+ ergodox_right_led_2_on ();
+ ergodox_right_led_3_set (LED_BRIGHTNESS_HI);
+ ergodox_right_led_3_off ();
+ break;
+
+ case MOD_BIT(KC_LGUI): // LGUI
+ ergodox_right_led_1_set (LED_BRIGHTNESS_HI);
+ ergodox_right_led_1_off ();
+ ergodox_right_led_2_set (LED_BRIGHTNESS_LO);
+ ergodox_right_led_2_on ();
+ ergodox_right_led_3_set (LED_BRIGHTNESS_LO);
+ ergodox_right_led_3_on ();
+ break;
+
+ case MOD_BIT(KC_LSFT) ^ MOD_BIT(KC_LGUI):
+ ergodox_right_led_1_set (70);
+ ergodox_right_led_1_on ();
+ ergodox_right_led_2_set (70);
+ ergodox_right_led_2_on ();
+ ergodox_right_led_3_set (70);
+ ergodox_right_led_3_on ();
+ break;
+
+ default: // reset leds
+ ergodox_right_led_1_set (LED_BRIGHTNESS_HI);
+ ergodox_right_led_1_off ();
+ ergodox_right_led_2_set (LED_BRIGHTNESS_HI);
+ ergodox_right_led_2_off ();
+ ergodox_right_led_3_set (LED_BRIGHTNESS_HI);
+ ergodox_right_led_3_off ();
+ }
+ }
+}
+
+// only runs when when the layer is changed, good for updating LED's and clearing sticky state
+uint32_t layer_state_set_user(uint32_t state) {
+ uint8_t layer = biton32(state);
+
+ ergodox_board_led_off();
+ ergodox_right_led_1_off();
+ ergodox_right_led_2_off();
+ ergodox_right_led_3_off();
+
+ combo_enable(); // by default, enable combos.
+ switch (layer) {
+ case 0:
+ break;
+ case 1:
+ clear_mods();
+ ergodox_right_led_1_on();
+ break;
+ case 2:
+ clear_mods();
+ ergodox_right_led_2_on();
+ break;
+ case _OVERWATCH:
+ clear_mods();
+ combo_disable(); // We don't want combos in overwatch
+ ergodox_right_led_3_on();
+ break;
+ case 4:
+ ergodox_right_led_1_on();
+ ergodox_right_led_2_on();
+ break;
+ case 5:
+ ergodox_right_led_1_on();
+ ergodox_right_led_3_on();
+ break;
+ case 6:
+ ergodox_right_led_2_on();
+ ergodox_right_led_3_on();
+ break;
+ case 7:
+ ergodox_right_led_1_on();
+ ergodox_right_led_2_on();
+ ergodox_right_led_3_on();
+ break;
+ default:
+ break;
+ }
+ return state;
+};
diff --git a/layouts/community/ergodox/issmirnov/push.sh b/layouts/community/ergodox/issmirnov/push.sh
new file mode 100755
index 000000000..1a6c7c447
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/push.sh
@@ -0,0 +1,2 @@
+#!/bin/bash
+make ergodox_ez:issmirnov:teensy
diff --git a/layouts/community/ergodox/issmirnov/template.txt b/layouts/community/ergodox/issmirnov/template.txt
new file mode 100644
index 000000000..35c7920a1
--- /dev/null
+++ b/layouts/community/ergodox/issmirnov/template.txt
@@ -0,0 +1,17 @@
+,--------------------------------------------. ,--------------------------------------------.
+| 0 | 1 | 2 | 3 | 4 | 5 | 6 | | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
+|--------+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+--------|
+| 7 | 8 | 9 | 10 | 11 | 12 | 13 | | 45 | 46 | 47 | 48 | 49 | 50 | 51 |
+|--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
+| 14 | 15 | 16 | 17 | 18 | 19 |-----| |-----| 52 | 53 | 54 | 55 | 56 | 57 |
+|--------+-----+-----+-----+-----+-----| 26 | | 58 |-----+-----+-----+-----+-----+--------|
+| 20 | 21 | 22 | 23 | 24 | 25 | | | | 59 | 60 | 61 | 62 | 63 | 64 |
+`--------+-----+-----+-----+-----+-----------' `-----------+-----+-----+-----+-----+--------'
+ | 27 | 28 | 29 | 30 | 31 | | 65 | 66 | 67 | 68 | 69 |
+ `-----------------------------' ,-----------. ,-----------. `-----------------------------'
+ | 32 | 33 | | 70 | 71 |
+ ,-----|-----|-----| |-----+-----+-----.
+ | | | 34 | | 72 | | |
+ | 35 | 36 |-----| |-----| 74 | 75 |
+ | | | 37 | | 73 | | |
+ `-----------------' `-----------------'
diff --git a/layouts/community/ergodox/manna-harbour_miryoku/keymap.c b/layouts/community/ergodox/manna-harbour_miryoku/keymap.c
index 86547df98..1c715a68f 100644
--- a/layouts/community/ergodox/manna-harbour_miryoku/keymap.c
+++ b/layouts/community/ergodox/manna-harbour_miryoku/keymap.c
@@ -1,5 +1,4 @@
-
-// generated from users/manna-harbour_miryoku/miryoku.org
+// generated from users/manna-harbour_miryoku/miryoku.org -*- buffer-read-only: t -*-
#define LAYOUT_miryoku(\
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
diff --git a/layouts/community/ergodox/qwerty_code_friendly/keymap.c b/layouts/community/ergodox/qwerty_code_friendly/keymap.c
index f2aa255a4..bf20e76a5 100644
--- a/layouts/community/ergodox/qwerty_code_friendly/keymap.c
+++ b/layouts/community/ergodox/qwerty_code_friendly/keymap.c
@@ -24,34 +24,37 @@
#define CFQ_USE_DYNAMIC_MACRO
-
#if !defined(CFQ_USER_KEY0)
-# define CFQ_USER_KEY0 KC_BSPC
+# define CFQ_USER_KEY0 KC_APP
#endif
#if !defined(CFQ_USER_KEY1)
-# define CFQ_USER_KEY1 CFQ_KC_FN1
+# define CFQ_USER_KEY1 KC_MENU
#endif
#if !defined(CFQ_USER_KEY2)
-# define CFQ_USER_KEY2 KC_INS
+# define CFQ_USER_KEY2 KC_BSPC
#endif
#if !defined(CFQ_USER_KEY3)
-# define CFQ_USER_KEY3 KC_NLCK
+# define CFQ_USER_KEY3 KC_DEL
#endif
#if !defined(CFQ_USER_KEY4)
-# define CFQ_USER_KEY4 KC_BSPC
+# define CFQ_USER_KEY4 KC_SPC
#endif
#if !defined(CFQ_USER_KEY5)
-# define CFQ_USER_KEY5 KC_DEL
+# define CFQ_USER_KEY5 CFQ_KC_FN1
#endif
#if !defined(CFQ_USER_KEY6)
# define CFQ_USER_KEY6 KC_CAPS
#endif
#if !defined(CFQ_USER_KEY7)
-# define CFQ_USER_KEY7 CFQ_KC_FN3
+# define CFQ_USER_KEY7 KC_INS
#endif
#if !defined(CFQ_USER_KEY8)
# define CFQ_USER_KEY8 KC_DEL
#endif
+#if !defined(CFQ_USER_KEY9)
+# define CFQ_USER_KEY9 KC_BSPC
+#endif
+
#ifdef CFQ_USE_80_KEYS
# define LAYOUT_ergodox_76_or_80 LAYOUT_ergodox_80
@@ -240,10 +243,10 @@ static char cfq_word_lut_title_caps[
sizeof(CFQ_WORD_Y) + sizeof(CFQ_WORD_Z)
];
-#define LAYER_BASE 0 /* default layer */
-#define LAYER_KPAD 1 /* keypad */
-#define LAYER_MDIA 2 /* media keys */
-#define LAYER_FKEY 3 /* F-Keys & Words */
+#define LAYER_BASE 0 /* Default Layer. */
+#define LAYER_KPAD 1 /* Keypad, Bracket Pairs & Macro Record. */
+#define LAYER_FKEY 2 /* Function Keys, Media & Mouse Keys. */
+#define LAYER_WORD 3 /* Entire Words (one for each key) & Numbers. */
enum custom_keycodes {
PLACEHOLDER = SAFE_RANGE, /* can always be here */
@@ -307,20 +310,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
* | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift |
* '--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
- * | LCtl |Super | Alt | ~L1 |Space | | Left | Down | Up |Right | Del |
+ * | LCtl |Super | Alt | App | Menu | | Left | Down | Up |Right | Del |
* '----------------------------------' '----------------------------------'
* .-------------. .-------------.
- * | Ins |NumClk| | Home | End |
+ * |BSpace| Del | | Home | End |
* .------+------+------| |------+------+------.
* | | |CapsLk| | PgUp | | |
- * |BSpace| Del |------| |------| ~L2 |Enter |
- * | | | ~L3 | | PgDn | | |
+ * |Space | ~L1 |------| |------| ~L2 |Enter |
+ * | | |Insert| | PgDn | | |
* '--------------------' '--------------------'
*
* Optional overrides: see CFQ_USER_KEY# defines.
- *
* .--------------------------------------------------. .--------------------------------------------------.
- * | | | | | | | | | | | | | | | USR0 |
+ * | | | | | | | | | | | | | | | USR9 |
* |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
* | | | | | | | | | | | | | | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
@@ -328,7 +330,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | | | | | | | | | | | | | | | |
* '--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
- * | | | | USR1 | | | | | | | USR8 |
+ * | | | | USR0 | USR1 | | | | | | USR8 |
* '----------------------------------' '----------------------------------'
* .-------------. .-------------.
* | USR2 | USR3 | | | |
@@ -347,12 +349,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LPRN,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC,
- KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY1, KC_SPC,
+ KC_LCTL, KC_LGUI, KC_LALT, CFQ_USER_KEY0, CFQ_USER_KEY1,
CFQ_USER_KEY2, CFQ_USER_KEY3,
K80(L0K0), K80(L0K1), CFQ_USER_KEY6,
CFQ_USER_KEY4, CFQ_USER_KEY5, CFQ_USER_KEY7,
/* right hand */
- KC_RCBR, KC_CIRC, KC_AMPR, KC_ASTR,KC_MINS, KC_EQL, CFQ_USER_KEY0,
+ KC_RCBR, KC_CIRC, KC_AMPR, KC_ASTR,KC_MINS, KC_EQL, CFQ_USER_KEY9,
KC_RPRN, 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_RBRC, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT,
@@ -361,7 +363,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PGUP, K80(L0K2), K80(L0K3),
KC_PGDN, CFQ_KC_FN2, KC_ENT
),
-/* Keymap 1: KeyPad, Macro Record
+/* Keymap 1: Keypad, Bracket Pairs & Macro Record
*
* .--------------------------------------------------. .--------------------------------------------------.
* | | | | | | | {} | | }{ | |NumLck| / | * | - | |
@@ -377,12 +379,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* .-------------. .-------------.
* |Start1|Start2| | | |
* .------+------+------| |------+------+------.
- * | | | Stop | | | | |
- * |Play1 |Play2 |------| |------| | |
- * | | | | | | | |
+ * | | |Play1 | | | | |
+ * | Stop | |------| |------| | |
+ * | | |Play2 | | | | |
* '--------------------' '--------------------'
*/
-/* KEYPAD & MACRO */
[LAYER_KPAD] = LAYOUT_ergodox_76_or_80(
/* left hand */
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M_BRACKET_IN_CBR,
@@ -391,8 +392,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M_BRACKET_IN_ANG, M_BRACKET_IN_BRC,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
DYN_REC_START1, DYN_REC_START2,
- K80(L1K0), K80(L1K1), DYN_REC_STOP,
- DYN_MACRO_PLAY1, DYN_MACRO_PLAY2, KC_TRNS,
+ K80(L1K0), K80(L1K1), DYN_MACRO_PLAY1,
+ DYN_REC_STOP, KC_TRNS, DYN_MACRO_PLAY2,
/* right hand */
M_BRACKET_OUT_CBR, KC_TRNS, KC_NLCK, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS, KC_TRNS,
M_BRACKET_OUT_PRN, M_ARROW_LEQL, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, KC_TRNS,
@@ -403,7 +404,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, K80(L1K2), K80(L1K3),
KC_TRNS, KC_TRNS, KC_TRNS
),
-/* Keymap 2: FKeys, media & mouse keys
+/* Keymap 2: Function Keys, Media & Mouse Keys
*
* .--------------------------------------------------. .--------------------------------------------------.
* | | | | | | | | | Mute | | F10 | F11 | F12 | | |
@@ -424,8 +425,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | | | MNxt | | |
* '--------------------' '--------------------'
*/
-/* MEDIA, MOUSE & NUMBERS */
-[LAYER_MDIA] = LAYOUT_ergodox_76_or_80(
+[LAYER_FKEY] = LAYOUT_ergodox_76_or_80(
/* left hand */
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_WH_U,
@@ -447,6 +447,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
/* Keymap 3: Entire Words (one for each key) & Numbers
*
+ * Activate by holding L1 & L2.
+ *
* .--------------------------------------------------. .--------------------------------------------------.
* | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | |
* |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
@@ -466,9 +468,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | | | | | |
* '--------------------' '--------------------'
*/
-
-/* FKEY & WORDS */
-[LAYER_FKEY] = LAYOUT_ergodox_76_or_80(
+[LAYER_WORD] = LAYOUT_ergodox_76_or_80(
/* left hand */
KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS,
KC_TRNS, M_WORD_Q, M_WORD_W, M_WORD_E, M_WORD_R, M_WORD_T, KC_TRNS,
@@ -490,6 +490,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
};
+uint32_t layer_state_set_user(uint32_t state) {
+ /* Use layer 3 when 1 & 2 are pressed. */
+ state = update_tri_layer_state(state, LAYER_KPAD, LAYER_FKEY, LAYER_WORD);
+ return state;
+}
+
#define WITHOUT_MODS(...) \
do { \
uint8_t _real_mods = get_mods(); \
diff --git a/layouts/community/ergodox/qwerty_code_friendly/readme.md b/layouts/community/ergodox/qwerty_code_friendly/readme.md
index 319ea50b9..e615fa28f 100644
--- a/layouts/community/ergodox/qwerty_code_friendly/readme.md
+++ b/layouts/community/ergodox/qwerty_code_friendly/readme.md
@@ -61,20 +61,20 @@ using `CFQ_` prefixed defines which can be set by passing `EXTRAFLAGS` to make.
|--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
| LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift |
'--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
- | LCtl |Super | Alt | ~L1 |Space | | Left | Down | Up |Right | Del |
+ | LCtl |Super | Alt | App | Menu | | Left | Down | Up |Right | Del |
'----------------------------------' '----------------------------------'
.-------------. .-------------.
- | Ins |NumClk| | Home | End |
+ |BSpace| Del | | Home | End |
.------+------+------| |------+------+------.
| | |CapsLk| | PgUp | | |
- |BSpace| Del |------| |------| ~L2 |Enter |
- | | | ~L3 | | PgDn | | |
+ |Space | ~L1 |------| |------| ~L2 |Enter |
+ | | |Insert| | PgDn | | |
'--------------------' '--------------------'
Optional overrides: see CFQ_USER_KEY# defines.
.--------------------------------------------------. .--------------------------------------------------.
-| | | | | | | | | | | | | | | USR0 |
+| | | | | | | | | | | | | | | USR9 |
|--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
| | | | | | | | | | | | | | | |
|--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
@@ -82,7 +82,7 @@ Optional overrides: see CFQ_USER_KEY# defines.
|--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
| | | | | | | | | | | | | | | |
'--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
- | | | | USR1 | | | | | | | USR8 |
+ | | | | USR0 | USR1 | | | | | | USR8 |
'----------------------------------' '----------------------------------'
.-------------. .-------------.
| USR2 | USR3 | | | |
@@ -93,7 +93,7 @@ Optional overrides: see CFQ_USER_KEY# defines.
'--------------------' '--------------------'
```
-## Keymap 1: KeyPad, Macro Record
+## Keymap 1: KeyPad, Bracket Pairs & Macro Record
Notes:
@@ -115,9 +115,9 @@ Notes:
.-------------. .-------------.
|Start1|Start2| | | |
.------+------+------| |------+------+------.
- | | | Stop | | | | |
- |Play1 |Play2 |------| |------| | |
- | | | | | | | |
+ | | |Play1 | | | | |
+ | Stop | |------| |------| | |
+ | | |Play2 | | | | |
'--------------------' '--------------------'
```
@@ -146,6 +146,8 @@ Notes:
## Keymap 3: User Defined Words & Numbers
+Activate by holding L1 & L2.
+
This is for assigning whole words to single keys.
You can define the arguments (which must be quoted) using: `CFQ_WORD_[A-Z]`
eg: `-DCFQ_WORD_E=\"my@email.com\"`
@@ -178,6 +180,12 @@ Notes:
## Changelog
+- 2019/11/20
+ Move space to thumb cluster
+ Make L1 and L2 symmetrical.
+ Activate L3 by holding L1 & L2.
+ Add App & Menu keys.
+
- 2018/10/19
Move F-Keys to key-pad like layout.
diff --git a/layouts/community/numpad_5x6/drashna/config.h b/layouts/community/numpad_5x6/drashna/config.h
index 2fc5ab658..29045148e 100644
--- a/layouts/community/numpad_5x6/drashna/config.h
+++ b/layouts/community/numpad_5x6/drashna/config.h
@@ -3,17 +3,17 @@
// #define B6_AUDIO
#if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM)
-# define RGB_DI_PIN B1
-# define RGBLED_NUM 16 // Number of LEDs
+# define RGB_DI_PIN B1
+# define RGBLED_NUM 16 // Number of LEDs
-# define RGBLIGHT_HUE_STEP 12
-# define RGBLIGHT_SAT_STEP 12
-# define RGBLIGHT_VAL_STEP 12
-# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
-# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
-#endif // RGBLIGHT_ENABLE
+# define RGBLIGHT_HUE_STEP 12
+# define RGBLIGHT_SAT_STEP 12
+# define RGBLIGHT_VAL_STEP 12
+# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
+# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
+#endif // RGBLIGHT_ENABLE
#if defined(KEYBOARD_primekb_prime_m)
-# undef PRODUCT
-# define PRODUCT Drashna Hacked Prime_M Macro Pad
+# undef PRODUCT
+# define PRODUCT Drashna Hacked Prime_M Macro Pad
#endif
diff --git a/layouts/community/numpad_5x6/drashna/keymap.c b/layouts/community/numpad_5x6/drashna/keymap.c
index 81710221d..3d325a4c1 100644
--- a/layouts/community/numpad_5x6/drashna/keymap.c
+++ b/layouts/community/numpad_5x6/drashna/keymap.c
@@ -1,4 +1,3 @@
-#include QMK_KEYBOARD_H
#include "drashna.h"
#define F2_MCRO LT(_GAMEPAD, KC_F2)
diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h
index d8ac5e6d1..663708afa 100644
--- a/layouts/community/ortho_4x12/drashna/config.h
+++ b/layouts/community/ortho_4x12/drashna/config.h
@@ -1,9 +1,10 @@
#pragma once
#if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM)
-# define RGB_DI_PIN A0
-# define RGBLED_NUM 13 // Number of LEDs
-# define RGBLIGHT_ANIMATIONS
+# if defined(KEYBOARD_planck_light)
+# define RGB_DI_PIN A0
+# define RGBLED_NUM 13 // Number of LEDs
+# endif
# define RGBLIGHT_HUE_STEP 12
# define RGBLIGHT_SAT_STEP 12
# define RGBLIGHT_VAL_STEP 12
@@ -23,6 +24,9 @@
# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
# undef RGB_MATRIX_LED_PROCESS_LIMIT
# undef RGB_MATRIX_LED_FLUSH_LIMIT
+# ifdef KEYBOARD_planck_rev6
+# define DRIVER_LED_TOTAL RGBLED_NUM
+# endif
#endif
#if defined(KEYBOARD_lets_split_rev2)
@@ -34,7 +38,7 @@
#if !defined(KEYBOARD_planck_light)
# ifdef RGBLIGHT_ENABLE
# define NO_MUSIC_MODE
-# endif // RGBLIGHT_ENABLE
+# endif // RGBLIGHT_ENABLE
#else
# undef QMK_ESC_OUTPUT
# define QMK_ESC_OUTPUT E6 // usually COL
@@ -45,7 +49,7 @@
# undef QMK_SPEAKER
# define QMK_SPEAKER B5
# define SOLENOID_PIN A1
-#endif // KEYBOARD_planck_light
+#endif // KEYBOARD_planck_light
#if defined(KEYBOARD_planck)
# undef PRODUCT
@@ -58,6 +62,7 @@
# endif
#endif
+#define ENCODER_DIRECTION_FLIP
/*
* MIDI options
*/
@@ -82,26 +87,26 @@
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2
-#define FB_ERM_LRA 1 /* For ERM:0 or LRA:1*/
+#define FB_ERM_LRA 1 /* For ERM:0 or LRA:1*/
#define FB_BRAKEFACTOR 6 /* For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 */
-#define FB_LOOPGAIN 1 /* For Low:0, Medium:1, High:2, Very High:3 */
+#define FB_LOOPGAIN 1 /* For Low:0, Medium:1, High:2, Very High:3 */
/* default 3V ERM vibration motor voltage and library*/
#if FB_ERM_LRA == 0
-#define RATED_VOLTAGE 3
-#define V_RMS 2.3
-#define V_PEAK 3.30
+# define RATED_VOLTAGE 3
+# define V_RMS 2.3
+# define V_PEAK 3.30
/* Library Selection */
-#define LIB_SELECTION 4 /* For Empty:0' TS2200 library A to D:1-5, LRA Library: 6 */
+# define LIB_SELECTION 4 /* For Empty:0' TS2200 library A to D:1-5, LRA Library: 6 */
/* default 2V LRA voltage and library */
#elif FB_ERM_LRA == 1
-#define RATED_VOLTAGE 2
-#define V_RMS 2.0
-#define V_PEAK 2.85
-#define F_LRA 200
+# define RATED_VOLTAGE 2
+# define V_RMS 2.0
+# define V_PEAK 2.85
+# define F_LRA 200
/* Library Selection */
-#define LIB_SELECTION 6 /* For Empty:0' TS2200 library A to D:1-5, LRA Library: 6 */
+# define LIB_SELECTION 6 /* For Empty:0' TS2200 library A to D:1-5, LRA Library: 6 */
#endif
diff --git a/layouts/community/ortho_4x12/drashna/keymap.c b/layouts/community/ortho_4x12/drashna/keymap.c
index 1c894c764..c3899cd03 100644
--- a/layouts/community/ortho_4x12/drashna/keymap.c
+++ b/layouts/community/ortho_4x12/drashna/keymap.c
@@ -1,20 +1,3 @@
-/* Copyright 2015-2017 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 <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
#include "drashna.h"
#ifdef RGBLIGHT_ENABLE
@@ -46,6 +29,13 @@ enum planck_keycodes {
# define PLNK_4 ET_RAIS
#endif
+/*
+ * The `LAYOUT_ortho_4x12_base` macro is a template to allow the use of identical
+ * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
+ * that there is no need to set them up for each layout, and modify all of
+ * them if I want to change them. This helps to keep consistency and ease
+ * of use. K## is a placeholder to pass through the individual keycodes
+ */
// clang-format off
#define LAYOUT_ortho_4x12_base( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
@@ -54,7 +44,7 @@ enum planck_keycodes {
) \
LAYOUT_ortho_4x12_wrapper( \
KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_DEL, \
- KC_TAB, ALT_T(K11), K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \
+ LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \
KC_MLSF, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), KC_ENT, \
BACKLIT, OS_LCTL, OS_LALT, OS_LGUI, PLNK_1, PLNK_2, PLNK_3, PLNK_4, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
)
@@ -159,14 +149,14 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
#ifdef KEYBOARD_planck_ez
case TH_LVL:
if (record->event.pressed) {
- keyboard_config.led_level++;
- if (keyboard_config.led_level > 4) {
+ keyboard_config.led_level++;
+ if (keyboard_config.led_level > 4) {
keyboard_config.led_level = 0;
- }
- planck_ez_right_led_level((uint8_t)keyboard_config.led_level * 255 / 4 );
- planck_ez_left_led_level((uint8_t)keyboard_config.led_level * 255 / 4 );
- eeconfig_update_kb(keyboard_config.raw);
- layer_state_set_kb(layer_state);
+ }
+ planck_ez_right_led_level((uint8_t)keyboard_config.led_level * 255 / 4);
+ planck_ez_left_led_level((uint8_t)keyboard_config.led_level * 255 / 4);
+ eeconfig_update_kb(keyboard_config.raw);
+ layer_state_set_kb(layer_state);
}
break;
#endif
@@ -190,6 +180,31 @@ bool music_mask_user(uint16_t keycode) {
#ifdef RGB_MATRIX_ENABLE
+# ifdef KEYBOARD_planck_rev6
+// clang-format off
+led_config_t g_led_config = {
+ {
+ // Key Matrix to LED Index
+ { NO_LED, 6, NO_LED, NO_LED, 5, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 0 },
+ { NO_LED, 7, NO_LED, NO_LED, 2, NO_LED },
+ { NO_LED, 4, NO_LED, NO_LED, 3, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
+ { NO_LED, 1, NO_LED, NO_LED, 8, NO_LED }
+ }, {
+ // LED Index to Physical Position
+ {112, 39}, {148, 60}, {206, 53}, {206, 3}, {150, 3}, {74, 3}, {18, 3}, {18, 54}, {77, 60}
+ }, {
+ // LED Index to Flag
+ LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
+ LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL
+ }
+};
+// clange-format on
+# endif
+
// clang-format off
void suspend_power_down_keymap(void) {
rgb_matrix_set_suspend_state(true);
@@ -219,7 +234,7 @@ void rgb_matrix_indicators_user(void) {
rgb_matrix_config.enable
# endif
) {
- switch (biton32(layer_state)) {
+ switch (get_highest_layer(layer_state)) {
case _GAMEPAD:
rgb_matrix_layer_helper(HSV_ORANGE, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER);
break;
@@ -237,7 +252,7 @@ void rgb_matrix_indicators_user(void) {
break;
default: {
bool mods_enabled = IS_LAYER_ON(_MODS);
- switch (biton32(default_layer_state)) {
+ switch (get_highest_layer(default_layer_state)) {
case _QWERTY:
rgb_matrix_layer_helper(HSV_CYAN, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER);
break;
@@ -268,7 +283,7 @@ void rgb_matrix_indicators_user(void) {
}
}
- switch (biton32(default_layer_state)) {
+ switch (get_highest_layer(default_layer_state)) {
case _QWERTY:
rgb_matrix_set_color(is_ez ? 41 : 42, 0x00, 0xFF, 0xFF);
break;
@@ -283,7 +298,9 @@ void rgb_matrix_indicators_user(void) {
break;
}
if ((this_mod | this_osm) & MOD_MASK_SHIFT || this_led & (1 << USB_LED_CAPS_LOCK)) {
- if (!layer_state_cmp(layer_state, _ADJUST)) { rgb_matrix_set_color(24, 0x00, 0xFF, 0x00); }
+ if (!layer_state_cmp(layer_state, _ADJUST)) {
+ rgb_matrix_set_color(24, 0x00, 0xFF, 0x00);
+ }
rgb_matrix_set_color(36, 0x00, 0xFF, 0x00);
}
if ((this_mod | this_osm) & MOD_MASK_CTRL) {
@@ -320,7 +337,7 @@ void matrix_init_keymap(void) {
#ifdef ENCODER_ENABLE
void encoder_update(bool clockwise) {
- switch (biton32(layer_state)) {
+ switch (get_highest_layer(layer_state)) {
case _RAISE:
clockwise ? tap_code(KC_VOLD) : tap_code(KC_VOLU);
break;
@@ -363,7 +380,7 @@ void dip_update(uint8_t index, bool active) {
}
break;
case 2:
- keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = active;
+ keymap_config.swap_lctl_lgui = keymap_config.swap_rctl_rgui = active;
break;
case 3:
userspace_config.nuke_switch = active;
@@ -376,7 +393,7 @@ void dip_update(uint8_t index, bool active) {
layer_state_t layer_state_set_keymap(layer_state_t state) {
planck_ez_left_led_off();
planck_ez_right_led_off();
- switch (biton32(state)) {
+ switch (get_highest_layer(state)) {
case _LOWER:
planck_ez_left_led_on();
break;
diff --git a/layouts/community/ortho_4x12/drashna/rules.mk b/layouts/community/ortho_4x12/drashna/rules.mk
index d4726b7a8..38d0d4517 100644
--- a/layouts/community/ortho_4x12/drashna/rules.mk
+++ b/layouts/community/ortho_4x12/drashna/rules.mk
@@ -1,36 +1,40 @@
-BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-TAP_DANCE_ENABLE = no
-AUDIO_ENABLE = yes
+BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE = no # Mouse keys(+4700)
+EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
+TAP_DANCE_ENABLE = no
+AUDIO_ENABLE = yes
SPACE_CADET_ENABLE = no
+NKRO_ENABLE = yes
ifneq ($(strip $(KEYBOARD)), planck/rev6)
- RGBLIGHT_ENABLE = yes
- INDICATOR_LIGHTS = yes
- RGBLIGHT_TWINKLE = yes
- RGBLIGHT_STARTUP_ANIMATION = yes
+ CONSOLE_ENABLE = no
+ COMMAND_ENABLE = no
+ ifeq ($(strip $(LAYOUT_HAS_RGB)), yes)
+ RGBLIGHT_ENABLE = yes
+ endif
+ INDICATOR_LIGHTS = yes
+ RGBLIGHT_TWINKLE = yes
+ RGBLIGHT_STARTUP_ANIMATION = yes
+else
+ CONSOLE_ENABLE = yes
+ COMMAND_ENABLE = yes
+ RGBLIGHT_ENABLE = no
+ RGB_MATRIX_ENABLE = WS2812
endif
ifeq ($(strip $(KEYBOARD)), planck/light)
- RGB_MATRIX_ENABLE = yes
- RGBLIGHT_ENABLE = no
- RGBLIGHT_STARTUP_ANIMATION = no
- HAPTIC_ENABLE += SOLENOID
+ RGB_MATRIX_ENABLE = yes
+ RGBLIGHT_ENABLE = no
+ RGBLIGHT_STARTUP_ANIMATION = no
+ # HAPTIC_ENABLE += SOLENOID
endif
ifeq ($(strip $(KEYBOARD)), planck/ez)
- RGBLIGHT_ENABLE = no
- # SERIAL_LINK_ENABLE = yes
- ENCODER_ENABLE = yes
- RGB_MATRIX_ENABLE = IS31FL3737
- INDICATOR_LIGHTS = yes
- RGBLIGHT_TWINKLE = yes
- RGBLIGHT_STARTUP_ANIMATION = yes
-endif
-
-ifeq ($(strip $(PROTOCOL)), VUSB)
- NKRO_ENABLE = no
-else
- NKRO_ENABLE = yes
+ RGBLIGHT_ENABLE = no
+ # SERIAL_LINK_ENABLE = yes
+ ENCODER_ENABLE = yes
+ RGB_MATRIX_ENABLE = IS31FL3737
+ INDICATOR_LIGHTS = yes
+ RGBLIGHT_TWINKLE = yes
+ RGBLIGHT_STARTUP_ANIMATION = yes
+ CONSOLE_ENABLE = yes
+ COMMAND_ENABLE = yes
endif
diff --git a/layouts/community/ortho_4x12/jotix/keymap.c b/layouts/community/ortho_4x12/jotix/keymap.c
index 1ba235e3a..9d7727de8 100644
--- a/layouts/community/ortho_4x12/jotix/keymap.c
+++ b/layouts/community/ortho_4x12/jotix/keymap.c
@@ -4,13 +4,11 @@ enum layers {
_QWERTY,
_LOWER,
_RAISE,
- _GAME
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define TGLOWER TG(_LOWER)
-#define TGGAME TG(_GAME)
static bool is_ctl_pressed;
static bool is_esc_pressed;
@@ -20,23 +18,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = 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 ,KC_BSPC,
+ 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_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_SLSH, KC_ENT,
+ KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_ENT,
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- KC_LCTL,KC_LGUI,KC_LALT,KC_RALT, LOWER , KC_SPC, KC_SPC, RAISE ,KC_LEFT,KC_DOWN, KC_UP ,KC_RGHT
+ KC_LCTL,KC_LGUI,KC_LALT,KC_RALT,LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT,KC_DOWN,KC_UP, KC_RGHT
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
),
[_LOWER] = 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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- _______,KC_VOLD,KC_MUTE,KC_VOLU,_______, TGGAME,_______,_______,_______,_______,_______,_______,
+ _______,KC_MINS,KC_EQL, KC_LBRC,KC_RBRC,KC_BSLS,KC_MS_L,KC_MS_D,KC_MS_U,KC_MS_R,_______,_______,
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- _______,KC_MPRV,KC_MPLY,KC_MNXT,_______,_______,_______,_______,_______,_______,_______,_______,
+ _______,KC_UNDS,KC_PLUS,KC_LCBR,KC_RCBR,KC_PIPE,KC_BTN1,KC_BTN2,_______,_______,_______,_______,
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
@@ -44,61 +42,46 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_RAISE] = 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_TILD,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_DEL,
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- KC_CAPS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 ,KC_MINS, KC_EQL,KC_LBRC,KC_RBRC,KC_BSLS,
+ KC_CAPS,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_UNDS,KC_PLUS,KC_LCBR,KC_RCBR,KC_PIPE,
+ _______,KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_UNDS,KC_PLUS,KC_LCBR,KC_RCBR,KC_PIPE,
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
_______,_______,_______,_______,TGLOWER,_______,_______,_______,KC_HOME,KC_PGDN,KC_PGUP, KC_END
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
),
-[_GAME] = LAYOUT_ortho_4x12 (
-// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
- _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
-// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,
-// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, KC_UP ,_______,
-// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
- _______,_______,_______,_______,_______,_______,_______,_______,KC_SLSH,KC_LEFT,KC_DOWN,KC_RGHT
-// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
-),
-
};
uint32_t layer_state_set_user(uint32_t state) {
#ifdef JOTANCK_LEDS
- switch (biton32(state)) {
- case _LOWER:
- writePinHigh(JOTANCK_LED1);
- writePinLow(JOTANCK_LED2);
- break;
- case _RAISE:
- writePinLow(JOTANCK_LED1);
- writePinHigh(JOTANCK_LED2);
- break;
- case _GAME:
+ if (biton32(state) == _LOWER) {
writePinHigh(JOTANCK_LED1);
- writePinHigh(JOTANCK_LED2);
- break;
- default:
+ } else {
writePinLow(JOTANCK_LED1);
- writePinLow(JOTANCK_LED2);
- break;
- };
+ }
#endif
return state;
}
-/*
-void led_set_user(uint8_t usb_led) {
- if (!(IS_LED_ON(usb_led, USB_LED_NUM_LOCK))) {
+bool led_update_user(led_t led_state) {
+
+ // NumLock allways on
+ if (!led_state.num_lock) {
tap_code(KC_NUMLOCK);
}
+
+ #ifdef JOTANCK_LEDS
+ // CapsLock led
+ if (led_state.caps_lock) {
+ writePinHigh(JOTANCK_LED2);
+ } else {
+ writePinLow(JOTANCK_LED2);
+ }
+ #endif
+ return true;
}
-*/
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
diff --git a/layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c b/layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c
index b1341d41f..07bc15c2a 100644
--- a/layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c
+++ b/layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c
@@ -1,5 +1,4 @@
-
-// generated from users/manna-harbour_miryoku/miryoku.org
+// generated from users/manna-harbour_miryoku/miryoku.org -*- buffer-read-only: t -*-
#define LAYOUT_miryoku(\
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
diff --git a/layouts/community/ortho_5x12/drashna/keymap.c b/layouts/community/ortho_5x12/drashna/keymap.c
index 86a78336c..0ee9dfb10 100644
--- a/layouts/community/ortho_5x12/drashna/keymap.c
+++ b/layouts/community/ortho_5x12/drashna/keymap.c
@@ -1,24 +1,12 @@
-/* Copyright 2015-2017 Jack Humbert
- * Modified by KeyPCB for the Fractal keyboard
- * Backlight isn't on the Fractal, so I've removed the keycode from the keymaps
- *
- * 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
#include "drashna.h"
+/*
+ * The `LAYOUT_ortho_5x12_base` macro is a template to allow the use of identical
+ * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
+ * that there is no need to set them up for each layout, and modify all of
+ * them if I want to change them. This helps to keep consistency and ease
+ * of use. K## is a placeholder to pass through the individual keycodes
+ */
// clang-format off
#define LAYOUT_ortho_5x12_base( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
@@ -27,9 +15,9 @@
K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A \
) \
LAYOUT_ortho_5x12_wrapper( \
- KC_GRV, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \
- KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_BSPC, \
- KC_ESC, ALT_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, K2A, RALT_T(KC_QUOT), \
+ KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \
+ LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_BSPC, \
+ KC_C1R3, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, RALT_T(KC_QUOT), \
KC_MLSF, CTL_T(K31), K32, K33, K34, K35, K36, K37, K38, K39, RCTL_T(K3A), KC_ENT, \
KC_NO, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
)
diff --git a/layouts/community/ortho_5x12/drashna/rules.mk b/layouts/community/ortho_5x12/drashna/rules.mk
index 75affedd1..cae4b27ba 100644
--- a/layouts/community/ortho_5x12/drashna/rules.mk
+++ b/layouts/community/ortho_5x12/drashna/rules.mk
@@ -5,16 +5,12 @@ CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = no # Commands for debug and configuration
TAP_DANCE_ENABLE = no
AUDIO_ENABLE = yes
-ifeq ($(strip $(KEYBOARD)), fractal)
- RGB_MATRIX_ENABLE = no
- AUDIO_ENABLE = yes
- RGBLIGHT_ENABLE = yes
- RGBLIGHT_TWINKLE = yes
- BOOTLOADER = qmk-dfu
-endif
-
-ifeq ($(strip $(PROTOCOL)), VUSB)
-NKRO_ENABLE = no
-else
NKRO_ENABLE = yes
+
+ifeq ($(strip $(KEYBOARD)), fractal)
+ RGB_MATRIX_ENABLE = no
+ AUDIO_ENABLE = yes
+ RGBLIGHT_ENABLE = yes
+ RGBLIGHT_TWINKLE = yes
+ BOOTLOADER = qmk-dfu
endif