Update mitch layout for new keymaps

This commit is contained in:
Mitch Lloyd 2017-01-17 12:48:58 -08:00
parent 6f44885615
commit 0815c7ae17
5 changed files with 103 additions and 49 deletions

View File

@ -0,0 +1,5 @@
SUBPROJECT = rev3
ifndef QUANTUM_DIR
include ../../../../Makefile
endif

View File

@ -0,0 +1,2 @@
#include "../../config.h"
#define PREVENT_STUCK_MODIFIERS

View File

@ -0,0 +1,70 @@
#include "keymap.h"
#include "quantum.h"
#define QWERTY 0
#define LOWER 1
#define RAISE 2
// Alias to make layering more clear
#define _______ KC_TRNS
// In MacOS, switch between windows within an application
#define GUI_GRV LGUI(KC_GRV)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | Ctl | A | S | D | F | G | H | J | K | L | ; | " |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | Esc | Del | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
* `-----------------------------------------------------------------------------------'
*/
[QWERTY] = {
{KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
{KC_LCTL, 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT(MOD_RSFT, KC_ENT) },
{KC_ESC, KC_DEL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}
},
/* Lower
* ,-----------------------------------------------------------------------------------.
* | GUIGR| | | | | | | & | * | ( | ) | Del |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | Caps | | Mute | Vol- | Vol+ | | Bksp | $ | % | ^ | | | | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | | | | | | | ! | @ | # | \ |Enter |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | Enter | | | PgUp | PgUn | |
* `-----------------------------------------------------------------------------------'
*/
[LOWER] = {
{GUI_GRV, _______, _______, _______, _______, _______, _______, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL},
{KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, KC_PIPE, KC_PIPE},
{_______, _______, _______, _______, _______, _______, _______, KC_EXLM, KC_AT, KC_HASH, KC_BSLS, KC_ENT},
{_______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, _______, KC_PGDN, KC_PGUP, _______}
},
/* Raise
* ,-----------------------------------------------------------------------------------.
* | ` | ` | ~ | ( | ) | | | 7 | 8 | 9 | 0 | |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | [ | ] | { | } | | | 4 | 5 | 6 | | \ |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | - | _ | = | + | | | 1 | 2 | 3 | |Enter |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | Enter | | | | | |
* `-----------------------------------------------------------------------------------'
*/
[RAISE] = {
{KC_GRV, KC_GRV, KC_TILD, KC_LPRN, KC_RPRN, _______, _______, KC_7, KC_8, KC_9, KC_0, _______},
{_______, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, _______, _______, KC_4, KC_5, KC_6, _______, KC_BSLS},
{_______, KC_MINS, KC_UNDS, KC_EQL, KC_PLUS, _______, _______, KC_1, KC_2, KC_3, _______, KC_ENT},
{_______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, _______, KC_PGDN, KC_PGUP, _______}
}
};

View File

@ -0,0 +1,26 @@
## Flashing Keyboard
1. Install `dfu` tools:
brew tap osx-cross/avr
brew install avr-libc
brew install dfu-programmer
2. Move to this directory.
3. Hit the reset button on the keyboard.
4. run `make dfu`.
## The Keymap
This keymap is designed for a rev3 Planck Keyboard.
The default layer is QWERTY. The raise layer has a ten key on the right
and common programming punctuation on the left. The lower layer provides the
rest of the symbols, mostly mapped with the ten key numbers.
The normal right shift key uses the `MT` macro to trigger Enter on tap and right
shift when held.
This keymap sets the `PREVENT_STUCK_MODIFIERS` flag to avoid the occasional WTF
moments when using a modifier keys and accidentally releasing them after moving
to a new layer.

View File

@ -1,49 +0,0 @@
#include "keymap.h"
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = KEYMAP(
TAB, Q, W, E, R, T, Y, U, I, O, P, BSPC,
LCTL, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN3,
ESC, DEL, LALT, LGUI, FN2, SPC, FN1, LEFT, DOWN, UP, RGHT),
[1] = KEYMAP(
GRV, GRV, FN22, FN19, FN10, TRNS, TRNS, 7, 8, 9, 0, BSPC,
TRNS, LBRC, RBRC, FN23, FN24, TRNS, TRNS, 4, 5, 6, TRNS, BSLS,
TRNS, MINS, FN20, EQL, FN21, TRNS, TRNS, 1, 2, 3, TRNS, ENT,
TRNS, TRNS, TRNS, TRNS, TRNS, SPC, FN1, TRNS, PGDN, PGUP, TRNS),
[2] = KEYMAP(
FN26, FN10, FN11, FN12, FN13, FN14, FN15, FN17, FN18, FN19, FN10, DEL,
TRNS, TRNS, MUTE, VOLD, VOLU, TRNS, BSPC, FN14, FN15, FN16, TRNS, FN25,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, FN11, FN12, FN13, TRNS, ENT,
TRNS, TRNS, TRNS, TRNS, FN2, ENT, TRNS, TRNS, PGDN, PGUP, TRNS),
};
const uint16_t PROGMEM fn_actions[] = {
[1] = ACTION_LAYER_MOMENTARY(1), // Switch layer raise
[2] = ACTION_LAYER_MOMENTARY(2), // Switch layer lower
[3] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT), // Right shift serves as Enter on tap
// Numeric shift modifiers
[10] = ACTION_MODS_KEY(MOD_LSFT, KC_0),
[11] = ACTION_MODS_KEY(MOD_LSFT, KC_1),
[12] = ACTION_MODS_KEY(MOD_LSFT, KC_2),
[13] = ACTION_MODS_KEY(MOD_LSFT, KC_3),
[14] = ACTION_MODS_KEY(MOD_LSFT, KC_4),
[15] = ACTION_MODS_KEY(MOD_LSFT, KC_5),
[16] = ACTION_MODS_KEY(MOD_LSFT, KC_6),
[17] = ACTION_MODS_KEY(MOD_LSFT, KC_7),
[18] = ACTION_MODS_KEY(MOD_LSFT, KC_8),
[19] = ACTION_MODS_KEY(MOD_LSFT, KC_9),
// Other shift modifiers
[20] = ACTION_MODS_KEY(MOD_LSFT, KC_MINS), // _
[21] = ACTION_MODS_KEY(MOD_LSFT, KC_EQL), // +
[22] = ACTION_MODS_KEY(MOD_LSFT, KC_GRV), // ~
[23] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRC), // {
[24] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), // }
[25] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLS), // |
// Switch windows in app
[26] = ACTION_MODS_KEY(MOD_LGUI, KC_GRV),
};