summaryrefslogtreecommitdiff
path: root/layouts/community
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/community')
-rw-r--r--layouts/community/60_ansi/stanrc85-ansi/keymap.c15
-rw-r--r--layouts/community/60_ansi/stanrc85-ansi/readme.md50
-rw-r--r--layouts/community/ergodox/bepo_alt/keymap.c127
-rw-r--r--layouts/community/ergodox/bepo_alt/readme.md66
-rw-r--r--layouts/community/ergodox/bepo_alt/rules.mk5
-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.h10
-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/dvorak_spanish/readme.md1
-rw-r--r--layouts/community/ergodox/osx_de/readme.md3
-rw-r--r--layouts/community/ergodox/osx_de_experimental/readme.md1
-rw-r--r--layouts/community/ergodox/teckinesis/readme.md2
-rw-r--r--layouts/community/ergodox/tm2030/readme.md2
-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.h11
-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
33 files changed, 594 insertions, 205 deletions
diff --git a/layouts/community/60_ansi/stanrc85-ansi/keymap.c b/layouts/community/60_ansi/stanrc85-ansi/keymap.c
index 00d6f5ede4..b6e851b153 100644
--- a/layouts/community/60_ansi/stanrc85-ansi/keymap.c
+++ b/layouts/community/60_ansi/stanrc85-ansi/keymap.c
@@ -16,24 +16,13 @@
#include QMK_KEYBOARD_H
#include "stanrc85.h"
-//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)
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_60_ansi(
TD_TESC, 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_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,
@@ -46,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
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, _______, _______, _______, KC_INS,
KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, KC_RDP, _______, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______),
[3] = LAYOUT_60_ansi(
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/ergodox/bepo_alt/keymap.c b/layouts/community/ergodox/bepo_alt/keymap.c
new file mode 100644
index 0000000000..fc40afd871
--- /dev/null
+++ b/layouts/community/ergodox/bepo_alt/keymap.c
@@ -0,0 +1,127 @@
+/* Bepo layout for ergodox EZ by Nicolas CARPi (deltablot.com) */
+#include QMK_KEYBOARD_H
+#include "keymap_bepo.h"
+#include "keymap_french.h"
+
+#define BEPO 0 // default layer, for bepo compatible systems
+#define FNAV 1 // function / navigation / mouse layer
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+/* Keymap 0: default layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | $ | " | < | > | ( | ) | @ | | + | - | - | / | * | = | % |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | TAB | B |E_ACUT| P | O |E_GRAV|Backsp| |CapsLo| ^ | V | D | L | J | Z |
+ * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------|
+ * | W | A | U | I | E | , |------| |------| C | T | S | R | N | M |
+ * |--------+------+------+------+------+------| | | ESCAP------+------+------+------+------+--------|
+ * | SHIFT |E_CIRC | A_GRAV | Y | X | . | K | | | ' | Q | G | H | F | C_CEDIL|
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * |Ctrl|LSuper|LSuper| LSuper| LAlt| | PgUp | PgDwn| |BEPO| Delete | | AltGr| RSuper|RSuper|RCtrl| Enter|
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | |Insert| |L_Fnav| | |
+ * | Space|Shift |------| |------|RShift|Enter |
+ * | | |Mouse | | Fn | | |
+ * `--------------------' `--------------------'
+ * df is for temporary stuff and mo is for toggle (momentary)
+ * so mouse is to toggle the mouse mode
+ */
+[BEPO] = LAYOUT_ergodox(
+
+/* Left hand */
+BP_DOLLAR, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, BP_AT,
+KC_TAB, BP_B, BP_E_ACUTE, BP_P, BP_O, BP_E_GRAVE, KC_BSPC,
+BP_W, BP_A, BP_U, BP_I, BP_E, BP_COMMA,
+KC_LSHIFT, BP_ECRC, BP_A_GRAVE, BP_Y, BP_X, BP_DOT, BP_K,
+KC_LCTL, KC_LGUI, KC_LGUI, KC_LGUI, KC_LALT,
+ KC_PGUP, KC_PGDOWN,
+ KC_INS,
+ KC_SPC, KC_LSHIFT, DF(FNAV),
+
+/* Right hand */
+ BP_PLUS, BP_MINUS, BP_MINUS, BP_SLASH, BP_ASTR, BP_EQUAL, BP_PERCENT,
+ KC_CAPSLOCK, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z,
+ BP_C, BP_T, BP_S, BP_R, BP_N, BP_M,
+ KC_ESC, BP_APOS, BP_Q, BP_G, BP_H, BP_F, BP_CCED,
+ KC_ALGR, KC_RGUI, KC_RGUI, KC_RCTL, KC_ENTER,
+DF(BEPO), KC_DEL,
+DF(FNAV),
+MO(FNAV), KC_RSHIFT, KC_ENTER),
+
+/* Keymap 1: function / navigation / mouse layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | F12 |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | | Next |LClick| Up |RClick| WhUp |Backspace| | | PgUp | Home | Up | End | F11 | |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | Prev | Left | Down | Right|WhDown|------| |------| Left | Down | Up | Right | F12 | |
+ * |--------+------+------+------+------+------| VolUp| | |------+------+------+------+------+--------|
+ * | Shift | Undo | Cut | Copy | Paste| | | | | | | | | | |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | ctrl | super | super | alt | | Home | End | | | | | | Alt | | |Ctrl | |
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
+ */
+[FNAV] = LAYOUT_ergodox(
+
+/* Left hand */
+KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
+KC_NO, KC_MS_BTN5, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, KC_MS_WH_UP, KC_BSPC,
+KC_NO, KC_MS_BTN4, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_WH_DOWN,
+KC_LSHIFT, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, KC_NO, KC_VOLD,
+KC_LCTL, KC_INS, KC_LGUI, KC_LGUI, KC_LALT,
+ KC_HOME, KC_END,
+ KC_TRNS,
+ KC_NO, KC_TRNS, KC_TRNS,
+
+/* Right hand */
+ KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F12,
+ KC_NO, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_F11, KC_NO,
+ KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_F12, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_RALT, KC_TRNS, KC_TRNS, KC_RCTL, KC_NO,
+KC_TRNS, KC_TRNS,
+KC_TRNS,
+KC_TRNS, KC_TRNS, KC_NO),
+};
+
+/* helper function to switch on of the right LED ON/OFF */
+static void indicate_using_led(const uint8_t led, const bool enabled) {
+ if (enabled) {
+ ergodox_right_led_on(led);
+ } else {
+ ergodox_right_led_off(led);
+ }
+}
+
+/* Runs constantly in the background, in a loop */
+void matrix_scan_user(void) {
+
+ /* red led for shift */
+ if (keyboard_report->mods & MOD_BIT(KC_LSFT) ||
+ ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) {
+ indicate_using_led(1, true);
+ } else {
+ indicate_using_led(1, false);
+ }
+
+ /* green led for alt */
+ if (keyboard_report->mods & MOD_BIT(KC_LALT) ||
+ ((get_oneshot_mods() & MOD_BIT(KC_LALT)) && !has_oneshot_mods_timed_out())) {
+ indicate_using_led(2, true);
+ } else {
+ indicate_using_led(2, false);
+ }
+
+ /* blue led for function mode */
+ if (IS_LAYER_ON(FNAV)) {
+ indicate_using_led(3, true);
+ } else {
+ indicate_using_led(3, false);
+ }
+};
diff --git a/layouts/community/ergodox/bepo_alt/readme.md b/layouts/community/ergodox/bepo_alt/readme.md
new file mode 100644
index 0000000000..c8cc1225cc
--- /dev/null
+++ b/layouts/community/ergodox/bepo_alt/readme.md
@@ -0,0 +1,66 @@
+![layer0](https://i.imgur.com/vd4QLBf.png)
+
+![layer1](https://i.imgur.com/eo101eD.png)
+
+# BEPO keymap for the ErgoDox (alternate version)
+
+This keymap has been made for the BEPO layout (https://bepo.fr), which is an ergonomic french keyboard layout based on Dvorak rules. As it's made for french people, the following of this readme will be in french.
+
+Keyboard Maintainer: [Nicolas CARPi](https://github.com/NicolasCARPi)
+
+Hardware Supported: Ergodox EZ
+
+## Disposition BÉPO pour l'ErgoDox
+
+Cette keymap a été adaptée de la keymap "bepo_csa" présente dans le dossier parent.
+
+Certaines modifications ont été apportées pour ressembler un peu plus à une clavier traditionel:
+
+* entrée sur la touche tout en bas à droite (comme la touche entrée du pavé numérique sur un clavier traditionnel)
+* plusieurs touches "Super" pour faciliter son accès
+
+Il y a deux layers, celui de base, et celui avec les flèches, les touches fonction et la souris (main gauche).
+
+## Particularités
+
+* Touches de repos des pouces : "espace" à gauche et "entrée" à droite.
+* Touche Ctrl gauche accessible avec la paume de la main.
+* Touche "w" placée sur la main gauche (j'ai toujours trouvé le "w" difficle d'accès sur un clavier bépo classique.
+* Plusieurs touches F12.
+* Les flèches sont disposées avec un déplacement à la VIM.
+* Un mode souris permet d'utiliser la souris avec le clavier.
+* Possibilité de changer de mode de manière temporaire ou permanente.
+* Les leds s'allument avec SHIFT, ALT ou la touche function.
+
+J'ai fait cette disposition pour mes besoins, à vous de la modifier pour les vôtres ;)
+
+## Utilisation
+
+### Pré-requis
+
+Pour Archlinux, il est nécessaire d'installer ces paquets au préalable:
+
+~~~bash
+sudo pacman -S avr-gcc avr-libc teensy-loader-cli
+~~~
+
+Les paquets "avr" permettent de compiler le firmware, et teensy-loader permet de le charger sur le clavier.
+
+### Compilation
+
+~~~bash
+# clone the repo
+git clone https://github.com/qmk/qmk_firmware
+# install submodules
+make git-submodule
+# compile this layout
+make ergodox_ez:bepo_alt
+~~~
+
+### Chargement
+
+~~~bash
+teensy-loader-cli -w -mmcu=atmega32u4 -v ergodox_ez_bepo_alt.hex && sleep 6 && setxkbmap fr bepo
+~~~
+
+J'ai ajouté un sleep avant la commande pour remettre en bépo afin de laisser au clavier le temps de rebooter.
diff --git a/layouts/community/ergodox/bepo_alt/rules.mk b/layouts/community/ergodox/bepo_alt/rules.mk
new file mode 100644
index 0000000000..faca18b543
--- /dev/null
+++ b/layouts/community/ergodox/bepo_alt/rules.mk
@@ -0,0 +1,5 @@
+# Having a file like this allows you to override Makefile definitions
+# for your own particular keymap
+
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+COMMAND_ENABLE = no # Commands for debug and configuration
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..a10c4bb297 100644
--- a/layouts/community/ergodox/drashna_glow/config.h
+++ b/layouts/community/ergodox/drashna_glow/config.h
@@ -8,4 +8,14 @@
#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_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/dvorak_spanish/readme.md b/layouts/community/ergodox/dvorak_spanish/readme.md
index e075e3cd7d..1256c6887d 100644
--- a/layouts/community/ergodox/dvorak_spanish/readme.md
+++ b/layouts/community/ergodox/dvorak_spanish/readme.md
@@ -1,5 +1,4 @@
# Ergodox Spanish Dvorak Layout
- * See spanish dvorak layout [here](http://djelibeibi.unex.es/dvorak/)
* Software layout must be set to SPANISH QWERTY to work properly
## Keymap Layers
diff --git a/layouts/community/ergodox/osx_de/readme.md b/layouts/community/ergodox/osx_de/readme.md
index 5011a9dd62..e4ccee3aa6 100644
--- a/layouts/community/ergodox/osx_de/readme.md
+++ b/layouts/community/ergodox/osx_de/readme.md
@@ -1,4 +1,4 @@
-#Ergodox EZ für OSX
+# Ergodox EZ für OSX
Dies ist nur ein kleiner Tweak der bestehenden firmware für das ErgoDox-EZ-Keyboard. Leider passte das layout nicht wirklich für OSX, deswegen habe ich einige Anpassungen gemacht. Dabei wurden folgende features umgesetzt:
@@ -14,7 +14,6 @@ Dies ist nur ein kleiner Tweak der bestehenden firmware für das ErgoDox-EZ-Keyb
# Erstellt Mit Dem ErgodoxLayoutGenerator
Der ErgodoxLayoutGenerator ist ein kleines Werkzeug, welches die Erstellung und Pflege der eigenen Keymaps erleichtern soll. Es ist in java geschrieben und kann [hier](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases) heruntergeladen werden. Damit das Tool funktioniert sollte das offizielle Oracle JDK in aktueller Version installiert sein.
-Die Dokumentation für den ELG kann man [hier](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/) nachlesen (momentan leider nur in Englisch verfügbar).
diff --git a/layouts/community/ergodox/osx_de_experimental/readme.md b/layouts/community/ergodox/osx_de_experimental/readme.md
index e6a1018416..dde28eee41 100644
--- a/layouts/community/ergodox/osx_de_experimental/readme.md
+++ b/layouts/community/ergodox/osx_de_experimental/readme.md
@@ -8,7 +8,6 @@ dieses layout ist experimentell und wird im Lufe der Zeit viele Änderungen und
# Erstellt Mit Dem ErgodoxLayoutGenerator
Der ErgodoxLayoutGenerator (ELG) ist ein kleines Werkzeug, welches die Erstellung und Pflege der eigenen Keymaps erleichtern soll. Es ist in java geschrieben und kann [hier](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases) heruntergeladen werden. Damit das Tool funktioniert sollte das offizielle Oracle JDK in aktueller Version installiert sein.
-Die Dokumentation für den ELG kann man [hier](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/) nachlesen (momentan leider nur in Englisch verfügbar).
---------------------------------------------------------------------------------------------------------------------
# Ergodox and Ergodox-EZ experimental layout
diff --git a/layouts/community/ergodox/teckinesis/readme.md b/layouts/community/ergodox/teckinesis/readme.md
index 6804bb06f6..d9b22742c9 100644
--- a/layouts/community/ergodox/teckinesis/readme.md
+++ b/layouts/community/ergodox/teckinesis/readme.md
@@ -1,6 +1,6 @@
# teckinesis Layout
-*A blend of TECK and Kinesis layouts, based on ["The Ordinary Layout" by Nicholas Keene](http://qmk.fm/keyboards/ergodox_ez/keymaps/ordinary/#the-ordinary-layout-a-familiar-and-powerful-layout)*
+*A blend of TECK and Kinesis layouts, based on ["The Ordinary Layout" by Nicholas Keene](/layouts/community/ergodox/ordinary)*
I love "The Ordinary Layout", but I still use a [TECK](https://www.trulyergonomic.com/store/index.php)
at the office, and I found the transition back and forth to be a bit more difficult than I expected.
diff --git a/layouts/community/ergodox/tm2030/readme.md b/layouts/community/ergodox/tm2030/readme.md
index 23746ddb76..fce0c46e7d 100644
--- a/layouts/community/ergodox/tm2030/readme.md
+++ b/layouts/community/ergodox/tm2030/readme.md
@@ -55,7 +55,7 @@ As on the original TM 2030, when `num` layer is activated, holding `fn` disables
## Dvorak Layer
Same as Layer 0 but with _Dvorak_ layout, to use with QWERTY OS layout.
-Enable Dvorak layout with [`Magic`](/TMK_readme.md#magic-commands)+`1` (`LShift`+`RShift`+`1`), disable with `Magic`-`0`.
+Enable Dvorak layout with [`Magic`](/docs/feature_bootmagic.md)+`1` (`LShift`+`RShift`+`1`), disable with `Magic`-`0`.
The middle (green) led indicates when the Dvorak layer is activated.
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..1858ee3a4f 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,9 @@
#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_MATRIX_SKIP_FRAMES 1 // number of frames to skip when displaying animations (0 is full effect) if not defined defaults to 1
+#define RGB_DISABLE_WHEN_USB_SUSPENDED true// turn off effects when suspended
// #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