From 7d9dc61504d1251f8d0bd8ab58fb6a47234b52ef Mon Sep 17 00:00:00 2001 From: Oscillope Date: Thu, 8 Mar 2018 21:31:08 -0500 Subject: Fixes for JJ40 and Oscillope keymap (#2496) * Add navigation layer for hjkl arrow keys * Fix Oscillope keymap after jj40.h changes. Also fix jj40.c so that it can build without rgblight if you don't want that enabled. --- keyboards/jj40/jj40.c | 9 ++++++--- keyboards/jj40/keymaps/oscillope/config.h | 9 +++++++++ keyboards/jj40/keymaps/oscillope/keymap.c | 21 ++++++++++++++++++--- keyboards/jj40/keymaps/oscillope/rules.mk | 14 ++++++++++++++ 4 files changed, 47 insertions(+), 6 deletions(-) create mode 100644 keyboards/jj40/keymaps/oscillope/config.h create mode 100644 keyboards/jj40/keymaps/oscillope/rules.mk diff --git a/keyboards/jj40/jj40.c b/keyboards/jj40/jj40.c index 4affe199b..51f5295f4 100644 --- a/keyboards/jj40/jj40.c +++ b/keyboards/jj40/jj40.c @@ -28,8 +28,6 @@ along with this program. If not, see . #include "backlight.h" #include "backlight_custom.h" -extern rgblight_config_t rgblight_config; - // for keyboard subdirectory level init functions // @Override void matrix_init_kb(void) { @@ -52,6 +50,9 @@ void backlight_set(uint8_t level) { } #endif +#ifdef RGBLIGHT_ENABLE +extern rgblight_config_t rgblight_config; + // custom RGB driver void rgblight_set(void) { if (!rgblight_config.enable) { @@ -77,7 +78,9 @@ void matrix_scan_kb(void) { } rgblight_task(); - +#else +void matrix_scan_kb(void) { +#endif matrix_scan_user(); /* Nothing else for now. */ } diff --git a/keyboards/jj40/keymaps/oscillope/config.h b/keyboards/jj40/keymaps/oscillope/config.h new file mode 100644 index 000000000..52aaa8f24 --- /dev/null +++ b/keyboards/jj40/keymaps/oscillope/config.h @@ -0,0 +1,9 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +#define PREVENT_STUCK_MODIFIERS +#define TAPPING_TERM 300 + +#endif diff --git a/keyboards/jj40/keymaps/oscillope/keymap.c b/keyboards/jj40/keymaps/oscillope/keymap.c index 5d2f400a1..d4bca0e49 100644 --- a/keyboards/jj40/keymaps/oscillope/keymap.c +++ b/keyboards/jj40/keymaps/oscillope/keymap.c @@ -18,9 +18,17 @@ along with this program. If not, see . #include "jj40.h" #include "action_layer.h" +#ifdef KEYMAP +#undef KEYMAP +#endif +#define KEYMAP KEYMAP_OFFSET + #define _QWERTY 0 #define _LOWER 1 #define _RAISE 2 +#define _NAV 3 + +#define NAV_TAP LT(_NAV, KC_SPC) enum custom_keycodes { QWERTY = SAFE_RANGE, @@ -48,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_ENT, \ KC_GRV, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT, \ - KC_LCTL, KC_LGUI, KC_LALT, TT(_LOWER), KC_LSFT, TT(_RAISE), KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ + KC_LCTL, KC_LGUI, KC_LALT, TT(_LOWER), KC_LSFT, TT(_RAISE), NAV_TAP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ ), /* Lower @@ -66,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_INS, _______, _______, CC_PRN, CC_BRC, CC_CBR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, \ KC_PSCR, KC_WBAK, KC_WFWD, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, \ - _______, _______, _______, _______, KC_LOCK, _______, _______, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT \ + _______, _______, _______, _______, KC_LOCK, _______, _______, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT \ ), /* Raise @@ -84,7 +92,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, KC_AMPR, KC_ASTR, KC_UNDS, KC_LPRN, KC_RPRN, KC_7, KC_8, KC_9, KC_EQL, KC_BSPC, KC_DEL, \ KC_TAB, KC_DLR, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, _______, \ CC_ARRW, KC_EXLM, KC_AT, KC_HASH, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, _______, KC_BSLS, KC_PIPE, \ - _______, _______, _______, _______, _______, _______, KC_0, KC_HOME, KC_PGDN, KC_PGUP, KC_END \ + _______, _______, _______, _______, _______, _______, KC_0, KC_HOME, KC_PGDN, KC_PGUP, KC_END \ +), + +[_NAV] = KEYMAP( \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ ) }; diff --git a/keyboards/jj40/keymaps/oscillope/rules.mk b/keyboards/jj40/keymaps/oscillope/rules.mk new file mode 100644 index 000000000..a121bbc77 --- /dev/null +++ b/keyboards/jj40/keymaps/oscillope/rules.mk @@ -0,0 +1,14 @@ +# build options +BOOTMAGIC_ENABLE = no +MOUSEKEY_ENABLE = no +EXTRAKEY_ENABLE = yes +CONSOLE_ENABLE = no +COMMAND_ENABLE = yes + +BACKLIGHT_ENABLE = no +BACKLIGHT_CUSTOM_DRIVER = no + +RGBLIGHT_ENABLE = no +RGBLIGHT_CUSTOM_DRIVER = no + +KEY_LOCK_ENABLE = yes -- cgit v1.2.3