summaryrefslogtreecommitdiff
path: root/layouts
diff options
context:
space:
mode:
Diffstat (limited to 'layouts')
-rw-r--r--layouts/community/60_ansi/mechmerlin-ansi/keymap.c10
-rw-r--r--layouts/community/60_ansi/stanrc85-ansi/config.h4
-rw-r--r--layouts/community/60_ansi/stanrc85-ansi/keymap.c35
-rw-r--r--layouts/community/60_ansi/stanrc85-ansi/readme.md50
-rw-r--r--layouts/community/60_ansi/stanrc85-ansi/rules.mk11
-rw-r--r--layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c10
-rw-r--r--layouts/community/66_ansi/mechmerlin/config.h11
-rw-r--r--layouts/community/66_ansi/mechmerlin/keymap.c14
-rw-r--r--layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c14
-rw-r--r--layouts/community/ergodox/drashna/keymap.c16
-rw-r--r--layouts/community/ergodox/drashna_glow/README.md1
-rw-r--r--layouts/community/ergodox/drashna_glow/config.h11
-rw-r--r--layouts/community/ergodox/drashna_glow/keymap.c65
-rw-r--r--layouts/community/ergodox/dvorak_programmer_swe/keymap.c29
-rw-r--r--layouts/community/ergodox/dvorak_programmer_swe/readme.md31
-rw-r--r--layouts/community/ergodox/familiar/README.md69
-rw-r--r--layouts/community/ergodox/familiar/keymap.c281
-rw-r--r--layouts/community/ergodox/nstickney/keymap.c213
-rw-r--r--layouts/community/ergodox/nstickney/rules.mk (renamed from layouts/community/ergodox/familiar/rules.mk)0
-rw-r--r--layouts/community/numpad_5x6/bjohnson/config.h25
-rw-r--r--layouts/community/numpad_5x6/bjohnson/keymap.c51
-rw-r--r--layouts/community/numpad_5x6/bjohnson/rules.mk5
-rw-r--r--layouts/community/numpad_5x6/drashna/config.h18
-rw-r--r--layouts/community/numpad_5x6/drashna/keymap.c22
-rw-r--r--layouts/community/numpad_5x6/drashna/rules.mk9
-rw-r--r--layouts/community/numpad_5x6/layout.json6
-rw-r--r--layouts/community/numpad_5x6/readme.md3
-rw-r--r--layouts/community/ortho_4x12/bakingpy/config.h1
-rw-r--r--layouts/community/ortho_4x12/bakingpy/rules.mk7
-rw-r--r--layouts/community/ortho_4x12/drashna/config.h10
-rw-r--r--layouts/community/ortho_4x12/drashna/keymap.c39
-rw-r--r--layouts/community/ortho_4x12/drashna/rules.mk2
-rw-r--r--layouts/community/ortho_4x12/jotix/keymap.c77
-rw-r--r--layouts/community/ortho_4x12/jotix/readme.md4
-rw-r--r--layouts/community/ortho_4x12/jotix2/keymap.c87
-rw-r--r--layouts/community/ortho_4x12/jotix2/readme.md8
-rw-r--r--layouts/community/ortho_4x12/symbolic/README.md23
-rw-r--r--layouts/community/ortho_4x12/symbolic/config.h3
-rw-r--r--layouts/community/ortho_4x12/symbolic/keymap.c138
-rw-r--r--layouts/community/ortho_4x4/jotix/keymap.c4
40 files changed, 753 insertions, 664 deletions
diff --git a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c
index 12ed686802..b3c74da949 100644
--- a/layouts/community/60_ansi/mechmerlin-ansi/keymap.c
+++ b/layouts/community/60_ansi/mechmerlin-ansi/keymap.c
@@ -10,11 +10,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_FNX, KC_RALT, KC_RGUI, KC_RCTL),
[_FL] = LAYOUT_60_ansi(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, \
- RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, \
+ BL_TOGG, BL_INC, BL_DEC, BL_STEP, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
+ VLK_TOG, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, \
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_AL] = LAYOUT_60_ansi(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
diff --git a/layouts/community/60_ansi/stanrc85-ansi/config.h b/layouts/community/60_ansi/stanrc85-ansi/config.h
deleted file mode 100644
index 904a7f524e..0000000000
--- a/layouts/community/60_ansi/stanrc85-ansi/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define TAPPING_TERM 200
-#define RETRO_TAPPING
diff --git a/layouts/community/60_ansi/stanrc85-ansi/keymap.c b/layouts/community/60_ansi/stanrc85-ansi/keymap.c
index d8d79a581c..ce41c0d4d9 100644
--- a/layouts/community/60_ansi/stanrc85-ansi/keymap.c
+++ b/layouts/community/60_ansi/stanrc85-ansi/keymap.c
@@ -14,32 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-
-#define DEFAULT 0 //Custom ANSI
-#define LAYER1 1 //Default ANSI (enable with Fn2+D)
-#define LAYER2 2 //Function keys, arrows, custom shortcuts, volume control
-#define LAYER3 3 //RGB Underglow controls and RESET
-
-//Aliases for longer keycodes
-#define KC_CAD LALT(LCTL(KC_DEL))
-#define KC_LOCK LGUI(KC_L)
-#define CA_QUOT LCA(KC_QUOT)
-#define CA_SCLN LCA(KC_SCLN)
-#define KC_CTLE LCTL_T(KC_ESC)
-#define LT_SPCF LT(2, KC_SPC)
-#define TD_TESC TD(TD_ESC)
-#define TD_TWIN TD(TD_WIN)
-
-//Tap Dance Declarations
-enum {
- TD_WIN = 0,
- TD_ESC
-};
-
-qk_tap_dance_action_t tap_dance_actions[] = {
- [TD_WIN] = ACTION_TAP_DANCE_DOUBLE(KC_CAD, KC_LOCK),
- [TD_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_GRV)
-};
+#include "stanrc85.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_60_ansi(
@@ -47,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 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_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, LT_SPCF, KC_RALT, TD_TWIN, MO(3), KC_RCTL),
+ KC_LCTL, KC_LGUI, KC_LALT, LT_SPCF, KC_RALT, TD_TWIN, MO(3), TD_TCTL),
[1] = LAYOUT_60_ansi(
KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
@@ -58,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[2] = LAYOUT_60_ansi(
KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, RESET,
+ _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, KC_INS,
KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______),
@@ -66,11 +41,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[3] = LAYOUT_60_ansi(
_______, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, RGB_SAI, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET,
- _______, _______, _______, TG(1), _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ TG(1), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______)
};
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
return true;
}
diff --git a/layouts/community/60_ansi/stanrc85-ansi/readme.md b/layouts/community/60_ansi/stanrc85-ansi/readme.md
index 2df5588af7..6b5b3ca9ff 100644
--- a/layouts/community/60_ansi/stanrc85-ansi/readme.md
+++ b/layouts/community/60_ansi/stanrc85-ansi/readme.md
@@ -1,14 +1,48 @@
-# Stanrc85's Standard ANSI 60% Layout
+<!-- Copyright 2019 Stanrc85
+
+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.
-Shared keymap between two 60% PCB:
-- 1upkeyboards60HSE
-- DZ60 (hotswap)
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.-->
+
+# Stanrc85's Standard ANSI 60% Layout
## Keymap Notes
-- Layer 0 is custom ANSI layout with SpaceFN, CTRL/ESC on CAPS, Tap Dance on Fn1 key for CTRL+ALT+DEL and WIN+L
-- Layer 1 is default ANSI (enable with Fn2+D)
-- Layer 2 is F keys, arrows, volume controls and custom shortcuts for AHK
-- Layer 3 is RGB Underglow control and RESET
+- Layer 0 is default QWERTY layout with additional custom features:
+ - SpaceFN to function layer 2 on `Space`
+ - `CTRL` when held and `ESC` when tapped on `CAPS LOCK`
+ - Tap Dance on `Fn1` for `CTRL+ALT+DEL` and `WIN+L`
+ - Tap Dance on `ESC` for `ESC` and ` ` `
+
+![Base QWERTY Layer](https://imgur.com/lGcyLJx.png)
+
+- Layer 1 is default QWERTY with no custom features used mostly for gaming
+ - Enabled by `Fn2+CAPS` from base layer
+
+![Default ANSI Layer](https://imgur.com/M7T9PNT.png)
+
+- Layer 2 is Function layer:
+ - F keys
+ - Arrows
+ - Volume and Media controls
+ - AutoHotkey shortcuts based on [Speaker Control](https://github.com/stanrc85/Speaker-Control) script
+ - AHK Mic is used to mute/unmute microphone
+ - AHK Speaker switches audio output between headphones and speakers
+
+![Function Layer](https://imgur.com/YPl0JrU.png)
+
+- Layer 3 is RGB control and RESET
+ - `Fn2+CAPS` used to toggle Default QWERTY layer on and off
+
+![RGB and RESET Layer](https://imgur.com/8K7gSgh.png)
### Build
To build the firmware file associated with this keymap, simply run `make your_keyboard:stanrc85-ansi`.
diff --git a/layouts/community/60_ansi/stanrc85-ansi/rules.mk b/layouts/community/60_ansi/stanrc85-ansi/rules.mk
index 324e52674d..89d03e8c1f 100644
--- a/layouts/community/60_ansi/stanrc85-ansi/rules.mk
+++ b/layouts/community/60_ansi/stanrc85-ansi/rules.mk
@@ -1,10 +1 @@
-TAP_DANCE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-BACKLIGHT_ENABLE = no
-COMMAND_ENABLE = no
-BOOTMAGIC_ENABLE = no
-MOUSEKEY_ENABLE = no
-AUDIO_ENABLE = no
-CONSOLE_ENABLE = no
-NKRO_ENABLE = no
+USER_NAME := stanrc85
diff --git a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c
index 96c3a32f26..98ba86e941 100644
--- a/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c
+++ b/layouts/community/60_ansi_split_bs_rshift/mechmerlin-split/keymap.c
@@ -10,11 +10,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(1), KC_RALT, KC_RGUI, KC_RCTL),
[_FL] = LAYOUT_60_ansi_split_bs_rshift(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, \
- RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, \
+ BL_TOGG, BL_INC, BL_DEC, BL_STEP, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
+ VLK_TOG, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, \
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_AL] = LAYOUT_60_ansi_split_bs_rshift(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
diff --git a/layouts/community/66_ansi/mechmerlin/config.h b/layouts/community/66_ansi/mechmerlin/config.h
index f51361866c..6f70f09bee 100644
--- a/layouts/community/66_ansi/mechmerlin/config.h
+++ b/layouts/community/66_ansi/mechmerlin/config.h
@@ -1,12 +1 @@
#pragma once
-
-#ifdef AUDIO_CLICKY
- #define AUDIO_CLICKY_ON
- #define AUDIO_CLICKY_FREQ_DEFAULT 261.63f
- #define AUDIO_CLICKY_FREQ_MIN 65.41f
- #define AUDIO_CLICKY_FREQ_MAX 1046.5f
- //#define AUDIO_CLICKY_FREQ_FACTOR 1.18921f
- //#define AUDIO_CLICKY_FREQ_FACTOR 2.71828f // e
- #define AUDIO_CLICKY_FREQ_FACTOR 1.61803f // golden ratio
- #define AUDIO_CLICKY_FREQ_RANDOMNESS 17.0f
-#endif
diff --git a/layouts/community/66_ansi/mechmerlin/keymap.c b/layouts/community/66_ansi/mechmerlin/keymap.c
index ea2e923b1c..9f041e27ca 100644
--- a/layouts/community/66_ansi/mechmerlin/keymap.c
+++ b/layouts/community/66_ansi/mechmerlin/keymap.c
@@ -8,20 +8,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_GESC,KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSLS, KC_PGDN, \
KC_CTCP,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, 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_RSFT, KC_UP, \
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \
KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, MO(_FL),KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT),
[_FL] = LAYOUT_66_ansi(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_VOLU, \
- _______,_______,_______,_______,_______,_______,_______,_______,_______,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_MUTE, KC_VOLD, \
+ _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, KC_VOLD, \
_______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \
- _______, _______,_______,_______,_______,_______,_______,KC_MUTE,KC_VOLU,KC_VOLD,_______, _______, KC_PGUP, \
+ _______, _______,_______,_______,_______,_______,_______,KC_MUTE,KC_VOLD,KC_VOLU,_______, _______, KC_PGUP, \
_______,_______,_______, _______, _______,_______,_______,KC_HOME,KC_PGDN,KC_END),
[_CL] = LAYOUT_66_ansi(
BL_STEP,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, _______, RGB_VAI, \
- RGB_TOG,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, \
- CK_TOGG,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \
- _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, \
- _______,_______,_______, RGB_MOD, _______,_______,_______,RGB_HUD,RGB_SAD,RGB_HUI),
+ BL_TOGG,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, \
+ RGB_TOG,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \
+ VLK_TOG, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, \
+ CK_TOGG,_______,_______, RGB_MOD, _______,_______,_______,RGB_HUD,RGB_SAD,RGB_HUI),
};
diff --git a/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c b/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c
index e7b8951626..f785cdf3fd 100644
--- a/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c
+++ b/layouts/community/75_ansi/mechmerlin-75_ansi/keymap.c
@@ -9,13 +9,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
[_FL] = LAYOUT_75_ansi(\
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END)
+ RESET, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ BL_TOGG, BL_INC, BL_DEC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ VLK_TOG, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END)
};
diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c
index e0100de8f1..428706e2d5 100644
--- a/layouts/community/ergodox/drashna/keymap.c
+++ b/layouts/community/ergodox/drashna/keymap.c
@@ -360,15 +360,15 @@ void matrix_scan_keymap(void) { // runs frequently to update info
// Since we're not using the LEDs here for layer indication anymore,
// then lets use them for modifier indicators. Shame we don't have 4...
// Also, no "else", since we want to know each, independently.
- if (modifiers & MODS_SHIFT_MASK || led_usb_state & (1<<USB_LED_CAPS_LOCK) || one_shot & MODS_SHIFT_MASK) {
+ if ( ( modifiers | one_shot ) & MOD_MASK_SHIFT || led_usb_state & (1<<USB_LED_CAPS_LOCK) ) {
ergodox_right_led_2_on();
ergodox_right_led_2_set( 50 );
}
- if (modifiers & MODS_CTRL_MASK || one_shot & MODS_CTRL_MASK) {
+ if ( ( modifiers | one_shot ) & MOD_MASK_CTRL) {
ergodox_right_led_1_on();
ergodox_right_led_1_set( 10 );
}
- if (modifiers & MODS_ALT_MASK || one_shot & MODS_ALT_MASK) {
+ if ( ( modifiers | one_shot ) & MOD_MASK_ALT) {
ergodox_right_led_3_on();
ergodox_right_led_3_set( 10 );
}
@@ -414,7 +414,7 @@ void rgb_matrix_layer_helper (uint8_t red, uint8_t green, uint8_t blue) {
}
void rgb_matrix_indicators_user(void) {
- if (g_suspend_state || !rgb_matrix_config.enable || !userspace_config.rgb_layer_change) return;
+ if (g_suspend_state || !rgb_matrix_config.enable || !userspace_config.rgb_layer_change) { return; }
switch (biton32(layer_state)) {
case _MODS:
@@ -464,20 +464,20 @@ void rgb_matrix_indicators_user(void) {
}
}
#if 0
- if (this_mod & MODS_SHIFT_MASK || this_led & (1<<USB_LED_CAPS_LOCK) || this_osm & MODS_SHIFT_MASK) {
+ if (this_mod & MOD_MASK_SHIFT || this_led & (1<<USB_LED_CAPS_LOCK) || this_osm & MOD_MASK_SHIFT) {
rgb_matrix_set_color(24, 0x00, 0xFF, 0x00);
rgb_matrix_set_color(36, 0x00, 0xFF, 0x00);
}
- if (this_mod & MODS_CTRL_MASK || this_osm & MODS_CTRL_MASK) {
+ if (this_mod & MOD_MASK_CTRL || this_osm & MOD_MASK_CTRL) {
rgb_matrix_set_color(25, 0xFF, 0x00, 0x00);
rgb_matrix_set_color(34, 0xFF, 0x00, 0x00);
rgb_matrix_set_color(37, 0xFF, 0x00, 0x00);
}
- if (this_mod & MODS_GUI_MASK || this_osm & MODS_GUI_MASK) {
+ if (this_mod & MOD_MASK_GUI || this_osm & MOD_MASK_GUI) {
rgb_matrix_set_color(39, 0xFF, 0xD9, 0x00);
}
- if (this_mod & MODS_ALT_MASK || this_osm & MODS_ALT_MASK) {
+ if (this_mod & MOD_MASK_ALT || this_osm & MOD_MASK_ALT) {
rgb_matrix_set_color(38, 0x00, 0x00, 0xFF);
}
#endif
diff --git a/layouts/community/ergodox/drashna_glow/README.md b/layouts/community/ergodox/drashna_glow/README.md
deleted file mode 100644
index 7d625a258d..0000000000
--- a/layouts/community/ergodox/drashna_glow/README.md
+++ /dev/null
@@ -1 +0,0 @@
-Note: This board will not flash if the "g_rgb_leds" const is not set to weak in the ergodox_ez.c file
diff --git a/layouts/community/ergodox/drashna_glow/config.h b/layouts/community/ergodox/drashna_glow/config.h
index 197acbc4a0..cdca5ba4b5 100644
--- a/layouts/community/ergodox/drashna_glow/config.h
+++ b/layouts/community/ergodox/drashna_glow/config.h
@@ -8,4 +8,15 @@
#undef DEBOUNCE
#define DEBOUNCE 5
+#ifdef RGB_MATRIX_ENABLE
// #define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot)
+// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened)
+// #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
+#define RGB_DISABLE_WHEN_USB_SUSPENDED true// turn off effects when suspended
+// #define RGB_MATRIX_SKIP_FRAMES 1 // number of frames to skip when displaying animations (0 is full effect) if not defined defaults to 1
+// #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
+// #define EECONFIG_RGB_MATRIX (uint32_t *)16
+#endif
+
+#undef DEBOUNCE
+#define DEBOUNCE 1
diff --git a/layouts/community/ergodox/drashna_glow/keymap.c b/layouts/community/ergodox/drashna_glow/keymap.c
index f2fb665453..7d4bdbec50 100644
--- a/layouts/community/ergodox/drashna_glow/keymap.c
+++ b/layouts/community/ergodox/drashna_glow/keymap.c
@@ -1,67 +1,2 @@
/* placeholder file */
#include QMK_KEYBOARD_H
-
-const rgb_led g_rgb_leds[DRIVER_LED_TOTAL] = {
-
- /*{row | col << 4}
- | {x=0..224, y=0..64}
- | | modifier
- | | | */
- {{0|(0<<4)}, {24.9*5, 16*0}, 0}, // LED 1 on right
- {{0|(1<<4)}, {24.9*6, 16*0}, 0}, // LED 2
- {{0|(2<<4)}, {24.9*7, 16*0}, 0}, // LED 3
- {{0|(3<<4)}, {24.9*8, 16*0}, 0}, // LED 4
- {{0|(4<<4)}, {24.9*9, 16*0}, 0}, // LED 5
-
- {{1|(5<<4)}, {24.9*5, 16*1}, 0}, // LED 6
- {{1|(6<<4)}, {24.9*6, 16*1}, 0}, // LED 7
- {{1|(7<<4)}, {24.9*7, 16*1}, 0}, // LED 8
- {{1|(8<<4)}, {24.9*8, 16*1}, 0}, // LED 9
- {{1|(9<<4)}, {24.9*9, 16*1}, 0}, // LED 10
-
- {{2|(5<<4)}, {24.9*5, 16*2}, 0}, // LED 11
- {{2|(6<<4)}, {24.9*6, 16*2}, 0}, // LED 12
- {{2|(7<<4)}, {24.9*7, 16*2}, 0}, // LED 13
- {{2|(8<<4)}, {24.9*8, 16*2}, 0}, // LED 14
- {{2|(9<<4)}, {24.9*9, 16*2}, 0}, // LED 15
-
- {{3|(5<<4)}, {24.9*5, 16*2}, 0}, // LED 16
- {{3|(6<<4)}, {24.9*6, 16*2}, 0}, // LED 17
- {{3|(7<<4)}, {24.9*7, 16*2}, 0}, // LED 18
- {{3|(8<<4)}, {24.9*8, 16*2}, 0}, // LED 19
- {{3|(9<<4)}, {24.9*9, 16*2}, 0}, // LED 20
-
- {{4|(6<<4)}, {24.9*6, 16*2}, 1}, // LED 21
- {{4|(7<<4)}, {24.9*7, 16*2}, 1}, // LED 22
- {{4|(8<<4)}, {24.9*8, 16*2}, 1}, // LED 23
- {{4|(9<<4)}, {24.9*9, 16*2}, 1}, // LED 24
-
- {{0|(0<<4)}, {24.9*4, 16*0}, 0}, // LED 1 on left
- {{0|(1<<4)}, {24.9*3, 16*0}, 0}, // LED 2
- {{0|(2<<4)}, {24.9*2, 16*0}, 0}, // LED 3
- {{0|(3<<4)}, {24.9*1, 16*0}, 0}, // LED 4
- {{0|(4<<4)}, {24.9*0, 16*0}, 0}, // LED 5
-
- {{1|(5<<4)}, {24.9*4, 16*1}, 0}, // LED 6
- {{1|(6<<4)}, {24.9*3, 16*1}, 0}, // LED 7
- {{1|(7<<4)}, {24.9*2, 16*1}, 0}, // LED 8
- {{1|(8<<4)}, {24.9*1, 16*1}, 0}, // LED 9
- {{1|(9<<4)}, {24.9*0, 16*1}, 0}, // LED 10
-
- {{2|(5<<4)}, {24.9*4, 16*2}, 0}, // LED 11
- {{2|(6<<4)}, {24.9*3, 16*2}, 0}, // LED 12
- {{2|(7<<4)}, {24.9*2, 16*2}, 0}, // LED 13
- {{2|(8<<4)}, {24.9*1, 16*2}, 0}, // LED 14
- {{2|(9<<4)}, {24.9*0, 16*2}, 0}, // LED 15
-
- {{3|(5<<4)}, {24.9*4, 16*2}, 0}, // LED 16
- {{3|(6<<4)}, {24.9*3, 16*2}, 0}, // LED 17
- {{3|(7<<4)}, {24.9*2, 16*2}, 0}, // LED 18
- {{3|(8<<4)}, {24.9*1, 16*2}, 0}, // LED 19
- {{3|(9<<4)}, {24.9*0, 16*2}, 0}, // LED 20
-
- {{4|(6<<4)}, {24.9*3, 16*2}, 1}, // LED 21
- {{4|(7<<4)}, {24.9*2, 16*2}, 1}, // LED 22
- {{4|(8<<4)}, {24.9*1, 16*2}, 1}, // LED 23
- {{4|(9<<4)}, {24.9*0, 16*2}, 1}, // LED 24
-};
diff --git a/layouts/community/ergodox/dvorak_programmer_swe/keymap.c b/layouts/community/ergodox/dvorak_programmer_swe/keymap.c
index 43efc763d1..41beeb7e5f 100644
--- a/layouts/community/ergodox/dvorak_programmer_swe/keymap.c
+++ b/layouts/community/ergodox/dvorak_programmer_swe/keymap.c
@@ -2,8 +2,9 @@
#include "debug.h"
#include "action_layer.h"
#include "version.h"
-#include "keymap_nordic.h"
-#include "keymap_norwegian.h"
+#include "keymap_swedish.h"
+//#include "keymap_nordic.h"
+//#include "keymap_norwegian.h"
#define BASE 0 // default layer
#define SYMB 1 // symbols
@@ -44,10 +45,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| LT2 | | LT2 |------+------+------+------+------+--------|
* | LShift | Ö | Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | CTRL | L1 |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 |
+ * | CTRL | L1 |Alt | Left | Right| | Up | Down | [ | ] | ~L1 |
* `----------------------------------' `----------------------------------'
* ,-------------. ,-------------.
- * | App | LGui | | Alt |Ctrl/Esc|
+ * | App | LGui | | AltShf|Ctrl/Esc|
* ,------|------|------| |------+--------+------.
* | | | Home | | PgUp | | |
* | Space|Backsp|------| |------| Tab |Enter |
@@ -62,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_DELT, NO_MINS, KC_COMM, KC_DOT, KC_P, KC_Y, TG(SYMB),
KC_LGUI, KC_A, KC_O, KC_E, KC_U, KC_I,
KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, TG(MDIA),
- CTL_T(KC_NO), MO(SYMB), LALT(KC_LSFT), KC_LEFT,KC_RGHT,
+ CTL_T(KC_NO), MO(SYMB), KC_LALT, KC_LEFT,KC_RGHT,
ALT_T(KC_APP), KC_LGUI,
KC_HOME,
KC_SPC,KC_BSPC,KC_END,
@@ -72,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_D, KC_H, KC_T, KC_N, KC_S, NO_AE,
TG(MDIA),KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT,
KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, TT(SYMB),
- KC_LALT, CTL_T(KC_ESC),
+ LALT(KC_LSFT), CTL_T(KC_ESC),
KC_PGUP,
KC_PGDN,KC_TAB, KC_ENT
),
@@ -85,7 +86,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | | # | ( | ) | \ | / |------| |------| > | 4 | 5 | 6 | + | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | UND | CUT | COP | PAS | | | | ? | 1 | 2 | 3 | % | |
+ * | | ~ | UND | CUT | COP | PAS | | | | ? | 1 | 2 | 3 | % | |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | | | | | | | . | 0 | = | | |
* `----------------------------------' `----------------------------------'
@@ -103,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
KC_TRNS, NO_AT, ALGR(KC_7), ALGR(KC_0), NO_LBRC, NO_RBRC, KC_TRNS,
KC_TRNS, KC_HASH, NO_LPRN, NO_RPRN, ALGR(KC_MINS), NO_SLSH,
- KC_TRNS, KC_TRNS, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_TRNS,
+ KC_TRNS, NO_TILD, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS,KC_TRNS,
KC_TRNS,
@@ -165,11 +166,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* ,--------------------------------------------------. ,--------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | Save |Build |Debug | | | | | | bool | int |string| dec | Todo | |
+ * | | Save |Build |Debug |PrtScr| $ | | | | bool | int |string| dec | Todo | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | |------| |------| priv | publ |shared| prot | | |
+ * | | ´ | ' | | | | £ |------| |------| priv | publ |shared| prot | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | const| dim |return|nothin| | |
+ * | | | | | | £ | | | | const| dim |return|nothin| | |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | | | | | | | | | | | |
* `----------------------------------' `----------------------------------'
@@ -184,9 +185,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// MEDIA AND MOUSE
[DEVL] = LAYOUT_ergodox(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, M(MACRO_SAVE), M(MACRO_BUILD), M(MACRO_DEBUG), KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, M(MACRO_SAVE), M(MACRO_BUILD), M(MACRO_DEBUG), KC_PSCR, ALGR(KC_4), KC_TRNS,
+ KC_TRNS, NO_ACUT, NO_APOS, NO_PIPE, KC_TRNS, ALGR(KC_3),
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, ALGR(KC_5), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS,
KC_TRNS,
diff --git a/layouts/community/ergodox/dvorak_programmer_swe/readme.md b/layouts/community/ergodox/dvorak_programmer_swe/readme.md
index 552fa0e3ab..3bedf50d74 100644
--- a/layouts/community/ergodox/dvorak_programmer_swe/readme.md
+++ b/layouts/community/ergodox/dvorak_programmer_swe/readme.md
@@ -13,14 +13,43 @@ TODO:
Known issues:
* Keymap 2 modifier has not gotten its place yet..
-* Print screen, where?
## Changelog
+* 2019-03-11
+ * Added currency $, £, € to keymap 3
+ * Added pipe character to keymap 3
+ * Added the acute accent character to keymap 3
+
+* 2019-03-08
+ * Switched position on Alt and Alt-shift
+ * Added tilde character to symbol layer
+ * Added Print Screen to keymap 3
+ * Added ' (NO_APOS) to keymap 3
+ * Added how to install help in this readme
* 2017-05-16
* Initial release
+
+# How to install - reminder
+0. Docs: https://docs.qmk.fm/#/newbs
+1. Download flashing tool - teensy (from ergodox-ez visual designer)
+2. Setup build environment: https://docs.qmk.fm/#/newbs_getting_started
+
+QUICK HOWTO WSL: (this is not supported anymore it seems, why?)
+The Toolchain setup is done through the Windows Subsystem for Linux, and the process is fully automated. If you want to do everything manually, there are no other instructions than the scripts themselves, but you can always open issues and ask for more information.
+Open "Bash On Ubuntu On Windows" from the start menu.
+Go to the directory where you cloned qmk_firmware. Note that the paths start with /mnt/ in the WSL, so you have to write for example cd /mnt/c/path/to/qmk_firmware.
+Run util/wsl_install.sh and follow the on-screen instructions.
+Close the Bash command window, and re-open it.
+You are ready to compile and flash the firmware!
+
+3. Build the firmware with:
+Run the following in the root qmk folder:
+make KEYBOARD=ergodox_ez KEYMAP=dvorak_programmer_swe
+
+
# Author
Christian Westerlund
cwesterlund @ github
diff --git a/layouts/community/ergodox/familiar/README.md b/layouts/community/ergodox/familiar/README.md
deleted file mode 100644
index 8d68af21a3..0000000000
--- a/layouts/community/ergodox/familiar/README.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# ErgoDox Familiar Layout
-Familiar layout for those who regularly switch back and forth from ErgoDox to "normal" QWERTY.
-
-[![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](../../../../license_GPLv3.md) [![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg)](https://github.com/RichardLitt/standard-readme)
-
-## Table of Contents
-
-- [Background](#background)
-- [Install](#install)
-- [Usage](#usage)
- - [Layers](#layers)
-- [Contribute](#contribute)
- - [Issues](#issues)
-- [License](#license)
-
-## Background
-
-This layout is built to be as familiar as possible for users coming directly from a default (QWERTY US) keyboard, while gaining as much advantage as possible from the ErgoDox and QMK featureset. I use an ErgoDoxEZ at home, but I don't have a regular office (CS grad student) so I regularly use either my laptop or a default-setup lab computer; I context switch daily so this layout is meant to reduce the mental overhead as much as possible.
-
-The default ErgoDoxEZ layout is probably more optimized as a solo daily driver - as are a lot of the others available keymaps. The focus of this layout is to get as much from the 'Dox as possible without overly disrupting long-established muscle memory.
-
-Key features of the familiar layout:
-1. QWERTY default layout.
-1. International symbols layer, mapped in the US-International layout default positions, through [UCIS](https://github.com/qmk/qmk_firmware/wiki/Unicode-and-additional-language-support#ucis_enable).
-1. Numpad layer on right hand.
-1. Thumb cluster holds spacebar and access to secondary layers.
-1. Function-layer arrow keys in both the first-person-shooter (actually ESDF instead of WASD) and vim (HJKL) locations.
-
-## Install
-
-If you are on Windows or Mac, choose the proper line in [`keymap.c`](keymap.c) for [unicode/international character support](https://github.com/qmk/qmk_firmware/wiki/Unicode-and-additional-language-support#ucis_enable) (starts at line 253).
-```c
-void matrix_init_user(void) {
- set_unicode_input_mode(UC_LNX); // Linux
- //set_unicode_input_mode(UC_OSX); // Mac OSX
- //set_unicode_input_mode(UC_WIN); // Windows (with registry key, see wiki)
- //set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
-};
-```
-
-For instructions on building and installing this keymap, [go to the wiki](https://github.com/qmk/qmk_firmware/tree/master/keyboards/ergodox#build-dependencies). Below is the command for me; it may be different for you.
-```sh
-$ make ergodox-ez-familiar-teensy
-```
-
-## Usage
-
-[![Familiar Layout](http://i.imgur.com/6nLN9UT.png)](https://gist.github.com/nstickney/13508a9f99cff381d58b7be6f7dcc644)
-
-### Layers
-1. Base Layer: QWERTY, with arrow keys at bottom right.
-1. UCIS Layer: US-International symbols layer, plus —. Accessed by toggling the `SYMB` layer using the UCIS key (bottom of left thumb cluster).
-1. UCIS-Shifted Layer: Making shift work for UCIS characters. An ugly workaround. Any ideas? Accessed by holding shift while the `SYMB` layer is active (toggles the `CSYM` layer).
-1. Numpad Layer: Right hand number pad. Accessed by toggling the `NUMP` layer using the NUMP key (bottom of right thumb cluster).
-1. Function Layer: F1-F12, arrows on ESDF and HJKL, media player controls. Accessed by holding either FN key (center key of each thumb cluster), which toggles the `ARRW` layer. I know, I need to work on my naming conventions.
-
-## Contribute
-
-[Contributor Covenant](http://contributor-covenant.org/)
-
-I'm terrible at this; I have no background in human-computer interaction, kinesiology, or keyboard-ology. Please send comments/issues/pull requests/angry tweets/etc. If you think there is a better way to take advantage of the ErgoDox/QMK comination without straying far from 84/101-key QWERTY, I want to know it.
-
-### Issues
-1. The `CSYM` layer is an ugly workaround. I should write a function for doing different things in the `SYMB` layer depending on whether SHIFT is being held. Or something. Ideas?
-1. Right now, the thumb cluster function keys double as slash and whack... this really isnt a great solution.
-1. `MENU` and `LEAD` are useless, at the moment.
-
-## License
-QMK is licensed ([mostly](https://github.com/qmk/qmk_firmware/issues/1038)) under the [GPLv2](../../../../license_GPLv2.md). Accordingly, to whatever extent applicable, this keymap is licensed under the [GPLv3](../../../../license_GPLv3.md).
diff --git a/layouts/community/ergodox/familiar/keymap.c b/layouts/community/ergodox/familiar/keymap.c
deleted file mode 100644
index b359a91d36..0000000000
--- a/layouts/community/ergodox/familiar/keymap.c
+++ /dev/null
@@ -1,281 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "debug.h"
-#include "action_layer.h"
-#include "version.h"
-
-// Layers
-#define BASE 0 // default layer
-#define SYMB 1 // international symbols
-#define CSYM 2 // international symbols shifted
-#define NUMP 3 // numpad
-#define ARRW 4 // function, media, arrow keys
-
-// Tap Dancing
-void dance_lock (qk_tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) { // Press once for NUMLOCK
- register_code (KC_NLCK);
- unregister_code (KC_NLCK);
- } else if (state->count == 2) { // Press twice for CAPSLOCK
- register_code (KC_CAPS);
- unregister_code (KC_CAPS);
- } else if (state->count == 3) { //Press thrice for SCROLLLOCK
- register_code (KC_SLCK);
- unregister_code (KC_SLCK);
- }
-}
-enum {LOCKS = 0};
-qk_tap_dance_action_t tap_dance_actions[] = {
- [LOCKS] = ACTION_TAP_DANCE_FN(dance_lock)
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-// If it accepts an argument (i.e, is a function), it doesn't need KC_.
-// Otherwise, it needs KC_*
-/* layer 0 : default
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 8 | 9 | 0 | - | = | BCKSPC |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | TAB | Q | W | E | R | T | HOME | | PGUP | Y | U | I | O | P | DELETE |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | ' | A | S | D | F | G |------| |------| H | J | K | L | ; | ENTER |
- * |--------+------+------+------+------+------| END | | PGDN |------+------+------+------+------+--------|
- * | (/LSFT | Z | X | C | V | B | | | | N | M | , | . | UP | )/RSFT |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | LCTRL | LGUI | MENU | LEAD | LALT | |[/RALT|]/RCTL| LEFT | DOWN | RIGHT |
- * `------------------------------------' `------------------------------------'
- * ,-------------. ,-------------.
- * |PRTSCR| ESC | | VOL- | VOL+ |
- * ,------|------|------| |------+------+------.
- * | |SLASH/| LOCKS| | MUTE |WHACK/| |
- * | SPC | MO(4)|------| |------|MO(4) | SPC |
- * | | | TO(1)| |TO(3) | | |
- * `--------------------' `--------------------'
- */
-[BASE] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_HOME,
- KC_QUOT, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_END,
- KC_LCTL, KC_LGUI, KC_MENU, KC_LEAD, KC_LALT,
- KC_PSCR, KC_ESC,
- TD(LOCKS),
- KC_SPC, LT(ARRW, KC_SLSH), TG(SYMB),
- // right hand
- KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_PGUP, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENTER,
- KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSPC,
- MT(MOD_RALT, KC_LBRC), MT(MOD_RCTL, KC_RBRC), KC_LEFT, KC_DOWN, KC_RGHT,
- KC_VOLD, KC_VOLU,
- KC_MUTE,
- TG(NUMP), LT(ARRW, KC_BSLS), KC_SPC
- ),
-
-/* layer 1: International symbols, etc
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | ¡ | ² | ³ | ¤ | € | ¼ | | ½ | ¾ | ‘ | ’ | ¥ | × | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | ä | å | é | ® | þ | | | | ü | ú | í | ó | ö | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | ´ | á | ß | ð | | |------| |------| | | | ø | ¶ | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * |MO(CSYM)| æ | ¿ | © | ¬ | | | | | ñ | µ | ç | | |MO(CSYM)|
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | « | » | | | |
- * `------------------------------------' `------------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[SYMB] = LAYOUT_ergodox(
- // left hand
- _______, UC(0x00A1), UC(0x00B2), UC(0x00B3), UC(0x00A4), UC(0x20AC), UC(0x00BC),
- _______, UC(0x00E4), UC(0x00E5), UC(0x00E9), UC(0x00AE), UC(0x00FE), _______,
- UC(0x00B4), UC(0x00E1), UC(0x00DF), UC(0x00F0), _______, _______,
- MO(CSYM), UC(0x00E6), UC(0x00BF), _______, UC(0x00AC), UC(0x00A9), _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______,
- // right hand
- UC(0x00BD), UC(0x00BE), UC(0x2018), UC(0x2019), UC(0x00A5), UC(0x00D7), _______,
- _______, UC(0x00FC), UC(0x00FA), UC(0x00ED), UC(0x00F3), UC(0x00F6), _______,
- _______, _______, _______, UC(0x00F8), UC(0x00B6), _______,
- _______, UC(0x00F1), UC(0x00B5), UC(0x00E7), _______, _______, MO(CSYM),
- UC(0x00AB), UC(0x00BB), _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
- ),
-
-/* layer 2 : international symbols, shifted
- * This layer is an ugly workaround; it pretends that SHIFT still works normally on keys
- * which don't produce an "upper case" or "shifted" international symobol.
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | ¹ | | | £ | | | | | | | | — | ÷ | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | Ä | Å | É | | Þ | | | | Ü | Ú | Í | Ó | Ö | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | ¨ | Á | § | Ð | | |------| |------| | | | Ø | ° | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | Æ | | ¢ | ¦ | | | | | Ñ | | Ç | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | “ | ” | | | |
- * `------------------------------------' `------------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[CSYM] = LAYOUT_ergodox(
- // left hand
- _______, UC(0x00B9), _______, _______, UC(0x00A3), _______, _______,
- _______, UC(0x00C4), UC(0x00C5), UC(0x00C9), S(KC_R), UC(0x00DE), _______,
- UC(0x00A8), UC(0x00C1), UC(0x00A7), UC(0x00D0), S(KC_F), S(KC_G),
- _______, UC(0x00C6), UC(0x00A6), UC(0x00A2), S(KC_V), S(KC_B), _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______,
- // right hand
- _______, _______, _______, _______, UC(0x2014), UC(0x00F7), _______,
- _______, UC(0x00DC), UC(0x00DA), UC(0x00CD), UC(0x00D3), UC(0x00D6), _______,
- S(KC_H), S(KC_J), S(KC_K), UC(0x00D8), UC(0x00B0), _______,
- _______, UC(0x00D1), _______, UC(0x00C7), S(KC_DOT), _______, _______,
- UC(0x201C), UC(0x201D), _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
- ),
-
-/* layer 3: numberpad
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | ( | ) | / | * | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | | | | | 7 | 8 | 9 | - | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | |------| |------| | 4 | 5 | 6 | + | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | 1 | 2 | 3 | = | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | |0/RALT|./RCTL| , | ENTER| |
- * `------------------------------------' `------------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[NUMP] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______,
- // right hand
- _______, _______, S(KC_9), S(KC_0), KC_PSLS, KC_PAST, _______,
- _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______,
- _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______,
- _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PEQL, _______,
- MT(MOD_RALT, KC_KP_0), MT(MOD_RCTL, KC_KP_DOT),KC_PCMM, KC_PENT, _______,
- _______, _______,
- _______,
- _______, _______, _______
- ),
-
-/* layer 4 : functions and arrows
- * This layer is at the top so that the functions still work no matter what layers are active.
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ESCAPE | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | UP | | | | | | | | | | | INSERT |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | LEFT | DOWN |RIGHT | |------| |------| LEFT | DOWN | UP | RIGHT| | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | |M_PREV|M_STOP|M_PLPS|M_NEXT| | | | | | | | | PGUP | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | HOME | PGDN | END |
- * `------------------------------------' `------------------------------------'
- * ,-------------. ,-------------.
- * | SYSRQ| PAUSE| | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[ARRW] = LAYOUT_ergodox(
- // left hand
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
- _______, _______, _______, KC_UP, _______, _______, _______,
- _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______,
- _______, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______,
- _______, _______, _______, _______, _______,
- KC_SYSREQ, KC_PAUSE,
- _______,
- _______, _______, _______,
- // right hand
- KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
- _______, _______, _______, _______, _______, _______, KC_INS,
- KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, KC_PGUP, _______,
- _______, _______, KC_HOME, KC_PGDN, KC_END,
- _______, _______,
- _______,
- _______, _______, _______
- ),
-};
-
-// Runs just one time when the keyboard initializes.
-void matrix_init_user(void) {
- set_unicode_input_mode(UC_LNX); // Linux
- //set_unicode_input_mode(UC_OSX); // Mac OSX
- //set_unicode_input_mode(UC_WIN); // Windows (with registry key, see wiki)
- //set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
-};
-
-// Runs constantly in the background, in a loop.
-void matrix_scan_user(void) {
-
- uint8_t layer = biton32(layer_state);
-
- ergodox_board_led_off();
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- switch (layer) {
- case SYMB:
- case CSYM:
- ergodox_right_led_1_on();
- break;
- case NUMP:
- ergodox_right_led_2_on();
- break;
- case ARRW:
- ergodox_right_led_3_on();
- break;
- default:
- // none
- break;
- }
-
-};
diff --git a/layouts/community/ergodox/nstickney/keymap.c b/layouts/community/ergodox/nstickney/keymap.c
new file mode 100644
index 0000000000..dc83c2f4d7
--- /dev/null
+++ b/layouts/community/ergodox/nstickney/keymap.c
@@ -0,0 +1,213 @@
+#include QMK_KEYBOARD_H
+
+/*
+ * This keymap simulates the key limitations of an Iris on an ErgoDox. See the
+ * matching iris layout (/keyboards/iris/keymaps/nstickney) for further
+ * information.
+ */
+
+// Layers
+#define BASE 0 // Base layer
+#define SYMB 1 // Symbols
+#define SYSH 2 // Symbols, shifted
+#define NUMP 4 // Numpad
+#define FCTN 8 // Function
+
+// Tap Dancing
+void dance_lock (qk_tap_dance_state_t *state, void *user_data) {
+ switch (state->count){
+ case 1: // Press once for LGUI
+ tap_code(KC_LGUI);
+ break;
+ case 2: // Press twice for NUMLOCK
+ tap_code(KC_NLCK);
+ break;
+ case 3: // Press thrice for CAPSLOCK
+ tap_code(KC_CAPS);
+ break;
+ case 4: // Press four times for SCROLLOCK
+ tap_code(KC_SLCK);
+ break;
+ default:
+ break;
+ }
+};
+
+void dance_layer (qk_tap_dance_state_t *state, void *user_data) {
+ switch (state -> count) {
+ case 1: // Press once for MENU
+ tap_code(KC_APP);
+ break;
+ case 2: // Press twice for NUMPAD
+ layer_invert(NUMP);
+ break;
+ case 3: // Press thrice for SYMBOLS
+ layer_invert(SYMB);
+ break;
+ case 4: // Press four times for SYMBOLS, SHIFTED
+ layer_invert(SYSH);
+ break;
+ default:
+ break;
+ }
+};
+
+enum tap_dances {LOCKS = 0, LAYERS = 1};
+qk_tap_dance_action_t tap_dance_actions[] = {
+ [LOCKS] = ACTION_TAP_DANCE_FN(dance_lock),
+ [LAYERS] = ACTION_TAP_DANCE_FN(dance_layer)
+};
+
+// Make layering more clear
+enum custom_keycodes {
+ __________ = KC_TRNS,
+ XXX = KC_NO,
+ CC_ESC = LCTL_T(KC_ESC),
+ CC_QUOT = RCTL_T(KC_QUOT),
+ AC_SLSH = LALT_T(KC_SLSH),
+ AC_EQL = RALT_T(KC_EQL),
+ FC_BSLS = LT(FCTN, KC_BSLS),
+ FC_MINS = LT(FCTN, KC_MINS),
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [BASE] = LAYOUT_ergodox(
+ // left hand
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, XXX,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, XXX,
+ CC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
+ KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, XXX,
+ XXX, XXX, XXX, XXX, AC_SLSH,
+ TD(LOCKS), XXX,
+ XXX,
+ FC_BSLS, KC_SPC, XXX,
+ // right hand
+ XXX, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ XXX, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
+ KC_H, KC_J, KC_K, KC_L, KC_SCLN, CC_QUOT,
+ XXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
+ AC_EQL, XXX, XXX, XXX, XXX,
+ XXX, TD(LAYERS),
+ XXX,
+ XXX, KC_ENT, FC_MINS
+ ),
+
+ [SYMB] = LAYOUT_ergodox(
+ // left hand
+ UC(0x00EF), UC(0x00A1), UC(0x00B2), UC(0x00B3), UC(0x00A4), UC(0x20AC), __________,
+ __________, UC(0x00E4), UC(0x00E5), UC(0x00E9), UC(0x00AE), UC(0x00FE), __________,
+ __________, UC(0x00E1), UC(0x00DF), UC(0x00F0), UC(0x00EC), UC(0x00ED),
+ __________, UC(0x00E6), UC(0x00E8), UC(0x00A9), UC(0x00EA), UC(0x00EB), __________,
+ __________, __________, __________, __________, UC(0x00BF),
+ __________, __________,
+ __________,
+ UC(0x00AC), __________, __________,
+ // right hand
+ __________, UC(0x00BC), UC(0x00BD), UC(0x00BE), UC(0x2018), UC(0x2019), __________,
+ __________, UC(0x00FC), UC(0x00FA), UC(0x00ED), UC(0x00F3), UC(0x00F6), __________,
+ UC(0x00EE), UC(0x00E0), UC(0x00E2), UC(0x00F8), UC(0x00B6), UC(0x00B4),
+ __________, UC(0x00F1), UC(0x00FD), UC(0x00E7), UC(0x00F4), UC(0x00BF), __________,
+ UC(0x00D7), __________, __________, __________, __________,
+ __________, __________,
+ __________,
+ __________, __________, UC(0x00B1)
+ ),
+
+ [SYSH] = LAYOUT_ergodox(
+ // left hand
+ UC(0x00CF), UC(0x00B9), UC(0x2200), UC(0x2201), UC(0x00A3), UC(0x00A5), __________,
+ __________, UC(0x00C4), UC(0x00C5), UC(0x00C9), UC(0x2122), UC(0x00DE), __________,
+ __________, UC(0x00C1), UC(0x00A7), UC(0x00D0), UC(0x00CC), UC(0x00CD),
+ __________, UC(0x00C6), UC(0x00C8), UC(0x00A2), UC(0x00CA), UC(0x00CB), __________,
+ __________, __________, __________, __________, UC(0x203D),
+ __________, __________,
+ __________,
+ UC(0x00A6), __________, __________,
+ // right hand
+ __________, UC(0x00B5), UC(0x00AB), UC(0x00BB), UC(0x201C), UC(0x201D), __________,
+ __________, UC(0x00DC), UC(0x00DA), UC(0x00CD), UC(0x00D3), UC(0x00D6), __________,
+ UC(0x00CE), UC(0x00C1), UC(0x00C2), UC(0x00D8), UC(0x00B0), UC(0x00A8),
+ __________, UC(0x00D1), UC(0x00DD), UC(0x00C7), UC(0x00D4), UC(0x203D), __________,
+ UC(0x00F7), __________, __________, __________, __________,
+ __________, __________,
+ __________,
+ __________, __________, UC(0x00AA)
+ ),
+
+ [NUMP] = LAYOUT_ergodox(
+ // left hand
+ __________, __________, KC_P7, KC_P8, KC_P9, KC_PSLS, __________,
+ __________, __________, KC_P4, KC_P5, KC_P6, KC_PAST, __________,
+ __________, __________, KC_P1, KC_P2, KC_P3, KC_PMNS,
+ __________, __________, KC_P0, KC_PCMM, KC_PDOT, KC_PPLS, __________,
+ __________, __________, __________, __________, __________,
+ __________, __________,
+ __________,
+ __________, __________, __________,
+ // right hand
+ __________, __________, KC_P7, KC_P8, KC_P9, KC_PSLS, __________,
+ __________, __________, KC_P4, KC_P5, KC_P6, KC_PAST, __________,
+ __________, KC_P1, KC_P2, KC_P3, KC_PMNS, __________,
+ __________, __________, KC_P0, KC_PCMM, KC_PDOT, KC_PPLS, __________,
+ __________, __________, __________, __________, __________,
+ __________, __________,
+ __________,
+ __________, KC_PENT, __________
+ ),
+
+ [FCTN] = LAYOUT_ergodox(
+ // left hand
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, __________,
+ KC_PSCR, RGB_TOG, KC_HOME, KC_UP, KC_END, KC_PGUP, __________,
+ KC_PAUS, __________, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,
+ __________, KC_MPRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_MNXT, __________,
+ __________, __________, __________, __________, __________,
+ KC_F11, __________,
+ __________,
+ __________, __________, __________,
+ // right hand
+ __________, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_SYSREQ,
+ __________, UC(0x2014), KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), KC_INS,
+ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_BRIU, KC_CLR,
+ __________, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, KC_BRID, __________,
+ __________, __________, __________, __________, __________,
+ __________, KC_F12,
+ __________,
+ __________, __________, __________
+ ),
+};
+
+void eeconfig_init_user(void) {
+ set_unicode_input_mode(UC_LNX); // Linux
+ //set_unicode_input_mode(UC_OSX); // Mac OSX
+ //set_unicode_input_mode(UC_WIN); // Windows (with registry key, see wiki)
+ //set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
+};
+
+// Runs just one time when the keyboard initializes.
+void matrix_init_user(void) {
+ ergodox_board_led_off();
+};
+
+// Runs constantly in the background, in a loop.
+void matrix_scan_user(void) {
+
+ if (IS_LAYER_ON(SYMB) || IS_LAYER_ON(SYSH)) {
+ ergodox_right_led_1_on();
+ } else {
+ ergodox_right_led_1_off();
+ }
+
+ if (IS_LAYER_ON(NUMP)) {
+ ergodox_right_led_2_on();
+ } else {
+ ergodox_right_led_2_off();
+ }
+
+ if (IS_LAYER_ON(FCTN)) {
+ ergodox_right_led_3_on();
+ } else {
+ ergodox_right_led_3_off();
+ }
+
+};
diff --git a/layouts/community/ergodox/familiar/rules.mk b/layouts/community/ergodox/nstickney/rules.mk
index 4a3c58621c..4a3c58621c 100644
--- a/layouts/community/ergodox/familiar/rules.mk
+++ b/layouts/community/ergodox/nstickney/rules.mk
diff --git a/layouts/community/numpad_5x6/bjohnson/config.h b/layouts/community/numpad_5x6/bjohnson/config.h
new file mode 100644
index 0000000000..fe2cffec78
--- /dev/null
+++ b/layouts/community/numpad_5x6/bjohnson/config.h
@@ -0,0 +1,25 @@
+#pragma once
+
+// #define B6_AUDIO
+
+#if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM)
+#define RGB_DI_PIN B7
+#define RGBLED_NUM 16 // Number of LEDs
+#define RGBLIGHT_ANIMATIONS
+
+#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
+#define RGBLIGHT_EFFECT_BREATHE_CENTER 1
+
+#define RGBLIGHT_SLEEP
+#endif // RGBLIGHT_ENABLE
+
+#ifdef AUDIO_ENABLE
+#ifdef RGBLIGHT_ENABLE
+#define NO_MUSIC_MODE
+#endif // RGBLIGHT_ENABLE
+#endif // AUDIO_ENABLE
+#define TAP_CODE_DELAY 10
diff --git a/layouts/community/numpad_5x6/bjohnson/keymap.c b/layouts/community/numpad_5x6/bjohnson/keymap.c
new file mode 100644
index 0000000000..79e87e69f4
--- /dev/null
+++ b/layouts/community/numpad_5x6/bjohnson/keymap.c
@@ -0,0 +1,51 @@
+#include QMK_KEYBOARD_H
+
+extern rgblight_config_t rgblight_config;
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT_numpad_5x6(
+ KC_F1, LT(1,KC_F2), KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_F3, KC_F4, KC_P7, KC_P8, KC_P9,
+ KC_F5, KC_F6, KC_P4, KC_P5, KC_P6, KC_PPLS,
+ KC_F7, KC_F8, KC_P1, KC_P2, KC_P3,
+ KC_F9, KC_F10, KC_P0, KC_PDOT, KC_PENT
+ ),
+ [1] = LAYOUT_numpad_5x6(
+ RGB_TOG, _______, _______, _______, _______, RESET,
+ RGB_MOD, RGB_RMOD, _______, _______, _______,
+ RGB_HUI, RGB_HUD, _______, _______, _______, _______,
+ RGB_SAI, RGB_SAD, _______, _______, _______,
+ RGB_VAI, RGB_VAD, _______, _______, _______
+ ),
+};
+
+
+void keyboard_post_init_user(void) {
+#ifdef RGBLIGHT_ENABLE
+ uint8_t temp_mode = rgblight_config.mode;
+ rgblight_enable_noeeprom();
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+ for (uint16_t i = 360; i > 0; i--) {
+ rgblight_sethsv_noeeprom( ( i + 180) % 360, 255, 255);
+ wait_ms(8);
+ }
+ led_set_user(host_keyboard_leds());
+ rgblight_mode_noeeprom(temp_mode);
+#endif
+}
+
+void led_set_user(uint8_t usb_led) {
+ if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
+ rgblight_sethsv_noeeprom_cyan();
+ } else {
+ rgblight_sethsv_noeeprom_magenta();
+ }
+}
+
+void shutdown_user (void) {
+ #ifdef RGBLIGHT_ENABLE
+ rgblight_enable_noeeprom();
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+ rgblight_setrgb_red();
+ #endif // RGBLIGHT_ENABLE
+}
diff --git a/layouts/community/numpad_5x6/bjohnson/rules.mk b/layouts/community/numpad_5x6/bjohnson/rules.mk
new file mode 100644
index 0000000000..d370da7f1b
--- /dev/null
+++ b/layouts/community/numpad_5x6/bjohnson/rules.mk
@@ -0,0 +1,5 @@
+AUDIO_ENABLE = no
+RGBLIGHT_ENABLE = yes
+BACKLIGHT_ENABLE = no
+NO_SECRETS = yes
+BOOTMAGIC_ENABLE = lite
diff --git a/layouts/community/numpad_5x6/drashna/config.h b/layouts/community/numpad_5x6/drashna/config.h
new file mode 100644
index 0000000000..ec66940e02
--- /dev/null
+++ b/layouts/community/numpad_5x6/drashna/config.h
@@ -0,0 +1,18 @@
+#pragma once
+
+// #define B6_AUDIO
+
+#if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM)
+#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
+#define RGBLIGHT_EFFECT_BREATHE_CENTER 1
+#endif // RGBLIGHT_ENABLE
+
+
+#define TAP_CODE_DELAY 10
diff --git a/layouts/community/numpad_5x6/drashna/keymap.c b/layouts/community/numpad_5x6/drashna/keymap.c
new file mode 100644
index 0000000000..646f4db337
--- /dev/null
+++ b/layouts/community/numpad_5x6/drashna/keymap.c
@@ -0,0 +1,22 @@
+#include QMK_KEYBOARD_H
+#include "drashna.h"
+
+#define F2_MCRO LT(_GAMEPAD, KC_F2)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_NUMLOCK] = LAYOUT_numpad_5x6(
+ KC_F1, F2_MCRO, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_F3, KC_F4, KC_P7, KC_P8, KC_P9,
+ KC_F5, KC_F6, KC_P4, KC_P5, KC_P6, KC_PPLS,
+ KC_F7, KC_F8, KC_P1, KC_P2, KC_P3,
+ KC_F9, KC_COLN, KC_P0, KC_PDOT, KC_PENT
+ ),
+
+ [_GAMEPAD] = LAYOUT_numpad_5x6(
+ RGB_TOG, _______, _______, EEP_RST, KC_MAKE, RESET,
+ RGB_MOD, RGB_RMOD, _______, _______, _______,
+ RGB_HUI, RGB_HUD, _______, _______, _______, _______,
+ RGB_SAI, RGB_SAD, _______, _______, _______,
+ RGB_VAI, RGB_VAD, _______, _______, _______
+ ),
+};
diff --git a/layouts/community/numpad_5x6/drashna/rules.mk b/layouts/community/numpad_5x6/drashna/rules.mk
new file mode 100644
index 0000000000..ed6fa8c791
--- /dev/null
+++ b/layouts/community/numpad_5x6/drashna/rules.mk
@@ -0,0 +1,9 @@
+AUDIO_ENABLE = no
+RGBLIGHT_ENABLE = yes
+BACKLIGHT_ENABLE = no
+NO_SECRETS = yes
+BOOTMAGIC_ENABLE = lite
+INDICATOR_LIGHTS = no
+RGBLIGHT_TWINKLE = yes
+MACROS_ENABLED = no
+MAKE_BOOTLOADER = yes
diff --git a/layouts/community/numpad_5x6/layout.json b/layouts/community/numpad_5x6/layout.json
new file mode 100644
index 0000000000..7264cd5a6d
--- /dev/null
+++ b/layouts/community/numpad_5x6/layout.json
@@ -0,0 +1,6 @@
+["","","",""],
+[{y:0.5},"","","",""],
+["","","",{h:2},""],
+["","",""],
+["","","",{h:2},""],
+[{w:2},"",""]
diff --git a/layouts/community/numpad_5x6/readme.md b/layouts/community/numpad_5x6/readme.md
new file mode 100644
index 0000000000..147097c837
--- /dev/null
+++ b/layouts/community/numpad_5x6/readme.md
@@ -0,0 +1,3 @@
+# numpad_5x6
+
+ LAYOUT_numpad_5x6
diff --git a/layouts/community/ortho_4x12/bakingpy/config.h b/layouts/community/ortho_4x12/bakingpy/config.h
index b6b2ac5779..a153adffb6 100644
--- a/layouts/community/ortho_4x12/bakingpy/config.h
+++ b/layouts/community/ortho_4x12/bakingpy/config.h
@@ -10,6 +10,7 @@
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12
+#define RGBLED_SPLIT { 6, 6 }
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
diff --git a/layouts/community/ortho_4x12/bakingpy/rules.mk b/layouts/community/ortho_4x12/bakingpy/rules.mk
index 9be2f01d4d..17a589cd1d 100644
--- a/layouts/community/ortho_4x12/bakingpy/rules.mk
+++ b/layouts/community/ortho_4x12/bakingpy/rules.mk
@@ -1,12 +1,13 @@
-# Enable RGB if not a Planck
-ifeq ($(LAYOUTS_HAS_RGB),yes)
+ifneq ($(LAYOUTS_HAS_RGB), no)
RGBLIGHT_ENABLE = yes
endif
AUDIO_ENABLE = no
ifeq ($(strip $(KEYBOARD)), zlant)
BACKLIGHT_ENABLE = no
else ifeq ($(strip $(KEYBOARD)), 40percentclub/4x4)
- BACKLIGHT_ENABLE = no
+ BACKLIGHT_ENABLE = no
+else ifneq (, $(findstring lets_split, $(KEYBOARD)))
+ BACKLIGHT_ENABLE = no
else
BACKLIGHT_ENABLE = yes
endif
diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h
index 55862aec36..f648d11279 100644
--- a/layouts/community/ortho_4x12/drashna/config.h
+++ b/layouts/community/ortho_4x12/drashna/config.h
@@ -2,9 +2,9 @@
#if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM)
-#define RGB_DI_PIN D3
-#define RGBLED_NUM 16 // Number of LEDs
-
+#define RGB_DI_PIN B3
+#define RGBLED_NUM 13 // Number of LEDs
+#define RGBLIGHT_ANIMATIONS
#define RGBLIGHT_HUE_STEP 12
#define RGBLIGHT_SAT_STEP 12
#define RGBLIGHT_VAL_STEP 12
@@ -17,10 +17,10 @@
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot)
// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened)
// #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
-// #define RGB_DISABLE_WHEN_USB_SUSPENDED false // turn off effects when suspended
+#define RGB_DISABLE_WHEN_USB_SUSPENDED true// turn off effects when suspended
// #define RGB_MATRIX_SKIP_FRAMES 1 // number of frames to skip when displaying animations (0 is full effect) if not defined defaults to 1
// #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
-// #define EECONFIG_RGB_MATRIX (uint32_t *)16
+#define EECONFIG_RGB_MATRIX (uint32_t *)15
#endif
#if defined(KEYBOARD_lets_split_rev2)
diff --git a/layouts/community/ortho_4x12/drashna/keymap.c b/layouts/community/ortho_4x12/drashna/keymap.c
index f5ead81da2..28da1b2042 100644
--- a/layouts/community/ortho_4x12/drashna/keymap.c
+++ b/layouts/community/ortho_4x12/drashna/keymap.c
@@ -19,7 +19,12 @@
#ifdef RGB_MATRIX_ENABLE
extern bool g_suspend_state;
+extern rgb_config_t rgb_matrix_config;
#endif
+#ifdef RGBLIGHT_ENABLE
+extern rgblight_config_t rgblight_config;
+#endif
+
#ifdef BACKLIGHT_ENABLE
enum planck_keycodes {
@@ -162,13 +167,13 @@ bool music_mask_user(uint16_t keycode) {
#ifdef RGB_MATRIX_ENABLE
-void suspend_power_down_keymap(void)
-{
+void suspend_power_down_keymap(void) {
rgb_matrix_set_suspend_state(true);
+ rgb_matrix_config.enable = false;
}
-void suspend_wakeup_init_keymap(void)
-{
+void suspend_wakeup_init_keymap(void) {
+ rgb_matrix_config.enable = true;
rgb_matrix_set_suspend_state(false);
}
@@ -188,7 +193,14 @@ void rgb_matrix_indicators_user(void) {
uint8_t this_mod = get_mods();
uint8_t this_led = host_keyboard_leds();
uint8_t this_osm = get_oneshot_mods();
- if (!g_suspend_state) {
+
+ if (!g_suspend_state && userspace_config.rgb_layer_change &&
+#if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE)
+ (!rgblight_config.enable && rgb_matrix_config.enable)
+#else
+ rgb_matrix_config.enable
+#endif
+ ) {
switch (biton32(layer_state)) {
case _RAISE:
rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, false); break;
@@ -228,27 +240,26 @@ void rgb_matrix_indicators_user(void) {
case _WORKMAN:
rgb_matrix_set_color(42, 0xD9, 0xA5, 0x21); break;
}
-
- if (this_mod & MODS_SHIFT_MASK || this_led & (1<<USB_LED_CAPS_LOCK) || this_osm & MODS_SHIFT_MASK) {
+ if ( (this_mod | this_osm) & MOD_MASK_SHIFT || this_led & (1<<USB_LED_CAPS_LOCK)) {
rgb_matrix_set_color(24, 0x00, 0xFF, 0x00);
rgb_matrix_set_color(36, 0x00, 0xFF, 0x00);
}
- if (this_mod & MODS_CTRL_MASK || this_osm & MODS_CTRL_MASK) {
+ if ( (this_mod | this_osm) & MOD_MASK_CTRL) {
rgb_matrix_set_color(25, 0xFF, 0x00, 0x00);
rgb_matrix_set_color(34, 0xFF, 0x00, 0x00);
rgb_matrix_set_color(37, 0xFF, 0x00, 0x00);
}
- if (this_mod & MODS_GUI_MASK || this_osm & MODS_GUI_MASK) {
+ if ( (this_mod | this_osm) & MOD_MASK_GUI) {
rgb_matrix_set_color(39, 0xFF, 0xD9, 0x00);
}
- if (this_mod & MODS_ALT_MASK || this_osm & MODS_ALT_MASK) {
+ if ( (this_mod | this_osm) & MOD_MASK_ALT) {
rgb_matrix_set_color(38, 0x00, 0x00, 0xFF);
}
}
void matrix_init_keymap(void) {
- rgblight_mode(RGB_MATRIX_MULTISPLASH);
+ // rgblight_mode(RGB_MATRIX_MULTISPLASH);
}
#else //RGB_MATRIX_INIT
@@ -290,15 +301,13 @@ void encoder_update(bool clockwise) {
#endif // ENCODER_ENABLE
#ifdef KEYBOARD_planck_rev6
-extern audio_config_t audio_config;
-
void dip_update(uint8_t index, bool active) {
switch (index) {
case 0:
- audio_config.enable = active;
+ if(active) { audio_on(); } else { audio_off(); }
break;
case 1:
- audio_config.clicky_enable = active;
+ if(active) { clicky_on(); } else { clicky_off(); }
break;
case 2:
keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = active;
diff --git a/layouts/community/ortho_4x12/drashna/rules.mk b/layouts/community/ortho_4x12/drashna/rules.mk
index a5429b8ffb..f880432674 100644
--- a/layouts/community/ortho_4x12/drashna/rules.mk
+++ b/layouts/community/ortho_4x12/drashna/rules.mk
@@ -12,7 +12,7 @@ ifeq (,$(findstring planck/rev6,$(KEYBOARD))) # Make sure it's NOT the Planck Re
endif
ifneq (,$(findstring planck/light,$(KEYBOARD))) # Make sure it IS the Planck Light
RGB_MATRIX_ENABLE = yes
- RGBLIGHT_ENABLE = no
+ RGBLIGHT_ENABLE = yes
endif
ifeq ($(strip $(PROTOCOL)), VUSB)
diff --git a/layouts/community/ortho_4x12/jotix/keymap.c b/layouts/community/ortho_4x12/jotix/keymap.c
index 2c622cb959..02fc79ec7f 100644
--- a/layouts/community/ortho_4x12/jotix/keymap.c
+++ b/layouts/community/ortho_4x12/jotix/keymap.c
@@ -13,16 +13,10 @@ extern keymap_config_t keymap_config;
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
-#define _FUNCTION 3
-#define _ADJUST 4
-
-enum custom_keycodes {
- BACKLIT = SAFE_RANGE
-};
+#define _ADJUST 3
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
-#define FUNCT LT(_FUNCTION, KC_TAB)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -30,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
* | esc | Q | W | E | R | T | Y | U | I | O | P | bksp |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | func | A | S | D | F | G | H | J | K | L | ; | del |
+ * | tab | A | S | D | F | G | H | J | K | L | ; | ' |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
* | lshift | Z | X | C | V | B | N | M | , | . | / | enter |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
@@ -39,71 +33,52 @@ 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,
- FUNCT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_DEL,
+ 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_LCTL, KC_LGUI, KC_LALT, KC_RALT, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
),
/* Lower
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | vol- | mute | vol+ | | | | | | | | |
+ * | | - | = | [ | ] | \ | | | | | | |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | prev | play | next | | | | CapsLk | | | | |
+ * | | vol- | mute | vol+ | | | | | | | | |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
* | | | | | | | | | | | | |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
*/
[_LOWER] = LAYOUT_ortho_4x12 (
- _______, 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_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, _______, _______, _______, _______, _______,
_______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_CAPS, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
/* Raise
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | ! | @ | # | $ | % | ^ | & | * | ( | ) | |
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | del |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | | | | | \ | ` | - | = | [ | ] | ' |
+ * | caps | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | | | | | | | ~ | _ | + | { | } | " |
+ * | | F7 | F8 | F9 | F10 | F11 | F12 | _ | + | { | } | | |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
* | | | | | | | | | home | pgdn | pgun | end |
* +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
*/
[_RAISE] = LAYOUT_ortho_4x12 (
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- _______, _______, _______, _______, _______, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_QUOT,
- _______, _______, _______, _______, _______, KC_PIPE, KC_TILD, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_DQUO,
+ 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_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
_______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
),
-/*
- * Function
- * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | F1 | F2 | F3 | F4 | | | P7 | P8 | P9 | P- | |
- * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | F5 | F6 | F7 | F8 | | | P4 | P5 | P6 | P+ | |
- * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | F9 | F10 | F11 | F12 | | NumLck | P1 | P2 | P3 | P/ | Penter |
- * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- * | | | | | | | | | P0 | Pdot | P* | |
- * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
- */
-[_FUNCTION] = LAYOUT_ortho_4x12 (
- _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, KC_PMNS, _______,
- _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, KC_PPLS, _______,
- _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_NLCK, KC_P1, KC_P2, KC_P3, KC_PSLS, KC_PENT,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PAST, XXXXXXX
-),
-
/* Adjust */
[_ADJUST] = LAYOUT_ortho_4x12 (
- _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, RESET, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, BACKLIT, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, BL_STEP, BL_BRTG, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
};
@@ -115,23 +90,3 @@ uint32_t layer_state_set_user(uint32_t state) {
void matrix_init_user(void) {
}
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
-
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
- break;
-
- default:
- return true;
-
- }
-}
diff --git a/layouts/community/ortho_4x12/jotix/readme.md b/layouts/community/ortho_4x12/jotix/readme.md
index 608944801d..11af9ed1ee 100644
--- a/layouts/community/ortho_4x12/jotix/readme.md
+++ b/layouts/community/ortho_4x12/jotix/readme.md
@@ -1,8 +1,6 @@
# Jotix ortho 4x12 keymap
-![keymap](https://i.imgur.com/7hGJJPs.jpg)
-
-Tab is 'Func' on hold.
+![keymap](https://i.imgur.com/1NxoqW6.png)
Tested on:
diff --git a/layouts/community/ortho_4x12/jotix2/keymap.c b/layouts/community/ortho_4x12/jotix2/keymap.c
new file mode 100644
index 0000000000..636476488e
--- /dev/null
+++ b/layouts/community/ortho_4x12/jotix2/keymap.c
@@ -0,0 +1,87 @@
+// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
+// this is the style you want to emulate.
+
+#include QMK_KEYBOARD_H
+
+extern keymap_config_t keymap_config;
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+
+#define _QWERTY 0
+#define _LOWER 1
+#define _RAISE 2
+#define _GAME 3
+#define _ADJUST 4
+
+#define LOWER MO(_LOWER)
+#define RAISE MO(_RAISE)
+#define GAME TG(_GAME)
+
+/* Funct
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | | F7 | F8 | F9 | F10 | F11 | F12 | ' | | | | |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | | | | | | | | | home | vol- | vol+ | end |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ */
+#define _FUNCT 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_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_QUOT, _______, _______, _______, _______,\
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_VOLD, KC_VOLU, KC_END\
+)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | esc | Q | W | E | R | T | Y | U | I | O | P | bksp |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | tab | A | S | D | F | G | H | J | K | L | ; | del |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | lshift | Z | X | C | V | B | N | M | , | . | / | enter |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ * | lctrl | lgui | lalt | ralt | funct | space | space | funct | left | down | up | right |
+ * +--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
+ */
+[_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_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_DEL,
+ 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
+),
+
+[_LOWER] = _FUNCT,
+
+[_RAISE] = _FUNCT,
+
+/* Game */
+[_GAME] = LAYOUT_ortho_4x12 (
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_LEFT, KC_DOWN, KC_RGHT
+),
+
+/* Adjust */
+[_ADJUST] = LAYOUT_ortho_4x12 (
+ _______, RESET, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, GAME, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, BL_STEP, BL_BRTG, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+),
+};
+
+uint32_t layer_state_set_user(uint32_t state) {
+ return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
+}
+
+void matrix_init_user(void) {
+}
diff --git a/layouts/community/ortho_4x12/jotix2/readme.md b/layouts/community/ortho_4x12/jotix2/readme.md
new file mode 100644
index 0000000000..b023227a77
--- /dev/null
+++ b/layouts/community/ortho_4x12/jotix2/readme.md
@@ -0,0 +1,8 @@
+# Jotix2 ortho 4x12 keymap
+
+![keymap](https://i.imgur.com/WMfIpH3.jpg)
+
+Tested on:
+
+* Planck/rev4
+* Jotanck
diff --git a/layouts/community/ortho_4x12/symbolic/README.md b/layouts/community/ortho_4x12/symbolic/README.md
index 37fbcd56a4..2c69d5160e 100644
--- a/layouts/community/ortho_4x12/symbolic/README.md
+++ b/layouts/community/ortho_4x12/symbolic/README.md
@@ -1,26 +1,24 @@
-# Symbolic ortho 4x12 layout
+# Symbolic ortho 4x12 layout
## Features
### QWERTY based
-![QWERTY layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/QWERTY.png)
-
+![QWERTY layout](https://gist.githubusercontent.com/leico/5bf4d9ff94f2068c5333739f7f1f88b4/raw/2af7fed6f282b6ac278e79433d15887f6b91ba3a/QWERTY.png)
+
* Default keymap
* QWERTY layout
* Hold and tap
- * `Shift` and `Space`
* `Left Ctrl` and `Tab`
* Symmetric Modifiers
* `Shift`
* `Raise Layer`
* `Lower Layer`
* `GUI`
- * `Reset`
### symbol charactor layer
-![Raise layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/Raise.png)
+![Raise layout](https://gist.githubusercontent.com/leico/5bf4d9ff94f2068c5333739f7f1f88b4/raw/2af7fed6f282b6ac278e79433d15887f6b91ba3a/Raise.png)
* Raise Layer
* assigned symbolic(punctuation) characters
@@ -37,23 +35,31 @@
### numbers and allows layer
-![Lower layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/Lower.png)
+![Lower layout](https://gist.githubusercontent.com/leico/5bf4d9ff94f2068c5333739f7f1f88b4/raw/2af7fed6f282b6ac278e79433d15887f6b91ba3a/Lower.png)
* Lower Layer
* entrust vim style arrows
* also numkeys
* additional, computer volume keys
* transparent all modifiers
+* **changed 2018/09/04**
+ * assign keys
+ * Home
+ * Page Down
+ * Page Up
+ * End
+ * Print Screen
### Numpads and F key layer
-![Neutral layout](https://gist.githubusercontent.com/leico/cb50ecd12eb8ad906a69678f265cd52c/raw/4597497ecd00790312f1a3928b2e2c5cf17a6ac1/Neutral.png)
+![Neutral layout](https://gist.githubusercontent.com/leico/5bf4d9ff94f2068c5333739f7f1f88b4/raw/2af7fed6f282b6ac278e79433d15887f6b91ba3a/Neutral.png)
* visibled when Raise and Lower layer visibled
* F keys assigned left hand side
* Numpads assigned right hand side
* for that reason, override `RGUI` key
* transparent mostly modifiers
+* visibled `Reset` key on both hands
### Goals
@@ -63,7 +69,6 @@
* simple, minimal, easy learn
* as soon as possible, don't disable any shortcuts
-
### suggestions or find issues
[post issues for my fork](https://github.com/leico/qmk_firmware/issues)
diff --git a/layouts/community/ortho_4x12/symbolic/config.h b/layouts/community/ortho_4x12/symbolic/config.h
index c29b077062..3f88b4cc17 100644
--- a/layouts/community/ortho_4x12/symbolic/config.h
+++ b/layouts/community/ortho_4x12/symbolic/config.h
@@ -20,8 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-// hold & tapping delay setting
-#define TAPPING_TERM 100
+
/* Use I2C or Serial, not both */
diff --git a/layouts/community/ortho_4x12/symbolic/keymap.c b/layouts/community/ortho_4x12/symbolic/keymap.c
index 1e5494d96e..c292373711 100644
--- a/layouts/community/ortho_4x12/symbolic/keymap.c
+++ b/layouts/community/ortho_4x12/symbolic/keymap.c
@@ -19,6 +19,7 @@ enum custom_keycodes {
R_RAISE
};
+
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@@ -30,17 +31,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | Tab | A | S | D | F | G || H | J | K | L | ; |Enter |
* |------+------+------+------+------+------++------+------+------+------+------+------|
* | | | | | | || | | | | | |
- * | | Z | X | C | V | B || N | M | , | . | ! | |
+ * |Shift | Z | X | C | V | B || N | M | , | . | ! |Shift |
* |------+------+------+------+------+------++------+------+------+------+------+------|
- * | | | | | |LSFT_T||RSFT_T| | | | | |
- * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| GUI | Del |Reset |
+ * | | | | | | || | | | | | |
+ * |LRaise| Alt | GUI | |LLower|Space ||Space |RLower| | GUI | Del |RRaise|
* `------------------------------------------------------------------------------------'
*/
[_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, \
- LCTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, \
- XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_EXLM, XXXXXXX, \
- RESET, KC_LALT, KC_LGUI, L_LOWER, L_RAISE, LSFT_T( KC_SPC ), RSFT_T( KC_SPC ), R_RAISE, R_LOWER, KC_RGUI, KC_DEL, RESET \
+ KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
+ LCTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, \
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_EXLM, KC_RSFT, \
+ L_RAISE, KC_LALT, KC_LGUI, XXXXXXX, L_LOWER, KC_SPC, KC_SPC, R_LOWER, XXXXXXX, KC_RGUI, KC_DEL, R_RAISE \
),
/* Raise
@@ -52,16 +53,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | Tab | ~ | | | ( | ) | * || / | < | > | ' | : |Enter |
* |------+------+------+------+------+------++------+------+------+------+------+------|
* | | | | | | || | | | | | |
- * | | ` | ^ | @ | $ | + || - | = | _ | " | ? | |
+ * |Shift | ` | ^ | @ | $ | + || - | = | _ | " | ? |Shift |
* |------+------+------+------+------+------++------+------+------+------+------+------|
- * | | | | | |LSFT_T||RSFT_T| | | | | |
- * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| GUI | Del |Reset |
+ * | | | | | | || | | | | | |
+ * |LRaise| Alt | GUI | |LLower|Space ||Space |RLower| | GUI | Del |RRaise|
* `------------------------------------------------------------------------------------'
*/
[_RAISE] = LAYOUT_ortho_4x12( \
_______, XXXXXXX, KC_AMPR, KC_LCBR, KC_RCBR, KC_PERC, KC_BSLS, KC_LBRC, KC_RBRC, KC_HASH, XXXXXXX, _______, \
- _______, KC_TILD, KC_PIPE, KC_LPRN, KC_RPRN, KC_ASTR, KC_SLSH, KC_LABK, KC_RABK, KC_QUOT, KC_COLN, _______, \
- _______, KC_GRV, KC_CIRC, KC_AT, KC_DLR, KC_PLUS, KC_MINS, KC_EQL, KC_UNDS, KC_DQUO, KC_QUES, _______, \
+ _______, KC_TILD, KC_PIPE, KC_LPRN, KC_RPRN, KC_ASTR, KC_SLSH, KC_LABK, KC_RABK, KC_DQUO, KC_COLN, _______, \
+ _______, KC_GRV, KC_CIRC, KC_AT, KC_DLR, KC_PLUS, KC_MINS, KC_EQL, KC_UNDS, KC_QUOT, KC_QUES, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
),
/* Lower
@@ -73,16 +74,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | Tab | |VolDn |VolUp | Mute | || Left | Down | Up |Right | |Enter |
* |------+------+------+------+------+------++------+------+------+------+------+------|
* | | | | | | || | | | | | |
- * | | | | | | || | | | | | |
+ * |Shift | | | | | PrSc || Home | PgDn | PgUp | End | |Shift |
* |------+------+------+------+------+------++------+------+------+------+------+------|
- * | | | | | |LSFT_T||RSFT_T| | | | | |
- * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| GUI | Del |Reset |
+ * | | | | | | || | | | | | |
+ * |LRaise| Alt | GUI | |LLower|Space ||Space |RLower| | GUI | Del |RRaise|
* `------------------------------------------------------------------------------------'
*/
[_LOWER] = LAYOUT_ortho_4x12( \
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \
_______, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, _______, \
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, \
+ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
),
@@ -95,55 +96,113 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | Tab | F5 | F6 | F7 | F8 | || * | / | 4 | 5 | 6 |Enter |
* |------+------+------+------+------+------++------+------+------+------+------+------|
* | | | | | | || | | | | | |
- * | | F9 | F10 | F11 | F12 | || . | , | 7 | 8 | 9 | |
+ * |Shift | F9 | F10 | F11 | F12 | || . | , | 7 | 8 | 9 |Shift |
* |------+------+------+------+------+------++------+------+------+------+------+------|
- * | | | | | |LSFT_T||RSFT_T| | | | | |
- * |Reset | Alt | GUI |LLower|LRaise|Space ||Space |RRaise|RLower| 0 | Del |Reset |
+ * | | | | | | || | | | | | |
+ * |LRaise| Alt | GUI |Reset |LLower|Space ||Space |RLower|Reset | 0 | Del |RRaise|
* `------------------------------------------------------------------------------------'
*/
[_NEUTRAL] = LAYOUT_ortho_4x12( \
_______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, KC_PPLS, KC_PMNS, KC_P1, KC_P2, KC_P3, _______, \
_______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_PAST, KC_PSLS, KC_P4, KC_P5, KC_P6, _______, \
_______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_PDOT, KC_COMM, KC_P7, KC_P8, KC_P9, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, _______, _______ \
+ _______, _______, _______, RESET, _______, _______, _______, _______, RESET, KC_P0, _______, _______ \
)
};
-void DualKeyPressed ( bool brother_state, uint8_t target ){
- if( brother_state ) return;
+/**** Raise Layer functions *****/
+
+ /* RaisePressed function */
+ /* called RaiseSwitch */
+void RaisePressed ( keyevent_t *event, bool brother_state ){
+
+ if( brother_state ) { return; }
+
+ layer_on( _RAISE );
+ update_tri_layer( _LOWER, _RAISE, _NEUTRAL );
+ return;
+
+}
+
+
+ /* RaiseReleased function */
+ /* called RaiseSwitch */
+void RaiseReleased ( bool brother_state ){
+
+ if( brother_state ) { return; }
- layer_on( target );
+ layer_off( _RAISE );
+ update_tri_layer( _LOWER, _RAISE, _NEUTRAL );
return;
}
-void DualKeyReleased ( bool brother_state, uint8_t target1 ){
- if( brother_state ) return ;
+ /* RaiseSwitch function */
+ /* called process_record_user */
+bool RaiseSwitch ( keyrecord_t *record, bool *key_state, bool brother ){
+
+ if( record -> event.pressed ) {
+ *key_state = true;
+ RaisePressed( &(record -> event), brother );
+ } else {
+ *key_state = false;
+ RaiseReleased( brother );
+ }
+ return false;
+
+}
+
+
- layer_off( target1 );
+
+
+
+/**** Lower layer functions ****/
+
+ /* LowerPressed function */
+ /* call from LowerSwitch */
+void LowerPressed ( bool brother_state ){
+
+ if( brother_state ) { return; }
+
+ layer_on( _LOWER );
+ update_tri_layer(_LOWER, _RAISE, _NEUTRAL );
+ return;
+}
+
+ /* LowerReleased function */
+ /* call from LowerSwitch */
+void LowerReleased ( bool brother_state ){
+
+ if( brother_state ) { return; }
+
+ layer_off( _LOWER );
+ update_tri_layer(_LOWER, _RAISE, _NEUTRAL );
return ;
}
-bool LayerSwitch ( keyrecord_t *record, bool *key_state, bool brother, uint8_t layer ){
+ /* LowerSwitch function */
+ /* call from process_record_user */
+bool LowerSwitch ( keyrecord_t *record, bool *key_state, bool brother ){
if ( record -> event.pressed ) {
*key_state = true;
- DualKeyPressed( brother, layer );
- }
- else {
+ LowerPressed( brother );
+ } else {
*key_state = false;
- DualKeyReleased( brother, layer );
+ LowerReleased( brother );
}
- update_tri_layer(_LOWER, _RAISE, _NEUTRAL );
return false;
-
}
+
+
+/**** process_record_user ****/
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static bool l_lower = false;
@@ -155,11 +214,16 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
- case L_LOWER : return LayerSwitch( record, &l_lower, r_lower, _LOWER ); break;
- case R_LOWER : return LayerSwitch( record, &r_lower, l_lower, _LOWER ); break;
- case L_RAISE : return LayerSwitch( record, &l_raise, r_raise, _RAISE ); break;
- case R_RAISE : return LayerSwitch( record, &r_raise, l_raise, _RAISE ); break;
+ case L_LOWER : return LowerSwitch( record, &l_lower, r_lower ); break;
+ case R_LOWER : return LowerSwitch( record, &r_lower, l_lower ); break;
+ case L_RAISE : return RaiseSwitch( record, &l_raise, r_raise ); break;
+ case R_RAISE : return RaiseSwitch( record, &r_raise, l_raise ); break;
+
+ default: break;
}
return true;
}
+
+
+
diff --git a/layouts/community/ortho_4x4/jotix/keymap.c b/layouts/community/ortho_4x4/jotix/keymap.c
index 561084f8ae..91d0ed74dc 100644
--- a/layouts/community/ortho_4x4/jotix/keymap.c
+++ b/layouts/community/ortho_4x4/jotix/keymap.c
@@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | 0 | . | * |
* +-------+-------+-------+-------+
*/
-[_NUMPAD] = LAYOUT_jotpad16 (
+[_NUMPAD] = LAYOUT_ortho_4x4 (
KC_P7, KC_P8, KC_P9, KC_PMNS,
KC_P4, KC_P5, KC_P6, KC_PPLS,
KC_P1, KC_P2, KC_P3, KC_PSLS,
@@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
/* Lower */
-[_LOWER] = LAYOUT_jotpad16 (
+[_LOWER] = LAYOUT_ortho_4x4 (
KC_NLCK,_______,_______,RESET ,
_______,_______,_______,_______,
_______,_______,_______,_______,