[Keymap] Update to Drashna keymaps and Userspace (#5122)

* Proper rules include

* Minor tweaks

* Minor tweaks

* Add Desitny 2 Swapped layout support

* Add keycode to keylogger

* Convert my viterbi keymaps

* Fix Orthodox keyboard

* Add more default layers

* Make default layer keycodes more optimized

* Update gitlab CI yaml file

* Rev6 Cleanup

* Fix KC_MAKE macro

* Update GitLab CI yaml file

* More GitLab CI changes

* One final GitLab CI change

* Optimize KC_MAKE

* Reformatting of config

* Feature creeeeeeep

* Planck Rev6 updates
This commit is contained in:
Drashna Jaelre 2019-02-13 21:11:56 -08:00 committed by MechMerlin
parent 9841c64de9
commit 54f18ce0f7
22 changed files with 383 additions and 248 deletions

View File

@ -58,6 +58,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
), ),
[_NORMAN] = LAYOUT_crkbd_base_wrapper(
_________________NORMAN_L1_________________, _________________NORMAN_L1_________________,
_________________NORMAN_L2_________________, _________________NORMAN_R2_________________,
_________________NORMAN_L3_________________, _________________NORMAN_R3_________________
),
[_MALTRON] = LAYOUT_crkbd_base_wrapper(
_________________MALTRON_L1________________, _________________MALTRON_R1________________,
_________________MALTRON_L2________________, _________________MALTRON_R2________________,
_________________MALTRON_L3________________, _________________MALTRON_R3________________
),
[_EUCALYN] = LAYOUT_crkbd_base_wrapper(
_________________EUCALYN_L1________________, _________________EUCALYN_R1________________,
_________________EUCALYN_L2________________, _________________EUCALYN_R2________________,
_________________EUCALYN_L3________________, _________________EUCALYN_R3________________
),
[_CARPLAX] = LAYOUT_crkbd_base_wrapper(
_____________CARPLAX_QFMLWY_L1_____________, _____________CARPLAX_QFMLWY_R1_____________,
_____________CARPLAX_QFMLWY_L2_____________, _____________CARPLAX_QFMLWY_R2_____________,
_____________CARPLAX_QFMLWY_L3_____________, _____________CARPLAX_QFMLWY_R3_____________
),
[_MODS] = LAYOUT_wrapper( [_MODS] = LAYOUT_wrapper(
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,

View File

@ -44,6 +44,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
), ),
[_NORMAN] = LAYOUT_iris_base_wrapper(
_________________NORMAN_L1_________________, _________________NORMAN_L1_________________,
_________________NORMAN_L2_________________, _________________NORMAN_R2_________________,
_________________NORMAN_L3_________________, _________________NORMAN_R3_________________
),
[_MALTRON] = LAYOUT_iris_base_wrapper(
_________________MALTRON_L1________________, _________________MALTRON_R1________________,
_________________MALTRON_L2________________, _________________MALTRON_R2________________,
_________________MALTRON_L3________________, _________________MALTRON_R3________________
),
[_EUCALYN] = LAYOUT_iris_base_wrapper(
_________________EUCALYN_L1________________, _________________EUCALYN_R1________________,
_________________EUCALYN_L2________________, _________________EUCALYN_R2________________,
_________________EUCALYN_L3________________, _________________EUCALYN_R3________________
),
[_CARPLAX] = LAYOUT_iris_base_wrapper(
_____________CARPLAX_QFMLWY_L1_____________, _____________CARPLAX_QFMLWY_R1_____________,
_____________CARPLAX_QFMLWY_L2_____________, _____________CARPLAX_QFMLWY_R2_____________,
_____________CARPLAX_QFMLWY_L3_____________, _____________CARPLAX_QFMLWY_R3_____________
),
[_MODS] = LAYOUT_wrapper( [_MODS] = LAYOUT_wrapper(
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,

View File

@ -12,6 +12,6 @@ SWAP_HANDS_ENABLE = no
INDICATOR_LIGHTS = yes INDICATOR_LIGHTS = yes
MACROS_ENABLED = no MACROS_ENABLED = no
RGBLIGHT_TWINKLE = yes RGBLIGHT_TWINKLE = no
BOOTLOADER = qmk-dfu BOOTLOADER = qmk-dfu

View File

@ -17,6 +17,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once #pragma once
#undef MATRIX_ROWS
#define MATRIX_ROWS 5
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE
#undef RGBLED_NUM #undef RGBLED_NUM
#define RGBLED_NUM 16 #define RGBLED_NUM 16
@ -44,15 +47,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#undef PRODUCT #undef PRODUCT
#define PRODUCT Drashnas Viterbi Macro Pad #define PRODUCT Drashnas Viterbi Macro Pad
#define USE_I2C
#ifdef AUDIO_ENABLE #ifdef AUDIO_ENABLE
#define C6_AUDIO #define C6_AUDIO
#define NO_MUSIC_MODE #define NO_MUSIC_MODE
#endif #endif
#define STRICT_LAYER_RELEASE
#define LAYOUT_ortho_5x7( \ #define LAYOUT_ortho_5x7( \
L00, L01, L02, L03, L04, L05, L06, \ L00, L01, L02, L03, L04, L05, L06, \
L10, L11, L12, L13, L14, L15, L16, \ L10, L11, L12, L13, L14, L15, L16, \
@ -60,13 +59,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
L30, L31, L32, L33, L34, L35, L36, \ L30, L31, L32, L33, L34, L35, L36, \
L40, L41, L42, L43, L44, L45, L46 \ L40, L41, L42, L43, L44, L45, L46 \
) \ ) \
LAYOUT( \ { \
L00, L01, L02, L03, L04, L05, L06, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ { L00, L01, L02, L03, L04, L05, L06 }, \
L10, L11, L12, L13, L14, L15, L16, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ { L10, L11, L12, L13, L14, L15, L16 }, \
L20, L21, L22, L23, L24, L25, L26, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ { L20, L21, L22, L23, L24, L25, L26 }, \
L30, L31, L32, L33, L34, L35, L36, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \ { L30, L31, L32, L33, L34, L35, L36 }, \
L40, L41, L42, L43, L44, L45, L46, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO \ { L40, L41, L42, L43, L44, L45, L46 }, \
) }
#define QMK_ESC_OUTPUT F5 // usually COL #define QMK_ESC_OUTPUT F5 // usually COL
#define QMK_ESC_INPUT D4 // usually ROW #define QMK_ESC_INPUT D4 // usually ROW

View File

@ -8,6 +8,8 @@ extern keymap_config_t keymap_config;
// Layer names don't all need to be of the same length, obviously, and you can also skip them // Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers. // entirely and just use numbers.
// Fillers to make layering more clear
#define LMACRO OSL(_MACROS) #define LMACRO OSL(_MACROS)
#define DIABLO TG(_DIABLO) #define DIABLO TG(_DIABLO)
#define GAMEPAD TG(_GAMEPAD) #define GAMEPAD TG(_GAMEPAD)

View File

@ -7,12 +7,12 @@ TAP_DANCE_ENABLE = no
RGBLIGHT_ENABLE = yes RGBLIGHT_ENABLE = yes
AUDIO_ENABLE = yes AUDIO_ENABLE = yes
NKRO_ENABLE = yes NKRO_ENABLE = yes
SPLIT_KEYBOARD = no
NO_SECRETS = yes NO_SECRETS = yes
MACROS_ENABLED = yes MACROS_ENABLED = yes
INDICATOR_LIGHTS = no INDICATOR_LIGHTS = no
RGBLIGHT_TWINKLE = no RGBLIGHT_TWINKLE = no
LAYOUTS = ortho_5x7 LAYOUTS = ortho_5x7
# SRC := $(filter-out serial.c matrix.c i2c.c split_util.c,$(SRC)) # SRC := $(filter-out serial.c matrix.c i2c.c split_util.c,$(SRC))

View File

@ -15,72 +15,11 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#ifndef CONFIG_USER_H #pragma once
#define CONFIG_USER_H
#include QMK_KEYBOARD_CONFIG_H
#include "../drashna/config.h"
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE
#undef RGBLED_NUM #undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12 #define RGBLED_NUM 12
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
#define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
#define RGBLIGHT_EFFECT_BREATHE_CENTER 1
#define RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL 300
#define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1
#endif // RGBLIGHT_ENABLE
#undef LOCKING_SUPPORT_ENABLE
#undef LOCKING_RESYNC_ENABLE
#ifndef NO_DEBUG
#define NO_DEBUG
#endif // !NO_DEBUG
#ifndef NO_PRINT
#define NO_PRINT
#endif // !NO_PRINT
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
#undef PRODUCT
#define PRODUCT Drashnas Viterbi Macro Pad
#define USE_I2C
#ifdef AUDIO_ENABLE
#define C6_AUDIO
#define NO_MUSIC_MODE
#endif #endif
#define LAYOUT_ortho_5x7( \
L00, L01, L02, L03, L04, L05, L06, \
L10, L11, L12, L13, L14, L15, L16, \
L20, L21, L22, L23, L24, L25, L26, \
L30, L31, L32, L33, L34, L35, L36, \
L40, L41, L42, L43, L44, L45, L46 \
) \
LAYOUT( \
L00, L01, L02, L03, L04, L05, L06, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
L10, L11, L12, L13, L14, L15, L16, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
L20, L21, L22, L23, L24, L25, L26, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
L30, L31, L32, L33, L34, L35, L36, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
L40, L41, L42, L43, L44, L45, L46, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO \
)
#endif
#define QMK_ESC_OUTPUT F5 // usually COL
#define QMK_ESC_INPUT D4 // usually ROW
#define QMK_LED B0
#define QMK_SPEAKER C6

View File

@ -1,28 +1,4 @@
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = no # Commands for debug and configuration
TAP_DANCE_ENABLE = no
RGBLIGHT_ENABLE = yes
AUDIO_ENABLE = yes
NKRO_ENABLE = yes
NO_SECRETS = yes
MACROS_ENABLED = yes
INDICATOR_LIGHTS = no
RGBLIGHT_TWINKLE = no
LAYOUTS = ortho_5x7
# SRC := $(filter-out serial.c matrix.c i2c.c split_util.c,$(SRC))
# SRC := $(filter-out serial.c,$(SRC))
# SRC := $(filter-out matrix.c,$(SRC))
# SRC := $(filter-out i2c.c,$(SRC))
# SRC := $(filter-out split_util.c,$(SRC))
# SRC += quantum/matrix.c
USER_NAME := drashna USER_NAME := drashna
SRC += ../drashna/keymap.c SRC += ../drashna/keymap.c
BOOTLOADER = qmk-dfu include $(KEYBOARD_PATH_2)/keymaps/drashna/rules.mk

View File

@ -33,6 +33,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define EE_HANDS #define EE_HANDS
/* key combination for magic key command */ /* key combination for magic key command */
#undef IS_COMMAND
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT)) \
) )

View File

@ -71,6 +71,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
), ),
[_NORMAN] = LAYOUT_orthodox_base_wrapper(
_________________NORMAN_L1_________________, _________________NORMAN_L1_________________,
_________________NORMAN_L2_________________, _________________NORMAN_R2_________________,
_________________NORMAN_L3_________________, _________________NORMAN_R3_________________
),
[_MALTRON] = LAYOUT_orthodox_base_wrapper(
_________________MALTRON_L1________________, _________________MALTRON_R1________________,
_________________MALTRON_L2________________, _________________MALTRON_R2________________,
_________________MALTRON_L3________________, _________________MALTRON_R3________________
),
[_EUCALYN] = LAYOUT_orthodox_base_wrapper(
_________________EUCALYN_L1________________, _________________EUCALYN_R1________________,
_________________EUCALYN_L2________________, _________________EUCALYN_R2________________,
_________________EUCALYN_L3________________, _________________EUCALYN_R3________________
),
[_CARPLAX] = LAYOUT_orthodox_base_wrapper(
_____________CARPLAX_QFMLWY_L1_____________, _____________CARPLAX_QFMLWY_R1_____________,
_____________CARPLAX_QFMLWY_L2_____________, _____________CARPLAX_QFMLWY_R2_____________,
_____________CARPLAX_QFMLWY_L3_____________, _____________CARPLAX_QFMLWY_R3_____________
),
[_MODS] = LAYOUT_wrapper(\ [_MODS] = LAYOUT_wrapper(\
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@ -94,6 +119,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
VRSN, _________________ADJUST_L2_________________, _______, _______, _______, KC_NUKE, _________________ADJUST_R2_________________, EEP_RST, VRSN, _________________ADJUST_L2_________________, _______, _______, _______, KC_NUKE, _________________ADJUST_R2_________________, EEP_RST,
TG_MODS, _________________ADJUST_L3_________________, _______, _______, _______, _______, _______, _______, _________________ADJUST_R3_________________, KC_MPLY TG_MODS, _________________ADJUST_L3_________________, _______, _______, _______, _______, _______, _______, _________________ADJUST_R3_________________, KC_MPLY
) )
}; };
void matrix_init_keymap(void) { void matrix_init_keymap(void) {

View File

@ -10,6 +10,6 @@ NKRO_ENABLE = yes
INDICATOR_LIGHTS = yes INDICATOR_LIGHTS = yes
MACROS_ENABLED = no MACROS_ENABLED = no
RGBLIGHT_TWINKLE = yes RGBLIGHT_TWINKLE = no
BOOTLOADER = qmk-dfu BOOTLOADER = qmk-dfu

View File

@ -1,7 +1,5 @@
#pragma once #pragma once
#include QMK_KEYBOARD_CONFIG_H
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE
#undef RGBLIGHT_SAT_STEP #undef RGBLIGHT_SAT_STEP
#define RGBLIGHT_SAT_STEP 12 #define RGBLIGHT_SAT_STEP 12

View File

@ -27,9 +27,9 @@ extern rgb_config_t rgb_matrix_config;
#endif #endif
extern userspace_config_t userspace_config; extern userspace_config_t userspace_config;
//enum more_custom_keycodes { enum more_custom_keycodes {
// KC_P00 = NEW_SAFE_RANGE KC_SWAP_NUM = NEW_SAFE_RANGE
//}; };
//define layer change stuff for underglow indicator //define layer change stuff for underglow indicator
bool skip_leds = false; bool skip_leds = false;
@ -166,6 +166,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
), ),
[_NORMAN] = LAYOUT_ergodox_pretty_base_wrapper(
_________________NORMAN_L1_________________, _________________NORMAN_L1_________________,
_________________NORMAN_L2_________________, _________________NORMAN_R2_________________,
_________________NORMAN_L3_________________, _________________NORMAN_R3_________________
),
[_MALTRON] = LAYOUT_ergodox_pretty_base_wrapper(
_________________MALTRON_L1________________, _________________MALTRON_R1________________,
_________________MALTRON_L2________________, _________________MALTRON_R2________________,
_________________MALTRON_L3________________, _________________MALTRON_R3________________
),
[_EUCALYN] = LAYOUT_ergodox_pretty_base_wrapper(
_________________EUCALYN_L1________________, _________________EUCALYN_R1________________,
_________________EUCALYN_L2________________, _________________EUCALYN_R2________________,
_________________EUCALYN_L3________________, _________________EUCALYN_R3________________
),
[_CARPLAX] = LAYOUT_ergodox_pretty_base_wrapper(
_____________CARPLAX_QFMLWY_L1_____________, _____________CARPLAX_QFMLWY_R1_____________,
_____________CARPLAX_QFMLWY_L2_____________, _____________CARPLAX_QFMLWY_R2_____________,
_____________CARPLAX_QFMLWY_L3_____________, _____________CARPLAX_QFMLWY_R3_____________
),
// Reverts OSM(Shift) to normal Shifts. However, may not need since we fixed the issue with RDP (LOCAL RESOURCES) // Reverts OSM(Shift) to normal Shifts. However, may not need since we fixed the issue with RDP (LOCAL RESOURCES)
[_MODS] = LAYOUT_ergodox_pretty_wrapper( [_MODS] = LAYOUT_ergodox_pretty_wrapper(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@ -206,9 +231,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, KC_I, KC_O, KC_NO, KC_NO, KC_NO, KC_NO, KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, KC_I, KC_O, KC_NO, KC_NO, KC_NO, KC_NO,
KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_TRNS, TG(_GAMEPAD), KC_N, KC_M, KC_NO, KC_NO, KC_NO, KC_NO, KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_TRNS, TG(_GAMEPAD), KC_N, KC_M, KC_NO, KC_NO, KC_NO, KC_NO,
KC_GRV, KC_U, KC_I, KC_Y, KC_T, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_GRV, KC_U, KC_I, KC_Y, KC_T, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO,
KC_O, KC_P, KC_HYPR, MAGIC_TOGGLE_NKRO, KC_O, KC_P, MAGIC_TOGGLE_NKRO, LALT(KC_PSCR),
KC_LGUI, KC_NO, KC_LGUI, KC_HYPR,
KC_V, KC_SPC, KC_H, KC_PGDN, KC_DEL, KC_ENTER KC_V, KC_SPC, KC_H, KC_NO, KC_NO, KC_SWAP_NUM
), ),
/* Keymap 3: /* Keymap 3:
@ -280,6 +305,33 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_1:
if (IS_LAYER_ON(_GAMEPAD) && userspace_config.swapped_numbers) {
if (record->event.pressed) {
register_code(KC_2);
} else {
unregister_code(KC_2);
}
return false;
}
break;
case KC_2:
if (IS_LAYER_ON(_GAMEPAD) && userspace_config.swapped_numbers) {
if (record->event.pressed) {
register_code(KC_1);
} else {
unregister_code(KC_1);
}
return false;
}
break;
case KC_SWAP_NUM:
if (record->event.pressed) {
userspace_config.swapped_numbers ^= 1;
eeconfig_update_user(userspace_config.raw);
}
}
//switch (keycode) { //switch (keycode) {
// case KC_P00: // case KC_P00:
// if (!record->event.pressed) { // if (!record->event.pressed) {
@ -401,6 +453,14 @@ void rgb_matrix_indicators_user(void) {
rgb_matrix_layer_helper(0x00, 0xFF, 0x00); break; rgb_matrix_layer_helper(0x00, 0xFF, 0x00); break;
case _WORKMAN: case _WORKMAN:
rgb_matrix_layer_helper(0xD9, 0xA5, 0x21); break; rgb_matrix_layer_helper(0xD9, 0xA5, 0x21); break;
case _NORMAN:
rgb_matrix_layer_helper(0xFF, 0x7C, 0x4D); break;
case _MALTRON:
rgb_matrix_layer_helper(0xFF, 0xFF, 0x00); break;
case _EUCALYN:
rgb_matrix_layer_helper(0xFF, 0x80, 0xBF); break;
case _CARPLAX:
rgb_matrix_layer_helper(0x00, 0x00, 0xFF); break;
} }
} }
#if 0 #if 0

View File

@ -1,11 +1,9 @@
USER_NAME := drashna USER_NAME := drashna
SRC += ../drashna/keymap.c SRC += ../drashna/keymap.c
-include $$(LAYOUT_KEYMAP_PATH)/../drashna/rules.mk -include $(LAYOUT_KEYMAP_PATH)/../drashna/rules.mk
ifneq (,$(findstring ergodox_ez,$(KEYBOARD))) ifneq (,$(findstring ergodox_ez,$(KEYBOARD)))
RGBLIGHT_ENABLE = no RGBLIGHT_ENABLE = no
RGB_MATRIX_ENABLE = yes RGB_MATRIX_ENABLE = yes
endif endif
COMMAND_ENABLE = no

View File

@ -60,3 +60,5 @@
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2 //#define MIDI_TONE_KEYCODE_OCTAVES 2
#define TAP_CODE_DELAY 10

View File

@ -69,6 +69,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________ _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
), ),
[_NORMAN] = LAYOUT_ortho_4x12_base_wrapper(
_________________NORMAN_L1_________________, _________________NORMAN_L1_________________,
_________________NORMAN_L2_________________, _________________NORMAN_R2_________________,
_________________NORMAN_L3_________________, _________________NORMAN_R3_________________
),
[_MALTRON] = LAYOUT_ortho_4x12_base_wrapper(
_________________MALTRON_L1________________, _________________MALTRON_R1________________,
_________________MALTRON_L2________________, _________________MALTRON_R2________________,
_________________MALTRON_L3________________, _________________MALTRON_R3________________
),
[_EUCALYN] = LAYOUT_ortho_4x12_base_wrapper(
_________________EUCALYN_L1________________, _________________EUCALYN_R1________________,
_________________EUCALYN_L2________________, _________________EUCALYN_R2________________,
_________________EUCALYN_L3________________, _________________EUCALYN_R3________________
),
[_CARPLAX] = LAYOUT_ortho_4x12_base_wrapper(
_____________CARPLAX_QFMLWY_L1_____________, _____________CARPLAX_QFMLWY_R1_____________,
_____________CARPLAX_QFMLWY_L2_____________, _____________CARPLAX_QFMLWY_R2_____________,
_____________CARPLAX_QFMLWY_L3_____________, _____________CARPLAX_QFMLWY_R3_____________
),
[_MODS] = LAYOUT_ortho_4x12_wrapper( [_MODS] = LAYOUT_ortho_4x12_wrapper(
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
@ -97,7 +121,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUKE _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUKE
) )
}; };
@ -183,6 +206,14 @@ void rgb_matrix_indicators_user(void) {
rgb_matrix_layer_helper(0x00, 0xFF, 0x00, true); break; rgb_matrix_layer_helper(0x00, 0xFF, 0x00, true); break;
case _WORKMAN: case _WORKMAN:
rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, true); break; rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, true); break;
case _NORMAN:
rgb_matrix_layer_helper(0xFF, 0x7C, 0x4D, true); break;
case _MALTRON:
rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, true); break;
case _EUCALYN:
rgb_matrix_layer_helper(0xFF, 0x80, 0xBF, true); break;
case _CARPLAX:
rgb_matrix_layer_helper(0x00, 0x00, 0xFF, true); break;
} }
} }
} }
@ -222,7 +253,7 @@ void matrix_init_keymap(void) {
#else //RGB_MATRIX_INIT #else //RGB_MATRIX_INIT
void matrix_init_keymap(void) { void matrix_init_keymap(void) {
#ifndef CONVERT_TO_PROTON_C #if !defined(CONVERT_TO_PROTON_C) && !defined(KEYBOARD_planck)
setPinOutput(D5); setPinOutput(D5);
writePinHigh(D5); writePinHigh(D5);
@ -231,3 +262,50 @@ void matrix_init_keymap(void) {
#endif #endif
} }
#endif //RGB_MATRIX_INIT #endif //RGB_MATRIX_INIT
#ifdef ENCODER_ENABLE
void encoder_update(bool clockwise) {
switch (biton32(layer_state)) {
case _RAISE:
clockwise ? tap_code(KC_VOLD) : tap_code(KC_VOLU);
break;
case _LOWER:
#ifdef RGB_MATRIX_ENABLE
clockwise ? rgb_matrix_step() : rgblight_step_reverse();
#else
clockwise ? tap_code(KC_PGDN) : tap_code(KC_PGUP);
#endif
case _ADJUST:
#ifdef AUDIO_CLICKY
clockwise ? clicky_freq_up() : clicky_freq_down();
#endif
break;
default:
clockwise ? tap_code(KC_DOWN) : tap_code(KC_UP);
}
#ifdef AUDIO_CLICKY
clicky_play();
#endif
}
#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;
break;
case 1:
audio_config.clicky_enable = active;
break;
case 2:
keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = active;
break;
case 3:
userspace_config.nuke_switch = active;
break;
}
}
#endif // KEYBOARD_planck_rev6

View File

@ -19,6 +19,13 @@
#undef NOTE_REST #undef NOTE_REST
#define NOTE_REST 1.00f #define NOTE_REST 1.00f
#endif // !__arm__ #endif // !__arm__
#define UNICODE_SONG_OSX SONG(RICK_ROLL)
#define UNICODE_SONG_LNX SONG(RICK_ROLL)
#define UNICODE_SONG_WIN SONG(RICK_ROLL)
#define UNICODE_SONG_BSD SONG(RICK_ROLL)
#define UNICODE_SONG_WINC SONG(RICK_ROLL)
#endif // !AUDIO_ENABLE #endif // !AUDIO_ENABLE
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE
@ -48,7 +55,7 @@
// and when this option isn't enabled, z rapidly followed by x // and when this option isn't enabled, z rapidly followed by x
// actually sends Ctrl-x. That's bad.) // actually sends Ctrl-x. That's bad.)
#define IGNORE_MOD_TAP_INTERRUPT #define IGNORE_MOD_TAP_INTERRUPT
#undef PERMISSIVE_HOLD // #define PERMISSIVE_HOLD
//#define TAPPING_FORCE_HOLD //#define TAPPING_FORCE_HOLD
//#define RETRO_TAPPING //#define RETRO_TAPPING

View File

@ -36,7 +36,11 @@ enum userspace_layers {
_COLEMAK, _COLEMAK,
_DVORAK, _DVORAK,
_WORKMAN, _WORKMAN,
_MODS, _NORMAN,
_MALTRON,
_EUCALYN,
_CARPLAX,
_MODS, /* layer 8 */
_GAMEPAD, _GAMEPAD,
_DIABLO, _DIABLO,
_MACROS, _MACROS,
@ -76,6 +80,7 @@ typedef union {
bool is_overwatch :1; bool is_overwatch :1;
bool nuke_switch :1; bool nuke_switch :1;
uint8_t unicode_mod :4; uint8_t unicode_mod :4;
bool swapped_numbers :1;
}; };
} userspace_config_t; } userspace_config_t;

View File

@ -20,34 +20,18 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
// If console is enabled, it will print the matrix position and status of each key pressed // If console is enabled, it will print the matrix position and status of each key pressed
#ifdef KEYLOGGER_ENABLE #ifdef KEYLOGGER_ENABLE
#if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_iris_rev2) #if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_iris_rev2)
xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); xprintf("KL: kc: %u, col: %u, row: %u, pressed: %u\n", keycode, record->event.key.row, record->event.key.col, record->event.pressed);
#else #else
xprintf("KL: col: %u, row: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); xprintf("KL: kc: %u, col: %u, row: %u, pressed: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed);
#endif #endif
#endif //KEYLOGGER_ENABLE #endif //KEYLOGGER_ENABLE
switch (keycode) { switch (keycode) {
case KC_QWERTY: case KC_QWERTY ... KC_CARPLAX:
if (record->event.pressed) { if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY); set_single_persistent_default_layer(keycode - KC_QWERTY);
} }
break; break;
case KC_COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
break;
case KC_DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
break;
case KC_WORKMAN:
if (record->event.pressed) {
set_single_persistent_default_layer(_WORKMAN);
}
break;
case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader case KC_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader
if (!record->event.pressed) { if (!record->event.pressed) {

View File

@ -13,6 +13,10 @@ enum userspace_custom_keycodes {
KC_COLEMAK, // Sets default layer to COLEMAK KC_COLEMAK, // Sets default layer to COLEMAK
KC_DVORAK, // Sets default layer to DVORAK KC_DVORAK, // Sets default layer to DVORAK
KC_WORKMAN, // Sets default layer to WORKMAN KC_WORKMAN, // Sets default layer to WORKMAN
KC_NORMAN, // Sets default layer to NORMAN
KC_MALTRON, // Sets default layer to MALTRON
KC_EUCALYN, // Sets default layer to EUCALYN
KC_CARPLAX, // Sets default layer to CARPLAX
KC_DIABLO_CLEAR, // Clears all Diablo Timers KC_DIABLO_CLEAR, // Clears all Diablo Timers
KC_OVERWATCH, // Toggles game macro input mode (so in OW, it defaults to game chat) KC_OVERWATCH, // Toggles game macro input mode (so in OW, it defaults to game chat)
KC_SALT, // See drashna.c for details KC_SALT, // See drashna.c for details

View File

@ -315,6 +315,14 @@ uint32_t layer_state_set_rgb(uint32_t state) {
rgblight_sethsv_noeeprom_springgreen(); break; rgblight_sethsv_noeeprom_springgreen(); break;
case _WORKMAN: case _WORKMAN:
rgblight_sethsv_noeeprom_goldenrod(); break; rgblight_sethsv_noeeprom_goldenrod(); break;
case _NORMAN:
rgblight_sethsv_noeeprom_coral(); break;
case _MALTRON:
rgblight_sethsv_noeeprom_yellow(); break;
case _EUCALYN:
rgblight_sethsv_noeeprom_pink(); break;
case _CARPLAX:
rgblight_sethsv_noeeprom_blue(); break;
default: default:
rgblight_sethsv_noeeprom_cyan(); break; rgblight_sethsv_noeeprom_cyan(); break;
} }

View File

@ -91,7 +91,7 @@ NOTE: These are all the same length. If you do a search/replace
#define _________________MALTRON_L1________________ KC_Q, KC_P, KC_Y, KC_C, KC_B #define _________________MALTRON_L1________________ KC_Q, KC_P, KC_Y, KC_C, KC_B
#define _________________MALTRON_L2________________ KC_A, KC_N, KC_I, KC_S, KC_F #define _________________MALTRON_L2________________ KC_A, KC_N, KC_I, KC_S, KC_F
#define _________________MALTRON_L3________________ KC_SCLN, KC_SLSH, KC_J KC_G, KC_COMM #define _________________MALTRON_L3________________ KC_SCLN, KC_SLSH, KC_J, KC_G, KC_COMM
#define _________________MALTRON_R1________________ KC_V, KC_M, KC_U, KC_Z, KC_L #define _________________MALTRON_R1________________ KC_V, KC_M, KC_U, KC_Z, KC_L
#define _________________MALTRON_R2________________ KC_D, KC_T, KC_D, KC_O, KC_R #define _________________MALTRON_R2________________ KC_D, KC_T, KC_D, KC_O, KC_R