Remove KEYMAP and LAYOUT_kc (#12160)

* alias KEYMAP to LAYOUT

* remove KEYMAP and LAYOUT_kc
This commit is contained in:
Zach White
2021-05-11 10:10:31 -07:00
committed by GitHub
parent d84cbc3cec
commit 38d8d5445e
271 changed files with 487 additions and 12334 deletions

View File

@@ -1,39 +0,0 @@
/*
Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* Use I2C or Serial, not both */
//#define USE_SERIAL
#define USE_I2C
/* Select hand configuration */
//#define MASTER_LEFT
#define MASTER_RIGHT
//#define EE_HANDS
#define TAPPING_TOGGLE 2
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8

View File

@@ -1,179 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
#define _COLEMAK 0
#define _QWERTY 1
#define _NUMPAD 2
#define _LOWER 3
#define _RAISE 4
#define _ADJUST 16
enum custom_keycodes {
COLEMAK = SAFE_RANGE,
QWERTY,
NUMPAD,
LOWER,
RAISE,
ADJUST,
};
#define KC_ KC_TRNS
#define KC_XXXX KC_NO
#define KC_CMK COLEMAK
#define KC_QWE QWERTY
#define KC_LOWR LOWER
#define KC_RASE RAISE
#define KC_QRAS QRAISE
#define KC_ADJT ADJUST
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
//#define KC_CATDEL LCTL(LALT(KC_DEL)) // Ctrl alt del
#define KC_CPY LCTL(KC_C)
#define KC_PST LCTL(KC_V)
#define KC_SELA LCTL(KC_A)
#define KC_UDO LCTL(KC_Z)
#define KC_CUT LCTL(KC_X)
#define KC_SVE LCTL(KC_S)
#define KC_OSH OSM(MOD_LSFT)
#define KC_OCTL OSM(MOD_LCTL)
#define KC_NUMP TT(_NUMPAD)
#define KC_SHESC MT(MOD_LSFT,KC_ESC)
#define KC_SHENT MT(MOD_RSFT,KC_ENT)
//#define KC_NUMP TG(_NUMPAD) // Toggle layer NUMPAD for use in KC_keymaps
//#define KC_RST RESET
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Colemak Mod-DH is used. https://colemakmods.github.io/mod-dh/
[_COLEMAK] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
TAB , Q , W , F , P , B ,LPRN, RPRN, J , L , U , Y ,SCLN,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
BSPC, A , R , S , T , G ,EQL , MINS, K , N , E , I , O ,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
SHESC, Z , X , C , D , V ,NUMP, ENT, M , H ,COMM,DOT ,SLSH,SHENT,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
OCTL,LALT,LGUI,DEL ,LOWR, SPC, OSH, RASE,LEFT,RIGHT,RALT,RCTL
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , Q , W , E , R , T ,LBRC, RBRC, Y , U , I , O , P ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , A , S , D , F , G ,LPRN, RPRN, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , , , N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,DEL , , SPC, SPC , ,LEFT,DOWN, UP ,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_NUMPAD] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , , , , , , ,ASTR, P7 , P8 , P9 ,SLSH, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , ,PIPE, P4 , P5 , P6 ,MINS, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , ,COMM, P1 , P2 , P3 ,PLUS, ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , P0 ,NLCK, , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_LOWER] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
,XXXX,XXXX,XXXX,XXXX,CAPS, , ,PGUP,HOME, UP ,END ,DEL , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,SELA,LALT,LSFT,LCTL,SVE , , ,PGDN,LEFT,DOWN,RGHT,BSPC,INS ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,UDO ,CUT ,CPY ,PST ,XXXX, , ,XXXX,XXXX,COMM,DOT ,SLSH, ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_RAISE] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
,AMPR,PERC,HASH,EXLM,LPRN, , ,ASTR,RPRN, AT ,DLR ,CIRC,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, 7 , 5 , 3 , 1 , 9 ,LBRC, RBRC, 8 , 0 , 2 , 4 , 6 ,BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, GRV,TILD,XXXX,EQL ,PLUS, , ,UNDS,MINS,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_ADJUST] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, F1 , F2 , F3 , F4 , F5 , F6, F7, F8, F9 ,F10 , F11, F12,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , CMK,QWE , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , ,VOLD,VOLU,MUTE
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View File

@@ -1,38 +0,0 @@
/*
Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8

View File

@@ -1,128 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
#define _ADJUST 16
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
ADJUST,
};
#define KC_ KC_TRNS
#define KC_LOWR LOWER
#define KC_RASE RAISE
#define KC_ADJT ADJUST
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , Q , W , E , R , T ,LBRC, RBRC, Y , U , I , O , P ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , A , S , D , F , G , A, A, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , A, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_LOWER] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRAVE, 1 , 2 , 3 , 4 , 5 , A, B, 6 , 7 , 8 , 9 , 0 ,DEL,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , F1 , F2 , F3 , F4 , F5 , F6 , D, Y ,MINS, EQL,LBRC,RBRC,BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, F7 , F8 , F9 , F10, F11, F12, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_RAISE] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , 1 , 2 , 3 , 4 , 5 , A, B, 6 , 7 , 8 , 9 , 0 ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , Q , W , E , R , T , C , D, Y , U , I , O , P ,DEL ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , A, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_ADJUST] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , F1 , F2 , F3 , F4 , F5 , F6, F7, F8, F9 ,F10 , F11, F12,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , Q , W , E , R , T , C , D, Y , U , I , O , P ,DEL ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , A, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View File

@@ -2,37 +2,37 @@
#include "rs.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
TAB , Q , W , E , R , T , GRV, BSLS, Y , U , I , O , P ,EQL ,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_GRV, KC_BSLS, KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_EQL ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
ESCC, A , S , D , F , G ,PIPE, MINS, H , J , K , L ,SCLN,QUOT,
KC_ESCC, KC_A , KC_S , KC_D , KC_F , KC_G ,KC_PIPE, KC_MINS, KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , SPC, BSPC, N , M ,COMM,DOT ,SLSH,ENTS,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_SPC, KC_BSPC, KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_ENTS,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
FN , ,LCTL,LALT,LGUI, SPC, BSPC, CODE,LEFT, UP ,DOWN,RIGHT
KC_FN ,_______,KC_LCTL,KC_LALT,KC_LGUI, KC_SPC, KC_BSPC, KC_CODE,KC_LEFT, KC_UP ,KC_DOWN,KC_RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_CODE] = LAYOUT_kc(
[_CODE] = LAYOUT(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRV ,EXLM, AT ,HASH, DLR,PERC, , ,CIRC,LPLT,ASTR,RPGT,NEQL, ,
KC_GRV ,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC,_______, _______,KC_CIRC,KC_LPLT,KC_ASTR,KC_RPGT,KC_NEQL,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, 1 , 2 , 3 , 4 , 5 , , ,MINS,LBRC, UP ,RBRC, ,BSLS,
_______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 ,_______, _______,KC_MINS,KC_LBRC, KC_UP ,KC_RBRC,_______,KC_BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, 6 , 7 , 8 , 9 , 0 , DOT, ,AMPR,LEFT,DOWN,RGHT, ,PIPE,
_______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DOT, _______,KC_AMPR,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_PIPE,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______
//`----+----+----+----+----/----/ \----\----+----+----+----+----'
),
[_FN] = LAYOUT_kc(
[_FN] = LAYOUT(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, F1 , F2 , F3 , F4 , F5 , , , F6 , F7 , F8 , F9 , F10,F11 ,
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 ,_______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10,KC_F11 ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,BRMU, , , ,PGUP, , , ,
_______,_______,_______,_______,_______,_______,KC_BRMU, _______,_______,_______,KC_PGUP,_______,_______,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , RST,BRMD, VOLU, ,CTRA,PGDN,CTRE, , ,
_______,_______,_______,_______,_______, KC_RST,KC_BRMD, KC_VOLU,_______,KC_CTRA,KC_PGDN,KC_CTRE,_______,_______,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , VOLD,MUTE, , , ,
_______,_______,_______,_______,_______,_______, KC_VOLD,KC_MUTE,_______,_______,_______,_______
//`----+----+----+----+----/----/ \----\----+----+----+----+----'
),
};
};

View File

@@ -1,38 +0,0 @@
/*
Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
//#define MASTER_LEFT
#define MASTER_RIGHT
// #define EE_HANDS
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 26
#define RGBLIGHT_HUE_STEP 20
#define RGBLIGHT_SAT_STEP 20
#define RGBLIGHT_VAL_STEP 20
#define RGBLIGHT_LIMIT_VAL 220

View File

@@ -1,326 +0,0 @@
#include "ergotravel.h"
#include "action_layer.h"
#include "eeconfig.h"
#include "mousekey.h"
#include "process_unicode.h"
extern keymap_config_t keymap_config;
#define _QWERTY 0
#define _NUMBERS 1
#define _SYMBOLS 2
#define _CODING 3
#define _NAVIGATION 4
#define _ADJUST 16
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
CODING_SPACE,
NUMBERS_SPACE,
SYMBOLS_SPACE,
NAVIGATE_SPACE,
TABLE_FLIP,
RESET_TABLE,
SHRUG,
LOOK_OF_DISAPPROVAL
};
#define KC_ KC_TRNS
#define KC_ADJT MO(_ADJUST)
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
#define KC_RSEN MT(MOD_RSFT, KC_ENT) // Tap for enter, hold for right shift
#define KC_LCCA MT(MOD_LCTL, KC_CAPS) // Tap for caps lock, hold for left control
#define KC_SHDE MT(MOD_LSFT, KC_DEL) // Tap for delete, hold for left shift
#define KC_NAVI MO(_NAVIGATION)
#define KC_COSP CODING_SPACE
#define KC_NUSP NUMBERS_SPACE
#define KC_SYSP SYMBOLS_SPACE
#define KC_NASP NAVIGATE_SPACE
#define KC_FLIP TABLE_FLIP
#define KC_TSET RESET_TABLE
#define KC_SRUG SHRUG
#define KC_DISA LOOK_OF_DISAPPROVAL
#define KC_RST RESET
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
TAB , Q , W , E , R , T ,HOME, PGUP, Y , U , I , O , P ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LCCA, A , S , D , F , G ,END , PGDN, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
SHDE, Z , X , C , V , B ,LGUI, RALT, N , M ,COMM,DOT ,SLSH,RSEN,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
ESC ,ADJT,LALT,ENT ,NUSP,NASP, SYSP,COSP,RCTL,NAVI,ADJT,DEL
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_NUMBERS] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRAVE, 1 , 2 , 3 , 4 , 5 ,MPLY, VOLU, 6 , 7 , 8 , 9 , 0 , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,MNXT, VOLD,FLIP,TSET,SRUG,DISA, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_SYMBOLS] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRAVE,EXLM, AT ,HASH,DLR ,PERC,MPLY, VOLU,CIRC,AMPR,ASTR,LPRN,RPRN,BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,MNXT, VOLD, , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_CODING] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , ,LCBR,RCBR, ,MPLY, VOLU, ,AMPR,PIPE,DLR , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,LPRN,RPRN, ,MNXT, VOLD, ,UNDS,MINS,ASTR, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,LBRC,RBRC, , , , ,PLUS,EQL , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_NAVIGATION] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , , UP , , ,MPLY, VOLU,WH_U,BTN1,MS_U,BTN1, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, ,LEFT,DOWN,RGHT, ,MNXT, VOLD,WH_D,MS_L,MS_D,MS_R, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_ADJUST] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
F1 ,F2 ,F3 ,F4 ,F5 ,F6 , , ,F7 ,F8 ,F9 ,F10 ,F11 ,F12 ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,RTOG,RVAI,RHUI,RSAI, , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,RMOD,RVAD,RHUD,RSAD, , , ,RST , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
)
};
#ifdef AUDIO_ENABLE
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
uint16_t custom_lt_timer;
keypos_t prv_key_pressed;
// Runs just one time when the keyboard initializes.
void matrix_init_user(void) {
// set_unicode_input_mode(UC_LNX); // Linux
set_unicode_input_mode(UC_OSX); // Mac OSX
// set_unicode_input_mode(UC_WIN); // Windows (with registry key, see wiki)
//set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if(record->event.pressed) prv_key_pressed = record->event.key;
#define IS_KEYPOS_SAME(keyone,keytwo) ((keyone.col==keytwo.col)&&(keyone.row==keytwo.row))
#define ANOTHER_KEY_PRESSED (!IS_KEYPOS_SAME(prv_key_pressed, record->event.key))
inline void tap(uint16_t keycode) {
register_code(keycode);
unregister_code(keycode);
};
inline void swapInput(void) {
register_code(KC_LGUI);
tap(KC_SPC);
unregister_code(KC_LGUI);
};
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_qwerty);
#endif
persistent_default_layer_set(1UL<<_QWERTY);
}
return false;
break;
case CODING_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_CODING);
} else {
layer_off(_CODING);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case NUMBERS_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_NUMBERS);
} else {
layer_off(_NUMBERS);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case SYMBOLS_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_SYMBOLS);
} else {
layer_off(_SYMBOLS);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case NAVIGATE_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_NAVIGATION);
} else {
layer_off(_NAVIGATION);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case TABLE_FLIP:
if (record->event.pressed) {
swapInput();
register_code(KC_RSFT);
tap(KC_9);
unregister_code(KC_RSFT);
process_unicode((0x256F|QK_UNICODE), record); // Arm
process_unicode((0x00B0|QK_UNICODE), record); // Eye
process_unicode((0x25A1|QK_UNICODE), record); // Mouth
process_unicode((0x00B0|QK_UNICODE), record); // Eye
register_code(KC_RSFT);
tap(KC_0);
unregister_code(KC_RSFT);
process_unicode((0x256F|QK_UNICODE), record); // Arm
tap(KC_SPC);
process_unicode((0x0361|QK_UNICODE), record); // Flippy
tap(KC_SPC);
process_unicode((0x253B|QK_UNICODE), record); // Table
process_unicode((0x2501|QK_UNICODE), record); // Table
process_unicode((0x253B|QK_UNICODE), record); // Table
swapInput();
}
return false;
break;
case RESET_TABLE: // ┬──┬ ( ゜-゜ノ)
if (record->event.pressed) {
swapInput();
process_unicode((0x252C|QK_UNICODE), record); // Table
process_unicode((0x2500|QK_UNICODE), record); // Table
process_unicode((0x2500|QK_UNICODE), record); // Table
process_unicode((0x252C|QK_UNICODE), record); // Table
tap(KC_SPC);
process_unicode((0x30CE|QK_UNICODE), record); // Arm
register_code(KC_RSFT);
tap(KC_9);
unregister_code(KC_RSFT);
tap(KC_SPC);
process_unicode((0x309C|QK_UNICODE), record); // Eye
tap(KC_MINS);
process_unicode((0x309C|QK_UNICODE), record); // Eye
process_unicode((0x30CE|QK_UNICODE), record); // Arm
register_code(KC_RSFT);
tap(KC_0);
unregister_code(KC_RSFT);
swapInput();
}
return false;
break;
case SHRUG: // ¯\_(ツ)_/¯
if (record->event.pressed) {
swapInput();
process_unicode((0x00AF|QK_UNICODE), record); // Hand
tap(KC_BSLS); // Arm
register_code(KC_RSFT);
tap(KC_UNDS); // Arm
tap(KC_LPRN); // Head
unregister_code(KC_RSFT);
process_unicode((0x30C4|QK_UNICODE), record); // Face
register_code(KC_RSFT);
tap(KC_RPRN); // Head
tap(KC_UNDS); // Arm
unregister_code(KC_RSFT);
tap(KC_SLSH); // Arm
process_unicode((0x00AF|QK_UNICODE), record); // Hand
swapInput();
}
return false;
break;
case LOOK_OF_DISAPPROVAL: // ಠ_ಠ
if(record->event.pressed){
swapInput();
process_unicode((0x0CA0|QK_UNICODE), record); // Eye
register_code(KC_RSFT);
tap(KC_MINS);
unregister_code(KC_RSFT);
process_unicode((0x0CA0|QK_UNICODE), record); // Eye
swapInput();
}
return false;
break;
}
return true;
}

View File

@@ -1,4 +0,0 @@
RGBLIGHT_ENABLE = yes
BACKLIGHT_ENABLE = no
UNICODE_ENABLE = yes