~ruther/qmk_firmware

49464be64559710318f4d8edc5a92a7a90784734 — marksard 6 years ago 9c78185
[Keymap] Add keymap for minivan (#5887)

* Keyboard: add treeadstone48

* rename layout defines

* Use of pragma once

* move common include code

* fixed info.json

* change keymap layout from kc to normal

* fix alpha revision keymap

* fixed info.json

* remove USE_Link_Time_Optimization

* Added like_jis keymap for minivan/KUMO keyboard.

* Fixed comments

* Fixed review
A keyboards/thevankeyboards/minivan/keymaps/like_jis/config.h => keyboards/thevankeyboards/minivan/keymaps/like_jis/config.h +43 -0
@@ 0,0 1,43 @@
#pragma once

// place overrides here
#define TAPPING_TERM 200
#define IGNORE_MOD_TAP_INTERRUPT
#define TAPPING_TERM_PER_KEY

#ifdef MOUSEKEY_ENABLE
  #undef MOUSEKEY_INTERVAL
  #define MOUSEKEY_INTERVAL 1

  #undef MOUSEKEY_TIME_TO_MAX
  #define MOUSEKEY_TIME_TO_MAX 150

  #undef MOUSEKEY_MAX_SPEED
  #define MOUSEKEY_MAX_SPEED 3

  #undef MOUSEKEY_MOVE_DELTA
  #define MOUSEKEY_MOVE_DELTA 4

  #undef MOUSEKEY_DELAY
  #define MOUSEKEY_DELAY 0
#endif

// 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

// LED Setting: if you have KUMO you can use RGBLIGHT_ENABLE = yes
#ifdef RGBLIGHT_ENABLE
  #define RGB_DI_PIN D0
  #define RGBLIGHT_TIMER
  #define RGBLED_NUM 3
#endif

A keyboards/thevankeyboards/minivan/keymaps/like_jis/keymap.c => keyboards/thevankeyboards/minivan/keymaps/like_jis/keymap.c +173 -0
@@ 0,0 1,173 @@
#include QMK_KEYBOARD_H
#include "keymap_jp.h"

extern keymap_config_t keymap_config;

#ifdef RGBLIGHT_ENABLE
//Following line allows macro to read current RGB settings
extern rgblight_config_t rgblight_config;
#endif

extern uint8_t is_master;

// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
enum layer_number {
  _BASE = 0,
  _LOWER,
  _RAISE,
  _ADJUST,
};

enum custom_keycodes {
  LOWER = SAFE_RANGE,
  RAISE,
  ADJUST,
  KANJI,
  RGBRST
};

enum tapdances{
  TD_SCCL = 0,
};

// Layer Mode aliases
#define KC_TBSF  LSFT_T(KC_TAB)
#define KC_ROSF  RSFT_T(KC_RO)
#define KC_ALAP  LALT_T(KC_APP)

// Layer tap
#define KC_BSLO  LT(_LOWER, KC_BSPC)
#define KC_SPRA  LT(_RAISE, KC_SPC)
#define KC_MLAD  MO(_ADJUST)

#define KC_SCCL  TD(TD_SCCL)

qk_tap_dance_action_t tap_dance_actions[] = {
  [TD_SCCL] = ACTION_TAP_DANCE_DOUBLE(KC_SCLN, KC_QUOT),
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  [_BASE] = LAYOUT(
  //,-----------------------------------------------------------------------------------------------------------.
  //      Esc        Q        W        E        R        T        Y        U        I        O        P        -
       KC_ESC,    KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P, KC_MINS,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //Tab/Shift        A        S        D        F        G        H        J        K        L      ;/:    Enter
      KC_TBSF,    KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L, KC_SCCL,  KC_ENT,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //    Shift        Z        X        C        V        B        N        M        ,        .        /       yen
      KC_LSFT,    KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M, KC_COMM,  KC_DOT, KC_SLSH, KC_ROSF,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //     Ctrl      Alt GUI/Comm            BackSpace/Lower                Space/Raise      Alt     Menu     Ctrl
      KC_LCTL, KC_LALT, KC_LGUI,                   KC_BSLO,                   KC_SPRA, KC_RALT, KC_ALAP, KC_RCTL
  //`-----------------------------------------------------------------------------------------------------------'
  ),

  [_LOWER] = LAYOUT(
  //,-----------------------------------------------------------------------------------------------------------.
  //                F1       F2       F3       F4       F5        -        ^        \        @        [   Delete
      _______,   KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5, KC_MINS,  KC_EQL, KC_JYEN, KC_LBRC, KC_RBRC,  KC_DEL,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                F6       F7       F8       F9      F10                          ;        :        ]
      _______,   KC_F6,   KC_F7,   KC_F8,   KC_F9,  KC_F10, XXXXXXX, XXXXXXX, KC_SCLN, KC_QUOT, KC_BSLS, _______,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //               F11      F12        Kana/Kanji    Enter   Delete
      _______,  KC_F11,  KC_F12, XXXXXXX,   KANJI,  KC_ENT,  KC_DEL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                                                                           Adjust
      _______, _______, _______,                   _______,                   KC_MLAD, _______, _______, _______
  //`-----------------------------------------------------------------------------------------------------------'
  ),

  [_RAISE] = LAYOUT(
  //,-----------------------------------------------------------------------------------------------------------.
  //                 1        2        3        4        5        6        7        8        9        0        -
      _______,    KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0, KC_MINS,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                                                           Left     Down       Up    Right
      _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN,   KC_UP, KC_RGHT, XXXXXXX, _______,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                                                                                ,        .        /      yen
      _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_COMM,  KC_DOT, KC_SLSH, KC_ROSF,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
      _______, _______, _______,                   _______,                   _______, _______, _______, _______
  //`-----------------------------------------------------------------------------------------------------------'
  ),

  [_ADJUST] = LAYOUT(
  //,-----------------------------------------------------------------------------------------------------------.
  //             Reset LEDReset  MacMode  WinMode              Home PageDown   PageUp      End
      _______,   RESET,  RGBRST, AG_NORM, AG_SWAP, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP,  KC_END, XXXXXXX, XXXXXXX,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //           LED On/Off Hue/Saturation/Value Increment    Mouse Left Down Up Right
      _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, XXXXXXX, _______,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //           LED Mode Hue/Saturation/Value Decrement      Mouse Button Left Right
      _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, KC_BTN1, KC_BTN2, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
      _______, _______, _______,                   _______,                   _______, _______, _______, _______
  //`-----------------------------------------------------------------------------------------------------------'
  )
};

#define TAPPING_LAYER_TERM 150 // Custom LT Tapping term
uint16_t get_tapping_term(uint16_t keycode) {
  switch (keycode) {
    case KC_BSLO:
      return TAPPING_LAYER_TERM;
    case KC_SPRA:
      return TAPPING_LAYER_TERM;
    default:
      return TAPPING_TERM;
  }
}

int RGB_current_mode;
bool process_record_user(uint16_t keycode, keyrecord_t *record) {

  bool result = false;
  switch (keycode) {
    case KANJI:
      if (record->event.pressed) {
        if (keymap_config.swap_lalt_lgui == false) {
          register_code(KC_LANG2);
        } else {
          SEND_STRING(SS_LALT("`"));
        }
      } else {
        unregister_code(KC_LANG2);
      }
      break;
    #ifdef RGBLIGHT_ENABLE
      //led operations - RGB mode change now updates the RGB_current_mode to allow the right RGB mode to be set after reactive keys are released
      case RGB_MOD:
          if (record->event.pressed) {
            rgblight_mode(RGB_current_mode);
            rgblight_step();
            RGB_current_mode = rgblight_config.mode;
          }
        break;
      case RGBRST:
          if (record->event.pressed) {
            eeconfig_update_rgblight_default();
            rgblight_enable();
            RGB_current_mode = rgblight_config.mode;
          }
        break;
    #endif
    default:
      result = true;
      break;
  }

  return result;
}

void matrix_init_user(void) {
  #ifdef RGBLIGHT_ENABLE
    RGB_current_mode = rgblight_config.mode;
  #endif
}

A keyboards/thevankeyboards/minivan/keymaps/like_jis/readme.md => keyboards/thevankeyboards/minivan/keymaps/like_jis/readme.md +63 -0
@@ 0,0 1,63 @@
# The LikeJIS is Japanese Keyboard like keymap

This keymap use for KUMO. Therefore it can use full color LED indicators used by D0 pin. But this keymap as use as Illumination :)  

## Keymap Description

- Tab/Shift ...... Tab key is one tap, Shift key is long push.
- ;/: ...... ; key is one tap, : key is double tap.
- BackSpace/Lower ...... Backspace key is one tap, Move to Lower layer with long push.
- Space/Raise ...... Space key is one tap, Move to Raise layer with .
- Kanji ...... Japanese IME toggle key.

## How to move to Ajdust Layer

At first, Move to Lower layer with long push. After that Adjust key with long push. Now you have into Adjust layer state.

```c
Base Layer
  //,-----------------------------------------------------------------------------------------------------------.
  //      Esc        Q        W        E        R        T        Y        U        I        O        P        -
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //Tab/Shift        A        S        D        F        G        H        J        K        L      ;/:    Enter
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //    Shift        Z        X        C        V        B        N        M        ,        .        /        \ 
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //     Ctrl      Alt      GUI            BackSpace/Lower                Space/Raise      Alt     Menu     Ctrl
  //`-----------------------------------------------------------------------------------------------------------'
 
Lower Layer
  //,-----------------------------------------------------------------------------------------------------------.
  //                F1       F2       F3       F4       F5        -        ^        \        @        [   Delete
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                F6       F7       F8       F9      F10                          ;        :        ]
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //               F11      F12             Kanji    Enter   Delete
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                                                                           Adjust
  //`-----------------------------------------------------------------------------------------------------------'

Raise Layer
  //,-----------------------------------------------------------------------------------------------------------.
  //                 1        2        3        4        5        6        7        8        9        0        -
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                                                           Left     Down       Up    Right
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //                                                                                ,        .        /        \ 
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //
  //`-----------------------------------------------------------------------------------------------------------'
 
Adjust Layer
  //,-----------------------------------------------------------------------------------------------------------.
  //             Reset LEDReset  MacMode  WinMode              Home PageDown   PageUp      End
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //        LED On/Off  Hue   Saturation   Value Increment MouseLeft    Down       Up    Right
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //        LED Mode    Hue   Saturation   Value Decrement Button L        R
  //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------|
  //
  //`-----------------------------------------------------------------------------------------------------------'
 };

```

A keyboards/thevankeyboards/minivan/keymaps/like_jis/rules.mk => keyboards/thevankeyboards/minivan/keymaps/like_jis/rules.mk +25 -0
@@ 0,0 1,25 @@
# Build Options
#   change to "no" to disable the options, or define them in the Makefile in
#   the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = yes       # Mouse keys(+4700)
EXTRAKEY_ENABLE = no       # Audio control and System control(+450)
CONSOLE_ENABLE = no         # Console for debug(+400)
COMMAND_ENABLE = no        # Commands for debug and configuration
NKRO_ENABLE = yes           # 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
MIDI_ENABLE = no            # MIDI controls
AUDIO_ENABLE = no           # Audio output on port C6
UNICODE_ENABLE = no         # Unicode
BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = yes        # Enable WS2812 RGB underlight.
SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
TAP_DANCE_ENABLE = yes

LED_ANIMATIONS = yes        # LED animations

ifeq ($(strip $(LED_ANIMATIONS)), yes)
    # OPT_DEFS += -DRGBLIGHT_ANIMATIONS
    OPT_DEFS += -DLED_ANIMATIONS
endif