update eosti keymaps (#10610)

* adds eosti/planck keymaps

* updates eosti keymaps

* add header guard to bdn9 config.h

Co-authored-by: Joel Challis <git@zvecr.com>

* reduce file size of compiled firmware

* move console disable to rules.mk

Co-authored-by: Joel Challis <git@zvecr.com>
This commit is contained in:
Reid Sox-Harris 2020-10-14 19:08:28 -07:00 committed by GitHub
parent b0dbe7365b
commit 2c5ad9189c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 104 additions and 41 deletions

View File

@ -1 +1,18 @@
#define TAPPING_TERM 175
/* Copyright 2020 Reid Sox-Harris
*
* 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 275

View File

@ -1,3 +1,19 @@
/* Copyright 2020 Reid Sox-Harris
*
* 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 {
@ -13,12 +29,11 @@ enum custom_keycodes {
M804,
M805,
M806,
MAIL_C
};
// tapdance keycodes
enum td_keycodes {
LAY // Our example key: `LALT` when held, `(` when tapped. Add additional keycodes for each tapdance.
LAY
};
// define a type containing as many tapdance states as you need
@ -60,7 +75,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
SEND_STRING("M804" SS_TAP(X_ENTER));
}
break;
break;
case M805:
if (record->event.pressed) {
SEND_STRING("M805" SS_TAP(X_ENTER));
@ -71,11 +86,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
SEND_STRING("M806" SS_TAP(X_ENTER));
}
break;
case MAIL_C:
if (record->event.pressed) {
SEND_STRING(SS_TAP(X_ENTER) SS_TAP(X_DOWN) SS_TAP(X_DOWN) SS_TAP(X_ENTER));
}
break;
}
return true;
@ -90,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// ├────────┼────────┼────────┤
KC_LEFT, KC_DOWN, KC_RGHT,
// ├────────┼────────┼────────┤
KC_NO, KC_NO, KC_NO
KC_MRWD, KC_MPLY, KC_MFFD
// └────────┴────────┴────────┘
),
[_MACRO] = LAYOUT(
@ -99,16 +109,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// ├────────┼────────┼────────┤
M801, M802, M803,
// ├────────┼────────┼────────┤
MAIL_C, KC_NO, EX_ARR
KC_NO, KC_NO, EX_ARR
// └────────┴────────┴────────┘
),
[_MOD] = LAYOUT(
// ┌────────┬────────┬────────┐
_______, BL_STEP,TG(_MOD),
// ├────────┼────────┼────────┤
KC_NO, RGB_MOD, KC_NO,
RGB_TOG, RGB_HUI, RGB_SAI,
// ├────────┼────────┼────────┤
KC_NO, KC_NO, KC_NO
RGB_MOD, RGB_HUD, RGB_SAD
// └────────┴────────┴────────┘
)
};
@ -123,6 +133,8 @@ void encoder_update_user(uint8_t index, bool clockwise) {
}
}
// Tapdance! Hold to use as a modifier to the _MOD layout, tap to change it between _BASE and _MACRO
// determine the tapdance state to return
int cur_dance (qk_tap_dance_state_t *state) {
if (state->count == 1) {

View File

@ -3,7 +3,7 @@
## Features
- Single encoder in the top left to control volume, push to mute
- Arrow keys on home layer
- Arrow keys and media keys on home layer
- Tap upper right to toggle to macro layer
- Hold upper right to change keyboard functions (aka RGB)
- 520 entire bytes free!
- 428 entire bytes free!

View File

@ -1 +1,4 @@
TAP_DANCE_ENABLE=yes
CONSOLE_ENABLE = no
COMMAND_ENABLE = no
LTO_ENABLE = yes

View File

@ -1,5 +1,5 @@
/*
Copyright 2017 Danny Nguyen <danny@keeb.io>
Copyright 2020 Reid Sox-Harris
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

View File

@ -1,10 +1,27 @@
/* Copyright 2020 Reid Sox-Harris
*
* 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 {
_QWERTY,
_GAME,
_UPPER,
_LOWER
_LOWER,
_UTILS
};
enum custom_keycodes {
@ -14,13 +31,13 @@ enum custom_keycodes {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case TMUX_WN:
case TMUX_WN: // Switches to next window in tmux
if (record->event.pressed) {
SEND_STRING(SS_LCTRL("a") "n");
SEND_STRING(SS_LCTRL("a") "n"); // Requires a leader of ctrl-a
}
break;
case TMUX_WL:
case TMUX_WL: // Switches to last window in tmux
if (record->event.pressed) {
SEND_STRING(SS_LCTRL("a") "l");
}
@ -33,14 +50,14 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
#define UPPER MO(_UPPER)
#define LOWER MO(_LOWER)
#define GAME TG(_GAME)
#define UTILS MO(_UTILS)
#define WM_R LCTL(KC_RGHT)
#define WM_L LCTL(KC_LEFT)
#define WM_MC LCTL(KC_UP)
#define WEB_R LGUI(KC_RCBR)
#define WEB_L LGUI(KC_LCBR)
#define TMUX_ESC LCTL(KC_A)
#define TMUX_U RALT(KC_UP)
#define WM_R LCTL(KC_RGHT) // Moves the MacOS WM to the right
#define WM_L LCTL(KC_LEFT) // ...and to the left
#define WM_MC LCTL(KC_UP) // Enters MacOS Mission Control
#define WEB_R LGUI(KC_RCBR) // Change tabs to the right on Firefox, Chrome
#define WEB_L LGUI(KC_LCBR) // ...and to the left
#define TMUX_U RALT(KC_UP) // tmux navigation, requires tmux.conf change
#define TMUX_D RALT(KC_DOWN)
#define TMUX_R RALT(KC_RGHT)
#define TMUX_L RALT(KC_LEFT)
@ -50,13 +67,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCTL, KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSPC,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCTL, KC_NO, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSPC,
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
KC_LGUI, UPPER, KC_ENT, KC_SPC, LOWER, KC_NO
KC_LGUI, UPPER, KC_ENT, KC_SPC, LOWER, KC_RALT
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
),
[_GAME] = LAYOUT(
@ -69,31 +86,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
_______, _______, KC_SPC, KC_ENT, _______, _______
_______, _______, KC_SPC, KC_ENT, _______, _______
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
),
[_UPPER] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
KC_TILD, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_CIRC , KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
TMUX_ESC, KC_NO, KC_NO, KC_NO, WEB_L, WEB_R, TMUX_L, TMUX_D, TMUX_U, TMUX_R, KC_NO, KC_BSLS,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
_______, KC_NO, KC_VOLU, WM_MC, WM_L, WM_R, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_PGUP, KC_NO,
_______, WEB_L, WEB_R, WM_MC, WM_L, WM_R, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_PGUP, KC_BSLS,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
_______, KC_MUTE, KC_VOLD, KC_LBRC, KC_LPRN, KC_LCBR,_______, _______, KC_RCBR, KC_RPRN, KC_RBRC, KC_NO, KC_PGDN,_______,
_______, KC_NO, KC_LABK, KC_LBRC, KC_LPRN, KC_LCBR, _______, _______, KC_RCBR, KC_RPRN, KC_RBRC, KC_RABK, KC_PGDN,_______,
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
_______, _______, _______, _______, KC_NO, _______
_______, UPPER, _______, _______, UTILS, _______
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
),
[_LOWER] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_NO, KC_INS, KC_HOME, KC_PGUP, KC_NO, GAME,
KC_TILD, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_CIRC , KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
_______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_SLEP, KC_DEL, KC_END, KC_PGDN, KC_NO, KC_NO,
_______, TMUX_WL, TMUX_WN, KC_NO, KC_NO, KC_NO, TMUX_L, TMUX_D, TMUX_U, TMUX_R, KC_NO, KC_PIPE,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
_______, TMUX_WL, TMUX_WN,_______, KC_LBRC, KC_LPRN, KC_LCBR, _______, KC_RCBR, KC_RPRN, KC_RBRC, KC_NO, KC_NO, _______,
_______, KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NO, KC_DEL,
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
_______, UTILS, _______, _______, LOWER, _______
// └────────┴────────┴────────┘ └────────┴────────┴────────┘
),
[_UTILS] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
//├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_NO, KC_INS, KC_HOME, KC_PGUP, KC_NO, GAME,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
KC_NO, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD,_______, _______, KC_SLEP, KC_DEL, KC_END, KC_PGDN, KC_NO, KC_NO,
//└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
_______, KC_NO, _______, _______, _______, _______
// └────────┴────────┴────────┘ └────────┴────────┴────────┘

View File

@ -5,7 +5,8 @@
- QWERTY base layer with right thumb space and left thumb enter
- Gaming layer to swap enter and space so that WASD and space can all be on the same hand
- MacOS navigation keys for switching windows and entering Mission Control
- Google Chrome navigation keys for cycling tabs
- Browser navigation keys for cycling tabs
- HJKL arrow keys
- tmux navigation keys for switching focus, panes, and the leader key
- tmux navigation keys for switching focus, panes
- Plays nicely with my Planck layout for easy switching
- Probably other stuff too?