From a904371b29e50d0d338b7ff0a9abfdffc5dcb426 Mon Sep 17 00:00:00 2001 From: Daniel Dylewsky <54324976+ddylewsky@users.noreply.github.com> Date: Mon, 27 Apr 2020 13:29:27 -0400 Subject: [PATCH] [Keymap] Vitamins_included keymap vitavim (#8864) * Add new keymap to vitamins_included, this has four layers. Updated config file to sync rgb between the two halves. * Cleaned up and added documentation for the keymap * Updated the keymaps and documentation. * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/config.h * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c * Update keyboards/vitamins_included/keymaps/vitavim/keymap.c --- .../keymaps/vitavim/config.h | 42 +++++++ .../keymaps/vitavim/keymap.c | 106 ++++++++++++++++++ 2 files changed, 148 insertions(+) create mode 100644 keyboards/vitamins_included/keymaps/vitavim/config.h create mode 100644 keyboards/vitamins_included/keymaps/vitavim/keymap.c diff --git a/keyboards/vitamins_included/keymaps/vitavim/config.h b/keyboards/vitamins_included/keymaps/vitavim/config.h new file mode 100644 index 000000000..95dd8ec46 --- /dev/null +++ b/keyboards/vitamins_included/keymaps/vitavim/config.h @@ -0,0 +1,42 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +/* Use I2C or Serial. Default is Serial */ +// #define USE_I2C + +/* Select hand configuration */ +// Defaults: +// Rev1: EE_HANDS +// Rev2: SPLIT_HAND_PIN B4 + +// You can override the defaults (rev1 doesn't support SPLIT_HAND_PIN) +//#define EE_HANDS +//#define MASTER_LEFT +//#define MASTER_RIGHT + + +#ifdef AUDIO_ENABLE + #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ + SONG(DVORAK_SOUND), \ + SONG(COLEMAK_SOUND) \ + } +#endif diff --git a/keyboards/vitamins_included/keymaps/vitavim/keymap.c b/keyboards/vitamins_included/keymaps/vitavim/keymap.c new file mode 100644 index 000000000..e90f0e076 --- /dev/null +++ b/keyboards/vitamins_included/keymaps/vitavim/keymap.c @@ -0,0 +1,106 @@ +#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 layers { + _ALPHAS, + _MODS, + _VIM, + _NUMPAD, + _CODE, +}; +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Alphas + * ,--------------------------------------------------------------------------------------------. + * | Tab | q | w | e | r | t | y | u | i | o | p | ins | + * |--------+------+-----+------+---------+------+------+-------+------+------+--------+--------| + * |ctl(esc)| a | s | d | f | g | h | j | k | l |LT(2,;:)|sft(ent)| + * |--------+------+-----+------+---------+------|------+-------+------+------+--------+--------| + * |LSPO | z | x | c | v | b | n | m | ,< | .> | up | RSPC | + * |--------+------+-----+------+---------+------+------+-------+------+------+--------+--------| + * | ctl | GUI | alt |MO(1) |lt(3,del)|Space |Space |bckspc |MO(4) | left | down | right | + * `--------------------------------------------------------------------------------------------' + */ +[_ALPHAS] = LAYOUT_ortho_4x12( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_INS, + LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(2,KC_SCLN), RSFT_T(KC_ENT), + KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSPC, + KC_LCTL, KC_LGUI, KC_LALT, MO(1), LT(3,KC_DEL), KC_SPC, KC_SPC, KC_BSPC, MO(4), KC_LEFT, KC_DOWN, KC_RGHT +), + +/* MODS + * ,-----------------------------------------------------------------------------------. + * | `~ | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 |PrtSc | + * |-------+------+------+------+------+-------------+------+------+------+------+------| + * |Meh(F7)| ! | * | # | $ | % | ^ | & | * | '" | " | \| | + * |-------+------+------+------+------+------|------+------+------+------+------+------| + * | LS/( | z | x | [{ | ] | b | -_ | =+ | /? | \| | PgUp | RS/) | + * |-------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | | | | | spc | _ |bckspc| | Home |PgDwn | End | + * `------------------------------------------------------------------------------------' + */ +[_MODS] = LAYOUT_ortho_4x12( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR, + MEH(KC_F7), KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_QUOT, KC_DQUO, KC_BSLS, + LSFT_T(KC_LCBR), KC_Z, KC_X, KC_LBRC, KC_RBRC, KC_B, KC_MINS, KC_EQL, KC_SLSH, KC_BSLS, KC_PGUP, RSFT_T(KC_RCBR), + KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_UNDS, KC_BSPC, KC_NO, KC_HOME, KC_PGDN, KC_END +), + +/* VIM layer that adds vim navigation by holding the ; key. Includes keys like $,^ for end/beg of line and b,w,e,d,y. Also includes + * quick keys for excel like alt(=) for sum, ctl(+) & ctl(-) to add/remove columns/rows. + * ,--------------------------------------------------------------------------------------. + * | Tab | "' | b | w | e | d | y | Vol- | Vol+ | TO(0)| TG(2) |reset | + * |--------+------+-----+-----+--------+-----+------+------+------+------+--------+------| + * |Ctl(Esc)| Home |Home |Pg Up|Pg Down | End | Left | Down | Up |Right |LT(2,;:)|Enter | + * |--------+------+-----+-----+--------+-----|------+------+------+------+--------+------| + * | sft | ;: | q | ^ | $ | x |alt(=)|ctl(+)|ctl(-)| | | | + * |--------+------+-----+-----+--------+-----+------+------+------+------+--------+------| + * | Ctl | GUI | alt | sft |sft(ctl)| spc | del | bspc | | | | | + * `--------------------------------------------------------------------------------------' + */ +[_VIM] = LAYOUT_ortho_4x12( + KC_TAB, KC_QUOT, KC_B, KC_W, KC_E, KC_D, KC_Y, KC_VOLD, KC_VOLU, TO(0), TG(2), RESET, + LCTL_T(KC_ESC), KC_HOME, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, LT(2,KC_SCLN), KC_ENT, + KC_LSFT, KC_SCLN, KC_Q, KC_CIRC, KC_DLR, KC_X, RALT(KC_EQL), RCTL(KC_PLUS), RCTL(KC_PMNS), KC_NO, KC_NO, KC_TRNS, + KC_LCTL, KC_LGUI, KC_LALT, KC_LSFT, LSFT(KC_LCTL), KC_SPC, KC_DEL, KC_BSPC, KC_NO, KC_NO, KC_NO, KC_TRNS +), + +/* NUMPAD: Numpad with operators and other keys + * ,-------------------------------------------------------------------------------------. + * | [{ | ! | @ | # | $ | % | ( | 7 | 8 | 9 | ) | ]} | + * |------+------+------+------+------+-------------+------+------+------+------+--------| + * | { | / | * | - | + | | = | 4 | 5 | 6 | ;: | } | + * |------+------+------+------+------+------|------+------+------+------+------+--------| + * | sft( | | | | | | | 1 | 2 | 3 | |kc_sft()| + * |------+------+------+------+------+------+------+------+------+------+------+--------| + * | | | | | |Space |Space | 0 | | | | | + * `-------------------------------------------------------------------------------------' + */ +[_NUMPAD] = LAYOUT_ortho_4x12( + KC_LBRC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_LPRN, KC_7, KC_8, KC_9, KC_RPRN, KC_RBRC, + KC_LCBR, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_NO, KC_EQL, KC_4, KC_5, KC_6, KC_SCLN, KC_RCBR, + KC_LSPO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_1, KC_2, KC_3, KC_PEQL, KC_RSPC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_0, KC_NO, KC_NO, KC_NO, KC_NO +), + +/* CODE + * ,---------------------------------------------------------------------------. + * | ~` | F11 | F12 | 3 | 4 | 5 | 6 | : | - | > | 0 | Del | + * |----+-----+-----+----+-----+-------------+------+-----+------+------+------| + * | | / | * | { | [{ | ( | ) | ]} | } | '" | ]} | \| | + * |----+-----+-----+----+-----+-----|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | ~ | = | \ |RGBTOG|RGBHUI|RGBHUD| + * |----+-----+-----+----+-----+-----+------+------+------+------+------+------| + * | | | | | | | | | |RGBVAD|RBGVAI|RGBMOD| + * `---------------------------------------------------------------------------' + */ +[_CODE] = LAYOUT_ortho_4x12( + KC_GRV, KC_F11, KC_F12, KC_3, KC_4, KC_5, KC_6, KC_COLN, KC_MINS, KC_GT, KC_0, KC_DEL, + KC_TRNS, KC_PSLS, KC_PAST, KC_LCBR, KC_LBRC, KC_LPRN, KC_RPRN, KC_RBRC, KC_RCBR, KC_QUOT, KC_RBRC, KC_BSLS, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TILD, KC_EQL, KC_NUBS, RGB_TOG, RGB_HUI, RGB_HUD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, RGB_MOD +) + +};