From 5e235d30c760272b4e33e22bfa470e63c2dbaaca Mon Sep 17 00:00:00 2001 From: Peter Becich Date: Thu, 23 Apr 2020 13:07:58 -0700 Subject: [PATCH] [Keymap] Dvorak for Keeb.io Iris (#8863) * Dvorak keymap for Iris Tested to work with Iris rev. 2 Squashed commit of the following: commit c7a1bcf831e79953e81dda4a014b90daf4f63276 Author: Peter Becich Date: Sat Oct 13 17:34:11 2018 -0700 backtick commit 7a7f6a5fec56446f973a4f145c5f8d002de6cd08 Author: Peter Becich Date: Sun Sep 23 17:27:17 2018 -0700 iris dvorak commit 625461097eb1ba4585a716853999a0f30daffb2b Author: Peter Becich Date: Sun Sep 23 17:22:01 2018 -0700 iris dvorak * dvorak keymap readme * key correction, keymap readme * Apply suggestions from code review Co-Authored-By: Joel Challis * revise backspace key Co-authored-by: Joel Challis --- keyboards/keebio/iris/keymaps/dvorak/config.h | 33 +++ .../keebio_iris_rev2_layout_dvorak.json | 192 ++++++++++++++++++ keyboards/keebio/iris/keymaps/dvorak/keymap.c | 73 +++++++ .../keebio/iris/keymaps/dvorak/readme.md | 16 ++ keyboards/keebio/iris/keymaps/dvorak/rules.mk | 2 + 5 files changed, 316 insertions(+) create mode 100644 keyboards/keebio/iris/keymaps/dvorak/config.h create mode 100644 keyboards/keebio/iris/keymaps/dvorak/keebio_iris_rev2_layout_dvorak.json create mode 100644 keyboards/keebio/iris/keymaps/dvorak/keymap.c create mode 100644 keyboards/keebio/iris/keymaps/dvorak/readme.md create mode 100644 keyboards/keebio/iris/keymaps/dvorak/rules.mk diff --git a/keyboards/keebio/iris/keymaps/dvorak/config.h b/keyboards/keebio/iris/keymaps/dvorak/config.h new file mode 100644 index 0000000000..d37d3c3123 --- /dev/null +++ b/keyboards/keebio/iris/keymaps/dvorak/config.h @@ -0,0 +1,33 @@ +/* +Copyright 2017 Danny Nguyen + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL + +/* Select hand configuration */ + +#define MASTER_LEFT + +#undef RGBLED_NUM +#define RGBLIGHT_ANIMATIONS +#define RGBLED_NUM 12 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/keebio/iris/keymaps/dvorak/keebio_iris_rev2_layout_dvorak.json b/keyboards/keebio/iris/keymaps/dvorak/keebio_iris_rev2_layout_dvorak.json new file mode 100644 index 0000000000..be5cc37938 --- /dev/null +++ b/keyboards/keebio/iris/keymaps/dvorak/keebio_iris_rev2_layout_dvorak.json @@ -0,0 +1,192 @@ +{ + "author": "", + "layers": [ + [ + "KC_ESC", + "KC_1", + "KC_2", + "KC_3", + "KC_4", + "KC_5", + "KC_6", + "KC_7", + "KC_8", + "KC_9", + "KC_0", + "KC_BSPC", + "KC_TAB", + "KC_QUOT", + "KC_COMM", + "KC_DOT", + "KC_P", + "KC_Y", + "KC_F", + "KC_G", + "KC_C", + "KC_R", + "KC_L", + "KC_SLSH", + "KC_LCTL", + "KC_A", + "KC_O", + "KC_E", + "KC_U", + "KC_I", + "KC_D", + "KC_H", + "KC_T", + "KC_N", + "KC_S", + "KC_MINS", + "KC_LSFT", + "KC_SCLN", + "KC_Q", + "KC_J", + "KC_K", + "KC_X", + "KC_HOME", + "KC_END", + "KC_B", + "KC_M", + "KC_W", + "KC_V", + "KC_Z", + "KC_RSFT", + "MO(1)", + "KC_LGUI", + "KC_ENT", + "KC_SPC", + "KC_RALT", + "MO(2)" + ], + [ + "KC_TILD", + "KC_EXLM", + "KC_AT", + "KC_HASH", + "KC_DLR", + "KC_PERC", + "KC_CIRC", + "KC_AMPR", + "KC_ASTR", + "KC_LPRN", + "KC_RPRN", + "KC_BSPC", + "RESET", + "KC_1", + "KC_2", + "KC_3", + "KC_4", + "KC_5", + "KC_6", + "KC_7", + "KC_8", + "KC_9", + "KC_0", + "KC_GRV", + "KC_DEL", + "KC_NO", + "KC_LEFT", + "KC_RGHT", + "KC_UP", + "KC_LCBR", + "KC_RCBR", + "KC_P4", + "KC_P5", + "KC_P6", + "KC_PPLS", + "KC_BSPC", + "BL_INC", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_DOWN", + "KC_LBRC", + "KC_LPRN", + "KC_RPRN", + "KC_RBRC", + "KC_P1", + "KC_P2", + "KC_P3", + "KC_PMNS", + "KC_PIPE", + "KC_NO", + "KC_NO", + "KC_DEL", + "KC_DEL", + "KC_NO", + "KC_P0" + ], + [ + "KC_F12", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_F11", + "RGB_TOG", + "KC_EXLM", + "KC_AT", + "KC_HASH", + "KC_DLR", + "KC_PERC", + "KC_CIRC", + "KC_AMPR", + "KC_ASTR", + "KC_LPRN", + "KC_RPRN", + "KC_NO", + "RGB_MOD", + "KC_MRWD", + "KC_MFFD", + "KC_VOLU", + "KC_PGUP", + "KC_UNDS", + "KC_PEQL", + "KC_HOME", + "RGB_HUI", + "RGB_SAI", + "RGB_VAI", + "KC_BSLS", + "KC_MUTE", + "KC_MSTP", + "KC_MPLY", + "KC_VOLD", + "KC_PGDN", + "KC_PMNS", + "KC_NO", + "KC_NO", + "KC_PPLS", + "KC_END", + "RGB_HUD", + "RGB_SAD", + "RGB_VAD", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO" + ] + ], + "layout": "LAYOUT", + "keymap": "keebio_iris_rev2_layout_dvorak.json", + "keyboard": "keebio/iris/rev2", + "documentation": "\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code. + +To setup your QMK environment check out the tutorial: + +You can convert this file to a keymap.c using this command: `qmk json2c {keymap}` + +You can compile this keymap using this command: `qmk compile {keymap}`\" +", + "notes": "", + "version": 1 +} diff --git a/keyboards/keebio/iris/keymaps/dvorak/keymap.c b/keyboards/keebio/iris/keymaps/dvorak/keymap.c new file mode 100644 index 0000000000..3f0886521c --- /dev/null +++ b/keyboards/keebio/iris/keymaps/dvorak/keymap.c @@ -0,0 +1,73 @@ +#include QMK_KEYBOARD_H +enum my_layers { + _DVORAK, + _LOWER, + _RAISE, + _ADJUST +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_DVORAK] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_HOME, KC_END, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + LOWER, KC_LGUI, KC_ENT, KC_SPC, KC_RALT, RAISE + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_LOWER] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_GRAVE, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + BL_STEP, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, KC_PIPE, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, KC_DEL, KC_DEL, _______, KC_P0 + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_RAISE] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, _______, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_ADJUST] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/keebio/iris/keymaps/dvorak/readme.md b/keyboards/keebio/iris/keymaps/dvorak/readme.md new file mode 100644 index 0000000000..8397ef84ac --- /dev/null +++ b/keyboards/keebio/iris/keymaps/dvorak/readme.md @@ -0,0 +1,16 @@ + +![Iris Dvorak keymap](https://i.imgur.com/DXESYqV.png) + +# Dvorak + +``` +make keebio/iris/rev2:dvorak +``` +``` +make keebio/iris/rev3:dvorak +``` +``` +make keebio/iris/rev4:dvorak +``` + +Tested with Iris rev. 2 diff --git a/keyboards/keebio/iris/keymaps/dvorak/rules.mk b/keyboards/keebio/iris/keymaps/dvorak/rules.mk new file mode 100644 index 0000000000..d7463419b4 --- /dev/null +++ b/keyboards/keebio/iris/keymaps/dvorak/rules.mk @@ -0,0 +1,2 @@ +RGBLIGHT_ENABLE = yes +BACKLIGHT_ENABLE = yes