Add Contra layout & cleanup a few things (#2998)

* Have Del become backspace on the bottom layer for grid layouts
* Fix modtap for ESC
* Add sleep to Adjust layer
This commit is contained in:
Harley Laue 2018-05-18 13:58:23 -07:00 committed by Drashna Jaelre
parent e721deb4a6
commit 8cdb4a9150
9 changed files with 153 additions and 12 deletions

View file

@ -0,0 +1,30 @@
losinggeneration's Contra Layout
============================
This build uses the MIT layout.
See description of the layout in the common folder
[here](../../../../users/losinggeneration/README.md)
## Features
- Adjust
- Removed AGSwap, AGNorm, & Del
- Added Caps Lock, F1-F12 in a 4x3 grid, arrow cluster,
and layer transitions to the new layers.
- Moved Reset & Audio control to the right side
## Layouts
### Adjust (Lower + Raise)
```
,-----------------------------------------------------------------------------------.
| | F1 | F2 | F3 | F4 | | RESET| Game |Numpad|Mouse | |Sleep |
|------+------+------+------+------+------+------+------+------+------+------+------|
| | F5 | F6 | F7 | F8 | | |Qwerty|Colmak|Workmn|Dvorak| |
|------+------+------+------+------+------+------+------+------+------+------+------|
| CAPS | F9 | F10 | F11 | F12 | | | | | | Up | |
|------+------+------+------+------+-------------+------+------+------+------+------|
| | | | | | | | XXX | Left | Down |Right |
`-----------------------------------------------------------------------------------'
```

View file

@ -0,0 +1,27 @@
/*
Copyright 2017 Danny Nguyen <danny@hexwire.com>
Copyright 2018 Harley Laue <losinggeneration@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
long with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#include QMK_KEYBOARD_CONFIG_H
#define USE_MIT_LAYOUT
#define TAPPING_TERM 250
#endif

View file

@ -0,0 +1,40 @@
#include QMK_KEYBOARD_H
#include "losinggeneration-config.h"
#include "losinggeneration-keymap.h"
extern keymap_config_t keymap_config;
#define MT_CAPS LSFT_T(KC_CAPS)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = CATMAP( QWERTY_LAYER ),
[_COLEMAK] = CATMAP( COLEMAK_LAYER ),
[_WORKMAN] = CATMAP( WORKMAN_LAYER ),
[_DVORAK] = CATMAP( DVORAK_LAYER ),
[_GAME] = CATMAP( GAME_LAYER ),
[_NUMPAD] = CATMAP( NUMPAD_LAYER ),
[_MOUSE] = CATMAP( MOUSE_LAYER ),
[_LOWER] = CATMAP( LOWER_LAYER ),
[_RAISE] = CATMAP( RAISE_LAYER ),
/* Adjust (Lower + Raise)
* ,-----------------------------------------------------------------------------------.
* | | F1 | F2 | F3 | F4 | | RESET| Game |Numpad|Mouse | |Sleep |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | F5 | F6 | F7 | F8 | | |Qwerty|Colmak|Workmn|Dvorak| |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | CAPS | F9 | F10 | F11 | F12 | | | | | | Up | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | XXX | Left | Down |Right |
* `-----------------------------------------------------------------------------------'
*/
[_ADJUST] = CATMAP( \
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, RESET , TO_GAME, TO_NUM , TO_MS , _______, KC_SLEP, \
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , _______, _______, QWERTY , COLEMAK, WORKMAN, DVORAK , _______, \
MT_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, KC_UP , _______, \
_______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT \
)
};

View file

@ -0,0 +1,17 @@
# 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
#
AUDIO_ENABLE = no # Audio output on port C6
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
COMMAND_ENABLE = no # Commands for debug and configuration
CONSOLE_ENABLE = no # Console for debug(+400)
MIDI_ENABLE = no # MIDI controls
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
ifndef QUANTUM_DIR
include ../../../../Makefile
endif

View file

@ -17,7 +17,7 @@ See description of the layout in the common folder
```
,-----------------------------------------..-----------------------------------------.
| | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | | |
| | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | |Sleep |
|------+------+------+------+------+------||------+------+------+------+------+------|
| | F5 | F6 | F7 | F8 |BL Tg ||Aud on|Qwerty|Colmak|Workmn|Dvorak| |
|------+------+------+------+------+------||------+------+------+------+------+------|

View file

@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Adjust (Lower + Raise)
* ,-----------------------------------------..-----------------------------------------.
* | | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | | |
* | | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | |Sleep |
* |------+------+------+------+------+------||------+------+------+------+------+------|
* | | F5 | F6 | F7 | F8 |BL Tg ||Aud on|Qwerty|Colmak|Workmn|Dvorak| |
* |------+------+------+------+------+------||------+------+------+------+------+------|
@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `-----------------------------------------''-----------------------------------------'
*/
[_ADJUST] = CATMAP( \
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , BL_OFF , RESET , TO_GAME, TO_NUM , TO_MS , _______, _______, \
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , BL_OFF , RESET , TO_GAME, TO_NUM , TO_MS , _______, KC_SLEP, \
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , BL_TOGG, AU_ON , QWERTY , COLEMAK, WORKMAN, DVORAK , _______, \
KC_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , BL_ON , AU_OFF , _______, _______, _______, KC_UP , _______, \
_______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT \

View file

@ -18,7 +18,7 @@ See description of the layout in the common folder
,-----------------------------------------..-----------------------------------------.
| RESET|DEBUG | | | | || | | | | | |
|------+------+------+------+------+------||------+------+------+------+------+------|
| | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| | |
| | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| |Sleep |
|------+------+------+------+------+------||------+------+------+------+------+------|
| | F5 | F6 | F7 | F8 | || |Qwerty|Colmak|Workmn|Dvorak| |
|------+------+------+------+------+------||------+------+------+------+------+------|

View file

@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* ,-----------------------------------------..-----------------------------------------.
* | RESET|DEBUG | | | | || | | | | | |
* |------+------+------+------+------+------||------+------+------+------+------+------|
* | | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| | |
* | | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| |Sleep |
* |------+------+------+------+------+------||------+------+------+------+------+------|
* | | F5 | F6 | F7 | F8 | || |Qwerty|Colmak|Workmn|Dvorak| |
* |------+------+------+------+------+------||------+------+------+------+------+------|
@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
[_ADJUST] = CATMAP( \
RESET , DEBUG , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, _______, TO_GAME, TO_NUM , TO_MS , _______, _______, \
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, _______, TO_GAME, TO_NUM , TO_MS , _______, KC_SLEP, \
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , _______, _______, QWERTY , COLEMAK, WORKMAN, DVORAK , _______, \
KC_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, KC_UP , _______, \
_______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT \

View file

@ -88,9 +88,20 @@ qk_tap_dance_action_t tap_dance_actions[] = {
* |Adjust| Ctrl | Alt | GUI |Lower | Del ||Space |Raise | Left | Down | Up |Right |
* `-----------------------------------------'`-----------------------------------------'
*/
#define BOTTOM_40_ROW \
#define BOTTOM_GRID_ROW \
TD_ADJ ,TD_CTL , TD_ALT , TD_GUI , LOWER , KC_DEL , KC_SPC , RAISE , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT
/*
* ,-----------------------------------------..-----------------------------------------.
* |Adjust| Ctrl | Alt | GUI |Lower |Space ||Space |Raise | Left | Down | Up |Right |
* `-----------------------------------------'`-----------------------------------------'
*/
#define BOTTOM_MIT_ROW \
TD_ADJ ,TD_CTL , TD_ALT , TD_GUI , LOWER , KC_SPC , KC_SPC , RAISE , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT
#ifdef USE_MIT_LAYOUT
#define BOTTOM_ROW BOTTOM_MIT_ROW
/*
* ,-----------------------------------------..-----------------------------------------.
* | | F7 | F8 | F9 | F10 | F11 || F12 | PgUp | PgDn | Home | End | |
@ -102,6 +113,22 @@ qk_tap_dance_action_t tap_dance_actions[] = {
_______, KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_PGUP, KC_PGDN, KC_HOME, KC_END , KC_MSTP, \
_______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY
#else
#define BOTTOM_ROW BOTTOM_GRID_ROW
/*
* ,-----------------------------------------..-----------------------------------------.
* | | F7 | F8 | F9 | F10 | F11 || F12 | PgUp | PgDn | Home | End | |
* |------+------+------+------+------+------||------+------+------+------+------+------|
* | | | | | | || Bksp | | Mute | Vol- | Vol+ | |
* `-----------------------------------------'`-----------------------------------------'
*/
#define BOTTOM_RAISE_LOWER_ROWS \
_______, KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_PGUP, KC_PGDN, KC_HOME, KC_END , KC_MSTP, \
_______, _______, _______, _______, _______, KC_BSPC, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY
#endif
/*
* ,-----------------------------------------..-----------------------------------------.
* | Tab | || | Bksp |
@ -115,7 +142,7 @@ qk_tap_dance_action_t tap_dance_actions[] = {
* `-----------------------------------------'`-----------------------------------------'
*/
#define STD_ESC_ROW(...) KC_ESC, __VA_ARGS__
#define STD_ESC_ROW(...) MT_ESC, __VA_ARGS__
/*
* ,-----------------------------------------..-----------------------------------------.
@ -139,7 +166,7 @@ qk_tap_dance_action_t tap_dance_actions[] = {
STD_TAB_ROW( KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ), \
STD_ESC_ROW( KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_QUOT), \
STD_LSFT_ROW(KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH), \
BOTTOM_40_ROW
BOTTOM_ROW
/* Colemak
* ,-----------------------------------------.,-----------------------------------------.
@ -156,7 +183,7 @@ qk_tap_dance_action_t tap_dance_actions[] = {
STD_TAB_ROW( KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN), \
STD_ESC_ROW( KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , KC_QUOT), \
STD_LSFT_ROW(KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH), \
BOTTOM_40_ROW
BOTTOM_ROW
/* Workman
* ,-----------------------------------------..-----------------------------------------.
@ -173,7 +200,7 @@ qk_tap_dance_action_t tap_dance_actions[] = {
STD_TAB_ROW( KC_Q , KC_D , KC_R , KC_W , KC_B , KC_J , KC_F , KC_U , KC_P , KC_SCLN), \
STD_ESC_ROW( KC_A , KC_S , KC_H , KC_T , KC_G , KC_Y , KC_N , KC_E , KC_O , KC_I , KC_QUOT), \
STD_LSFT_ROW(KC_Z , KC_X , KC_M , KC_C , KC_V , KC_K , KC_L , KC_COMM, KC_DOT , KC_SLSH), \
BOTTOM_40_ROW
BOTTOM_ROW
/* Dvorak
* ,-----------------------------------------..-----------------------------------------.
@ -190,7 +217,7 @@ qk_tap_dance_action_t tap_dance_actions[] = {
STD_TAB_ROW( KC_QUOT, KC_COMM, KC_DOT , KC_P , KC_Y , KC_F , KC_G , KC_C , KC_R , KC_L), \
STD_ESC_ROW( KC_A , KC_O , KC_E , KC_U , KC_I , KC_D , KC_H , KC_T , KC_N , KC_S , KC_SLSH), \
STD_LSFT_ROW(KC_SCLN, KC_Q , KC_J , KC_K , KC_X , KC_B , KC_M , KC_W , KC_V , KC_Z), \
BOTTOM_40_ROW
BOTTOM_ROW
/* Game (Qwerty without one shot modifiers & tap dancing)
* ,-----------------------------------------..-----------------------------------------.