1
0

Remove obvious user keymaps, keyboards/{i,j,k}* edition (#23102)

This commit is contained in:
Joel Challis
2024-02-18 08:20:57 +00:00
committed by GitHub
parent 2d1aed78a6
commit 2eb9ff8efd
341 changed files with 0 additions and 21993 deletions

View File

@@ -1,3 +0,0 @@
#define MK_3_SPEED
#define TERMINAL_HELP

View File

@@ -1,82 +0,0 @@
/* Copyright 2019 Danny Nguyen <danny@keeb.io>
*
* 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/>.
*/
#include QMK_KEYBOARD_H
bool is_alt_tab_active = false; // ADD this near the begining of keymap.c
uint16_t alt_tab_timer = 0; // we will be using them soon.
enum custom_keycodes { // Make sure have the awesome keycode ready
ALT_TAB = SAFE_RANGE,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3,
KC_WH_U, ALT_TAB, KC_WH_L,
KC_WH_D, TT(1), KC_WH_R
),
[1] = LAYOUT(
QK_BOOT, KC_ACL0, KC_ACL1,
KC_VOLU, KC_ACL2, KC_BRIU,
KC_VOLD, TO(1), KC_BRID
),
};
bool encoder_update_user(uint8_t index, bool clockwise) {
if (index == 0) {
if (clockwise) {
tap_code(KC_MS_LEFT);
} else {
tap_code(KC_MS_RIGHT);
}
}
else if (index == 1) {
if (clockwise) {
tap_code(KC_MS_U);
} else {
tap_code(KC_MS_D);
}
}
return true;
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) { // This will do most of the grunt work with the keycodes.
case ALT_TAB:
if (record->event.pressed) {
if (!is_alt_tab_active) {
is_alt_tab_active = true;
register_code(KC_LALT);
}
alt_tab_timer = timer_read();
register_code(KC_TAB);
} else {
unregister_code(KC_TAB);
}
break;
}
return true;
}
void matrix_scan_user(void) { // The very important timer.
if (is_alt_tab_active) {
if (timer_elapsed(alt_tab_timer) > 1000) {
unregister_code(KC_LALT);
is_alt_tab_active = false;
}
}
}

View File

@@ -1,16 +0,0 @@
# Mousepad layout for BDN9
##### 2 encoders required
Why use a movable mouse when you can "Etech-a-sketch" style mousepad.
The left encoder will move the X axis; leaving the right to handle the Y axis
| | | |
|:-:|:-:|:-:|
| Left Click | Middle Click | Right Click |
| Scroll Up | Super ALT↯TAB | Scroll Left |
| Scroll Down | ADJUSTMENT Layer | Scroll Right|
| | | |
|:-:|:-:|:-:|
| RESET | Mouse ACL0 | Mouse ACL1 |
| VOL UP | Mouse ACL2 | Brightness UP |
| VOL Down | Adjustment Layer OFF | Brightness Down |

View File

@@ -1,2 +0,0 @@
MOUSEKEY_ENABLE = yes
TAPDANCE_ENABLE = yes

View File

@@ -1,19 +0,0 @@
/* Copyright 2021 Danny Nguyen <danny@keeb.io>
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
#define TAPPING_TERM 150

View File

@@ -1,214 +0,0 @@
/* Copyright 2021 Danny Nguyen <danny@keeb.io>
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/>.
*/
#include QMK_KEYBOARD_H
enum layer_names {
_MAC,
_WINDOWS,
_TESTMODE,
_LOWER,
_RAISE,
_FKEYS,
_ADJUST,
};
enum custom_keycodes {
MAC = SAFE_RANGE,
WINDOWS,
TESTMODE,
LOWER,
RAISE,
ADJUST,
};
#define KC_ KC_TRNS
#define KC_CAPW LGUI(LSFT(KC_3)) // Capture whole screen
#define KC_CPYW LGUI(LSFT(LCTL(KC_3))) // Copy whole screen
#define KC_CAPP LGUI(LSFT(KC_4)) // Capture portion of screen
#define KC_CPYP LGUI(LSFT(LCTL(KC_4))) // Copy portion of screen
#define KC_ESCC MT(MOD_LCTL, KC_ESC)
#define KC_LOWR LOWER
#define KC_RASE RAISE
#define KC_GRVF LT(_FKEYS, KC_GRV)
#define KC_ENTS MT(MOD_LSFT, KC_ENT)
#define KC_BL_S BL_STEP
#define KC_BL_T BL_TOGG
#define KC_RMOD RGB_MOD
#ifndef LAYOUT_kc_ortho_4x12
#define LAYOUT_kc_ortho_4x12( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \
) \
LAYOUT_ortho_4x12( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35 \
)
#endif
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MAC] = LAYOUT_kc_ortho_4x12(
//┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
TAB , Q , W , E , R , T , Y , U , I , O , P ,MINS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
ESCC, A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH,ENTS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
GRVF,LCTL,LALT,LGUI,LOWR,SPC , BSPC,RASE,LEFT,DOWN, UP ,RGHT
//└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
),
[_WINDOWS] = LAYOUT_kc_ortho_4x12(
//┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
TAB , Q , W , E , R , T , Y , U , I , O , P ,MINS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
ESCC, A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH,ENTS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
GRVF,LALT,LGUI,LCTL,LOWR,SPC , BSPC,RASE,LEFT,DOWN, UP ,RGHT
//└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
),
[_TESTMODE] = LAYOUT_kc_ortho_4x12(
//┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
TAB , Q , W , E , R , T , Y , U , I , O , P ,MINS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
RMOD,BL_S, S , D , F , G , RMOD,BL_S, K , L ,SCLN,QUOT,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH,ENTS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
GRVF,LALT,LGUI,LCTL,LOWR,SPC , BSPC,RASE,LEFT,DOWN, UP ,RGHT
//└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
),
[_LOWER] = LAYOUT_kc_ortho_4x12(
//┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
DEL ,CAPP,LEFT,RGHT, UP ,LBRC, RBRC, P4 , P5 , P6 ,PLUS,PIPE,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
,CPYP, , ,DOWN,LCBR, RCBR, P1 , P2 , P3 ,MINS, ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
BL_S,BL_T, , , ,DEL , DEL , , P0 ,PDOT, ,
//└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
),
[_RAISE] = LAYOUT_kc_ortho_4x12(
//┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN, ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
DEL ,MPRV,MNXT,VOLU,PGUP,UNDS, EQL ,HOME, , , ,BSLS,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
MUTE,MSTP,MPLY,VOLD,PGDN,MINS, PLUS,END , , , , ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
, , , , , , , , , , ,
//└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
),
[_FKEYS] = LAYOUT_kc_ortho_4x12(
//┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
F12 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
, , , , , , , , , , , ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
, , , , , , , , , , , ,
//├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
, , , , , , , , , , ,
//└────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
),
/* Adjust (Lower + Raise)
* ,-----------------------------------------------------------------------------------.
* | | Reset|RGB Tg|RGB Md|Hue Up|Hue Dn|Sat Up|Sat Dn|Val Up|Val Dn| | |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------'
*/
[_ADJUST] = LAYOUT_ortho_4x12(
_______, QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______,
_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, MAC, WINDOWS, TESTMODE,_______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case MAC:
if (record->event.pressed) {
set_single_persistent_default_layer(_MAC);
}
return false;
break;
case WINDOWS:
if (record->event.pressed) {
set_single_persistent_default_layer(_WINDOWS);
}
return false;
break;
case TESTMODE:
if (record->event.pressed) {
set_single_persistent_default_layer(_TESTMODE);
}
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,306 +0,0 @@
/* Copyright 2022 Forrest Cahoon <forrest.cahoon@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/>.
*/
// Milliseconds the backlight is off (or on) when blinking to show
// caps lock is on. In other words, half the time of a full blink cycle.
#define CAPS_LOCK_BLINK_MS 350
#include QMK_KEYBOARD_H
enum layer {
_QWERTY,
_PG, // for "programming"
_MS, // for "mouse"
};
enum custom_keycodes {
PG_ARRO = SAFE_RANGE,
PG_BANG,
PG_ENDC,
PG_EQEQ,
PG_EQL,
PG_LBRK,
PG_LPAR,
PG_MINS,
PG_NEEQ,
PG_RBRK,
PG_RPAR,
PG_SLAS,
PG_VBAR,
MS_BTN,
};
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT(
// ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
MS_BTN, KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
// ├────────┼───┬────┴────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
MO(_PG), KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
// ├────────┼───┼─────────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
MO(_MS), KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
// ├────────┼───┴─────────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┴────┬────────┬───┘
TG(_PG), KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(_MS),
// ├────────┼───┬──────────┬──┴──────┬─┴────────┼────────┼────────┼────────┤ ├────────┴─┬──────┴──────┬─┴────────┼────────┴─┬─────────┬─┴────────┤
TG(_MS), KC_LGUI, KC_LCTL, KC_LALT, MO(_PG), KC_SPC, KC_SPC, KC_SPC, KC_SPC, MO(_PG), KC_RALT, KC_RCTL, KC_RGUI
// └────────┴───┴──────────┴─────────┴──────────┴────────┴────────┴────────┘ └──────────┴─────────────┴──────────┴──────────┴─────────┴──────────┘
),
[_PG] = LAYOUT(
// ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
KC_MUTE, QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
// ├────────┼───┬────┴────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
_______, _______, _______, PG_SLAS, PG_LPAR, PG_RPAR, PG_NEEQ, _______, KC_HOME, KC_UP, KC_PGUP, KC_INS, _______, _______, _______,
// ├────────┼───┼─────────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
_______, _______, PG_ENDC, PG_VBAR, PG_LBRK, PG_RBRK, PG_EQEQ, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_BSPC,
// ├────────┼───┴─────────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┴────┬────────┬───┘
_______, _______, _______, PG_MINS, PG_EQL, PG_BANG, PG_ARRO, _______, KC_END, KC_DOWN, KC_PGDN, KC_DEL, _______, _______,
// ├────────┼───┬──────────┬──┴──────┬─┴────────┼────────┼────────┼────────┤ ├────────┴─┬──────┴──────┬─┴────────┼────────┴─┬─────────┬─┴────────┤
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
// └────────┴───┴──────────┴─────────┴──────────┴────────┴────────┴────────┘ └──────────┴─────────────┴──────────┴──────────┴─────────┴──────────┘
),
[_MS] = LAYOUT(
// ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
// ├────────┼───┬────┴────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
_______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, _______, _______, _______, _______,
// ├────────┼───┼─────────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
_______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN3, _______, _______,
// ├────────┼───┴─────────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┴────┬────────┬───┘
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_D, _______, _______, _______, _______,
// ├────────┼───┬──────────┬──┴──────┬─┴────────┼────────┼────────┼────────┤ ├────────┴─┬──────┴──────┬─┴────────┼────────┴─┬─────────┬─┴────────┤
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
// └────────┴───┴──────────┴─────────┴──────────┴────────┴────────┴────────┘ └──────────┴─────────────┴──────────┴──────────┴─────────┴──────────┘
),
};
// clang-format on
const key_override_t pg_lbrk_none = ko_make_with_layers_and_negmods(0, PG_LBRK, KC_LEFT_CURLY_BRACE, ~0, ~0);
const key_override_t pg_lbrk_shift = ko_make_with_layers_and_negmods(MOD_MASK_SHIFT, PG_LBRK, KC_LEFT_BRACKET, ~0, ~MOD_MASK_SHIFT);
const key_override_t pg_lpar_none = ko_make_with_layers_and_negmods(0, PG_LPAR, KC_LEFT_PAREN, ~0, ~0);
const key_override_t pg_lpar_shift = ko_make_with_layers_and_negmods(MOD_MASK_SHIFT, PG_LPAR, KC_LEFT_ANGLE_BRACKET, ~0, ~MOD_MASK_SHIFT);
const key_override_t pg_rbrk_none = ko_make_with_layers_and_negmods(0, PG_RBRK, KC_RIGHT_CURLY_BRACE, ~0, ~0);
const key_override_t pg_rbrk_shift = ko_make_with_layers_and_negmods(MOD_MASK_SHIFT, PG_RBRK, KC_RIGHT_BRACKET, ~0, ~MOD_MASK_SHIFT);
const key_override_t pg_rpar_none = ko_make_with_layers_and_negmods(0, PG_RPAR, KC_RIGHT_PAREN, ~0, ~0);
const key_override_t pg_rpar_shift = ko_make_with_layers_and_negmods(MOD_MASK_SHIFT, PG_RPAR, KC_RIGHT_ANGLE_BRACKET, ~0, ~MOD_MASK_SHIFT);
const key_override_t pg_slas_none = ko_make_with_layers_and_negmods(0, PG_SLAS, KC_SLASH, ~0, ~0);
const key_override_t pg_slas_shift = ko_make_with_layers_and_negmods(MOD_MASK_SHIFT, PG_SLAS, KC_BACKSLASH, ~0, ~MOD_MASK_SHIFT);
const key_override_t ms_btn_none = ko_make_with_layers_and_negmods(0, MS_BTN, KC_MS_BTN1, ~0, ~0);
const key_override_t ms_btn_shift = ko_make_with_layers_and_negmods(MOD_MASK_SHIFT, MS_BTN, KC_MS_BTN2, ~0, ~MOD_MASK_SHIFT);
// clang-format off
const key_override_t **key_overrides = (const key_override_t *[]){
&pg_lbrk_none, &pg_lbrk_shift,
&pg_lpar_none, &pg_lpar_shift,
&pg_rbrk_none, &pg_rbrk_shift,
&pg_rpar_none, &pg_rpar_shift,
&pg_slas_none, &pg_slas_shift,
&ms_btn_none, &ms_btn_shift,
NULL};
// clang-format on
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
uint8_t std_mods = get_mods();
uint8_t oneshot_mods = get_oneshot_mods();
uint8_t all_mods = std_mods | oneshot_mods;
bool shift_on = all_mods & MOD_MASK_SHIFT;
bool ctrl_on = all_mods & MOD_MASK_CTRL;
// None of our special keycodes use ALT or GUI mods (so far), so we
// check once here at the top and let other code handle it if any of
// these are set.
if (all_mods & (MOD_MASK_ALT | MOD_MASK_GUI)) return true;
switch (keycode) {
case KC_CAPS:
// On caps lock release, if caps lock just got turned off, ensure that
// backlight is enabled when it stops blinking.
if (!record->event.pressed) {
if (!host_keyboard_led_state().caps_lock) {
backlight_enable();
// In this case, we want to continue processing
return true;
}
}
break;
case PG_ARRO:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (shift_on) {
if (!ctrl_on) SEND_STRING(" ");
SEND_STRING("=>");
if (!ctrl_on) SEND_STRING(" ");
} else {
if (ctrl_on) SEND_STRING(" ");
SEND_STRING("->");
if (ctrl_on) SEND_STRING(" ");
}
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_BANG:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (shift_on) {
if (!ctrl_on) SEND_STRING(" ");
SEND_STRING("*");
if (!ctrl_on) SEND_STRING(" ");
} else {
if (ctrl_on) SEND_STRING(" ");
SEND_STRING("!");
if (!ctrl_on) SEND_STRING(" ");
}
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_ENDC:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
SEND_STRING(SS_TAP(X_END));
if (!shift_on) SEND_STRING(";");
if (!ctrl_on) SEND_STRING(SS_TAP(X_ENTER));
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_EQEQ:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (!ctrl_on) SEND_STRING(" ");
shift_on ? SEND_STRING("==") : SEND_STRING("===");
if (!ctrl_on) SEND_STRING(" ");
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_EQL:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (!ctrl_on) SEND_STRING(" ");
shift_on ? SEND_STRING("+") : SEND_STRING("=");
if (!ctrl_on) SEND_STRING(" ");
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_MINS:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (shift_on) {
if (ctrl_on) SEND_STRING(" ");
SEND_STRING("_");
if (ctrl_on) SEND_STRING(" ");
} else {
if (!ctrl_on) SEND_STRING(" ");
SEND_STRING("-");
if (!ctrl_on) SEND_STRING(" ");
}
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_NEEQ:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (!ctrl_on) SEND_STRING(" ");
shift_on ? SEND_STRING("!=") : SEND_STRING("!==");
if (!ctrl_on) SEND_STRING(" ");
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
case PG_VBAR:
if (record->event.pressed) {
clear_mods();
clear_oneshot_mods();
if (!ctrl_on) SEND_STRING(" ");
shift_on ? SEND_STRING("&") : SEND_STRING("|");
if (!ctrl_on) SEND_STRING(" ");
set_mods(std_mods);
set_oneshot_mods(oneshot_mods);
return false;
}
break;
}
return true;
}
// I have only one encoder on my FoldKB and I want it to always be a scroll wheel.
bool encoder_update_user(uint8_t index, bool clockwise) {
if (clockwise) {
tap_code(KC_MS_WH_DOWN);
} else {
tap_code(KC_MS_WH_UP);
}
return false;
}
static uint16_t caps_lock_blink_timer = 0;
// This is called after every matrix scan. We make the backlight blink
// when caps lock is on here. To ensure the backlight is in the on state
// when caps lock is turned off, we also watch for the relase of the caps
// lock key in process_record_user().
void housekeeping_task_user(void) {
if (host_keyboard_led_state().caps_lock) {
if (timer_elapsed(caps_lock_blink_timer) >= CAPS_LOCK_BLINK_MS) {
backlight_toggle();
caps_lock_blink_timer = timer_read();
}
}
}
// The backlight level shows which layer we are in:
// Mouse layer: dim | QWERTY layer: medium | Programming layer: bright
layer_state_t layer_state_set_user(layer_state_t state) {
switch (get_highest_layer(state)) {
case _MS:
backlight_level(1);
break;
case _PG:
backlight_level(3);
break;
default:
backlight_level(2);
break;
}
return state;
}
void keyboard_post_init(void) {
backlight_level(2);
}

View File

@@ -1,23 +0,0 @@
# Keebio FoldKB rev1
My layout for the FoldKB has three layers:
* A default standard QWERTY layer,
* a second "programming" layer with
* function keys for the corresponding numbers
* arrow and other navigation keys (such as home) on the right half, and
* various alternate keymappings and macros useful for programming on the
left half.
* a third "mouse" layer with mouse keys on the right half. No special functions
have been added to the left half for this layer (yet).
This was written for a FoldKB with one encoder, and that is made to function as
a mouse scroll wheel on all layers. Pressing it is a mouse left click and
shift-pressing it is a mouse right click. (Presumably both encoders would do the
same thing on a FoldKB with two.)
The backgound lighting levels indicate the layer: dimmest for the default
QWERTY layer, middle brightness for the mouse layer, and brightest for the
programming layer.

View File

@@ -1,3 +0,0 @@
KEY_OVERRIDE_ENABLE = yes
MOUSEKEY_ENABLE = yes
ENCODER_ENABLE = yes

View File

@@ -1,45 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
// 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.
#define _BASE 0
#define _FN1 1
#define _FN2 2
enum custom_keycodes {
QWERTY = SAFE_RANGE,
};
#define FN1 MO(_FN1)
#define FN2 MO(_FN2)
#define SPFN1 LT(_FN1, KC_SPACE)
#define BSFN2 LT(_FN2, KC_BSPC)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC,
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
XXXXXXX, KC_LCTL, KC_LALT, XXXXXXX, KC_SPC, FN1, KC_RCTL, KC_RGUI, FN2, XXXXXXX
),
[_FN1] = LAYOUT(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
QK_BOOT, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______,
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_UP, _______,
RGB_TOG, _______, _______, _______, _______, KC_DEL, KC_0, KC_LEFT, KC_DOWN, KC_RGHT
),
[_FN2] = LAYOUT(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS,
_______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, KC_COLN, _______,
_______, _______, _______, KC_DEL, KC_PGDN, KC_END, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______
)
};

View File

@@ -1,40 +0,0 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
Copyright 2018 Danny Nguyen <danny@keeb.io>
Copyright 2021 Roger Billerey-Mosier
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 DEBUG_MATRIX_SCAN_RATE
#define FORCE_NKRO
#undef RGBLIGHT_EFFECT_SNAKE
#undef RGBLIGHT_EFFECT_KNIGHT
#undef RGBLIGHT_EFFECT_CHRISTMAS
#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
#undef RGBLIGHT_EFFECT_RGB_TEST
#undef RGBLIGHT_EFFECT_ALTERNATING
#undef RGBLIGHT_EFFECT_TWINKLE
#define LAYER_STATE_8BIT
#define MAX_LAYER 3

View File

@@ -1,44 +0,0 @@
// Copyright 2022 Danny Nguyen (@nooges)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
// 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 custom_layer {
_BASE,
_FN1,
_FN2,
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_60(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
MO(_FN1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, _______,
KC_LCTL, KC_LGUI, KC_LALT, MO(_FN2),KC_SPC, _______, KC_SPC, KC_RALT, MO(_FN1), _______, KC_MENU, KC_RCTL
),
[_FN1] = LAYOUT_60(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL,
KC_CAPS, KC_PGUP, KC_UP, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_HOME, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, KC_DEL, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_END, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, _______,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
[_FN2] = LAYOUT_60(
KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, _______, KC_TRNS,
_______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};

View File

@@ -1,4 +0,0 @@
NKRO_ENABLE = yes # Enable N-Key Rollover
DEBOUNCE_TYPE = sym_eager_pk # Eager; per key
CONSOLE_ENABLE = no # debug console
ENCODER_ENABLE = no

View File

@@ -1,18 +0,0 @@
#pragma once
#define USE_I2C
/* Select hand configuration */
// #define MASTER_LEFT
// #define MASTER_RIGHT
#define EE_HANDS
#define TAPPING_TERM 150
#define TAPPING_TOGGLE 2
// #undef RGBLED_NUM
// #define RGBLED_NUM 12
// #define RGBLIGHT_HUE_STEP 8
// #define RGBLIGHT_SAT_STEP 8
// #define RGBLIGHT_VAL_STEP 8

View File

@@ -1,281 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
enum rorschach_layers {
_COLEMAK, // Colemak (default layer)
_QWERTY, // Qwerty
_NUMBERS, // Numbers & Symbols
_NUMBERS2, // Numbers & Function Keys (similar to _NUMBERS; used with _NUMBERS for tri-layer access to _ADJUST)
_FUNCTION, // Function
_FUNCTION2, // Function 2 (identical as _FUNCTION; used to allow for easier use of space and backspace while using function layer arrows)
_NUMPAD, // Numpad
_ADJUST, // Adjust layer, accessed via tri-layer feature)
_ADJUST2 // Second Adjust layer, accessed outside of tri-layer feature)
};
enum rorschach_keycodes {
COLEMAK = SAFE_RANGE,
QWERTY,
NUMPAD = TG(_NUMPAD),
ADJUST = MO(_ADJUST2),
SPCFN = LT(_FUNCTION, KC_SPC),
BSPCFN = LT(_FUNCTION2, KC_BSPC),
ENTNS = LT(_NUMBERS, KC_ENT),
DELNS = LT(_NUMBERS2, KC_DEL),
CTLESC = CTL_T(KC_ESC),
ALTAPP = ALT_T(KC_APP),
NKROTG = MAGIC_TOGGLE_NKRO,
};
//Tap Dance Declarations
enum {
ADJ = 0,
LBCB,
RBCB,
EQPL,
PLEQ,
MNUN,
SLAS,
GVTL,
PPLEQ,
PMNUN,
PSLPAS
};
void dance_LAYER_finished(tap_dance_state_t *state, void *user_data) {
if (state->count == 2) {
layer_on(_ADJUST2);
set_oneshot_layer(_ADJUST2, ONESHOT_START);
}
}
void dance_LAYER_reset(tap_dance_state_t *state, void *user_data) {
if (state->count == 2) {
layer_off(_ADJUST2);
clear_oneshot_layer_state(ONESHOT_PRESSED);
}
}
tap_dance_action_t tap_dance_actions[] = {
[ADJ] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_LAYER_finished, dance_LAYER_reset), // Double-tap to activate Adjust layer via oneshot layer
[LBCB] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_LCBR), // Left bracket on a single-tap, left brace on a double-tap
[RBCB] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, KC_RCBR), // Right bracket on a single-tap, right brace on a double-tap
[EQPL] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_PLUS), // Plus sign on a single-tap, equal sign on a double-tap
[PLEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PLUS, KC_EQL), // Equal sign on a single-tap, plus sign on a double-tap
[MNUN] = ACTION_TAP_DANCE_DOUBLE(KC_MINS, KC_UNDS), // Minus sign on a single-tap, underscore on a double-tap
[SLAS] = ACTION_TAP_DANCE_DOUBLE(KC_SLSH, KC_ASTR), // Slash in a single-tap, asterisk in a double-tap
[GVTL] = ACTION_TAP_DANCE_DOUBLE(KC_GRV, KC_TILD), // Grave on a single-tap, tilde on a double-tap
[PPLEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PPLS, KC_EQL), // Numpad plus sign on a single-tap, equal sign on a double-tap
[PMNUN] = ACTION_TAP_DANCE_DOUBLE(KC_PMNS, KC_UNDS), // Numpad minus sign on a single-tap, underscore on a double-tap
[PSLPAS] = ACTION_TAP_DANCE_DOUBLE(KC_PSLS, KC_PAST) // Numpad slash on a single-tap, numpad asterisk on a double-tap
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Colemak
* (Defauit layer; keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
* ,-----------------------------------------------. ,-----------------------------------------------.
* | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* |Esc/Ctl| A | R | S | T | D | | H | N | E | I | O | ' |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | SC Sft| Z | X | C | V | B | | K | M | , | . | / | SC Sft|
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | Ins | ` | [ | ] |App/Alt| Spc/FN| |Bsp/Fn2| RGUI | Left | Down | Up | Right |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | Ent/NS| Bspc | | Enter |Del/NS2|
* `---------------' `---------------'
*/
[_COLEMAK] = LAYOUT(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
CTLESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC, ALTAPP, SPCFN, BSPCFN, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
ENTNS, KC_BSPC, KC_ENT, DELNS
),
/* QWERTY
* (Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
* ,-----------------------------------------------. ,-----------------------------------------------.
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* |Esc/Ctl| A | S | D | F | G | | H | J | K | L | ; | ' |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | SC Sft| Z | X | C | V | B | | N | M | , | . | / | SC Sft|
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | Ins | ` | [ | ] |App/Alt| Spc/FN| |Bsp/Fn2| RGUI | Left | Down | Up | Right |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | Ent/NS| Bspc | | Enter |Del/NS2|
* `---------------' `---------------'
*/
[_QWERTY] = LAYOUT(
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
CTLESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC, ALTAPP, SPCFN, BSPCFN, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
ENTNS, KC_BSPC, KC_ENT, DELNS
),
/* Number/symbol layer
* (Multiple characters: single-tap for first, double-tap for second)
* ,-----------------------------------------------. ,-----------------------------------------------.
* | | 6 | 7 | 8 | 9 | 0 | | ^ | & | * | ( | ) | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | 1 | 2 | 3 | 4 | 5 | | ! | @ | # | $ | % | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | ( | ) | [ { | ] } | | | | | | | | | |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | | | | | |
* `---------------' `---------------'
*/
[_NUMBERS] = LAYOUT(
_______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______,
_______, _______, KC_DOT, TD(SLAS), TD(MNUN), TD(PLEQ), TD(GVTL), TD(LBCB), TD(RBCB), _______, _______, _______,
KC_LPRN, KC_RPRN, TD(LBCB), TD(RBCB), _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
/* Number/Function Key layer
* (Multiple characters: single-tap for first, double-tap for second)
* ,-----------------------------------------------. ,-----------------------------------------------.
* | | 6 | 7 | 8 | 9 | 0 | | F7 | F8 | F9 | F10 | F11 | F12 |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | 1 | 2 | 3 | 4 | 5 | | F1 | F2 | F3 | F4 | F5 | F6 |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | ( | ) | [ { | ] } | | | | | | | | | |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | | | | | |
* `---------------' `---------------'
*/
[_NUMBERS2] = LAYOUT(
_______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
_______, _______, KC_DOT, TD(SLAS), TD(MNUN), TD(PLEQ), TD(GVTL), TD(LBCB), TD(RBCB), _______, _______, _______,
KC_LPRN, KC_RPRN, TD(LBCB), TD(RBCB), _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
/* Function layer
* ,-----------------------------------------------. ,-----------------------------------------------.
* | | | | Up | | | | | | Up | Ctrl+Y| | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | Ctrl+A| Left | Down | Right |C+A+Tab| | PgUp | Right | Down | Left | Home | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | Ctrl+Z| Ctrl+X| Ctrl+C| Ctrl+V| Bspc | | PgDn | Mute | Vol- | Vol+ | End | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | | | | | | | | | | Prev | Play | Next | Stop |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | | | | | |
* `---------------' `---------------'
*/
[_FUNCTION] = LAYOUT(
_______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UP, LCTL(KC_Y), _______, _______,
_______, LCTL(KC_A), KC_LEFT, KC_DOWN, KC_RGHT, LCA(KC_TAB), KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
_______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_BSPC, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
_______, _______, _______, _______
),
[_FUNCTION2] = LAYOUT(
_______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UP, LCTL(KC_Y), _______, _______,
_______, LCTL(KC_A), KC_LEFT, KC_DOWN, KC_RGHT, LCA(KC_TAB), KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
_______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_BSPC, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
_______, _______, _______, _______
),
/* Numpad layer
* (Left side duplicates layout from the Numbers layer, just with numpad output; right side layout close to PC numpad layout)
* ,-----------------------------------------------. ,-----------------------------------------------.
* | | KP 6 | KP 7 | KP 8 | KP 9 | KP 0 | | NumLk | KP 7 | KP 8 | KP 9 | KP / | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | KP 1 | KP 2 | KP 3 | KP 4 | KP 5 | | Tab | KP 4 | KP 5 | KP 6 | KP * | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | NumLk | KP . |KP/ KP*| KP- _ | KP+ = | | | KP 1 | KP 2 | KP 3 | KP - | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | ( | ) | [ { | ] } | | | | | KP 0 | = | KP . | KP + | |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | | | | KP Ent| |
* `---------------' `---------------'
*/
[_NUMPAD] = LAYOUT(
_______, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_NUM, KC_P7, KC_P8, KC_P9, KC_PSLS, _______,
_______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PAST, _______,
_______, KC_NUM, KC_PDOT, TD(PSLPAS), TD(PMNUN), TD(PPLEQ), _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______,
KC_LPRN, KC_RPRN, TD(LBCB), TD(RBCB), _______, _______, _______, KC_P0, KC_EQL, KC_PDOT, KC_PPLS, _______,
_______, _______, KC_PENT, _______
),
/* Adjust layer
* (Enter/Number + Delete/Number2 to access; Numpad is a toggle)
* ,-----------------------------------------------. ,-----------------------------------------------.
* | |Colemak| Qwerty| | | | | Numpad| | | Ctrl+Y| | QK_BOOT |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | | | | | | | |NKROTog| | | | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
* | | | | | | | | | | | | | |
* |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------'
* | | | | | | | | | | | | | |
* `---------------------------------------+-------+-------. ,-------+-------+---------------------------------------'
* | | | | | |
* `---------------' `---------------'
*/
[_ADJUST] = LAYOUT(
_______, COLEMAK, QWERTY, _______, _______, _______, NUMPAD, _______, _______, _______, _______, QK_BOOT,
_______, _______, _______, _______, _______, _______, _______, NKROTG, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
[_ADJUST2] = LAYOUT(
_______, COLEMAK, QWERTY, _______, _______, _______, NUMPAD, _______, _______, _______, _______, QK_BOOT,
_______, _______, _______, _______, _______, _______, _______, NKROTG, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
)
};
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _NUMBERS, _NUMBERS2, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case COLEMAK:
if (record->event.pressed) {
default_layer_set(1UL << _COLEMAK);
layer_off ( _QWERTY);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _ADJUST);
layer_off ( _ADJUST2);
}
return false;
break;
case QWERTY:
if (record->event.pressed) {
default_layer_set(1UL << _QWERTY);
layer_off ( _COLEMAK);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _ADJUST);
layer_off ( _ADJUST2);
}
return false;
break;
}
return true;
}

View File

@@ -1 +0,0 @@
## I've changed my folder name to match my GitHub username. Please see https://github.com/qmk/qmk_firmware/tree/master/keyboards/keebio/rorschach/keymaps/tuesdayjohn for my current keymap files.

View File

@@ -1,19 +0,0 @@
# 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 # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = yes # 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 = yes # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
TAP_DANCE_ENABLE = yes # Enable Tap Dancing function

View File

@@ -1,18 +0,0 @@
#pragma once
#define USE_I2C
/* Select hand configuration */
// #define MASTER_LEFT
// #define MASTER_RIGHT
#define EE_HANDS
#define TAPPING_TERM 175
#define TAPPING_TOGGLE 2
// #undef RGBLED_NUM
// #define RGBLED_NUM 12
// #define RGBLIGHT_HUE_STEP 8
// #define RGBLIGHT_SAT_STEP 8
// #define RGBLIGHT_VAL_STEP 8

View File

@@ -1,296 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
enum rorschach_layers {
_COLEMAK, // Colemak (default layer)
_QWERTY, // Qwerty
_NUMBERS, // Numbers & Symbols
_NUMBERS2, // Numbers & Function Keys (similar to _NUMBERS; used with _NUMBERS for tri-layer access to _ADJUST)
_FUNCTION, // Function
_FUNCTION2, // Function 2 (identical as _FUNCTION; used to allow for easier use of space and backspace while using function layer arrows)
_NUMPAD, // Numpad
_ADJUST, // Adjust layer, accessed via tri-layer feature)
_ADJUST2 // Second Adjust layer, accessed outside of tri-layer feature)
};
enum rorschach_keycodes {
COLEMAK = SAFE_RANGE,
QWERTY
};
//Tap Dance Declarations
enum {
ADJ = 0,
LBCB,
RBCB,
EQPL,
PLEQ,
MNUN,
SLAS,
GVTL,
PPEQ,
PMUN,
PSPA
};
void dance_LAYER_finished(tap_dance_state_t *state, void *user_data) {
if (state->count == 2) {
layer_on(_ADJUST2);
set_oneshot_layer(_ADJUST2, ONESHOT_START);
}
}
void dance_LAYER_reset(tap_dance_state_t *state, void *user_data) {
if (state->count == 2) {
layer_off(_ADJUST2);
clear_oneshot_layer_state(ONESHOT_PRESSED);
}
}
tap_dance_action_t tap_dance_actions[] = {
[ADJ] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_LAYER_finished, dance_LAYER_reset), // Double-tap to activate Adjust layer via oneshot layer
[LBCB] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_LCBR), // Left bracket on a single-tap, left brace on a double-tap
[RBCB] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, KC_RCBR), // Right bracket on a single-tap, right brace on a double-tap
[EQPL] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_PLUS), // Plus sign on a single-tap, equal sign on a double-tap
[PLEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PLUS, KC_EQL), // Equal sign on a single-tap, plus sign on a double-tap
[MNUN] = ACTION_TAP_DANCE_DOUBLE(KC_MINS, KC_UNDS), // Minus sign on a single-tap, underscore on a double-tap
[SLAS] = ACTION_TAP_DANCE_DOUBLE(KC_SLSH, KC_ASTR), // Slash in a single-tap, asterisk in a double-tap
[GVTL] = ACTION_TAP_DANCE_DOUBLE(KC_GRV, KC_TILD), // Grave on a single-tap, tilde on a double-tap
[PPEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PPLS, KC_EQL), // Numpad plus sign on a single-tap, equal sign on a double-tap
[PMUN] = ACTION_TAP_DANCE_DOUBLE(KC_PMNS, KC_UNDS), // Numpad minus sign on a single-tap, underscore on a double-tap
[PSPA] = ACTION_TAP_DANCE_DOUBLE(KC_PSLS, KC_PAST) // Numpad slash on a single-tap, numpad asterisk on a double-tap
};
//Aliases for longer keycodes
#define NUMPAD TG(_NUMPAD)
#define ADJUST MO(_ADJUST2)
#define SPCFN LT(_FUNCTION, KC_SPC)
#define BSPCFN LT(_FUNCTION2, KC_BSPC)
#define ENTNS LT(_NUMBERS, KC_ENT)
#define DELNS LT(_NUMBERS2, KC_DEL)
#define CTLESC CTL_T(KC_ESC)
#define ALTAPP ALT_T(KC_APP)
#define CTL_A LCTL(KC_A)
#define CTL_C LCTL(KC_C)
#define CTL_V LCTL(KC_V)
#define CTL_X LCTL(KC_X)
#define CTL_Z LCTL(KC_Z)
#define CTL_Y LCTL(KC_Y)
#define CA_TAB LCA(KC_TAB)
#define HYPER ALL_T(KC_NO)
#define TD_ADJ TD(ADJ)
#define TD_LBCB TD(LBCB)
#define TD_RBCB TD(RBCB)
#define TD_EQPL TD(EQPL)
#define TD_PLEQ TD(PLEQ)
#define TD_MNUN TD(MNUN)
#define TD_SLAS TD(SLAS)
#define TD_GVTL TD(GVTL)
#define TD_PPEQ TD(PPEQ)
#define TD_PMUN TD(PMUN)
#define TD_PSPA TD(PSPA)
#define NKROTG MAGIC_TOGGLE_NKRO
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
Colemak
(Defauit layer; keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
,-----------------------------------------------------. ,-----------------------------------------------------.
| Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| Esc/Ctl| A | R | S | T | D | | H | N | E | I | O | ' |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|SC Shift| Z | X | C | V | B | | K | M | , | . | / |SC Shift|
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------'
| Ins | ` | [ | ] | App/Alt| Spc/FN | | Bsp/Fn2| RGUI | Left | Down | Up | Right |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| Ent/NS | Bspc | | Enter | Del/NS2|
`-----------------' `-----------------'
*/
[_COLEMAK] = LAYOUT(
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
CTLESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC, ALTAPP, SPCFN, BSPCFN, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
ENTNS, KC_BSPC, KC_ENT, DELNS
),
/*
QWERTY
(Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
,-----------------------------------------------------. ,-----------------------------------------------------.
| Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| Esc/Ctl| A | S | D | F | G | | H | J | K | L | ; | ' |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|SC Shift| Z | X | C | V | B | | N | M | , | . | / |SC Shift|
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------'
| Ins | ` | [ | ] | App/Alt| Spc/FN | | Bsp/Fn2| RGUI | Left | Down | Up | Right |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| Ent/NS | Bspc | | Enter | Del/NS2|
`-----------------' `-----------------'
*/
[_QWERTY] = LAYOUT(
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
CTLESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC, ALTAPP, SPCFN, BSPCFN, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
ENTNS, KC_BSPC, KC_ENT, DELNS
),
/*
Number/symbol layer
(Multiple characters: single-tap for first, double-tap for second)
,-----------------------------------------------------. ,-----------------------------------------------------.
| | 6 | 7 | 8 | 9 | 0 | | ^ | & | * | ( | ) | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | 1 | 2 | 3 | 4 | 5 | | ! | @ | # | $ | % | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| ( | ) | [ { | ] } | | | | | | | | | |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| | | | | |
`-----------------' `-----------------'
*/
[_NUMBERS] = LAYOUT(
_______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______,
_______, _______, KC_DOT, TD_SLAS, TD_MNUN, TD_PLEQ, TD_GVTL, TD_LBCB, TD_RBCB, _______, _______, _______,
KC_LPRN, KC_RPRN, TD_LBCB, TD_RBCB, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
/*
Number/Function Key layer
(Multiple characters: single-tap for first, double-tap for second)
,-----------------------------------------------------. ,-----------------------------------------------------.
| | 6 | 7 | 8 | 9 | 0 | | F7 | F8 | F9 | F10 | F11 | F12 |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | 1 | 2 | 3 | 4 | 5 | | F1 | F2 | F3 | F4 | F5 | F6 |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| ( | ) | [ { | ] } | | | | | | | | | |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| | | | | |
`-----------------' `-----------------'
*/
[_NUMBERS2] = LAYOUT(
_______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
_______, _______, KC_DOT, TD_SLAS, TD_MNUN, TD_PLEQ, TD_GVTL, TD_LBCB, TD_RBCB, _______, _______, _______,
KC_LPRN, KC_RPRN, TD_LBCB, TD_RBCB, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
/*
Function layer
,-----------------------------------------------------. ,-----------------------------------------------------.
| | | | Up | | | | | | Up | Ctrl+Y | | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | Ctrl+A | Left | Down | Right | C+A+Tab| | PgUp | Right | Down | Left | Home | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | Ctrl+Z | Ctrl+X | Ctrl+C | Ctrl+V | Bspc | | PgDn | Mute | Vol- | Vol+ | End | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | | | | | | | | | Prev | Play | Next | Stop |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| | | | | |
`-----------------' `-----------------'
*/
[_FUNCTION] = LAYOUT(
_______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UP, CTL_Y, _______, _______,
_______, CTL_A, KC_LEFT, KC_DOWN, KC_RGHT, CA_TAB, KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
_______, CTL_Z, CTL_X, CTL_C, CTL_V, KC_BSPC, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
_______, _______, _______, _______
),
[_FUNCTION2] = LAYOUT(
_______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UP, CTL_Y, _______, _______,
_______, CTL_A, KC_LEFT, KC_DOWN, KC_RGHT, CA_TAB, KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
_______, CTL_Z, CTL_X, CTL_C, CTL_V, KC_BSPC, KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
_______, _______, _______, _______
),
/*
Numpad layer
(Left side duplicates layout from the Numbers layer, just with numpad output; right side layout close to PC numpad layout)
,-----------------------------------------------------. ,-----------------------------------------------------.
| | KP 6 | KP 7 | KP 8 | KP 9 | KP 0 | | NumLk | KP 7 | KP 8 | KP 9 | KP / | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | KP 1 | KP 2 | KP 3 | KP 4 | KP 5 | | Tab | KP 4 | KP 5 | KP 6 | KP * | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | NumLk | KP . | KP/ KP*| KP- _ | KP+ = | | | KP 1 | KP 2 | KP 3 | KP - | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| ( | ) | [ { | ] } | | | | | KP 0 | = | KP . | KP + | |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| | | | KP Ent | |
`-----------------' `-----------------'
*/
[_NUMPAD] = LAYOUT(
_______, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_NUM, KC_P7, KC_P8, KC_P9, KC_PSLS, _______,
_______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PAST, _______,
_______, KC_NUM, KC_PDOT, TD_PSPA, TD_PMUN, TD_PPEQ, _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______,
KC_LPRN, KC_RPRN, TD_LBCB, TD_RBCB, _______, _______, _______, KC_P0, KC_EQL, KC_PDOT, KC_PPLS, _______,
_______, _______, KC_PENT, _______
),
/*
Adjust layer
(Enter/Number + Delete/Number2 to access; Numpad is a toggle)
,-----------------------------------------------------. ,-----------------------------------------------------.
| | Colemak| Qwerty | | | | | Numpad | | | | | QK_BOOT |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | | | | | | | |NKRO Tog| | | | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | | | | | | | | | | | | |
|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
| | | | | | | | | | | | | |
`--------------------------------------------+--------+--------. ,--------+--------+--------------------------------------------'
| | | | | |
`-----------------' `-----------------'
*/
[_ADJUST] = LAYOUT(
_______, COLEMAK, QWERTY, _______, _______, _______, NUMPAD, _______, _______, _______, _______, QK_BOOT,
_______, _______, _______, _______, _______, _______, _______, NKROTG, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
),
[_ADJUST2] = LAYOUT(
_______, COLEMAK, QWERTY, _______, _______, _______, NUMPAD, _______, _______, _______, _______, QK_BOOT,
_______, _______, _______, _______, _______, _______, _______, NKROTG, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______
)
};
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _NUMBERS, _NUMBERS2, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case COLEMAK:
if (record->event.pressed) {
default_layer_set(1UL << _COLEMAK);
layer_move (_COLEMAK);
}
return false;
break;
case QWERTY:
if (record->event.pressed) {
default_layer_set(1UL << _QWERTY);
layer_move (_QWERTY);
}
return false;
break;
}
return true;
}

View File

@@ -1,19 +0,0 @@
# 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 # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = yes # 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 = yes # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
TAP_DANCE_ENABLE = yes # Enable Tap Dancing function

View File

@@ -1,65 +0,0 @@
/* Copyright 2021 @ Adam Lickel
*
* 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/>.
*/
#include QMK_KEYBOARD_H
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_80_with_macro(
KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DOWN, BL_UP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MPLY,
KC_F1, KC_F2, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_HOME,
KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
KC_F9, KC_F10, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(1), KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT_80_with_macro(
_______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, RGB_RMOD,RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[2] = LAYOUT_80_with_macro(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[3] = LAYOUT_80_with_macro(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
};
// clang-format on
#ifdef ENCODER_MAP_ENABLE
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[0] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN), ENCODER_CCW_CW(KC_VOLU, KC_VOLD) },
[1] = { ENCODER_CCW_CW(RGB_MOD, RGB_RMOD), ENCODER_CCW_CW(KC_MNXT, KC_MPRV) },
[2] = { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
[3] = { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
};
#endif

View File

@@ -1,26 +0,0 @@
# lickel's Sinc keymap
- Via support is enabled by default
- Function Row is optimized for macOS
- RGB controls mimic the stock Keychron Q1 layout
- F3 opens Mission Control and F4 opens Launchpad
- Left macros are: F1->F10
- Right macros are: Play, Home, Pg Up, Pg Dn, End, Right
![Layout](https://i.imgur.com/0uXXrJY.png)
([KLE](http://www.keyboard-layout-editor.com/#/gists/e0350d8914cac3166abcca6abfd093b7))
## Changelog
### 2022-12-09 - 1.2
- Add ENCODER_MAP_ENABLE from default VIA definition
### 2022-03-04 - 1.1
- Correct function row to change LED backlights, not underglow
### 2021-11-27 - 1.0
- Initial release

View File

@@ -1,3 +0,0 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
ENCODER_MAP_ENABLE = yes

View File

@@ -1,60 +0,0 @@
#include QMK_KEYBOARD_H
#define _QWERTY 0
#define _COLEMAK 1
#define _FN1 2
#define WORD_L LALT(KC_LEFT)
#define WORD_R LALT(KC_RGHT)
#define LINE_L LGUI(KC_LEFT)
#define LINE_R LGUI(KC_RGHT)
#define DESK_L LCTL(KC_LEFT)
#define DESK_R LCTL(KC_RGHT)
#define MSN_CTL LCTL(KC_UP)
#define LT_FN LT(_FN1, KC_ESC)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_PGUP,
//├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_PGDN,
//├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
LT_FN, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENTER,
//├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC, KC_UP,
//├──────────┬───────┴──┬─────┴────┬───┴────────┴────────┴────────┴────────┴────────┴──────┬─┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_CAPS, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
//└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘
),
[_COLEMAK] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_PGUP,
//├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_PGDN,
//├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
LT_FN, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENTER,
//├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC, KC_UP,
//├──────────┬───────┴──┬─────┴────┬───┴────────┴────────┴────────┴────────┴────────┴──────┬─┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_CAPS, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
//└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘
),
[_FN1] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, QK_BOOT, KC_HOME,
//├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END,
//├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
_______, DESK_L, MSN_CTL, DESK_R, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
//├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
_______, _______, _______, _______, _______, _______, LINE_L, WORD_L, WORD_R, LINE_R, _______, _______, BL_UP,
//├──────────┬───────┴──┬─────┴────┬───┴────────┴────────┴────────┴────────┴────────┴──────┬─┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
_______, _______, _______, KC_BSPC, _______, _______, KC_MENU, BL_BRTG, BL_DOWN, BL_TOGG
//└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘
)
};

View File

@@ -1,321 +0,0 @@
#include QMK_KEYBOARD_H
// 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.
#define CANCEL LCTL(KC_C)
#define TERM LCTL(LALT(KC_T))
#define ALPHAMOD LT(_ALPHA, KC_VOLD)
#define CTLBSP MT(MOD_LCTL, KC_BSPC)
#define GUIDEL MT(MOD_LGUI, KC_DEL)
#define ALTSPC MT(MOD_LALT, KC_SPACE)
#define SPCMOD LT(_MOD, KC_SPACE)
#define JUMPBACK LSFT(KC_TAB)
#define NTAB LCTL(KC_T)
#define CTAB LCTL(KC_W)
#define TAB1 LCTL(KC_1)
#define TAB2 LCTL(KC_2)
#define TAB3 LCTL(KC_3)
#define TAB4 LCTL(KC_4)
#define BWORD LCTL(KC_BSPC)
#define LWORD LCTL(KC_LEFT)
#define RWORD LCTL(KC_RIGHT)
#define TABMOD LT(_MOD, KC_TAB)
#define ENTMOD LT(_ENT, KC_ENTER)
enum layer_names {
_BASE,
_PLAYING,
_PLAYED,
_NUMS,
_FN,
_TEST,
_ALPHA,
_QWERTY,
_REV,
_DEL,
_MOD,
_ENT
};
enum custom_keycodes {
MET = SAFE_RANGE,
SET,
GO,
STOP,
RESUME,
NEWRESUME,
SYNC,
SHUTDOWN,
REBOOT,
SOURCE,
PUSH,
TEST,
TST,
ENAME,
SNAME,
LNAME,
BUS,
PMERGE,
CSPEAK
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case SET:
if (record->event.pressed) {
layer_on(_NUMS);
SEND_STRING("met ");
}
break;
case GO:
if (record->event.pressed) {
layer_off(_NUMS);
layer_off(_ALPHA);
layer_off(_PLAYED);
layer_on(_PLAYING);
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case STOP:
if (record->event.pressed) {
layer_off(_PLAYING);
layer_on(_PLAYED);
layer_off(_NUMS);
layer_off(_ALPHA);
SEND_STRING(SS_TAP(X_N));
SEND_STRING(SS_TAP(X_N));
SEND_STRING(SS_LCTL(SS_TAP(X_C)));
}
break;
case RESUME:
if (record->event.pressed) {
layer_off(_PLAYED);
layer_on(_PLAYING);
SEND_STRING(SS_LCTL(SS_TAP(X_C)));
SEND_STRING(SS_TAP(X_UP));
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case NEWRESUME:
if (record->event.pressed) {
layer_off(_NUMS);
layer_off(_ALPHA);
layer_off(_PLAYED);
layer_on(_PLAYING);
SEND_STRING(SS_TAP(X_R));
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case SYNC:
if (record->event.pressed) {
SEND_STRING(SS_TAP(X_N));
}
break;
case SHUTDOWN:
if (record->event.pressed) {
SEND_STRING(SS_LCTL(SS_TAP(X_C)));
SEND_STRING("shutdown now");
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case REBOOT:
if (record->event.pressed) {
SEND_STRING(SS_LCTL(SS_TAP(X_C)));
SEND_STRING("reboot");
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case SOURCE:
if (record->event.pressed) {
SEND_STRING("source .bashrc");
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case PUSH:
if (record->event.pressed) {
SEND_STRING("ftp rossmontsinger.net");
_delay_ms(250);
SEND_STRING(SS_TAP(X_ENTER));
_delay_ms(2250);
SEND_STRING("met@rossmontsinger.net");
_delay_ms(250);
SEND_STRING(SS_TAP(X_ENTER));
_delay_ms(2500);
SEND_STRING("metboard");
_delay_ms(250);
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case TEST:
if (record->event.pressed) {
layer_off(_NUMS);
layer_off(_ALPHA);
layer_off(_PLAYED);
layer_on(_PLAYING);
SEND_STRING(SS_LCTL(SS_TAP(X_C)));
_delay_ms(250);
SEND_STRING("play Desktop/met/a_lazoom.mp3");
SEND_STRING(SS_TAP(X_ENTER));
}
case TST:
if (record->event.pressed) {
SEND_STRING("tst");
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case ENAME:
if (record->event.pressed) {
SEND_STRING("sname ");
layer_on(_NUMS);
layer_on(_ALPHA);
}
break;
case SNAME:
if (record->event.pressed) {
SEND_STRING(SS_TAP(X_ENTER));
layer_off(_NUMS);
layer_off(_ALPHA);
}
break;
case LNAME:
if (record->event.pressed) {
SEND_STRING("met $");
layer_off(_NUMS);
layer_on(_ALPHA);
}
break;
case BUS:
if (record->event.pressed) {
SEND_STRING("met $bus");
layer_off(_NUMS);
layer_off(_ALPHA);
layer_off(_PLAYED);
layer_on(_PLAYING);
SEND_STRING(SS_TAP(X_ENTER));
}
break;
case PMERGE:
if (record->event.pressed) {
SEND_STRING(SS_TAP(X_HOME));
SEND_STRING(SS_TAP(X_BACKSPACE));
SEND_STRING(SS_TAP(X_SPACE));
SEND_STRING(SS_LCTL(SS_TAP(X_BACKSPACE)));
SEND_STRING(SS_TAP(X_SPACE));
}
break;
case CSPEAK:
if (record->event.pressed) {
SEND_STRING(SS_TAP(X_PAGE_DOWN));
SEND_STRING(SS_TAP(X_ENTER));
SEND_STRING(SS_TAP(X_ENTER));
SEND_STRING(SS_TAP(X_PAGE_DOWN));
}
break;
};
return true;
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_ortho_5x14(
KC_NO, STOP , TST , _______, _______, _______, BUS , _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, SET , SET , SET , _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, SET , SET , SET , _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, LNAME , SET , SET , SET , _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, MO(_FN), _______, SET , _______, _______, _______, TG(_QWERTY),KC_B, _______, _______, _______, _______, _______
),
[_PLAYING] = LAYOUT_ortho_5x14(
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, STOP , _______, _______, _______, _______, _______, _______, _______
),
[_PLAYED] = LAYOUT_ortho_5x14(
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______,_______, _______, _______, _______,NEWRESUME, _______, _______, _______, _______, _______, _______, _______
),
[_NUMS] = LAYOUT_ortho_5x14(
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, KC_7 , KC_8 , KC_9 , _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, KC_4 , KC_5 , KC_6 , _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, KC_1 , KC_2 , KC_3 , _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, KC_0 , _______, _______, GO , _______, _______, _______, _______, _______, _______, _______
),
[_FN] = LAYOUT_ortho_5x14(
KC_NO, SHUTDOWN,_______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______,
KC_NO, REBOOT , _______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, ENAME , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, _______, _______, _______, _______, SOURCE , _______, _______, _______, _______, _______, _______, _______
),
[_TEST] = LAYOUT_ortho_5x14(
KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______
),
[_ALPHA] = LAYOUT_ortho_5x14(
KC_NO, _______, KC_Y , KC_U , KC_I , KC_O , KC_P , _______, _______, _______, _______, _______, _______, _______,
KC_NO, KC_N , KC_Q , KC_W , KC_E , KC_R , KC_T , _______, _______, _______, _______, _______, _______, _______,
KC_NO, KC_M , KC_A , KC_S , KC_D , KC_F , KC_G , _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, KC_Z , KC_X , KC_C , KC_V , KC_B , _______, _______, _______, _______, _______, _______, _______,
KC_NO, _______, KC_H , KC_J , KC_K , KC_L , GO , _______, _______, _______, _______, _______, _______, _______
),
[_QWERTY] = LAYOUT_ortho_5x14(
KC_NO, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL ,
KC_NO, KC_CAPS, KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC ,
KC_NO, KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_PGUP ,
KC_NO, KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_UP, KC_PGDN ,
KC_NO, CTLBSP , GUIDEL , KC_ENTER, ALTSPC, TABMOD , KC_BSPC, ENTMOD , SPCMOD ,MO(_DEL), KC_BSLS, KC_LEFT, KC_DOWN, KC_RIGHT
),
[_REV] = LAYOUT_ortho_5x14(
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, KC_TAB , KC_PGDN, _______, _______, _______, _______, _______, _______, _______
),
[_DEL] = LAYOUT_ortho_5x14(
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, KC_BSPC, BWORD , _______, _______, _______, _______, _______, _______, _______
),
[_MOD] = LAYOUT_ortho_5x14(
KC_NO , KC_GRAVE,KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , NTAB ,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CTAB,
KC_NO , _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP ,KC_RIGHT, KC_END , _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, PMERGE , KC_DOWN, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, LWORD , RWORD , TG(_QWERTY),_______,_______,_______,_______, _______, _______
),
[_ENT] = LAYOUT_ortho_5x14(
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NO , _______, _______, _______, _______, _______, CSPEAK , _______, _______, _______, _______, _______, _______, _______
)
};

View File

@@ -1 +0,0 @@
RGBLIGHT_ENABLE = yes