From 552399df4cef88463ea8ac40822d776d0fb90e18 Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Mon, 8 Aug 2016 18:34:08 -0700 Subject: [PATCH 01/46] Adding my own keymaps to the following keyboards: Planck, Preonic, Atreus, Ergodox --- keyboards/atreus/keymaps/xyverz/keymap.c | 89 ++++ keyboards/ergodox/keymaps/xyverz/dvorak.png | Bin 0 -> 87314 bytes keyboards/ergodox/keymaps/xyverz/keymap.c | 184 +++++++++ keyboards/ergodox/keymaps/xyverz/old_keymap.c | 311 ++++++++++++++ keyboards/ergodox/keymaps/xyverz/readme.md | 10 + keyboards/planck/keymaps/xyverz/README.md | 2 + keyboards/planck/keymaps/xyverz/keymap.c | 379 ++++++++++++++++++ keyboards/planck/keymaps/xyverz/makefile.mk | 2 + keyboards/preonic/keymaps/xyverz/README.md | 49 +++ keyboards/preonic/keymaps/xyverz/keymap.c | 342 ++++++++++++++++ keyboards/preonic/keymaps/xyverz/makefile.mk | 1 + 11 files changed, 1369 insertions(+) create mode 100644 keyboards/atreus/keymaps/xyverz/keymap.c create mode 100644 keyboards/ergodox/keymaps/xyverz/dvorak.png create mode 100644 keyboards/ergodox/keymaps/xyverz/keymap.c create mode 100644 keyboards/ergodox/keymaps/xyverz/old_keymap.c create mode 100644 keyboards/ergodox/keymaps/xyverz/readme.md create mode 100644 keyboards/planck/keymaps/xyverz/README.md create mode 100644 keyboards/planck/keymaps/xyverz/keymap.c create mode 100644 keyboards/planck/keymaps/xyverz/makefile.mk create mode 100644 keyboards/preonic/keymaps/xyverz/README.md create mode 100644 keyboards/preonic/keymaps/xyverz/keymap.c create mode 100644 keyboards/preonic/keymaps/xyverz/makefile.mk diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..447fbcf10f --- /dev/null +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -0,0 +1,89 @@ +// This is the personal keymap of Ian Sterling (@xyverz). It is based on the keymap by +// Chris Gerber (@gerbercj), with the addition of persistent layers like the Planck and +// Preonic keyboards by Jack Humbert. + +#include "atreus.h" +#include "action_layer.h" +#include "eeconfig.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 _DV 0 +#define _QW 1 +#define _CM 2 +#define _L1 3 +#define _L2 4 + +// Macro name shortcuts +#define DVORAK M(_DV) +#define QWERTY M(_QW) +#define COLEMAK M(_CM) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_DV] = { /* Dvorak */ + {KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_NO, KC_F, KC_G, KC_C, KC_R, KC_L }, + {KC_A, KC_O, KC_E, KC_U, KC_I, KC_NO, KC_D, KC_H, KC_T, KC_N, KC_S }, + {SFT_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, CTL_T(KC_DEL), KC_B, KC_M, KC_W, KC_V, SFT_T(KC_Z) }, + {KC_ESC, KC_TAB, KC_LGUI, MO(_L2), KC_BSPC, ALT_T(KC_ENT), KC_SPC, MO(_L1), KC_MINS, KC_SLSH, KC_EQL} + }, + [_QW] = { /* Qwerty */ + {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NO, KC_Y, KC_U, KC_I, KC_O, KC_P }, + {KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN}, + {SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, CTL_T(KC_DEL), KC_N, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH) }, + {KC_ESC, KC_TAB, KC_LGUI, MO(_L2), KC_BSPC, ALT_T(KC_ENT), KC_SPC, MO(_L1), KC_MINS, KC_QUOT, KC_ENT} + }, + [_CM] = { /* Colemak */ + {KC_Q, KC_W, KC_F, KC_P, KC_G, KC_NO, KC_J, KC_L, KC_U, KC_Y, KC_SCLN}, + {KC_A, KC_R, KC_S, KC_T, KC_D, KC_NO, KC_H, KC_N, KC_E, KC_I, KC_O }, + {SFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, CTL_T(KC_DEL), KC_K, KC_M, KC_COMM, KC_DOT, SFT_T(KC_SLSH) }, + {KC_ESC, KC_TAB, KC_LGUI, MO(_L2), KC_BSPC, ALT_T(KC_ENT), KC_SPC, MO(_L1), KC_MINS, KC_QUOT, KC_ENT} + }, + [_L1] = { /* LAYER 1 */ + {KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0 }, + {KC_TAB, KC_INS, KC_UP, KC_DEL, KC_HOME, KC_NO, KC_PGUP, KC_MUTE, KC_VOLD, KC_VOLU, KC_EQL }, + {KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_LCTL, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, KC_BSLS}, + {KC_TRNS, KC_GRV, KC_LGUI, KC_TRNS, KC_DEL, KC_LALT, KC_SPC, KC_TRNS, KC_LBRC, KC_RBRC, KC_ENT } + }, + [_L2] = { /* LAYER 2 */ + {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, + {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 }, + {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_F11, KC_F12 }, + {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS, RESET } + } +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboards/ergodox/keymaps/xyverz/dvorak.png b/keyboards/ergodox/keymaps/xyverz/dvorak.png new file mode 100644 index 0000000000000000000000000000000000000000..cb8316309592e3e8098b198b0db14916741a5d75 GIT binary patch literal 87314 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

@H>k@RvK-?1FwxvLtU}> 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

&*o!rsa0H*YyXk_nSzTx>y2Q5oQ-RE7mRnBzrV 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 literal 0 HcmV?d00001 diff --git a/keyboards/ergodox/keymaps/xyverz/keymap.c b/keyboards/ergodox/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..dd39dbacb2 --- /dev/null +++ b/keyboards/ergodox/keymaps/xyverz/keymap.c @@ -0,0 +1,184 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ] | 1 | 2 | 3 | 4 | 5 | ESC | | ESC | 6 | 7 | 8 | 9 | 0 | \ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | ' | , | . | P | Y | L1 | | L1 | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | O | E | U | I |------| |------| D | H | T | N |S / L2| - | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_RBRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_DELT, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, TG(1), + KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, + TG(1), KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, + KC_D, KC_H, KC_T, KC_N, LT(MDIA, KC_S), KC_MINS, + MEH_T(KC_NO),KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT, + KC_UP, KC_DOWN,KC_SLSH,KC_EQL, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + 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, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/xyverz/old_keymap.c b/keyboards/ergodox/keymaps/xyverz/old_keymap.c new file mode 100644 index 0000000000..e082372f9b --- /dev/null +++ b/keyboards/ergodox/keymaps/xyverz/old_keymap.c @@ -0,0 +1,311 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" + +extern keymap_config_t keymap_config; + +#define _DVORAK 0 // default layer +#define _QWERTY 1 // symbols +#define _LOWER 2 +#define _RAISE 3 +#define _ADJUST 16 + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + * Keymap 0: Dvorak + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ] | 1 | 2 | 3 | 4 | 5 | Esc | | ESC | 6 | 7 | 8 | 9 | 0 | [ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | ' | , | . | Y | Y |(Null)| |(Null)| F | G | C | R | L | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | CapsLk | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| FN1 | | FN2 |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | X | | | | B | M | W | V | Z | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGUI | ` | INS | Left | Rght | | Up | Dn | / | = | RGUI | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtr | LAlt | | Ralt | RCtr | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * | BkSp | Del |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + * + * + ***************************************************************************************************** + * This Dvorak keyboard layout stems from my early Kinesis years, using the Contour PS/2 with a Dvorak + * software layout. Because of this, the RBRC and LBRC were on opposite sides of the board in the cor- + * ner keys. I've decided to continue using this layout with my ErgoDox. + */ + + [_DVORAK] = ( + KC_RBRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, XXXXXXX, + KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, LOWER, + KC_LGUI, KC_GRV, KC_INS, KC_LEFT, KC_RGHT, + KC_LCTL, KC_LALT, + KC_HOME, + KC_BSPC, KC_DEL, KC_END, + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, + NO, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + RAISE, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, + KC_UP, KC_DOWN, KC_SLSH, KC_EQL, KC_RGUI, + KC_RALT, KC_RCTL, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC +), + +/* Keymap 1: QWERTY + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2|' / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +[_QWERTY] = ( + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NO, + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, LOWER, + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + {ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_NO, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + RAISE, KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT +), + + +/* Lower 2: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[_LOWER] = ( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Raise 3: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[_RAISE] = ( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + 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, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), + +/* Adjust 16: Lower + Raise + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | Reset| | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| |Dvorak|Qwerty| | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[_ADJUST] = ( + KC_TRNS, RESET, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + 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, KC_TRNS, + KC_TRNS, QWERTY, DVORAK, 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, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DVORAK: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DVORAK); + } + break; + case _QWERTY: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QWERTY); + } + 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); + } + 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); + } + break; + + } + return MACRO_NONE; +}; + + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox/keymaps/xyverz/readme.md b/keyboards/ergodox/keymaps/xyverz/readme.md new file mode 100644 index 0000000000..8f6dba45e9 --- /dev/null +++ b/keyboards/ergodox/keymaps/xyverz/readme.md @@ -0,0 +1,10 @@ +# ErgoDox EZ Default Configuration + +## Changelog + +* Feb 2, 2016 (V1.1): + * Made the right-hand quote key double as Cmd/Win on hold. So you get ' when you tap it, " when you tap it with Shift, and Cmd or Win when you hold it. You can then use it as a modifier, or just press and hold it for a moment (and then let go) to send a single Cmd or Win keystroke (handy for opening the Start menu on Windows). + +This is what we ship with out of the factory. :) The image says it all: + +![Default](default_highres.png) diff --git a/keyboards/planck/keymaps/xyverz/README.md b/keyboards/planck/keymaps/xyverz/README.md new file mode 100644 index 0000000000..b0054fc305 --- /dev/null +++ b/keyboards/planck/keymaps/xyverz/README.md @@ -0,0 +1,2 @@ +# Zrevyx's Planck Layout + diff --git a/keyboards/planck/keymaps/xyverz/keymap.c b/keyboards/planck/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..9ac78ec15d --- /dev/null +++ b/keyboards/planck/keymaps/xyverz/keymap.c @@ -0,0 +1,379 @@ +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, +// this is the style you want to emulate. + +#include "planck.h" +#include "action_layer.h" +#ifdef AUDIO_ENABLE + #include "audio.h" +#endif +#include "eeconfig.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 _QWERTY 0 +#define _COLEMAK 1 +#define _DVORAK 2 +#define _LOWER 3 +#define _RAISE 4 +#define _MUSIC 5 +#define _PLOVER 6 +#define _ADJUST 16 + +// Macro name shortcuts +#define QWERTY M(_QWERTY) +#define COLEMAK M(_COLEMAK) +#define DVORAK M(_DVORAK) +#define LOWER M(_LOWER) +#define RAISE M(_RAISE) +#define M_BL 5 +#define AUD_OFF M(6) +#define AUD_ON M(7) +#define MUS_OFF M(8) +#define MUS_ON M(9) +#define VC_IN M(10) +#define VC_DE M(11) +#define PLOVER M(12) +#define EXT_PLV M(13) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | 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_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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = { + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, + {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | Tab | " | , | . | P | Y | F | G | C | R | L | / | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | O | E | U | I | D | H | T | N | S | - | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| ; | Q | J | K | X | B | M | W | V | Z | Shift| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Left |Right |Lower | Bksp |Space |Raise | Up | Down | GUI |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = { + {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH}, + {KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS}, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT}, + {KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT } +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | | Mute | Vol- | Vol+ | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| | Home | End | | Del | Ins | | PgUp | PgDN | |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = { + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______}, + {KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______}, + {M(M_BL), _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | | Prev | Play | Next | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| | Home | End | | Del | Ins | | PgUp | PgDN | |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______}, + {KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______}, + {M(M_BL), _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} +}, + +/* Music (reserved for process_action_user) + * + */ +[_MUSIC] = { + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LOWER, XXXXXXX, XXXXXXX, RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX} +}, + +/* Plover layer (http://opensteno.org) + * ,-----------------------------------------------------------------------------------. + * | # | # | # | # | # | # | # | # | # | # | # | # | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | S | T | P | H | * | * | F | P | L | T | D | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | S | K | W | R | * | * | R | B | G | S | Z | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Exit | | | A | O | | E | U | | | | + * `-----------------------------------------------------------------------------------' + */ + +[_PLOVER] = { + {KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 }, + {XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC}, + {XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {EXT_PLV, XXXXXXX, XXXXXXX, KC_C, KC_V, XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX} +}, + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|Musoff| | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = { + {_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL}, + {_______, _______, _______, AUD_ON, AUD_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______}, + {_______, VC_DE, VC_IN, MUS_ON, MUS_OFF, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +} + + +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +#ifdef AUDIO_ENABLE +float tone_startup[][2] = { + {440.0*pow(2.0,(31)/12.0), 12}, + {440.0*pow(2.0,(28)/12.0), 8}, + {440.0*pow(2.0,(19)/12.0), 8}, + {440.0*pow(2.0,(24)/12.0), 8}, + {440.0*pow(2.0,(28)/12.0), 20} +}; + +float tone_qwerty[][2] = SONG(QWERTY_SOUND); +float tone_dvorak[][2] = SONG(DVORAK_SOUND); +float tone_colemak[][2] = SONG(COLEMAK_SOUND); +float tone_plover[][2] = SONG(PLOVER_SOUND); +float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND); + +float music_scale[][2] = SONG(MUSIC_SCALE_SOUND); +float goodbye[][2] = SONG(GOODBYE_SOUND); +#endif + + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _QWERTY: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_qwerty, false, 0); + #endif + persistant_default_layer_set(1UL<<_QWERTY); + } + break; + case _COLEMAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_colemak, false, 0); + #endif + persistant_default_layer_set(1UL<<_COLEMAK); + } + break; + case _DVORAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_dvorak, false, 0); + #endif + persistant_default_layer_set(1UL<<_DVORAK); + } + 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); + } + 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); + } + break; + case M_BL: + if (record->event.pressed) { + register_code(KC_RSFT); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + } else { + unregister_code(KC_RSFT); + } + break; + case 6: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + audio_off(); + #endif + } + break; + case 7: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + audio_on(); + PLAY_NOTE_ARRAY(tone_startup, false, 0); + #endif + } + break; + case 8: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + layer_off(_MUSIC); + stop_all_notes(); + #endif + } + break; + case 9: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(music_scale, false, 0); + layer_on(_MUSIC); + #endif + } + break; + case 10: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + voice_iterate(); + PLAY_NOTE_ARRAY(music_scale, false, 0); + #endif + } + break; + case 11: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + voice_deiterate(); + PLAY_NOTE_ARRAY(music_scale, false, 0); + #endif + } + break; + case 12: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_plover, false, 0); + #endif + layer_off(_RAISE); + layer_off(_LOWER); + layer_off(_ADJUST); + layer_off(_MUSIC); + stop_all_notes(); + layer_on(_PLOVER); + if (!eeconfig_is_enabled()) { + eeconfig_init(); + } + keymap_config.raw = eeconfig_read_keymap(); + keymap_config.nkro = 1; + eeconfig_update_keymap(keymap_config.raw); + } + break; + case 13: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_plover_gb, false, 0); + #endif + layer_off(_PLOVER); + } + break; + + } + return MACRO_NONE; +}; + +void matrix_init_user(void) { + #ifdef AUDIO_ENABLE + _delay_ms(20); // stops the tick + PLAY_NOTE_ARRAY(tone_startup, false, 0); + #endif +} + +#ifdef AUDIO_ENABLE +void play_goodbye_tone() +{ + PLAY_NOTE_ARRAY(goodbye, false, 0); + _delay_ms(150); +} + +uint8_t starting_note = 0x0C; +int offset = 7; + +void process_action_user(keyrecord_t *record) { + + if (IS_LAYER_ON(_MUSIC)) { + if (record->event.pressed) { + play_note(((double)220.0)*pow(2.0, -4.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row)), 0xF); + } else { + stop_note(((double)220.0)*pow(2.0, -4.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row))); + } + } + +} +#endif diff --git a/keyboards/planck/keymaps/xyverz/makefile.mk b/keyboards/planck/keymaps/xyverz/makefile.mk new file mode 100644 index 0000000000..99fbfbd0bb --- /dev/null +++ b/keyboards/planck/keymaps/xyverz/makefile.mk @@ -0,0 +1,2 @@ +AUDIO_ENABLE = yes +NKRO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/preonic/keymaps/xyverz/README.md b/keyboards/preonic/keymaps/xyverz/README.md new file mode 100644 index 0000000000..9c23c5b9f3 --- /dev/null +++ b/keyboards/preonic/keymaps/xyverz/README.md @@ -0,0 +1,49 @@ +# The default Preonic layout - largely based on the Planck's + +## QWERTY Layer: + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | - | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / | Shift| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Left |Right |Lower | Space |Raise | Up | Down | GUI |Enter | + * `-----------------------------------------------------------------------------------' + */ + +## LOWER Layer: + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | | Mute | Vol- | Vol+ | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| | Home | End | | Ins | | PgUp | PgDN | |Enter | + * `-----------------------------------------------------------------------------------' + */ + +## RAISE Layer: + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | | Prev | Play | Next | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| | Home | End | | Ins | | PgUp | PgDN | |Enter | + * `-----------------------------------------------------------------------------------' + */ \ No newline at end of file diff --git a/keyboards/preonic/keymaps/xyverz/keymap.c b/keyboards/preonic/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..adc7392e5c --- /dev/null +++ b/keyboards/preonic/keymaps/xyverz/keymap.c @@ -0,0 +1,342 @@ +#include "preonic.h" +#include "action_layer.h" +#include "eeconfig.h" +#ifdef AUDIO_ENABLE + #include "audio.h" +#endif + +// 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 _QWERTY 0 +#define _COLEMAK 1 +#define _DVORAK 2 +#define _LOWER 3 +#define _RAISE 4 +#define _MUSIC 5 +#define _ADJUST 16 + +// Macro name shortcuts +#define QWERTY M(_QWERTY) +#define COLEMAK M(_COLEMAK) +#define DVORAK M(_DVORAK) +#define LOWER M(_LOWER) +#define RAISE M(_RAISE) +#define M_BL 5 +#define AUD_OFF M(6) +#define AUD_ON M(7) +#define MUS_OFF M(8) +#define MUS_ON M(9) +#define VC_IN M(10) +#define VC_DE M(11) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | - | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / | Shift| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Left |Right |Lower | Space |Raise | Up | Down | GUI |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = { + {KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 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_DEL}, + {KC_MINS, 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, KC_RSFT}, + {KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_SPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT } +}, + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL}, + {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | " | , | . | P | Y | F | G | C | R | L | / | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | O | E | U | I | D | H | T | N | S | - | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| ; | Q | J | K | X | B | M | W | V | Z | Shift| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Left |Right |Lower | Space |Raise | Up | Down | GUI |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = { + {KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH}, + {KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS}, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT}, + {KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_SPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT } +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | | Mute | Vol- | Vol+ | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| | Home | End | | Ins | | PgUp | PgDN | |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL}, + {KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______}, + {M(M_BL), _______, KC_HOME, KC_END, _______, KC_INS, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | | Prev | Play | Next | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| | Home | End | | Ins | | PgUp | PgDN | |Enter | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL}, + {KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______}, + {M(M_BL), _______, KC_HOME, KC_END, _______, KC_INS, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} +}, + +/* Music (reserved for process_action_user) + * + */ +[_MUSIC] = { + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, + {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LOWER, XXXXXXX, XXXXXXX, RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX} +}, + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Audoff|Aud on|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |Voice-|Voice+|Musoff|Mus on| | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = { + {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}, + {_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL}, + {_______, _______, _______, AUD_ON, AUD_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______}, + {_______, VC_DE, VC_IN, MUS_ON, MUS_OFF, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +} + + +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +#ifdef AUDIO_ENABLE +float start_up[][2] = { + {440.0*pow(2.0,(14)/12.0), 20}, + {440.0*pow(2.0,(26)/12.0), 8}, + {440.0*pow(2.0,(18)/12.0), 20}, + {440.0*pow(2.0,(26)/12.0), 8} +}; + +float tone_qwerty[][2] = SONG(QWERTY_SOUND); +float tone_dvorak[][2] = SONG(DVORAK_SOUND); +float tone_colemak[][2] = SONG(COLEMAK_SOUND); + +float music_scale[][2] = SONG(MUSIC_SCALE_SOUND); +float goodbye[][2] = SONG(GOODBYE_SOUND); +#endif + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _QWERTY: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_qwerty, false, 0); + #endif + persistant_default_layer_set(1UL<<_QWERTY); + } + break; + case _COLEMAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_colemak, false, 0); + #endif + persistant_default_layer_set(1UL<<_COLEMAK); + } + break; + case _DVORAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_dvorak, false, 0); + #endif + persistant_default_layer_set(1UL<<_DVORAK); + } + 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); + } + 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); + } + break; + case M_BL: + if (record->event.pressed) { + register_code(KC_RSFT); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + } else { + unregister_code(KC_RSFT); + } + break; + case 6: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + audio_off(); + #endif + } + break; + case 7: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + audio_on(); + PLAY_NOTE_ARRAY(start_up, false, 0); + #endif + } + break; + case 8: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + layer_off(_MUSIC); + stop_all_notes(); + #endif + } + break; + case 9: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(music_scale, false, 0); + layer_on(_MUSIC); + #endif + } + break; + case 10: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + voice_iterate(); + PLAY_NOTE_ARRAY(music_scale, false, 0); + #endif + } + break; + case 11: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + voice_deiterate(); + PLAY_NOTE_ARRAY(music_scale, false, 0); + #endif + } + break; + } + return MACRO_NONE; +}; + + +void matrix_init_user(void) { + #ifdef AUDIO_ENABLE + _delay_ms(20); // gets rid of tick + PLAY_NOTE_ARRAY(start_up, false, 0); + #endif +} + +#ifdef AUDIO_ENABLE + +uint8_t starting_note = 0x0C; +int offset = 7; + +void process_action_user(keyrecord_t *record) { + + if (IS_LAYER_ON(_MUSIC)) { + if (record->event.pressed) { + play_note(((double)220.0)*pow(2.0, -4.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row)), 0xF); + } else { + stop_note(((double)220.0)*pow(2.0, -4.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row))); + } + } + +} + +void play_goodbye_tone() +{ + PLAY_NOTE_ARRAY(goodbye, false, 0); + _delay_ms(150); +} + +#endif \ No newline at end of file diff --git a/keyboards/preonic/keymaps/xyverz/makefile.mk b/keyboards/preonic/keymaps/xyverz/makefile.mk new file mode 100644 index 0000000000..628167ff66 --- /dev/null +++ b/keyboards/preonic/keymaps/xyverz/makefile.mk @@ -0,0 +1 @@ +AUDIO_ENABLE = yes \ No newline at end of file From de1db144d06b488937633110b0598a1cac68f4fc Mon Sep 17 00:00:00 2001 From: Xyverz Date: Mon, 8 Aug 2016 18:44:09 -0700 Subject: [PATCH 02/46] Delete dvorak.png Not reflective of my layout. --- keyboards/ergodox/keymaps/xyverz/dvorak.png | Bin 87314 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/xyverz/dvorak.png diff --git a/keyboards/ergodox/keymaps/xyverz/dvorak.png b/keyboards/ergodox/keymaps/xyverz/dvorak.png deleted file mode 100644 index cb8316309592e3e8098b198b0db14916741a5d75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87314 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

@H>k@RvK-?1FwxvLtU}> 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

&*o!rsa0H*YyXk_nSzTx>y2Q5oQ-RE7mRnBzrV zq-uYo=BkZ5+f0bMi%=*C{31XobZI3-#lo`5bMY5wizwASeraB@0n7x^SsC^=FJ&|#Y|6#fUZ@h#tI{p7 z0#GMO&ddZTY)7;xyJ8-@nyZXCLlly2#iE=%c!(l1~FG!XbV z$d*CpA%^k_GSofKoZaf26*5EcCVKH6C<3oU0)Bh6d7Y5+^-T#S>Dzbq4hSPDa+BajqE|(|sn$#kCu2u{v(nh+)wzl4&6?&>g`iVC~|t@Xm=^>bf{Cv^@vmY=lTZ&dHD;6dfz&8=N#pu6;5I%g!?CbXyvKmrKl8Tx z4>1rC9?5EZDy>?(E2-C_2Lde4qcXEr+l**E#P!q3R1*8(Zk~qdWMQL%Ny|#%Xc^H$ z%6lMsoEQ--8Xru>Z?wOIlY(BTla9?5s3SYpdpmu}&##ffGART_kj5E2pjlBx@x;As z2$oUyIX=}PDxsrgt9I5dg!cdR@~()H0GXlLhVHjqU`=7?QL!kY_dolCG&YsR6{`C_ z2qeyAA*gRg6b*f58k=%8x5cR4>s|H-c>@}!E`kdp#Xj5W;ou-g(psHTF=p>s+NDK4 zb7M2<5dH(C`;1Y1H0kski^X^#TDd#l))ydna0f>dnHNlE35;@lZ+(W0rLJHROi}PT zsmOa2h)`vKqJ@&VfpMW#)Tqk)G2rrHt`H;oDUOSsZ}j@+igtlM6TqPG#&U`bUH~l3 zVBpV#QfPqf`wn*_7<#gj&&B?oRUv^S8Z@=s!76t; zq*>HZ`0W3BvVhOZZmH?JH$PP{{`e&mIJV*vKYQ^6J6(GD%Guc3o$n&WOL(V_sRhV4 zB#5CTG-$;-&imjn@SvVyhP9Q}40x}wFXym9`=ib~r#}Htih(f&X)|K8Aj zpBfv1j3!);y}7r+a~!j=@I3x)q-)ssz@XTcuR9~p<9-2?v-<2nA4+(H`IXX|Gg~27 z4=N5MPBDMkste1TQTxYf9zZS%;tL(WVoA1TPvSr;wbVZe-Qv|guo@F5e?MX z<|2@8WU6d_yEjMp{9(6LZgEJ$y*_7yL2UI4OeAlROtvXR-FBh~-ue_70DF+8UB!5H zx{eo>^GDC>!DPYD2zPLPNFZLFnuGPjy>U9OH;Fzn%*k*j;QYi1(mbT-YlnQjSUeLO z#>ygm5%(C8GV(dq6REI)H5IfWX>)BvW8bH=>iebud=xzSFg5>*0%GPlIHFw!xLW;l zN%p(>Nt>E^g#ms~Nur=~8L8Qjynk>$PT^7Tma8pr7lTnbE9Jj2KQJ^mR7jXwKQ(4~ z6&!MPW`H$s&^4$831g1H*$CHE!=j3q>BJPVFvS^|3Xm4{Wck7g_&mXAwtg0Dx_*^q zPV%dwU2?>&+X}5sT>b*8uz4 zyu-m82Td{b^fo*awjt%Zn=tF>McVw;mkcpO>-q|CCR3SwHhN^LE!GZp|HcMl7XQWu zSAS1BF_(0;b8osG9p%M@E&9LVnaYa0sEgAXSXi(`ZDy1}?7?(VtVP91Xwh_8fqdMu z&-%au1l+8z2&WsrRp=7hu*<6BfKYI#r@nmYe_f;cr)Dy1Vb=QZg5=Z9Q*PcnV-k{) z23&_Vhm$|YzdE}%9@gC_jX5u$-oCe}e(3(SgrDU?zl26oPdH;6Bzyf!Y~%jJc!tl- zvdy^U!||*a>8^<-GIUP9!~+0ZYwP(>iTC}U!?i^c=K};fMroJmg0xv_?D|PDJ!YM} zg83C_R+5&{a3lsiTHn2}{jeGA-|vQLBahwCbr%p{cNwd35h5x3|I*{pGz`FY#%Y97 z0t_oa$~2ZUdmIHQN^&P4f;QIgCh+g6_g>bQ z=4Bf&i0ADFYHGpVHdn@w%1j>-;W)* z!yI&F7z`A@kZJfmc(6B@FKH9_jN|VowJb?pW2YO@GuY*re!f6{;I(Ik*xhfG+w5^% zPF@shzk$b}8U3$nRG6|t2jc|9{+`HP&bmit@-0*f{q^qmyBtu;Z)Q-uZJ4-Gtyhc# zEp!1taP~X=lgt4Y(vddP>iHLD_SoDwL=UI!HM%5))8R8)wJ`)5q3S^h#wk6(CGo43 z5t+UTHegFg$qivKCc_ikO?ex{);)#3<;wG|BK^mRBxz5as&SPGT1dC)THSn_M;Hne z!ZsoZ*(t|v#^dVT%W|k>v1uukf+PAH@zYuUM+?B?8jl2}LLc$7wd}6dQe~o9Eb)&^ zO6Dgc&7mQ2bjS7D53s_OlW+$&Tdt)TzuDyV>+u12(KOit_S9o?&G)ns!!fkOJKf(p z%vE8v7mfTo&?7SGQJYp}>&aIS9u4jGKTTc+ylX#^Pmx#8k}P@`d<0=YKO(C_9x*f$ z$#IVeR+M38tx;#+wS{s>^15IBoW5xT^Gh0MTE7pJemv{CXeB>?3WI-qETn$5fpiU* z_$y)P*#$3_a5~=OV7}kH?G|ePtB(}0I}kgr@K;yJeJRzHCxLQpk@E6y!0coHHiB-sa8^zj zo%mP8Nlc4D9vMdLkDf@1iefM{+H}Y@;Ae>5yVNld@&|Il*66#N62zXzXx)h{n)eYa_`*Mow~ zPa){I#E9A7NxV>P>@XzHBu7j|1Qw#@SVGusyK$<1;G(Q1|e?7PXd1PBHy zERvi!7;>MKu$f(19{2Pk8xx}&2Ip1U?a?fT@?MdX7B{?R+`O<0f>xfND$>KhxgrQP z7|?F%rK@tHKX{79+k3}_!#jFG5w<5EIYYAu9dPl&* zV->WJ^P$Vicq8?v`r$%Mm3H^?aHA%Zym)jlHCoy-kO3RXL2DQ(7?K#15Ch6}ZnF4Fm=R45uF&cT}ZMpG8KB|-6gwPHOeys>=u0XmKZI^wNz zaHTV^ItAk4_JALzNOt_i4ptOr=13XO2$pY3JV$7x>rs<$N#bbSlil&dY?LO(DV*o z8uI(%b-d5fsWi*sV_iD>Fkg_a$RBt!XQR4vBh9CW6h~tmQB_eU8P|F zIUcU$T>;0&k4~*-YUQjhV&9iJyU)A3T?{XP3$Pq{*5tETushf8{gz8ZZ?7}9OYoPK zqRB|@Oj5JlZQ=1z)1eT>hB_V3lk}U67Y=$Y*H@XpUO0OF{i!hix9caU;eq;HR`-iT z+lF78wAQ;Nro2NNJd?-XD+ksmId3yfU*=m+tTv86UJt!+R{JwQh`kp+%AB#`xM3}M zrQ7}`+W$Gh$7AN}$wiWA4f+DURi+OE@K~hlclI;OU!~)!hZBym)+!IxjgS>-^ND!{SsvI&9jFRTf`&x%0 z&zV_~26ar9s)j||B2!IcYPU{5wgi=^&#Iio=CH?g^s2rRGwd1XH@$~@q?Jn=gX;;G zTrCwONej;E1l~XTv{#HNh%-PAj^h`$La;pWd<1KCoKj$+W^qW!yhw#Iy6$S~VH`}$ z=HN#JSuy#gzm3xvkrmpQ4N#5}$zhhw#xA|6PQ+!vrD+y9{QR*}k$Lwycpbuf@n!NH z+37=LNIB)`AOEy+%VtCglAUIPH(juB8)4VVA3AnjS1I%OJ6?zS>cq;SOEF$$`Vf4S z!No6cH;jTgc5rvKE8ls!eEaFrMsk(R&Ir-YBZ0&fd2r2`^|+5*9@4wf8tHA1wX5NN z?KE_dODZK(Td^<_!5(-^7_7x*%(DQY5FTG*vErngt=1o0x8HEAqCA=p8Mq7Veroc) zNCBeb4d3$RzPK-wP6HCcL1vD-;cFuRqS2~Rfdoe=AVp$?DCL(brZB>KL3XP-4e$T> zQRu45)gP_7dzrOrj)GON-lAw{)I_Gn`Mz8>=WA~)~t_*8;?f8W4{(f7%+6Hf7=Q1+v)2lhq{ce&7Cj zyU0)scJG;B@S{+|28F&P-cWr6MqzIoj$#&wl@7Je_7UoqgXZ)U&Xpp(=q%qyW?gn+ zEyqAEYTj&xXrynS>O9HVGXXmPvmF02E&Y(uULaDCv_M5fhCc&;1T zgPh&sCcs-b9AiH)`0ipe6t|httm`^vG`=P$!c&zsla0h-psq|!y1*7}AhN)gJ+O4M z^s(7;r{HoZt84Mjv*}_iT`^AlbNGbaLimY&Y=H8`QuB0H;(#K#u0$mVrk-_M7<4!e zo>TI?J?`-w^&*N75MfRol20wkDHsvGQ_p`Bxc5QZS32p8dKdecPCiu&IxG}|7Ns)p zEtsPEy~m0O(U)+>e3OMBQ(_&4>R9U6vPpU!>v4@7Q_?#c5k}*6pxZwnSZvYZjtFz< zvYEbcOs8&`XzfsObKV#=2wtfk__$5OTn$-xzAJ2o?|dAiB|W@x?QHpnyZQ4mO(Ug0 z8SC|__v)WaW?B1>yhhOH3=fgl*@R2=VzJqyfc03V3vN0VZ1P=|c3QLgCIr-muWwD~UtW_3f+NBq*%$Dd09QGsu&Wo9mN5Ru<)L|7OtHz;14>#18Zt=He!St3uEi{6%|lY>-YPf`jpjK1 zOfpvGZDb3KJEk7a5E?2UG{+JzNqZw-i=?!pxwm}I0QV@n`P`N4w28?il6K!W-m5FR zGpOv>H40%770CCcg@?!%{m`p--IfncMs-MZO8}xfm-3~o;U@4mEgM3vmw39O9)n~y zOPj5DnoZv#f?xJ=Hm{4a%T>P33rI&MkTVmFhcw0*q3PbOBW$Ahl2iM|e+VK^@A3My z;5rc0$GpsyA2A8)DZKx^!=6LC=zmHUf7kVcEZiT~|KXzHGx4WL5PFCgt^td^bb$m6 zII}!1&Mh(f6%(ozurP(whmF72HRD$s9sA?N1ks7+%|*n5-6{89$2ZK0uCda&cGbN| zeiG2=ci}GocVvwCA5$1hVg*S-$5@(TIXWc4-bC$x5Y+sd(UYP_>=Zs&G?J@N6k@T4 z&5k_JC|%%d@}t$yOuw{47(vfM7{5Fy1wqh*RMEFG zQ!Hykl>-DU(YB?ug6^%;0fYbBgt0!CWO*~WTD?+5Iz}F-oGnHz4lP+4m+5-5bFFDf zSkOgmaoP@{hJ(s{@sp+|O0*7_LQe5h$sdv8J|GA9#NZ_z5$wB<5cdXnNVO*V`r9J` zJN*i}FS2W|*w;jHTN4+q(|&T!EF%@M_0QW$yxpW+LjzXt6VG+zZ?snG&L?CYp5eKy zZ*<5En-q<)RWlwGo>4#V%Vatc_Q-*LCIJD}@P3Q#)9&0bPoI3*?u+=!_^$&aSKzKk25tdDS>O&iZ1i6Xh0$1r9w(lLlK+pu(c&63X1Q z!(R_muHGs@Y8_swhvXskUXpa*eT^BT*q}^x(v9w6M&>?>EFg;2(A|eZ;S3q6hx|H4>}E_W?0^YRxph0I|D>wLK0+M-)WjwkIO zWPBDiFnso!f#Vn}-9AHR7D0+VyNpF;ZbZk!i&QF;jUU`0)(d{}KfW+O0%6F)TB!}5 zrGU*)V-Qq2*`^OGi&$lkP4-G{kQ62;{5K^fgnQ|vBps4Sr>LZ{#_z9j%4;g}@((5%}(i3(1jp0AE;A z-6><~Maqc|5DMHBY_fw5h$S!--h_E78Tn$n6V0K!rj?BslJDaUJL4VJKEW9p0 z`_d+5=)pSj1*sODIFBR2^_ z#BV|pJUy`QzDBfz#mbM@&m}k8j)xOD;3LBAhfTKrL9;al*^%vBQeaDrOxmk&3a?@1 za}eoZ{aQB*rW45)6)GS=X)^@E(pRZ(n5mOynGPLmc<*xHv!Cl-d1s>uAMzVGrT!SKN>w%Rj?=F{0QlXoZUUesPkE^%jj0zv@$grsKbnvcpNLH9~ZWWSK3Fh^R3>qCvCKBDQu6kqI%h6M42(WR}pa;PTnHRS)P zWKAkW;Yi5@W2h)J)k z!Ieqwpv;@HQHjS`BiwiD3YJNOli!wL!KgqK%coiJm@R3KO0%qX3wZR&+@N zM~FSJVQG?Sts*Y}qeaNz7~o{g#))eV@5x+rYx?|j5vO${vyAV+UOmQtmHTK(s;NEaG)#D|i(FtwASwn3NfhHc4PvFT;jRBR zMcQhR<{a6Pm%Pg`MsQJm0dV{m{d{-Fqfs`&C0U)aX^Y5Dmj=6XFiH@?{(1hQ|5rlj3OHOt@jF>(tdd0 zX?+OP$72O!;y%(Fuc$(p0u>nM4V*8F*>nb0B_uQ$g+F@I<)?fvnWr!J!m3~S0DCCuQik0Lm1$u*cVO1>W86}I=bv#6TVk9K-gLT&l~K`bpM`TL40 zb3UFsxv@z9rNLT%#gSH&?x^mk>zePeU$$EAL^{;nPvlM9aUt)Uc z)3Q&9>{Dht1=liP&w)pe7HhuH406hZS}a*H2ef`pD~^SuA-6yLFpGXj?v+w*pHy!9 z{FLgM+j8aUrHM{Fodq+aQ>5Kghzxcl4I^ZwAQy5rs;oJw*aO9-5z>YcEcDCzX%p1{4slFUPgmW#M{d|0 z{sg&{8l((k`5P}NuS1f-V8fzcE%^Jp;-3n%e}(t1wBM_hh&x|O< zIiR~X%T=mph9K(9bv0)D;v`C7TfA&i8Wx50i`Ha4g)EGMrjGxMOct>Sv!r4tzt{+Z zOwS*m{l!@iO4@J+&<`@Y+-Jxq|M`KdZnngXgQ#c5J+ z3>;@ENpvG|q@)g@oKXLu7GqP*2UpHsx73%|irB~O0nQwDzmW>zI$*K=x!J`KtQbuE zl4XdFY7bIOnEkk?e+b@Z7;z&?Vy=+HE#8^eHFau|g`NUUKt%u= z%ef4H>Pu2DEmqy&xt-s(+h=1*ujGRI9viZA(px|(5UYjwNjIS!Djl?&w$lIL0QFIm zvIyx$`9SUeIZPDKUR07La@nO5@uuNxKbFwj-Sq9MFYET+SIz)M^6*iIN|%1KN)i%W z1U37TP9lVHuE9D6?$i$@o=MTDi7fEkr9}{Ne$6+2kpsVTkr)2}iyy=C`U}`(*##y- zA4Pko#FxojS;qjJKr(RP-(6e#`ed=j)OhB)BKNzn%Fr_!|0y&s%KrA1Td_!Z5|#cj z?mudA-(qVZx^+z-)(8n%`o=Y@(U*#&kw!T2=yLEo-Ws^Zi%Mw~m0Di+BO@NJszOHj zo1$;aNF1C2nS_qak8z=mMl#i(^v*_QuTQxNp62+n`i74UYK*fLwZ`k-4P)T(s_Fzi*Dta{H0?t?VizuXzro_kkB%@%ok0??mc(dI|f37_8y@<${4 z)OtMf(td3sn=$H#_t$F8k~UU2%)1KA^y!#}!J8n6dpPXqyAv0my6|p_mZKoj4r(uN zG3qJUUp?Rd;+q!D1@LscE^YAo4tn)_~ zq6##P94zGmCQDOmfx4PswWd@tqzP~D#Rs#J4wMehs{<2mj} zKUL17QSqT-{fN=$Zv+!h2vsKs;Vh}tI(x-YGavnp(Po$+$};{{IF+oI`?gnJvSu@01wA(#uT{H& zc#P-^POI$mqz^b`JG0~kxZs-2XT6*CZ(#vTC7z5(QB8RPH_NSj&uBC5Wb8%7PV^i6 z{q?@4;v}MOdS%4+wJt20E9AJ1*P?Q}r+ylMmH#zL&{RL$A^T=1*>m}-l@wGCh+laC zHzpB+rzoC8{bl?>dl1#1Gb8=xV=HKd#QxM zJ?!so6T^82;DEETi7wXbQlTSWlUKp4B>t=IsJbB-PcPED869m|qcD-Rw`oblo45pA zVoL_Mgx@fFkxn{~tNU$XQ zbkT7f5tdZ-AjJP=yL1rmt^v@Ao^l}o;Fd*Ig=X5{DgobpVg3!S@Sn!dI z+bn2Jis42)JO*_m~l6ug$R)}VWe&GjeKr&__^NC+PH?-au#L}Hz!_Q z*`0}i!LY^Lqee(7Gt^Vc3g8AOc!^%&D-#1A(9S9^sm%B4+gotmPx5%81lX4Y+AwWf z#INVH1Rcx({SuMZ@T&Wob(7Iv^d1zk7Go9LH|qt6Cl3aauN;Yq@d zNmo$?tRm?o#N*=+0O7WzLILMhy3EiG+bzGQKKWZb5O7FfJZN;`H4GdU1ij+}fh(ih zXnzwodwaEKUt{bXP=vUF9pSX82O&ktp+p-Tn!G>$-T0v1=G_AU1I zP7b0hoHl5&CF~^qW?O)hH}~LT;Y}b!S}XTbV0Fvu;v>iiq~qn;N>g?ORYxdG77p@T z#ACQ5Pgr$oM##cQIaOfq!e$C}@G#>Vj2O+V-qT*sSgXt8X)9$!2IACxZ3ojOX>vuu zl?hkd8L>6wqLIM{!pRXL4BNmQt#flkBP3w+eFyzTT9+l&+r%L)<;V=40kxLIap?$f z?|TyoLI~`N1KMciY^!>ftVvYQ=l?5?Zs=#b4(0M#d$>2cfsz~~CQX9a*c1Xmrd4MG z-kcFx-9=)MbU_)^j5#-G_*1O9%J)H*sSwZmK`N6MxBMi5!w$n5k)OgLaREZ(*7d3*h2Foun>s}p>rwUGZL6l{7dJn^rb%ZayFk| z{n2UH!)Zh2>y%qWFrE;zRZReIryl*u?lK33+P}XYydVo_kaw7+z-dmyrYv({Ghu+8#ezEJit*aZ89Qkpvq{T;Ulw38e?6%v>DHL+0a&DIh3QkSmqDqo*E4q-Wh{szEpL%BgI>*;h!uxsO#LeL$xhu7cGQ&x;dP{@IOXgll+-b~_kJFq$Fe5cju0i{aJr@@%EymkDb{ zjlC@oE|_A5%&E+QV%Ecem4?Qf9&#H;jkJoYEV*zTWndOdE|CH(3F)n6hT@10r^Rjl z4*TlanN47}*GXwoV|lBt+MhMNrL6sn=f8ppU>D#zXz&-cTl${!}LEU4<-N<+WeX3VW$izVxcfw|)t+b*OfBTNOGh2Y1A z|50iZeLcvau9{kcqTaMf8H;7Skdl2#?*U<4i8mbEk;R3Oao-!O6Z>g7R!|1Ni8nNy zU-~(is9DLue4)go1N`&Ok|-6uH2@YQjIl?Ar}~ z-n;57K|j9jIFA^o)*$#-4;ppBvTqs}GZ$OJgP^uDJ^JO=^K!Oe2)bpRX^CYp?)m1B z&&&stcb>v9#4{l;<53o>kVjf>98BpXDyfBMc4x<*>t!V0Ki;kSk%2c6WKvR!Pl3P^ zDKH(dMJ_;{DUWw70%&a!-U>*f+K6mO8;Rt2bmJX&LW*1A22ya4p5@eqz~^_!KT>q_ z>AvYl#jy|9v4A4q^M91ENoqg<#i0O~KsY{2D&5QJtJM_kCj01oqvD}3P~r{nkP}I( zge%CCfrpm~HA}}&{8GyaVnEvR@m-_k^(+btEvqWMKWv|tgPqa7vjD7Mh`gCetsj+w zagpDx_f&?_epeBtLayib-z5aN2xSy-a5uX&qRX{q1{Z>QM#~n`CEN)%lDgRl3=Eay zWPGMq-z<+S`~zne9o(4R@%`E-<=*$`%@+OXO^{lPP>;&#Fv#rDuSq0R2A90-WqnAXDX>5%|@}jIsR#~8gRR&L-;SyvRM`t ze?&q7N|NGNs1oX>w2q(ZVw%kEu5Y73jyG;ZzQ;RKq})Fh6-Dpj^FqKK7|0Z>S*FG1 z|8pX6qZ0uBOBno}3{ZI9WxK}f0#!&53=9YSP|c0OGd1@jZ}R0(X`90G;CZm;$|S)B zzt8${6Dk=MYG{=T0|9S3olq1CC4d?@8Q@`Ld2TSu<6hHZ;Kok?B!S`qmsSv^*F;aK zFp8(P0>gxVZ@@e(t?%T^hBF@uWC1b`VJeg(b@2JExGsr+_TQVU?-G@T6iq z4OyDe7Wt%R+!7L?2#uk;_qTT}8{{z)u`0{Dv7jjmi9;SxXB{u-1SDNL z?Ctu6_xP-{6$$PveoDUY{m`aD@|+riTYHH! zi3SK1S8}`*(%P=yHzyQI6Pof7!?q1g3~meh)xWRQXObG?qtGvvO3@klB;C>+g#o%@ zYYdov!67Np09VC3J>T@NNa}%AU;Oc?2-s}Ma@=clsAq9ehRsW?PRVUrWRN?U!tw=A zvdpsCi5#(kbrieHXf^-7()kw`!}NkpWW0sMy+$tnuH>*{V^fc5xn?zp{cj_zj7x)b z961q7^(P+hQ=?d`bWY>3iCnSqfoKA@Fq>I%qy7BAu1s;?dLmq>w?KNZRr8!3fDJPv zC)|18-8jw`$~?OS2#b~L334}wp?$36dnOSzvo&brMO>uHnx2@gEcC8E!r#g*rJuh+ zUiNh+B^alu3Na}uL73-C84N?os$xw2)_K;4dGn`&=^r?><$^>F*mChzxndyGPDKC{ zJbO0G&0OzwUqQs*L7}c6p4^ITLAOmc0plHaTd{k96#7esG}fxmc6{0#sfb%K_M`n8 z? z%bgY(CJ8lQltJU&oKfL&dS?QIPT9a5A{`@mJ-Ctv2PU_Nm6fq-jhMFSM%+@(x-$jn zZh$LOa|zw$M^pli=7HKFU+wk^7KR4UiGdz-p`q{rsG{m`fm=BD4$UJFcv0;?Ahnlk zmA;I|+Nmq3)OFFsCUv#j`$<=eLSZGRsGhIdMOq;K8(MoFL*^TEVRYFtr-u1gC6G4kR%|4=p%9n_wxbB zZwl~z@rDf3roZ%A*!nP_>UTndlmfFsR@7#OBe~zwJ@V_#-sVXSq`2XOI&ao}PFdNcJkkUX@&b;Prz3)o zgBuUmJKM35)+TdF8Gpx_=+a?D_-kcRtPSVbG88}j$;13Pin@mvy~E3h#At9}qh(%0UdNo+nC zir(^5L5~ZiFA6Cq3HkTr<18!=hG3zG2A`AE>i?}&Z~=*tThUt5!%d{Yt(9QNt9sN7 zhv8Viv^1$14PvQ$HIZFH6-u;48Ztd78Pwnh79QwccyykfOph$x>G+4G+qtT=VI;56 z73HuGU2M;%A9$X1Em-W;WHznjslnPi!lP|ENj`kwODgYGjfE3W3K2xg%*7iymN#H-&zyrxJfu?M_sJDbjPMu$4M)VFQGQ`I@Nuezu5V0;!py1|W$ zGBpGXo$}sF#*{^fwgskl|8(2^)_W-TJNg^{Au4a9EW>4s&+(t`Mfa~cvW+pL;(ZCA`S{X0A zcUI#vj#mJ2U!D|sC2>ERh|sp3DDaiu&XsdfyN8x=3eRBy*dxsr)zB!qw`tMD0ewuE zgK`*m9l6OKnr#_bn}+wS6pZtX6v)SVH>1Q{a;Tg{j8jZxS+0g#lIql0XT*qEA>r_& z*Z?l72tcn=c>srLspX4u0dI`~7<#+CO-e_D%^(!~!aWiUWYUAXN7`4E<5(e_!{{^Lzd;K`s?e@5mJ&-=!>~Ry zasXpDD%(%U_*P{jIk=?U1#fP%5&~CQNV&-9Q=I?xc5T_vCCv{(I`R?*DW~XV_bUP8 zg7jUL>B@N67Ej(_uo(9q3I5jvDY!0yforF27&Dmgk; zm%fNNtwMY|7SK=Vo>)3sW5!mUZeI9d~T#@#H38sk?j z&ELDBdZQ{dvs^ad1pXiB0vt!Hh3>?sSh$k_vVFq}_66P~j(-aliWAtTOgRE9u-}Vz zj;!C?(hoEfgFv>xF(+#nk|?=9;lqfwzq^bbq!^?3Mf*1ZGV_rbxde}ox!f9bzwex% zUINgzqu>BA<>xR@YUVk`4ZQ2Oo|L$)6b7WvNvKICx5)$*yY};F-PaWPtVk()ClGUwP~OUbeTZ&kqTty8SD; z!{CJ3I{4y`e~Sz!+Z8okD>th~u3w36y6b|m1$jMvbOM%z5k^p&N;1<{`RQNqVL|13 z02w*7Lwu3#2E?8n>E^Mmi$O<$j|B9k%n<5KgtzX>-tf!yS3kTr9cntQ(G?W)SVreR zdz-C1EMB&>c*Bk$0qMXl=|V$n+ZUiKlP=%~KDsGrRh;a=0n@`aX9l+chO!P*AC1`6 zZU=k;#s=g6R12e!!ab$!!oq2!gAuzB(!L8v%A|Uui0*Ztb7DD@p@_|_ozwVMSpibo z7r&-AlLx3~?7tGBH>(04hIR{z`K_7Z1DdU(v4_svbwhKR!h6sW71}CXC8|T*Yt$ zhx99KHrCSr@6w0f{M}YX{AS6*>scz2!`WtUS%i$Ss6L*h z_i_8Lt~~&ZG)a-sEFnmtFMqzQwNN3$WI#t&dmW3pARkX|723q2GT&krU-waBbMWXC zmpaZIi1!h6%4f$Ov4Rlmn;ugy7JWr^h$8`_fCN=Iey>K|nmN(`KBNc1ZXrH(nj8&y zdJTiq`n1Eig348Seuu2>3rkKfjw&12qrEnRpOFtM^gYWnV~1eMG)}9n(^_H}`R=Bsk?xWe`Nw)=4cMfm6=R0U%jWFb zr*NvLNzNTD2^+(%)L~Iptp+vA(*XcR2PW%@q*g^04wwK4&;_Wish-XL)_HdAZ+ZnO zbSxJ?dzcCs5#C{NAN(Sqg%TQWhDS93o>I-?$lfT*5hE@#TSJAOFiGo+wC1=CD-*rykqjxn==J_Ctc z5@3c~C{VeTj-mAqEcv%ROTkmW2{A4)5C!ABcy!7BL%;;>$t)nAsd6MC2YD%CKw`}- zaxW;0!h8ALfN8E?70y$36RAR*G*-Q8fR&CaJze=&%q?gqluL{aLpx6)&lrMHA4H0) zPyFK+UthHYWva8l2>T5J3+q%a4Q=vuM%*i*x zxbN*o{mV~O*mBg&FqNR%Z#D@!IQ&*EL!`j<&BKZqf*yJ>E}ub`_MjGc0;*7c%ieIc z@Tm5PN)bOD%!Q>%S%n4R8w}%`L{pWAl8IyL8hg%jt`%=sn&G{?JWg&!_ElmcSXPtc z&%+xgps70o^r+tF63iL{&Uk;GKaf|_N4+#f&yx)tl{Z}kfK-7A0H{BcT(s2yWvzq` zz9z;Hp+*vn8z5;A&;}{-Di4Znhv&VFJyYfBMHeiE@&TEKmuMFqSLpmpRq^)!D7W7E z(4f7oSgvM$Qn2=MF)#>S&Xb3Q7<240LQF0;iifo9gU>8A=|@8y>Mm8tMM3#vx<;|H zNah_^LKDhK4mR^~1z})3#bNHKL_n+3Y~|JgG|*l{Iqy3G(-c9d)t78`;t`@PZq+{K zyGsT(rA9DhbFQ8?2nPie1vUJklOiA1&KX>qz%93vG{eOkkmJI66k~G`&78*#3|nhE z!DMRSC-HQp_-n;WtJlIu=D=H|-J)HAhpZ8t!HL86aNMBweb+Yv$XT)C%haps5Sqbf zRND4@0Yv9obd1TQ04rsa>|oWE_w!rA%EvGs|84?UK}ot+tp1b)&{KY91mL)Rbo1#y z!g(B8U zBzPHm?3~<1$vj3jh+2gem0T0}=O_^&w;byxJ*7#+i`qxKB%F>FV~aSaRt>vbIqBl z7T7X@*iXFql`-kf#CTbq42O<%7#{3y$`+aukGb#^ta+c>G%=hoUl9*l@*x)lbZ*+BX*E8ro%YI}4{jLT~_v)PiV^@oYSRCO^ zBttJb)CZa3QEXgbIqhU`WlGcM~`?`Tt0n z&zK;+$odMJCq-LMaX_Zlmhp9YIF_|pi!Byd_ z@Xa8+fkXnMu$?79=vgJl(Th4T0_-HQd3{Y@kem4+Dz*+~o;S;$i`4lmf-K}Puloie z7#calugD%Ho8vT9SD*p#Hgct?L$Hx=If;oHvBc@U0Bq3fzv5bD8Q*HXK2Rw>5R+~Y zPAc%#@>o`!`7;~!H%UZCO(Lb3rx?(OVp~4{RVXZ_qsX?t3?Zucj~_Nb{zrv#$C8Hv z)yWBhP6{C#VL`cqfU-K9EXaw05y!F*P+Ji$L-gdVos@2(ZG$|Hm!_>1=cK>GR{z!noH#7# zB*hVt3w~-bK}bk>LAJt~b3Kwc#FU<+KupDyz9U^o-$d){zTQ1|6&wQ(@SC>cFtB)) z0DuFh9hiDLcimg_`CeFNzmg&&{zYda7iR(nRkjSP>u7kX_}L)hd&KC0g@C%tm%F}P zn$jrILV%*6uhG1IlgOt3B|4?P#kHS}C7HrpT?Yv(2ZKYzOfLVMzMtK&mCBh0I&1ji zKkT{wuVmk1{roo@Cyap`!MED+XhQv6E_r+aZD$F7343EdE7zccNM8^@Kl7segFmx_ zANk?sYufRLTdBGxcA>DaZRo`|O6Hm_H@}0Hmj^#RtGg8AS@JMxF&OBB!g7nR!s@s#RWh9e7BR}2^ zphm=#+{CACHz=@Y-cnwOU8kUBBY~51O~ExDSm>PjUL!2#1G?+c+&dgCw0j#RfZ%cT zhTgoUTTsDBeL}S)#lD+sOwnJ+^J~e+cOU(&*`!Ja{hK`D8^i+FImLe%VjNVR^Ay8} zqMyKb=a#*9;`uyRfeTSMNXG|1EDGLjdpj-s!_l!*ZT8ssEb+5%l5l73oB<*uWxoM$ z0&kmAIh8WxQ!zN1{-5m80e-Z?QIz!YtfbmBv41NA!Q6yz%(`Lfl ziMlK;cNsknzpOJBwnW`ztgcZStu=h#gkuX80klMLBvRWm%z+k-38HUCwN-`Px+PI&gS{_QH)kAYB!muWh zEBB9tAZ-WcPAoyjSGji70$g7LL%q^IIF%SQ^0b4#XU3|yragu(HhCnI{U)t8$>%zD zHCC2_EbWV6QH@kGQRcr=?-xoYr!oAYutRj3@a({JKD&nT-LKW0G@BbQW(wDfguGX& zL154_f~|#ET5&BMY%O{ybP7|3s!nBVUW>&C#ctjo5$@}yK@`>MNo7d~Cl*nD^y%B% zv^FC@SZ`6A(jaK$9eiI~{7N_!MNrwcB*5*lGqGjWos*BTf~I7|y+3-=VoU8$1TzFC z5iT&lXc@nvmv7IbLbi5XzIlI%!TqQnsC6f-(NpT2rOej?&dr|35NPO&uwRm*8>@DE zB_M8+r$55I;l^NIvv!R?c<4>DCp?Gtl|~?O-Sm@;du36EUVohGev&eKZ(Y;BI@cR% zue2|1bIXKXtNpS~Y*wi_lX(pRe~0+H=(6D_Y_|44j5`xK z@0)#Yri$8SQW(VrYS6YhhJ)wO=M4%pv$yQ~+Mqz|MWAzo`mTz9uZAyJcqquhky`R5 z?@*dO4r#d#7Y&dB63eU&wnos{seA;3`8^hJ`R-XY+KLukA1#QdI5+8_{ez`~=MO48 z0gA1I8rJkbvXmW7J~*sB{JG2KA`&0!vFP0WkO{IaIR*G7#dV*qqnaO~*VfZ=+l!?s^Cd`4 zSY>BN^D{`X?I^R;E;R7T&mCRS=Hzl*qvMaqZwJ zT2iW8XEbHD+n4qUeu7LW87_j5o2RP@5kEQj!aQ$nm=Dd6EO2?uAJBazKCkxsuo)Ml zLtEJKFrg;wMAX-f;?v2r^@P|FVp#%S1@QXZru`^{|^^HmGQDu zBzOuD;ZU8P%CLVMJOw$VQ4UJL&xpp{TSA}4(Vs!J`_@qjn_yP2P5_&eXBjnO;Y%ta zzIUPGE)RS?ILv5%rHwqL62I<~$sKsox0|M4MZ@`g(2JZ%EYYh9A;y6r;rhM0WX`=^ zpzC6R%S0-+f-aCoj){g0W6AEq`R``?T>%5Y2V8Z5X+*nNw|~-r{hJzgdB626eX|E` z5tmzVbpjgMQPhuu%wOL^A=){6?xjjwC+?cz-jxr7@$5qjZ!}D8DOCSC65Sdikh4YmR8pH)F+^4iLpe>ZrjAzq zIq~QceZnnx%lc9dGsAdI5K^%qz$N>G5FQNwM}&9dgnrBeUQ;2HIR%txI0GzaCC;U> z<&U?KFFGLHw>tgq?Smf0fw*D_Bxhv?kZ`n_yeD8qr2~U&E%ujYITWRWZA`mDdn89C zruaoG24clM#kn7nVFqv^N<_NKQ&JHDMMQ8<+1)~IRdN>wWn;7uq0f9d56A3MRw*Mb%7Q;wJW_{yCP~Vt zw}-c`w^8KSb9PuhBRP<$gk?H1KjFiy=&`4FuyBI@iec_lVen|C72q}vu0WljJsO>J z=w!picHU(cM7%5Il3c*Z+fN5MKDR8MCNZtJ|6Wzj(d4n{!zSCbhc`Q$R{afZoM|T5 zH$ekRWLzb&Epz$W>MM&^sdvTL)JKIlDZL=Q@g#L@?Bea;d}USe@4S8?L(vjq1eh$7 znAw*L-Hn;tx^xL_5v{_ioX7bE#bvZ)D@m~yHTrEH{2IXqog8B<3jvONp&t2;Q0thM z0h}`tQu1qQU}0smG~tVz;E{05w@36m?@~h(B=`ig8^>7aRD0s64=K+233ro~+#7C~ zuy|B$n?X_WF8X$>&2?IG*RGt*rGm-Ns)KDu<8#FLX&N{{jm=n^aLuwpadt8O@r|6c zS8moJ*y4w-Y5SJSt&`1iu{xIk#m1kY`MMjU2~LfHhd>SJOm6huoo_8g!5wyIDhmXT?wrHFTDfIYRqEUnF!aq{;3>^s0PRIv#xk z9=9H7FIa7?>1^@Z%olE&sH(*Bd^?Bn?Vf5Bb03r0As0D4-{^WJ9E<}aN zhd8GKz`%td>jkYnSG9DSnSHI=U&iis;fnDe2G72egyme+=h(Pb!i9Tt8e*o1w z*NlU!`u0#{Y507Mzn}E)i2;2%6th7ZBSE#ymPubV4&Ni?(6@XugwG6B4l~0kGOeI? zA~zIKaS1xo5Yong?L3FjhXl;;ZzaU2Ixvsdq@T&fF{ld=A9e0;+o1eiX6UIE`V6{Em){{_FgyJ86c;D^^9Au{vqYpQ!BnA&C;qE$8wVb_YXsM+Ut z376~36HVrbZp^L^%lo7+Y3lc7WG-8M`g2fz@Cm#x@!w*a;1%7M1r3mb-goT~G2;mW zLyVp91$cg3%YFMbW>hbQ%vQ#%4Oh&LX$(#QMoE@nx0Alw@(Z=w(e69$s~1!waCs1n zkx6wm%AwJg^vz38;cmt&W=O6BN&Ik@a#UiUE-H+t*bzaDxuYpLx>k`pN`>u+&**h( zXB9?gGa5(zj)BIXDx39m(JJ3}fLTwUb(qzN!;G}^!1!pm(U?fLuL_sSnF;Zf-m z%CkZaOH}NS>UBBK39AM?Hyz?c>4lzQs_x?SLYiUK)ZF`f9?z$1NBiYxbmBh#l<&AG z4HI#}y6O|Svz7w_R9M-2Hb8*9O^E9u0&h@H45zt?Nr2l{;8M=3oG*&$BR_zDfjzEv zbB)Jc^RA=Lp~JE$_Ul>vjkfY8n00Dc=<0BevNLW>&}FNU<1hS2EmVzKYaSFnA>T3r zyrZ)%QNeNU5#VqYNRv)|p%#h0dMR-pwk!%qa{yx`V?nh+-R6`KvIJ4d0MI=cBg@gI zm58nU^72sVVVL_FS`@^(h58|2pMa*O;s6!9!{g&_T?Mln-(YvV{)SpKb+&vV9ki?U zBDPRbTgy+QB+WQ(Cz{~O>oDolv>({%sF35{hnITAl8>+E0hYA196!dfD*gQ z9t9kEY}PDWS7Na}Hk>AeqoJw{OlP(jD|%>Nx%F;E1tHzo(MFZ*(oSV8QmB1&3G6MW8K z&9{#Hq&A*knqn3_q9YDVJ3n2%KORjwYKxIW&H*S@_!v%w;T|#nn$ID9;&Nu~h1{?i>-e|2>JGLprER)*`GacKM`>zHH zQwfZei6Om1FF&OSl}tLttS<`2C!h=Ldri=OgCn_SjReBQ0g2sPIML)b9x8HMixn?#ix&$-s=vnV z5dW+^>rMBIe~XALPw)3Cpqhzy5(=39O{nG2P@SdE4C-=(4?QCNjSnSGT^X3y-Cq=s zacr@hR4lIP?d>SS#6c`sFK^nH73~UGFmn5i&}+rH zD`+c>cf7Zh`cnfynHsxy-^$E|FEwScC;r)qb&KmP@_Q;IyN-Ri%KD81}Ds8 zMBWUoanr2#EufAzYGi~pZ7zeF$Kl!nmDo6pPpPDXm)~M|ZfWT21S)a}%cm)WM0#qx zi-US$8SZOi{x+o_04q(HId8?eNCxrzL_TLjyXUh~P)B}^40eKlGl0kXEl>shEW68N zoAJh$3)pVWu67GdJx2tWUh6ZiA>gXCUsS7mJ&;HoFZ_-HR!aqyWuQIgS*R#9&~bA) zc{q+ssU6EI?zc?iv6}KrDbDzvH!jg#vUr!D0%xiRidCI*%-^_F!ryJUH$2t0kY1*So$hBzqv$Y0XNa$!->G^zJsVLyARRkx2Qnt=$SD18yZd^=RF(f=s{56#kCX+71)diHc*W8qhG|(gA;xAQw zU^gP+1fN#X9D5`Ut)7EL#fGh{spRU-2J82iL-L!GbTW6=naZzK_i3VE`2%tyVUsWhx)_v7LKCHMr~ z50BWA>&ugwQHcUk(&I#O2BoJRIYB@A?RFI{=ob{r8w!RCNg2T55Bg#v0Ek_a#HsxR zQnU>iwlA_x8dWR-+HKdm*`cK9=xDm+iC)QyERh*w64&Q2IH$oEEX&t3ED{Dz-12Ro*H)gfbxiSXXC z1)*3Drbn^1akQ~6+!_&obDW;M1o_5zy?l(Dl=R{EuTS5BUeGuHBKP!{xe4}sPJCU1 zdlw<;gSCJoOX{44s6$DV-%&rn9!typ4wCY3A=oIUX%j-s*{v>LO}6sr*(h>C|LYeW z8G6v5?;#^}Y$g=-&G_cSPA%(zCFgh7woUpHV`(9Ge)KW_({`e3OL?@%nOa4EoL;{F z;{8_4$#S$RHj(_ilZ)QgV6>qH&TC zytc`nTUN;sm`(&+pW=O3+4~BY`o~ zPl)7}SfPx0C^GXhYt;1RuZF{0hnv&Swbr}uby9kxXI*C#_Tq zlyPtHTKSH+`AfU+tvun-Onro^&aT1lNcY(W1onwfqxv}5g|`8jbKyqVaAB73^}5Bl zhrNF-cG&MWuSdF};w;K?(N}=ES;Vs%TEz$NQ~35YI|DDp$Gnq#{I{I(m*Iy(3QrkI zqCp-3=%SSo7QBWL6~>7_%_TYVic?3{Io0ne_l{&0OLY^xHW*h7qom>1C z%3FS6RB?T5gYf}g}Xcds##7YXh^C?i57ep|5ZO6<0?8DPR*a$x6Rg7TV?GS zvu7Q{t=ltL-X*xiS+H36wMEea)a7o@<*=N2klG+&xDe;kNXF?VhzoxiVMIyRH$Y^c z68AI>{bS0Yo7{@sjFl~fgHK|u5`<%WIx+CdOpzSL;1pL0PXW$aF^6lTJ@qGR1!hC< zRF?p8P#u?)1V5HMI_HTEBLAjjdlu#r-~8pms(&u`P-bc~7Kx13^1dTP6%*B{3EqX(Ro_wepDaOfNY zZ30jPBEhD*2re6BDQGw-3)|BROD}OawM}^G{EfiF{RYl~O@MCL zOe?g|qMB2+Q`>B$6lkm(fLQTHLB|B&>j1c`Yyw_pO6=3ox<5ZZofWX}cpPK}KisiS zH^8|>Zd2a_I;^_6?rO9Wnd`B`$v>0$fD(*}eKLVUmI06#!Epd(&!3;>U%S96^Od|) z&OW@_FIe&?*C<(Cw3F4I>OEVCINxu&O$Em$rNjHjo-_1RO z6Ek0@Wq#=}?#pVT^Zu&F-^WUGoEz?|Kc_j5HPEP9(w$oyIF4SVg3N^VtsY3_psB8Q?h2LOl6$APaUlSOH7Ju+l%E;8B zA&U^xv}1!2?6b zlU5%p6mS=XbRXF%DvDS>sabR6n{w}$Ow;4H8z^`GWe7wM-Hn|DnST?OSO`In!5&+@ zSVf~OGJ{d0SA4#J>D)R$`TT$NXz;ONudYEkJ=f~=x^Ijd)I`yR%f=cZk;o$eDY3vs zL8&&vM##(bK!y=CqefejPdwUHA|yreT-+vVJOSfu{Rp3!)&y9|8hw}mhKN7)nVAPh zkRpG4;HM_5(76{GFq`Tm8;Dv6=qY4r#WpSk;Fk7m=HYd>y=Rc|+wdnK0DGl={WU?% zENGD3sNVAzEPRxAxkIMDcIYh{yA%J)JRd7v_)f)}Yr6XM%z7=({T5W0#n?^m%ZeI5 z@2UT*;_{c7hbrCeB?U=9NS8spM4_)|w)vxdWBhH?F_e`8R-3Q6@70K`?n-UTTP{b5 zt>uoy<-@%o$t`gxXB~64XPW1MDxv&nM@^#p(5PSCaB&+v6YmOn#X$sCBS!)hN?iTk+R|_(olSK!-fc~Z zZU1S>KVwymrv1P%fbQj}nr4%p7TE}{%UhaXQC_D{AIhbVHKNi#uDpA#F&WT=PQo85 zj-zZTy!X+W5!C#o^Q?4ds@m11_@>~OHnTeS5dUX#x(`C0b%Cpe- zdODGxgD7Ln=(0+S@)bRj(U=?Bo3eVkw4U!r!ib0*`8dDbxnSTReA<-(C^J70?Zydh zD!DREtEQM*NslAj57%U9#~(>b@m`8GK_)Lew`=ap)y}duxH*>JJpIgt?-h+HO7LCV z(n?m;jVS4}YCzq8x^7y10Z|Sgbm`|&L^uEGY(xBl&EJ=E4Vfa^Db8Jzj#`f0K~1Un z5)VZZ1?%73k^ouojaICP$Y@sONo(FttyCtpvcYCiz@02KEn#Km`Xl#9WXh#evpcU^ zsakgCNkw<{#o1Lh^k%?>`C98CnrKoJ zJ;rb(w~}1-O)TD+su>0@vCMrX1yX?wPGz!ZXTQ!Hf9S6e4vJ*I*ClosHpCJjmZbY$ zd*xclas^RDFxm)0PvN+F)UgJ*-`=Ud=C;F5umf;L0w_qoPTBYH93X>0RoU$S$Q>{$RG_`+pHw^w#uW1J)`*eNd_NI2jhp64};xMfzb~T~rTjTem zN0eVhZhi(_;NCxn-(RR(qVJ7@+kir?2BeW+rgn2?E^4={$aF>q792@D=f`UjL>c=1LscdhJO?-0#*$PLnu@Szw%#lzcQt?1#1gD=Xm*I1?oGv_pC z1WLHG7HGV05ye%?5FCJ7XH6GVgk9skqyWxQa=sK3Kr-pxcg5F|BC}5J!RORqk4*@m z`^E4``DLnW`wx|o>c}0EdSKYRE{=rB>uHA!=i^-5<88>o>it^|Cmrad#xP*(OsFz_ zuY8`AAYiJdh>ku8m2C*$D&~jd`NlOG=p@S_wk{cYRBU5-g6++UBD_Eb-wT;qgr0#4 ztccau3d}yL?W1pg?rrr6Q2F13(&WA%T)Q=sR_|&s;fXH`90%B=rdo>B<({pGMMPjt zP-Ael2e9FCGq?PUkV&z>YB!YiJ&#?@8hJ z+f&FHL)H@HZGsAU>Vx*9rXtz|N`cDN5=x(oIL$Shm@6gn5fAa~K zqK|~|=`h#brG(J}-G@cVK)vu@^4@=n4RUC^4B=2WxJZ@n`eCti#5!R*H?4KCur5DQ zRgk^AB>8e{79g0h&qe2MrA6csE`X%ySrMUU-p=U`ml`2fi@$+MFj<*&?r#@fE}+jY zl^p>Mduv)ruX1s9@77HbIKFu03ii9_Bdf1d$g**Ja$?J^W?_wUgJs1|X zE*V39XxOOy#?9=5L%@E&Uv7WOVW47y;#6Yl)j@e$0+_EeVV<2!xjf`BVH!WNoKiY> z^{(T5LSQnzfJrd>mHl;!h!Uu&|NrftLnz=1oAN|}S_xFI5BXT9w1;Z!ldUHvL7 zvC*7uPS|8Px_BqD22zzdLI~15A>^{-36{mCY65~5EfswSuE1r^?0uIUCIxRiZ1|M` zN=etQ08x9=2nyXZ>`NgVTy7#OeOglXYk4{PJCWv5O2?PMZ0*jn#@&8>TKg#Tn8NUq zMavm?FxufIubwW3Du}`P!HoK<1oXJU^$I|{{e*vB-NkOtfp_|$7YLWD@X2_F8gR9?U2;X3WpjiKx?k+DMxg7f6zg)75YM3AsX9yuFb5tx$`SKkw3akuXl+Z#P? zHF?U*G}@y=!8)l{YG#~tD2oTgiDE#X4_a->5N_Y^dgsGMjvl})llU8qAt(076R#ad z1qO%?Pxb2M|9G$kr26q3MsMHqH9xf_WNy+2jrl+3zD&-AkKIl@n1BlB=D;fQM|%578dIX z>8>dba<#uYi}%j@G+38JPin}768gak>dS}E`u+BNANU;+#M@@@`Gl#A+fy8(g0aTX z2YJE6fjqBd$yy@3ymtFU`j({*ZzeVPY}oS9dR`e0G5`E^g;ZfVUDi+MjSt!=6nXV! zy8Cw2`B78_b>QX&_KJiNLqrF>G_(`wqJzuk107zpV5brI?^mIm>RqU2(hVLRwvUDh z)Uu}~Wm9FQ>Kvu=Dh!F-_kLE8J=|>s9&O=b)E~3DeA%y0&|#>xBe;nbth<_I_I7i# zBJ*jyF#$+_?Oy}}SJ6+=`k;}q%Ka-A3=DoK!rV!?YB*v|-~<>vAcegHNjtgTtEK?I z0U5*yK6XyLk6Al_?5_b0&J9jU$lJo2vc0Ntzo;{^O#Npt5figk8mj#}MG-c=DsU!$ z*M29__ic{lE}h*0ZJnkBU$BQpidcp3kwaX;gB-ka9>iMLsVpJu)o(u94pJnt71l_9 zh*#lB*+Qe<{0d#&!w)om?9=UUIwbMxS zpOo26s3y)Y)5$s!NrlZBUR`7kI$W^0k^juNxcV^ z?S-QBe|)-LUrB-vsG3-?eN!MX8$vH;B$95TY)phPo*>ne*@jMUBE@{tPyEPasT;WSB9xAjE+1w^Nr~P2^xf;+Q{4<%4QLS?Q}1hyF5&-~BlWrtt}fZ7;~TE= zX%PoJUl!{JUntfB>&EM}(|5;7pN^9%A6idUf2oZIa?kR_Z}&ZU6&40w9SEwcoIG;R zw2{FZ20R!mCzF?HTE;t%!HpkmL2e<3A&F2L31z{eP@l;YL>lzQM-kzSl9Ogn=)s(Y zgyPROf?kLr#F%9YjOpuysQM_BGe`il1%hgUzDkkKselmS?DJY69zoqKWWOk zi`!$YA|(*(p{Hh-@>voWh7+cD;Y zh~(o=WvLiPwN>dWDo?B2KQtWVSAX>*m3juas3(^{7SMqi0>^Ctt-IPD5lQqTIU=34 z)u9$N8r8*il9!knJ{|YHm@GAZlYdb?gBwIcA+nSH-r?d!$Qe<=kz5j|TdjSdP$F~U z&rE0KVfYGj6zuHIjW<+^$zG#s+`_$9$jPrM30GvEO-=jt>aZ@4M>nk2CGlsvJ9cT% z46dn(YtN_7Cdhj)HBBh}Cq(20Umpw{p8_d^{yx^rzE~F9>zpn>$NIvVq#IeN)!oTq z9G&5AtENVIY9&iOh#D|$xF|5lIeNJNeWZFA*2FEVu|j^Rr}ml4L`G&4mq&NluqtsL znEGI-TthyepAMXVguMs&Vnt@kP(!ZSeaGUzzbm+HkoMoZltZDZf5&?rQ|)H+d3F&o zN>sPV@o)4Yre2-@{+w&sTqtB(aJW{qpgb(&0Tq8l? zGfLh|?fcpM@r4jKVA(`K7C|*LeNRgyX{iAbGx^Lk<1cS*Adv^z< zUl>q~_{$_9W_KX`$pLUs?oZ)ugagV;%MqUL9*GQ<=AVq%6g(l(CKHM$W4G5dJ4C=Nu)+^6e}K} z7VnrmUf^M9cBalG`|%?)j8|t>rGh*Qq8mUfixO(*qW@lq)*bk`1&2y&$P?fn8fdU6 zK|JJx4o@+G)z*u5CTmi*fB!T6{ho<){lTQw{q(zW`L1Rv%L|I=F8h7mPbY7V_j06D z#K}X#IfBIn640Ay#T}v4q=|C#BzaQFkrlXN*549%9BIModUWX%2j&r|Tt!pY>Od2V2zo;(Bg+4?NrtplKfv$3h$ zs0{t4qqE&4luIZNvGHfS6UxHK>ZqB2zg8 z998P$3Xo)l`|s?zBb%MzKYS}vbq{^b$vvr4Z~Kd%AG|oPY>Hmf`A9gr(ocI zDL1ILRq{Gw-jqc{9rZ%}iu}I&0#h|FUhO71S0%){3NsHP5L-ktW{}XIV%pBR_0P$^ zp!E6i03a4P=bd&9qqiY0-sY$CSHFo=MsARXiYfp5wU8ZP!php@zx5&vTNh$IJsy7= zl>l4_^somdBGw6miO$;JG%xqctepZoM0WL239O&VLr7boMsbs(ViJfv@|*b#VEE{V zhp^^;y>hbzaFjoo(^xf(y^&p8^7nb(g#HGHX&dJ6+TLRAwBc%;f1f zC-Mm#K7GL`)`eOv(Xv{j3dHP>@@HRIJ}g>Rd=0Em5;TvT03)lepeK7 zEqO{X904j&S$wwZDbWRFGgGc|KnT+?|NsYrYt#b}Yf~NBK1Xh^D zuz+KFS=|@1>)cP<9s5|IhXYx{*?3Y{&BXIPw&B#2-IY7xQ|yg|48fpltbn+HMVK+q zzbQbvEgUJXu!j^01g-6bv7VQ}Wu?fLg_j77!-z&TRp8G}JZTMFT;ur5SaSO5Q$MS3 z`Jc6scnL&npU}g#g1=AuCCVs>RsiQoD>!t_hI-K1sZAIGGF(S}qlic>6S_qXmWIW~r^oyFbpgOZCwmIy z`hE0nD;a8e1Eh8Rh5Rt2^MCS$A1PdK5}_GOI5^XU-5>r@-9Wco5K4<(4@O-6ZB!7_ zo}R!DkamZ;04k--w#_|oP8Vk9CnBFw!XM11o$clHjpW^VS{~W>XX8cE=P;@yi2ZUF zZE9KGTXMqn_d(i08_~(XvnEc#`=fiAz<4Rtw7UtWbh^+iL#`FPjYq~w#vevb;vT_x zBstY`Ia6wZjZ+_U5PezC1FxOeX>Y;4{*8#WjPEYT=#aXs-(P*MILJaj)^UCHzBpYr z2(f)7JBjuLBBjq>iXV}BuE>u~D6H;pSn+(Ed}eTbnVkiiJhQQt>b`liz`c2r^5$1d z!Q$<|frJHJsMx;?b@pj0GwrdykM|t3cS;jzCNpfP?tCBeW1A1|4TF4_?P5InLA4Oa zSdMoAa{!hI9eBwb?q|Yoe;?rAZ@P$4D4=fpffe>X;i}W!e}N1A<9`CgU*@D;R2J{m7%p;#zZd-9UohAR;ku2>kFzc)NB`fCg`j9j%+pc+dkFvAGyjGT zFfV)o=ME_~?TM52+{E>CPj)Nyax8a+}RoaIC`7HkX zvx8cQQ>dCbodCjKmvXjtunU~qR82eomIlXg(gc``sAwiM;+QA+Uk~!XKMdF)OfV*o zEgv4{|U0 fXRID{T06(TI;n7Ea;E(W3;a=4)KDmvGxGgELHdsR From bf93fa510bcc5cec84bcd9d81cb8fae6beb1ebb4 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Mon, 8 Aug 2016 18:46:34 -0700 Subject: [PATCH 03/46] Delete readme.md file cleanup, removing file that doesn't apply to my layout. --- keyboards/ergodox/keymaps/xyverz/readme.md | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/xyverz/readme.md diff --git a/keyboards/ergodox/keymaps/xyverz/readme.md b/keyboards/ergodox/keymaps/xyverz/readme.md deleted file mode 100644 index 8f6dba45e9..0000000000 --- a/keyboards/ergodox/keymaps/xyverz/readme.md +++ /dev/null @@ -1,10 +0,0 @@ -# ErgoDox EZ Default Configuration - -## Changelog - -* Feb 2, 2016 (V1.1): - * Made the right-hand quote key double as Cmd/Win on hold. So you get ' when you tap it, " when you tap it with Shift, and Cmd or Win when you hold it. You can then use it as a modifier, or just press and hold it for a moment (and then let go) to send a single Cmd or Win keystroke (handy for opening the Start menu on Windows). - -This is what we ship with out of the factory. :) The image says it all: - -![Default](default_highres.png) From c060afe68eb729fd3afcfdb3f16e28730ab868b3 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Mon, 8 Aug 2016 18:47:13 -0700 Subject: [PATCH 04/46] Delete old_keymap.c file cleanup --- keyboards/ergodox/keymaps/xyverz/old_keymap.c | 311 ------------------ 1 file changed, 311 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/xyverz/old_keymap.c diff --git a/keyboards/ergodox/keymaps/xyverz/old_keymap.c b/keyboards/ergodox/keymaps/xyverz/old_keymap.c deleted file mode 100644 index e082372f9b..0000000000 --- a/keyboards/ergodox/keymaps/xyverz/old_keymap.c +++ /dev/null @@ -1,311 +0,0 @@ -#include "ergodox.h" -#include "debug.h" -#include "action_layer.h" - -extern keymap_config_t keymap_config; - -#define _DVORAK 0 // default layer -#define _QWERTY 1 // symbols -#define _LOWER 2 -#define _RAISE 3 -#define _ADJUST 16 - -// Fillers to make layering more clear -#define _______ KC_TRNS -#define XXXXXXX KC_NO - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -/* - * Keymap 0: Dvorak - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ] | 1 | 2 | 3 | 4 | 5 | Esc | | ESC | 6 | 7 | 8 | 9 | 0 | [ | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Tab | ' | , | . | Y | Y |(Null)| |(Null)| F | G | C | R | L | \ | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | CapsLk | A | O | E | U | I |------| |------| D | H | T | N | S | - | - * |--------+------+------+------+------+------| FN1 | | FN2 |------+------+------+------+------+--------| - * | LShift | Z | X | C | V | X | | | | B | M | W | V | Z | RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | LGUI | ` | INS | Left | Rght | | Up | Dn | / | = | RGUI | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | LCtr | LAlt | | Ralt | RCtr | - * ,------|------|------| |------+------+------. - * | | | Home | | PgUp | | | - * | BkSp | Del |------| |------| Enter| Space| - * | | | End | | PgDn | | | - * `--------------------' `--------------------' - * - * - ***************************************************************************************************** - * This Dvorak keyboard layout stems from my early Kinesis years, using the Contour PS/2 with a Dvorak - * software layout. Because of this, the RBRC and LBRC were on opposite sides of the board in the cor- - * ner keys. I've decided to continue using this layout with my ErgoDox. - */ - - [_DVORAK] = ( - KC_RBRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, XXXXXXX, - KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, LOWER, - KC_LGUI, KC_GRV, KC_INS, KC_LEFT, KC_RGHT, - KC_LCTL, KC_LALT, - KC_HOME, - KC_BSPC, KC_DEL, KC_END, - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, - NO, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, - KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, - RAISE, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, - KC_UP, KC_DOWN, KC_SLSH, KC_EQL, KC_RGUI, - KC_RALT, KC_RCTL, - KC_PGUP, - KC_PGDN, KC_ENT, KC_SPC -), - -/* Keymap 1: QWERTY - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2|' / Cmd | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | App | LGui | | Alt |Ctrl/Esc| - * ,------|------|------| |------+--------+------. - * | | | Home | | PgUp | | | - * | Space|Backsp|------| |------| Tab |Enter | - * | |ace | End | | PgDn | | | - * `--------------------' `----------------------' - */ -[_QWERTY] = ( - KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, - KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NO, - KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, - KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, LOWER, - LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, - {ALT_T(KC_APP), KC_LGUI, - KC_HOME, - KC_SPC,KC_BSPC,KC_END, - // right hand - KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - KC_NO, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), - RAISE, KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, - KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, - KC_LALT, CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT -), - - -/* Lower 2: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -[_LOWER] = ( - // left hand - KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, - KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, - KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, - KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, - KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), - -/* Raise 3: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[_RAISE] = ( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand - 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, - KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_WBAK -), - -/* Adjust 16: Lower + Raise - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | Reset| | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | |------| |------| |Dvorak|Qwerty| | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | | | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[_ADJUST] = ( - KC_TRNS, RESET, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand - 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, KC_TRNS, - KC_TRNS, QWERTY, DVORAK, 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, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), - -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case _DVORAK: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_DVORAK); - } - break; - case _QWERTY: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_QWERTY); - } - 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); - } - 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); - } - break; - - } - return MACRO_NONE; -}; - - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { - - uint8_t layer = biton32(layer_state); - - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. - case 1: - ergodox_right_led_1_on(); - break; - case 2: - ergodox_right_led_2_on(); - break; - default: - // none - break; - } - -}; From 14938367626f0cddba4bc35abe62a9bcc02bee10 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Mon, 8 Aug 2016 18:48:36 -0700 Subject: [PATCH 05/46] Delete README.md file clean up. --- keyboards/preonic/keymaps/xyverz/README.md | 49 ---------------------- 1 file changed, 49 deletions(-) delete mode 100644 keyboards/preonic/keymaps/xyverz/README.md diff --git a/keyboards/preonic/keymaps/xyverz/README.md b/keyboards/preonic/keymaps/xyverz/README.md deleted file mode 100644 index 9c23c5b9f3..0000000000 --- a/keyboards/preonic/keymaps/xyverz/README.md +++ /dev/null @@ -1,49 +0,0 @@ -# The default Preonic layout - largely based on the Planck's - -## QWERTY Layer: - -/* Qwerty - * ,-----------------------------------------------------------------------------------. - * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | - | A | S | D | F | G | H | J | K | L | ; | " | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| Z | X | C | V | B | N | M | , | . | / | Shift| - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Ctrl | Alt | Left |Right |Lower | Space |Raise | Up | Down | GUI |Enter | - * `-----------------------------------------------------------------------------------' - */ - -## LOWER Layer: - -/* Lower - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 | | Mute | Vol- | Vol+ | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Brite| | Home | End | | Ins | | PgUp | PgDN | |Enter | - * `-----------------------------------------------------------------------------------' - */ - -## RAISE Layer: - -/* Raise - * ,-----------------------------------------------------------------------------------. - * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Caps | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 | | Prev | Play | Next | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | Brite| | Home | End | | Ins | | PgUp | PgDN | |Enter | - * `-----------------------------------------------------------------------------------' - */ \ No newline at end of file From 4e030313f7f55be7573eaab0b91e45290dc2d0b3 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Mon, 8 Aug 2016 18:51:34 -0700 Subject: [PATCH 06/46] Delete README.md file cleanup --- keyboards/planck/keymaps/xyverz/README.md | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 keyboards/planck/keymaps/xyverz/README.md diff --git a/keyboards/planck/keymaps/xyverz/README.md b/keyboards/planck/keymaps/xyverz/README.md deleted file mode 100644 index b0054fc305..0000000000 --- a/keyboards/planck/keymaps/xyverz/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Zrevyx's Planck Layout - From c062b6a13d7974144b5ab02896d2213051fd91ad Mon Sep 17 00:00:00 2001 From: Xyverz Date: Mon, 8 Aug 2016 18:52:48 -0700 Subject: [PATCH 07/46] Delete keymap.c file cleanup --- keyboards/ergodox/keymaps/xyverz/keymap.c | 184 ---------------------- 1 file changed, 184 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/xyverz/keymap.c diff --git a/keyboards/ergodox/keymaps/xyverz/keymap.c b/keyboards/ergodox/keymaps/xyverz/keymap.c deleted file mode 100644 index dd39dbacb2..0000000000 --- a/keyboards/ergodox/keymaps/xyverz/keymap.c +++ /dev/null @@ -1,184 +0,0 @@ -#include "ergodox.h" -#include "debug.h" -#include "action_layer.h" - -#define BASE 0 // default layer -#define SYMB 1 // symbols -#define MDIA 2 // media keys - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ] | 1 | 2 | 3 | 4 | 5 | ESC | | ESC | 6 | 7 | 8 | 9 | 0 | \ | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | ' | , | . | P | Y | L1 | | L1 | F | G | C | R | L | / | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A | O | E | U | I |------| |------| D | H | T | N |S / L2| - | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | App | LGui | | Alt |Ctrl/Esc| - * ,------|------|------| |------+--------+------. - * | | | Home | | PgUp | | | - * | Space|Backsp|------| |------| Tab |Enter | - * | |ace | End | | PgDn | | | - * `--------------------' `----------------------' - */ -// If it accepts an argument (i.e, is a function), it doesn't need KC_. -// Otherwise, it needs KC_* -[BASE] = KEYMAP( // layer 0 : default - // left hand - KC_RBRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, - KC_DELT, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, TG(1), - KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, - KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), - LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, - ALT_T(KC_APP), KC_LGUI, - KC_HOME, - KC_SPC,KC_BSPC,KC_END, - // right hand - KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, - TG(1), KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, - KC_D, KC_H, KC_T, KC_N, LT(MDIA, KC_S), KC_MINS, - MEH_T(KC_NO),KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT, - KC_UP, KC_DOWN,KC_SLSH,KC_EQL, KC_FN1, - KC_LALT, CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT - ), -/* Keymap 1: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, - KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, - KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, - KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, - KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -/* Keymap 2: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - // right hand - 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, - KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_WBAK -), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - } - return MACRO_NONE; -}; - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { - - uint8_t layer = biton32(layer_state); - - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. - case 1: - ergodox_right_led_1_on(); - break; - case 2: - ergodox_right_led_2_on(); - break; - default: - // none - break; - } - -}; From 39dd3d674cfb7299ce377f70a678d3613f826e0a Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Mon, 8 Aug 2016 19:35:13 -0700 Subject: [PATCH 08/46] Changed behavior of _DVORAK layout's KC_RSFT to SFT_T(KC_ENT) for flexibility's sake. Updated the rest of the keymap to reflect the current (as of 19:37 on 08 Aug 2018) default layout and default makefile. --- keyboards/planck/keymaps/xyverz/README.md | 2 - keyboards/planck/keymaps/xyverz/keymap.c | 339 ++++++++------------ keyboards/planck/keymaps/xyverz/makefile.mk | 27 +- 3 files changed, 162 insertions(+), 206 deletions(-) delete mode 100644 keyboards/planck/keymaps/xyverz/README.md diff --git a/keyboards/planck/keymaps/xyverz/README.md b/keyboards/planck/keymaps/xyverz/README.md deleted file mode 100644 index b0054fc305..0000000000 --- a/keyboards/planck/keymaps/xyverz/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Zrevyx's Planck Layout - diff --git a/keyboards/planck/keymaps/xyverz/keymap.c b/keyboards/planck/keymaps/xyverz/keymap.c index 9ac78ec15d..90529428da 100644 --- a/keyboards/planck/keymaps/xyverz/keymap.c +++ b/keyboards/planck/keymaps/xyverz/keymap.c @@ -19,25 +19,19 @@ extern keymap_config_t keymap_config; #define _DVORAK 2 #define _LOWER 3 #define _RAISE 4 -#define _MUSIC 5 -#define _PLOVER 6 +#define _PLOVER 5 #define _ADJUST 16 -// Macro name shortcuts -#define QWERTY M(_QWERTY) -#define COLEMAK M(_COLEMAK) -#define DVORAK M(_DVORAK) -#define LOWER M(_LOWER) -#define RAISE M(_RAISE) -#define M_BL 5 -#define AUD_OFF M(6) -#define AUD_ON M(7) -#define MUS_OFF M(8) -#define MUS_ON M(9) -#define VC_IN M(10) -#define VC_DE M(11) -#define PLOVER M(12) -#define EXT_PLV M(13) +enum planck_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK, + DVORAK, + PLOVER, + LOWER, + RAISE, + BACKLIT, + EXT_PLV +}; // Fillers to make layering more clear #define _______ KC_TRNS @@ -60,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {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_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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, - {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} + {BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} }, /* Colemak @@ -78,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, - {M(M_BL), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} + {BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} }, /* Dvorak @@ -95,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_DVORAK] = { {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH}, {KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS}, - {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT}, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, SFT_T(KC_ENT)}, {KC_LCTL, KC_LALT, KC_LEFT, KC_RGHT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_UP, KC_DOWN, KC_RGUI, KC_ENT } }, @@ -114,7 +108,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______}, {KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______}, - {M(M_BL), _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} + {BACKLIT, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} }, /* Raise @@ -132,17 +126,7 @@ 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_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______}, - {M(M_BL), _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} -}, - -/* Music (reserved for process_action_user) - * - */ -[_MUSIC] = { - {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, - {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, - {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX}, - {XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LOWER, XXXXXXX, XXXXXXX, RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX} + {BACKLIT, _______, KC_HOME, KC_END, _______, KC_DEL, KC_INS, _______, KC_PGUP, KC_PGDN, _______, _______} }, /* Plover layer (http://opensteno.org) @@ -151,7 +135,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+-------------+------+------+------+------+------| * | | S | T | P | H | * | * | F | P | L | T | D | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | S | K | W | R | * | * | R | B | G | S | Z | + * |TogOut| S | K | W | R | * | * | R | B | G | S | Z | * |------+------+------+------+------+------+------+------+------+------+------+------| * | Exit | | | A | O | | E | U | | | | * `-----------------------------------------------------------------------------------' @@ -170,42 +154,32 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+-------------+------+------+------+------+------| * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | |Voice-|Voice+|Mus on|Musoff| | | | | | | | + * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ [_ADJUST] = { {_______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL}, - {_______, _______, _______, AUD_ON, AUD_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______}, - {_______, VC_DE, VC_IN, MUS_ON, MUS_OFF, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______}, + {_______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} } -}; - -const uint16_t PROGMEM fn_actions[] = { - }; #ifdef AUDIO_ENABLE -float tone_startup[][2] = { - {440.0*pow(2.0,(31)/12.0), 12}, - {440.0*pow(2.0,(28)/12.0), 8}, - {440.0*pow(2.0,(19)/12.0), 8}, - {440.0*pow(2.0,(24)/12.0), 8}, - {440.0*pow(2.0,(28)/12.0), 20} -}; +float tone_startup[][2] = SONG(STARTUP_SOUND); float tone_qwerty[][2] = SONG(QWERTY_SOUND); float tone_dvorak[][2] = SONG(DVORAK_SOUND); float tone_colemak[][2] = SONG(COLEMAK_SOUND); float tone_plover[][2] = SONG(PLOVER_SOUND); float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND); +float music_scale[][2] = SONG(MUSIC_SCALE_SOUND); -float music_scale[][2] = SONG(MUSIC_SCALE_SOUND); -float goodbye[][2] = SONG(GOODBYE_SOUND); +float tone_goodbye[][2] = SONG(GOODBYE_SOUND); #endif @@ -214,166 +188,127 @@ void persistant_default_layer_set(uint16_t default_layer) { default_layer_set(default_layer); } -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case _QWERTY: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_NOTE_ARRAY(tone_qwerty, false, 0); - #endif - persistant_default_layer_set(1UL<<_QWERTY); - } - break; - case _COLEMAK: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_NOTE_ARRAY(tone_colemak, false, 0); - #endif - persistant_default_layer_set(1UL<<_COLEMAK); - } - break; - case _DVORAK: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_NOTE_ARRAY(tone_dvorak, false, 0); - #endif - persistant_default_layer_set(1UL<<_DVORAK); - } - 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); - } - 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); - } - break; - case M_BL: - if (record->event.pressed) { - register_code(KC_RSFT); - #ifdef BACKLIGHT_ENABLE - backlight_step(); - #endif - } else { - unregister_code(KC_RSFT); - } - break; - case 6: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - audio_off(); - #endif - } - break; - case 7: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - audio_on(); - PLAY_NOTE_ARRAY(tone_startup, false, 0); - #endif - } - break; - case 8: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - layer_off(_MUSIC); - stop_all_notes(); - #endif - } - break; - case 9: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_NOTE_ARRAY(music_scale, false, 0); - layer_on(_MUSIC); - #endif - } - break; - case 10: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - voice_iterate(); - PLAY_NOTE_ARRAY(music_scale, false, 0); - #endif - } - break; - case 11: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - voice_deiterate(); - PLAY_NOTE_ARRAY(music_scale, false, 0); - #endif - } - break; - case 12: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_NOTE_ARRAY(tone_plover, false, 0); - #endif - layer_off(_RAISE); - layer_off(_LOWER); - layer_off(_ADJUST); - layer_off(_MUSIC); - stop_all_notes(); - layer_on(_PLOVER); - if (!eeconfig_is_enabled()) { - eeconfig_init(); - } - keymap_config.raw = eeconfig_read_keymap(); - keymap_config.nkro = 1; - eeconfig_update_keymap(keymap_config.raw); - } - break; - case 13: - if (record->event.pressed) { - #ifdef AUDIO_ENABLE - PLAY_NOTE_ARRAY(tone_plover_gb, false, 0); - #endif - layer_off(_PLOVER); - } - break; - +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_qwerty, false, 0); + #endif + persistant_default_layer_set(1UL<<_QWERTY); } - return MACRO_NONE; -}; + return false; + break; + case COLEMAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_colemak, false, 0); + #endif + persistant_default_layer_set(1UL<<_COLEMAK); + } + return false; + break; + case DVORAK: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_dvorak, false, 0); + #endif + persistant_default_layer_set(1UL<<_DVORAK); + } + 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 BACKLIT: + if (record->event.pressed) { + register_code(KC_RSFT); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + } else { + unregister_code(KC_RSFT); + } + return false; + break; + case PLOVER: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + stop_all_notes(); + PLAY_NOTE_ARRAY(tone_plover, false, 0); + #endif + layer_off(_RAISE); + layer_off(_LOWER); + layer_off(_ADJUST); + layer_on(_PLOVER); + if (!eeconfig_is_enabled()) { + eeconfig_init(); + } + keymap_config.raw = eeconfig_read_keymap(); + keymap_config.nkro = 1; + eeconfig_update_keymap(keymap_config.raw); + } + return false; + break; + case EXT_PLV: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_plover_gb, false, 0); + #endif + layer_off(_PLOVER); + } + return false; + break; + } + return true; +} void matrix_init_user(void) { - #ifdef AUDIO_ENABLE - _delay_ms(20); // stops the tick - PLAY_NOTE_ARRAY(tone_startup, false, 0); - #endif + #ifdef AUDIO_ENABLE + startup_user(); + #endif } #ifdef AUDIO_ENABLE -void play_goodbye_tone() + +void startup_user() { - PLAY_NOTE_ARRAY(goodbye, false, 0); - _delay_ms(150); + _delay_ms(20); // gets rid of tick + PLAY_NOTE_ARRAY(tone_startup, false, 0); } -uint8_t starting_note = 0x0C; -int offset = 7; - -void process_action_user(keyrecord_t *record) { - - if (IS_LAYER_ON(_MUSIC)) { - if (record->event.pressed) { - play_note(((double)220.0)*pow(2.0, -4.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row)), 0xF); - } else { - stop_note(((double)220.0)*pow(2.0, -4.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row))); - } - } - +void shutdown_user() +{ + PLAY_NOTE_ARRAY(tone_goodbye, false, 0); + _delay_ms(150); + stop_all_notes(); } -#endif + +void music_on_user(void) +{ + music_scale_user(); +} + +void music_scale_user(void) +{ + PLAY_NOTE_ARRAY(music_scale, false, 0); +} + +#endif \ No newline at end of file diff --git a/keyboards/planck/keymaps/xyverz/makefile.mk b/keyboards/planck/keymaps/xyverz/makefile.mk index 99fbfbd0bb..0f4953888d 100644 --- a/keyboards/planck/keymaps/xyverz/makefile.mk +++ b/keyboards/planck/keymaps/xyverz/makefile.mk @@ -1,2 +1,25 @@ -AUDIO_ENABLE = yes -NKRO_ENABLE = yes \ No newline at end of file + + +# 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 # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = yes # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = yes # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif From 6f700f1eb0c76aa19187efd83ab2b49a0db7f71f Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Tue, 9 Aug 2016 23:49:27 -0700 Subject: [PATCH 09/46] Adding my own layouts for the Phantom and Ergodox. My Ergodox layout adds persistent layers based on the Planck and Preonic setup. The layout arrays are pulled directly from the ergodox/ez/ez.h keymap definition starting at line 81. --- keyboards/ergodox/keymaps/xyverz/keymap.c | 311 ++++++++++++++++++++++ keyboards/phantom/keymaps/xyverz/keymap.c | 67 +++++ 2 files changed, 378 insertions(+) create mode 100644 keyboards/ergodox/keymaps/xyverz/keymap.c create mode 100644 keyboards/phantom/keymaps/xyverz/keymap.c diff --git a/keyboards/ergodox/keymaps/xyverz/keymap.c b/keyboards/ergodox/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..c5ce99dd22 --- /dev/null +++ b/keyboards/ergodox/keymaps/xyverz/keymap.c @@ -0,0 +1,311 @@ +/* + * The Dvorak layout shown herestems from my early Kinesis years, using the Contour PS/2 with a Dvorak + * software layout. Because of this, the RBRC and LBRC were on opposite sides of the board in the corner + * keys. I've decided to continue using this layout with my ErgoDox. + * + * The QWERTY layout shown here is based entirely on the Kinesis Advantage layout, with the additional + * keys as shown in the diagrams. The Colemak layout is merely an adaptation of that. + * + * I've enabled persistent keymaps for Qwerty, Dvorak and Colemak layers, similar to the default Planck + * layouts. + * + * For a better explanation of the layout matrices shown below, take a look at ../../ez/ez.h where the + * keymap is defined, beginning on line 81. + * + */ + +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "eeconfig.h" + +extern keymap_config_t keymap_config; + +#define _DV 0 // Dvorak layer +#define _QW 1 // Qwerty layer +#define _CM 2 // Colemak layer +#define _MD 3 // Media Layer +#define _KP 4 // Keypad Layer + +// Macro name shortcuts +#define DVORAK M(_DV) +#define QWERTY M(_QW) +#define COLEMAK M(_CM) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Dvorak layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ] | 1 | 2 | 3 | 4 | 5 | ESC | | ESC | 6 | 7 | 8 | 9 | 0 | [ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | ' | , | . | Y | Y | | | | F | G | C | R | L | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | CapsLk | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| _MD | | _KP |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | X | | | | B | M | W | V | Z | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGUI | ` | INS | Left | Rght | | Up | Dn | / | = | RGUI | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtr | LAlt | | Ralt | RCtr | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * | BkSp | Del |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + * + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[_DV] = { // layer 0 : Dvorak + // left hand + {KC_RBRC, KC_TAB, KC_CAPS, KC_LSFT, KC_LGUI, KC_NO }, + {KC_1, KC_QUOT, KC_A, KC_SCLN, KC_GRV, KC_END }, + {KC_2, KC_COMM, KC_O, KC_Q, KC_INS, KC_DEL }, + {KC_3, KC_DOT, KC_E, KC_J, KC_LEFT, KC_BSPC}, + {KC_4, KC_P, KC_U, KC_K, KC_RGHT, KC_HOME}, + {KC_5, KC_Y, KC_I, KC_X, KC_NO, KC_LCTL}, + {KC_ESC, KC_NO, KC_NO, MO(_MD), KC_NO, KC_LALT}, + + // right hand + {KC_ESC, KC_NO, KC_NO, MO(_KP), KC_NO, KC_RALT}, + {KC_6, KC_F, KC_D, KC_B, KC_NO, KC_RCTL}, + {KC_7, KC_G, KC_H, KC_M, KC_UP, KC_PGUP}, + {KC_8, KC_C, KC_T, KC_W, KC_DOWN, KC_SPC }, + {KC_9, KC_R, KC_N, KC_V, KC_SLSH, KC_ENT }, + {KC_0, KC_L, KC_S, KC_Z, KC_EQL, KC_PGDN}, + {KC_LBRC, KC_BSLS, KC_MINS, KC_RSFT, KC_RGUI, KC_NO } +}, + +/* Keymap 1: QWERTY layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | ESC | | ESC | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | | | | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | CapsLk | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| _MD | | _KP |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGUI | ` | INS | Left | Rght | | Up | Dn | [ | ] | RGUI | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtr | LAlt | | Ralt | RCtr | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * | BkSp | Del |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[_QW] = { // layer 1 : QWERTY + // left hand + {KC_EQL, KC_TAB, KC_CAPS, KC_LSFT, KC_LGUI, KC_NO }, + {KC_1, KC_Q, KC_A, KC_Z, KC_GRV, KC_END }, + {KC_2, KC_W, KC_S, KC_X, KC_INS, KC_DEL }, + {KC_3, KC_E, KC_D, KC_C, KC_LEFT, KC_BSPC}, + {KC_4, KC_R, KC_F, KC_V, KC_RGHT, KC_HOME}, + {KC_5, KC_T, KC_G, KC_B, KC_NO, KC_LCTL}, + {KC_ESC, KC_NO, KC_NO, MO(_MD), KC_NO, KC_LALT}, + + // right hand + {KC_ESC, KC_NO, KC_NO, MO(_KP), KC_NO, KC_RALT}, + {KC_6, KC_Y, KC_H, KC_N, KC_NO, KC_RCTL}, + {KC_7, KC_U, KC_J, KC_M, KC_UP, KC_PGUP}, + {KC_8, KC_I, KC_K, KC_COMM, KC_DOWN, KC_SPC }, + {KC_9, KC_O, KC_L, KC_DOT, KC_LBRC, KC_ENT }, + {KC_0, KC_P, KC_SCLN, KC_SLSH, KC_RBRC, KC_PGDN}, + {KC_MINS, KC_BSLS, KC_QUOT, KC_RSFT, KC_RGUI, KC_NO } + }, + +/* Keymap 2: Colemak layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | ESC | | ESC | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | F | P | G | | | | J | L | U | Y | ; | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSpc | A | R | S | T | D |------| |------| H | N | E | I | O | ' | + * |--------+------+------+------+------+------| _MD | | _KP |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | K | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | LGUI | ` | INS | Left | Rght | | Up | Dn | [ | ] | RGUI | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtr | LAlt | | Ralt | RCtr | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * | BkSp | Del |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[_CM] = { // layer 2 : Colemak + // left hand + {KC_EQL, KC_TAB, KC_BSPC, KC_LSFT, KC_LGUI, KC_NO }, + {KC_1, KC_Q, KC_A, KC_Z, KC_GRV, KC_END }, + {KC_2, KC_W, KC_R, KC_X, KC_INS, KC_DEL }, + {KC_3, KC_F, KC_S, KC_C, KC_LEFT, KC_BSPC}, + {KC_4, KC_P, KC_T, KC_V, KC_RGHT, KC_HOME}, + {KC_5, KC_G, KC_D, KC_B, KC_NO, KC_LCTL}, + {KC_ESC, KC_NO, KC_NO, MO(_MD), KC_NO, KC_LALT}, + + // right hand + {KC_ESC, KC_NO, KC_NO, MO(_KP), KC_NO, KC_RALT}, + {KC_6, KC_J, KC_H, KC_K, KC_NO, KC_RCTL}, + {KC_7, KC_L, KC_N, KC_M, KC_UP, KC_PGUP}, + {KC_8, KC_U, KC_E, KC_COMM, KC_DOWN, KC_SPC }, + {KC_9, KC_Y, KC_I, KC_DOT, KC_LBRC, KC_ENT }, + {KC_0, KC_SCLN, KC_O, KC_SLSH, KC_RBRC, KC_PGDN}, + {KC_MINS, KC_BSLS, KC_QUOT, KC_RSFT, KC_RGUI, KC_NO } + }, + +/* Keymap 3: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | TEENSY | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | PrSc | ScLk | Paus | | FN4 | | FN5 | | Mute | Vol- | Vol+ | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| Stop | Prev | Play | Next | Sel | | + * |--------+------+------+------+------+------| FN4 | | FN5 |------+------+------+------+------+--------| + * | | |Dvorak|Qwerty|Colemk| | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Media Layer +[_MD] = { // layer 3 : Media layer + // left hand + {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO }, + {KC_F1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}, + {KC_F2, KC_PSCR, KC_TRNS, DVORAK, KC_TRNS, KC_TRNS}, + {KC_F3, KC_SLCK, KC_TRNS, QWERTY, KC_TRNS, KC_TRNS}, + {KC_F4, KC_PAUS, KC_TRNS, COLEMAK, KC_TRNS, KC_TRNS}, + {KC_F5, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS}, + {KC_F11, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_TRNS}, + + // right hand + {KC_F12, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_TRNS}, + {KC_F6, KC_TRNS, KC_MSTP, KC_TRNS, KC_NO, KC_TRNS}, + {KC_F7, KC_MUTE, KC_MPRV, KC_TRNS, KC_TRNS, KC_TRNS}, + {KC_F8, KC_VOLD, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS}, + {KC_F9, KC_VOLU, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS}, + {KC_F10, KC_TRNS, KC_MSEL, KC_TRNS, KC_TRNS, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO } + }, + +/* Keymap 4: Keypad layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Power | | | | | | | | | | NmLk | KP / | KP * | KP - | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Sleep | | | | | | FN5 | | FN4 | | KP 7 | KP 8 | KP 9 | KP + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Wake | | | | | |------| |------| | KP 4 | KP 5 | KP 6 | KP + | | + * |--------+------+------+------+------+------| FN5 | | FN4 |------+------+------+------+------+--------| + * | | | | | | | | | | | KP 1 | KP 2 | KP 3 |KP Ent| | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | KP 0 | | KP . |KP Ent| | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Keypad Layer +[_KP] = { // layer 4 : Keypad layer + // left hand + {KC_PWR, KC_SLEP, KC_WAKE, KC_TRNS, KC_TRNS, KC_NO }, + {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, 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, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS}, + {KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_TRNS}, + + // right hand + {KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS}, + {KC_NLCK, KC_P7, KC_P4, KC_P1, KC_P0, KC_TRNS}, + {KC_PSLS, KC_P8, KC_P5, KC_P2, KC_NO, KC_TRNS}, + {KC_PAST, KC_P9, KC_P6, KC_P3, KC_PDOT, KC_TRNS}, + {KC_PMNS, KC_PPLS, KC_PPLS, KC_PENT, KC_PENT, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO } + }, + +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/phantom/keymaps/xyverz/keymap.c b/keyboards/phantom/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..5948e4ca54 --- /dev/null +++ b/keyboards/phantom/keymaps/xyverz/keymap.c @@ -0,0 +1,67 @@ +#include "phantom.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 _BL 0 +#define _FL 1 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: (Base Layer) Default Layer + * ,-----------------------------------------------------------------------------. + * |Esc |f1| f2| f3| f4| | f5| f6| f7| f8| | f9|f10|f11|f12| |Prnt|ScLk|Paus| + * |-----------------------------------------------------------| |--------------| + * | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backsp | | Ins|Home|PgUp| + * |-----------------------------------------------------------| |--------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| | Del| End|PgDn| + * |-----------------------------------------------------------| `--------------' + * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return | + * |-----------------------------------------------------------| ,----. + * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | | Up | + * |-----------------------------------------------------------| ,-------------. + * |Ctrl|Gui |Alt | Space |ALT |GUI |_FL |CTRL | |Lft| Dn |Rig | + * `-----------------------------------------------------------' `-------------' + */ +[_BL] = KEYMAP( + KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS, \ + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \ + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_DELETE, KC_END, KC_PGDN, \ + KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, \ + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_UP, \ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), + + /* Keymap _FL: Function Layer + * ,-----------------------------------------------------------------------------. + * |RESET| | | | | | | | | | | | | | | | | | | + * |-----------------------------------------------------------| |--------------| + * | | | | | | | | | | | | | | | | | | | + * |-----------------------------------------------------------| |--------------| + * | | | | | | | | | | | | | | | | | | | + * |-----------------------------------------------------------| `--------------' + * | | | | | | | | | | | | | | + * |-----------------------------------------------------------| ,----. + * | | F1| F2| F3| F4| F5|F6 |F7 |F8 | | | | | | + * |-----------------------------------------------------------| ,-------------. + * | | | | | | | | | | | | | + * `-----------------------------------------------------------' `-------------' + */ +[_FL] = KEYMAP( + 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, KC_TRNS,KC_TRNS,KC_SLEP, \ + RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_MUTE,KC_VOLD,KC_VOLU,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,KC_MSTP,KC_MPLY,KC_MPRV,KC_MNXT,KC_MSEL, 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,KC_TRNS,KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS,KC_TRNS,KC_CALC,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_CAPS, KC_TRNS, \ + KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS) +}; + +enum function_id { + SHIFT_ESC, +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { +} From 0d6035524173219ced32abbfa2e78171edab17ff Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Tue, 9 Aug 2016 23:56:21 -0700 Subject: [PATCH 10/46] Added braces using LSFT(KC_LBRC) and LSFT(KC_RBRC) since the normal RBCR and LBCR didn't work for me. --- keyboards/atreus/keymaps/xyverz/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index 447fbcf10f..f4d4a9cf0f 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 }, {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_F11, KC_F12 }, - {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS, RESET } + {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET } } }; From d1f418d85ddb3bc9594ab71267af92ef1a5b7b0c Mon Sep 17 00:00:00 2001 From: Xyverz Date: Thu, 11 Aug 2016 09:46:05 -0700 Subject: [PATCH 11/46] Update Makefile Corrected spelling of "ATREUS" in all locations. (ATRUES -> ATREUS) --- keyboards/atreus/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/atreus/Makefile b/keyboards/atreus/Makefile index 95ee1d4d7b..5894d231f9 100644 --- a/keyboards/atreus/Makefile +++ b/keyboards/atreus/Makefile @@ -2,11 +2,11 @@ ifdef TEENSY2 OPT_DEFS += -DATREUS_TEENSY2 - ATRUES_UPLOAD_COMMAND = teensy_loader_cli -w -mmcu=$(MCU) $(TARGET).hex + ATREUS_UPLOAD_COMMAND = teensy_loader_cli -w -mmcu=$(MCU) $(TARGET).hex else OPT_DEFS += -DATREUS_ASTAR OPT_DEFS += -DCATERINA_BOOTLOADER - ATRUES_UPLOAD_COMMAND = while [ ! -r $(USB) ]; do sleep 1; done; \ + ATREUS_UPLOAD_COMMAND = while [ ! -r $(USB) ]; do sleep 1; done; \ avrdude -p $(MCU) -c avr109 -U flash:w:$(TARGET).hex -P $(USB) endif @@ -84,5 +84,5 @@ endif USB ?= /dev/cu.usbmodem1411 upload: build - $(ATRUES_UPLOAD_COMMAND) - \ No newline at end of file + $(ATREUS_UPLOAD_COMMAND) + From eeade4af84af073479f38de32d97e99203b29350 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Thu, 11 Aug 2016 09:48:23 -0700 Subject: [PATCH 12/46] Update keymap.c Changed right-hand F-key layout in order to add KC_PLUS to _L2. --- keyboards/atreus/keymaps/xyverz/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index f4d4a9cf0f..0238fdbd39 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -51,8 +51,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }, [_L2] = { /* LAYER 2 */ {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, - {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 }, - {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_F11, KC_F12 }, + {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_PLUS}, + {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12 }, {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET } } }; From 71e1bb2e1cf5fd87cb9cc6f81b830763b38665d4 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Thu, 11 Aug 2016 11:04:57 -0700 Subject: [PATCH 13/46] Delete keymap.c Not ready to submit this one just yet. --- keyboards/phantom/keymaps/xyverz/keymap.c | 67 ----------------------- 1 file changed, 67 deletions(-) delete mode 100644 keyboards/phantom/keymaps/xyverz/keymap.c diff --git a/keyboards/phantom/keymaps/xyverz/keymap.c b/keyboards/phantom/keymaps/xyverz/keymap.c deleted file mode 100644 index 5948e4ca54..0000000000 --- a/keyboards/phantom/keymaps/xyverz/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -#include "phantom.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 _BL 0 -#define _FL 1 - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Keymap _BL: (Base Layer) Default Layer - * ,-----------------------------------------------------------------------------. - * |Esc |f1| f2| f3| f4| | f5| f6| f7| f8| | f9|f10|f11|f12| |Prnt|ScLk|Paus| - * |-----------------------------------------------------------| |--------------| - * | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backsp | | Ins|Home|PgUp| - * |-----------------------------------------------------------| |--------------| - * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| | Del| End|PgDn| - * |-----------------------------------------------------------| `--------------' - * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return | - * |-----------------------------------------------------------| ,----. - * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | | Up | - * |-----------------------------------------------------------| ,-------------. - * |Ctrl|Gui |Alt | Space |ALT |GUI |_FL |CTRL | |Lft| Dn |Rig | - * `-----------------------------------------------------------' `-------------' - */ -[_BL] = KEYMAP( - KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS, \ - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \ - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_DELETE, KC_END, KC_PGDN, \ - KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, \ - KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_UP, \ - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), - - /* Keymap _FL: Function Layer - * ,-----------------------------------------------------------------------------. - * |RESET| | | | | | | | | | | | | | | | | | | - * |-----------------------------------------------------------| |--------------| - * | | | | | | | | | | | | | | | | | | | - * |-----------------------------------------------------------| |--------------| - * | | | | | | | | | | | | | | | | | | | - * |-----------------------------------------------------------| `--------------' - * | | | | | | | | | | | | | | - * |-----------------------------------------------------------| ,----. - * | | F1| F2| F3| F4| F5|F6 |F7 |F8 | | | | | | - * |-----------------------------------------------------------| ,-------------. - * | | | | | | | | | | | | | - * `-----------------------------------------------------------' `-------------' - */ -[_FL] = KEYMAP( - 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, KC_TRNS,KC_TRNS,KC_SLEP, \ - RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_MUTE,KC_VOLD,KC_VOLU,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,KC_MSTP,KC_MPLY,KC_MPRV,KC_MNXT,KC_MSEL, 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,KC_TRNS,KC_TRNS, KC_TRNS, \ - KC_TRNS, KC_TRNS,KC_TRNS,KC_CALC,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_CAPS, KC_TRNS, \ - KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS) -}; - -enum function_id { - SHIFT_ESC, -}; - -const uint16_t PROGMEM fn_actions[] = { - -}; - -void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { -} From b98d47abe544c68ffba745b6643a777f8f61a03c Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Fri, 12 Aug 2016 16:36:07 +0200 Subject: [PATCH 14/46] ergodox: Update my keymap to v1.5 Major changes include: * The **1HAND** layer has been removed. * A `Delete` key is now available on the right thumb cluster. * The **ADORE** layer received a major update, see the updated layout image. * It is now possible to enable automatic logging for the **ADORE** layer, by setting the `ADORE_AUTOLOG` makefile variable to `yes` when compiling the keymap. It is off by default. * The `~` key and the `Media Next/Prev` key have been swapped on the **base** layer. * On the **ARROW** layer, `Backspace` has been replaced by `Enter`. * There is some experimental support for entering Unicode symbols. Signed-off-by: Gergely Nagy --- keyboards/ergodox/keymaps/algernon/Makefile | 7 + .../keymaps/algernon/images/adore-layer.png | Bin 95615 -> 93748 bytes .../keymaps/algernon/images/base-layer.png | Bin 95654 -> 95222 bytes .../algernon/images/one-handed-layer.png | Bin 91140 -> 0 bytes keyboards/ergodox/keymaps/algernon/keymap.c | 2422 ++++++++--------- keyboards/ergodox/keymaps/algernon/readme.md | 52 +- 6 files changed, 1244 insertions(+), 1237 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/algernon/images/one-handed-layer.png diff --git a/keyboards/ergodox/keymaps/algernon/Makefile b/keyboards/ergodox/keymaps/algernon/Makefile index 6bf3976b9d..00194857ac 100644 --- a/keyboards/ergodox/keymaps/algernon/Makefile +++ b/keyboards/ergodox/keymaps/algernon/Makefile @@ -8,10 +8,17 @@ CONSOLE_ENABLE = no TAP_DANCE_ENABLE = yes KEYLOGGER_ENABLE ?= yes +ADORE_AUTOLOG ?= no + ifeq (${FORCE_NKRO},yes) OPT_DEFS += -DFORCE_NKRO endif +ifeq (${ADORE_AUTOLOG},yes) +KEYLOGGER_ENABLE = yes +OPT_DEFS += -DADORE_AUTOLOG +endif + ifeq (${KEYLOGGER_ENABLE},yes) OPT_DEFS += -DKEYLOGGER_ENABLE CONSOLE_ENABLE = yes diff --git a/keyboards/ergodox/keymaps/algernon/images/adore-layer.png b/keyboards/ergodox/keymaps/algernon/images/adore-layer.png index 3df68ea53da8a4be15cfbfe4dac5f0623bc0d0ad..44ad8a1eb7560b552aa6010b2051fcabb00f01cd 100644 GIT binary patch literal 93748 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%0DPqMz0r_IP%FIb(9H>o~Ju1)l8F9@szSiQao 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 diff --git a/keyboards/ergodox/keymaps/algernon/images/base-layer.png b/keyboards/ergodox/keymaps/algernon/images/base-layer.png index 7b25a05b3afa30354fa240925b959233b88fea96..da159fbe2ec5e8e084fee3b9ae934b8c1f5aadab 100644 GIT binary patch literal 95222 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

f~TK9ar2>>0B-$!0=f0{d#G> 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.c` in the keymaps folder, and see keymap document (you can find in top readme.md) and existent keymap files. + +To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: +``` +$ make KEYMAP=[default|jack|] +``` +Keymaps follow the format **__\.c__** and are stored in the `keymaps` folder. + +### Notable forks (which some of the keymap files are from) +- [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck) +- [Pierre's Fork](https://github.com/pcarrier/tmk_keyboard/blob/pcarrier/planck/keyboard/gh60/keymap_planck.c) +- [Nathan's Fork](https://github.com/nathanrosspowell/tmk_keyboard/tree/planck-jack/keyboard/planck) +- [Matthew's Fork](https://github.com/pepers/tmk_keyboard/tree/master/keyboard/planck_grid) From dde9ee572cf01609aaebbc6cbe1f326e7f89b7f4 Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 11:06:46 -1000 Subject: [PATCH 33/46] clean up readnme --- keyboards/minorca/keymaps/rgb/readme.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/keyboards/minorca/keymaps/rgb/readme.md b/keyboards/minorca/keymaps/rgb/readme.md index 50806068ce..051ffe3c64 100644 --- a/keyboards/minorca/keymaps/rgb/readme.md +++ b/keyboards/minorca/keymaps/rgb/readme.md @@ -8,16 +8,18 @@ http://www.40percent.club/2016/08/tiny-whale.html The keymap is a work in progress. The RGB functions are accessed by holding down the TAB key. -Tab + Z Toggle on/off -Tab + X Mode -Tab + C Hue+ -Tab + V Hue- -Tab + B Saturation+ -Tab + N Saturation- -Tab + M Brightness+ -Tab + , Brightness- +*Tab + Z Toggle on/off +*Tab + X Mode +*Tab + C Hue+ +*Tab + V Hue- +*Tab + B Saturation+ +*Tab + N Saturation- +*Tab + M Brightness+ +*Tab + , Brightness- Example wiring: +WS2812 data pin is connected to D2 + ![wiring](wiring1.jpg) ![wiring closeup](wiring2.jpg) From 65060ad000930b4d735760cd8951ae0f462d5f14 Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 11:07:35 -1000 Subject: [PATCH 34/46] Fix list --- keyboards/minorca/keymaps/rgb/readme.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/keyboards/minorca/keymaps/rgb/readme.md b/keyboards/minorca/keymaps/rgb/readme.md index 051ffe3c64..00b6d6cd8c 100644 --- a/keyboards/minorca/keymaps/rgb/readme.md +++ b/keyboards/minorca/keymaps/rgb/readme.md @@ -2,20 +2,20 @@ ![wiring](example.jpg) -Exmaple of adding WS2812b LEDs to a MinOrca. +Example of adding WS2812b LEDs to a MinOrca. http://www.40percent.club/2016/08/tiny-whale.html The keymap is a work in progress. The RGB functions are accessed by holding down the TAB key. -*Tab + Z Toggle on/off -*Tab + X Mode -*Tab + C Hue+ -*Tab + V Hue- -*Tab + B Saturation+ -*Tab + N Saturation- -*Tab + M Brightness+ -*Tab + , Brightness- +* Tab + Z Toggle on/off +* Tab + X Mode +* Tab + C Hue+ +* Tab + V Hue- +* Tab + B Saturation+ +* Tab + N Saturation- +* Tab + M Brightness+ +* Tab + , Brightness- Example wiring: From 1eaa685872745d3ae01afb79bad8f25a4fd1029d Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 11:08:15 -1000 Subject: [PATCH 35/46] Correct data pin to D5 --- keyboards/minorca/keymaps/rgb/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/minorca/keymaps/rgb/readme.md b/keyboards/minorca/keymaps/rgb/readme.md index 00b6d6cd8c..f50dfa546f 100644 --- a/keyboards/minorca/keymaps/rgb/readme.md +++ b/keyboards/minorca/keymaps/rgb/readme.md @@ -19,7 +19,7 @@ The keymap is a work in progress. The RGB functions are accessed by holding down Example wiring: -WS2812 data pin is connected to D2 +WS2812 data pin is connected to D5 ![wiring](wiring1.jpg) ![wiring closeup](wiring2.jpg) From f58a67c991fa15f6177ebb9ec74e831b851bb38e Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 11:10:12 -1000 Subject: [PATCH 36/46] cleanup readme --- keyboards/minorca/keymaps/readme.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/minorca/keymaps/readme.md b/keyboards/minorca/keymaps/readme.md index 54fb5f6d9e..058923ba25 100644 --- a/keyboards/minorca/keymaps/readme.md +++ b/keyboards/minorca/keymaps/readme.md @@ -17,7 +17,7 @@ When adding your keymap to this list, keep it organised alphabetically (select l * **folder_name** description -# List of Planck keymaps +# List of Minorca keymaps -* **default** default Planck layout -* **cbbrowne** cbbrowne's Planck layout \ No newline at end of file +* **default** default Minorca layout +* **rgb** layout with WS2812b control From 503ec7f9f6f9c15049f02c3753afdfe2d0db629b Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 11:15:46 -1000 Subject: [PATCH 37/46] Updated readme Added link to Minorca/Sebright blog. --- keyboards/minorca/readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/keyboards/minorca/readme.md b/keyboards/minorca/readme.md index 1d655dfe48..93c767954d 100644 --- a/keyboards/minorca/readme.md +++ b/keyboards/minorca/readme.md @@ -2,6 +2,8 @@ minorca keyboard firmware ====================== Handwired 40% keyboard +http://www.panc.co/blog/minorcasebright-information-page + ## Quantum MK Firmware For the full Quantum feature list, see [the parent readme.md](/readme.md). From 959c48e146ec3c2192e8d261d78d27b80342ad30 Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 14:13:58 -1000 Subject: [PATCH 38/46] moved to handwired folder --- keyboards/{ => handwired}/minorca/Makefile | 2 +- keyboards/{ => handwired}/minorca/config.h | 0 .../minorca/keymaps/default/Makefile | 2 +- .../minorca/keymaps/default/config.h | 0 .../minorca/keymaps/default/keymap.c | 0 .../minorca/keymaps/default/readme.md | 0 keyboards/{ => handwired}/minorca/keymaps/readme.md | 0 .../{ => handwired}/minorca/keymaps/rgb/Makefile | 2 +- .../{ => handwired}/minorca/keymaps/rgb/config.h | 0 .../{ => handwired}/minorca/keymaps/rgb/example.jpg | Bin .../{ => handwired}/minorca/keymaps/rgb/keymap.c | 0 .../{ => handwired}/minorca/keymaps/rgb/readme.md | 0 .../{ => handwired}/minorca/keymaps/rgb/wiring1.jpg | Bin .../{ => handwired}/minorca/keymaps/rgb/wiring2.jpg | Bin keyboards/{ => handwired}/minorca/minorca.c | 0 keyboards/{ => handwired}/minorca/minorca.h | 0 keyboards/{ => handwired}/minorca/readme.md | 0 17 files changed, 3 insertions(+), 3 deletions(-) rename keyboards/{ => handwired}/minorca/Makefile (99%) rename keyboards/{ => handwired}/minorca/config.h (100%) rename keyboards/{ => handwired}/minorca/keymaps/default/Makefile (97%) rename keyboards/{ => handwired}/minorca/keymaps/default/config.h (100%) rename keyboards/{ => handwired}/minorca/keymaps/default/keymap.c (100%) rename keyboards/{ => handwired}/minorca/keymaps/default/readme.md (100%) rename keyboards/{ => handwired}/minorca/keymaps/readme.md (100%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/Makefile (97%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/config.h (100%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/example.jpg (100%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/keymap.c (100%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/readme.md (100%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/wiring1.jpg (100%) rename keyboards/{ => handwired}/minorca/keymaps/rgb/wiring2.jpg (100%) rename keyboards/{ => handwired}/minorca/minorca.c (100%) rename keyboards/{ => handwired}/minorca/minorca.h (100%) rename keyboards/{ => handwired}/minorca/readme.md (100%) diff --git a/keyboards/minorca/Makefile b/keyboards/handwired/minorca/Makefile similarity index 99% rename from keyboards/minorca/Makefile rename to keyboards/handwired/minorca/Makefile index 8cff000493..155c1f9a29 100644 --- a/keyboards/minorca/Makefile +++ b/keyboards/handwired/minorca/Makefile @@ -67,5 +67,5 @@ RGBLIGHT_ENABLE ?= yes # Enable WS2812 RGB underlight. Do not enable this SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR - include ../../Makefile + include ../../../Makefile endif \ No newline at end of file diff --git a/keyboards/minorca/config.h b/keyboards/handwired/minorca/config.h similarity index 100% rename from keyboards/minorca/config.h rename to keyboards/handwired/minorca/config.h diff --git a/keyboards/minorca/keymaps/default/Makefile b/keyboards/handwired/minorca/keymaps/default/Makefile similarity index 97% rename from keyboards/minorca/keymaps/default/Makefile rename to keyboards/handwired/minorca/keymaps/default/Makefile index 8dc851fddf..a573488a5e 100644 --- a/keyboards/minorca/keymaps/default/Makefile +++ b/keyboards/handwired/minorca/keymaps/default/Makefile @@ -21,5 +21,5 @@ RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR - include ../../../../Makefile + include ../../../../../Makefile endif diff --git a/keyboards/minorca/keymaps/default/config.h b/keyboards/handwired/minorca/keymaps/default/config.h similarity index 100% rename from keyboards/minorca/keymaps/default/config.h rename to keyboards/handwired/minorca/keymaps/default/config.h diff --git a/keyboards/minorca/keymaps/default/keymap.c b/keyboards/handwired/minorca/keymaps/default/keymap.c similarity index 100% rename from keyboards/minorca/keymaps/default/keymap.c rename to keyboards/handwired/minorca/keymaps/default/keymap.c diff --git a/keyboards/minorca/keymaps/default/readme.md b/keyboards/handwired/minorca/keymaps/default/readme.md similarity index 100% rename from keyboards/minorca/keymaps/default/readme.md rename to keyboards/handwired/minorca/keymaps/default/readme.md diff --git a/keyboards/minorca/keymaps/readme.md b/keyboards/handwired/minorca/keymaps/readme.md similarity index 100% rename from keyboards/minorca/keymaps/readme.md rename to keyboards/handwired/minorca/keymaps/readme.md diff --git a/keyboards/minorca/keymaps/rgb/Makefile b/keyboards/handwired/minorca/keymaps/rgb/Makefile similarity index 97% rename from keyboards/minorca/keymaps/rgb/Makefile rename to keyboards/handwired/minorca/keymaps/rgb/Makefile index 230f75a628..2b2af13358 100644 --- a/keyboards/minorca/keymaps/rgb/Makefile +++ b/keyboards/handwired/minorca/keymaps/rgb/Makefile @@ -21,5 +21,5 @@ RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR - include ../../../../Makefile + include ../../../../../Makefile endif diff --git a/keyboards/minorca/keymaps/rgb/config.h b/keyboards/handwired/minorca/keymaps/rgb/config.h similarity index 100% rename from keyboards/minorca/keymaps/rgb/config.h rename to keyboards/handwired/minorca/keymaps/rgb/config.h diff --git a/keyboards/minorca/keymaps/rgb/example.jpg b/keyboards/handwired/minorca/keymaps/rgb/example.jpg similarity index 100% rename from keyboards/minorca/keymaps/rgb/example.jpg rename to keyboards/handwired/minorca/keymaps/rgb/example.jpg diff --git a/keyboards/minorca/keymaps/rgb/keymap.c b/keyboards/handwired/minorca/keymaps/rgb/keymap.c similarity index 100% rename from keyboards/minorca/keymaps/rgb/keymap.c rename to keyboards/handwired/minorca/keymaps/rgb/keymap.c diff --git a/keyboards/minorca/keymaps/rgb/readme.md b/keyboards/handwired/minorca/keymaps/rgb/readme.md similarity index 100% rename from keyboards/minorca/keymaps/rgb/readme.md rename to keyboards/handwired/minorca/keymaps/rgb/readme.md diff --git a/keyboards/minorca/keymaps/rgb/wiring1.jpg b/keyboards/handwired/minorca/keymaps/rgb/wiring1.jpg similarity index 100% rename from keyboards/minorca/keymaps/rgb/wiring1.jpg rename to keyboards/handwired/minorca/keymaps/rgb/wiring1.jpg diff --git a/keyboards/minorca/keymaps/rgb/wiring2.jpg b/keyboards/handwired/minorca/keymaps/rgb/wiring2.jpg similarity index 100% rename from keyboards/minorca/keymaps/rgb/wiring2.jpg rename to keyboards/handwired/minorca/keymaps/rgb/wiring2.jpg diff --git a/keyboards/minorca/minorca.c b/keyboards/handwired/minorca/minorca.c similarity index 100% rename from keyboards/minorca/minorca.c rename to keyboards/handwired/minorca/minorca.c diff --git a/keyboards/minorca/minorca.h b/keyboards/handwired/minorca/minorca.h similarity index 100% rename from keyboards/minorca/minorca.h rename to keyboards/handwired/minorca/minorca.h diff --git a/keyboards/minorca/readme.md b/keyboards/handwired/minorca/readme.md similarity index 100% rename from keyboards/minorca/readme.md rename to keyboards/handwired/minorca/readme.md From 63e5782d2cdf0ee282ad434c773463d9da9db6b3 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sat, 13 Aug 2016 10:43:22 +0200 Subject: [PATCH 39/46] process_unicode: Small refactor & linux fix This moves the unicode input start / end sequences into their own functions, so keymaps and other functionality can build on it too. At the same time, it changes how the Linux variant works, to match reality: CTRL+SHIFT must be unregistered too, and we close the thing with a Space instead. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 76 ++++++++++++++--------- quantum/process_keycode/process_unicode.h | 3 + 2 files changed, 48 insertions(+), 31 deletions(-) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index 3fcac15ce3..55e47f1794 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -18,40 +18,54 @@ void set_unicode_input_mode(uint8_t os_target) input_mode = os_target; } +void unicode_input_start (void) { + switch(input_mode) { + case UC_OSX: + register_code(KC_LALT); + break; + case UC_LNX: + register_code(KC_LCTL); + register_code(KC_LSFT); + register_code(KC_U); + unregister_code(KC_U); + unregister_code(KC_LSFT); + unregister_code(KC_LCTL); + break; + case UC_WIN: + register_code(KC_LALT); + register_code(KC_PPLS); + unregister_code(KC_PPLS); + break; + } +} + +void unicode_input_finish (void) { + switch(input_mode) { + case UC_OSX: + case UC_WIN: + unregister_code(KC_LALT); + break; + case UC_LNX: + register_code(KC_SPC); + unregister_code(KC_SPC); + break; + } +} + +void register_hex(uint16_t hex) { + for(int i = 3; i >= 0; i--) { + uint8_t digit = ((hex >> (i*4)) & 0xF); + register_code(hex_to_keycode(digit)); + unregister_code(hex_to_keycode(digit)); + } +} + bool process_unicode(uint16_t keycode, keyrecord_t *record) { if (keycode > QK_UNICODE && record->event.pressed) { uint16_t unicode = keycode & 0x7FFF; - switch(input_mode) { - case UC_OSX: - register_code(KC_LALT); - break; - case UC_LNX: - register_code(KC_LCTL); - register_code(KC_LSFT); - register_code(KC_U); - unregister_code(KC_U); - break; - case UC_WIN: - register_code(KC_LALT); - register_code(KC_PPLS); - unregister_code(KC_PPLS); - break; - } - for(int i = 3; i >= 0; i--) { - uint8_t digit = ((unicode >> (i*4)) & 0xF); - register_code(hex_to_keycode(digit)); - unregister_code(hex_to_keycode(digit)); - } - switch(input_mode) { - case UC_OSX: - case UC_WIN: - unregister_code(KC_LALT); - break; - case UC_LNX: - unregister_code(KC_LCTL); - unregister_code(KC_LSFT); - break; - } + unicode_input_start(); + register_hex(unicode); + unicode_input_finish(); } return true; } \ No newline at end of file diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index ca17f8f669..f719a12261 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -9,6 +9,9 @@ #define UC_BSD 3 void set_unicode_input_mode(uint8_t os_target); +void unicode_input_start(void); +void unicode_input_finish(void); +void register_hex(uint16_t hex); bool process_unicode(uint16_t keycode, keyrecord_t *record); From fa06a163607e8c6c4bd0968c2de96a9a298b777c Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sat, 13 Aug 2016 10:46:38 +0200 Subject: [PATCH 40/46] process_unicode: Add a way to enter unicode symbols by name The purpose of this change is to allow keymaps to specify a dictionary of unicode symbol name to code mappings, and let the person at the keyboard enter unicode symbols by name. This is done by having a way to trigger unicode symbol input mode, when all keys are cached until Esc, Enter or Space are pressed. Once that happens, we try to look up the symbol from our lookup table. If found, we erase back, and type the unicode magic in to get that symbol. If not found, we still erase back, start unicode input mode, and replay what the user typed in. Signed-off-by: Gergely Nagy --- Makefile | 7 +- quantum/process_keycode/process_unicode.c | 93 ++++++++++++++++++++++- quantum/process_keycode/process_unicode.h | 29 ++++++- 3 files changed, 126 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 053c8532af..693edc9f06 100644 --- a/Makefile +++ b/Makefile @@ -198,6 +198,11 @@ ifeq ($(strip $(AUDIO_ENABLE)), yes) SRC += $(QUANTUM_DIR)/audio/luts.c endif +ifeq ($(strip $(UCIS_ENABLE)), yes) + OPT_DEFS += -DUCIS_ENABLE + UNICODE_ENABLE = yes +endif + ifeq ($(strip $(UNICODE_ENABLE)), yes) OPT_DEFS += -DUNICODE_ENABLE SRC += $(QUANTUM_DIR)/process_keycode/process_unicode.c @@ -273,4 +278,4 @@ BUILD_DATE := $(shell date +"%Y-%m-%d-%H:%M:%S") OPT_DEFS += -DQMK_KEYBOARD=\"$(KEYBOARD)\" -DQMK_KEYMAP=\"$(KEYMAP)\" $(shell echo '#define QMK_VERSION "$(GIT_VERSION)"' > $(QUANTUM_PATH)/version.h) -$(shell echo '#define QMK_BUILDDATE "$(BUILD_DATE)"' >> $(QUANTUM_PATH)/version.h) \ No newline at end of file +$(shell echo '#define QMK_BUILDDATE "$(BUILD_DATE)"' >> $(QUANTUM_PATH)/version.h) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index 55e47f1794..8a65093008 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -68,4 +68,95 @@ bool process_unicode(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } return true; -} \ No newline at end of file +} + +#ifdef UCIS_ENABLE +void qk_ucis_start(void) { + qk_ucis_state.count = 0; + qk_ucis_state.in_progress = true; + + unicode_input_start(); + register_hex(0x2328); + unicode_input_finish(); +} + +static bool is_uni_seq(char *seq) { + uint8_t i; + + for (i = 0; seq[i]; i++) { + uint16_t code; + if (('1' <= seq[i]) && (seq[i] <= '0')) + code = seq[i] - '1' + KC_1; + else + code = seq[i] - 'a' + KC_A; + + if (i > qk_ucis_state.count || qk_ucis_state.codes[i] != code) + return false; + } + + return (qk_ucis_state.codes[i] == KC_ENT || + qk_ucis_state.codes[i] == KC_SPC); +} + +__attribute__((weak)) +void qk_ucis_symbol_fallback (void) { + for (uint8_t i = 0; i < qk_ucis_state.count - 1; i++) { + uint8_t code = qk_ucis_state.codes[i]; + register_code(code); + unregister_code(code); + } +} + +bool process_record_ucis (uint16_t keycode, keyrecord_t *record) { + uint8_t i; + + if (!qk_ucis_state.in_progress || !record->event.pressed) + return true; + + qk_ucis_state.codes[qk_ucis_state.count] = keycode; + qk_ucis_state.count++; + + if (keycode == KC_BSPC) { + if (qk_ucis_state.count >= 2) { + qk_ucis_state.count -= 2; + return true; + } else { + qk_ucis_state.count--; + return false; + } + } + + if (keycode == KC_ENT || keycode == KC_SPC || keycode == KC_ESC) { + bool symbol_found = false; + + for (i = qk_ucis_state.count; i > 0; i--) { + register_code (KC_BSPC); + unregister_code (KC_BSPC); + } + + if (keycode == KC_ESC) { + qk_ucis_state.in_progress = false; + return false; + } + + unicode_input_start(); + for (i = 0; ucis_symbol_table[i].symbol; i++) { + if (is_uni_seq (ucis_symbol_table[i].symbol)) { + symbol_found = true; + for (uint8_t j = 0; ucis_symbol_table[i].codes[j]; j++) { + register_hex(ucis_symbol_table[i].codes[j]); + } + break; + } + } + if (!symbol_found) { + qk_ucis_symbol_fallback(); + } + unicode_input_finish(); + + qk_ucis_state.in_progress = false; + return false; + } + return true; +} +#endif diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index f719a12261..372ea2f0df 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -15,6 +15,33 @@ void register_hex(uint16_t hex); bool process_unicode(uint16_t keycode, keyrecord_t *record); +#ifdef UCIS_ENABLE +#ifndef UCIS_MAX_SYMBOL_LENGTH +#define UCIS_MAX_SYMBOL_LENGTH 32 +#endif + +typedef struct { + char *symbol; + uint16_t codes[4]; +} qk_ucis_symbol_t; + +struct { + uint8_t count; + uint16_t codes[UCIS_MAX_SYMBOL_LENGTH]; + bool in_progress:1; +} qk_ucis_state; + +#define UCIS_TABLE(...) {__VA_ARGS__, {NULL, {}}} +#define UCIS_SYM(name, ...) {name, {__VA_ARGS__, 0}} + +extern const qk_ucis_symbol_t ucis_symbol_table[]; + +void qk_ucis_start(void); +void qk_ucis_symbol_fallback (void); +bool process_record_ucis (uint16_t keycode, keyrecord_t *record); + +#endif + #define UC_BSPC UC(0x0008) #define UC_SPC UC(0x0020) @@ -122,4 +149,4 @@ bool process_unicode(uint16_t keycode, keyrecord_t *record); #define UC_TILD UC(0x007E) #define UC_DEL UC(0x007F) -#endif \ No newline at end of file +#endif From 0b6861827faea747345ea38202d64c8004ab128c Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sat, 13 Aug 2016 11:11:22 +0200 Subject: [PATCH 41/46] process_unicode: Handle too long UCIS symbol names If the symbol name being entered is longer than the max, stop recording it, and stop processing keycodes apart from the ones that can delete, finish or cancel the sequence. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index 8a65093008..851a96eaab 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -110,7 +110,15 @@ void qk_ucis_symbol_fallback (void) { bool process_record_ucis (uint16_t keycode, keyrecord_t *record) { uint8_t i; - if (!qk_ucis_state.in_progress || !record->event.pressed) + if (!qk_ucis_state.in_progress) + return true; + + if (qk_ucis_state.count >= UCIS_MAX_SYMBOL_LENGTH && + !(keycode == KC_BSPC || keycode == KC_ESC || keycode == KC_SPC || keycode == KC_ENT)) { + return false; + } + + if (!record->event.pressed) return true; qk_ucis_state.codes[qk_ucis_state.count] = keycode; From 857aa5bef6a74f8785a7039feea5286c07bf7067 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sat, 13 Aug 2016 11:14:42 +0200 Subject: [PATCH 42/46] process_unicode: Call process_ucis() automatically If UCIS is enabled, call process_ucis() automatically from process_record_quantum(). Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 2 +- quantum/process_keycode/process_unicode.h | 2 +- quantum/quantum.c | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index 851a96eaab..d714344117 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -107,7 +107,7 @@ void qk_ucis_symbol_fallback (void) { } } -bool process_record_ucis (uint16_t keycode, keyrecord_t *record) { +bool process_ucis (uint16_t keycode, keyrecord_t *record) { uint8_t i; if (!qk_ucis_state.in_progress) diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index 372ea2f0df..c5005897e0 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -38,7 +38,7 @@ extern const qk_ucis_symbol_t ucis_symbol_table[]; void qk_ucis_start(void); void qk_ucis_symbol_fallback (void); -bool process_record_ucis (uint16_t keycode, keyrecord_t *record); +bool process_ucis (uint16_t keycode, keyrecord_t *record); #endif diff --git a/quantum/quantum.c b/quantum/quantum.c index bc2da510f2..a4c5c2ddbc 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -86,6 +86,9 @@ bool process_record_quantum(keyrecord_t *record) { #endif #ifdef UNICODE_ENABLE process_unicode(keycode, record) && + #endif + #ifdef UCIS_ENABLE + process_ucis(keycode, record) && #endif true)) { return false; From 234dd276cf03be6fd6961473e9d9c8f35deec682 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sun, 14 Aug 2016 10:37:51 +0200 Subject: [PATCH 43/46] process_unicode: Make the startup overridable Extract out the part of `qk_ucis_start` that inputs the placeholder symbol, and make it weak, so it can be overridden. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 5 +++++ quantum/process_keycode/process_unicode.h | 1 + 2 files changed, 6 insertions(+) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index d714344117..c474483e7f 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -75,6 +75,11 @@ void qk_ucis_start(void) { qk_ucis_state.count = 0; qk_ucis_state.in_progress = true; + qk_ucis_start_user(); +} + +__attribute__((weak)) +void qk_ucis_start_user(void) { unicode_input_start(); register_hex(0x2328); unicode_input_finish(); diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index c5005897e0..75607e40e8 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -37,6 +37,7 @@ struct { extern const qk_ucis_symbol_t ucis_symbol_table[]; void qk_ucis_start(void); +void qk_ucis_start_user(void); void qk_ucis_symbol_fallback (void); bool process_ucis (uint16_t keycode, keyrecord_t *record); From a312cbf712764277e0dbbbb99410c2f6fc6c7484 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sun, 14 Aug 2016 14:34:52 +0200 Subject: [PATCH 44/46] process_unicode: Use uint32_t for UCIS purposes Use a single uint32_t to store the unicode of a symbol, instead of an array of uint16_ts. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 12 +++++++++--- quantum/process_keycode/process_unicode.h | 7 ++++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index c474483e7f..698cc3c025 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -60,6 +60,14 @@ void register_hex(uint16_t hex) { } } +void register_hex32(uint32_t hex) { + for(int i = 7; i >= 0; i--) { + uint8_t digit = ((hex >> (i*8)) & 0xF); + register_code(hex_to_keycode(digit)); + unregister_code(hex_to_keycode(digit)); + } +} + bool process_unicode(uint16_t keycode, keyrecord_t *record) { if (keycode > QK_UNICODE && record->event.pressed) { uint16_t unicode = keycode & 0x7FFF; @@ -156,9 +164,7 @@ bool process_ucis (uint16_t keycode, keyrecord_t *record) { for (i = 0; ucis_symbol_table[i].symbol; i++) { if (is_uni_seq (ucis_symbol_table[i].symbol)) { symbol_found = true; - for (uint8_t j = 0; ucis_symbol_table[i].codes[j]; j++) { - register_hex(ucis_symbol_table[i].codes[j]); - } + register_hex32(ucis_symbol_table[i].code); break; } } diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index 75607e40e8..dd6dd71384 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -12,6 +12,7 @@ void set_unicode_input_mode(uint8_t os_target); void unicode_input_start(void); void unicode_input_finish(void); void register_hex(uint16_t hex); +void register_hex32(uint32_t hex); bool process_unicode(uint16_t keycode, keyrecord_t *record); @@ -22,7 +23,7 @@ bool process_unicode(uint16_t keycode, keyrecord_t *record); typedef struct { char *symbol; - uint16_t codes[4]; + uint32_t code; } qk_ucis_symbol_t; struct { @@ -31,8 +32,8 @@ struct { bool in_progress:1; } qk_ucis_state; -#define UCIS_TABLE(...) {__VA_ARGS__, {NULL, {}}} -#define UCIS_SYM(name, ...) {name, {__VA_ARGS__, 0}} +#define UCIS_TABLE(...) {__VA_ARGS__, {NULL, 0}} +#define UCIS_SYM(name, code) {name, code} extern const qk_ucis_symbol_t ucis_symbol_table[]; From 43d08629cf275d0b32281ffe8785258fff226b49 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Mon, 15 Aug 2016 10:02:05 +0200 Subject: [PATCH 45/46] process_unicode: Replace register_hex32 It turns out that register_hex32 did not work reliably, and some systems only allow 7 chars after the unicode magic sequence, while others allow 8. To remedy the situation, store the codes as strings, and type those in instead of doing bit shifting magic. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 37 +++++++++++++++++------ quantum/process_keycode/process_unicode.h | 8 ++--- 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index 698cc3c025..d8a0f667cd 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -60,14 +60,6 @@ void register_hex(uint16_t hex) { } } -void register_hex32(uint32_t hex) { - for(int i = 7; i >= 0; i--) { - uint8_t digit = ((hex >> (i*8)) & 0xF); - register_code(hex_to_keycode(digit)); - unregister_code(hex_to_keycode(digit)); - } -} - bool process_unicode(uint16_t keycode, keyrecord_t *record) { if (keycode > QK_UNICODE && record->event.pressed) { uint16_t unicode = keycode & 0x7FFF; @@ -120,6 +112,33 @@ void qk_ucis_symbol_fallback (void) { } } +void register_ucis(const char *hex) { + for(int i = 0; hex[i]; i++) { + uint8_t kc = 0; + char c = hex[i]; + + switch (c) { + case '0': + kc = KC_0; + break; + case '1' ... '9': + kc = c - '1' + KC_1; + break; + case 'a' ... 'f': + kc = c - 'a' + KC_A; + break; + case 'A' ... 'F': + kc = c - 'A' + KC_A; + break; + } + + if (kc) { + register_code (kc); + unregister_code (kc); + } + } +} + bool process_ucis (uint16_t keycode, keyrecord_t *record) { uint8_t i; @@ -164,7 +183,7 @@ bool process_ucis (uint16_t keycode, keyrecord_t *record) { for (i = 0; ucis_symbol_table[i].symbol; i++) { if (is_uni_seq (ucis_symbol_table[i].symbol)) { symbol_found = true; - register_hex32(ucis_symbol_table[i].code); + register_ucis(ucis_symbol_table[i].code + 2); break; } } diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index dd6dd71384..be24ddc2bb 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -12,7 +12,6 @@ void set_unicode_input_mode(uint8_t os_target); void unicode_input_start(void); void unicode_input_finish(void); void register_hex(uint16_t hex); -void register_hex32(uint32_t hex); bool process_unicode(uint16_t keycode, keyrecord_t *record); @@ -23,7 +22,7 @@ bool process_unicode(uint16_t keycode, keyrecord_t *record); typedef struct { char *symbol; - uint32_t code; + char *code; } qk_ucis_symbol_t; struct { @@ -32,14 +31,15 @@ struct { bool in_progress:1; } qk_ucis_state; -#define UCIS_TABLE(...) {__VA_ARGS__, {NULL, 0}} -#define UCIS_SYM(name, code) {name, code} +#define UCIS_TABLE(...) {__VA_ARGS__, {NULL, NULL}} +#define UCIS_SYM(name, code) {name, #code} extern const qk_ucis_symbol_t ucis_symbol_table[]; void qk_ucis_start(void); void qk_ucis_start_user(void); void qk_ucis_symbol_fallback (void); +void register_ucis(const char *hex); bool process_ucis (uint16_t keycode, keyrecord_t *record); #endif From e8845f0daf8dc7a7674dc5420cc5a684bbbea09b Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Mon, 15 Aug 2016 10:07:13 +0200 Subject: [PATCH 46/46] process_unicode: Introduce a slight delay When entering unicode codes, use some delay, so the OS has time to process the information. This is not needed on all systems, but some seem to require it. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 4 ++++ quantum/process_keycode/process_unicode.h | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index d8a0f667cd..72c809c30e 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -37,6 +37,7 @@ void unicode_input_start (void) { unregister_code(KC_PPLS); break; } + wait_ms(UNICODE_TYPE_DELAY); } void unicode_input_finish (void) { @@ -109,6 +110,7 @@ void qk_ucis_symbol_fallback (void) { uint8_t code = qk_ucis_state.codes[i]; register_code(code); unregister_code(code); + wait_ms(UNICODE_TYPE_DELAY); } } @@ -135,6 +137,7 @@ void register_ucis(const char *hex) { if (kc) { register_code (kc); unregister_code (kc); + wait_ms (UNICODE_TYPE_DELAY); } } } @@ -172,6 +175,7 @@ bool process_ucis (uint16_t keycode, keyrecord_t *record) { for (i = qk_ucis_state.count; i > 0; i--) { register_code (KC_BSPC); unregister_code (KC_BSPC); + wait_ms(UNICODE_TYPE_DELAY); } if (keycode == KC_ESC) { diff --git a/quantum/process_keycode/process_unicode.h b/quantum/process_keycode/process_unicode.h index be24ddc2bb..85364e8eb3 100644 --- a/quantum/process_keycode/process_unicode.h +++ b/quantum/process_keycode/process_unicode.h @@ -8,6 +8,10 @@ #define UC_WIN 2 #define UC_BSD 3 +#ifndef UNICODE_TYPE_DELAY +#define UNICODE_TYPE_DELAY 10 +#endif + void set_unicode_input_mode(uint8_t os_target); void unicode_input_start(void); void unicode_input_finish(void);

{4mc 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 z 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.pressed) - return MACRO_NONE; - - layer_off (HUN); - - if (keyboard_report->mods & MOD_BIT (KC_LSFT)) { - hold_shift = 1; - need_shift = 1; - unregister_code (KC_LSFT); - } - if ((get_oneshot_mods () & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out ()) { - need_shift = 1; - hold_shift = 0; - unregister_code (KC_LSFT); - } - - clear_oneshot_mods (); - - register_code (KC_RALT); - unregister_code (KC_RALT); - if (accent == (KC_DQT)) { - register_code (KC_RSFT); - } - register_code (accent); - unregister_code (accent); - if (need_shift && accent != (KC_DQT)) { - register_code (KC_RSFT); - } else if (accent == (KC_DQT) && !need_shift) { - unregister_code (KC_RSFT); - } - register_code (hun_char); - unregister_code (hun_char); - if (need_shift || accent == (KC_DQT)) - unregister_code (KC_RSFT); - if (hold_shift) - register_code (KC_LSFT); - - return MACRO_NONE; -} - -void ang_handle_kf (keyrecord_t *record, uint8_t id) -{ - uint8_t code = id - KF_1; - - if (record->event.pressed) { - kf_timers[code] = timer_read (); - } else { - uint8_t kc; - - if (timer_elapsed (kf_timers[code]) > TAPPING_TERM) { - // Long press - kc = KC_F1 + code; - } else { - if (id == KF_11) - kc = KC_EQL; - else - kc = KC_1 + code; - } - - register_code (kc); - unregister_code (kc); - } -} - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case A_ESC: - if (record->event.pressed) { - if ((get_oneshot_mods ()) && !has_oneshot_mods_timed_out ()) { - clear_oneshot_mods (); - } else { - register_code (KC_ESC); - } - layer_off (HUN); - } else { - unregister_code (KC_ESC); - } - break; - - case A_MPN: - if (record->event.pressed) { - if (keyboard_report->mods & MOD_BIT(KC_LSFT) || - ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { - int oneshot = ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out()); - - if (oneshot) - clear_oneshot_mods (); - unregister_code (KC_LSFT); - - register_code (KC_MPRV); - unregister_code (KC_MPRV); - - if (!oneshot) - register_code (KC_LSFT); - } else { - return MACRO (T(MNXT), END); - } - } - break; - - /* Hungarian layer */ - case HU_AA: - return ang_do_hun (record, KC_QUOT, KC_A); - case HU_OO: - return ang_do_hun (record, KC_QUOT, KC_O); - case HU_EE: - return ang_do_hun (record, KC_QUOT, KC_E); - case HU_UU: - return ang_do_hun (record, KC_QUOT, KC_U); - case HU_II: - return ang_do_hun (record, KC_QUOT, KC_I); - case HU_OE: - return ang_do_hun (record, KC_DQT, KC_O); - case HU_UE: - return ang_do_hun (record, KC_DQT, KC_U); - case HU_OEE: - return ang_do_hun (record, KC_EQL, KC_O); - case HU_UEE: - return ang_do_hun (record, KC_EQL, KC_U); - - /* Mouse movement */ - case A_MUL: - if (record->event.pressed) { - mousekey_on(KC_MS_UP); - mousekey_on(KC_MS_LEFT); - } else { - mousekey_off(KC_MS_UP); - mousekey_off(KC_MS_LEFT); - } - mousekey_send(); - break; - - case A_MUR: - if (record->event.pressed) { - mousekey_on(KC_MS_UP); - mousekey_on(KC_MS_RIGHT); - } else { - mousekey_off(KC_MS_UP); - mousekey_off(KC_MS_RIGHT); - } - mousekey_send(); - break; - - case A_MDL: - if (record->event.pressed) { - mousekey_on(KC_MS_DOWN); - mousekey_on(KC_MS_LEFT); - } else { - mousekey_off(KC_MS_DOWN); - mousekey_off(KC_MS_LEFT); - } - mousekey_send(); - break; - - case A_MDR: - if (record->event.pressed) { - mousekey_on(KC_MS_DOWN); - mousekey_on(KC_MS_RIGHT); - } else { - mousekey_off(KC_MS_DOWN); - mousekey_off(KC_MS_RIGHT); - } - mousekey_send(); - break; - - /* Plover base */ - case A_PLVR: - toggle_steno(record->event.pressed); - break; - - /* GUI & AppSel */ - case A_GUI: - if (record->event.pressed) { - register_code (KC_LGUI); - if (record->tap.count && !record->tap.interrupted) { - if (record->tap.count >= 2) { - register_code (KC_W); - layer_on (APPSEL); - set_oneshot_layer (APPSEL, ONESHOT_START); - } - } else { - record->tap.count = 0; - } - gui_timer = 0; - } else { - if (record->tap.count >= 2) - { - unregister_code (KC_W); - clear_oneshot_layer_state (ONESHOT_PRESSED); - } - gui_timer = timer_read (); - } - break; - - case APP_SLK: - return MACRODOWN(T(S), T(L), T(A), T(C), T(K), T(ENT), END); - - case APP_EMCS: - return MACRODOWN(T(E), T(M), T(A), T(C), T(S), T(ENT), END); - - case APP_TERM: - return MACRODOWN(T(T), T(E), T(R), T(M), T(ENT), END); - - case APP_CHRM: - return MACRODOWN(T(C), T(H), T(R), T(O), T(M), T(ENT), END); - - case APP_MSIC: - return MACRODOWN(T(R), T(H), T(Y), T(T), T(H), T(M), T(B), T(O), T(X), T(ENT), END); - - /* Function keys */ - case KF_1 ... KF_11: - ang_handle_kf (record, id); - break; - - /* 1HAND layout */ - case OH_BASE: - if (record->event.pressed) { - oh_base_timer = timer_read (); - } else { - if (timer_elapsed (oh_base_timer) > TAPPING_TERM) { - layer_clear (); - } else { - return MACRO (T(APP), END); - } - } - break; - - case OH_BSSPC: - if (record->event.pressed) { - oh_bsspc_timer = timer_read (); - } else { - if (timer_elapsed (oh_bsspc_timer) > TAPPING_TERM) { - return MACRO (T(BSPC), END); - } else { - return MACRO (T(SPC), END); - } - } - break; - - case OH_ENTSFT: - if (record->event.pressed) { - oh_entsft_timer = timer_read (); - } else { - if (timer_elapsed (oh_entsft_timer) > TAPPING_TERM) { - if (keyboard_report->mods & MOD_BIT(KC_LSFT)) - unregister_code (KC_LSFT); - else - register_code (KC_LSFT); - } else { - return MACRO (T(ENT), END); - } - } - break; - - case OH_LEFT: - if (record->event.pressed) { - layer_move (OHLFT); - oh_left_blink = 1; - oh_left_blink_timer = timer_read (); - ergodox_right_led_1_on (); - } - break; - - case OH_RIGHT: - if (record->event.pressed) { - layer_move (OHRGT); - oh_right_blink = 1; - oh_right_blink_timer = timer_read (); - ergodox_right_led_3_on (); - } - break; - } - return MACRO_NONE; -}; - -uint8_t is_adore = 0; - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - uint8_t dl; - - ergodox_led_all_on(); - for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) { - ergodox_led_all_set (i); - wait_ms (5); - } - wait_ms(1000); - for (int i = LED_BRIGHTNESS_LO; i > 0; i--) { - ergodox_led_all_set (i); - wait_ms (10); - } - ergodox_led_all_off(); - - if (!eeconfig_is_enabled()) - eeconfig_init(); - dl = eeconfig_read_default_layer (); - if (dl == (1UL << ADORE)) - is_adore = 1; -}; - -LEADER_EXTERNS(); - -void ang_do_unicode (void) { - register_code (KC_RCTL); - register_code (KC_RSFT); - register_code (KC_U); - unregister_code (KC_U); - unregister_code (KC_RSFT); - unregister_code (KC_RCTL); - wait_ms (100); -} - -void ang_tap (uint16_t codes[]) { - for (int i = 0; codes[i] != 0; i++) { - register_code (codes[i]); - unregister_code (codes[i]); - wait_ms (50); - } -} - -#define TAP_ONCE(code) \ - register_code (code); \ - unregister_code (code) - -void ang_tap_dance_cln_finished (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - register_code (KC_RSFT); - register_code (KC_SCLN); - } else if (state->count == 2) { - register_code (KC_SCLN); - } -} - -void ang_tap_dance_cln_reset (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - unregister_code (KC_SCLN); - unregister_code (KC_RSFT); - } else if (state->count == 2) { - unregister_code (KC_SCLN); - } -} - -void ang_tap_dance_mns_finished (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - register_code (KC_MINS); - } else if (state->count == 2) { - register_code (KC_RSFT); - register_code (KC_MINS); - } -} - -void ang_tap_dance_mns_reset (qk_tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - unregister_code (KC_MINS); - } else if (state->count == 2) { - unregister_code (KC_RSFT); - unregister_code (KC_MINS); - } -} - -typedef struct { - bool layer_toggle; - bool sticky; - bool finished_once; -} td_ta_state_t; - -void ang_tap_dance_ta_finished (qk_tap_dance_state_t *state, void *user_data) { - td_ta_state_t *td_ta = (td_ta_state_t *) user_data; - - if (td_ta->finished_once) { - return; - } - - if (td_ta->sticky) { - td_ta->sticky = false; - td_ta->layer_toggle = false; - layer_off (ARRW); - return; - } - - td_ta->finished_once = true; - if (state->count == 1 && !state->pressed) { - register_code (KC_TAB); - td_ta->sticky = false; - td_ta->layer_toggle = false; - } else { - td_ta->layer_toggle = true; - layer_on (ARRW); - td_ta->sticky = (state->count == 2); - } -} - -void ang_tap_dance_ta_reset (qk_tap_dance_state_t *state, void *user_data) { - td_ta_state_t *td_ta = (td_ta_state_t *) user_data; - - if (!td_ta->layer_toggle) - unregister_code (KC_TAB); - if (!td_ta->sticky) - layer_off (ARRW); - - td_ta->finished_once = false; -} - -const qk_tap_dance_action_t tap_dance_actions[] = { - [CT_CLN] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, ang_tap_dance_cln_finished, ang_tap_dance_cln_reset) - ,[CT_MNS] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, ang_tap_dance_mns_finished, ang_tap_dance_mns_reset) - ,[CT_TA] = { - .fn = { NULL, ang_tap_dance_ta_finished, ang_tap_dance_ta_reset }, - .user_data = (void *)&((td_ta_state_t) { false, false, false }) - } -}; - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { - uint8_t layer = biton32(layer_state); - - if (gui_timer && timer_elapsed (gui_timer) > TAPPING_TERM) - unregister_code (KC_LGUI); - - if (layer != OHLFT) - oh_left_blink = 0; - if (layer != OHRGT) - oh_right_blink = 0; - - if (layer == HUN) { - ergodox_right_led_2_on(); - ergodox_right_led_3_on(); - } else if (layer == NMDIA) { - ergodox_right_led_1_on(); - ergodox_right_led_2_on(); - } else if (layer == PLVR) { - ergodox_right_led_1_on (); - ergodox_right_led_2_on (); - ergodox_right_led_3_on (); - } else if (layer == ADORE) { - ergodox_right_led_1_on (); - ergodox_right_led_2_on (); - ergodox_right_led_3_on (); - - ergodox_right_led_2_set (LED_BRIGHTNESS_HI); - } - - if (layer == OHLFT || layer == OHRGT) { - ergodox_right_led_2_on(); - - if (oh_left_blink) { - if (timer_elapsed (oh_left_blink_timer) > OH_BLINK_INTERVAL) { - if ((keyboard_report->mods & MOD_BIT(KC_LSFT)) == 0) - ergodox_right_led_1_off (); - } - if (timer_elapsed (oh_left_blink_timer) > OH_BLINK_INTERVAL * 2) { - ergodox_right_led_1_on (); - oh_left_blink_timer = timer_read (); - } - } - - if (oh_right_blink) { - if (timer_elapsed (oh_right_blink_timer) > OH_BLINK_INTERVAL) { - if ((keyboard_report->mods & MOD_BIT(KC_LCTRL)) == 0) - ergodox_right_led_3_off (); - } - if (timer_elapsed (oh_right_blink_timer) > OH_BLINK_INTERVAL * 2) { - ergodox_right_led_3_on (); - oh_right_blink_timer = timer_read (); - } - } - } - - if (keyboard_report->mods & MOD_BIT(KC_LSFT) || - ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { - ergodox_right_led_1_set (LED_BRIGHTNESS_HI); - ergodox_right_led_1_on (); - } else { - ergodox_right_led_1_set (LED_BRIGHTNESS_LO); - if (layer != OHLFT && layer != NMDIA && layer != PLVR && layer != ADORE) - ergodox_right_led_1_off (); - } - - if (keyboard_report->mods & MOD_BIT(KC_LALT) || - ((get_oneshot_mods() & MOD_BIT(KC_LALT)) && !has_oneshot_mods_timed_out())) { - ergodox_right_led_2_set (LED_BRIGHTNESS_HI); - ergodox_right_led_2_on (); - } else { - ergodox_right_led_2_set (LED_BRIGHTNESS_LO); - if (layer != OHRGT && layer != HUN && layer != OHLFT && layer != NMDIA && layer != PLVR && layer != ADORE) - ergodox_right_led_2_off (); - } - - if (keyboard_report->mods & MOD_BIT(KC_LCTRL) || - ((get_oneshot_mods() & MOD_BIT(KC_LCTRL)) && !has_oneshot_mods_timed_out())) { - ergodox_right_led_3_set (LED_BRIGHTNESS_HI); - ergodox_right_led_3_on (); - } else { - ergodox_right_led_3_set (LED_BRIGHTNESS_LO); - if (layer != OHRGT && layer != HUN && layer != PLVR && layer != ADORE) - ergodox_right_led_3_off (); - } - - LEADER_DICTIONARY() { - leading = false; - leader_end (); - -#if KEYLOGGER_ENABLE - SEQ_ONE_KEY (KC_D) { - ergodox_led_all_on(); - wait_ms(100); - ergodox_led_all_off(); - log_enable = !log_enable; - } -#endif - - SEQ_ONE_KEY (KC_T) { - time_travel = !time_travel; - } - - SEQ_ONE_KEY (KC_U) { - ang_do_unicode (); - } - - SEQ_ONE_KEY (KC_V) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ (" QMK_VERSION "/" KEYMAP_VERSION ")"); - } - - SEQ_ONE_KEY (KC_L) { - /* λ */ - ang_do_unicode (); - - uint16_t codes[] = {KC_0, KC_3, KC_B, KC_B, KC_ENT, 0}; - ang_tap (codes); - } - - SEQ_ONE_KEY (KC_Y) { - uint16_t codes[] = {KC_BSLS, KC_O, KC_SLSH, 0}; - ang_tap (codes); - } - - SEQ_ONE_KEY (KC_S) { - ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); - TAP_ONCE (KC_BSLS); - register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); - ang_do_unicode (); TAP_ONCE (KC_3); TAP_ONCE (KC_0); TAP_ONCE (KC_C); TAP_ONCE (KC_4); TAP_ONCE (KC_SPC); - register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); - TAP_ONCE (KC_SLSH); - ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); - } - - SEQ_TWO_KEYS (KC_W, KC_M) { - register_code (KC_LALT); - register_code (KC_F2); - unregister_code (KC_F2); - unregister_code (KC_LALT); - - wait_ms (1000); - - uint16_t codes[] = {KC_M, KC_A, KC_X, KC_MINS, KC_F, KC_O, KC_C, KC_U, KC_S, KC_E, KC_D, KC_ENT, 0}; - ang_tap (codes); - register_code (KC_LGUI); - register_code (KC_UP); - unregister_code (KC_UP); - unregister_code (KC_LGUI); - } - - SEQ_ONE_KEY (KC_A) { - if (is_adore == 0) { - default_layer_and (0); - default_layer_or ((1UL << ADORE)); - eeconfig_update_default_layer ((1UL << ADORE)); - is_adore = 1; - - ergodox_led_all_off (); - ergodox_right_led_3_on (); - wait_ms (100); - ergodox_right_led_2_on (); - wait_ms (100); - ergodox_right_led_3_off (); - ergodox_right_led_1_on (); - wait_ms (100); - ergodox_right_led_2_off (); - wait_ms (100); - ergodox_right_led_1_off (); - } else { - is_adore = 0; - default_layer_and (0); - default_layer_or (1UL << BASE); - eeconfig_update_default_layer ((1UL << BASE)); - - ergodox_led_all_off (); - ergodox_right_led_1_on (); - wait_ms (100); - ergodox_right_led_2_on (); - wait_ms (100); - ergodox_right_led_1_off (); - ergodox_right_led_3_on (); - wait_ms (100); - ergodox_right_led_2_off (); - wait_ms (100); - ergodox_right_led_3_off (); - } - } - } -} - -static uint16_t last4[4]; - -bool process_record_user (uint16_t keycode, keyrecord_t *record) { -#if KEYLOGGER_ENABLE - uint8_t layer = biton32(layer_state); - - if (log_enable && layer == BASE) { - xprintf ("KL: col=%d, row=%d\n", record->event.key.col, - record->event.key.row); - } -#endif - - if (time_travel && !record->event.pressed) { - uint8_t p; - - // shift cache one to the left - for (p = 0; p < 3; p++) { - last4[p] = last4[p + 1]; - } - last4[3] = keycode; - - if (last4[0] == KC_D && last4[1] == KC_A && last4[2] == KC_T && last4[3] == KC_E) { - uint16_t codes[] = {KC_E, KC_SPC, KC_MINS, KC_D, KC_SPC, KC_QUOT, 0}; - ang_tap (codes); - register_code (KC_RSFT); - register_code (KC_EQL); - unregister_code (KC_EQL); - unregister_code (KC_RSFT); - - uint16_t codes2[] = {KC_4, KC_SPC, KC_D, KC_A, KC_Y, KC_S, KC_QUOT, 0}; - ang_tap (codes2); - - return false; - } - } - - return true; -} + +/* Layers */ + +enum { + BASE = 0, + ADORE, + ARRW, + APPSEL, + HUN, + NMDIA, + PLVR, +}; + +/* Macros */ + +enum { + NONE = 0, + // Buttons that do extra stuff + A_GUI, + A_PLVR, + A_ESC, + A_MPN, + + // Function / number keys + KF_1, // 1, F1 + KF_2, // 2, F2 + KF_3, // ... + KF_4, + KF_5, + KF_6, + KF_7, + KF_8, + KF_9, + KF_10, + KF_11, // =, F11 + + // Application select keys + APP_SLK, // Slack + APP_EMCS, // Emacs + APP_TERM, // Terminal + APP_CHRM, // Chrome + APP_MSIC, // Music + + // Diagonal mouse movement + A_MUL, + A_MUR, + A_MDL, + A_MDR, + + // Hungarian layer keys + HU_AA, // Á + HU_OO, // Ó + HU_EE, // É + HU_UU, // Ú + HU_II, // Í + HU_OE, // Ö + HU_UE, // Ü + HU_OEE, // Ő + HU_UEE, // Ű +}; + +/* Fn keys */ + +enum { + F_BSE = 0, + F_HUN, + F_GUI, + F_SFT, + F_ALT, + F_CTRL +}; + +/* Custom keycodes */ + +enum { + CT_CLN = 0, + CT_MNS, + CT_TA, + CT_LBP, + CT_RBP +}; + +/* States & timers */ + +uint16_t gui_timer = 0; + +uint16_t kf_timers[12]; + +#if KEYLOGGER_ENABLE +bool log_enable = false; +#endif + +bool time_travel = false; + +/* The Keymap */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Keymap 0: Base Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | Next/Prev | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | Apps | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | ~ | ' | , | . | P | Y | [ | | ] | F | G | C | R | L | \ | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | Tab/ARROW | A | O | E | U | I |------| |------| D | H | T | N | S | = / Arrow | + * |-----------+------+------+------+------+------| ( | | ) |------+------+------+------+------+-----------| + * | Play/Pause| / | Q | J | K | X | | | | B | M | W | V | Z | Stop | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | : | | - | | | | | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | LAlt | GUI | | MDIA | Del | + * ,------|------|------| |------+------+------. + * | | | Ctrl | | LEAD | | | + * |Backsp|LShift|------| |------| Enter| Space| + * | | | ESC | | HUN | | | + * `--------------------' `--------------------' + */ +[BASE] = KEYMAP( +// left hand + M(A_MPN) ,M(KF_1) ,M(KF_2) ,M(KF_3),M(KF_4),M(KF_5),M(A_PLVR) +,KC_GRV ,KC_QUOT ,KC_COMM ,KC_DOT ,KC_P ,KC_Y ,KC_LBRC +,TD(CT_TA) ,KC_A ,KC_O ,KC_E ,KC_U ,KC_I +,KC_MPLY ,KC_SLSH ,KC_Q ,KC_J ,KC_K ,KC_X ,KC_LPRN +,KC_NO ,KC_NO ,KC_NO ,KC_NO ,TD(CT_CLN) + + ,F(F_ALT),F(F_GUI) + ,F(F_CTRL) + ,KC_BSPC,F(F_SFT),M(A_ESC) + + // right hand + ,KC_APP ,M(KF_6),M(KF_7) ,M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 + ,KC_RBRC ,KC_F ,KC_G ,KC_C ,KC_R ,KC_L ,KC_BSLS + ,KC_D ,KC_H ,KC_T ,KC_N ,KC_S ,KC_EQL + ,KC_RPRN ,KC_B ,KC_M ,KC_W ,KC_V ,KC_Z ,KC_MSTP + ,TD(CT_MNS),KC_NO ,KC_NO ,KC_NO ,KC_NO + + ,OSL(NMDIA),KC_DEL + ,KC_LEAD + ,F(F_HUN) ,KC_ENT ,KC_SPC + ), + +/* Keymap 1: Adore layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | Play/Pause| 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | Apps | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | `~ | X | W | K | L | M | ( | | ) | F | H | C | P | Y | \ | + * |-----------+------+------+------+------+------| [ | | ] |------+------+------+------+------+-----------| + * | Tab/Arrow | A | O | E | I | U |------| |------| D | R | T | N | S | = | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | Z | Q | ' | , | . | : | | - | B | G | V | J | / | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | LAlt | GUI | | MDIA | Del | + * ,------|------|------| |------+------+------. + * | | | Ctrl | | HUN | | | + * |Backsp|LShift|------| |------| Enter| Space| + * | | | ESC | | LEAD | | | + * `--------------------' `--------------------' + */ +[ADORE] = KEYMAP( +// left hand + KC_MPLY ,M(KF_1) ,M(KF_2) ,M(KF_3),M(KF_4),M(KF_5),M(A_PLVR) +,KC_GRV ,KC_X ,KC_W ,KC_K ,KC_L ,KC_M ,TD(CT_LBP) +,TD(CT_TA) ,KC_A ,KC_O ,KC_E ,KC_I ,KC_U +,KC_NO ,KC_Z ,KC_Q ,KC_QUOT,KC_COMM,KC_DOT ,TD(CT_CLN) +,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + + ,F(F_ALT),F(F_GUI) + ,F(F_CTRL) + ,KC_BSPC,F(F_SFT),M(A_ESC) + + // right hand + ,KC_APP ,M(KF_6),M(KF_7),M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 + ,TD(CT_RBP),KC_F ,KC_H ,KC_C ,KC_P ,KC_Y ,KC_BSLS + ,KC_D ,KC_R ,KC_T ,KC_N ,KC_S ,KC_EQL + ,TD(CT_MNS),KC_B ,KC_G ,KC_V ,KC_J ,KC_SLSH ,KC_NO + ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + + ,OSL(NMDIA),KC_DEL + ,F(F_HUN) + ,KC_LEAD ,KC_ENT ,KC_SPC + ), + +/* Keymap 2: Arrow layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | | | | | | | | | | Home | Up | End | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | |------| |------| | Left | Down | Rght | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | Enter| |------| |------| PgUp | PgDn | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[ARRW] = KEYMAP( +// left hand + 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 ,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 ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_ENT ,KC_TRNS ,KC_TRNS + + // right hand + ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS + ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RGHT ,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 ,KC_TRNS + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS ,KC_PGUP ,KC_PGDN + ), + +/* Keymap 3: Application select layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | |Music |Slack |Emacs |Term |Chrome| | | | | | | | | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | |------| |------| | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[APPSEL] = KEYMAP( +// left hand + KC_TRNS ,M(APP_MSIC),M(APP_SLK),M(APP_EMCS),M(APP_TERM),M(APP_CHRM),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 ,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 + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS + + // right hand + ,KC_TRNS ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,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 ,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 + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS + ), + + +/* Keymap 4: Hungarian Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | | Ő | | Ű | | | | | | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | Á | Ó | É | Ú | Í |------| |------| | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | Ö | | Ü | | | | | | | | | | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | BASE | | | + * `--------------------' `--------------------' + */ + +[HUN] = KEYMAP( +// left hand + KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO +,KC_NO ,KC_NO ,M(HU_OEE),KC_NO ,M(HU_UEE),KC_NO ,KC_NO +,KC_NO ,M(HU_AA),M(HU_OO) ,M(HU_EE),M(HU_UU) ,M(HU_II) +,KC_NO ,KC_NO ,M(HU_OE) ,KC_NO ,M(HU_UE) ,KC_NO ,KC_NO +,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + + ,KC_NO ,KC_NO + ,KC_NO + ,KC_NO ,KC_TRNS ,KC_TRNS + + // right hand + ,KC_TRNS ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + + ,KC_NO ,KC_NO + ,KC_NO + ,F(F_BSE),KC_TRNS ,KC_TRNS + ), + +/* Keymap 5: Navigation & Media layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | MS Slow | | | | | |ScrLCK| |ScrLCK| | | | | | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | MS Normal | | Home | Up | PgUp | | | |Scroll| |MsUpL | MsUp |MsUpR | |PrintScreen| + * |-----------+------+------+------+------+------| | | Up |------+------+------+------+------+-----------| + * | MS Fast | | Left | Down | Right| |------| |------| |MsLeft| MsDn |MsRght| | | + * |-----------+------+------+------+------+------| | |Scroll|------+------+------+------+------+-----------| + * | Play/Pause| | End | Down | PgDn | | | | Down | |MsDnL | MsDn |MsDnR | | Stop | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Mute | VlUp | | BASE | MClk | + * ,------|------|------| |------+------+------. + * | | | VlDn | | Prev |Left |Right | + * | SPC | Enter|------| |------| Click| Click| + * | | | ESC | | Next | | | + * `--------------------' `--------------------' + */ +[NMDIA] = KEYMAP( +// left hand + KC_ACL0 ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,LGUI(KC_L) +,KC_ACL1 ,KC_NO ,KC_HOME ,KC_UP ,KC_PGUP ,KC_NO ,KC_NO +,KC_ACL2 ,KC_NO ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_NO +,KC_MPLY ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_NO +,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_MUTE ,KC_VOLU + ,KC_VOLD + ,KC_SPC,KC_ENTER,M(A_ESC) + + // right hand + ,LGUI(KC_L),KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + ,KC_WH_U ,KC_NO ,M(A_MUL),KC_MS_U ,M(A_MUR),KC_NO ,KC_PSCR + ,KC_NO ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_NO ,KC_NO + ,KC_WH_D ,KC_NO ,M(A_MDL),KC_MS_D ,M(A_MDR),KC_NO ,KC_MSTP + ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO + + ,KC_TRNS ,KC_MS_BTN3 + ,KC_MPRV + ,KC_MNXT ,KC_BTN1 ,KC_BTN2 + ), + +/* Keymap 6: Steno for Plover + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | BASE | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | # | # | # | # | # | # | | # | # | # | # | # | # | # | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | T | P | H | |------| |------| | F | P | L | T | D | + * |--------+ S +------+------+------+ * | * | | * | * +------+------+------+------+--------| + * | | | K | W | R | | | | | | R | B | G | S | Z | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | A | O |------| |------| E | U | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[PLVR] = KEYMAP( +// left hand +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, M(A_PLVR), +KC_NO, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, +KC_NO, PV_LS, PV_LT, PV_LP, PV_LH, PV_STAR, +KC_NO, PV_LS, PV_LK, PV_LW, PV_LR, PV_STAR, PV_STAR, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + PV_A, PV_O, KC_NO, + + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, + PV_STAR, PV_RF, PV_RP, PV_RL, PV_RT, PV_RD, + PV_STAR, PV_STAR, PV_RR, PV_RB, PV_RG, PV_RS, PV_RZ, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO,PV_E, PV_U + ), + +}; + +const uint16_t PROGMEM fn_actions[] = { + [F_BSE] = ACTION_LAYER_CLEAR(ON_PRESS) + ,[F_HUN] = ACTION_LAYER_INVERT(HUN, ON_PRESS) + ,[F_GUI] = ACTION_MACRO_TAP(A_GUI) + ,[F_SFT] = ACTION_MODS_ONESHOT (MOD_LSFT) + ,[F_ALT] = ACTION_MODS_ONESHOT (MOD_LALT) + ,[F_CTRL] = ACTION_MODS_ONESHOT (MOD_LCTL) +}; + +void toggle_steno(int pressed) +{ + uint8_t layer = biton32(layer_state); + + if (pressed) { + if (layer != PLVR) layer_on(PLVR); else layer_off(PLVR); + + register_code(PV_LP); + register_code(PV_LH); + register_code(PV_LR); + register_code(PV_O); + register_code(PV_RL); + register_code(PV_RG); + } else { + unregister_code(PV_LP); + unregister_code(PV_LH); + unregister_code(PV_LR); + unregister_code(PV_O); + unregister_code(PV_RL); + unregister_code(PV_RG); + } +} + +macro_t *ang_do_hun (keyrecord_t *record, uint16_t accent, uint16_t hun_char) +{ + uint8_t need_shift = 0; + uint8_t hold_shift = 0; + + if (!record->event.pressed) + return MACRO_NONE; + + layer_off (HUN); + + if (keyboard_report->mods & MOD_BIT (KC_LSFT)) { + hold_shift = 1; + need_shift = 1; + unregister_code (KC_LSFT); + } + if ((get_oneshot_mods () & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out ()) { + need_shift = 1; + hold_shift = 0; + unregister_code (KC_LSFT); + } + + clear_oneshot_mods (); + + register_code (KC_RALT); + unregister_code (KC_RALT); + if (accent == (KC_DQT)) { + register_code (KC_RSFT); + } + register_code (accent); + unregister_code (accent); + if (need_shift && accent != (KC_DQT)) { + register_code (KC_RSFT); + } else if (accent == (KC_DQT) && !need_shift) { + unregister_code (KC_RSFT); + } + register_code (hun_char); + unregister_code (hun_char); + if (need_shift || accent == (KC_DQT)) + unregister_code (KC_RSFT); + if (hold_shift) + register_code (KC_LSFT); + + return MACRO_NONE; +} + +void ang_handle_kf (keyrecord_t *record, uint8_t id) +{ + uint8_t code = id - KF_1; + + if (record->event.pressed) { + kf_timers[code] = timer_read (); + } else { + uint8_t kc; + + if (timer_elapsed (kf_timers[code]) > TAPPING_TERM) { + // Long press + kc = KC_F1 + code; + } else { + if (id == KF_11) + kc = KC_EQL; + else + kc = KC_1 + code; + } + + register_code (kc); + unregister_code (kc); + } +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case A_ESC: + if (record->event.pressed) { + if ((get_oneshot_mods ()) && !has_oneshot_mods_timed_out ()) { + clear_oneshot_mods (); + } else { + register_code (KC_ESC); + } + layer_off (HUN); + } else { + unregister_code (KC_ESC); + } + break; + + case A_MPN: + if (record->event.pressed) { + if (keyboard_report->mods & MOD_BIT(KC_LSFT) || + ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { + int oneshot = ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out()); + + if (oneshot) + clear_oneshot_mods (); + unregister_code (KC_LSFT); + + register_code (KC_MPRV); + unregister_code (KC_MPRV); + + if (!oneshot) + register_code (KC_LSFT); + } else { + return MACRO (T(MNXT), END); + } + } + break; + + /* Hungarian layer */ + case HU_AA: + return ang_do_hun (record, KC_QUOT, KC_A); + case HU_OO: + return ang_do_hun (record, KC_QUOT, KC_O); + case HU_EE: + return ang_do_hun (record, KC_QUOT, KC_E); + case HU_UU: + return ang_do_hun (record, KC_QUOT, KC_U); + case HU_II: + return ang_do_hun (record, KC_QUOT, KC_I); + case HU_OE: + return ang_do_hun (record, KC_DQT, KC_O); + case HU_UE: + return ang_do_hun (record, KC_DQT, KC_U); + case HU_OEE: + return ang_do_hun (record, KC_EQL, KC_O); + case HU_UEE: + return ang_do_hun (record, KC_EQL, KC_U); + + /* Mouse movement */ + case A_MUL: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MUR: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + + case A_MDL: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MDR: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + + /* Plover base */ + case A_PLVR: + toggle_steno(record->event.pressed); + break; + + /* GUI & AppSel */ + case A_GUI: + if (record->event.pressed) { + register_code (KC_LGUI); + if (record->tap.count && !record->tap.interrupted) { + if (record->tap.count >= 2) { + register_code (KC_W); + layer_on (APPSEL); + set_oneshot_layer (APPSEL, ONESHOT_START); + } + } else { + record->tap.count = 0; + } + gui_timer = 0; + } else { + if (record->tap.count >= 2) + { + unregister_code (KC_W); + clear_oneshot_layer_state (ONESHOT_PRESSED); + } + gui_timer = timer_read (); + } + break; + + case APP_SLK: + return MACRODOWN(T(S), T(L), T(A), T(C), T(K), T(ENT), END); + + case APP_EMCS: + return MACRODOWN(T(G), T(N), T(U), T(SPC), T(E), T(M), T(A), T(C), T(S), T(SPC), T(2), T(4), T(ENT), END); + + case APP_TERM: + return MACRODOWN(T(T), T(E), T(R), T(M), T(ENT), END); + + case APP_CHRM: + return MACRODOWN(T(C), T(H), T(R), T(O), T(M), T(ENT), END); + + case APP_MSIC: + return MACRODOWN(T(R), T(H), T(Y), T(T), T(H), T(M), T(B), T(O), T(X), T(ENT), END); + + /* Function keys */ + case KF_1 ... KF_11: + ang_handle_kf (record, id); + break; + } + + return MACRO_NONE; +}; + +uint8_t is_adore = 0; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + uint8_t dl; + + ergodox_led_all_on(); + for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) { + ergodox_led_all_set (i); + wait_ms (5); + } + wait_ms(1000); + for (int i = LED_BRIGHTNESS_LO; i > 0; i--) { + ergodox_led_all_set (i); + wait_ms (10); + } + ergodox_led_all_off(); + + if (!eeconfig_is_enabled()) + eeconfig_init(); + dl = eeconfig_read_default_layer (); + if (dl == (1UL << ADORE)) { + is_adore = 1; +#if ADORE_AUTOLOG + log_enable = true; +#endif + } +}; + +LEADER_EXTERNS(); + +void ang_do_unicode (void) { + register_code (KC_RCTL); + register_code (KC_RSFT); + register_code (KC_U); + unregister_code (KC_U); + unregister_code (KC_RSFT); + unregister_code (KC_RCTL); + wait_ms (100); +} + +void ang_tap (uint16_t codes[]) { + for (int i = 0; codes[i] != 0; i++) { + register_code (codes[i]); + unregister_code (codes[i]); + wait_ms (50); + } +} + +#define TAP_ONCE(code) \ + register_code (code); \ + unregister_code (code) + +void ang_tap_dance_bp_finished (qk_tap_dance_state_t *state, void *user_data) { + bool left, parens; + + if (state->count > 2) { + state->count = 0; + return; + } + + if (state->keycode == TD(CT_LBP)) + left = true; + else + left = false; + + if (state->count == 1) + parens = false; + else + parens = true; + + if (parens) { + register_code (KC_RSFT); + if (left) { + TAP_ONCE(KC_9); + } else { + TAP_ONCE(KC_0); + } + unregister_code (KC_RSFT); + } else { + if (left) { + TAP_ONCE (KC_LBRC); + } else { + TAP_ONCE (KC_RBRC); + } + } +} + +void ang_tap_dance_cln_finished (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + register_code (KC_RSFT); + register_code (KC_SCLN); + } else if (state->count == 2) { + register_code (KC_SCLN); + } +} + +void ang_tap_dance_cln_reset (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + unregister_code (KC_SCLN); + unregister_code (KC_RSFT); + } else if (state->count == 2) { + unregister_code (KC_SCLN); + } +} + +void ang_tap_dance_mns_finished (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + register_code (KC_MINS); + } else if (state->count == 2) { + register_code (KC_RSFT); + register_code (KC_MINS); + } +} + +void ang_tap_dance_mns_reset (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + unregister_code (KC_MINS); + } else if (state->count == 2) { + unregister_code (KC_RSFT); + unregister_code (KC_MINS); + } +} + +typedef struct { + bool layer_toggle; + bool sticky; + bool finished_once; +} td_ta_state_t; + +void ang_tap_dance_ta_finished (qk_tap_dance_state_t *state, void *user_data) { + td_ta_state_t *td_ta = (td_ta_state_t *) user_data; + + if (td_ta->finished_once) { + return; + } + + if (td_ta->sticky) { + td_ta->sticky = false; + td_ta->layer_toggle = false; + layer_off (ARRW); + return; + } + + td_ta->finished_once = true; + if (state->count == 1 && !state->pressed) { + register_code (KC_TAB); + td_ta->sticky = false; + td_ta->layer_toggle = false; + } else { + td_ta->layer_toggle = true; + layer_on (ARRW); + td_ta->sticky = (state->count == 2); + } +} + +void ang_tap_dance_ta_reset (qk_tap_dance_state_t *state, void *user_data) { + td_ta_state_t *td_ta = (td_ta_state_t *) user_data; + + if (!td_ta->layer_toggle) + unregister_code (KC_TAB); + if (!td_ta->sticky) + layer_off (ARRW); + + td_ta->finished_once = false; +} + +const qk_tap_dance_action_t tap_dance_actions[] = { + [CT_CLN] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, ang_tap_dance_cln_finished, ang_tap_dance_cln_reset) + ,[CT_MNS] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, ang_tap_dance_mns_finished, ang_tap_dance_mns_reset) + ,[CT_TA] = { + .fn = { NULL, ang_tap_dance_ta_finished, ang_tap_dance_ta_reset }, + .user_data = (void *)&((td_ta_state_t) { false, false, false }) + } + ,[CT_LBP] = ACTION_TAP_DANCE_FN (ang_tap_dance_bp_finished) + ,[CT_RBP] = ACTION_TAP_DANCE_FN (ang_tap_dance_bp_finished) +}; + +static uint16_t uni[32]; +static uint8_t unicnt; +static bool unimagic = false; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + if (gui_timer && timer_elapsed (gui_timer) > TAPPING_TERM) + unregister_code (KC_LGUI); + + if (layer == HUN) { + ergodox_right_led_2_on(); + ergodox_right_led_3_on(); + } else if (layer == NMDIA) { + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + } else if (layer == PLVR) { + ergodox_right_led_1_on (); + ergodox_right_led_2_on (); + ergodox_right_led_3_on (); + } else if (layer == ADORE) { + ergodox_right_led_1_on (); + ergodox_right_led_2_on (); + ergodox_right_led_3_on (); + + ergodox_right_led_2_set (LED_BRIGHTNESS_HI); + } + + if (keyboard_report->mods & MOD_BIT(KC_LSFT) || + ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { + ergodox_right_led_1_set (LED_BRIGHTNESS_HI); + ergodox_right_led_1_on (); + } else { + ergodox_right_led_1_set (LED_BRIGHTNESS_LO); + if (layer != NMDIA && layer != PLVR && layer != ADORE) + ergodox_right_led_1_off (); + } + + if (keyboard_report->mods & MOD_BIT(KC_LALT) || + ((get_oneshot_mods() & MOD_BIT(KC_LALT)) && !has_oneshot_mods_timed_out())) { + ergodox_right_led_2_set (LED_BRIGHTNESS_HI); + ergodox_right_led_2_on (); + } else { + ergodox_right_led_2_set (LED_BRIGHTNESS_LO); + if (layer != HUN && layer != NMDIA && layer != PLVR && layer != ADORE) + ergodox_right_led_2_off (); + } + + if (keyboard_report->mods & MOD_BIT(KC_LCTRL) || + ((get_oneshot_mods() & MOD_BIT(KC_LCTRL)) && !has_oneshot_mods_timed_out())) { + ergodox_right_led_3_set (LED_BRIGHTNESS_HI); + ergodox_right_led_3_on (); + } else { + ergodox_right_led_3_set (LED_BRIGHTNESS_LO); + if (layer != HUN && layer != PLVR && layer != ADORE) + ergodox_right_led_3_off (); + } + + LEADER_DICTIONARY() { + leading = false; + leader_end (); + +#if KEYLOGGER_ENABLE + SEQ_ONE_KEY (KC_D) { + ergodox_led_all_on(); + wait_ms(100); + ergodox_led_all_off(); + log_enable = !log_enable; + } +#endif + + SEQ_ONE_KEY (KC_T) { + time_travel = !time_travel; + } + + SEQ_ONE_KEY (KC_U) { + ang_do_unicode (); + } + + SEQ_TWO_KEYS (KC_LEAD, KC_U) { + unicnt = 0; + unimagic = true; + register_code(KC_RSFT); + TAP_ONCE(KC_U); + unregister_code(KC_RSFT); + } + + SEQ_ONE_KEY (KC_V) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ (" QMK_VERSION "/" KEYMAP_VERSION ")"); + } + + SEQ_ONE_KEY (KC_L) { + /* λ */ + ang_do_unicode (); + + uint16_t codes[] = {KC_0, KC_3, KC_B, KC_B, KC_ENT, 0}; + ang_tap (codes); + } + + SEQ_ONE_KEY (KC_Y) { + uint16_t codes[] = {KC_BSLS, KC_O, KC_SLSH, 0}; + ang_tap (codes); + } + + SEQ_ONE_KEY (KC_S) { + ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); + TAP_ONCE (KC_BSLS); + register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + ang_do_unicode (); TAP_ONCE (KC_3); TAP_ONCE (KC_0); TAP_ONCE (KC_C); TAP_ONCE (KC_4); TAP_ONCE (KC_SPC); + register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); + TAP_ONCE (KC_SLSH); + ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); + } + + SEQ_TWO_KEYS (KC_W, KC_M) { + register_code (KC_LALT); + register_code (KC_F2); + unregister_code (KC_F2); + unregister_code (KC_LALT); + + wait_ms (1000); + + uint16_t codes[] = {KC_M, KC_A, KC_X, KC_MINS, KC_F, KC_O, KC_C, KC_U, KC_S, KC_E, KC_D, KC_ENT, 0}; + ang_tap (codes); + register_code (KC_LGUI); + register_code (KC_UP); + unregister_code (KC_UP); + unregister_code (KC_LGUI); + } + + SEQ_ONE_KEY (KC_A) { + if (is_adore == 0) { + default_layer_and (0); + default_layer_or ((1UL << ADORE)); + eeconfig_update_default_layer ((1UL << ADORE)); + is_adore = 1; + + ergodox_led_all_off (); + ergodox_right_led_3_on (); + wait_ms (100); + ergodox_right_led_2_on (); + wait_ms (100); + ergodox_right_led_3_off (); + ergodox_right_led_1_on (); + wait_ms (100); + ergodox_right_led_2_off (); + wait_ms (100); + ergodox_right_led_1_off (); +#if ADORE_AUTOLOG + log_enable = true; +#endif + } else { +#if ADORE_AUTOLOG + log_enable = false; +#endif + is_adore = 0; + default_layer_and (0); + default_layer_or (1UL << BASE); + eeconfig_update_default_layer ((1UL << BASE)); + + ergodox_led_all_off (); + ergodox_right_led_1_on (); + wait_ms (100); + ergodox_right_led_2_on (); + wait_ms (100); + ergodox_right_led_1_off (); + ergodox_right_led_3_on (); + wait_ms (100); + ergodox_right_led_2_off (); + wait_ms (100); + ergodox_right_led_3_off (); + } + } + } +} + +static uint16_t last4[4]; + +bool is_uni_seq(char *seq) { + uint8_t i; + + for (i = 0; seq[i]; i++) { + uint16_t code; + if (('1' <= seq[i]) && (seq[i] <= '9')) + code = seq[i] - '1' + KC_1; + else if (seq[i] == '0') + code = KC_0; + else + code = seq[i] - 'a' + KC_A; + + if (i > unicnt) + return false; + if (uni[i] != code) + return false; + } + + if (uni[i] == KC_ENT || uni[i] == KC_SPC) + return true; + + return false; +} + +uint16_t hex_to_keycode(uint8_t hex) +{ + if (hex == 0x0) { + return KC_0; + } else if (hex < 0xA) { + return KC_1 + (hex - 0x1); + } else { + return KC_A + (hex - 0xA); + } +} + +void register_hex(uint16_t hex) { + bool leading_zeros = true; + + for(int i = 3; i >= 0; i--) { + uint8_t digit = ((hex >> (i*4)) & 0xF); + if (digit != 0) + leading_zeros = false; + else if (leading_zeros) + continue; + register_code(hex_to_keycode(digit)); + unregister_code(hex_to_keycode(digit)); + wait_ms(10); + } +} + +typedef struct { + char *symbol; + uint16_t codes[4]; +} qk_ucis_symbol_t; + +static qk_ucis_symbol_t ucis_symbol_table[] = { + {"poop", {0x1, 0xf4a9, 0}}, + {"rofl", {0x1, 0xf923, 0}}, + {"kiss", {0x1, 0xf619, 0}}, + {"snowman", {0x2603, 0}}, + {NULL, {}} +}; + +bool process_record_ucis (uint16_t keycode, keyrecord_t *record) { + uint8_t i; + + if (!unimagic) + return true; + + if (!record->event.pressed) + return true; + + uni[unicnt] = keycode; + unicnt++; + + if (keycode == KC_BSPC) { + if (unicnt >= 2) { + unicnt-= 2; + return true; + } else { + unicnt--; + return false; + } + } + + if (keycode == KC_ENT || keycode == KC_SPC) { + bool symbol_found = false; + + for (i = unicnt; i > 0; i--) { + register_code (KC_BSPC); + unregister_code (KC_BSPC); + wait_ms(10); + } + + ang_do_unicode(); + wait_ms(10); + for (i = 0; ucis_symbol_table[i].symbol; i++) { + if (is_uni_seq (ucis_symbol_table[i].symbol)) { + symbol_found = true; + for (uint8_t j = 0; ucis_symbol_table[i].codes[j]; j++) { + register_hex(ucis_symbol_table[i].codes[j]); + } + break; + } + } + if (!symbol_found) { + for (i = 0; i < unicnt - 1; i++) { + uint8_t code; + + if (uni[i] > KF_1) + code = uni[i] - KF_1 + KC_1; + else + code = uni[i]; + TAP_ONCE(code); + wait_ms (10); + } + } + + unimagic = false; + return true; + } + return true; +} + +bool process_record_user (uint16_t keycode, keyrecord_t *record) { +#if KEYLOGGER_ENABLE + if (log_enable) { + xprintf ("KL: col=%d, row=%d\n", record->event.key.col, + record->event.key.row); + } +#endif + + if (!process_record_ucis (keycode, record)) + return false; + + if (time_travel && !record->event.pressed) { + uint8_t p; + + // shift cache one to the left + for (p = 0; p < 3; p++) { + last4[p] = last4[p + 1]; + } + last4[3] = keycode; + + if (last4[0] == KC_D && last4[1] == KC_A && last4[2] == KC_T && last4[3] == KC_E) { + uint16_t codes[] = {KC_E, KC_SPC, KC_MINS, KC_D, KC_SPC, KC_QUOT, 0}; + ang_tap (codes); + register_code (KC_RSFT); + register_code (KC_EQL); + unregister_code (KC_EQL); + unregister_code (KC_RSFT); + + uint16_t codes2[] = {KC_4, KC_SPC, KC_D, KC_A, KC_Y, KC_S, KC_QUOT, 0}; + ang_tap (codes2); + + return false; + } + } + + return true; +} diff --git a/keyboards/ergodox/keymaps/algernon/readme.md b/keyboards/ergodox/keymaps/algernon/readme.md index 6fe1775111..26dfddbe6a 100644 --- a/keyboards/ergodox/keymaps/algernon/readme.md +++ b/keyboards/ergodox/keymaps/algernon/readme.md @@ -16,11 +16,12 @@ Some of the things in the layout only work when one uses Spacemacs and GNOME und - [ADORE layer](#adore-layer) - [Hungarian layer](#hungarian-layer) - [Navigation and media layer](#navigation-and-media-layer) - - [One-handed layer](#one-handed-layer) - [Steno layer](#steno-layer) - [LED states](#led-states) * [Tools](#tools) - [Heatmap](#heatmap) +* [Special features](#special-features) + - [Unicode Symbol Input](#unicode-symbol-input) * [Building](#building) - [Using on Windows](#using-on-windows) * [Changelog](#changelog) @@ -38,7 +39,7 @@ At its core, this is a Dvorak layout, with some minor changes. The more interest * The `Shift`, `Alt`, and `Control` modifiers are one-shot. When tapped, they are considered active for the next key press only. When double tapped, they toggle on, until a third, single tap sometime later. When held, they act as expected. My usual pattern is that I use these for the next keypress only, so this behaviour is perfect. If I need them held, I'll just double-tap. * The `GUI` key is special, because when I double-tap it, it sends `GUI + w`, which pops up an application selector. It also switches to a one-shot layer, where the number row on the left half turns into app selector macros, for the most common things I usually want to switch to. Otherwise it behaves as on a normal layout. * The `ESC` key also doubles as a one-shot cancel key: if tapped while any of the one-shot modifiers are in-flight (as in, single-tapped, and not expired yet), it cancels all one-shot modifiers. It also cancels the **Hun** layer, if active. Otherwise it sends the usual keycode. -* The **Media** and **Hun** layer keys are one-shot, the **1Hand** and **STENO** keys are toggles. +* The **Media** and **Hun** layer keys are one-shot, the **STENO** key is a toggle. * When holding any of the **Arrow** layer keys, the arrow layer activates while the layer key is held. Tapping the key produces the normal key. * Tapping the `:` key once yields `:`, tapping it twice yields `;`. * The **Lead** key allows me to type in a sequence of keys, and trigger some actions: @@ -51,6 +52,7 @@ At its core, this is a Dvorak layout, with some minor changes. The more interest - `LEAD v` prints the firmware version, the keyboard and the keymap. - `LEAD d` toggles logging keypress positions to the HID console. - `LEAD t` toggles time travel. Figuring out the current `date` is left as an exercise to the reader. + - `LEAD LEAD u` enters the [Unicode symbol input][#unicode-symbol-input] mode. ## ADORE layer @@ -74,20 +76,6 @@ On this layer, the accented characters are at the same position as their base va This layer is primarily for navigating with the cursor or the mouse, and some media things. -## One-handed layer - -[![One-handed layer](images/one-handed-layer.png)](http://www.keyboard-layout-editor.com/#/gists/edff2495135955b8963198dace7f7ece) - -The one-handed layer is used in situations where the right hand is occupied, by mousing around, for example. Tapping the `OTHER` key switches which side is active. For the most part, keys remain in their usual position. When the right half is active, keys are mirrored to the left half. - -The differences are as follows: - -* The `ESC` key has been moved to the bottom row, so the `OTHER` key is easier to tap. -* Most keys on the thumb cluster now have dual uses, and these do not change when switching sides: - - The `Space`/`Backspace` key sends `Space` on tap, `Backspace` when held for longer than a normal tap. - - The `Enter`/`Shift` key sends `Enter` on short-tap, `Shift` on long-tap. -* The `Apps`/`BASE` key can be used to go back to the base layer, by long-tapping it. A short-tap will send the `App` key, as usual. - ## Steno layer [![Steno layer for Plover](images/steno-layer.png)](http://www.keyboard-layout-editor.com/#/gists/401ef9a84369e47c57f9aedcf0a0d667) @@ -103,11 +91,25 @@ For the layers, the following rules apply: * When the [ADORE layer](#adore-layer) is toggled on, LEDs will light up from left to right in a sequence, then turn off. When the layer is toggled off, the LEDs light up and turn off in the other direction. No LEDs are on while the layer is active. * When the [Hungarian layer](#hungarian-layer) is active, the *green* and *blue* LEDs are on. * When the [Navigation and media layer](#navigation-and-media-layer) is active, the *red* and *green* ones are on. -* When the [One-handed layer](#one-handed-layer) is active, the *green* LED is on and bright, and either the *red* or the *blue* one is going to slowly blink, depending on the currently active side. * For the [Steno layer](#steno-layer), all LEDs will be turned on. Unless noted otherwise, the layers use a dim light for the LEDs, while modifiers use a stronger one, and modifiers override any layer preferences. For example, when on the one-handed layer, with the left side active (*red* light blinking), if `Shift` is on, the *red* light will be constantly on. +# Special features + +## Unicode Symbol Input + +Once in the Unicode Symbol Input mode, one is able to type in symbol names, press `Enter` or `Space`, and get the Unicode symbol itself back. When in the mode, a capital `U` is printed first. Once the sequence is finished, all of it is erased by sending enough `Backspace` taps, and the firmware starts the OS-specific unicode input sequence. Then, it looks up the symbol name, and enters the associated code. If it is not found, it will just replay the pressed keycodes. + +The currently supported symbols are: + +- `snowman`: ☃ +- `kiss`: 😙 +- `rofl`: 🤣 +- `poop`: 💩 + +This is an experimental feature, and may or may not work reliably. + # Tools ## Heatmap @@ -133,14 +135,14 @@ To make my workflow easier, this layout is maintained in [its own repository][al $ git clone https://github.com/jackhumbert/qmk_firmware.git $ cd qmk_firmware $ git clone https://github.com/algernon/ergodox-layout.git \ - keyboards/ergodox_ez/keymaps/algernon-master -$ make KEYBOARD=ergodox_ez KEYMAP=algernon-master + keyboards/ergodox/keymaps/algernon-master +$ make keyboard=ergodox keymap=algernon-master ``` From time to time, updates may be submitted back to the QMK repository. If you are reading it there, you can build the firmware like any other firmware included with it (assuming you are in the root directory of the firmware): ``` -$ make KEYBOARD=ergodox_ez KEYMAP=algernon +$ make keyboard=ergodox keymap=algernon ``` ## Using on Windows @@ -149,6 +151,16 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the # Changelog +## v1.5 - 2016-08-12 + +* The **1HAND** layer has been removed. +* A `Delete` key is now available on the right thumb cluster. +* The [ADORE](#adore-layer) layer received a major update, see the layout image above. +* It is now possible to enable automatic logging for the [ADORE](#adore-layer) layer, by setting the `ADORE_AUTOLOG` makefile variable to `yes` when compiling the keymap. It is off by default. +* The `~` key and the `Media Next/Prev` key have been swapped on the [base layer](#base-layer). +* On the **ARROW** layer, `Backspace` has been replaced by `Enter`. +* There is some experimental support for entering Unicode symbols. + ## v1.4 - 2016-07-29 * When toggling the key logging on or off, the LEDs will do a little dance. From 477f1ad0c8e360880d2b2db9abe4b000940a56bf Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Fri, 12 Aug 2016 19:07:44 -0700 Subject: [PATCH 15/46] fix link to ErgoDox EZ This just fixes the readme link to the ErgoDox EZ directory --- readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/readme.md b/readme.md index 57629f8be2..e2221e7496 100644 --- a/readme.md +++ b/readme.md @@ -13,7 +13,7 @@ For an easy-to-read version of this document and the repository, check out [http * [Planck](/keyboards/planck/) * [Preonic](/keyboards/preonic/) * [Atomic](/keyboards/atomic/) -* [ErgoDox EZ](/keyboards/ergodox_ez/) +* [ErgoDox EZ](/keyboards/ergodox/ez/) * [Clueboard](/keyboards/clueboard/) * [Cluepad](/keyboards/cluepad/) @@ -31,7 +31,7 @@ The OLKB product firmwares are maintained by [Jack Humbert](https://github.com/j This is not a tiny project. While this is the main readme, there are many other files you might want to consult. Here are some points of interest: -* The readme for your own keyboard: This is found under `keyboards//`. So for the ErgoDox EZ, it's [here](keyboards/ergodox_ez/); for the Planck, it's [here](keyboards/planck/) and so on. +* The readme for your own keyboard: This is found under `keyboards//`. So for the ErgoDox EZ, it's [here](keyboards/ergodox/ez/); for the Planck, it's [here](keyboards/planck/) and so on. * The list of possible keycodes you can use in your keymap is actually spread out in a few different places: * [doc/keycode.txt](doc/keycode.txt) - an explanation of those same keycodes. * [quantum/keymap.h](quantum/keymap.h) - this is where the QMK-specific aliases are all set up. Things like the Hyper and Meh key, the Leader key, and all of the other QMK innovations. These are also explained and documented below, but `keymap.h` is where they're actually defined. From 458607ee5eafe1cc095b258cac014c334d8e7b72 Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Fri, 12 Aug 2016 22:26:30 -0700 Subject: [PATCH 16/46] Corrections to the Atreus Makefile and updates to my keymap --- keyboards/atreus/keymaps/xyverz/keymap.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index 0238fdbd39..02a661c8e3 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -46,14 +46,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L1] = { /* LAYER 1 */ {KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0 }, {KC_TAB, KC_INS, KC_UP, KC_DEL, KC_HOME, KC_NO, KC_PGUP, KC_MUTE, KC_VOLD, KC_VOLU, KC_EQL }, - {KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_LCTL, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, KC_BSLS}, + {KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_LCTL, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, KC_BSLS}, {KC_TRNS, KC_GRV, KC_LGUI, KC_TRNS, KC_DEL, KC_LALT, KC_SPC, KC_TRNS, KC_LBRC, KC_RBRC, KC_ENT } }, [_L2] = { /* LAYER 2 */ {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_PLUS}, {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12 }, +<<<<<<< HEAD {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET } +======= + {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET} +>>>>>>> e1abe4c... Corrections to the Atreus Makefile and updates to my keymap } }; From 3bae791372e2090b30647d431c70c233caaef26f Mon Sep 17 00:00:00 2001 From: Xyverz Date: Fri, 12 Aug 2016 22:30:01 -0700 Subject: [PATCH 17/46] Update keymap.c --- keyboards/atreus/keymaps/xyverz/keymap.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index 02a661c8e3..b418cc9b5e 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -53,11 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_PLUS}, {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12 }, -<<<<<<< HEAD - {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET } -======= {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET} ->>>>>>> e1abe4c... Corrections to the Atreus Makefile and updates to my keymap } }; From c07fe96581f02d0ea14c50cda7565aa52406c122 Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Fri, 12 Aug 2016 23:45:40 -0700 Subject: [PATCH 18/46] Adding the MiniVan44 aka TheVan 44 by u/evangs to the repo. Initial Commit. --- keyboards/minivan44/Makefile | 75 ++++++++ keyboards/minivan44/config.h | 162 ++++++++++++++++++ keyboards/minivan44/keymaps/default/Makefile | 21 +++ keyboards/minivan44/keymaps/default/config.h | 8 + keyboards/minivan44/keymaps/default/keymap.c | 97 +++++++++++ keyboards/minivan44/keymaps/default/readme.md | 1 + keyboards/minivan44/keymaps/xyverz/Makefile | 21 +++ keyboards/minivan44/keymaps/xyverz/config.h | 8 + keyboards/minivan44/keymaps/xyverz/keymap.c | 92 ++++++++++ keyboards/minivan44/keymaps/xyverz/readme.md | 1 + keyboards/minivan44/minivan44.c | 28 +++ keyboards/minivan44/minivan44.h | 22 +++ keyboards/minivan44/readme.md | 28 +++ 13 files changed, 564 insertions(+) create mode 100644 keyboards/minivan44/Makefile create mode 100644 keyboards/minivan44/config.h create mode 100644 keyboards/minivan44/keymaps/default/Makefile create mode 100644 keyboards/minivan44/keymaps/default/config.h create mode 100644 keyboards/minivan44/keymaps/default/keymap.c create mode 100644 keyboards/minivan44/keymaps/default/readme.md create mode 100644 keyboards/minivan44/keymaps/xyverz/Makefile create mode 100644 keyboards/minivan44/keymaps/xyverz/config.h create mode 100644 keyboards/minivan44/keymaps/xyverz/keymap.c create mode 100644 keyboards/minivan44/keymaps/xyverz/readme.md create mode 100644 keyboards/minivan44/minivan44.c create mode 100644 keyboards/minivan44/minivan44.h create mode 100644 keyboards/minivan44/readme.md diff --git a/keyboards/minivan44/Makefile b/keyboards/minivan44/Makefile new file mode 100644 index 0000000000..45ca127807 --- /dev/null +++ b/keyboards/minivan44/Makefile @@ -0,0 +1,75 @@ + + +# MCU name +#MCU = at90usb1287 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) +EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) +CONSOLE_ENABLE ?= yes # Console for debug(+400) +COMMAND_ENABLE ?= yes # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE ?= yes # USB Nkey Rollover +BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality on B7 by default +MIDI_ENABLE ?= no # MIDI controls +UNICODE_ENABLE ?= no # Unicode +BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE ?= no # Audio output on port C6 + +ifndef QUANTUM_DIR + include ../../Makefile +endif + + diff --git a/keyboards/minivan44/config.h b/keyboards/minivan44/config.h new file mode 100644 index 0000000000..0ae93c0957 --- /dev/null +++ b/keyboards/minivan44/config.h @@ -0,0 +1,162 @@ +/* +Copyright 2012 Jun Wako + +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 . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEAE +#define PRODUCT_ID 0x8844 +#define DEVICE_VER 0x0002 +#define MANUFACTURER Evan Sailer +#define PRODUCT TheVan 44 +#define DESCRIPTION keyboard firmware for TV44 + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { D7, B5, F7, D4 } +#define MATRIX_COL_PINS { D2, D3, D5, D6, B4, B6, F6, F5, F4, F1, F0, B3 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +// #define BACKLIGHT_PIN B7 +// #define BACKLIGHT_BREATHING +// #define BACKLIGHT_LEVELS 3 + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCING_DELAY 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * Magic Key Options + * + * Magic keys are hotkey commands that allow control over firmware functions of + * the keyboard. They are best used in combination with the HID Listen program, + * found here: https://www.pjrc.com/teensy/hid_listen.html + * + * The options below allow the magic key functionality to be changed. This is + * useful if your keyboard/keypad is missing keys and you want magic key support. + * + */ + +/* key combination for magic key command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* control how magic key switches layers */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false + +/* override magic key keymap */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM +//#define MAGIC_KEY_HELP1 H +//#define MAGIC_KEY_HELP2 SLASH +//#define MAGIC_KEY_DEBUG D +//#define MAGIC_KEY_DEBUG_MATRIX X +//#define MAGIC_KEY_DEBUG_KBD K +//#define MAGIC_KEY_DEBUG_MOUSE M +//#define MAGIC_KEY_VERSION V +//#define MAGIC_KEY_STATUS S +//#define MAGIC_KEY_CONSOLE C +//#define MAGIC_KEY_LAYER0_ALT1 ESC +//#define MAGIC_KEY_LAYER0_ALT2 GRAVE +//#define MAGIC_KEY_LAYER0 0 +//#define MAGIC_KEY_LAYER1 1 +//#define MAGIC_KEY_LAYER2 2 +//#define MAGIC_KEY_LAYER3 3 +//#define MAGIC_KEY_LAYER4 4 +//#define MAGIC_KEY_LAYER5 5 +//#define MAGIC_KEY_LAYER6 6 +//#define MAGIC_KEY_LAYER7 7 +//#define MAGIC_KEY_LAYER8 8 +//#define MAGIC_KEY_LAYER9 9 +//#define MAGIC_KEY_BOOTLOADER PAUSE +//#define MAGIC_KEY_LOCK CAPS +//#define MAGIC_KEY_EEPROM E +//#define MAGIC_KEY_NKRO N +//#define MAGIC_KEY_SLEEP_LED Z + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +#endif diff --git a/keyboards/minivan44/keymaps/default/Makefile b/keyboards/minivan44/keymaps/default/Makefile new file mode 100644 index 0000000000..f4671a9d11 --- /dev/null +++ b/keyboards/minivan44/keymaps/default/Makefile @@ -0,0 +1,21 @@ +# 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 # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/default/config.h b/keyboards/minivan44/keymaps/default/config.h new file mode 100644 index 0000000000..df06a26206 --- /dev/null +++ b/keyboards/minivan44/keymaps/default/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/default/keymap.c b/keyboards/minivan44/keymaps/default/keymap.c new file mode 100644 index 0000000000..d559a4b1c7 --- /dev/null +++ b/keyboards/minivan44/keymaps/default/keymap.c @@ -0,0 +1,97 @@ +#include "minivan44.h" +#include "action_layer.h" +#include "eeconfig.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 _QW 0 +#define _DV 1 +#define _CM 2 +#define _L1 3 +#define _L2 4 +#define _L3 5 + +// Macro name shortcuts +#define QWERTY M(_QW) +#define DVORAK M(_DV) +#define COLEMAK M(_CM) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QW] = { /* 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 }, + {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1) }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, + {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } + }, + [_DV] = { /* Dvorak */ + {KC_TAB, KC_COMM, KC_DOT, KC_SLSH, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_BSPC }, + {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MO(_L1) }, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, MO(_L2) }, + {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } + }, + [_CM] = { /* Colemak */ + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, + {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, MO(_L1) }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, + {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } + }, + [_L1] = { /* LAYER 1 */ + {KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL }, + {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, + {_______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, + {_______, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } + }, + [_L2] = { /* LAYER 2 */ + {_______, QWERTY, DVORAK, COLEMAK, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______ }, + {KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_4, KC_5, KC_6, KC_VOLU, KC_ENT }, + {_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______ }, + {_______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } + }, + [_L3] = { /* LAYER 3 */ + {_______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______ }, + {KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______ }, + {KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______ }, + {_______, KC_LSFT, KC_B, KC_SPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_C, _______, _______, XXXXXXX, _______ } + } +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboards/minivan44/keymaps/default/readme.md b/keyboards/minivan44/keymaps/default/readme.md new file mode 100644 index 0000000000..189a9c0ff8 --- /dev/null +++ b/keyboards/minivan44/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for minivan44 \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/xyverz/Makefile b/keyboards/minivan44/keymaps/xyverz/Makefile new file mode 100644 index 0000000000..f4671a9d11 --- /dev/null +++ b/keyboards/minivan44/keymaps/xyverz/Makefile @@ -0,0 +1,21 @@ +# 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 # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/xyverz/config.h b/keyboards/minivan44/keymaps/xyverz/config.h new file mode 100644 index 0000000000..df06a26206 --- /dev/null +++ b/keyboards/minivan44/keymaps/xyverz/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/xyverz/keymap.c b/keyboards/minivan44/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..f995da0e7e --- /dev/null +++ b/keyboards/minivan44/keymaps/xyverz/keymap.c @@ -0,0 +1,92 @@ +#include "minivan44.h" +#include "action_layer.h" +#include "eeconfig.h" + +extern keymap_config_t keymap_config; + +#define _DV 0 +#define _QW 1 +#define _CM 2 +#define _L1 3 +#define _L2 4 + +// Macro name shortcuts +#define DVORAK M(_DV) +#define QWERTY M(_QW) +#define COLEMAK M(_CM) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_DV] = { /* 0: Dvorak */ + {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC }, + {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_ENT }, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT }, + {KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } + }, + + [_QW] = { /* 1: 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 }, + {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 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_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } + }, + + [_CM] = { /* 2: Colemak */ + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, + {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_ENT }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT }, + {KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } + }, + + [_L1] = {/* 1: FN 1 */ + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL }, + {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, + {_______, _______, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, + {_______, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_SLSH, _______, _______ } + }, + + [_L2] = { /* 2: FN 2 */ + {KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_ESC }, + {_______, KC_F11, KC_F12, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_VOLU, KC_ENT }, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_VOLD, _______ }, + {QWERTY, DVORAK, COLEMAK, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______ } + } + +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; + + diff --git a/keyboards/minivan44/keymaps/xyverz/readme.md b/keyboards/minivan44/keymaps/xyverz/readme.md new file mode 100644 index 0000000000..189a9c0ff8 --- /dev/null +++ b/keyboards/minivan44/keymaps/xyverz/readme.md @@ -0,0 +1 @@ +# The default keymap for minivan44 \ No newline at end of file diff --git a/keyboards/minivan44/minivan44.c b/keyboards/minivan44/minivan44.c new file mode 100644 index 0000000000..be8214fd5d --- /dev/null +++ b/keyboards/minivan44/minivan44.c @@ -0,0 +1,28 @@ +#include "minivan44.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + + led_set_user(usb_led); +} diff --git a/keyboards/minivan44/minivan44.h b/keyboards/minivan44/minivan44.h new file mode 100644 index 0000000000..c6119c2e16 --- /dev/null +++ b/keyboards/minivan44/minivan44.h @@ -0,0 +1,22 @@ +#ifndef MINIVAN44_H +#define MINIVAN44_H + +#include "quantum.h" + +// This a shortcut to help you visually see your layout. +// The following is an example using the Planck MIT layout +// The first section contains all of the arguements +// The second converts the arguments into a two-dimensional array +#define KEYMAP( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K31, K32, K33, K37, K38, K39, K3B \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ + { K30, K31, K32, K33, KC_NO, KC_NO, KC_NO, K37, K38, K39, K3A, K3B } \ + +#endif diff --git a/keyboards/minivan44/readme.md b/keyboards/minivan44/readme.md new file mode 100644 index 0000000000..59b62b0e66 --- /dev/null +++ b/keyboards/minivan44/readme.md @@ -0,0 +1,28 @@ +minivan44 keyboard firmware +====================== + +## Quantum MK Firmware + +For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). + +## Building + +Download or clone the whole firmware and navigate to the keyboards/minivan44 folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. + +Depending on which keymap you would like to use, you will have to compile slightly differently. + +### Default + +To build with the default keymap, simply run `make`. + +### Other Keymaps + +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. + +To build the firmware binary hex file with a keymap just do `make` with `keymap` option like: + +``` +$ make keymap=[default|jack|] +``` + +Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` \ No newline at end of file From 8bdf745909bc2581491acce11225f56a85bc8f24 Mon Sep 17 00:00:00 2001 From: Gergely Nagy Date: Sat, 13 Aug 2016 10:33:47 +0200 Subject: [PATCH 19/46] process_unicode: Fix set_unicode_input_mode() In the header, this was defined as `set_unicode_input_mode`, but the implementation had `set_unicode_mode` for a name. Changed the implementation to match the header. Signed-off-by: Gergely Nagy --- quantum/process_keycode/process_unicode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c index ad5d7f86b7..3fcac15ce3 100644 --- a/quantum/process_keycode/process_unicode.c +++ b/quantum/process_keycode/process_unicode.c @@ -13,7 +13,7 @@ uint16_t hex_to_keycode(uint8_t hex) } } -void set_unicode_mode(uint8_t os_target) +void set_unicode_input_mode(uint8_t os_target) { input_mode = os_target; } From 2d0f585e426084b13fecc642cdda77506e2bfbf9 Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Sat, 13 Aug 2016 10:36:08 -0700 Subject: [PATCH 20/46] Renamed minivan44 to tv44 in all occurrences per wishes of Jack and Evan. --- keyboards/tv44/Makefile | 75 +++++++++++ keyboards/tv44/config.h | 162 +++++++++++++++++++++++ keyboards/tv44/keymaps/default/Makefile | 21 +++ keyboards/tv44/keymaps/default/config.h | 8 ++ keyboards/tv44/keymaps/default/keymap.c | 97 ++++++++++++++ keyboards/tv44/keymaps/default/readme.md | 1 + keyboards/tv44/keymaps/xyverz/Makefile | 21 +++ keyboards/tv44/keymaps/xyverz/config.h | 8 ++ keyboards/tv44/keymaps/xyverz/keymap.c | 92 +++++++++++++ keyboards/tv44/keymaps/xyverz/readme.md | 1 + keyboards/tv44/readme.md | 28 ++++ keyboards/tv44/tv44.c | 28 ++++ keyboards/tv44/tv44.h | 22 +++ 13 files changed, 564 insertions(+) create mode 100644 keyboards/tv44/Makefile create mode 100644 keyboards/tv44/config.h create mode 100644 keyboards/tv44/keymaps/default/Makefile create mode 100644 keyboards/tv44/keymaps/default/config.h create mode 100644 keyboards/tv44/keymaps/default/keymap.c create mode 100644 keyboards/tv44/keymaps/default/readme.md create mode 100644 keyboards/tv44/keymaps/xyverz/Makefile create mode 100644 keyboards/tv44/keymaps/xyverz/config.h create mode 100644 keyboards/tv44/keymaps/xyverz/keymap.c create mode 100644 keyboards/tv44/keymaps/xyverz/readme.md create mode 100644 keyboards/tv44/readme.md create mode 100644 keyboards/tv44/tv44.c create mode 100644 keyboards/tv44/tv44.h diff --git a/keyboards/tv44/Makefile b/keyboards/tv44/Makefile new file mode 100644 index 0000000000..45ca127807 --- /dev/null +++ b/keyboards/tv44/Makefile @@ -0,0 +1,75 @@ + + +# MCU name +#MCU = at90usb1287 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +OPT_DEFS += -DBOOTLOADER_SIZE=4096 + + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) +EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) +CONSOLE_ENABLE ?= yes # Console for debug(+400) +COMMAND_ENABLE ?= yes # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE ?= yes # USB Nkey Rollover +BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality on B7 by default +MIDI_ENABLE ?= no # MIDI controls +UNICODE_ENABLE ?= no # Unicode +BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE ?= no # Audio output on port C6 + +ifndef QUANTUM_DIR + include ../../Makefile +endif + + diff --git a/keyboards/tv44/config.h b/keyboards/tv44/config.h new file mode 100644 index 0000000000..0ae93c0957 --- /dev/null +++ b/keyboards/tv44/config.h @@ -0,0 +1,162 @@ +/* +Copyright 2012 Jun Wako + +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 . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEAE +#define PRODUCT_ID 0x8844 +#define DEVICE_VER 0x0002 +#define MANUFACTURER Evan Sailer +#define PRODUCT TheVan 44 +#define DESCRIPTION keyboard firmware for TV44 + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { D7, B5, F7, D4 } +#define MATRIX_COL_PINS { D2, D3, D5, D6, B4, B6, F6, F5, F4, F1, F0, B3 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +// #define BACKLIGHT_PIN B7 +// #define BACKLIGHT_BREATHING +// #define BACKLIGHT_LEVELS 3 + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCING_DELAY 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * Magic Key Options + * + * Magic keys are hotkey commands that allow control over firmware functions of + * the keyboard. They are best used in combination with the HID Listen program, + * found here: https://www.pjrc.com/teensy/hid_listen.html + * + * The options below allow the magic key functionality to be changed. This is + * useful if your keyboard/keypad is missing keys and you want magic key support. + * + */ + +/* key combination for magic key command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* control how magic key switches layers */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false + +/* override magic key keymap */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM +//#define MAGIC_KEY_HELP1 H +//#define MAGIC_KEY_HELP2 SLASH +//#define MAGIC_KEY_DEBUG D +//#define MAGIC_KEY_DEBUG_MATRIX X +//#define MAGIC_KEY_DEBUG_KBD K +//#define MAGIC_KEY_DEBUG_MOUSE M +//#define MAGIC_KEY_VERSION V +//#define MAGIC_KEY_STATUS S +//#define MAGIC_KEY_CONSOLE C +//#define MAGIC_KEY_LAYER0_ALT1 ESC +//#define MAGIC_KEY_LAYER0_ALT2 GRAVE +//#define MAGIC_KEY_LAYER0 0 +//#define MAGIC_KEY_LAYER1 1 +//#define MAGIC_KEY_LAYER2 2 +//#define MAGIC_KEY_LAYER3 3 +//#define MAGIC_KEY_LAYER4 4 +//#define MAGIC_KEY_LAYER5 5 +//#define MAGIC_KEY_LAYER6 6 +//#define MAGIC_KEY_LAYER7 7 +//#define MAGIC_KEY_LAYER8 8 +//#define MAGIC_KEY_LAYER9 9 +//#define MAGIC_KEY_BOOTLOADER PAUSE +//#define MAGIC_KEY_LOCK CAPS +//#define MAGIC_KEY_EEPROM E +//#define MAGIC_KEY_NKRO N +//#define MAGIC_KEY_SLEEP_LED Z + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +#endif diff --git a/keyboards/tv44/keymaps/default/Makefile b/keyboards/tv44/keymaps/default/Makefile new file mode 100644 index 0000000000..f4671a9d11 --- /dev/null +++ b/keyboards/tv44/keymaps/default/Makefile @@ -0,0 +1,21 @@ +# 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 # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/tv44/keymaps/default/config.h b/keyboards/tv44/keymaps/default/config.h new file mode 100644 index 0000000000..df06a26206 --- /dev/null +++ b/keyboards/tv44/keymaps/default/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif \ No newline at end of file diff --git a/keyboards/tv44/keymaps/default/keymap.c b/keyboards/tv44/keymaps/default/keymap.c new file mode 100644 index 0000000000..6a4fef3da2 --- /dev/null +++ b/keyboards/tv44/keymaps/default/keymap.c @@ -0,0 +1,97 @@ +#include "tv44.h" +#include "action_layer.h" +#include "eeconfig.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 _QW 0 +#define _DV 1 +#define _CM 2 +#define _L1 3 +#define _L2 4 +#define _L3 5 + +// Macro name shortcuts +#define QWERTY M(_QW) +#define DVORAK M(_DV) +#define COLEMAK M(_CM) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QW] = { /* 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 }, + {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1) }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, + {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } + }, + [_DV] = { /* Dvorak */ + {KC_TAB, KC_COMM, KC_DOT, KC_SLSH, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_BSPC }, + {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MO(_L1) }, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, MO(_L2) }, + {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } + }, + [_CM] = { /* Colemak */ + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, + {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, MO(_L1) }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, + {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } + }, + [_L1] = { /* LAYER 1 */ + {KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL }, + {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, + {_______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, + {_______, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } + }, + [_L2] = { /* LAYER 2 */ + {_______, QWERTY, DVORAK, COLEMAK, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______ }, + {KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_4, KC_5, KC_6, KC_VOLU, KC_ENT }, + {_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______ }, + {_______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } + }, + [_L3] = { /* LAYER 3 */ + {_______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______ }, + {KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______ }, + {KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______ }, + {_______, KC_LSFT, KC_B, KC_SPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_C, _______, _______, XXXXXXX, _______ } + } +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboards/tv44/keymaps/default/readme.md b/keyboards/tv44/keymaps/default/readme.md new file mode 100644 index 0000000000..ac84c08cfa --- /dev/null +++ b/keyboards/tv44/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for tv44 \ No newline at end of file diff --git a/keyboards/tv44/keymaps/xyverz/Makefile b/keyboards/tv44/keymaps/xyverz/Makefile new file mode 100644 index 0000000000..f4671a9d11 --- /dev/null +++ b/keyboards/tv44/keymaps/xyverz/Makefile @@ -0,0 +1,21 @@ +# 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 # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/tv44/keymaps/xyverz/config.h b/keyboards/tv44/keymaps/xyverz/config.h new file mode 100644 index 0000000000..df06a26206 --- /dev/null +++ b/keyboards/tv44/keymaps/xyverz/config.h @@ -0,0 +1,8 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here + +#endif \ No newline at end of file diff --git a/keyboards/tv44/keymaps/xyverz/keymap.c b/keyboards/tv44/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..8cbcf8d35a --- /dev/null +++ b/keyboards/tv44/keymaps/xyverz/keymap.c @@ -0,0 +1,92 @@ +#include "tv44.h" +#include "action_layer.h" +#include "eeconfig.h" + +extern keymap_config_t keymap_config; + +#define _DV 0 +#define _QW 1 +#define _CM 2 +#define _L1 3 +#define _L2 4 + +// Macro name shortcuts +#define DVORAK M(_DV) +#define QWERTY M(_QW) +#define COLEMAK M(_CM) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_DV] = { /* 0: Dvorak */ + {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC }, + {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_ENT }, + {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT }, + {KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } + }, + + [_QW] = { /* 1: 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 }, + {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 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_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } + }, + + [_CM] = { /* 2: Colemak */ + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, + {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_ENT }, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT }, + {KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } + }, + + [_L1] = {/* 1: FN 1 */ + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL }, + {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, + {_______, _______, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, + {KC_ESC, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_SLSH, _______, _______ } + }, + + [_L2] = { /* 2: FN 2 */ + {KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_ESC }, + {_______, KC_F11, KC_F12, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_VOLU, KC_ENT }, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_VOLD, _______ }, + {QWERTY, DVORAK, COLEMAK, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______ } + } + +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; + + diff --git a/keyboards/tv44/keymaps/xyverz/readme.md b/keyboards/tv44/keymaps/xyverz/readme.md new file mode 100644 index 0000000000..ac84c08cfa --- /dev/null +++ b/keyboards/tv44/keymaps/xyverz/readme.md @@ -0,0 +1 @@ +# The default keymap for tv44 \ No newline at end of file diff --git a/keyboards/tv44/readme.md b/keyboards/tv44/readme.md new file mode 100644 index 0000000000..e3b557fe2d --- /dev/null +++ b/keyboards/tv44/readme.md @@ -0,0 +1,28 @@ +tv44 keyboard firmware +====================== + +## Quantum MK Firmware + +For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). + +## Building + +Download or clone the whole firmware and navigate to the keyboards/tv44 folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. + +Depending on which keymap you would like to use, you will have to compile slightly differently. + +### Default + +To build with the default keymap, simply run `make`. + +### Other Keymaps + +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. + +To build the firmware binary hex file with a keymap just do `make` with `keymap` option like: + +``` +$ make keymap=[default|jack|] +``` + +Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` \ No newline at end of file diff --git a/keyboards/tv44/tv44.c b/keyboards/tv44/tv44.c new file mode 100644 index 0000000000..6dc0efd28e --- /dev/null +++ b/keyboards/tv44/tv44.c @@ -0,0 +1,28 @@ +#include "tv44.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + return process_record_user(keycode, record); +} + +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + + led_set_user(usb_led); +} diff --git a/keyboards/tv44/tv44.h b/keyboards/tv44/tv44.h new file mode 100644 index 0000000000..4c30174acc --- /dev/null +++ b/keyboards/tv44/tv44.h @@ -0,0 +1,22 @@ +#ifndef TV44_H +#define TV44_H + +#include "quantum.h" + +// This a shortcut to help you visually see your layout. +// The following is an example using the Planck MIT layout +// The first section contains all of the arguements +// The second converts the arguments into a two-dimensional array +#define KEYMAP( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K31, K32, K33, K37, K38, K39, K3B \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ + { K30, K31, K32, K33, KC_NO, KC_NO, KC_NO, K37, K38, K39, K3A, K3B } \ + +#endif From e87506767cec6410d1a93c15d68452815c9c3553 Mon Sep 17 00:00:00 2001 From: Ian Sterling Date: Sat, 13 Aug 2016 10:44:42 -0700 Subject: [PATCH 21/46] Removal of old minivan44 folder. --- keyboards/minivan44/Makefile | 75 -------- keyboards/minivan44/config.h | 162 ------------------ keyboards/minivan44/keymaps/default/Makefile | 21 --- keyboards/minivan44/keymaps/default/config.h | 8 - keyboards/minivan44/keymaps/default/keymap.c | 97 ----------- keyboards/minivan44/keymaps/default/readme.md | 1 - keyboards/minivan44/keymaps/xyverz/Makefile | 21 --- keyboards/minivan44/keymaps/xyverz/config.h | 8 - keyboards/minivan44/keymaps/xyverz/keymap.c | 92 ---------- keyboards/minivan44/keymaps/xyverz/readme.md | 1 - keyboards/minivan44/minivan44.c | 28 --- keyboards/minivan44/minivan44.h | 22 --- keyboards/minivan44/readme.md | 28 --- 13 files changed, 564 deletions(-) delete mode 100644 keyboards/minivan44/Makefile delete mode 100644 keyboards/minivan44/config.h delete mode 100644 keyboards/minivan44/keymaps/default/Makefile delete mode 100644 keyboards/minivan44/keymaps/default/config.h delete mode 100644 keyboards/minivan44/keymaps/default/keymap.c delete mode 100644 keyboards/minivan44/keymaps/default/readme.md delete mode 100644 keyboards/minivan44/keymaps/xyverz/Makefile delete mode 100644 keyboards/minivan44/keymaps/xyverz/config.h delete mode 100644 keyboards/minivan44/keymaps/xyverz/keymap.c delete mode 100644 keyboards/minivan44/keymaps/xyverz/readme.md delete mode 100644 keyboards/minivan44/minivan44.c delete mode 100644 keyboards/minivan44/minivan44.h delete mode 100644 keyboards/minivan44/readme.md diff --git a/keyboards/minivan44/Makefile b/keyboards/minivan44/Makefile deleted file mode 100644 index 45ca127807..0000000000 --- a/keyboards/minivan44/Makefile +++ /dev/null @@ -1,75 +0,0 @@ - - -# MCU name -#MCU = at90usb1287 -MCU = atmega32u4 - -# Processor frequency. -# This will define a symbol, F_CPU, in all source code files equal to the -# processor frequency in Hz. You can then use this symbol in your source code to -# calculate timings. Do NOT tack on a 'UL' at the end, this will be done -# automatically to create a 32-bit value in your source code. -# -# This will be an integer division of F_USB below, as it is sourced by -# F_USB after it has run through any CPU prescalers. Note that this value -# does not *change* the processor frequency - it should merely be updated to -# reflect the processor speed set externally so that the code can use accurate -# software delays. -F_CPU = 16000000 - - -# -# LUFA specific -# -# Target architecture (see library "Board Types" documentation). -ARCH = AVR8 - -# Input clock frequency. -# This will define a symbol, F_USB, in all source code files equal to the -# input clock frequency (before any prescaling is performed) in Hz. This value may -# differ from F_CPU if prescaling is used on the latter, and is required as the -# raw input clock is fed directly to the PLL sections of the AVR for high speed -# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' -# at the end, this will be done automatically to create a 32-bit value in your -# source code. -# -# If no clock division is performed on the input clock inside the AVR (via the -# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. -F_USB = $(F_CPU) - -# Interrupt driven control endpoint task(+60) -OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT - - -# Boot Section Size in *bytes* -# Teensy halfKay 512 -# Teensy++ halfKay 1024 -# Atmel DFU loader 4096 -# LUFA bootloader 4096 -# USBaspLoader 2048 -OPT_DEFS += -DBOOTLOADER_SIZE=4096 - - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) -EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) -CONSOLE_ENABLE ?= yes # Console for debug(+400) -COMMAND_ENABLE ?= yes # Commands for debug and configuration -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend -# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -NKRO_ENABLE ?= yes # USB Nkey Rollover -BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality on B7 by default -MIDI_ENABLE ?= no # MIDI controls -UNICODE_ENABLE ?= no # Unicode -BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID -AUDIO_ENABLE ?= no # Audio output on port C6 - -ifndef QUANTUM_DIR - include ../../Makefile -endif - - diff --git a/keyboards/minivan44/config.h b/keyboards/minivan44/config.h deleted file mode 100644 index 0ae93c0957..0000000000 --- a/keyboards/minivan44/config.h +++ /dev/null @@ -1,162 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#ifndef CONFIG_H -#define CONFIG_H - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEAE -#define PRODUCT_ID 0x8844 -#define DEVICE_VER 0x0002 -#define MANUFACTURER Evan Sailer -#define PRODUCT TheVan 44 -#define DESCRIPTION keyboard firmware for TV44 - -/* key matrix size */ -#define MATRIX_ROWS 4 -#define MATRIX_COLS 12 - -/* - * Keyboard Matrix Assignments - * - * Change this to how you wired your keyboard - * COLS: AVR pins used for columns, left to right - * ROWS: AVR pins used for rows, top to bottom - * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) - * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) - * -*/ -#define MATRIX_ROW_PINS { D7, B5, F7, D4 } -#define MATRIX_COL_PINS { D2, D3, D5, D6, B4, B6, F6, F5, F4, F1, F0, B3 } -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -// #define BACKLIGHT_PIN B7 -// #define BACKLIGHT_BREATHING -// #define BACKLIGHT_LEVELS 3 - - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCING_DELAY 5 - -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - -/* number of backlight levels */ - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* - * Force NKRO - * - * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved - * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the - * makefile for this to work.) - * - * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) - * until the next keyboard reset. - * - * NKRO may prevent your keystrokes from being detected in the BIOS, but it is - * fully operational during normal computer usage. - * - * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) - * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by - * bootmagic, NKRO mode will always be enabled until it is toggled again during a - * power-up. - * - */ -//#define FORCE_NKRO - -/* - * Magic Key Options - * - * Magic keys are hotkey commands that allow control over firmware functions of - * the keyboard. They are best used in combination with the HID Listen program, - * found here: https://www.pjrc.com/teensy/hid_listen.html - * - * The options below allow the magic key functionality to be changed. This is - * useful if your keyboard/keypad is missing keys and you want magic key support. - * - */ - -/* key combination for magic key command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ -) - -/* control how magic key switches layers */ -//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true -//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true -//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false - -/* override magic key keymap */ -//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS -//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS -//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM -//#define MAGIC_KEY_HELP1 H -//#define MAGIC_KEY_HELP2 SLASH -//#define MAGIC_KEY_DEBUG D -//#define MAGIC_KEY_DEBUG_MATRIX X -//#define MAGIC_KEY_DEBUG_KBD K -//#define MAGIC_KEY_DEBUG_MOUSE M -//#define MAGIC_KEY_VERSION V -//#define MAGIC_KEY_STATUS S -//#define MAGIC_KEY_CONSOLE C -//#define MAGIC_KEY_LAYER0_ALT1 ESC -//#define MAGIC_KEY_LAYER0_ALT2 GRAVE -//#define MAGIC_KEY_LAYER0 0 -//#define MAGIC_KEY_LAYER1 1 -//#define MAGIC_KEY_LAYER2 2 -//#define MAGIC_KEY_LAYER3 3 -//#define MAGIC_KEY_LAYER4 4 -//#define MAGIC_KEY_LAYER5 5 -//#define MAGIC_KEY_LAYER6 6 -//#define MAGIC_KEY_LAYER7 7 -//#define MAGIC_KEY_LAYER8 8 -//#define MAGIC_KEY_LAYER9 9 -//#define MAGIC_KEY_BOOTLOADER PAUSE -//#define MAGIC_KEY_LOCK CAPS -//#define MAGIC_KEY_EEPROM E -//#define MAGIC_KEY_NKRO N -//#define MAGIC_KEY_SLEEP_LED Z - -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable debug print */ -//#define NO_DEBUG - -/* disable print */ -//#define NO_PRINT - -/* disable action features */ -//#define NO_ACTION_LAYER -//#define NO_ACTION_TAPPING -//#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - -#endif diff --git a/keyboards/minivan44/keymaps/default/Makefile b/keyboards/minivan44/keymaps/default/Makefile deleted file mode 100644 index f4671a9d11..0000000000 --- a/keyboards/minivan44/keymaps/default/Makefile +++ /dev/null @@ -1,21 +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 # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) -COMMAND_ENABLE = yes # 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 = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/default/config.h b/keyboards/minivan44/keymaps/default/config.h deleted file mode 100644 index df06a26206..0000000000 --- a/keyboards/minivan44/keymaps/default/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -// place overrides here - -#endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/default/keymap.c b/keyboards/minivan44/keymaps/default/keymap.c deleted file mode 100644 index d559a4b1c7..0000000000 --- a/keyboards/minivan44/keymaps/default/keymap.c +++ /dev/null @@ -1,97 +0,0 @@ -#include "minivan44.h" -#include "action_layer.h" -#include "eeconfig.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 _QW 0 -#define _DV 1 -#define _CM 2 -#define _L1 3 -#define _L2 4 -#define _L3 5 - -// Macro name shortcuts -#define QWERTY M(_QW) -#define DVORAK M(_DV) -#define COLEMAK M(_CM) - -// Fillers to make layering more clear -#define _______ KC_TRNS -#define XXXXXXX KC_NO - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_QW] = { /* 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 }, - {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1) }, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, - {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } - }, - [_DV] = { /* Dvorak */ - {KC_TAB, KC_COMM, KC_DOT, KC_SLSH, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_Q, KC_BSPC }, - {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, MO(_L1) }, - {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, MO(_L2) }, - {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } - }, - [_CM] = { /* Colemak */ - {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, - {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, MO(_L1) }, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2) }, - {KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_RALT, KC_ESC, XXXXXXX, TG(_L3) } - }, - [_L1] = { /* LAYER 1 */ - {KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL }, - {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, - {_______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, - {_______, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } - }, - [_L2] = { /* LAYER 2 */ - {_______, QWERTY, DVORAK, COLEMAK, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______ }, - {KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_4, KC_5, KC_6, KC_VOLU, KC_ENT }, - {_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______ }, - {_______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, XXXXXXX, _______ } - }, - [_L3] = { /* LAYER 3 */ - {_______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______ }, - {KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______ }, - {KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______ }, - {_______, KC_LSFT, KC_B, KC_SPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_C, _______, _______, XXXXXXX, _______ } - } -}; - -const uint16_t PROGMEM fn_actions[] = { - -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case _DV: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_DV); - } - break; - case _QW: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_QW); - } - break; - case _CM: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_CM); - } - break; - } - return MACRO_NONE; -}; diff --git a/keyboards/minivan44/keymaps/default/readme.md b/keyboards/minivan44/keymaps/default/readme.md deleted file mode 100644 index 189a9c0ff8..0000000000 --- a/keyboards/minivan44/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for minivan44 \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/xyverz/Makefile b/keyboards/minivan44/keymaps/xyverz/Makefile deleted file mode 100644 index f4671a9d11..0000000000 --- a/keyboards/minivan44/keymaps/xyverz/Makefile +++ /dev/null @@ -1,21 +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 # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) -COMMAND_ENABLE = yes # 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 = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/xyverz/config.h b/keyboards/minivan44/keymaps/xyverz/config.h deleted file mode 100644 index df06a26206..0000000000 --- a/keyboards/minivan44/keymaps/xyverz/config.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H - -#include "../../config.h" - -// place overrides here - -#endif \ No newline at end of file diff --git a/keyboards/minivan44/keymaps/xyverz/keymap.c b/keyboards/minivan44/keymaps/xyverz/keymap.c deleted file mode 100644 index f995da0e7e..0000000000 --- a/keyboards/minivan44/keymaps/xyverz/keymap.c +++ /dev/null @@ -1,92 +0,0 @@ -#include "minivan44.h" -#include "action_layer.h" -#include "eeconfig.h" - -extern keymap_config_t keymap_config; - -#define _DV 0 -#define _QW 1 -#define _CM 2 -#define _L1 3 -#define _L2 4 - -// Macro name shortcuts -#define DVORAK M(_DV) -#define QWERTY M(_QW) -#define COLEMAK M(_CM) - -// Fillers to make layering more clear -#define _______ KC_TRNS -#define XXXXXXX KC_NO - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_DV] = { /* 0: Dvorak */ - {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC }, - {MO(_L1), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_ENT }, - {KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT }, - {KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } - }, - - [_QW] = { /* 1: 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 }, - {MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, 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_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } - }, - - [_CM] = { /* 2: Colemak */ - {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC }, - {MO(_L1), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_ENT }, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT }, - {KC_LCTL, KC_LALT, KC_LGUI, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, KC_SLSH, KC_MINS, XXXXXXX, MO(_L2) } - }, - - [_L1] = {/* 1: FN 1 */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL }, - {_______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______ }, - {_______, _______, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT }, - {_______, KC_LGUI, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_SLSH, _______, _______ } - }, - - [_L2] = { /* 2: FN 2 */ - {KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_ESC }, - {_______, KC_F11, KC_F12, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_VOLU, KC_ENT }, - {_______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_VOLD, _______ }, - {QWERTY, DVORAK, COLEMAK, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______ } - } - -}; - -const uint16_t PROGMEM fn_actions[] = { - -}; - -void persistant_default_layer_set(uint16_t default_layer) { - eeconfig_update_default_layer(default_layer); - default_layer_set(default_layer); -} - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case _DV: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_DV); - } - break; - case _QW: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_QW); - } - break; - case _CM: - if (record->event.pressed) { - persistant_default_layer_set(1UL<<_CM); - } - break; - } - return MACRO_NONE; -}; - - diff --git a/keyboards/minivan44/keymaps/xyverz/readme.md b/keyboards/minivan44/keymaps/xyverz/readme.md deleted file mode 100644 index 189a9c0ff8..0000000000 --- a/keyboards/minivan44/keymaps/xyverz/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for minivan44 \ No newline at end of file diff --git a/keyboards/minivan44/minivan44.c b/keyboards/minivan44/minivan44.c deleted file mode 100644 index be8214fd5d..0000000000 --- a/keyboards/minivan44/minivan44.c +++ /dev/null @@ -1,28 +0,0 @@ -#include "minivan44.h" - -void matrix_init_kb(void) { - // put your keyboard start-up code here - // runs once when the firmware starts up - - matrix_init_user(); -} - -void matrix_scan_kb(void) { - // put your looping keyboard code here - // runs every cycle (a lot) - - matrix_scan_user(); -} - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - // put your per-action keyboard code here - // runs for every action, just before processing by the firmware - - return process_record_user(keycode, record); -} - -void led_set_kb(uint8_t usb_led) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - - led_set_user(usb_led); -} diff --git a/keyboards/minivan44/minivan44.h b/keyboards/minivan44/minivan44.h deleted file mode 100644 index c6119c2e16..0000000000 --- a/keyboards/minivan44/minivan44.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef MINIVAN44_H -#define MINIVAN44_H - -#include "quantum.h" - -// This a shortcut to help you visually see your layout. -// The following is an example using the Planck MIT layout -// The first section contains all of the arguements -// The second converts the arguments into a two-dimensional array -#define KEYMAP( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ - K30, K31, K32, K33, K37, K38, K39, K3B \ -) \ -{ \ - { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ - { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ - { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ - { K30, K31, K32, K33, KC_NO, KC_NO, KC_NO, K37, K38, K39, K3A, K3B } \ - -#endif diff --git a/keyboards/minivan44/readme.md b/keyboards/minivan44/readme.md deleted file mode 100644 index 59b62b0e66..0000000000 --- a/keyboards/minivan44/readme.md +++ /dev/null @@ -1,28 +0,0 @@ -minivan44 keyboard firmware -====================== - -## Quantum MK Firmware - -For the full Quantum feature list, see [the parent readme.md](/doc/readme.md). - -## Building - -Download or clone the whole firmware and navigate to the keyboards/minivan44 folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. - -Depending on which keymap you would like to use, you will have to compile slightly differently. - -### Default - -To build with the default keymap, simply run `make`. - -### Other Keymaps - -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a folder with the name of your keymap in the keymaps folder, and see keymap documentation (you can find in top readme.md) and existant keymap files. - -To build the firmware binary hex file with a keymap just do `make` with `keymap` option like: - -``` -$ make keymap=[default|jack|] -``` - -Keymaps follow the format **__keymap.c__** and are stored in folders in the `keymaps` folder, eg `keymaps/my_keymap/` \ No newline at end of file From 97fca1efff37f749fae8d53bb5ee4da9f8a898c5 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Sat, 13 Aug 2016 20:14:27 -0700 Subject: [PATCH 22/46] Fixing a mixup. Tidying up the keymap. --- keyboards/atreus/keymaps/xyverz/keymap.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/keyboards/atreus/keymaps/xyverz/keymap.c b/keyboards/atreus/keymaps/xyverz/keymap.c index 1ce92b4f22..b418cc9b5e 100644 --- a/keyboards/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/atreus/keymaps/xyverz/keymap.c @@ -46,24 +46,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L1] = { /* LAYER 1 */ {KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0 }, {KC_TAB, KC_INS, KC_UP, KC_DEL, KC_HOME, KC_NO, KC_PGUP, KC_MUTE, KC_VOLD, KC_VOLU, KC_EQL }, -<<<<<<< HEAD {KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_LCTL, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, KC_BSLS}, -======= - {KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_LCTL, KC_PGDN, KC_MPRV, KC_MPLY, KC_MNXT, KC_BSLS}, ->>>>>>> upstream/master {KC_TRNS, KC_GRV, KC_LGUI, KC_TRNS, KC_DEL, KC_LALT, KC_SPC, KC_TRNS, KC_LBRC, KC_RBRC, KC_ENT } }, [_L2] = { /* LAYER 2 */ {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, -<<<<<<< HEAD {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_PLUS}, {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12 }, {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), RESET} -======= - {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 }, - {KC_TRNS, KC_TRNS, DVORAK, QWERTY, COLEMAK, KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_F11, KC_F12 }, - {KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS, RESET } ->>>>>>> upstream/master } }; From 049343e523857eef6fe03bfd5ec73d830639e0b6 Mon Sep 17 00:00:00 2001 From: Xyverz Date: Sun, 14 Aug 2016 00:33:11 -0700 Subject: [PATCH 23/46] Added my own layout to the Phantom. --- keyboards/phantom/keymaps/xyverz/keymap.c | 104 ++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 keyboards/phantom/keymaps/xyverz/keymap.c diff --git a/keyboards/phantom/keymaps/xyverz/keymap.c b/keyboards/phantom/keymaps/xyverz/keymap.c new file mode 100644 index 0000000000..aa6af18b1d --- /dev/null +++ b/keyboards/phantom/keymaps/xyverz/keymap.c @@ -0,0 +1,104 @@ +#include "phantom.h" +#include "action_layer.h" +#include "eeconfig.h" + +extern keymap_config_t keymap_config; + + +// Used for SHIFT_ESC +#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) + +// 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 _QW 0 +#define _DV 1 +#define _CM 2 +#define _FL 3 + +// Macro name shortcuts +#define QWERTY M(_QW) +#define DVORAK M(_DV) +#define COLEMAK M(_CM) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QW] = { /* Layer 0: Qwerty */ + {KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS}, + {KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_INS, KC_HOME, 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_END, KC_PGDN}, + {KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, XXXXXXX, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX}, + {KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, XXXXXXX, KC_RSFT, XXXXXXX, KC_UP, XXXXXXX}, + {KC_LCTL, KC_LGUI, KC_LALT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, XXXXXXX, XXXXXXX, KC_RALT, KC_RGUI, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT} + }, + +[_DV] = { /* Layer 1: Dvorak */ + {KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS}, + {KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, XXXXXXX, KC_BSPC, KC_INS, KC_HOME, KC_PGUP}, + {KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_DEL, KC_END, KC_PGDN}, + {KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, XXXXXXX, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX}, + {KC_LSFT, XXXXXXX, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, XXXXXXX, KC_RSFT, XXXXXXX, KC_UP, XXXXXXX}, + {KC_LCTL, KC_LGUI, KC_LALT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, XXXXXXX, XXXXXXX, KC_RALT, KC_RGUI, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT} + }, + +[_CM] = { /* Layer 2: Colemak */ + {KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS}, + {KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_INS, KC_HOME, 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_END, KC_PGDN}, + {KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, XXXXXXX, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX}, + {KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, XXXXXXX, KC_RSFT, XXXXXXX, KC_UP, XXXXXXX}, + {KC_LCTL, KC_LGUI, KC_LALT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SPC, XXXXXXX, XXXXXXX, KC_RALT, KC_RGUI, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT} + }, + +[_FL] = { /* Layer 3: Functions */ + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, RESET, KC_MPRV, KC_MPLY, KC_MNXT}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX}, + {_______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, XXXXXXX}, + {QWERTY, DVORAK, COLEMAK, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, _______}, + }, + + +}; + +enum function_id { + SHIFT_ESC, +}; + + +const uint16_t PROGMEM fn_actions[] = { + +}; + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case _DV: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_DV); + } + break; + case _QW: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_QW); + } + break; + case _CM: + if (record->event.pressed) { + persistant_default_layer_set(1UL<<_CM); + } + break; + } + return MACRO_NONE; +}; From 880486bd247b93800f9d007f0ba90d38d5397b41 Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 10:46:40 +0200 Subject: [PATCH 24/46] Jack's keymap. --- keyboards/preonic/keymaps/jacwib/Makefile | 25 +++ keyboards/preonic/keymaps/jacwib/config.h | 9 + keyboards/preonic/keymaps/jacwib/keymap.c | 215 +++++++++++++++++++++ keyboards/preonic/keymaps/jacwib/readme.md | 2 + 4 files changed, 251 insertions(+) create mode 100644 keyboards/preonic/keymaps/jacwib/Makefile create mode 100644 keyboards/preonic/keymaps/jacwib/config.h create mode 100644 keyboards/preonic/keymaps/jacwib/keymap.c create mode 100644 keyboards/preonic/keymaps/jacwib/readme.md diff --git a/keyboards/preonic/keymaps/jacwib/Makefile b/keyboards/preonic/keymaps/jacwib/Makefile new file mode 100644 index 0000000000..1743c64878 --- /dev/null +++ b/keyboards/preonic/keymaps/jacwib/Makefile @@ -0,0 +1,25 @@ + + +# 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 # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = yes # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/preonic/keymaps/jacwib/config.h b/keyboards/preonic/keymaps/jacwib/config.h new file mode 100644 index 0000000000..330686559f --- /dev/null +++ b/keyboards/preonic/keymaps/jacwib/config.h @@ -0,0 +1,9 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +// place overrides here +#define FORCE_NKRO 1 + +#endif diff --git a/keyboards/preonic/keymaps/jacwib/keymap.c b/keyboards/preonic/keymaps/jacwib/keymap.c new file mode 100644 index 0000000000..1d5e0a7771 --- /dev/null +++ b/keyboards/preonic/keymaps/jacwib/keymap.c @@ -0,0 +1,215 @@ +#include "preonic.h" +#include "action_layer.h" +#include "eeconfig.h" +#include "keymap_nordic.h" +#ifdef AUDIO_ENABLE + #include "audio.h" +#endif + +// 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 _QWERTY 0 +#define _LOWER 3 +#define _RAISE 4 +#define _ADJUST 16 + +enum preonic_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE, + BACKLIT +}; + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | + | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | Q | W | E | R | T | Y | U | I | O | P | Å | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Tab | A | S | D | F | G | H | J | K | L | Ö | Ä | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| < | Z | X | C | V | B | N | M | . | , | - | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | GUI | Alt |AltGr |Lower | Space| Enter|Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = { + {KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, NO_PLUS, KC_BSPC},//Done + {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AM },//Done + {KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NO_AE, NO_OSLH},//Done + {KC_LSFT, NO_LESS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_COMM, NO_MINS},//Done + {KC_LCTL, KC_LGUI, KC_LALT, NO_ALGR, LOWER, KC_SPC, KC_ENT, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}//Done +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | | @ | £ | $ | | | { | [ | ] | } | \ | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | |VolUp | | | ~ | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | |LastS |PauseP|NextS | | * | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | |VolDwn| | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | |Bspc | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = { + {_______, NO_AT, NO_PND, NO_DLR, _______, _______, NO_LCBR, NO_LBRC, NO_RBRC, NO_RCBR, NO_BSLS, KC_DEL},//Done + {_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, NO_TILD},//Done + {_______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, NO_LPRN},//Done + {_______, NO_PIPE, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______},//Done + {_______, _______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______}//Done +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ! | " | # | ¤ | % | & | / | ( | ) | = | ? | Ins | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | |Mouse^| | | | |ScrlUp| | | ^ | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | |Mouse<|MouseV|Mouse>| | |MLC |MMC |MRC | ' | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | > | | | | | | |ScrlDown| : | ; | _ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | |Bspc | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = { + {LSFT(KC_1),NO_QUO2,LSFT(KC_3), NO_BULT,LSFT(KC_5), NO_AMPR, NO_SLSH, NO_LPRN, NO_RPRN, NO_EQL, NO_QUES, KC_INS},//Done + {_______, _______, _______, KC_MS_U, _______, _______, _______, _______, KC_WH_U, _______, _______, NO_CIRC},//Done + {_______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN3, KC_BTN2, NO_APOS, NO_QUOT},//Done + {_______, NO_GRTR, _______, _______, _______, _______, _______, _______, KC_WH_D, NO_COLN, NO_SCLN, NO_UNDS},//Done + {_______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______, _______}//Done +}, + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | Reset| | | | | | | | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | | | | |Rsft | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |MusOn |MusOff| | | | | | | | | Reset| + * |------+------+------+------+------+------+------+------+------+------+--,----+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = { + {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12},//Done + {_______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______},//Done + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT},//Done + {_______, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, RESET },//Done + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}//Done +} + + +}; + +#ifdef AUDIO_ENABLE //Mario theme song: E5 E5 E5 C5 E5 G5 G4 +float tone_startup[][2] = { + {NOTE_B5, 20}, + {NOTE_B6, 8}, + {NOTE_DS6, 20}, + {NOTE_B6, 8} +}; + +float tone_qwerty[][2] = SONG(QWERTY_SOUND); + +float tone_goodbye[][2] = SONG(GOODBYE_SOUND); + +float music_scale[][2] = SONG(MUSIC_SCALE_SOUND); +#endif + +void persistant_default_layer_set(uint16_t default_layer) { + eeconfig_update_default_layer(default_layer); + default_layer_set(default_layer); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_qwerty, false, 0); + #endif + persistant_default_layer_set(1UL<<_QWERTY); + } + 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 BACKLIT: + if (record->event.pressed) { + register_code(KC_RSFT); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + } else { + unregister_code(KC_RSFT); + } + return false; + break; + } + return true; +}; + +void matrix_init_user(void) { + #ifdef AUDIO_ENABLE + startup_user(); + #endif +} + +#ifdef AUDIO_ENABLE + +void startup_user() +{ + _delay_ms(20); // gets rid of tick + PLAY_NOTE_ARRAY(tone_startup, false, 0); +} + +void shutdown_user() +{ + PLAY_NOTE_ARRAY(tone_goodbye, false, 0); + _delay_ms(150); + stop_all_notes(); +} + +void music_on_user(void) +{ + music_scale_user(); +} + +void music_scale_user(void) +{ + PLAY_NOTE_ARRAY(music_scale, false, 0); +} + +#endif diff --git a/keyboards/preonic/keymaps/jacwib/readme.md b/keyboards/preonic/keymaps/jacwib/readme.md new file mode 100644 index 0000000000..e81c62f76e --- /dev/null +++ b/keyboards/preonic/keymaps/jacwib/readme.md @@ -0,0 +1,2 @@ +# Jack's preonic keymap. +Tries to feel like a normal keyboard, and is also designed for use with a swedish keymap. \ No newline at end of file From 1ab78110bd21b32a59eea46558ab4d83c5658cdb Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 10:48:22 +0200 Subject: [PATCH 25/46] Update readme.md --- keyboards/preonic/keymaps/jacwib/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/preonic/keymaps/jacwib/readme.md b/keyboards/preonic/keymaps/jacwib/readme.md index e81c62f76e..838af399cf 100644 --- a/keyboards/preonic/keymaps/jacwib/readme.md +++ b/keyboards/preonic/keymaps/jacwib/readme.md @@ -1,2 +1,2 @@ -# Jack's preonic keymap. -Tries to feel like a normal keyboard, and is also designed for use with a swedish keymap. \ No newline at end of file +# Jacwib's preonic keymap. +Tries to feel like a normal keyboard, and is also designed for use with a swedish keymap. From cf91aa416a6c32e2fa02d3ad31605ff1f24aab5e Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 10:48:52 +0200 Subject: [PATCH 26/46] Update keymap.c --- keyboards/preonic/keymaps/jacwib/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/preonic/keymaps/jacwib/keymap.c b/keyboards/preonic/keymaps/jacwib/keymap.c index 1d5e0a7771..4ddaa962e1 100644 --- a/keyboards/preonic/keymaps/jacwib/keymap.c +++ b/keyboards/preonic/keymaps/jacwib/keymap.c @@ -100,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | | | | |Rsft | * |------+------+------+------+------+------|------+------+------+------+------+------| * | |MusOn |MusOff| | | | | | | | | Reset| - * |------+------+------+------+------+------+------+------+------+------+--,----+------| + * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ From 62004866b3eee07a39a6caa0f6f3a2df0d5b2ef5 Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 10:49:06 +0200 Subject: [PATCH 27/46] Update config.h --- keyboards/preonic/keymaps/jacwib/config.h | 1 - 1 file changed, 1 deletion(-) diff --git a/keyboards/preonic/keymaps/jacwib/config.h b/keyboards/preonic/keymaps/jacwib/config.h index 330686559f..23e9e0ed28 100644 --- a/keyboards/preonic/keymaps/jacwib/config.h +++ b/keyboards/preonic/keymaps/jacwib/config.h @@ -3,7 +3,6 @@ #include "../../config.h" -// place overrides here #define FORCE_NKRO 1 #endif From 26f4a0cf04cc11690abc80f644b5fbdc869cf056 Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 10:49:26 +0200 Subject: [PATCH 28/46] Update Makefile --- keyboards/preonic/keymaps/jacwib/Makefile | 5 ----- 1 file changed, 5 deletions(-) diff --git a/keyboards/preonic/keymaps/jacwib/Makefile b/keyboards/preonic/keymaps/jacwib/Makefile index 1743c64878..3e87d41d36 100644 --- a/keyboards/preonic/keymaps/jacwib/Makefile +++ b/keyboards/preonic/keymaps/jacwib/Makefile @@ -1,9 +1,5 @@ -# 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 # Virtual DIP switch configuration(+1000) MOUSEKEY_ENABLE = yes # Mouse keys(+4700) EXTRAKEY_ENABLE = yes # Audio control and System control(+450) @@ -17,7 +13,6 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend ifndef QUANTUM_DIR From e4e13ddc54d90b41a882c76a2d28f28763117763 Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 10:57:47 +0200 Subject: [PATCH 29/46] Update readme.md --- keyboards/preonic/keymaps/jacwib/readme.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/keyboards/preonic/keymaps/jacwib/readme.md b/keyboards/preonic/keymaps/jacwib/readme.md index 838af399cf..0660312353 100644 --- a/keyboards/preonic/keymaps/jacwib/readme.md +++ b/keyboards/preonic/keymaps/jacwib/readme.md @@ -1,2 +1,3 @@ # Jacwib's preonic keymap. -Tries to feel like a normal keyboard, and is also designed for use with a swedish keymap. + +Designed for use with a swedish language. From 6ba27ea31883d52b3e023681edc344cc95e90317 Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 11:02:46 +0200 Subject: [PATCH 30/46] Remove pointless comments --- keyboards/preonic/keymaps/jacwib/keymap.c | 42 +++++++++++------------ 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/keyboards/preonic/keymaps/jacwib/keymap.c b/keyboards/preonic/keymaps/jacwib/keymap.c index 4ddaa962e1..53604ef018 100644 --- a/keyboards/preonic/keymaps/jacwib/keymap.c +++ b/keyboards/preonic/keymaps/jacwib/keymap.c @@ -42,11 +42,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_QWERTY] = { - {KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, NO_PLUS, KC_BSPC},//Done - {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AM },//Done - {KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NO_AE, NO_OSLH},//Done - {KC_LSFT, NO_LESS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_COMM, NO_MINS},//Done - {KC_LCTL, KC_LGUI, KC_LALT, NO_ALGR, LOWER, KC_SPC, KC_ENT, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}//Done + {KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, NO_PLUS, KC_BSPC}, + {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, NO_AM }, + {KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, NO_AE, NO_OSLH}, + {KC_LSFT, NO_LESS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_COMM, NO_MINS}, + {KC_LCTL, KC_LGUI, KC_LALT, NO_ALGR, LOWER, KC_SPC, KC_ENT, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} }, /* Lower @@ -63,11 +63,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_LOWER] = { - {_______, NO_AT, NO_PND, NO_DLR, _______, _______, NO_LCBR, NO_LBRC, NO_RBRC, NO_RCBR, NO_BSLS, KC_DEL},//Done - {_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, NO_TILD},//Done - {_______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, NO_LPRN},//Done - {_______, NO_PIPE, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______},//Done - {_______, _______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______}//Done + {_______, NO_AT, NO_PND, NO_DLR, _______, _______, NO_LCBR, NO_LBRC, NO_RBRC, NO_RCBR, NO_BSLS, KC_DEL}, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, NO_TILD}, + {_______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, NO_LPRN}, + {_______, NO_PIPE, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______} }, /* Raise @@ -84,11 +84,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_RAISE] = { - {LSFT(KC_1),NO_QUO2,LSFT(KC_3), NO_BULT,LSFT(KC_5), NO_AMPR, NO_SLSH, NO_LPRN, NO_RPRN, NO_EQL, NO_QUES, KC_INS},//Done - {_______, _______, _______, KC_MS_U, _______, _______, _______, _______, KC_WH_U, _______, _______, NO_CIRC},//Done - {_______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN3, KC_BTN2, NO_APOS, NO_QUOT},//Done - {_______, NO_GRTR, _______, _______, _______, _______, _______, _______, KC_WH_D, NO_COLN, NO_SCLN, NO_UNDS},//Done - {_______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______, _______}//Done + {LSFT(KC_1),NO_QUO2,LSFT(KC_3), NO_BULT,LSFT(KC_5), NO_AMPR, NO_SLSH, NO_LPRN, NO_RPRN, NO_EQL, NO_QUES, KC_INS}, + {_______, _______, _______, KC_MS_U, _______, _______, _______, _______, KC_WH_U, _______, _______, NO_CIRC}, + {_______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN3, KC_BTN2, NO_APOS, NO_QUOT}, + {_______, NO_GRTR, _______, _______, _______, _______, _______, _______, KC_WH_D, NO_COLN, NO_SCLN, NO_UNDS}, + {_______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______, _______} }, /* Adjust (Lower + Raise) @@ -105,17 +105,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = { - {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12},//Done - {_______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______},//Done - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT},//Done - {_______, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, RESET },//Done - {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}//Done + {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12}, + {_______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT}, + {_______, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, RESET }, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} } }; -#ifdef AUDIO_ENABLE //Mario theme song: E5 E5 E5 C5 E5 G5 G4 +#ifdef AUDIO_ENABLE float tone_startup[][2] = { {NOTE_B5, 20}, {NOTE_B6, 8}, From 54e37fd2d10f91b1b77cee263c1e3a2b3552cbd9 Mon Sep 17 00:00:00 2001 From: jacwib Date: Sun, 14 Aug 2016 11:08:01 +0200 Subject: [PATCH 31/46] Fix bug --- keyboards/preonic/keymaps/jacwib/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/preonic/keymaps/jacwib/keymap.c b/keyboards/preonic/keymaps/jacwib/keymap.c index 53604ef018..cf441bf309 100644 --- a/keyboards/preonic/keymaps/jacwib/keymap.c +++ b/keyboards/preonic/keymaps/jacwib/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = { {_______, NO_AT, NO_PND, NO_DLR, _______, _______, NO_LCBR, NO_LBRC, NO_RBRC, NO_RCBR, NO_BSLS, KC_DEL}, {_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, NO_TILD}, - {_______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, NO_LPRN}, + {_______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, LSFT(KC_BSLS)}, {_______, NO_PIPE, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______}, {_______, _______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______} }, From c6c2c3fc14736e4d226c5f410d8c3faf3d36629f Mon Sep 17 00:00:00 2001 From: di0ib Date: Sun, 14 Aug 2016 10:58:10 -1000 Subject: [PATCH 32/46] minorca minirca with RGB keymap --- keyboards/minorca/Makefile | 71 +++++++++++++++++ keyboards/minorca/config.h | 80 ++++++++++++++++++++ keyboards/minorca/keymaps/default/Makefile | 25 ++++++ keyboards/minorca/keymaps/default/config.h | 12 +++ keyboards/minorca/keymaps/default/keymap.c | 44 +++++++++++ keyboards/minorca/keymaps/default/readme.md | 5 ++ keyboards/minorca/keymaps/readme.md | 23 ++++++ keyboards/minorca/keymaps/rgb/Makefile | 25 ++++++ keyboards/minorca/keymaps/rgb/config.h | 20 +++++ keyboards/minorca/keymaps/rgb/example.jpg | Bin 0 -> 72737 bytes keyboards/minorca/keymaps/rgb/keymap.c | 65 ++++++++++++++++ keyboards/minorca/keymaps/rgb/readme.md | 23 ++++++ keyboards/minorca/keymaps/rgb/wiring1.jpg | Bin 0 -> 119547 bytes keyboards/minorca/keymaps/rgb/wiring2.jpg | Bin 0 -> 94987 bytes keyboards/minorca/minorca.c | 6 ++ keyboards/minorca/minorca.h | 6 ++ keyboards/minorca/readme.md | 31 ++++++++ 17 files changed, 436 insertions(+) create mode 100644 keyboards/minorca/Makefile create mode 100644 keyboards/minorca/config.h create mode 100644 keyboards/minorca/keymaps/default/Makefile create mode 100644 keyboards/minorca/keymaps/default/config.h create mode 100644 keyboards/minorca/keymaps/default/keymap.c create mode 100644 keyboards/minorca/keymaps/default/readme.md create mode 100644 keyboards/minorca/keymaps/readme.md create mode 100644 keyboards/minorca/keymaps/rgb/Makefile create mode 100644 keyboards/minorca/keymaps/rgb/config.h create mode 100644 keyboards/minorca/keymaps/rgb/example.jpg create mode 100644 keyboards/minorca/keymaps/rgb/keymap.c create mode 100644 keyboards/minorca/keymaps/rgb/readme.md create mode 100644 keyboards/minorca/keymaps/rgb/wiring1.jpg create mode 100644 keyboards/minorca/keymaps/rgb/wiring2.jpg create mode 100644 keyboards/minorca/minorca.c create mode 100644 keyboards/minorca/minorca.h create mode 100644 keyboards/minorca/readme.md diff --git a/keyboards/minorca/Makefile b/keyboards/minorca/Makefile new file mode 100644 index 0000000000..8cff000493 --- /dev/null +++ b/keyboards/minorca/Makefile @@ -0,0 +1,71 @@ +# MCU name +#MCU = at90usb1287 +MCU = atmega32u4 + +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU = 16000000 + +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH = AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB = $(F_CPU) + +# Interrupt driven control endpoint task(+60) +OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +OPT_DEFS += -DBOOTLOADER_SIZE=512 + +# 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 ?= yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) +EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) +CONSOLE_ENABLE ?= no # Console for debug(+400) +COMMAND_ENABLE ?= yes # 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 ?= no # Unicode +BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE ?= yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../Makefile +endif \ No newline at end of file diff --git a/keyboards/minorca/config.h b/keyboards/minorca/config.h new file mode 100644 index 0000000000..4cdafcbd2e --- /dev/null +++ b/keyboards/minorca/config.h @@ -0,0 +1,80 @@ +/* +Copyright 2012 Jun Wako + +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 . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6660 +#define DEVICE_VER 0x0001 +#define MANUFACTURER ME +#define PRODUCT MinOrca +#define DESCRIPTION Tiny Whale + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* MinOrca PCB default pin-out */ +#define MATRIX_COL_PINS { D4, D6, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } +#define MATRIX_ROW_PINS { B0, B1, B2, B3 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +#define BACKLIGHT_LEVELS 3 + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCING_DELAY 5 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +#endif diff --git a/keyboards/minorca/keymaps/default/Makefile b/keyboards/minorca/keymaps/default/Makefile new file mode 100644 index 0000000000..8dc851fddf --- /dev/null +++ b/keyboards/minorca/keymaps/default/Makefile @@ -0,0 +1,25 @@ + + +# 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 = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/minorca/keymaps/default/config.h b/keyboards/minorca/keymaps/default/config.h new file mode 100644 index 0000000000..bf40376c19 --- /dev/null +++ b/keyboards/minorca/keymaps/default/config.h @@ -0,0 +1,12 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +/* bootmagic salt key */ +#define BOOTMAGIC_KEY_SALT KC_ESC + +/* skip bootmagic and eeconfig */ +#define BOOTMAGIC_KEY_SKIP KC_SPACE + +#endif diff --git a/keyboards/minorca/keymaps/default/keymap.c b/keyboards/minorca/keymaps/default/keymap.c new file mode 100644 index 0000000000..a55d578e44 --- /dev/null +++ b/keyboards/minorca/keymaps/default/keymap.c @@ -0,0 +1,44 @@ +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, +// this is the style you want to emulate. + +#include "minorca.h" +#include "action_layer.h" +#include "eeconfig.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. + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = { /* Base */ + {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC }, + {KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, XXXXXXX, KC_ENT }, + {KC_LCTRL,XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_QUOT, KC_FN1, KC_FN0 }, + {KC_NO, XXXXXXX, KC_NO, KC_LALT, KC_SPC, XXXXXXX, XXXXXXX, KC_SPC, XXXXXXX, KC_DOT, KC_SLSH, KC_NO } + }, + [1] = { /* First */ + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELT }, + {KC_TAB, KC_MPRV, KC_MPLY, KC_MNXT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, XXXXXXX, KC_LGUI }, + {KC_LCTRL,XXXXXXX, KC_Z, KC_X, KC_C, KC_PGDN, KC_END, KC_L, KC_SCLN, KC_UP, KC_FN1, KC_FN0 }, + {KC_NO, XXXXXXX, KC_NO, KC_LALT, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_DOWN, KC_RIGHT,KC_NO } + }, + [2] = { /* Second */ + {KC_ESC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DELT }, + {KC_TAB, KC_MUTE, KC_VOLD, KC_VOLU, KC_TILD, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, XXXXXXX, KC_ENT }, + {KC_CAPS, XXXXXXX, KC_LSFT, KC_RSFT, KC_PAUSE,KC_F10, KC_F11, KC_F12, KC_NO, KC_UP, KC_FN1, KC_FN0 }, + {KC_NO, XXXXXXX, KC_NO, KC_LALT, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_DOWN, KC_RIGHT,KC_NO } + }, +}; + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(1), // to First overlay + [1] = ACTION_LAYER_MOMENTARY(2), // to Second overlay + +}; \ No newline at end of file diff --git a/keyboards/minorca/keymaps/default/readme.md b/keyboards/minorca/keymaps/default/readme.md new file mode 100644 index 0000000000..6ed31f82b3 --- /dev/null +++ b/keyboards/minorca/keymaps/default/readme.md @@ -0,0 +1,5 @@ +# The Default Minorca Layout + +Copied from https://github.com/pancinteractive/qmk_firmware/blob/master/keyboard/minorca_mkV/keymaps/default/keymap.c + +It looks incomplete. \ No newline at end of file diff --git a/keyboards/minorca/keymaps/readme.md b/keyboards/minorca/keymaps/readme.md new file mode 100644 index 0000000000..54fb5f6d9e --- /dev/null +++ b/keyboards/minorca/keymaps/readme.md @@ -0,0 +1,23 @@ +# How to add your own keymap + +Folders can be named however you'd like (will be approved upon merging), or should follow the format with a preceding `_`: + + _[ISO 3166-1 alpha-2 code*]_[layout variant]_[layout name/author] + +\* See full list: https://en.wikipedia.org/wiki/ISO_3166-1#Officially_assigned_code_elements + +and contain the following files: + +* `keymap.c` +* `readme.md` *recommended* +* `config.h` *optional*, found automatically when compiling +* `Makefile` *optional*, found automatically when compling + +When adding your keymap to this list, keep it organised alphabetically (select list, edit->sort lines), and use this format: + + * **folder_name** description + +# List of Planck keymaps + +* **default** default Planck layout +* **cbbrowne** cbbrowne's Planck layout \ No newline at end of file diff --git a/keyboards/minorca/keymaps/rgb/Makefile b/keyboards/minorca/keymaps/rgb/Makefile new file mode 100644 index 0000000000..230f75a628 --- /dev/null +++ b/keyboards/minorca/keymaps/rgb/Makefile @@ -0,0 +1,25 @@ + + +# 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 = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # 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 = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/minorca/keymaps/rgb/config.h b/keyboards/minorca/keymaps/rgb/config.h new file mode 100644 index 0000000000..deaac2e26f --- /dev/null +++ b/keyboards/minorca/keymaps/rgb/config.h @@ -0,0 +1,20 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +/* bootmagic salt key */ +#define BOOTMAGIC_KEY_SALT KC_ESC + +/* skip bootmagic and eeconfig */ +#define BOOTMAGIC_KEY_SKIP KC_SPACE + +/* ws2812 RGB LED */ +#define RGB_DI_PIN D5 +#define RGBLIGHT_TIMER +#define RGBLED_NUM 13 // Number of LEDs +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 17 +#define RGBLIGHT_VAL_STEP 17 + +#endif diff --git a/keyboards/minorca/keymaps/rgb/example.jpg b/keyboards/minorca/keymaps/rgb/example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a04c8d37d6c107f025b9f559bca20c408e2b4e3a GIT binary patch literal 72737 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 literal 0 HcmV?d00001 diff --git a/keyboards/minorca/keymaps/rgb/keymap.c b/keyboards/minorca/keymaps/rgb/keymap.c new file mode 100644 index 0000000000..9002afbb88 --- /dev/null +++ b/keyboards/minorca/keymaps/rgb/keymap.c @@ -0,0 +1,65 @@ +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, +// this is the style you want to emulate. + +#include "minorca.h" +#include "action_layer.h" +#include "eeconfig.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 _QWERTY 0 +#define _LOWER 1 +#define _RAISE 2 +#define _TB 3 + +// Macro name shortcuts +#define QWERTY M(_QWERTY) +#define LOWER M(_LOWER) +#define RAISE M(_RAISE) + +// Fillers to make layering more clear +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = { /* Qwerty */ + {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {FUNC(0), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, XXXXXXX, KC_QUOT}, + {KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, FUNC(1)}, + {KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, FUNC(2), XXXXXXX, XXXXXXX, FUNC(3), XXXXXXX, KC_RALT, KC_APP, KC_RCTL} +}, + +[_RAISE] = { + {S(KC_GRV), S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), S(KC_0), KC_BSPC}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUSE, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_MINS), S(KC_EQL), S(KC_LBRC), XXXXXXX, S(KC_BSLS)}, + {KC_TRNS, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_ENT}, + {KC_TRNS, XXXXXXX, KC_TRNS, KC_TRNS, KC_TRNS, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, KC_MNXT, KC_MUTE, KC_MPLY} +}, + +[_LOWER] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELETE}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LBRC, XXXXXXX, KC_BSLS}, + {KC_TRNS, XXXXXXX, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_PGUP, KC_ENT}, + {KC_TRNS, XXXXXXX, KC_TRNS, KC_TRNS, KC_TRNS, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, KC_HOME, KC_PGDN, KC_END} +}, + +[_TB] = { /* Tab */ + {KC_ESC, KC_CALC, KC_WHOM, KC_MAIL, KC_MYCM, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, XXXXXXX, KC_TRNS}, + {KC_TRNS, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_UP, KC_ENT}, + {BL_STEP, XXXXXXX, KC_TRNS, KC_TRNS, KC_TRNS, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT} +} +}; + + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_LAYER_TAP_KEY(_TB, KC_TAB), + [1] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT), + [2] = ACTION_LAYER_TAP_KEY(_RAISE, KC_SPC), + [3] = ACTION_LAYER_TAP_KEY(_LOWER, KC_SPC), +}; diff --git a/keyboards/minorca/keymaps/rgb/readme.md b/keyboards/minorca/keymaps/rgb/readme.md new file mode 100644 index 0000000000..50806068ce --- /dev/null +++ b/keyboards/minorca/keymaps/rgb/readme.md @@ -0,0 +1,23 @@ +#RGB backlight for MinOrca + +![wiring](example.jpg) + +Exmaple of adding WS2812b LEDs to a MinOrca. + +http://www.40percent.club/2016/08/tiny-whale.html + +The keymap is a work in progress. The RGB functions are accessed by holding down the TAB key. + +Tab + Z Toggle on/off +Tab + X Mode +Tab + C Hue+ +Tab + V Hue- +Tab + B Saturation+ +Tab + N Saturation- +Tab + M Brightness+ +Tab + , Brightness- + +Example wiring: + +![wiring](wiring1.jpg) +![wiring closeup](wiring2.jpg) diff --git a/keyboards/minorca/keymaps/rgb/wiring1.jpg b/keyboards/minorca/keymaps/rgb/wiring1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7dcbe80c5eda0e7a5472f62f6e8d4d609e8e0834 GIT binary patch literal 119547 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≶`f4(^PyCJ= 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