]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Add ergodash layout, update the backlight numbers for the rgb backlight to be the...
authorFredric Silberberg <fred@silberberg.xyz>
Wed, 19 Jun 2019 07:50:05 +0000 (00:50 -0700)
committerDrashna Jaelre <drashna@live.com>
Thu, 20 Jun 2019 16:25:41 +0000 (09:25 -0700)
keyboards/ergodash/rev1/keymaps/333fred/config.h [new file with mode: 0644]
keyboards/ergodash/rev1/keymaps/333fred/keymap.c [new file with mode: 0644]
keyboards/ergodash/rev1/keymaps/333fred/rules.mk [new file with mode: 0644]
users/333fred/333fred.h
users/333fred/layout_macros.h [new file with mode: 0644]
users/333fred/rgb.c

diff --git a/keyboards/ergodash/rev1/keymaps/333fred/config.h b/keyboards/ergodash/rev1/keymaps/333fred/config.h
new file mode 100644 (file)
index 0000000..e48702f
--- /dev/null
@@ -0,0 +1,10 @@
+#pragma once
+
+#include QMK_KEYBOARD_CONFIG_H
+#include "333fred_config.h"
+
+#define USE_SERIAL
+#define MASTER_LEFT
+
+#undef TAPPING_TERM
+#define TAPPING_TERM 200
diff --git a/keyboards/ergodash/rev1/keymaps/333fred/keymap.c b/keyboards/ergodash/rev1/keymaps/333fred/keymap.c
new file mode 100644 (file)
index 0000000..8ed826d
--- /dev/null
@@ -0,0 +1,57 @@
+#include QMK_KEYBOARD_H
+#include "333fred.h"
+
+extern keymap_config_t keymap_config;
+
+// Use an expanded macro with VA_ARGS to ensure that the common
+// rows get expanded out before getting passed to the LAYOUT
+// macro.
+
+#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+  [BASE] = LAYOUT_wrapper( \
+    ROW5_LEFT_BASE,          KC_F5,                                     KC_F6,            ROW5_RGHT_BASE,
+    ROW4_LEFT_BASE,          TG(GAME),                                  TG(GAME_ARROW),   ROW4_RGHT_BASE,
+    ROW3_LEFT_BASE,          KC_LGUI,                                   KC_BSPC,          ROW3_RGHT_BASE,
+    ROW2_LEFT_BASE,          TD(TD_COPY_PASTE),                         KC_UP ,           ROW2_RGHT_BASE,
+    ROW1_LEFT_BASE, KC_BSPC, TD(TD_SYM_VIM),    KC_DEL,         KC_ENT, KC_SPC , KC_DOWN, ROW1_RGHT_BASE
+  ),
+
+  [SYMB] = LAYOUT_wrapper(
+    ROW5_LEFT_SYMB,          _______,                           _______,          ROW5_RGHT_SYMB,
+    ROW4_LEFT_SYMB,          PSCREEN_APP,                       _______,          ROW4_RGHT_SYMB,
+    ROW3_LEFT_SYMB,          KC_PSCR,                           KC_VOLU,          ROW3_RGHT_SYMB,
+    ROW2_LEFT_SYMB,          _______,                           KC_VOLD,          ROW2_RGHT_SYMB,
+    ROW1_LEFT_SYMB, _______, _______, _______,         KC_MPRV, KC_MPLY, KC_MNXT, ROW1_RGHT_SYMB
+  ),
+
+  [VIM] = LAYOUT_wrapper(
+    ROW5_LEFT_VIM,          _______,                           _______,          ROW5_RGHT_VIM,
+    ROW4_LEFT_VIM,          _______,                           _______,          ROW4_RGHT_VIM,
+    ROW3_LEFT_VIM,          _______,                           _______,          ROW3_RGHT_VIM,
+    ROW2_LEFT_VIM,          _______,                           _______,          ROW2_RGHT_VIM,
+    ROW1_LEFT_VIM, _______, _______, _______,         _______, _______, _______, ROW1_RGHT_VIM
+  ),
+
+  [GAME] = LAYOUT_wrapper(
+      KC_ESC,   SIX_TRNS,                                                   _______, SIX_TRNS,
+      SIX_TRNS,                                              _______,     _______, SIX_TRNS,
+      KC_LCTL,  FOUR_TRNS,                          _______, KC_F6,         _______, SIX_TRNS,
+      KC_LSFT,  KC_Z,    FOUR_TRNS,                          KC_F5,         _______, SIX_TRNS,
+      KC_ENT,   _______, KC_LOCK, KC_BSPC, KC_LALT, KC_SPC,  OSM(SYMB),     _______, SIX_TRNS
+  ),
+
+  [GAME_ARROW] = LAYOUT_wrapper(
+      KC_ESC,   SIX_TRNS,                                                  _______, SIX_TRNS,
+      _______,  _______, KC_UP,   _______,  _______, _______, _______,     _______, SIX_TRNS,
+      KC_LCTL,  KC_LEFT, KC_DOWN, KC_RGHT,  _______, _______, KC_F6,       _______, SIX_TRNS,
+      KC_LSFT,  KC_Z,    FOUR_TRNS,                           KC_F5,       _______, SIX_TRNS,
+      KC_ENT,   _______, KC_LOCK, KC_BSPC, KC_LALT, KC_SPC,  OSM(SYMB),    _______, SIX_TRNS
+  )
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+  tap_dance_process_keycode(keycode);
+  return !try_handle_macro(keycode, record);
+}
diff --git a/keyboards/ergodash/rev1/keymaps/333fred/rules.mk b/keyboards/ergodash/rev1/keymaps/333fred/rules.mk
new file mode 100644 (file)
index 0000000..9d8ff37
--- /dev/null
@@ -0,0 +1,7 @@
+BACKLIGHT_ENABLE = no
+RGBLIGHT_ENABLE = yes
+AUDIO_ENABLE = no
+NKRO_ENABLE = yes
+KEY_LOCK_ENABLE = yes
+TAP_DANCE_ENABLE = yes
+CONSOLE_ENABLE = no
index 17f3779b7423d6d7805a95af75c4e2346175f927..716b61a25c3726b8c05089b9fb0534349cd43c6a 100644 (file)
@@ -1,6 +1,7 @@
 #pragma once
 
 #include "quantum.h"
+#include "layout_macros.h"
 
 #define BASE 0
 #define CODE 1 // code layer
diff --git a/users/333fred/layout_macros.h b/users/333fred/layout_macros.h
new file mode 100644 (file)
index 0000000..3b163f6
--- /dev/null
@@ -0,0 +1,44 @@
+#pragma once
+
+#define SIX_TRNS  _______, _______, _______, _______, _______, _______
+#define FOUR_TRNS _______, _______, _______, _______
+
+// Row 5: 6 keys
+#define ROW5_LEFT_BASE KC_GRV,  KC_1,  KC_2,  KC_3,  KC_4,  KC_5
+#define ROW5_RGHT_BASE KC_6,    KC_7,  KC_8,  KC_9,  KC_0,  KC_MINS
+#define ROW5_LEFT_SYMB _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5
+#define ROW5_RGHT_SYMB KC_F6,   KC_F7,  KC_F8,   KC_F9,   KC_F10,  KC_F11
+#define ROW5_LEFT_VIM  SIX_TRNS
+#define ROW5_RGHT_VIM  SIX_TRNS
+
+// Row 4: 6 keys
+#define ROW4_LEFT_BASE KC_TAB,  KC_Q,    KC_W,  KC_E,    KC_R,    KC_T
+#define ROW4_RGHT_BASE KC_Y,    KC_U,    KC_I,  KC_O,    KC_P,    KC_BSLS
+#define ROW4_LEFT_SYMB _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE
+#define ROW4_RGHT_SYMB KC_UP,   KC_7,    KC_8,  KC_9,    KC_ASTR, KC_F12
+#define ROW4_LEFT_VIM  SIX_TRNS
+#define ROW4_RGHT_VIM  SIX_TRNS
+
+// Row 3: 6 keys
+#define ROW3_LEFT_BASE CTL_T(KC_ESC), KC_A,    KC_S,   KC_D,     KC_F,    KC_G
+#define ROW3_RGHT_BASE KC_H,          KC_J,    KC_K,   KC_L,     KC_SCLN, KC_QUOT
+#define ROW3_LEFT_SYMB _______,       KC_HASH, KC_DLR, KC_LCBR,  KC_RCBR, KC_GRV
+#define ROW3_RGHT_SYMB KC_DOWN,       KC_4,    KC_5,   KC_6,     KC_PLUS, _______
+#define ROW3_LEFT_VIM  _______,       DLEFT,   DRIGHT, KC_LCTL,  KC_LGUI, _______
+#define ROW3_RGHT_VIM  KC_LEFT,       KC_DOWN, KC_UP,  KC_RIGHT, _______, _______
+
+// Row 2: 6 keys
+#define ROW2_LEFT_BASE OSM(MOD_LSFT), CTL_T(KC_Z), KC_X,    KC_C,     KC_V,           KC_B
+#define ROW2_RGHT_BASE KC_N,          KC_M,        KC_COMM, KC_DOT,   CTL_T(KC_SLSH), OSM(MOD_RSFT)
+#define ROW2_LEFT_SYMB _______,       KC_PERC,     KC_CIRC, KC_LBRC,  KC_RBRC,        KC_TILD
+#define ROW2_RGHT_SYMB KC_AMPR,       KC_1,        KC_2,    KC_3,     KC_BSLS,        _______
+#define ROW2_LEFT_VIM  _______,       _______,     KC_TAB,  _______,  _______,        _______
+#define ROW2_RGHT_VIM  SIX_TRNS
+
+// Row 1: 4 keys
+#define ROW1_LEFT_BASE OSM(MOD_LCTL), KC_F4,   KC_F5,    KC_LALT
+#define ROW1_RGHT_BASE KC_DOWN,       KC_EQL,  KC_RIGHT, KC_RGUI
+#define ROW1_LEFT_SYMB _______,       _______, _______,  _______
+#define ROW1_RGHT_SYMB KC_0,          KC_DOT,  KC_EQL,   _______
+#define ROW1_LEFT_VIM  FOUR_TRNS
+#define ROW1_RGHT_VIM  FOUR_TRNS
index 5a6d74b5ac60568ec9aaef547879c99dfa287fe7..c86cd1c77d0ddb76b14e908ad0ff265dca2ac4dd 100644 (file)
@@ -5,15 +5,15 @@ void layer_state_set_rgb(uint32_t state) {
   switch (biton32(state)) {
     case BASE:
       // purple
-      rgblight_sethsv_noeeprom(255, 255, 20);
+      rgblight_sethsv_noeeprom(210, 255, 20);
       break;
     case SYMB:
       // blue
-      rgblight_sethsv_noeeprom(240, 255, 20);
+      rgblight_sethsv_noeeprom(191, 255, 20);
       break;
     case VIM:
       // green
-      rgblight_sethsv_noeeprom(120, 255, 20);
+      rgblight_sethsv_noeeprom(85, 255, 20);
       break;
     case GAME:
       // red