Keyboard: Helix five_rows keymap reduced size (#4082)

* add PERMISSIVE_HOLD in helix:five_rows/config.h

* add Eucalyn char layout into helix:five_rows

* Helix five_rows keymap: make rgblight modes selectable.

No change in build result.

* fix keymap.c map comment, add console compile option

No change in build result.

* Helix five_rows keymap: reduced the size.
master
Takeshi ISHII 2018-10-06 06:51:34 +09:00 committed by Drashna Jaelre
parent 54b61b508b
commit f1003aaccf
6 changed files with 112 additions and 57 deletions

View File

@ -48,17 +48,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DISABLE_LEADER #define DISABLE_LEADER
#endif // USE_Link_Time_Optimization #endif // USE_Link_Time_Optimization
#if defined(LED_ANIMATIONS) || defined(RGBLIGHT_ANIMATIONS)
#undef RGBLIGHT_ANIMATIONS
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_ALTERNATING
#endif
#endif /* CONFIG_H */ #endif /* CONFIG_H */

View File

@ -21,12 +21,27 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#ifndef CONFIG_USER_H #ifndef CONFIG_USER_H
#define CONFIG_USER_H #define CONFIG_USER_H
// if you need more program area, try uncomment follow line
//#include "serial_config_simpleapi.h"
#undef TAPPING_TERM #undef TAPPING_TERM
#define TAPPING_TERM 140 #define TAPPING_TERM 300
#define PERMISSIVE_HOLD
/* when TAPPING_TERM >= 500 same effect PERMISSIVE_HOLD.
see tmk_core/common/action_tapping.c */
// place overrides here // place overrides here
// If you need more program area, try select and reduce rgblight modes to use.
// Selection of RGBLIGHT MODE to use.
#if defined(LED_ANIMATIONS)
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
//#define RGBLIGHT_EFFECT_SNAKE
//#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
//#define RGBLIGHT_EFFECT_RGB_TEST
//#define RGBLIGHT_EFFECT_ALTERNATING
#endif
#endif /* CONFIG_USER_H */ #endif /* CONFIG_USER_H */

View File

@ -10,6 +10,9 @@
#ifdef SSD1306OLED #ifdef SSD1306OLED
#include "ssd1306.h" #include "ssd1306.h"
#endif #endif
#ifdef CONSOLE_ENABLE
#include <print.h>
#endif
extern keymap_config_t keymap_config; extern keymap_config_t keymap_config;
@ -28,6 +31,7 @@ enum layer_number {
_QWERTY = 0, _QWERTY = 0,
_COLEMAK, _COLEMAK,
_DVORAK, _DVORAK,
_EUCALYN,
_KEYPAD, _KEYPAD,
_AUX, _AUX,
_KAUX, _KAUX,
@ -41,6 +45,7 @@ enum custom_keycodes {
QWERTY = SAFE_RANGE, QWERTY = SAFE_RANGE,
COLEMAK, COLEMAK,
DVORAK, DVORAK,
EUCALYN,
KEYPAD, KEYPAD,
EISU, EISU,
KANA, KANA,
@ -72,7 +77,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Shift| Z | X | C | V | B | ` | ' | N | M | , | . | / | Shift| * | Shift| Z | X | C | V | B | ` | ' | N | M | , | . | / | Shift|
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* |Lower | Lower| Caps | GUI | Alt | Space| BS | Enter| Space| Alt | GUI | Menu |Lower |Lower | * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
* `-------------------------------------------------------------------------------------------------' * `-------------------------------------------------------------------------------------------------'
*/ */
[_QWERTY] = LAYOUT( \ [_QWERTY] = LAYOUT( \
@ -94,7 +99,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Shift| Z | X | C | V | B | ` | ' | K | M | , | . | / | Shift| * | Shift| Z | X | C | V | B | ` | ' | K | M | , | . | / | Shift|
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* |Lower | Lower| Caps | GUI | Alt | Space| BS | Enter| Space| Alt | GUI | Menu |Lower |Lower | * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
* `-------------------------------------------------------------------------------------------------' * `-------------------------------------------------------------------------------------------------'
*/ */
[_COLEMAK] = LAYOUT( \ [_COLEMAK] = LAYOUT( \
@ -116,7 +121,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Shift| ; | Q | J | K | X | ` | / | B | M | W | V | Z | Shift| * | Shift| ; | Q | J | K | X | ` | / | B | M | W | V | Z | Shift|
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* |Lower | Lower| Caps | GUI | Alt | Space| BS | Enter| Space| Alt | GUI | Menu |Lower |Lower | * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
* `-------------------------------------------------------------------------------------------------' * `-------------------------------------------------------------------------------------------------'
*/ */
[_DVORAK] = LAYOUT( \ [_DVORAK] = LAYOUT( \
@ -128,6 +133,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP,MO(_LOWER),MO(_LOWER) \ LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP,MO(_LOWER),MO(_LOWER) \
), ),
/* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout)
* ,-----------------------------------------. ,-----------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
* | Tab | Q | W | , | . | ; | | M | R | D | Y | P | \ |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
* | Ctrl | A | O | E | I | U | | G | T | K | S | N | Ctrl |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | Shift| Z | X | C | V | F | ` | ' | B | H | J | L | / | Shift|
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
* `-------------------------------------------------------------------------------------------------'
*/
[_EUCALYN] = 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_Q, KC_W, KC_COMM, KC_DOT, KC_SCLN, KC_M, KC_R, KC_D, KC_Y, KC_P, KC_BSLS, \
KC_LCTL, KC_A, KC_O, KC_E, KC_I, KC_U, KC_G, KC_T, KC_K, KC_S, KC_N, KC_RCTL, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_GRV, KC_QUOT, KC_B, KC_H, KC_J, KC_L, KC_SLSH, KC_RSFT, \
MO(_LOWER),MO(_LOWER), KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC), \
LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP,MO(_LOWER),MO(_LOWER) \
),
/* Keypad /* Keypad
* ,-----------------------------------------. ,-----------------------------------------. * ,-----------------------------------------. ,-----------------------------------------.
* | Tab | / | * | Del | F1 | F6 | | F1 | F6 | Del | Tab | / | * | * | Tab | / | * | Del | F1 | F6 | | F1 | F6 | Del | Tab | / | * |
@ -239,7 +266,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Adjust (Lower + Raise) /* Adjust (Lower + Raise)
* ,-----------------------------------------. ,-----------------------------------------. * ,-----------------------------------------. ,-----------------------------------------.
* | | |Keypad|Dvorak|Colemk|Qwerty| |Qwerty|Colemk|Dvorak|Keypad| | | * | |Keypad|Dvorak|Colemk|Euclyn|Qwerty| |Qwerty|Euclyn|Colemk|Dvorak|Keypad| |
* |------+------+------+------+------+------| |------+------+------+------+------+------| * |------+------+------+------+------+------| |------+------+------+------+------+------|
* | | Reset|RGBRST|RGB ON|Aud on| Win | | Win |Aud on|RGB ON|RGBRST| | | * | | Reset|RGBRST|RGB ON|Aud on| Win | | Win |Aud on|RGB ON|RGBRST| | |
* |------+------+------+------+------+------| |------+------+------+------+------+------| * |------+------+------+------+------+------| |------+------+------+------+------+------|
@ -251,7 +278,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `-------------------------------------------------------------------------------------------------' * `-------------------------------------------------------------------------------------------------'
*/ */
[_ADJUST] = LAYOUT( \ [_ADJUST] = LAYOUT( \
XXXXXXX, XXXXXXX, KEYPAD, DVORAK, COLEMAK, QWERTY, QWERTY, COLEMAK, DVORAK, KEYPAD, XXXXXXX, XXXXXXX, \ XXXXXXX, KEYPAD, DVORAK, COLEMAK, EUCALYN, QWERTY, QWERTY, EUCALYN, COLEMAK, DVORAK, KEYPAD, XXXXXXX, \
XXXXXXX, RESET, RGBRST, RGB_TOG, AU_ON, AG_SWAP, AG_SWAP, AU_ON, RGB_TOG, RGBRST, XXXXXXX, XXXXXXX, \ XXXXXXX, RESET, RGBRST, RGB_TOG, AU_ON, AG_SWAP, AG_SWAP, AU_ON, RGB_TOG, RGBRST, XXXXXXX, XXXXXXX, \
RGB_HUI, RGB_SAI, RGB_VAI,RGB_SMOD, AU_OFF, AG_NORM, AG_NORM, AU_OFF,RGB_SMOD, RGB_VAI, RGB_SAI, RGB_HUI, \ RGB_HUI, RGB_SAI, RGB_VAI,RGB_SMOD, AU_OFF, AG_NORM, AG_NORM, AU_OFF,RGB_SMOD, RGB_VAI, RGB_SAI, RGB_HUI, \
RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, \ RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, \
@ -304,8 +331,10 @@ uint32_t default_layer_state_set_kb(uint32_t state) {
current_default_layer = state - 1; current_default_layer = state - 1;
// 1<<_DVORAK - 2 == 4 - 2 == _DVORAK (=2) // 1<<_DVORAK - 2 == 4 - 2 == _DVORAK (=2)
if ( current_default_layer == 3 ) current_default_layer -= 1; if ( current_default_layer == 3 ) current_default_layer -= 1;
// 1<<_KEYPAD - 5 == 8 - 5 == _KEYPAD (=3) // 1<<_EUCALYN - 5 == 8 - 5 == _EUCALYN (=3)
if ( current_default_layer == 7 ) current_default_layer -= 4; if ( current_default_layer == 7 ) current_default_layer -= 4;
// 1<<_KEYPAD - 12 == 16 - 12 == _KEYPAD (=4)
if ( current_default_layer == 15 ) current_default_layer -= 11;
return state; return state;
} }
@ -353,6 +382,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
} }
return false; return false;
break; break;
case EUCALYN:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_dvorak);
#endif
update_base_layer(_EUCALYN);
}
return false;
break;
case KEYPAD: case KEYPAD:
if (record->event.pressed) { if (record->event.pressed) {
#ifdef AUDIO_ENABLE #ifdef AUDIO_ENABLE
@ -481,6 +519,7 @@ static void render_logo(struct CharacterMatrix *matrix) {
static const char Qwerty_name[] PROGMEM = " Qwerty"; static const char Qwerty_name[] PROGMEM = " Qwerty";
static const char Colemak_name[] PROGMEM = " Colemak"; static const char Colemak_name[] PROGMEM = " Colemak";
static const char Dvorak_name[] PROGMEM = " Dvorak"; static const char Dvorak_name[] PROGMEM = " Dvorak";
static const char Eucalyn_name[] PROGMEM = " Eucalyn";
static const char Keypad_name[] PROGMEM = " Keypad"; static const char Keypad_name[] PROGMEM = " Keypad";
static const char AUX_name[] PROGMEM = ":AUX"; static const char AUX_name[] PROGMEM = ":AUX";
@ -494,6 +533,7 @@ static const char *layer_names[] = {
[_QWERTY] = Qwerty_name, [_QWERTY] = Qwerty_name,
[_COLEMAK] = Colemak_name, [_COLEMAK] = Colemak_name,
[_DVORAK] = Dvorak_name, [_DVORAK] = Dvorak_name,
[_EUCALYN]= Eucalyn_name,
[_KEYPAD] = Keypad_name, [_KEYPAD] = Keypad_name,
[_AUX] = AUX_name, [_AUX] = AUX_name,
[_KAUX] = KAUX_name, [_KAUX] = KAUX_name,

View File

@ -6,8 +6,12 @@
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700) MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = no # Audio control and System control(+450) EXTRAKEY_ENABLE = no # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400) CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration COMMAND_ENABLE = no # Commands for debug and configuration
# CONSOLE_ENABLE and COMMAND_ENABLE
# yes, no +1500
# yes, yes +3200
# no, yes +400
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls MIDI_ENABLE = no # MIDI controls
@ -66,6 +70,9 @@ ifneq ($(strip $(HELIX)),)
ifeq ($(findstring ios,$(HELIX)), ios) ifeq ($(findstring ios,$(HELIX)), ios)
IOS_DEVICE_ENABLE = yes IOS_DEVICE_ENABLE = yes
endif endif
ifeq ($(findstring console,$(HELIX)), console)
CONSOLE_ENABLE = yes
endif
$(eval $(call HELIX_CUSTOMISE_MSG)) $(eval $(call HELIX_CUSTOMISE_MSG))
$(info ) $(info )
endif endif
@ -100,7 +107,7 @@ ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
endif endif
ifeq ($(strip $(LED_ANIMATIONS)), yes) ifeq ($(strip $(LED_ANIMATIONS)), yes)
OPT_DEFS += -DRGBLIGHT_ANIMATIONS OPT_DEFS += -DLED_ANIMATIONS
endif endif
ifeq ($(strip $(OLED_ENABLE)), yes) ifeq ($(strip $(OLED_ENABLE)), yes)
@ -115,6 +122,10 @@ ifeq ($(strip $(Link_Time_Optimization)),yes)
EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization
endif endif
ifeq ($(strip $(CONSOLE_ENABLE)),yes)
EXTRAFLAGS += -DCONSOLE_ENABLE
endif
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend

View File

@ -26,14 +26,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// If you need more program area, try select and reduce rgblight modes to use. // If you need more program area, try select and reduce rgblight modes to use.
// Selection of RGBLIGHT MODE to use. // Selection of RGBLIGHT MODE to use.
#undef RGBLIGHT_EFFECT_BREATHING #if defined(LED_ANIMATIONS)
#undef RGBLIGHT_EFFECT_RAINBOW_MOOD //#define RGBLIGHT_EFFECT_BREATHING
#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL //#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#undef RGBLIGHT_EFFECT_SNAKE //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#undef RGBLIGHT_EFFECT_KNIGHT //#define RGBLIGHT_EFFECT_SNAKE
#undef RGBLIGHT_EFFECT_CHRISTMAS //#define RGBLIGHT_EFFECT_KNIGHT
#undef RGBLIGHT_EFFECT_STATIC_GRADIENT //#define RGBLIGHT_EFFECT_CHRISTMAS
//#undef RGBLIGHT_EFFECT_RGB_TEST // led_test keymap need only this. //#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#undef RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_RGB_TEST // led_test keymap need only this.
//#define RGBLIGHT_EFFECT_ALTERNATING
#endif
#endif /* CONFIG_USER_H */ #endif /* CONFIG_USER_H */

View File

@ -100,7 +100,7 @@ ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
endif endif
ifeq ($(strip $(LED_ANIMATIONS)), yes) ifeq ($(strip $(LED_ANIMATIONS)), yes)
OPT_DEFS += -DRGBLIGHT_ANIMATIONS OPT_DEFS += -DLED_ANIMATIONS
endif endif
ifeq ($(strip $(OLED_ENABLE)), yes) ifeq ($(strip $(OLED_ENABLE)), yes)