Created
December 2, 2020 12:28
-
-
Save yhara/6f89c0a8d58cad5d18c4d38e1ced8e6a to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* 別途、keyboards/alpha/config.hに以下を記入 | |
#define TAPPING_TERM 200 | |
#define IGNORE_MOD_TAP_INTERRUPT | |
#define RGBLED_NUM 10 | |
#define RGBLIGHT_LAYERS | |
//#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF | |
#define COMBO_COUNT 6 | |
#define COMBO_TERM 35 | |
*/ | |
#include QMK_KEYBOARD_H | |
#include "keymap_jp.h" | |
#define HOME 0 | |
#define SYMBOL 1 | |
#define NUMBER 2 | |
#define OTHER 3 //FN | |
#define CURSOR 4 | |
#define PAREN 5 | |
// DONT FORGET TO UPDATE COMBO_COUNT in config.h when adding a new combo | |
typedef const uint16_t comb_keys_t[]; | |
static PROGMEM comb_keys_t | |
comb_keys_Enter = {KC_J, KC_O, COMBO_END}, | |
comb_keys_BackSpace = {KC_J, KC_I, COMBO_END}, | |
comb_keys_Tab = {KC_W, KC_R, COMBO_END}, | |
comb_keys_Kana = {KC_G, KC_J, COMBO_END}, | |
comb_keys_Eisu = {KC_G, KC_H, COMBO_END}, | |
comb_keys_Escape = {KC_W, KC_E, COMBO_END}; | |
combo_t key_combos[COMBO_COUNT] = { | |
COMBO( comb_keys_Enter, KC_ENT ), | |
COMBO( comb_keys_BackSpace, KC_BSPC ), | |
COMBO( comb_keys_Tab, KC_TAB ), | |
COMBO( comb_keys_Kana, KC_LANG1 ), | |
COMBO( comb_keys_Eisu, KC_LANG2 ), | |
COMBO( comb_keys_Escape, KC_ESC ), | |
}; | |
enum custom_keycodes { | |
MACRO1 = SAFE_RANGE | |
}; | |
bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |
if (record->event.pressed) { | |
switch (keycode) { | |
case MACRO1: | |
SEND_STRING(SS_LCTRL("z")"["); | |
return false; | |
} | |
} | |
return true; | |
}; | |
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |
[HOME] = LAYOUT( | |
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, LT(OTHER,KC_P), | |
MT(MOD_LCTL,KC_A), LT(NUMBER,KC_S), LT(SYMBOL,KC_D), LT(PAREN,KC_F), KC_G, KC_H, KC_J, LT(SYMBOL,KC_K), LT(NUMBER,KC_L), MT(MOD_RCTL,KC_SCLN), | |
MT(MOD_LSFT,KC_Z), KC_X, KC_C, GUI_T(KC_V), LT(CURSOR,KC_SPC), GUI_T(KC_B), KC_N, MT(MOD_RSFT,KC_M) | |
), | |
[SYMBOL] = LAYOUT( | |
// ! @ # $ % ^ & * - | |
KC_EXLM, JP_AT, KC_HASH, KC_DLR, KC_PERC, JP_CIRC, JP_AMPR, JP_ASTR, KC_NO, KC_MINS, | |
// ~ | = \ ` ' " + / : | |
S(JP_CIRC),S(JP_YEN),JP_EQL,JP_YEN,JP_GRV, JP_QUOT, JP_DQT, JP_PLUS, KC_SLSH, JP_COLN, | |
// _ ? , . | |
JP_UNDS, KC_NO, KC_NO, KC_NO, KC_SPC, S(KC_SLSH), KC_COMM, KC_DOT), | |
[NUMBER] = LAYOUT( | |
KC_1, KC_2, KC_3, KC_4, KC_5, KC_1, KC_2, KC_3, KC_4, KC_5, | |
KC_6, KC_7, KC_8, KC_9, KC_0, KC_6, KC_7, KC_8, KC_9, KC_0, | |
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), | |
[OTHER] = LAYOUT( | |
RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, | |
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, | |
RGB_VAI, RGB_VAD, RGB_HUI, RGB_TOG, RGB_MOD, KC_MPLY, KC_VOLD, KC_VOLU), | |
[CURSOR] = LAYOUT( | |
KC_TAB, KC_NO, KC_END,KC_NO, KC_NO, KC_NO, KC_NO, S(KC_TAB), KC_TAB, MACRO1, | |
KC_HOME,KC_NO, KC_DEL, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_ENT, | |
KC_ESC, KC_NO, KC_NO, GUI_T(KC_LANG2),KC_TRNS,KC_LANG1, KC_NO, MOD_RSFT), | |
[PAREN] = LAYOUT( | |
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, JP_LPRN, JP_RPRN, KC_NO, | |
KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, JP_LCBR, JP_LBRC, JP_RBRC, JP_RCBR, | |
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, S(KC_COMM), S(KC_DOT)), | |
}; | |
void matrix_init_user(void) { | |
} | |
void matrix_scan_user(void) { | |
} | |
// | |
// Lighting Layers | |
// | |
const rgblight_segment_t PROGMEM symbol_layer[] = RGBLIGHT_LAYER_SEGMENTS( | |
{0, 10, HSV_RED} | |
); | |
const rgblight_segment_t PROGMEM number_layer[] = RGBLIGHT_LAYER_SEGMENTS( | |
{0, 10, HSV_CYAN} | |
); | |
const rgblight_segment_t PROGMEM other_layer[] = RGBLIGHT_LAYER_SEGMENTS( | |
{0, 10, HSV_PURPLE} | |
); | |
const rgblight_segment_t PROGMEM cursor_layer[] = RGBLIGHT_LAYER_SEGMENTS( | |
{0, 10, HSV_GREEN} | |
); | |
const rgblight_segment_t PROGMEM paren_layer[] = RGBLIGHT_LAYER_SEGMENTS( | |
{5, 5, HSV_YELLOW} | |
); | |
const rgblight_segment_t* const PROGMEM my_rgb_layers[] = { | |
symbol_layer, | |
number_layer, | |
other_layer, | |
cursor_layer, | |
paren_layer, | |
NULL | |
}; | |
void keyboard_post_init_user(void) { | |
rgblight_layers = my_rgb_layers; | |
} | |
layer_state_t layer_state_set_user(layer_state_t state) { | |
rgblight_set_layer_state(0, layer_state_cmp(state, 1)); | |
rgblight_set_layer_state(1, layer_state_cmp(state, 2)); | |
rgblight_set_layer_state(2, layer_state_cmp(state, 3)); | |
rgblight_set_layer_state(3, layer_state_cmp(state, 4)); | |
rgblight_set_layer_state(4, layer_state_cmp(state, 5)); | |
return state; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment