summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormvs <mvs>2018-01-18 01:21:31 +0100
committerJack Humbert <jack.humb@gmail.com>2018-02-02 07:02:58 +0100
commit0310eafdcf3fd372f6804f209d42b5baf927eee3 (patch)
tree4cc8b452eb1ef2528d87eb2d16928e2c4259e389
parentf2459997ba5a2f4e14c17bcba301ca6624780aa2 (diff)
downloadqmk_firmware-0310eafdcf3fd372f6804f209d42b5baf927eee3.tar.gz
qmk_firmware-0310eafdcf3fd372f6804f209d42b5baf927eee3.tar.xz
QWERTY based layout with thumb-chording (SHIFT + SPECIAL) and programming layer.
-rw-r--r--keyboards/ergodox_ez/keymaps/saha/keymap.c255
1 files changed, 255 insertions, 0 deletions
diff --git a/keyboards/ergodox_ez/keymaps/saha/keymap.c b/keyboards/ergodox_ez/keymaps/saha/keymap.c
new file mode 100644
index 000000000..4df9e8833
--- /dev/null
+++ b/keyboards/ergodox_ez/keymaps/saha/keymap.c
@@ -0,0 +1,255 @@
+#include QMK_KEYBOARD_H
+
+#include "ergodox_ez.h"
+#include "debug.h"
+#include "action_layer.h"
+
+#define BASE 0 // Base layer - QWERTY
+#define SPEC 1 // Special keys favoring programming in c-like languages
+#define NUM 2 // Numeric layer with number row functional keys
+
+#define ___ KC_TRNS
+#define BSLASH LSFT(KC_SLSH)
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [BASE] = LAYOUT_ergodox(
+
+ // Left side
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_VOLU, /**/ KC_1, /**/ KC_2, /**/ KC_3, /**/ KC_4, /**/ KC_5, /**/ KC_F11, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_VOLD, /**/ KC_Q, /**/ KC_W, /**/ KC_E, /**/ KC_R, /**/ KC_T, /**/ KC_ESC, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*==========================================================================================*/ /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_MPLY, /**/ KC_A, /**/ KC_S, /**/ KC_D, /**/ KC_F, /**/ KC_G, /*===============*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*==========================================================================================*/ /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_MUTE, /**/ KC_Z, /**/ KC_X, /**/ KC_C, /**/ KC_V, /**/ KC_B, /**/ KC_BSPC, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/ ___, /**/ KC_RALT, /**/ KC_LCTRL, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=======================================================================*/
+
+
+ /*==============================*/
+ /**/ /**/ /**/
+ /**/ ___, /**/ KC_DEL, /**/
+ /**/ /**/ /**/
+ /*=============================================*/
+ /**/ /**/ /**/ /**/
+ /**/ /**/ /**/ KC_LALT, /**/
+ /**/ /**/ /**/ /**/
+ /**/ /**/ /*===============*/
+ /**/ /**/ /**/ /**/
+ /**/ KC_SPACE, /**/ KC_LGUI, /**/ KC_LCTRL, /**/
+ /**/ /**/ /**/ /**/
+ /*=============================================*/
+
+ // Right side
+ //
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_F12, /**/ KC_1, /**/ KC_2, /**/ KC_3, /**/ KC_4, /**/ KC_5, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_Y, /**/ KC_U, /**/ KC_I, /**/ KC_O, /**/ KC_P, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ /*==========================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*===============*/ KC_H, /**/ KC_J, /**/ KC_K, /**/ KC_L, /**/ KC_SCLN, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ /*==========================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_ENT, /**/ KC_N, /**/ KC_M, /**/ KC_COMM, /**/ KC_DOT, /**/ KC_SLSH, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ MO(NUM), /**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=======================================================================*/
+
+ /*==============================*/
+ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/
+ /**/ /**/ /**/
+ /*=============================================*/
+ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ /**/ /**/
+ /**/ /**/ /**/ /**/
+ /*===============*/ /**/ /**/
+ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_RSFT, /**/ MO(SPEC) /**/
+ /**/ /**/ /**/ /**/
+ /*=============================================*/
+ ),
+
+
+ [SPEC] = LAYOUT_ergodox(
+
+ // Left side
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_EXLM, /**/ KC_AT, /**/ KC_HASH, /**/ KC_DLR, /**/ KC_PERC, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_GRV, /**/ KC_QUOT, /**/ KC_LCBR, /**/ KC_RCBR, /**/ KC_PLUS, /**/ KC_ESC, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*==========================================================================================*/ /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_TAB, /**/ KC_ASTR, /**/ KC_LPRN, /**/ KC_RPRN, /**/ KC_EQUAL, /*===============*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*==========================================================================================*/ /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_HASH, /**/ KC_PERC, /**/ KC_LBRC, /**/ KC_RBRC, /**/ KC_MINUS, /**/ KC_BSPC, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/ ___, /**/ KC_LALT, /**/ KC_LCTRL, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=======================================================================*/
+
+
+ /*==============================*/
+ /**/ /**/ /**/
+ /**/ ___, /**/ KC_DEL, /**/
+ /**/ /**/ /**/
+ /*=============================================*/
+ /**/ /**/ /**/ /**/
+ /**/ /**/ /**/ KC_LALT, /**/
+ /**/ /**/ /**/ /**/
+ /**/ /**/ /*===============*/
+ /**/ /**/ /**/ /**/
+ /**/ KC_SPACE, /**/ KC_LGUI, /**/ KC_LCTRL, /**/
+ /**/ /**/ /**/ /**/
+ /*=============================================*/
+
+ // Right side
+ //
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_CIRC, /**/ KC_AMPR, /**/ KC_ASTR, /**/ KC_LPRN, /**/ KC_RPRN, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_AMPR, /**/ KC_HOME, /**/ KC_UP, /**/ KC_END, /**/ KC_CIRC, /**/ KC_F7, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ /*==========================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*===============*/ KC_EXLM, /**/ KC_LEFT, /**/ KC_DOWN, /**/ KC_RIGHT, /**/ KC_COLN, /**/ KC_F8, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ /*==========================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_ENT, /**/ KC_PIPE, /**/ KC_UNDS, /**/ KC_LT, /**/ KC_GT, /**/ KC_BSLS, /**/ KC_F9, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/KC_F10,/**/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=======================================================================*/
+
+ /*==============================*/
+ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/
+ /**/ /**/ /**/
+ /*=============================================*/
+ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ /**/ /**/
+ /**/ /**/ /**/ /**/
+ /*===============*/ /**/ /**/
+ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_RSFT, /**/ ___ /**/
+ /**/ /**/ /**/ /**/
+ /*=============================================*/
+ ),
+
+ [NUM] = LAYOUT_ergodox(
+
+ // Left side
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_F1, /**/ KC_F2, /**/ KC_F3, /**/ KC_F4, /**/ KC_F5, /**/ KC_F11, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_EXLM, /**/ KC_AT, /**/ KC_HASH, /**/ KC_DLR, /**/ KC_PERC, /**/ KC_ESC, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*==========================================================================================*/ /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_1, /**/ KC_2, /**/ KC_3, /**/ KC_4, /**/ KC_5, /*===============*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*==========================================================================================*/ /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_HASH, /**/ KC_PERC, /**/ KC_LBRC, /**/ KC_RBRC, /**/ KC_MINUS, /**/ KC_BSPC, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/ ___, /**/ KC_LALT, /**/ KC_LCTRL, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=======================================================================*/
+
+
+ /*==============================*/
+ /**/ /**/ /**/
+ /**/ ___, /**/ KC_DEL, /**/
+ /**/ /**/ /**/
+ /*=============================================*/
+ /**/ /**/ /**/ /**/
+ /**/ /**/ /**/ KC_LALT, /**/
+ /**/ /**/ /**/ /**/
+ /**/ /**/ /*===============*/
+ /**/ /**/ /**/ /**/
+ /**/ KC_SPACE, /**/ KC_LGUI, /**/ KC_LCTRL, /**/
+ /**/ /**/ /**/ /**/
+ /*=============================================*/
+
+ // Right side
+ //
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_F12, /**/ KC_F6, /**/ KC_F7, /**/ KC_F8, /**/ KC_F9, /**/ KC_F10, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_CIRC, /**/ KC_AMPR, /**/ KC_ASTR, /**/ KC_LPRN, /**/ KC_RPRN, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ /*==========================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*===============*/ KC_6, /**/ KC_7, /**/ KC_8, /**/ KC_9, /**/ KC_0, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ /*==========================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ KC_ENT, /**/ KC_PIPE, /**/ KC_UNDS, /**/ KC_COMM, /**/ KC_DOT, /**/ KC_BSLS, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=========================================================================================================*/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/ ___, /**/
+ /**/ /**/ /**/ /**/ /**/ /**/
+ /*=======================================================================*/
+
+ /*==============================*/
+ /**/ /**/ /**/
+ /**/ ___, /**/ ___, /**/
+ /**/ /**/ /**/
+ /*=============================================*/
+ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ /**/ /**/
+ /**/ /**/ /**/ /**/
+ /*===============*/ /**/ /**/
+ /**/ /**/ /**/ /**/
+ /**/ ___, /**/ KC_RSFT, /**/ ___ /**/
+ /**/ /**/ /**/ /**/
+ /*=============================================*/
+ ),
+
+};