From ebe351a6905d5031d5383b4ad7fe551e0e844d52 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Thu, 15 Dec 2016 07:22:31 +0800 Subject: [PATCH 01/41] enable brackets using the - key on the right, and cleanups --- .../ergodox/keymaps/dvorak_programmer/keymap.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index f3d02f688..3d7e1893c 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(MOUSE,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + LT(MOUSE,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), MO(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSLS, KC_PGUP, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, - KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_D, KC_H, KC_T, KC_N, KC_S, LT(BRACKETS,KC_MINS), KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, TD(TD_SHIFT_CAPSLOCK), // lower keys - browser tab control RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), RCTL(KC_W), @@ -209,12 +209,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BRACKETS] = 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_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,M(OPEN_CLOSE_CURLY), M(OPEN_CLOSE_PAREN),M(OPEN_CLOSE_BRACKET), KC_TRNS,KC_TRNS, + KC_TRNS,KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, KC_LCBR, KC_RCBR, 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 From 1ac15e6b3a6c43669d5b107e4ca550d2aa7c284c Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Tue, 17 Jan 2017 20:34:05 +0800 Subject: [PATCH 02/41] put shell nav under tab, introduce an OSL for the brackets layer --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 3d7e1893c..2a64331db 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -58,18 +58,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(MOUSE,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), - MO(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, + LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), // thumb cluster - MO(BRACKETS), RCTL(KC_S), + MO(MOUSE), RCTL(KC_S), RCTL(KC_DEL), KC_BSPC,RCTL(KC_BSPC),KC_DEL, // right hand KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSLS, KC_PGUP, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, - KC_D, KC_H, KC_T, KC_N, KC_S, LT(BRACKETS,KC_MINS), + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_PGDN, KC_B, KC_M, KC_W, KC_V, KC_Z, TD(TD_SHIFT_CAPSLOCK), // lower keys - browser tab control RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), RCTL(KC_T), LALT(KC_LEFT), RCTL(KC_W), @@ -406,6 +406,7 @@ void matrix_scan_user(void) { switch (layer) { case NUMBER: case SYMBOL: + case BRACKETS: ergodox_right_led_2_on(); break; case KEY_NAV: From 0815c7ae17cc19007c2074d178cb27476c5c6b83 Mon Sep 17 00:00:00 2001 From: Mitch Lloyd Date: Tue, 17 Jan 2017 12:48:58 -0800 Subject: [PATCH 03/41] Update mitch layout for new keymaps --- keyboards/planck/keymaps/mitch/Makefile | 5 ++ keyboards/planck/keymaps/mitch/config.h | 2 + keyboards/planck/keymaps/mitch/keymap.c | 70 +++++++++++++++++++ keyboards/planck/keymaps/mitch/readme.md | 26 +++++++ .../common_keymaps/keymap_mitch.c | 49 ------------- 5 files changed, 103 insertions(+), 49 deletions(-) create mode 100644 keyboards/planck/keymaps/mitch/Makefile create mode 100644 keyboards/planck/keymaps/mitch/config.h create mode 100644 keyboards/planck/keymaps/mitch/keymap.c create mode 100644 keyboards/planck/keymaps/mitch/readme.md delete mode 100644 keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c diff --git a/keyboards/planck/keymaps/mitch/Makefile b/keyboards/planck/keymaps/mitch/Makefile new file mode 100644 index 000000000..7955003d4 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/Makefile @@ -0,0 +1,5 @@ +SUBPROJECT = rev3 + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/planck/keymaps/mitch/config.h b/keyboards/planck/keymaps/mitch/config.h new file mode 100644 index 000000000..73bc50bc2 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/config.h @@ -0,0 +1,2 @@ +#include "../../config.h" +#define PREVENT_STUCK_MODIFIERS diff --git a/keyboards/planck/keymaps/mitch/keymap.c b/keyboards/planck/keymaps/mitch/keymap.c new file mode 100644 index 000000000..79b5204f0 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/keymap.c @@ -0,0 +1,70 @@ +#include "keymap.h" +#include "quantum.h" + +#define QWERTY 0 +#define LOWER 1 +#define RAISE 2 + +// Alias to make layering more clear +#define _______ KC_TRNS + +// In MacOS, switch between windows within an application +#define GUI_GRV LGUI(KC_GRV) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Ctl | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | Del | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[QWERTY] = { + {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT(MOD_RSFT, KC_ENT) }, + {KC_ESC, KC_DEL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | GUIGR| | | | | | | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Caps | | Mute | Vol- | Vol+ | | Bksp | $ | % | ^ | | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | ! | @ | # | \ |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | Enter | | | PgUp | PgUn | | + * `-----------------------------------------------------------------------------------' + */ +[LOWER] = { + {GUI_GRV, _______, _______, _______, _______, _______, _______, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL}, + {KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, KC_PIPE, KC_PIPE}, + {_______, _______, _______, _______, _______, _______, _______, KC_EXLM, KC_AT, KC_HASH, KC_BSLS, KC_ENT}, + {_______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, _______, KC_PGDN, KC_PGUP, _______} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | ` | ~ | ( | ) | | | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | [ | ] | { | } | | | 4 | 5 | 6 | | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | - | _ | = | + | | | 1 | 2 | 3 | |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | Enter | | | | | | + * `-----------------------------------------------------------------------------------' + */ + +[RAISE] = { + {KC_GRV, KC_GRV, KC_TILD, KC_LPRN, KC_RPRN, _______, _______, KC_7, KC_8, KC_9, KC_0, _______}, + {_______, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, _______, _______, KC_4, KC_5, KC_6, _______, KC_BSLS}, + {_______, KC_MINS, KC_UNDS, KC_EQL, KC_PLUS, _______, _______, KC_1, KC_2, KC_3, _______, KC_ENT}, + {_______, _______, _______, _______, _______, KC_ENT, KC_ENT, _______, _______, KC_PGDN, KC_PGUP, _______} +} +}; diff --git a/keyboards/planck/keymaps/mitch/readme.md b/keyboards/planck/keymaps/mitch/readme.md new file mode 100644 index 000000000..3869304f4 --- /dev/null +++ b/keyboards/planck/keymaps/mitch/readme.md @@ -0,0 +1,26 @@ +## Flashing Keyboard + +1. Install `dfu` tools: + + brew tap osx-cross/avr + brew install avr-libc + brew install dfu-programmer + +2. Move to this directory. +3. Hit the reset button on the keyboard. +4. run `make dfu`. + +## The Keymap + +This keymap is designed for a rev3 Planck Keyboard. + +The default layer is QWERTY. The raise layer has a ten key on the right +and common programming punctuation on the left. The lower layer provides the +rest of the symbols, mostly mapped with the ten key numbers. + +The normal right shift key uses the `MT` macro to trigger Enter on tap and right +shift when held. + +This keymap sets the `PREVENT_STUCK_MODIFIERS` flag to avoid the occasional WTF +moments when using a modifier keys and accidentally releasing them after moving +to a new layer. diff --git a/keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c b/keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c deleted file mode 100644 index e5a86b402..000000000 --- a/keyboards/planck/old_keymap_files/common_keymaps/keymap_mitch.c +++ /dev/null @@ -1,49 +0,0 @@ -#include "keymap.h" - -const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = KEYMAP( - TAB, Q, W, E, R, T, Y, U, I, O, P, BSPC, - LCTL, A, S, D, F, G, H, J, K, L, SCLN, QUOT, - LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN3, - ESC, DEL, LALT, LGUI, FN2, SPC, FN1, LEFT, DOWN, UP, RGHT), -[1] = KEYMAP( - GRV, GRV, FN22, FN19, FN10, TRNS, TRNS, 7, 8, 9, 0, BSPC, - TRNS, LBRC, RBRC, FN23, FN24, TRNS, TRNS, 4, 5, 6, TRNS, BSLS, - TRNS, MINS, FN20, EQL, FN21, TRNS, TRNS, 1, 2, 3, TRNS, ENT, - TRNS, TRNS, TRNS, TRNS, TRNS, SPC, FN1, TRNS, PGDN, PGUP, TRNS), -[2] = KEYMAP( - FN26, FN10, FN11, FN12, FN13, FN14, FN15, FN17, FN18, FN19, FN10, DEL, - TRNS, TRNS, MUTE, VOLD, VOLU, TRNS, BSPC, FN14, FN15, FN16, TRNS, FN25, - TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, FN11, FN12, FN13, TRNS, ENT, - TRNS, TRNS, TRNS, TRNS, FN2, ENT, TRNS, TRNS, PGDN, PGUP, TRNS), -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_MOMENTARY(1), // Switch layer raise - [2] = ACTION_LAYER_MOMENTARY(2), // Switch layer lower - - [3] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT), // Right shift serves as Enter on tap - - // Numeric shift modifiers - [10] = ACTION_MODS_KEY(MOD_LSFT, KC_0), - [11] = ACTION_MODS_KEY(MOD_LSFT, KC_1), - [12] = ACTION_MODS_KEY(MOD_LSFT, KC_2), - [13] = ACTION_MODS_KEY(MOD_LSFT, KC_3), - [14] = ACTION_MODS_KEY(MOD_LSFT, KC_4), - [15] = ACTION_MODS_KEY(MOD_LSFT, KC_5), - [16] = ACTION_MODS_KEY(MOD_LSFT, KC_6), - [17] = ACTION_MODS_KEY(MOD_LSFT, KC_7), - [18] = ACTION_MODS_KEY(MOD_LSFT, KC_8), - [19] = ACTION_MODS_KEY(MOD_LSFT, KC_9), - - // Other shift modifiers - [20] = ACTION_MODS_KEY(MOD_LSFT, KC_MINS), // _ - [21] = ACTION_MODS_KEY(MOD_LSFT, KC_EQL), // + - [22] = ACTION_MODS_KEY(MOD_LSFT, KC_GRV), // ~ - [23] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRC), // { - [24] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), // } - [25] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLS), // | - - // Switch windows in app - [26] = ACTION_MODS_KEY(MOD_LGUI, KC_GRV), -}; From 9eb8d05246fba4f46c04b8fa1884b8f2d2ee0664 Mon Sep 17 00:00:00 2001 From: SjB Date: Tue, 17 Jan 2017 21:47:07 -0500 Subject: [PATCH 04/41] added mods status bit to visualizer. Since we can't read the real_mods and oneshot_mods static variable directly within the update_user_visualizer_state function (Threading and serial link). We are know storing the mods states in the visualizer_keyboard_status_t structure. We can now display the status of the modifier keys on the LCD display. --- quantum/visualizer/visualizer.c | 58 ++++++++++++++++++++++++++++++++- quantum/visualizer/visualizer.h | 9 ++++- tmk_core/common/keyboard.c | 2 +- 3 files changed, 66 insertions(+), 3 deletions(-) diff --git a/quantum/visualizer/visualizer.c b/quantum/visualizer/visualizer.c index 54f6faaa4..5826d909e 100644 --- a/quantum/visualizer/visualizer.c +++ b/quantum/visualizer/visualizer.c @@ -53,10 +53,13 @@ SOFTWARE. #define "Visualizer thread priority not defined" #endif +// mods status +#include "action_util.h" static visualizer_keyboard_status_t current_status = { .layer = 0xFFFFFFFF, .default_layer = 0xFFFFFFFF, + .mods = 0xFF, .leds = 0xFFFFFFFF, .suspended = false, }; @@ -64,6 +67,7 @@ static visualizer_keyboard_status_t current_status = { static bool same_status(visualizer_keyboard_status_t* status1, visualizer_keyboard_status_t* status2) { return status1->layer == status2->layer && status1->default_layer == status2->default_layer && + status1->mods == status2->mods && status1->leds == status2->leds && status1->suspended == status2->suspended; } @@ -307,6 +311,45 @@ bool keyframe_display_layer_bitmap(keyframe_animation_t* animation, visualizer_s gdispFlush(); return false; } + +static void format_mods_bitmap_string(uint8_t mods, char* buffer) { + *buffer = ' '; + ++buffer; + + for (int i = 0; i<8; i++) + { + uint32_t mask = (1u << i); + if (mods & mask) { + *buffer = '1'; + } else { + *buffer = '0'; + } + ++buffer; + + if (i==3) { + *buffer = ' '; + ++buffer; + } + } + *buffer = 0; +} + +bool keyframe_display_mods_bitmap(keyframe_animation_t* animation, visualizer_state_t* state) { + (void)animation; + + const char* title = "Modifier states"; + const char* mods_header = " CSAG CSAG "; + char status_buffer[12]; + + gdispClear(White); + gdispDrawString(0, 0, title, state->font_fixed5x8, Black); + gdispDrawString(0, 10, mods_header, state->font_fixed5x8, Black); + format_mods_bitmap_string(state->status.mods, status_buffer); + gdispDrawString(0, 20, status_buffer, state->font_fixed5x8, Black); + + gdispFlush(); + return false; +} #endif // LCD_ENABLE bool keyframe_disable_lcd_and_backlight(keyframe_animation_t* animation, visualizer_state_t* state) { @@ -350,6 +393,7 @@ static DECLARE_THREAD_FUNCTION(visualizerThread, arg) { visualizer_keyboard_status_t initial_status = { .default_layer = 0xFFFFFFFF, .layer = 0xFFFFFFFF, + .mods = 0xFF, .leds = 0xFFFFFFFF, .suspended = false, }; @@ -499,7 +543,18 @@ void update_status(bool changed) { #endif } -void visualizer_update(uint32_t default_state, uint32_t state, uint32_t leds) { +uint8_t visualizer_get_mods() { + uint8_t mods = get_mods(); + +#ifndef NO_ACTION_ONESHOT + if (!has_oneshot_mods_timed_out()) { + mods |= get_oneshot_mods(); + } +#endif + return mods; +} + +void visualizer_update(uint32_t default_state, uint32_t state, uint8_t mods, uint32_t leds) { // Note that there's a small race condition here, the thread could read // a state where one of these are set but not the other. But this should // not really matter as it will be fixed during the next loop step. @@ -523,6 +578,7 @@ void visualizer_update(uint32_t default_state, uint32_t state, uint32_t leds) { visualizer_keyboard_status_t new_status = { .layer = state, .default_layer = default_state, + .mods = mods, .leds = leds, .suspended = current_status.suspended, }; diff --git a/quantum/visualizer/visualizer.h b/quantum/visualizer/visualizer.h index 53e250725..315af5022 100644 --- a/quantum/visualizer/visualizer.h +++ b/quantum/visualizer/visualizer.h @@ -34,10 +34,14 @@ SOFTWARE. #include "lcd_backlight.h" #endif +// use this function to merget both real_mods and oneshot_mods in a uint16_t +uint8_t visualizer_get_mods(void); + // This need to be called once at the start void visualizer_init(void); // This should be called at every matrix scan -void visualizer_update(uint32_t default_state, uint32_t state, uint32_t leds); +void visualizer_update(uint32_t default_state, uint32_t state, uint8_t mods, uint32_t leds); + // This should be called when the keyboard goes to suspend state void visualizer_suspend(void); // This should be called when the keyboard wakes up from suspend state @@ -61,6 +65,7 @@ struct keyframe_animation_t; typedef struct { uint32_t layer; uint32_t default_layer; + uint8_t mods; uint32_t leds; // See led.h for available statuses bool suspended; } visualizer_keyboard_status_t; @@ -129,6 +134,8 @@ bool keyframe_set_backlight_color(keyframe_animation_t* animation, visualizer_st bool keyframe_display_layer_text(keyframe_animation_t* animation, visualizer_state_t* state); // Displays a bitmap (0/1) of all the currently active layers bool keyframe_display_layer_bitmap(keyframe_animation_t* animation, visualizer_state_t* state); +// Displays a bitmap (0/1) of all the currently active mods +bool keyframe_display_mods_bitmap(keyframe_animation_t* animation, visualizer_state_t* state); bool keyframe_disable_lcd_and_backlight(keyframe_animation_t* animation, visualizer_state_t* state); bool keyframe_enable_lcd_and_backlight(keyframe_animation_t* animation, visualizer_state_t* state); diff --git a/tmk_core/common/keyboard.c b/tmk_core/common/keyboard.c index 371d93f3e..765350792 100644 --- a/tmk_core/common/keyboard.c +++ b/tmk_core/common/keyboard.c @@ -188,7 +188,7 @@ MATRIX_LOOP_END: #endif #ifdef VISUALIZER_ENABLE - visualizer_update(default_layer_state, layer_state, host_keyboard_leds()); + visualizer_update(default_layer_state, layer_state, visualizer_get_mods(), host_keyboard_leds()); #endif // update LED From 489d0ab5818555b8f8ff6e9e7d9a9ea717902ab0 Mon Sep 17 00:00:00 2001 From: Arthur Nogueira Neves Date: Wed, 18 Jan 2017 21:12:02 -0500 Subject: [PATCH 05/41] this is the atreus doc --- keyboards/atreus/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/atreus/readme.md b/keyboards/atreus/readme.md index a4077668e..8baa581f0 100644 --- a/keyboards/atreus/readme.md +++ b/keyboards/atreus/readme.md @@ -169,7 +169,7 @@ This requires [some hardware changes](https://www.reddit.com/r/MechanicalKeyboar ## Building -Download or clone the whole firmware and navigate to the keyboards/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. +Download or clone the whole firmware and navigate to the keyboards/atreus folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. Depending on which keymap you would like to use, you will have to compile slightly differently. From 072237bce814fd49765be7f5a6fcb57821c1e31d Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Thu, 19 Jan 2017 22:45:30 +0800 Subject: [PATCH 06/41] introduce shell_layer --- .../keymaps/dvorak_programmer/keymap.c | 34 +++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 2a64331db..c4b99d55a 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -6,7 +6,8 @@ #include "action_code.h" #define BASE 0 // default layer -#define SHELL_NAV 1 +#define SHELL_LAYER 1 +#define SHELL_NAV 2 #define KEY_NAV 3 // key navigation layer #define KEY_SEL 4 // key selection layer #define NUMBER 5 // number layer @@ -58,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = KEYMAP( // layer 0 : default // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), + LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), @@ -80,6 +81,32 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), +// permanent shell layer - meant to be used while in a terminal +[SHELL_LAYER] = KEYMAP( + // left hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,M(SCREEN_COPY_MODE), M(SCREEN_PASTE),M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND), + KC_TAB, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RCTL(KC_R), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,LALT(KC_DOT), + // bottom row + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + // thumb cluster + LALT(KC_B),LALT(KC_F), + LALT(KC_D), + KC_TRNS,RCTL(KC_W),KC_TRNS, + // right hand + RCTL(KC_C), KC_LEFT, KC_RIGHT, RCTL(KC_U), RCTL(KC_K), KC_TRNS, KC_TRNS, + KC_UP, 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_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + // bottom row + M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, KC_TRNS, + // thumb cluster + KC_TRNS, KC_TRNS, + KC_TRNS, + MEH(KC_V), KC_TRNS, KC_TRNS +), + // shell navigation layer [SHELL_NAV] = KEYMAP( // left hand @@ -246,7 +273,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MEH(KC_S), MEH(KC_T), MEH(KC_U), MEH(KC_V), MEH(KC_X), MEH(KC_6), MEH(KC_7), MEH(KC_8), - MEH(KC_9), MEH(KC_Y), MEH(KC_Z) + MEH(KC_9), TO(BASE), TO(SHELL_LAYER) ), @@ -407,6 +434,7 @@ void matrix_scan_user(void) { case NUMBER: case SYMBOL: case BRACKETS: + //case SHELL_LAYER: ergodox_right_led_2_on(); break; case KEY_NAV: From dc3937d485bf2325d1ed26c3456475b1b09617f1 Mon Sep 17 00:00:00 2001 From: Callum Oakley Date: Fri, 20 Jan 2017 21:22:18 +0000 Subject: [PATCH 07/41] simplify --- keyboards/planck/keymaps/callum/keymap.c | 51 ++++++----------------- keyboards/planck/keymaps/callum/readme.md | 12 +++--- 2 files changed, 19 insertions(+), 44 deletions(-) diff --git a/keyboards/planck/keymaps/callum/keymap.c b/keyboards/planck/keymaps/callum/keymap.c index 4d0151710..a1254d975 100644 --- a/keyboards/planck/keymaps/callum/keymap.c +++ b/keyboards/planck/keymaps/callum/keymap.c @@ -7,22 +7,21 @@ 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 _BASE 0 #define _MOVE 1 #define _SYMB 2 #define _MOUSE 3 #define _FUNC 4 +#define CMDLEFT LGUI(KC_LEFT) +#define CMDRGHT LGUI(KC_RGHT) +#define ENDASH LALT(KC_MINS) +#define POUND LALT(KC_3) + enum planck_keycodes { MOVE = SAFE_RANGE, SYMB, - FUNC, - BELOW, - ABOVE + FUNC }; // Fillers to make layering more clear @@ -55,16 +54,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------+------+------+------+------+------| * | Del | Caps | Left | Down | Right| | | Left | Down | Right| Caps | Del | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | Pg Up| Pg Dn| Above| | Pg Dn| Pg Up| | | | + * | | | | Pg Up| Pg Dn| | | Pg Dn| Pg Up| | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | Below| | | | | | | + * | | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ [_MOVE] = { - {KC_ESC, XXXXXXX, LGUI(KC_LEFT), KC_UP, LGUI(KC_RGHT), XXXXXXX, XXXXXXX, LGUI(KC_LEFT), KC_UP, LGUI(KC_RGHT), XXXXXXX, KC_ESC }, + {KC_ESC, XXXXXXX, CMDLEFT, KC_UP, CMDRGHT, XXXXXXX, XXXXXXX, CMDLEFT, KC_UP, CMDRGHT, XXXXXXX, KC_ESC }, {KC_DEL, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, KC_CAPS, KC_DEL }, - {_______, XXXXXXX, XXXXXXX, KC_PGUP, KC_PGDN, ABOVE, XXXXXXX, KC_PGDN, KC_PGUP, XXXXXXX, XXXXXXX, _______}, - {_______, _______, _______, _______, _______, BELOW, _______, _______, _______, _______, _______, _______} + {_______, XXXXXXX, XXXXXXX, KC_PGUP, KC_PGDN, XXXXXXX, XXXXXXX, KC_PGDN, KC_PGUP, XXXXXXX, XXXXXXX, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, /* SYMB @@ -79,8 +78,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_SYMB] = { - {KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LALT(KC_MINS)}, - {KC_DEL, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, LALT(KC_3)}, + {KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, ENDASH }, + {KC_DEL, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, POUND }, {_______, KC_TILD, KC_GRV, KC_PLUS, KC_EQL, KC_PIPE, KC_BSLS, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, _______}, {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} }, @@ -153,30 +152,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; break; - case BELOW: - if (record->event.pressed) { - register_code(KC_LGUI); - register_code(KC_RGHT); - unregister_code(KC_RGHT); - unregister_code(KC_LGUI); - register_code(KC_ENT); - unregister_code(KC_ENT); - } - return false; - break; - case ABOVE: - if (record->event.pressed) { - register_code(KC_LGUI); - register_code(KC_LEFT); - unregister_code(KC_LEFT); - unregister_code(KC_LGUI); - register_code(KC_ENT); - unregister_code(KC_ENT); - register_code(KC_UP); - unregister_code(KC_UP); - } - return false; - break; } return true; } diff --git a/keyboards/planck/keymaps/callum/readme.md b/keyboards/planck/keymaps/callum/readme.md index 0baeba46d..f970cd974 100644 --- a/keyboards/planck/keymaps/callum/readme.md +++ b/keyboards/planck/keymaps/callum/readme.md @@ -2,11 +2,11 @@ This is a layout for the grid planck, built with a few ideals in mind: -- Minimal response times should be maintained. Keys that react differently depending on whether they are tapped or held, keys that react differently if they are double tapped, etc. should be avoided – they inevitably send their keycode later than a normal key – interrupting the immediate feedback from the screen. Therefore we restrict ourselves to chording as our only means of getting more than one symbol out of a single physical key. +- Consistent and minimal response times should be maintained. Keys that react differently depending on whether they are tapped or held, keys that react differently if they are double tapped, etc. should be avoided – they inevitably send their keycode later than a normal key – interrupting the immediate feedback from the screen. Therefore we restrict ourselves to chording as our only means of getting more than one symbol out of a single physical key. - The hands should never need to leave the home position. The usual culprit for this is the arrow cluster, so the arrow cluster should be as close to home as possible. - There should be two of every modifier (one on each side), otherwise certain long key combinations become hard to make. -We have five layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow cluster and other movement keys; a `SYMB` layer, with numbers and symbols; a `FUNC` layer, with function keys and media keys; and a `MOUSE` layer, with mouse emulation. +We have five layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow cluster and other movement keys; a `SYMB` layer, with numbers and symbols; a `FUNC` layer, with function keys and media keys; and a `MOUSE` layer, with mouse emulation. The `MOUSE` layer is activated by holding the Move and Symb keys simultaniously. ``` /* BASE @@ -27,9 +27,9 @@ We have five layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow c * |------+------+------+------+------+------+------+------+------+------+------+------| * | Del | Caps | Left | Down | Right| | | Left | Down | Right| Caps | Del | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | Pg Up| Pg Dn| Above| | Pg Dn| Pg Up| | | | + * | | | | Pg Up| Pg Dn| | | Pg Dn| Pg Up| | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | Below| | | | | | | + * | | | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ @@ -63,9 +63,9 @@ We have five layers. A `BASE` layer, in colemak; a `MOVE` layer, with an arrow c * |------+------+------+------+------+------+------+------+------+------+------+------| * | | F11 | F12 | F13 | F14 | F15 | F16 | F17 | F18 | F19 | F20 | Vol- | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | F21 | F22 | F23 | F24 | | | Lock | | | | | + * | | F21 | F22 | F23 | F24 | | | Power| | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | Prev | Mute | Play | Next | | | | | * `-----------------------------------------------------------------------------------' */ -``` + ``` From 01e750a37230fd7df9ef57a9d1564bde4bee6da6 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 21 Jan 2017 23:15:37 +0800 Subject: [PATCH 08/41] couple of changes to the shell layer --- keyboards/ergodox/keymaps/dvorak_programmer/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index c4b99d55a..2bb5bcd12 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -100,11 +100,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, // bottom row - M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, KC_TRNS, + M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, MEH(KC_V), // thumb cluster - KC_TRNS, KC_TRNS, - KC_TRNS, - MEH(KC_V), KC_TRNS, KC_TRNS + KC_LEFT, KC_RIGHT, + KC_HOME, + KC_END, KC_TRNS, KC_TRNS ), // shell navigation layer From cbb1927d6f7511d7778239e02d834f392b83dd25 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 16:22:40 +0100 Subject: [PATCH 09/41] Add Swiss German layout for Ergodox EZ - Add Swiss German layout for Ergodox EZ based on default layout for Ergodox EZ. - Minor changes in the event loop to prevent flashing of leds. --- .../swissgerman_ez/keyboard-layout.json | 417 +++++++++++++++++ .../swissgerman_ez/keyboard-layout.png | Bin 0 -> 75633 bytes .../swissgerman_ez/keyboard-layout_1_2.png | Bin 0 -> 54604 bytes .../swissgerman_ez/keyboard-layout_2_3.json | 429 ++++++++++++++++++ .../ergodox/keymaps/swissgerman_ez/keymap.c | 260 +++++++++++ .../ergodox/keymaps/swissgerman_ez/readme.md | 15 + 6 files changed, 1121 insertions(+) create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keymap.c create mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/readme.md diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json new file mode 100644 index 000000000..7a0397f72 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json @@ -0,0 +1,417 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5 + }, + "#\n3", + { + "x": 10.5 + }, + "*\n8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2", + { + "x": 1 + }, + "$\n4", + { + "x": 8.5 + }, + "&\n7", + { + "x": 1 + }, + "(\n9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5", + { + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "a": 4 + }, + "^\n6" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "°\n§", + "!\n1", + { + "x": 14.5 + }, + ")\n0", + { + "w": 1.5 + }, + "?\n'\n\n'" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "W", + { + "x": 1 + }, + "R", + { + "x": 8.5 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "c": "#b56b6b", + "a": 6, + "h": 1.5 + }, + "Toggle Code Layer", + { + "x": 4.5, + "h": 1.5 + }, + "Toggle Code Layer", + { + "c": "#cccccc", + "a": 4 + }, + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Delete", + { + "a": 4 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "w": 1.5 + }, + "è\nü\n\n[" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "D", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S", + { + "x": 1 + }, + "F", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Backspace", + { + "c": "#79c777", + "a": 4 + }, + "A\n\nLyr3", + { + "x": 14.5 + }, + "é\nö\nLyr3", + { + "c": "#748adb", + "w": 1.5 + }, + "à\nä\nCmd\n{" + ], + [ + { + "y": -0.625, + "x": 6.5, + "c": "#cccccc", + "a": 6, + "h": 1.5 + }, + "Hyper", + { + "x": 4.5, + "h": 1.5 + }, + "Meh" + ], + [ + { + "y": -0.75, + "x": 3.5, + "a": 4 + }, + "C", + { + "x": 10.5 + }, + ";\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "c": "#748adb" + }, + "X\n\nAlt", + { + "x": 1, + "c": "#cccccc" + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "c": "#748adb" + }, + ":\n.\nAlt" + ], + [ + { + "y": -0.875, + "x": 5.5, + "c": "#cccccc" + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Shift", + { + "c": "#748adb", + "a": 4 + }, + "Z\n\nCtrl", + { + "x": 14.5 + }, + "_\n-\nCtrl", + { + "c": "#cccccc", + "a": 6, + "w": 1.5 + }, + "Shift" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "", + { + "x": 10.5 + }, + "" + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 4 + }, + "£\n$\n\n}", + { + "x": 1, + "a": 7 + }, + "", + { + "x": 10.5, + "a": 6 + }, + "AltGr" + ], + [ + { + "y": -0.9950000000000001, + "x": 14, + "a": 7 + }, + "" + ], + [ + { + "y": -0.7549999999999999, + "x": 0.5, + "c": "#b56b6b", + "a": 4 + }, + ">\n<\nCode Layer\n\\", + { + "c": "#cccccc" + }, + "`\n^\n\n~", + { + "x": 14.5 + }, + "!\n¨\n\n]", + { + "c": "#b56b6b" + }, + "\n\nCode Layer" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1, + "c": "#748adb" + }, + "Apps\nAlt", + { + "c": "#cccccc", + "a": 6 + }, + "Win / Cmd" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Back Space", + "Home" + ], + [ + { + "x": 2 + }, + "End" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "Alt", + { + "c": "#748adb", + "a": 4 + }, + "Esc\nCtrl" + ], + [ + { + "x": -3, + "c": "#cccccc", + "a": 6 + }, + "Pg Up", + { + "h": 2 + }, + "Tab", + { + "h": 2 + }, + "Enter" + ], + [ + { + "x": -3 + }, + "Pg Dn" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png new file mode 100644 index 0000000000000000000000000000000000000000..aff6af85138060acef61781dc889917885f677ab GIT binary patch literal 75633 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 qAIDxiaiz<{It|)Jw{AV@z)tf!IyeB6;Y5t0 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�hhFz0NynmI=;0Sd&-bSeS0v(g*sx5vG ze)2)EzL4&Le%C%07J^U>>n~&drsfiy47y?og#3NW7S`YLl9Iy#f6BDYp?6f%jXKT} zM5U>ZUjbr4y~e*y7oe-){S-k-!rxDU1E4@H28rK}81P5l$6~v{r>(HRLU?1|dln)< zR(AHSgiQ*;@@QMhgmEowK0{Ht;xiGq0g{07Ylh<=Hw9q!XMV^9>G{^H{AbUe>Fz#H z8l$SLoKRHMX?fU!f4;l%G*~#!(}i6OLgPT$#|pw8T}VP3WxW#!w5hoE)wVWAd(1WT zW4j0-3}_)%nSU$hFyh~jm*9iQe^KC{x|jl z7Mo3u2(SVSu|dmdhyz=KuxI;g;xbX05R_qpbv<|}rVi)9`e zPBpX0dq~gxqAcWsrPQ&gAI+b(U6a@cGi!}E7pD@DV0JrG|0x}+#&9xT)4y#Cr$c?J z==q)D$k!{j$&#lJAAVz*YJMZt8D-I9-fMvx`Njvqhk}VwJs>+G)RWpa!W>y|q{i1V zgs|`vwjHhW^1PR>tc|n9%^lnZsa8-sv*#)mrWb^9$QC@0ad=ze+U70Kqii>5e{osZ z>_u?P!2}^(NkQ?UK-@gJ zp^ZSmp%`-)N9u-pmI+Eflg9m!aa|X^c-W@@gI!@s$&*~_XHJ_B2NlG?6x@0DzfTYj zm0n_aO^>$##G&10xR<|JxOk znY7-3n+XTxSGv)=4s6%V^Z3{J=N>km*_wNiEy%3FKpM3(Jjs?IqvivD3xHrh0-{Mv zoG*wn7++z{6+TW?cb>tq%-9#e`&oNWo&zTXY6!Bj+a`nyi8ukg;fZUyuYvU?beI&= z3^3pf72|rOvUV|9JWj_Rq(aMz>!lLO1=Hrpq zJSJ$v2BVmOXhWz$={N04EC+t^;;x`KTSQ}Q7APD*-~1sU&3ymtycU5|>~{X!kW@WG z{Q%~KF!O}zV=PL7ln$mxpWPBmzwIH4T+m88t~exk-h>? z1bhl)kSC%}yii~G!*L=Jq1Ms3{|Xj2BMt}8y84++**m+J58+Wu+se|i-NWPSWai01=PiVg-Y`4C%6|Ui+5i~^Mb=bx%bq=ZzOSrJOii^7Xqqa+yUfy^`a^Ox$2KY}PGC$W zXuk5-^-?-e%wt%-o5H_q;A)8il`9}zzjUSFD=Q~vZgiy+ttJu5COu!FtcT%Cs&fZX z-=nPb?=U}$c?E&1tq#tvF|Ge#-k@suto49OoWdE&d$5QjgWKf21|FsAEYgJ znNgQUH4FX%k#CsbFhKKgB_#7Ye}Ejb$KG0saQD{QRq zNQL zYjZlH8lWX!$=Bp);2yUlBlnA~FO41H<`at-)t64-O;hU?9x5$NSrn< zO_c|Y%jQKqshIHF%ihs>`rvVfUE9TzNntAZ>3`sNeB4^A;sHOD&$|g){AtV%Z@+YU z-_-PkgFgJxBXBtEU;EteO2e%E>UhG3;D-vIe>mH`rctw*r=_x@w=~%OA^91(n?M=K z`($8NFLjP#TN3H-Gme&)WF8(KekWPb99hSIotkRw+cOYkv9Z2ZGF{X+JnuU4!#T(B z4F#bn#VJLASXyrJym$R)&Bej-(~GB8-*~RR$*Zg^ikG^QbZ4zf)Tuu=}Ak2r1R-@9=qO2K5D;GKv&t}nE@m*38 zoEEP5J(=EJXt9s@UAXoJwzgErsKk`r221|fA{9o{(zB!h&rQBUkW$mjRsY@=zi!_= zD2*pT9&OMYyd(du%Cr4cnt2ycDugw#-}?D5UJop!ZiF8+6gf}pjVc?zt%3JaFJR{& zI3$suig$u{UpqDbWp%?SkNYOqPF(3fkFFh9c6vu(QBe_%=h6WtCcm__9ou~Fz8SMv zKiJ8AMWy_~vG#`qQJvXyW6?8I%ewR*HC+!u>&j(gZf@@3+4Y%On65`JIN{~Fu8w=I zkLRf#x>KuPdrrk_+ug>`{9=x1O49w#WX*&BGXkvYLNmio|61a4Hz?h@jXYLsoKIk0 zHU0ez#GM`mhel}4b!==b`9T`U=f0H%LWLj&w7u;}(jqG`Ttgv{v~H=dPlC8pf_L#i zfx~t@)~UugKgl>%K~a&2q!}4x&`Rk(Tzr5xvEN$m!2Z(v-=8(#ZFL*qwo{Q;bpiHt zUqR=tqX)u3*J{Pb7kL^D#+_A1l|Pw_G5HV8Lc`M-e0@bi5!*=QWh*5q2B8KAT8a}&W`#v%M+n(5wcl>4qexf(Ox$- zkzw)0kB;nHG$=EChi2uFsE`(HJ53vG;Sqac#b8>a1@6x_W4)Sy7HxVssqo||TX-msKMoN`3WSa^EO0pzGXN6gn4p`%& z1HB8^k|{X)=fUW}VN~Ywo!Sxg9~orR0nZ^@;ilD^Pq}&Z>eb|%R0Ri?-DT6h{2md- zF_)A0O+{P+z2kRvS4Z~|sp&YeLNsmbbVI7f^GQSnWf{Fg}TlJOiFb9F#>WqWdr@qY8SR7x!$~ zuGFT_syI?Mi$3$)u5CU`5KDFaS~D&+qAi7Lrs+!}_sM~y5o1OLn|Y#tI*Z}m?LJEt z%djqw?KjbMGWHrs`!=Q8$i+4yv0Ur-g~h~zFCE#6LdD#N?S#ifk!EIhxl{I6{~2&W z_kJ?gzjcdgXsP~W4iu15el z11&iL`e7FqX>RANRkYsr8$X#XhFZj&`$n-;nGCD`n0$;+4h1>X5l z7e~Swj#X^v;v3=1@Lz0^Q``FiGMn?bkGZ+Enll}% z&_u2Emo65_mHm<$fVoh}lVBOv9sadtL*?9!!Lr(h$b|QeG!~t4@Cq!x!MLOzx4|Fw z22XU_fJ1ddE-Q0cfxNQW1T40LbYxG9i`9zvKfbt!?ZG*^dfI(L>WWwJ z;2gW%x?Z%|?rWDXfAA}BclltM>r*MGGs{Q&zqrMdmB9B9Qd z&n{zyM27P{DLfbg7yCbreR(+6Y1no(D$^huvKFCIwvsJG@-So@@(@`ovM0L~Q6x)- zib8}UkI>}Fz9cDSOOlC@WDf}u(Rbd@Ebs9i-}lGoa7;5(^mG62`?}8SJkRU8S8x~g z-q6gy939R1eV_f-YfisE5Ml-xu$WbU{!P(ZM1-5K+_!ua0{_Hn4lCcko(N?$Sm3BK zsh_LutKad|-PU%6bpiLEhb6Mtm)#f?zOK0{zhj{1?Y)C9g{d*AvM(N_C^_K8ViWI` zOZ(ze;hBd_2y}+b0eWwh^_Ikf)>flh$u$TeZ~i!JY54?qkf7`g0i7zh*KcrW2&V}t z*DEO#4C87Hz52>&lVD$a%~>lhmp@&`&Fm0ooyX>bVw?w)FB;$N=UNx`-a}D{d6m-M zxzGryLnKw%OUG&77B|_p|&?nH;RL)pV(7tGA zjhH$_V)b~@yR=A{BlM5k>n8`Ck%Iund-g+i(qd?UBO_}EB1Mm zyr0}IzQgTK7aqX7*M&*Fo~N`dp3Cx^inYb@okP~_tpm~e?Y;+v|Mdc}2xt7*vv=>$ znnpr8#s+csG&D3IfHhp6kJiczHyjq#Ibd%;@IZuJ;edVQevH+w!GdmKUWJG4^Hw6R zRAiR=2bTByuerdC?GSA;5OdHDc)qcS=ib0qNl6(wcIJ<=ztxQUYQ&2Iv*3?oPF>B2 zcLsd)p+dHRLAa~MoSUQhTfQDgGwiE>i0aJE!op|YB=BNx%9u0EOBy%80Q|RZHKB%y zMc(fk->dmROPB*{C?&HsT0zM{@Sc^F*-qp3;q$Xv!7{+B(viZzh8MA1x~c12ayEh5 z5tEX#ZtK4mE7PTPytu0s$A4HiWCgvrIJr5Z-abmbNKRQf%29S*T1#S^!0Om%KLM>m z#DarwEbBh_EKEl_1|F7O(`YWKlUcmFai;(qzgCNLT&~vcW?*Yx{-@tmtuw?tv9((_ zV54yGV$Re>A!c0A`@+duD>ztS%_RvK_bW@$mDX z?-Uavq={H99gP_1c!%Z2Lew^Ft377+;rA|AhS`J`jA(M9^|-3c;<3PU0m)rn!gHL zb?fV2n`#GdAe!zZ1z-zI#mN}nt2a+NnRGvja8XywmH zne1;zx6Jr)3S|wVhwzKX!^2{nnjsPmdz);~oN(BA`SJX`BC$}Urf%+DU#TlXjrsa< z?Wz#gz+X9Hv{=(jJI8%t-{qZnF387+K_2)#c%{SE4;b6PS!OY~n_IHOP?#0SJte?8ex#g23 zC0n;|xO6*zOJ)EoXyC^AZ&ACw6WyR%^=rJ;akzBRt?sT5e zRK1*-A*P4vpfAqp<7CsmGeM96BbC?>305%|D}wGiHV5= zX@e9B|0-lJO2bucQDZNj6oV56)7;Ut%*1*wo}6SxGA{40?|J z4-U|?{%9Maz;g-y9vAc&JafUm#4y*8{VM>|#TUAhyJg!uI%)?zxfW)&{R+quzDL-! z)8uutO+iO;TcC~@XK34qUQ^}E=DDaAo9f=+=iij~?Q`oik&u>dQ54B|NgiHrI)YwL ztqh=)Ciqs+zll;PSNEYnjxcou&P90sLv%;>w_i?g)!6{gk5|$k)z&U&&IkZpl&K{a zo#}R61EkfuR0cyR8n|KZa58#`k%X85fqUiE;XP`8<^nK6qY3k{NR9D0?%Cg%P~f%x z`$CpxzEpR@pEDJQC!!<#RW94^V#Xs%5MhjzG& z9l+CyCv|18rpobs$!Ut%<#HcgF`?BR_ii8k^SYgdF+#u7dAa2N0ngGBtLO+ZLlQSF zR{sZ&&DV!{m3O1W1v>khdh)gCio&g3@uKOlp?f^{&F4tadcGdp7c3mvzM7hK4=yKK zOX>%qG{2sj`n0}2qOWZn&Jaur;9Bs$!v)a2N5$r0KX%|vQn-dTd*;Haj_-&GX8^&- z_Bw%S^=6^X=(NDzVrl6h7t%bqx459yGm2X$>=kpL^-tX{Y8!6S*sW|$E?f!3f}S8L zHBXpIJv7ZNb9Vk=*LYU#H2lAy|4!j*jL_isHtzO(so9#e(MtE3l)yN*FwhIv%_Kd23RyR)27On2+;_k4)XQ)-{w9sm zdH?4R8o5jlFPm9>0wi6hyHjw@X(ltA_Q%xlA8x|`}*tvp>17VU29od8#s^M zZCcTKWF?M+x6W;6Rp+BeR|QoIf8cR82(I`oe4;Yd*QXHaOZ2r1`$E=gZK%g4gB&Ltq44 zu8~9Ss(+Yiz8oc)_`Ty>5|g$=I(jDm0I=(z?cx(B6qu*Pwog z$he+pl5xjp{$f=qp?e-9xJfz7%19A7b zdAO)fK)Jd7?a{$j(7I*ug9)NKf7tV4OW%L%>eQhnx`9l`kma+wGWJ-Etu!}R{Mbil zA@;+wlc(;;fqS*xwRmka)P|XwA`F<@(Ty9Yeqkv*as3pPNFc6tQ*w9LM%9eX zW-YN`!y}urGp$52B^%VmrD0)S!s@a?vaW_k?SrE8|Bz+4m=oKts!DZyP2j(k<-J?_ zI^Zp#*dP|v4uX8y-xD8ZYJr@IlSZRC$jv>zE5Nqa?04kKUl}on9EHe?{m6TR(h@ON z5>KwY^jC5B?{CA%Et03S+d-=X%)I0m%){_Jq|DZ~wkt*7E70a8pUetnDNLfle3LY4 z3UzkH`IA=;if#y>wn|9o8aKGPhx~SvgKpGx3`Lk=L8t&2y;@Tc0+|3p0*~6xNMZMi zDXrQy214v&+8REmPg^J$1eD&{Q~)->x*YF}iSg!s|CjTscUpc7P6;h0aJMEkHC#_i z1H9{~Jaw2ahvwI&CM(NS&=Iv>?fd=r3huh%n`1?ISPoFz=>fbjiGoMLGXwO6KNCmQ znqaRb?e2*k3SPsnA@o_lIwn&CO(Ka4MIP;xk4{hDg1Xjr*Wu4plhdp#3p#R@ncBvE zGhvkXP;NpM`hIS)!&UD2r%w_H)*!sRi))S_>73d?$f?J=6nZ{m2N)n6fGUf~D9QNt zi-ptT=uaV!k{TO!@vk{-W3wJ{@6e&l#j>7VkBC6Cy84ptwjaSZXNB0clM~aMjd|VSimGGjJ&)9U zODxikGGoCqB3GuGc%*YyB2pO2pqUNwjRs=}cp+Qn@MjJ*+Ppk6aKF>=G-x@*C!do- zm{sxs;+|6DH2nLIFvxGJBY3I9A2jf~Ad&2)XiQ~{-(LA2{HsAbb-EZjU~15u>BII@ zMI#okAb4pk$BVFuB*P-ucb2LtDwYh2-!ZkoXv6Th+)mRR)PVH7-Maia)&+j;L0XyD zj2rSmmYdYZ#pPfNaFZ>-e*xXO_Pm4-*4ol#Q8uI+r~Pr(L6|QlNsER#7`ziVC&$P2 z11-u+N+P7sj_8(5J>@^7Aqy%a8g%f+@8MG5LxE{<_7cBWbZ)!?QsqFJ44p0d^5p}Z zb-KcbHPYE1_kB*%${Mr);vOC!Z?6nO{}e7+wdX5U0&UtcxjjyMxcQ#BI}$hYr$&Ok zyuhUh`4uD@%ab|N%%LkT*2W#Ow5@7ePuHea2Irz%5?8)HM~O8vw)E+Q+WESpHN@Bl zgKR%+e!E3=9#8&Qo zCjuBpG%6OG7S7T#h#I;<)_GsJN}aE6roY22wuBmGT6vS83c4L*_pNlAmOE(SbCY`d z`ZwgoA3{cPu;0bgI1(rzD2Sul;xtiLU(cLkupJKt&W6KnKiP(Ew*P@PC!Mtoc{qAA zU%#S?$ddc@LEfcHKeuVOqm%}{GE&vki`s^@8(meGpltMer7a4$myK)#zg;ah&zfrO zv}gZJP(H47m(s6p%%Rb`p78MUnz!?EG~|&JHa{2q!w>cR<8fbN7=eh)Z;+yxzBnfm z$Bf*}+7ejkb_`V)l-h>n&DmL5$fd2Q4BOsC{YO+bR|*Mt-Xb}zlj;9O+}t~PKf1^y zI@*$F-t2FAaip3Hy+h!^1(dvr0IOOx6?2lf&w(jxiR?pEsinEzXCy$LTyEUJkM&9W zY(2Pb`*ypB7CtTOD@9Wu-i6ZAS2~o+@KM?PSm@B+cEx|Hj@$0f!+$GV6}w^w4VOO} zLNAI!pwq2-3jX=}ZqJ8w`fKlVCyS0aLE!>f&^P_fGbyld%HI~HOQdje6i%1`IcLe* z5WJYwNi;E-miZg2>_%hal*6%qNF1BrAdf^^qZK((WxNueABdyzZ*KcfHz`aFNC)#8 z?wjR=Vn#UA?{CwVco7<36(!%Zzo~kbPc_YOPAea0A~J(>!TXjEOp4uZCg9~zN)pB= zDWw1j=_1>v$Jj`CF87kYHN;2Yk0}GEmcJ9x^LwA*vYo|wcP!m}!H)&$?gGCLPkv@P zU&CcJhxh`vXwOp6(9jSbdQCxxOUbB6GR_5nUMT3QlP9HTM$l~#z~J1r;o=DxsZ$P4 zA0D~*gTU3# zs-W3i8#^e2L>Q7Rei!OeP`MFggiFs8L>fY%S1aqp&(jlESRUTGRVRKTAmgS+?%8}_ zKfg>mofB01Q`qIA!@^ceNJ$aVDhvUlda0}0&clO!W7Jl+M-v!j6~TY9!l>Bj`VR6U zIq^_s;`dRKuE!#`bgk@eoH@=lQE93HI;KOgDuG_QxcNV3w=~-hY18f-}ltXqj1ZGVYbLrf@L{ zrUfnR*vQQd8OQHEh;oIB5M@|%dXAYJrmFm0-CMBeg=f2kOU_?jOnbwjX{1+h9vzMO z&c9}6XRqBDwHjUFueKKKgQsY|@r3GmqS2jP9z5yMAX#h+p%E5^cC8kbX}!_lF*$yj zrpIwm8)lc6gTRB*3ltb2GXhYy?cFcMU939sn6btP9|suW!xQoZ(mTM>-lhf~0RcVy zQ&8|XS-vnDtt=RK9Y9Uc;H|NYUI&V{y{n$twv_kc_riyNMXTw{V>$+9V4Ezhg zV$831S{;rJTm91NI1|sMlWXMn?$laB`Se3FF<6}LU7GOwtLm&W()fod#r(3-ohpl; z3eAJ90Nji?w=_Jk+ZjirIZbXSN5#ed2+}KlDEw&n0mD>3Q7H6-BppoU=laVa2MbsoxP7);72 zOumozE=v-jnY>}O`I_~gZ?v3QgCEzr$9>JSXU|xZ6#z$}t%a$+rlVh93NV;P8x%N| zlCumUdMykm&-|(vyLGJ(ajuq1{N?%a4Fwfn4n7Uw(sem~x)a(srcQ^mrnvSPKFEP2 zm)-WWI=lZ82Zt4d<1C9t?6p(d3kPi3ak!yBt;Y=6JEPJn7&f^t2$T>caQ!g zdWE~_<~#2;{gNNci{#ESJDh&_2@w5AGQ5AHWi!k--#=eeYwU`-1+lmIbtM35sF26x zz7Zf&q(pF%i7CpbckIhG>RotKOiT$C5Q}ou$T8-w`n>wgkHub_sSc~tRyLOM$xX7J zavh)_&%;dvcBx<=iUoXHVEb+K zA<{cE<=XTM;&}kN{)G;p<&j^9HFU=g1Iyyet&;<}I}krm!0wWh^Lg%qz=z(Zf5i4F zC@ERtD?k=d-6o*H572LpfAB1a1jmc1?GaKOt@h!h_HH2GjiCnDH?W3xyDP+)HV!@b z_S@zFCgOKS9Cj}smxqH^an=GG6tM-Z#Yx3$V11#@c_C9q$m~w$h|~QzN`!HYK!!rR z`5gWjz?{zyOwz4b5mgsTF2cZ;N3E!1y}?+O{;N9Pi!5Z(FZT zeUU))?~r2R_(}Eu@H0u2nE7ft+9G&%#)vfMzpe^Hwns}A`(})$8+Q0vgYWh_lH802yg?EcRxKrNQ zC?0T>_zg*f$8E0681q_-zK1VgXSZ+Lh9VKB%5`Vw9e;9ibUf@k;~^aPNF-K;SSyaf z6kW2sFh-I)arj_UmJBAj7>mb3k^?h%3PRVY{1@VCwP&4dEF#{*6244KL}Um;PH!hA zF}~&x(Vqb-^_FqnBSDj5H~)pZe)(b6rIz_7pw)WKqiVunQbHOt)ZO*G<5!2urDX(& z46!dyBNObw;AV)8y7!?dC_7&F3NJd+s@&HOBc4fkBcU5MS+b6Bny6uCkl+KM`>Zx^;npfnI!@OWrwXRaL#g`T;!o1aH%#y*dc-6tn;7*C>4+Jow96 z_RRrfZrr#LPOmt=R{?*!OVH@H5-|i|5L!Cs(9~jEc6=<0!l1D6aXF~I#>PkaN@_c-7K<41=c(rKGKA5|}v?`>6^{Zu6(v2It^{hO~ zktyN=r=2u0wSZ#u+U>j34pq2QbG)W7(}_$yK%u(}`KAD=oygi?oUmF%cgf8!TSt0B zP=1oG0@9U{22g(}_=Fsx$szAT<==Bw5Tps&X%Y=(F)WC9x$Q4Xxha(65oFn35T>1x zj}>nk;PcGbkzOPYO|)NdYVOvvESVpa01d~(auhv0@AV_~;C*@7i}YGp|DZAZ$<-?; zGr%YY2H{>Zh!k1Pb!eC3R`&h$h#U=<{L(czsTjhot8BA&&6?kFIXR~8ez>eW@d&mR z6oj7}_q5#Wl#}^4q2B8HR9<3nM!JVD67#9n}0YOWmI_P`vDvXGz=OnoB>O+Xn z$T|1~`Fs?ZVg(%SRrg+pXp64G_zg$dvQaM?Qw!k6@WsW4{JS$OZ^*4Ut16h4m1R8i z5oSQ*vVyUrAD1$e4UNNC67;RX<^v{+Fg%`MAL*P|&a|VJ&S(|G0t?4!zv-v~jbNpW zwggPy(yz>RoZOCXQU{U%Gg3C8ixHT@_>F>$Zkl{xrFC>n42&IB?_;9w*u&ZP&?2B# zGhnxplCz@7hY$7b7@on?Vdb|8Z_d`g=W=W;>UbvN-w}%>rnJ-wtR((lpXRfPUZZT<8xB4mc$GymAu_ z15rEHb8tWcCz~t^ZwrbvLTq>PpRO*zlB#LzAzQ4zkqDOnOTXZ_uX37j8x0{63S9fX zN!a?1{&{#*;OsxL{AkBx2CX60IQX*5;+k84%4SFd2NLYvYlZ*O0Vo0B-QgcdG03*t zBScU(Rt~7krZ9jv+b|7&frE4l8O{7u)w8Gd^UvchGLz%Z`5pJ$MlL{)UFP60>R}w* z0ENAK$wV5kox~#7%LE+?S`r|=9G(`=FSd(5)!aaQH0Si-hxALRHKDh6PfH81Wkc69 zt?NIG7twORVojqCMco7n3rSGI7IM&n2W|K)C~G6$2W zgf&;+0dTre zBH*>_ZQdfBL45}A0Y_fW^XEEb8gjfS^1;3Nr^s>t7>ceZCA}EYp||d8LGO^(fmcaw z!e*G=;oTBg-J8~S@ODnl4y-*&^+DM=G8_(4NPhlh@oQL;CdQJiPN(ezzufKKQEA@r zzl=NyXEn0jcv}}cA+Ldi3tOhP+TX>9Awuy~yl(CoNF4(t0$UA6e{WMI8Kl$geo>-< za2pht%j9M5y!$_#OG-a@LAVgGi{HfE!~P3z8EQMr*NrLJ<_W(njionS7mF;*y#{_9 zOx=UamN(PVe#7#2j5Rq;XktBU`_2h5GrsxiTCyr!fHM0Ll~ISY5kE}wz5go2W9aqo zZ?aMpc(ZA6ugqg@>P{6*%@Q#Kkql9IPip^vF7F1=9euSIQNe?yZycvmC?>x%UTWFy z|I3&H|5kY1J($Xft`3TQrrEHOc@ruO8PyZLc?AU*8wPgH z#2Q@v0MoXOO+jGQ*SR?jDz#$iYgbMwx7LtvQO7}0mrUyKe?Nj}P5k>=B{72(QyP%4 zG3`gZYAl;;trbs)Zk^a3xJqOylnzo+Q+fCMFW#eE{M3v*Kiw)sYwF z#*733ujm7bAzA6#d!Kxj4{VY5rlyC^}@E!Ct2LRk7fJXeS?&EhT6mvU*B;`{m!YdOSRvU48 zr6%r{@w8)GAwqSk#L<{ORi%8>052i2p)OAZi4m*K_h$@xvK$?#Wm3WP}RFiAY{YFaUjrzJWmo=APkEGc)_+`700< zP((`QWwYu~srWbOidLTPe%{`o8xT-VC3E8SC^0sCRu&@=NHkz8;gifwPwZ$5&vr{w z^8ai*`tD7$kNgnAM&VJi#8SVY-bIwcr#~jKeY=n(kHD!zeB?P^xF4weW$y+Kj#e7u z4`ZYtUJ4Vz&5RF64Px~9`{V!Te_y|T{Snuc|Mz!j)lRSG#*`PvhZQOUh-5?g(1Is| zP!q3PT4G1fD)|^u!gb8(q@I>GvpfZ({FDAEFH+*9S8xC4t21Q5&Q{)ErvZ}biN8wF z1ZJtef3xAA-`z=vc9f#zvkreP;tYF132wePvAlJ2Y+Ca5>!`U9#?ZFH_{B7RC;qpt e+m>%?KYnrjD=Ja)Papmj_|VZbpyVI04gEjegIl-& literal 0 HcmV?d00001 diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..835816b53c7d68143457bcf416a0da51fe856e59 GIT binary patch literal 54604 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 kb?FrRkk!U56AE){(", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5 + }, + "7", + { + "x": 1 + }, + "9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "5" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c\n\n\n#529151" + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c", + "a": 4 + }, + "[", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1 + }, + "]", + { + "x": 8.5 + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c b/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c new file mode 100644 index 000000000..c6717abff --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c @@ -0,0 +1,260 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +#define EPRM M(1) // Macro 1: Reset EEPROM +#define HTML_LI M(10) +#define HTML_UL M(11) +#define HTML_OL M(12) +#define HTML_CODE M(13) + +#define SEND_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING("&"); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + go_back_based_on_tag(TAG); \ + } while (0) + +void send_key(uint16_t keycode); +void go_back_based_on_tag(char* tag); +void send_larger_than(void); + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | § | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L |ö / L2|ä / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | ¨ | ~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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, 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, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, + KC_LALT,CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | EPRM | | | | | ? | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, + KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*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, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, + KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, + ACTION_MODS_KEY(MOD_RSFT,KC_MINS),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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | RESET | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | |H_UL | |H_OL | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |H_CODE| | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, 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, HTML_CODE, 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, RESET, + KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, 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) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + case 10: + if (record->event.pressed) { + SEND_TAG("li"); + } + break; + case 11: + if (record->event.pressed) { + SEND_TAG( "ul" ); + } + break; + case 12: + if (record->event.pressed) { + SEND_TAG("ol"); + } + break; + case 13: + if (record->event.pressed) { + SEND_TAG("code"); + } + 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); + + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 0: + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + break; + case 1: + ergodox_right_led_1_on(); + + ergodox_board_led_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + break; + case 2: + ergodox_right_led_2_on(); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_3_off(); + break; + default: + // none + break; + } + +}; + +void send_key(uint16_t keycode) { + register_code(keycode); + unregister_code(keycode); +} + +void go_back_based_on_tag(char* tag) { + const int BRACKETS_AND_SLASH_LENGTH = 3; + + for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { + send_key(KC_LEFT); + } +} + +void send_larger_than() { + register_code(KC_LSFT); + send_key(KC_NONUS_BSLASH); + unregister_code(KC_LSFT); + +} diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/readme.md b/keyboards/ergodox/keymaps/swissgerman_ez/readme.md new file mode 100644 index 000000000..039a08588 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_ez/readme.md @@ -0,0 +1,15 @@ +# ErgoDox EZ Swiss German Configuration + +Swiss German keyboard layout based on the Ergodox EZ default layout. + +Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). + +Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) + +![Layout Layer 0](keyboard-layout.png) +![Layout Layer 1&2](keyboard-layout_1_2.png) + +## Changelog +* Jan 21, 2017: + * Initial version based on default layout. + From bf0b355bc820a017544860a5b90e405f45e66592 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 16:24:41 +0100 Subject: [PATCH 10/41] Add Swiss German layout for Ergodox Infinity - Add Swiss German layout for Ergodox Infinity based on default layout for Ergodox EZ. - Minor changes in the event loop to prevent flashing display background lights. --- .../swissgerman_infinity/keyboard-layout.json | 417 +++++++++++++++++ .../swissgerman_infinity/keyboard-layout.png | Bin 0 -> 75633 bytes .../keyboard-layout_1_2.png | Bin 0 -> 54604 bytes .../keyboard-layout_2_3.json | 429 ++++++++++++++++++ .../keymaps/swissgerman_infinity/keymap.c | 252 ++++++++++ .../keymaps/swissgerman_infinity/readme.md | 14 + 6 files changed, 1112 insertions(+) create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c create mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/readme.md diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json new file mode 100644 index 000000000..7a0397f72 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json @@ -0,0 +1,417 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5 + }, + "#\n3", + { + "x": 10.5 + }, + "*\n8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2", + { + "x": 1 + }, + "$\n4", + { + "x": 8.5 + }, + "&\n7", + { + "x": 1 + }, + "(\n9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5", + { + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "a": 4 + }, + "^\n6" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "°\n§", + "!\n1", + { + "x": 14.5 + }, + ")\n0", + { + "w": 1.5 + }, + "?\n'\n\n'" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "W", + { + "x": 1 + }, + "R", + { + "x": 8.5 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "c": "#b56b6b", + "a": 6, + "h": 1.5 + }, + "Toggle Code Layer", + { + "x": 4.5, + "h": 1.5 + }, + "Toggle Code Layer", + { + "c": "#cccccc", + "a": 4 + }, + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Delete", + { + "a": 4 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "w": 1.5 + }, + "è\nü\n\n[" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "D", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S", + { + "x": 1 + }, + "F", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Backspace", + { + "c": "#79c777", + "a": 4 + }, + "A\n\nLyr3", + { + "x": 14.5 + }, + "é\nö\nLyr3", + { + "c": "#748adb", + "w": 1.5 + }, + "à\nä\nCmd\n{" + ], + [ + { + "y": -0.625, + "x": 6.5, + "c": "#cccccc", + "a": 6, + "h": 1.5 + }, + "Hyper", + { + "x": 4.5, + "h": 1.5 + }, + "Meh" + ], + [ + { + "y": -0.75, + "x": 3.5, + "a": 4 + }, + "C", + { + "x": 10.5 + }, + ";\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "c": "#748adb" + }, + "X\n\nAlt", + { + "x": 1, + "c": "#cccccc" + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "c": "#748adb" + }, + ":\n.\nAlt" + ], + [ + { + "y": -0.875, + "x": 5.5, + "c": "#cccccc" + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Shift", + { + "c": "#748adb", + "a": 4 + }, + "Z\n\nCtrl", + { + "x": 14.5 + }, + "_\n-\nCtrl", + { + "c": "#cccccc", + "a": 6, + "w": 1.5 + }, + "Shift" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "", + { + "x": 10.5 + }, + "" + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 4 + }, + "£\n$\n\n}", + { + "x": 1, + "a": 7 + }, + "", + { + "x": 10.5, + "a": 6 + }, + "AltGr" + ], + [ + { + "y": -0.9950000000000001, + "x": 14, + "a": 7 + }, + "" + ], + [ + { + "y": -0.7549999999999999, + "x": 0.5, + "c": "#b56b6b", + "a": 4 + }, + ">\n<\nCode Layer\n\\", + { + "c": "#cccccc" + }, + "`\n^\n\n~", + { + "x": 14.5 + }, + "!\n¨\n\n]", + { + "c": "#b56b6b" + }, + "\n\nCode Layer" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1, + "c": "#748adb" + }, + "Apps\nAlt", + { + "c": "#cccccc", + "a": 6 + }, + "Win / Cmd" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Back Space", + "Home" + ], + [ + { + "x": 2 + }, + "End" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "Alt", + { + "c": "#748adb", + "a": 4 + }, + "Esc\nCtrl" + ], + [ + { + "x": -3, + "c": "#cccccc", + "a": 6 + }, + "Pg Up", + { + "h": 2 + }, + "Tab", + { + "h": 2 + }, + "Enter" + ], + [ + { + "x": -3 + }, + "Pg Dn" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png new file mode 100644 index 0000000000000000000000000000000000000000..aff6af85138060acef61781dc889917885f677ab GIT binary patch literal 75633 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 qAIDxiaiz<{It|)Jw{AV@z)tf!IyeB6;Y5t0 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�hhFz0NynmI=;0Sd&-bSeS0v(g*sx5vG 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 literal 0 HcmV?d00001 diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..835816b53c7d68143457bcf416a0da51fe856e59 GIT binary patch literal 54604 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 kb?FrRkk!U56AE){(", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5 + }, + "7", + { + "x": 1 + }, + "9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "5" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c\n\n\n#529151" + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c", + "a": 4 + }, + "[", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1 + }, + "]", + { + "x": 8.5 + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c b/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c new file mode 100644 index 000000000..0ccb7f47e --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c @@ -0,0 +1,252 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" +#include "visualizer/lcd_backlight.h" +#include "string.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +#define EPRM M(1) // Macro 1: Reset EEPROM +#define HTML_LI M(10) +#define HTML_UL M(11) +#define HTML_OL M(12) +#define HTML_CODE M(13) + +#define SEND_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING("&"); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + go_back_based_on_tag(TAG); \ + } while (0) + +void send_key(uint16_t keycode); +void go_back_based_on_tag(char* tag); +void send_larger_than(void); + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | § | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L |ö / L2|ä / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | ¨ | ~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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, 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, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, + KC_LALT,CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | EPRM | | | | | ? | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, + KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*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, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, + KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, + ACTION_MODS_KEY(MOD_RSFT,KC_MINS),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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | RESET | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | |H_UL | |H_OL | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |H_CODE| | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, 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, HTML_CODE, 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, RESET, + KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, 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) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + case 10: + if (record->event.pressed) { + SEND_TAG("li"); + } + break; + case 11: + if (record->event.pressed) { + SEND_TAG("ul"); + } + break; + case 12: + if (record->event.pressed) { + SEND_TAG("ol"); + } + break; + case 13: + if (record->event.pressed) { + SEND_TAG("code"); + } + 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); + + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 0: + ergodox_board_led_off(); + lcd_backlight_hal_color(0, 0, 0); + break; + case 1: + lcd_backlight_hal_color(5000, 0, 0); + break; + case 2: + lcd_backlight_hal_color(0, 5000, 0); + break; + default: + // none + break; + } + +}; + +void send_key(uint16_t keycode) { + register_code(keycode); + unregister_code(keycode); +} + +void go_back_based_on_tag(char* tag) { + const int BRACKETS_AND_SLASH_LENGTH = 3; + + for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { + send_key(KC_LEFT); + } +} + +void send_larger_than() { + register_code(KC_LSFT); + send_key(KC_NONUS_BSLASH); + unregister_code(KC_LSFT); + +} diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md b/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md new file mode 100644 index 000000000..1c35f7473 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md @@ -0,0 +1,14 @@ +# ErgoDox Infinity Swiss German Configuration + +Swiss German keyboard layout based on the Ergodox EZ default layout. + +Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). + +Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) + +![Layout Layer 0](keyboard-layout.png) +![Layout Layer 1&2](keyboard-layout_1_2.png) + +## Changelog +* Jan 21, 2017: + * Initial version. From 4cf0f7dd16d60aef363e91977597334017e60924 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sat, 21 Jan 2017 23:42:23 +0800 Subject: [PATCH 11/41] make shell layer more compatible with default layer --- .../keymaps/dvorak_programmer/keymap.c | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c index 2bb5bcd12..7ed0c7f12 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c +++ b/keyboards/ergodox/keymaps/dvorak_programmer/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, LT(SHELL_NAV,KC_TAB), KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, MO(KEY_SEL), OSL(BRACKETS), KC_A, KC_O, KC_E, KC_U, KC_I, - KC_FN3, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), + OSM(MOD_LSFT), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(KEY_NAV), OSL(SHORTCUTS),KC_FN4, KC_FN5,OSL(SYMBOL),MO(NUMBER), // thumb cluster MO(MOUSE), RCTL(KC_S), @@ -81,30 +81,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), -// permanent shell layer - meant to be used while in a terminal + +// permanent shell layer - meant to be used while in a terminal. only the top keys are overriden [SHELL_LAYER] = KEYMAP( // left hand - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,M(SCREEN_COPY_MODE), M(SCREEN_PASTE),M(SHELL_RECALL_LAST_ARG_REMOVE_FIRST_COMMAND), - KC_TAB, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RCTL(KC_R), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,LALT(KC_DOT),RCTL(KC_R),RCTL(KC_C), + 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,LALT(KC_DOT), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, // bottom row KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, // thumb cluster - LALT(KC_B),LALT(KC_F), - LALT(KC_D), - KC_TRNS,RCTL(KC_W),KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, // right hand - RCTL(KC_C), KC_LEFT, KC_RIGHT, RCTL(KC_U), RCTL(KC_K), KC_TRNS, KC_TRNS, - KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RCTL(KC_W), LALT(KC_B),LALT(KC_F), KC_LEFT, KC_RIGHT, LALT(KC_D), 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_DOWN, 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, // bottom row - M(SCREEN_TAB_LEFT), M(SCREEN_TAB_RIGHT), M(SCREEN_NEW_TAB), KC_TRNS, MEH(KC_V), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, // thumb cluster - KC_LEFT, KC_RIGHT, - KC_HOME, - KC_END, KC_TRNS, KC_TRNS + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS ), // shell navigation layer From f7462aaa613a08ba4b86dbb912ce26722cfccaff Mon Sep 17 00:00:00 2001 From: Luiz Ribeiro Date: Sat, 21 Jan 2017 12:30:06 -0500 Subject: [PATCH 12/41] Got ps2avrGB to work with the V-USB protocol --- build_keyboard.mk | 4 + keyboards/ps2avrGB/Makefile | 3 + keyboards/ps2avrGB/README.md | 61 +++ keyboards/ps2avrGB/config.h | 44 +++ keyboards/ps2avrGB/keymaps/default/keymap.c | 34 ++ keyboards/ps2avrGB/matrix.c | 105 ++++++ keyboards/ps2avrGB/program | 74 ++++ keyboards/ps2avrGB/ps2avrGB.c | 0 keyboards/ps2avrGB/ps2avrGB.h | 54 +++ keyboards/ps2avrGB/rules.mk | 38 ++ keyboards/ps2avrGB/usbconfig.h | 396 ++++++++++++++++++++ tmk_core/common.mk | 8 + tmk_core/common/avr/bootloader.c | 10 + tmk_core/common/avr/suspend.c | 2 + tmk_core/common/avr/timer.c | 33 +- tmk_core/common/command.c | 2 + tmk_core/protocol/vusb.mk | 7 +- tmk_core/protocol/vusb/main.c | 6 +- tmk_core/protocol/vusb/vusb.c | 22 +- 19 files changed, 886 insertions(+), 17 deletions(-) create mode 100644 keyboards/ps2avrGB/Makefile create mode 100644 keyboards/ps2avrGB/README.md create mode 100644 keyboards/ps2avrGB/config.h create mode 100644 keyboards/ps2avrGB/keymaps/default/keymap.c create mode 100644 keyboards/ps2avrGB/matrix.c create mode 100755 keyboards/ps2avrGB/program create mode 100644 keyboards/ps2avrGB/ps2avrGB.c create mode 100644 keyboards/ps2avrGB/ps2avrGB.h create mode 100644 keyboards/ps2avrGB/rules.mk create mode 100644 keyboards/ps2avrGB/usbconfig.h diff --git a/build_keyboard.mk b/build_keyboard.mk index ce505de12..b85557d4a 100644 --- a/build_keyboard.mk +++ b/build_keyboard.mk @@ -221,7 +221,11 @@ OPT_DEFS += $(TMK_COMMON_DEFS) EXTRALDFLAGS += $(TMK_COMMON_LDFLAGS) ifeq ($(PLATFORM),AVR) +ifeq ($(strip $(PROTOCOL)), VUSB) + include $(TMK_PATH)/protocol/vusb.mk +else include $(TMK_PATH)/protocol/lufa.mk +endif include $(TMK_PATH)/avr.mk endif diff --git a/keyboards/ps2avrGB/Makefile b/keyboards/ps2avrGB/Makefile new file mode 100644 index 000000000..57b2ef62e --- /dev/null +++ b/keyboards/ps2avrGB/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../Makefile +endif diff --git a/keyboards/ps2avrGB/README.md b/keyboards/ps2avrGB/README.md new file mode 100644 index 000000000..f8360aec0 --- /dev/null +++ b/keyboards/ps2avrGB/README.md @@ -0,0 +1,61 @@ +ps2avrGB keyboard firmware +========================== + +This is a port of the QMK firmware for boards that are based on the +ps2avrGB firmware, like the [ps2avrGB +keyboard](https://www.keyclack.com/product/gb-ps2avrgb/) or the ones sold +by [Winkeyless](http://winkeyless.kr/product/ps2avrgb-parts/). + +Note that this is a complete replacement for the firmware, so you won't be +using Bootmapper Client to change any keyboard settings, since not all the +USB report options are supported. + +## Supported Boards + +Only the [B.mini X2](http://winkeyless.kr/product/b-mini-x2-pcb/) has been +tested so far (since it's the only one I own). But other boards that use +the ps2avrGB firmware should work as well. + +## Installing + +First, install the requirements. These commands are for OSX, but all you +need is the AVR toolchain and `bootloadHID` for flashing: + +``` +$ brew cask install crosspack-avr +$ brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb +``` + +In order to use the `./program` script, which can reboot the board into +the bootloader, you'll need Python 2 with PyUSB installed: + +``` +$ pip install pyusb +``` + +Then, with the keyboard plugged in, simply run this command from the +`qmk_firmware` directory: + +``` +$ make ps2avrGB-program +``` + +If you prefer, you can just build it and flash the firmware directly with +`bootloadHID` if you boot the board while holding down `L_Ctrl` to keep it +in the bootloader: + +``` +$ make ps2avrGB +$ bootloadHID -r ps2avrGB_default.hex +``` + +## Troubleshooting + +From my experience, it's really hard to brick these boards. But these +tricks have been useful when it got stuck in a weird scenario. + +1. Try plugging the board in while pressing `L_Ctrl`. This will force it + to boot only the bootloader without loading the firmware. Once this is + done, just reflash the board with the original firmware. +2. Sometimes USB hubs can act weird, so try connecting the board directly + to your computer or plugging/unplugging the USB hub. diff --git a/keyboards/ps2avrGB/config.h b/keyboards/ps2avrGB/config.h new file mode 100644 index 000000000..cd5d1ab5a --- /dev/null +++ b/keyboards/ps2avrGB/config.h @@ -0,0 +1,44 @@ +/* +Copyright 2017 Luiz Ribeiro + +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" + +#define VENDOR_ID 0x20A0 +#define PRODUCT_ID 0x422D +// TODO: share these strings with usbconfig.h +// Edit usbconfig.h to change these. +#define MANUFACTURER winkeyless.kr +#define PRODUCT ps2avrGB + +/* matrix size */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 15 + +/* only support one hard-coded backlight color for now */ +#define BACKLIGHT_LEVELS 0 +#define BACKLIGHT_COLOR 0x110000 + +#define NO_UART 1 +#define EEPROM_BOOTLOADER_START 1 + +/* key combination for command */ +#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) + +#endif diff --git a/keyboards/ps2avrGB/keymaps/default/keymap.c b/keyboards/ps2avrGB/keymaps/default/keymap.c new file mode 100644 index 000000000..43cc6bce3 --- /dev/null +++ b/keyboards/ps2avrGB/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +#include "ps2avrGB.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + KEYMAP( \ + ESC, NO, NO, NO, NO, NO, NO, MPRV,MPLY,MNXT,MUTE,VOLD,VOLU,PSCR,HOME,END, \ + GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, DEL, \ + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, FN1, \ + FN2, A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP,\ + LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ + FN0, LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT \ + ), + KEYMAP( \ + NO, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, NO, NO, NO, \ + NO, NO, NO, NO, NO, NO, NO, MPRV,MPLY,MNXT,MUTE,VOLD,VOLU,DEL, NO, \ + NO, NO, NO, NO, NO, NO, NO, PGUP,NO, NO, NO, NO, NO, NO, TRNS,\ + FN2, NO, NO, PGDN,NO, NO, LEFT,DOWN,UP, RGHT,NO, NO, NO, NO, \ + TRNS,NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, TRNS, NO, NO, \ + TRNS,TRNS,TRNS, NO, TRNS,TRNS,TRNS,NO, NO, NO \ + ), + KEYMAP( \ + NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, \ + NO, NO, NO, NO, END, NO, NO, NO, NO, NO, HOME,NO, NO, NO, NO, \ + NO, BTN1,MS_U,BTN2,NO, NO, NO, PGUP,FN1, NO, NO, NO, NO, NO, TRNS,\ + FN2, MS_L,MS_D,MS_R,NO, NO, LEFT,DOWN,UP, RGHT,NO, NO, NO, NO, \ + TRNS,NO, DEL, NO, NO, NO, NO, NO, NO, NO, NO, TRNS, NO, NO, \ + TRNS,TRNS,TRNS, NO, TRNS,TRNS,TRNS,NO, NO, NO \ + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(1), + [1] = ACTION_LAYER_TOGGLE(2), + [2] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC), +}; diff --git a/keyboards/ps2avrGB/matrix.c b/keyboards/ps2avrGB/matrix.c new file mode 100644 index 000000000..e487ca182 --- /dev/null +++ b/keyboards/ps2avrGB/matrix.c @@ -0,0 +1,105 @@ +/* +Copyright 2017 Luiz Ribeiro + +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 . +*/ + +#include +#include + +#include "matrix.h" + +#ifndef DEBOUNCE +# define DEBOUNCE 5 +#endif + +static uint8_t debouncing = DEBOUNCE; + +static matrix_row_t matrix[MATRIX_ROWS]; +static matrix_row_t matrix_debouncing[MATRIX_ROWS]; + +void matrix_init(void) { + // all outputs for rows high + DDRB = 0xFF; + PORTB = 0xFF; + // all inputs for columns + DDRA = 0x00; + DDRC &= ~(0x111111<<2); + DDRD &= ~(1<> 1) & 0x55) | ((x << 1) & 0xaa); + x = ((x >> 2) & 0x33) | ((x << 2) & 0xcc); + x = ((x >> 4) & 0x0f) | ((x << 4) & 0xf0); + return x; +} + +uint8_t matrix_scan(void) { + for (uint8_t row = 0; row < MATRIX_ROWS; row++) { + matrix_set_row_status(row); + _delay_us(5); + + matrix_row_t cols = ( + // cols 0..7, PORTA 0 -> 7 + (~PINA) & 0xFF + ) | ( + // cols 8..13, PORTC 7 -> 0 + bit_reverse((~PINC) & 0xFF) << 8 + ) | ( + // col 14, PORTD 7 + ((~PIND) & (1 << PIND7)) << 7 + ); + + if (matrix_debouncing[row] != cols) { + matrix_debouncing[row] = cols; + debouncing = DEBOUNCE; + } + } + + if (debouncing) { + if (--debouncing) { + _delay_ms(1); + } else { + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + matrix[i] = matrix_debouncing[i]; + } + } + } + + return 1; +} + +inline matrix_row_t matrix_get_row(uint8_t row) { + return matrix[row]; +} + +void matrix_print(void) +{ +} diff --git a/keyboards/ps2avrGB/program b/keyboards/ps2avrGB/program new file mode 100755 index 000000000..a88d9cd9b --- /dev/null +++ b/keyboards/ps2avrGB/program @@ -0,0 +1,74 @@ +#!/usr/bin/env python +# Copyright 2017 Luiz Ribeiro +# +# 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 . + +from __future__ import print_function + +import os +import sys +import time +import usb + +if len(sys.argv) < 2: + print('Usage: %s ' % sys.argv[0]) + sys.exit(1) + +print('Searching for ps2avrGB... ', end='') + +dev = usb.core.find(idVendor=0x20A0, idProduct=0x422D) +if dev is None: + raise ValueError('Device not found') + +print('Found', end='\n\n') + +print('Device Information:') +print(' idVendor: %d (0x%04x)' % (dev.idVendor, dev.idVendor)) +print(' idProduct: %d (0x%04x)' % (dev.idProduct, dev.idProduct)) +print('Manufacturer: %s' % (dev.iManufacturer)) +print('Serial: %s' % (dev.iSerialNumber)) +print('Product: %s' % (dev.iProduct), end='\n\n') + +print('Transferring control to bootloader... ', end='') + +dev.set_configuration() + +request_type = usb.util.build_request_type( + usb.util.CTRL_OUT, + usb.util.CTRL_TYPE_CLASS, + usb.util.CTRL_RECIPIENT_DEVICE) + +USBRQ_HID_SET_REPORT = 0x09 +HID_REPORT_OPTION = 0x0301 + + +try: + dev.ctrl_transfer( + request_type, + USBRQ_HID_SET_REPORT, + HID_REPORT_OPTION, + 0, + [0, 0, 0xFF] + [0] * 5 + ) +except usb.core.USBError: + # for some reason I keep getting USBError, but it works! + pass + +# wait a bit until bootloader starts up +time.sleep(2) + +print('OK') +print('Programming...') +if os.system('bootloadHID -r "%s"' % sys.argv[1]) == 0: + print('\nDone!') diff --git a/keyboards/ps2avrGB/ps2avrGB.c b/keyboards/ps2avrGB/ps2avrGB.c new file mode 100644 index 000000000..e69de29bb diff --git a/keyboards/ps2avrGB/ps2avrGB.h b/keyboards/ps2avrGB/ps2avrGB.h new file mode 100644 index 000000000..1da26adb2 --- /dev/null +++ b/keyboards/ps2avrGB/ps2avrGB.h @@ -0,0 +1,54 @@ +/* +Copyright 2017 Luiz Ribeiro + +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 KEYMAP_COMMON_H +#define KEYMAP_COMMON_H + +#include +#include +#include "keycode.h" +#include "action.h" +#include "action_code.h" +#include "action_layer.h" +#include "action_macro.h" +#include "action_util.h" +#include "report.h" +#include "host.h" +#include "print.h" +#include "debug.h" +#include "keymap.h" + + +#define KEYMAP( \ + K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \ + K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \ + K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \ + K02, K12, K22, K32, K42, K52, K36, KD6, KD7, K37, KA2, KB2, KD2, KE0, \ + K01, K11, K21, K31, K41, K51, K46, KE6, KE7, K47, KA1, KB1, K86, K77, \ + K00, K10, K20, K56, K57, KB0, KC0, K66, K76, K96 \ +) \ +{ \ + { KC_##K00, KC_##K10, KC_##K20, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_##KB0, KC_##KC0, KC_##KD0, KC_##KE0 }, \ + { KC_##K01, KC_##K11, KC_##K21, KC_##K31, KC_##K41, KC_##K51, KC_NO, KC_NO, KC_NO, KC_NO, KC_##KA1, KC_##KB1, KC_NO, KC_##KD1, KC_##KE1 }, \ + { KC_##K02, KC_##K12, KC_##K22, KC_##K32, KC_##K42, KC_##K52, KC_NO, KC_NO, KC_NO, KC_NO, KC_##KA2, KC_##KB2, KC_NO, KC_##KD2, KC_##KE2 }, \ + { KC_##K03, KC_##K13, KC_##K23, KC_##K33, KC_##K43, KC_##K53, KC_NO, KC_NO, KC_NO, KC_NO, KC_##KA3, KC_##KB3, KC_##KC3, KC_##KD3, KC_NO }, \ + { KC_##K04, KC_##K14, KC_##K24, KC_##K34, KC_##K44, KC_##K54, KC_NO, KC_NO, KC_NO, KC_NO, KC_##KA4, KC_##KB4, KC_##KC4, KC_NO, KC_##KE4 }, \ + { KC_##K05, KC_NO, KC_##K25, KC_##K35, KC_##K45, KC_##K55, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_##KB5, KC_##KC5, KC_##KD5, KC_##KE5 }, \ + { KC_##K06, KC_##K16, KC_##K26, KC_##K36, KC_##K46, KC_##K56, KC_##K66, KC_##K76, KC_##K86, KC_##K96, KC_##KA6, KC_##KB6, KC_##KC6, KC_##KD6, KC_##KE6 }, \ + { KC_##K07, KC_##K17, KC_##K27, KC_##K37, KC_##K47, KC_##K57, KC_##K67, KC_##K77, KC_NO, KC_NO, KC_##KA7, KC_##KB7, KC_##KC7, KC_##KD7, KC_##KE7 } \ +} + +#endif diff --git a/keyboards/ps2avrGB/rules.mk b/keyboards/ps2avrGB/rules.mk new file mode 100644 index 000000000..d747e8929 --- /dev/null +++ b/keyboards/ps2avrGB/rules.mk @@ -0,0 +1,38 @@ +# MCU name +MCU = atmega32a + +PROTOCOL = VUSB + +# disable UART since atmega32a apparently doesn't have it +NO_UART = yes +# this simplifies things for now +NO_SUSPEND_POWER_DOWN = yes + +# Processor frequency. +# Normally the first thing your program should do is set the clock prescaler, +# so your program will run at the correct speed. You should also set this +# variable to same clock speed. The _delay_ms() macro uses this, and many +# examples use this variable to calculate timings. Do not add a "UL" here. +F_CPU = 12000000 + +# Build Options +# comment out to disable the options. +# +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +#BACKLIGHT_ENABLE = yes + +# V-USB debug level: To use ps2_usart.c level must be 0 +# ps2_usart.c requires USART to receive PS/2 signal. +OPT_DEFS = -DDEBUG_LEVEL=0 +OPS_DEFS += -DPROTOCOL_VUSB +OPT_DEFS += -DBOOTLOADER_SIZE=2048 + +CUSTOM_MATRIX = yes +SRC = matrix.c + +#---------------- Programming Options -------------------------- +PROGRAM_CMD = ./keyboards/ps2avrGB/program $(TARGET).hex diff --git a/keyboards/ps2avrGB/usbconfig.h b/keyboards/ps2avrGB/usbconfig.h new file mode 100644 index 000000000..d2d848fcd --- /dev/null +++ b/keyboards/ps2avrGB/usbconfig.h @@ -0,0 +1,396 @@ +/* Name: usbconfig.h + * Project: V-USB, virtual USB port for Atmel's(r) AVR(r) microcontrollers + * Author: Christian Starkjohann + * Creation Date: 2005-04-01 + * Tabsize: 4 + * Copyright: (c) 2005 by OBJECTIVE DEVELOPMENT Software GmbH + * License: GNU GPL v2 (see License.txt), GNU GPL v3 or proprietary (CommercialLicense.txt) + * This Revision: $Id: usbconfig-prototype.h 785 2010-05-30 17:57:07Z cs $ + */ + +#ifndef __usbconfig_h_included__ +#define __usbconfig_h_included__ + +#include "config.h" + +/* +General Description: +This file is an example configuration (with inline documentation) for the USB +driver. It configures V-USB for USB D+ connected to Port D bit 2 (which is +also hardware interrupt 0 on many devices) and USB D- to Port D bit 4. You may +wire the lines to any other port, as long as D+ is also wired to INT0 (or any +other hardware interrupt, as long as it is the highest level interrupt, see +section at the end of this file). +*/ + +/* ---------------------------- Hardware Config ---------------------------- */ + +#define USB_CFG_IOPORTNAME D +/* This is the port where the USB bus is connected. When you configure it to + * "B", the registers PORTB, PINB and DDRB will be used. + */ +#define USB_CFG_DMINUS_BIT 3 +/* This is the bit number in USB_CFG_IOPORT where the USB D- line is connected. + * This may be any bit in the port. + */ +#define USB_CFG_DPLUS_BIT 2 +/* This is the bit number in USB_CFG_IOPORT where the USB D+ line is connected. + * This may be any bit in the port. Please note that D+ must also be connected + * to interrupt pin INT0! [You can also use other interrupts, see section + * "Optional MCU Description" below, or you can connect D- to the interrupt, as + * it is required if you use the USB_COUNT_SOF feature. If you use D- for the + * interrupt, the USB interrupt will also be triggered at Start-Of-Frame + * markers every millisecond.] + */ +#define USB_CFG_CLOCK_KHZ (F_CPU/1000) +/* Clock rate of the AVR in kHz. Legal values are 12000, 12800, 15000, 16000, + * 16500, 18000 and 20000. The 12.8 MHz and 16.5 MHz versions of the code + * require no crystal, they tolerate +/- 1% deviation from the nominal + * frequency. All other rates require a precision of 2000 ppm and thus a + * crystal! + * Since F_CPU should be defined to your actual clock rate anyway, you should + * not need to modify this setting. + */ +#define USB_CFG_CHECK_CRC 0 +/* Define this to 1 if you want that the driver checks integrity of incoming + * data packets (CRC checks). CRC checks cost quite a bit of code size and are + * currently only available for 18 MHz crystal clock. You must choose + * USB_CFG_CLOCK_KHZ = 18000 if you enable this option. + */ + +/* ----------------------- Optional Hardware Config ------------------------ */ + +/* #define USB_CFG_PULLUP_IOPORTNAME D */ +/* If you connect the 1.5k pullup resistor from D- to a port pin instead of + * V+, you can connect and disconnect the device from firmware by calling + * the macros usbDeviceConnect() and usbDeviceDisconnect() (see usbdrv.h). + * This constant defines the port on which the pullup resistor is connected. + */ +/* #define USB_CFG_PULLUP_BIT 4 */ +/* This constant defines the bit number in USB_CFG_PULLUP_IOPORT (defined + * above) where the 1.5k pullup resistor is connected. See description + * above for details. + */ + +/* --------------------------- Functional Range ---------------------------- */ + +#define USB_CFG_HAVE_INTRIN_ENDPOINT 1 +/* Define this to 1 if you want to compile a version with two endpoints: The + * default control endpoint 0 and an interrupt-in endpoint (any other endpoint + * number). + */ +#define USB_CFG_HAVE_INTRIN_ENDPOINT3 1 +/* Define this to 1 if you want to compile a version with three endpoints: The + * default control endpoint 0, an interrupt-in endpoint 3 (or the number + * configured below) and a catch-all default interrupt-in endpoint as above. + * You must also define USB_CFG_HAVE_INTRIN_ENDPOINT to 1 for this feature. + */ +#define USB_CFG_EP3_NUMBER 3 +/* If the so-called endpoint 3 is used, it can now be configured to any other + * endpoint number (except 0) with this macro. Default if undefined is 3. + */ +/* #define USB_INITIAL_DATATOKEN USBPID_DATA1 */ +/* The above macro defines the startup condition for data toggling on the + * interrupt/bulk endpoints 1 and 3. Defaults to USBPID_DATA1. + * Since the token is toggled BEFORE sending any data, the first packet is + * sent with the oposite value of this configuration! + */ +#define USB_CFG_IMPLEMENT_HALT 0 +/* Define this to 1 if you also want to implement the ENDPOINT_HALT feature + * for endpoint 1 (interrupt endpoint). Although you may not need this feature, + * it is required by the standard. We have made it a config option because it + * bloats the code considerably. + */ +#define USB_CFG_SUPPRESS_INTR_CODE 0 +/* Define this to 1 if you want to declare interrupt-in endpoints, but don't + * want to send any data over them. If this macro is defined to 1, functions + * usbSetInterrupt() and usbSetInterrupt3() are omitted. This is useful if + * you need the interrupt-in endpoints in order to comply to an interface + * (e.g. HID), but never want to send any data. This option saves a couple + * of bytes in flash memory and the transmit buffers in RAM. + */ +#define USB_CFG_INTR_POLL_INTERVAL 1 +/* If you compile a version with endpoint 1 (interrupt-in), this is the poll + * interval. The value is in milliseconds and must not be less than 10 ms for + * low speed devices. + */ +#define USB_CFG_IS_SELF_POWERED 0 +/* Define this to 1 if the device has its own power supply. Set it to 0 if the + * device is powered from the USB bus. + */ +#define USB_CFG_MAX_BUS_POWER 500 +/* Set this variable to the maximum USB bus power consumption of your device. + * The value is in milliamperes. [It will be divided by two since USB + * communicates power requirements in units of 2 mA.] + */ +#define USB_CFG_IMPLEMENT_FN_WRITE 1 +/* Set this to 1 if you want usbFunctionWrite() to be called for control-out + * transfers. Set it to 0 if you don't need it and want to save a couple of + * bytes. + */ +#define USB_CFG_IMPLEMENT_FN_READ 0 +/* Set this to 1 if you need to send control replies which are generated + * "on the fly" when usbFunctionRead() is called. If you only want to send + * data from a static buffer, set it to 0 and return the data from + * usbFunctionSetup(). This saves a couple of bytes. + */ +#define USB_CFG_IMPLEMENT_FN_WRITEOUT 0 +/* Define this to 1 if you want to use interrupt-out (or bulk out) endpoints. + * You must implement the function usbFunctionWriteOut() which receives all + * interrupt/bulk data sent to any endpoint other than 0. The endpoint number + * can be found in 'usbRxToken'. + */ +#define USB_CFG_HAVE_FLOWCONTROL 0 +/* Define this to 1 if you want flowcontrol over USB data. See the definition + * of the macros usbDisableAllRequests() and usbEnableAllRequests() in + * usbdrv.h. + */ +#define USB_CFG_DRIVER_FLASH_PAGE 0 +/* If the device has more than 64 kBytes of flash, define this to the 64 k page + * where the driver's constants (descriptors) are located. Or in other words: + * Define this to 1 for boot loaders on the ATMega128. + */ +#define USB_CFG_LONG_TRANSFERS 0 +/* Define this to 1 if you want to send/receive blocks of more than 254 bytes + * in a single control-in or control-out transfer. Note that the capability + * for long transfers increases the driver size. + */ +/* #define USB_RX_USER_HOOK(data, len) if(usbRxToken == (uchar)USBPID_SETUP) blinkLED(); */ +/* This macro is a hook if you want to do unconventional things. If it is + * defined, it's inserted at the beginning of received message processing. + * If you eat the received message and don't want default processing to + * proceed, do a return after doing your things. One possible application + * (besides debugging) is to flash a status LED on each packet. + */ +/* #define USB_RESET_HOOK(resetStarts) if(!resetStarts){hadUsbReset();} */ +/* This macro is a hook if you need to know when an USB RESET occurs. It has + * one parameter which distinguishes between the start of RESET state and its + * end. + */ +/* #define USB_SET_ADDRESS_HOOK() hadAddressAssigned(); */ +/* This macro (if defined) is executed when a USB SET_ADDRESS request was + * received. + */ +#define USB_COUNT_SOF 1 +/* define this macro to 1 if you need the global variable "usbSofCount" which + * counts SOF packets. This feature requires that the hardware interrupt is + * connected to D- instead of D+. + */ +/* #ifdef __ASSEMBLER__ + * macro myAssemblerMacro + * in YL, TCNT0 + * sts timer0Snapshot, YL + * endm + * #endif + * #define USB_SOF_HOOK myAssemblerMacro + * This macro (if defined) is executed in the assembler module when a + * Start Of Frame condition is detected. It is recommended to define it to + * the name of an assembler macro which is defined here as well so that more + * than one assembler instruction can be used. The macro may use the register + * YL and modify SREG. If it lasts longer than a couple of cycles, USB messages + * immediately after an SOF pulse may be lost and must be retried by the host. + * What can you do with this hook? Since the SOF signal occurs exactly every + * 1 ms (unless the host is in sleep mode), you can use it to tune OSCCAL in + * designs running on the internal RC oscillator. + * Please note that Start Of Frame detection works only if D- is wired to the + * interrupt, not D+. THIS IS DIFFERENT THAN MOST EXAMPLES! + */ +#define USB_CFG_CHECK_DATA_TOGGLING 0 +/* define this macro to 1 if you want to filter out duplicate data packets + * sent by the host. Duplicates occur only as a consequence of communication + * errors, when the host does not receive an ACK. Please note that you need to + * implement the filtering yourself in usbFunctionWriteOut() and + * usbFunctionWrite(). Use the global usbCurrentDataToken and a static variable + * for each control- and out-endpoint to check for duplicate packets. + */ +#define USB_CFG_HAVE_MEASURE_FRAME_LENGTH 0 +/* define this macro to 1 if you want the function usbMeasureFrameLength() + * compiled in. This function can be used to calibrate the AVR's RC oscillator. + */ +#define USB_USE_FAST_CRC 0 +/* The assembler module has two implementations for the CRC algorithm. One is + * faster, the other is smaller. This CRC routine is only used for transmitted + * messages where timing is not critical. The faster routine needs 31 cycles + * per byte while the smaller one needs 61 to 69 cycles. The faster routine + * may be worth the 32 bytes bigger code size if you transmit lots of data and + * run the AVR close to its limit. + */ + +/* -------------------------- Device Description --------------------------- */ + +#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) +/* USB vendor ID for the device, low byte first. If you have registered your + * own Vendor ID, define it here. Otherwise you may use one of obdev's free + * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! + * *** IMPORTANT NOTE *** + * This template uses obdev's shared VID/PID pair for Vendor Class devices + * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand + * the implications! + */ +#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) +/* This is the ID of the product, low byte first. It is interpreted in the + * scope of the vendor ID. If you have registered your own VID with usb.org + * or if you have licensed a PID from somebody else, define it here. Otherwise + * you may use one of obdev's free shared VID/PID pairs. See the file + * USB-IDs-for-free.txt for details! + * *** IMPORTANT NOTE *** + * This template uses obdev's shared VID/PID pair for Vendor Class devices + * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand + * the implications! + */ +#define USB_CFG_DEVICE_VERSION 0x00, 0x02 +/* Version number of the device: Minor number first, then major number. + */ +#define USB_CFG_VENDOR_NAME 'w', 'i', 'n', 'k', 'e', 'y', 'l', 'e', 's', 's', '.', 'k', 'r' +#define USB_CFG_VENDOR_NAME_LEN 13 +/* These two values define the vendor name returned by the USB device. The name + * must be given as a list of characters under single quotes. The characters + * are interpreted as Unicode (UTF-16) entities. + * If you don't want a vendor name string, undefine these macros. + * ALWAYS define a vendor name containing your Internet domain name if you use + * obdev's free shared VID/PID pair. See the file USB-IDs-for-free.txt for + * details. + */ +#define USB_CFG_DEVICE_NAME 'p', 's', '2', 'a', 'v', 'r', 'G', 'B' +#define USB_CFG_DEVICE_NAME_LEN 8 +/* Same as above for the device name. If you don't want a device name, undefine + * the macros. See the file USB-IDs-for-free.txt before you assign a name if + * you use a shared VID/PID. + */ +/*#define USB_CFG_SERIAL_NUMBER 'N', 'o', 'n', 'e' */ +/*#define USB_CFG_SERIAL_NUMBER_LEN 0 */ +/* Same as above for the serial number. If you don't want a serial number, + * undefine the macros. + * It may be useful to provide the serial number through other means than at + * compile time. See the section about descriptor properties below for how + * to fine tune control over USB descriptors such as the string descriptor + * for the serial number. + */ +#define USB_CFG_DEVICE_CLASS 0 +#define USB_CFG_DEVICE_SUBCLASS 0 +/* See USB specification if you want to conform to an existing device class. + * Class 0xff is "vendor specific". + */ +#define USB_CFG_INTERFACE_CLASS 3 /* HID */ +#define USB_CFG_INTERFACE_SUBCLASS 1 /* Boot */ +#define USB_CFG_INTERFACE_PROTOCOL 1 /* Keyboard */ +/* See USB specification if you want to conform to an existing device class or + * protocol. The following classes must be set at interface level: + * HID class is 3, no subclass and protocol required (but may be useful!) + * CDC class is 2, use subclass 2 and protocol 1 for ACM + */ +#define USB_CFG_HID_REPORT_DESCRIPTOR_LENGTH 0 +/* Define this to the length of the HID report descriptor, if you implement + * an HID device. Otherwise don't define it or define it to 0. + * If you use this define, you must add a PROGMEM character array named + * "usbHidReportDescriptor" to your code which contains the report descriptor. + * Don't forget to keep the array and this define in sync! + */ + +/* #define USB_PUBLIC static */ +/* Use the define above if you #include usbdrv.c instead of linking against it. + * This technique saves a couple of bytes in flash memory. + */ + +/* ------------------- Fine Control over USB Descriptors ------------------- */ +/* If you don't want to use the driver's default USB descriptors, you can + * provide our own. These can be provided as (1) fixed length static data in + * flash memory, (2) fixed length static data in RAM or (3) dynamically at + * runtime in the function usbFunctionDescriptor(). See usbdrv.h for more + * information about this function. + * Descriptor handling is configured through the descriptor's properties. If + * no properties are defined or if they are 0, the default descriptor is used. + * Possible properties are: + * + USB_PROP_IS_DYNAMIC: The data for the descriptor should be fetched + * at runtime via usbFunctionDescriptor(). If the usbMsgPtr mechanism is + * used, the data is in FLASH by default. Add property USB_PROP_IS_RAM if + * you want RAM pointers. + * + USB_PROP_IS_RAM: The data returned by usbFunctionDescriptor() or found + * in static memory is in RAM, not in flash memory. + * + USB_PROP_LENGTH(len): If the data is in static memory (RAM or flash), + * the driver must know the descriptor's length. The descriptor itself is + * found at the address of a well known identifier (see below). + * List of static descriptor names (must be declared PROGMEM if in flash): + * char usbDescriptorDevice[]; + * char usbDescriptorConfiguration[]; + * char usbDescriptorHidReport[]; + * char usbDescriptorString0[]; + * int usbDescriptorStringVendor[]; + * int usbDescriptorStringDevice[]; + * int usbDescriptorStringSerialNumber[]; + * Other descriptors can't be provided statically, they must be provided + * dynamically at runtime. + * + * Descriptor properties are or-ed or added together, e.g.: + * #define USB_CFG_DESCR_PROPS_DEVICE (USB_PROP_IS_RAM | USB_PROP_LENGTH(18)) + * + * The following descriptors are defined: + * USB_CFG_DESCR_PROPS_DEVICE + * USB_CFG_DESCR_PROPS_CONFIGURATION + * USB_CFG_DESCR_PROPS_STRINGS + * USB_CFG_DESCR_PROPS_STRING_0 + * USB_CFG_DESCR_PROPS_STRING_VENDOR + * USB_CFG_DESCR_PROPS_STRING_PRODUCT + * USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER + * USB_CFG_DESCR_PROPS_HID + * USB_CFG_DESCR_PROPS_HID_REPORT + * USB_CFG_DESCR_PROPS_UNKNOWN (for all descriptors not handled by the driver) + * + * Note about string descriptors: String descriptors are not just strings, they + * are Unicode strings prefixed with a 2 byte header. Example: + * int serialNumberDescriptor[] = { + * USB_STRING_DESCRIPTOR_HEADER(6), + * 'S', 'e', 'r', 'i', 'a', 'l' + * }; + */ + +#define USB_CFG_DESCR_PROPS_DEVICE 0 +#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC +//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0 +#define USB_CFG_DESCR_PROPS_STRINGS 0 +#define USB_CFG_DESCR_PROPS_STRING_0 0 +#define USB_CFG_DESCR_PROPS_STRING_VENDOR 0 +#define USB_CFG_DESCR_PROPS_STRING_PRODUCT 0 +#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER 0 +#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC +//#define USB_CFG_DESCR_PROPS_HID 0 +#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC +//#define USB_CFG_DESCR_PROPS_HID_REPORT 0 +#define USB_CFG_DESCR_PROPS_UNKNOWN 0 + +#define usbMsgPtr_t unsigned short +/* If usbMsgPtr_t is not defined, it defaults to 'uchar *'. We define it to + * a scalar type here because gcc generates slightly shorter code for scalar + * arithmetics than for pointer arithmetics. Remove this define for backward + * type compatibility or define it to an 8 bit type if you use data in RAM only + * and all RAM is below 256 bytes (tiny memory model in IAR CC). + */ + +/* ----------------------- Optional MCU Description ------------------------ */ + +/* The following configurations have working defaults in usbdrv.h. You + * usually don't need to set them explicitly. Only if you want to run + * the driver on a device which is not yet supported or with a compiler + * which is not fully supported (such as IAR C) or if you use a differnt + * interrupt than INT0, you may have to define some of these. + */ +/* #define USB_INTR_CFG MCUCR */ +/* #define USB_INTR_CFG_SET ((1 << ISC00) | (1 << ISC01)) */ +/* #define USB_INTR_CFG_CLR 0 */ +/* #define USB_INTR_ENABLE GIMSK */ +/* #define USB_INTR_ENABLE_BIT INT0 */ +/* #define USB_INTR_PENDING GIFR */ +/* #define USB_INTR_PENDING_BIT INTF0 */ +/* #define USB_INTR_VECTOR INT0_vect */ + +/* Set INT1 for D- falling edge to count SOF */ +/* #define USB_INTR_CFG EICRA */ +#define USB_INTR_CFG_SET ((1 << ISC11) | (0 << ISC10)) +/* #define USB_INTR_CFG_CLR 0 */ +/* #define USB_INTR_ENABLE EIMSK */ +#define USB_INTR_ENABLE_BIT INT1 +/* #define USB_INTR_PENDING EIFR */ +#define USB_INTR_PENDING_BIT INTF1 +#define USB_INTR_VECTOR INT1_vect + +#endif /* __usbconfig_h_included__ */ diff --git a/tmk_core/common.mk b/tmk_core/common.mk index 3c1373c08..a86dccc61 100644 --- a/tmk_core/common.mk +++ b/tmk_core/common.mk @@ -80,6 +80,14 @@ ifeq ($(strip $(SLEEP_LED_ENABLE)), yes) TMK_COMMON_DEFS += -DNO_SUSPEND_POWER_DOWN endif +ifeq ($(strip $(NO_UART)), yes) + TMK_COMMON_DEFS += -DNO_UART +endif + +ifeq ($(strip $(NO_SUSPEND_POWER_DOWN)), yes) + TMK_COMMON_DEFS += -DNO_SUSPEND_POWER_DOWN +endif + ifeq ($(strip $(BACKLIGHT_ENABLE)), yes) TMK_COMMON_SRC += $(COMMON_DIR)/backlight.c TMK_COMMON_DEFS += -DBACKLIGHT_ENABLE diff --git a/tmk_core/common/avr/bootloader.c b/tmk_core/common/avr/bootloader.c index ad547b985..98a24d178 100644 --- a/tmk_core/common/avr/bootloader.c +++ b/tmk_core/common/avr/bootloader.c @@ -1,6 +1,7 @@ #include #include #include +#include #include #include #include @@ -89,6 +90,10 @@ void bootloader_jump(void) { _delay_ms(5); #endif + #ifdef EEPROM_BOOTLOADER_START + eeprom_write_byte((uint8_t *)EEPROM_BOOTLOADER_START, 0x00); + #endif + // watchdog reset reset_key = BOOTLOADER_RESET_KEY; wdt_enable(WDTO_250MS); @@ -114,6 +119,11 @@ void bootloader_jump(void) { #endif } +#ifdef __AVR_ATmega32A__ +// MCUSR is actually called MCUCSR in ATmega32A +#define MCUSR MCUCSR +#endif + /* this runs before main() */ void bootloader_jump_after_watchdog_reset(void) __attribute__ ((used, naked, section (".init3"))); void bootloader_jump_after_watchdog_reset(void) diff --git a/tmk_core/common/avr/suspend.c b/tmk_core/common/avr/suspend.c index 0c81e8361..0e97892d9 100644 --- a/tmk_core/common/avr/suspend.c +++ b/tmk_core/common/avr/suspend.c @@ -65,6 +65,7 @@ static uint8_t wdt_timeout = 0; static void power_down(uint8_t wdto) { +#ifndef __AVR_ATmega32A__ #ifdef PROTOCOL_LUFA if (USB_DeviceState == DEVICE_STATE_Configured) return; #endif @@ -99,6 +100,7 @@ static void power_down(uint8_t wdto) // Disable watchdog after sleep wdt_disable(); +#endif } #endif diff --git a/tmk_core/common/avr/timer.c b/tmk_core/common/avr/timer.c index 84af44488..369015200 100644 --- a/tmk_core/common/avr/timer.c +++ b/tmk_core/common/avr/timer.c @@ -29,25 +29,35 @@ volatile uint32_t timer_count; void timer_init(void) { - // Timer0 CTC mode - TCCR0A = 0x02; - #if TIMER_PRESCALER == 1 - TCCR0B = 0x01; + uint8_t prescaler = 0x01; #elif TIMER_PRESCALER == 8 - TCCR0B = 0x02; + uint8_t prescaler = 0x02; #elif TIMER_PRESCALER == 64 - TCCR0B = 0x03; + uint8_t prescaler = 0x03; #elif TIMER_PRESCALER == 256 - TCCR0B = 0x04; + uint8_t prescaler = 0x04; #elif TIMER_PRESCALER == 1024 - TCCR0B = 0x05; + uint8_t prescaler = 0x05; #else # error "Timer prescaler value is NOT vaild." #endif +#ifndef __AVR_ATmega32A__ + // Timer0 CTC mode + TCCR0A = 0x02; + + TCCR0B = prescaler; + OCR0A = TIMER_RAW_TOP; TIMSK0 = (1<. */ +#include +#include #include #include "usbdrv.h" #include "usbconfig.h" @@ -24,6 +26,7 @@ along with this program. If not, see . #include "debug.h" #include "host_driver.h" #include "vusb.h" +#include "bootloader.h" static uint8_t vusb_keyboard_leds = 0; @@ -163,6 +166,7 @@ static struct { uint16_t len; enum { NONE, + BOOTLOADER, SET_LED } kind; } last_req; @@ -193,6 +197,11 @@ usbRequest_t *rq = (void *)data; debug("SET_LED: "); last_req.kind = SET_LED; last_req.len = rq->wLength.word; +#ifdef BOOTLOADER_SIZE + } else if(rq->wValue.word == 0x0301) { + last_req.kind = BOOTLOADER; + last_req.len = rq->wLength.word; +#endif } return USB_NO_MSG; // to get data in usbFunctionWrite } else { @@ -220,6 +229,11 @@ uchar usbFunctionWrite(uchar *data, uchar len) last_req.len = 0; return 1; break; + case BOOTLOADER: + usbDeviceDisconnect(); + bootloader_jump(); + return 1; + break; case NONE: default: return -1; @@ -266,7 +280,7 @@ const PROGMEM uchar keyboard_hid_report[] = { 0x95, 0x06, // Report Count (6), 0x75, 0x08, // Report Size (8), 0x15, 0x00, // Logical Minimum (0), - 0x25, 0xFF, 0x00 // Logical Maximum(255), + 0x25, 0xFF, 0x00, // Logical Maximum(255), 0x05, 0x07, // Usage Page (Key Codes), 0x19, 0x00, // Usage Minimum (0), 0x29, 0xFF, // Usage Maximum (255), @@ -336,7 +350,7 @@ const PROGMEM uchar mouse_hid_report[] = { 0xa1, 0x01, // COLLECTION (Application) 0x85, REPORT_ID_SYSTEM, // REPORT_ID (2) 0x15, 0x01, // LOGICAL_MINIMUM (0x1) - 0x25, 0xb7, 0x00 // LOGICAL_MAXIMUM (0xb7) + 0x25, 0xb7, 0x00, // LOGICAL_MAXIMUM (0xb7) 0x19, 0x01, // USAGE_MINIMUM (0x1) 0x29, 0xb7, // USAGE_MAXIMUM (0xb7) 0x75, 0x10, // REPORT_SIZE (16) @@ -481,11 +495,11 @@ USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) /* interface index */ switch (rq->wIndex.word) { case 0: - usbMsgPtr = keyboard_hid_report; + usbMsgPtr = (unsigned char *)keyboard_hid_report; len = sizeof(keyboard_hid_report); break; case 1: - usbMsgPtr = mouse_hid_report; + usbMsgPtr = (unsigned char *)mouse_hid_report; len = sizeof(mouse_hid_report); break; } From 461dfd44621ef31cabc08136d4714ca24ed651fa Mon Sep 17 00:00:00 2001 From: Luiz Ribeiro Date: Sat, 21 Jan 2017 13:44:36 -0500 Subject: [PATCH 13/41] Simplification and code polish on ps2avrGB directory --- keyboards/ps2avrGB/config.h | 2 -- keyboards/ps2avrGB/matrix.c | 3 +-- keyboards/ps2avrGB/ps2avrGB.h | 12 --------- keyboards/ps2avrGB/rules.mk | 47 +++++++++++++++++++---------------- 4 files changed, 27 insertions(+), 37 deletions(-) diff --git a/keyboards/ps2avrGB/config.h b/keyboards/ps2avrGB/config.h index cd5d1ab5a..dfaea5979 100644 --- a/keyboards/ps2avrGB/config.h +++ b/keyboards/ps2avrGB/config.h @@ -18,8 +18,6 @@ along with this program. If not, see . #ifndef CONFIG_H #define CONFIG_H -#include "config_common.h" - #define VENDOR_ID 0x20A0 #define PRODUCT_ID 0x422D // TODO: share these strings with usbconfig.h diff --git a/keyboards/ps2avrGB/matrix.c b/keyboards/ps2avrGB/matrix.c index e487ca182..beaa54c40 100644 --- a/keyboards/ps2avrGB/matrix.c +++ b/keyboards/ps2avrGB/matrix.c @@ -100,6 +100,5 @@ inline matrix_row_t matrix_get_row(uint8_t row) { return matrix[row]; } -void matrix_print(void) -{ +void matrix_print(void) { } diff --git a/keyboards/ps2avrGB/ps2avrGB.h b/keyboards/ps2avrGB/ps2avrGB.h index 1da26adb2..1527c604e 100644 --- a/keyboards/ps2avrGB/ps2avrGB.h +++ b/keyboards/ps2avrGB/ps2avrGB.h @@ -17,20 +17,8 @@ along with this program. If not, see . #ifndef KEYMAP_COMMON_H #define KEYMAP_COMMON_H -#include -#include #include "keycode.h" #include "action.h" -#include "action_code.h" -#include "action_layer.h" -#include "action_macro.h" -#include "action_util.h" -#include "report.h" -#include "host.h" -#include "print.h" -#include "debug.h" -#include "keymap.h" - #define KEYMAP( \ K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \ diff --git a/keyboards/ps2avrGB/rules.mk b/keyboards/ps2avrGB/rules.mk index d747e8929..e2b5922ea 100644 --- a/keyboards/ps2avrGB/rules.mk +++ b/keyboards/ps2avrGB/rules.mk @@ -1,38 +1,43 @@ +# Copyright 2017 Luiz Ribeiro +# +# 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 . + # MCU name MCU = atmega32a - PROTOCOL = VUSB -# disable UART since atmega32a apparently doesn't have it +# unsupported features for now NO_UART = yes -# this simplifies things for now NO_SUSPEND_POWER_DOWN = yes +BACKLIGHT_ENABLE = no -# Processor frequency. -# Normally the first thing your program should do is set the clock prescaler, -# so your program will run at the correct speed. You should also set this -# variable to same clock speed. The _delay_ms() macro uses this, and many -# examples use this variable to calculate timings. Do not add a "UL" here. +# processor frequency F_CPU = 12000000 -# Build Options -# comment out to disable the options. -# -BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = yes # Console for debug -COMMAND_ENABLE = yes # Commands for debug and configuration -#BACKLIGHT_ENABLE = yes +# build options +BOOTMAGIC_ENABLE = yes +MOUSEKEY_ENABLE = yes +EXTRAKEY_ENABLE = yes +CONSOLE_ENABLE = yes +COMMAND_ENABLE = yes -# V-USB debug level: To use ps2_usart.c level must be 0 -# ps2_usart.c requires USART to receive PS/2 signal. OPT_DEFS = -DDEBUG_LEVEL=0 -OPS_DEFS += -DPROTOCOL_VUSB OPT_DEFS += -DBOOTLOADER_SIZE=2048 +# custom matrix setup CUSTOM_MATRIX = yes SRC = matrix.c -#---------------- Programming Options -------------------------- +# programming options PROGRAM_CMD = ./keyboards/ps2avrGB/program $(TARGET).hex From c26c81c7f3973b2b4e085b53d37ef6fbddd66c9e Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:20:47 +0100 Subject: [PATCH 14/41] Merged keymap for Ergodox EZ & Infinity - Merged keymap for Ergodox EZ & Infinity into one single keymap using pre-processor macros. --- .../keymaps/swissgerman/keyboard-layout.json | 417 +++++++++++++++++ .../keymaps/swissgerman/keyboard-layout.png | Bin 0 -> 75633 bytes .../swissgerman/keyboard-layout_1_2.png | Bin 0 -> 54604 bytes .../swissgerman/keyboard-layout_2_3.json | 429 ++++++++++++++++++ .../ergodox/keymaps/swissgerman/keymap.c | 275 +++++++++++ .../ergodox/keymaps/swissgerman/readme.md | 15 + 6 files changed, 1136 insertions(+) create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png create mode 100644 keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json create mode 100644 keyboards/ergodox/keymaps/swissgerman/keymap.c create mode 100644 keyboards/ergodox/keymaps/swissgerman/readme.md diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json new file mode 100644 index 000000000..7a0397f72 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json @@ -0,0 +1,417 @@ +[ + { + "backcolor": "#ffffff" + }, + [ + { + "x": 3.5 + }, + "#\n3", + { + "x": 10.5 + }, + "*\n8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2", + { + "x": 1 + }, + "$\n4", + { + "x": 8.5 + }, + "&\n7", + { + "x": 1 + }, + "(\n9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5", + { + "a": 7 + }, + "", + { + "x": 4.5 + }, + "", + { + "a": 4 + }, + "^\n6" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "°\n§", + "!\n1", + { + "x": 14.5 + }, + ")\n0", + { + "w": 1.5 + }, + "?\n'\n\n'" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "W", + { + "x": 1 + }, + "R", + { + "x": 8.5 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "c": "#b56b6b", + "a": 6, + "h": 1.5 + }, + "Toggle Code Layer", + { + "x": 4.5, + "h": 1.5 + }, + "Toggle Code Layer", + { + "c": "#cccccc", + "a": 4 + }, + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Delete", + { + "a": 4 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "w": 1.5 + }, + "è\nü\n\n[" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "D", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S", + { + "x": 1 + }, + "F", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Backspace", + { + "c": "#79c777", + "a": 4 + }, + "A\n\nLyr3", + { + "x": 14.5 + }, + "é\nö\nLyr3", + { + "c": "#748adb", + "w": 1.5 + }, + "à\nä\nCmd\n{" + ], + [ + { + "y": -0.625, + "x": 6.5, + "c": "#cccccc", + "a": 6, + "h": 1.5 + }, + "Hyper", + { + "x": 4.5, + "h": 1.5 + }, + "Meh" + ], + [ + { + "y": -0.75, + "x": 3.5, + "a": 4 + }, + "C", + { + "x": 10.5 + }, + ";\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "c": "#748adb" + }, + "X\n\nAlt", + { + "x": 1, + "c": "#cccccc" + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "c": "#748adb" + }, + ":\n.\nAlt" + ], + [ + { + "y": -0.875, + "x": 5.5, + "c": "#cccccc" + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Shift", + { + "c": "#748adb", + "a": 4 + }, + "Z\n\nCtrl", + { + "x": 14.5 + }, + "_\n-\nCtrl", + { + "c": "#cccccc", + "a": 6, + "w": 1.5 + }, + "Shift" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "", + { + "x": 10.5 + }, + "" + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 4 + }, + "£\n$\n\n}", + { + "x": 1, + "a": 7 + }, + "", + { + "x": 10.5, + "a": 6 + }, + "AltGr" + ], + [ + { + "y": -0.9950000000000001, + "x": 14, + "a": 7 + }, + "" + ], + [ + { + "y": -0.7549999999999999, + "x": 0.5, + "c": "#b56b6b", + "a": 4 + }, + ">\n<\nCode Layer\n\\", + { + "c": "#cccccc" + }, + "`\n^\n\n~", + { + "x": 14.5 + }, + "!\n¨\n\n]", + { + "c": "#b56b6b" + }, + "\n\nCode Layer" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1, + "c": "#748adb" + }, + "Apps\nAlt", + { + "c": "#cccccc", + "a": 6 + }, + "Win / Cmd" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Back Space", + "Home" + ], + [ + { + "x": 2 + }, + "End" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "Alt", + { + "c": "#748adb", + "a": 4 + }, + "Esc\nCtrl" + ], + [ + { + "x": -3, + "c": "#cccccc", + "a": 6 + }, + "Pg Up", + { + "h": 2 + }, + "Tab", + { + "h": 2 + }, + "Enter" + ], + [ + { + "x": -3 + }, + "Pg Dn" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.png new file mode 100644 index 0000000000000000000000000000000000000000..aff6af85138060acef61781dc889917885f677ab GIT binary patch literal 75633 zcmb?@2{hGf`!)^cVQ1W#B}poFWejD^P{~jvY_^gR$ru}Dp2vh_)?{c?5n`K3i6~=c zLgslMzWc}Nyyt!Y!?(V*zO$@VC;ayFdxrbI?(4elC*aEE3$#>hR3s!Mw5lqKS|lX< zFeD_TuPDgiU$8gaQ%Fd7NK_T&bex|}Bv=~gTwULKAo*INk7plM+N-0f$*-SN(mhbq ztkep4E6tbK7(j0SP4SHS8Tvkq!j~-6rAwDjNqm;WGaM6*@}u}f#c)6q6}xS>iCwW{ z_?1Jhywqvg+uJzef~ohn%g$SNBRF8*eekJfWMXEX{Lgwt*_&Ezx|A?d{ zto!zsTW&A69BSX6FGbp^o{}JV%6)41FQ}rTA{HK}KC!I$ubCT(wA(2{apI)3QTq2z0sxenvka{Z!qre~n=yrr0DI5~Wlq73rzx;jdi z5~GEhR-NCAE)tTGnnfBrk9Yd^G=yhpFFak7o-Kszz<~pKVzKihjeN4QT(=t&Z>i1B z&N_(A`1@0spJB`Oi{5#9MbmRAZuykjr;V6$is_ z8Tr0PmkQ!7i92&DLYwO}!?ZziVr0Wwzwx zmq>ZRuJ%s#bs)@6~UU&<`rl%ny;xJ8SruDHHw7B)NbOKd&+j#%rpx2%6 zFGxkQd26bxc~75a^zreLxYtKA|L>2O;lRyEVD~jK!GP;MuVwnYe0e*;M~IJa@0~k$ zE(-GTr8O*%|Nb2?GjlJBEj1~L`=n8^|GV3bxaM@#i{gq#BSFZF`mgmn(DK~;dd<)< zq@qH89~oI{QIY;a9$R(?MXK!;f4SKG^z`(KN=hyIdW?*W5zn3ltH+$gJcn6-cGl@l zt2{d=CoTL$lst{NxOi8g9r=w9)=GMM=34uKvW6dp@x+&j(k6CfZvkmBC-S*$Uefzyd z3)RV!Cv)Du^^A&Q%(v-nuu>Ru*jT+Wi*z(K9~Bf791*Vy4yFm_l3^qBA|(*lj@`e1UvarL*7xY*KL@=jRhNJF zXLv$F$Y5<)&{P17wn+k+?>z)oZHBS&Zz&3TM7(51Mh2V$&8t_deS}%~7sPJD_MxDp zj7T5*$b66hBkbF2WXYsKgn0-TUb^`?+my0mXW8};_FwZC=H}*ZZ*MOvFDK*)Rb zIlqB{L3m7zz#VLu!*maFi2P+W zXkz^@Aprq$Zu|_X%fjfRM%ne?RgKukj~^qamR-#1)uO0YBy24R46wZm7L`!@xM%d! zoEQ0*McIQQ(}X?EsgT7h|FI`NI@%}h^zBrq>7FaEbO^Yrw-xnE!Mh$9alk{mZE2)}{dCpSY%5DnDD%D0KZp{Jms@h&NmDK06o z9dAAHqK%~3dg;<^o@Lv~s+yX>sSEyp5B2dLb}lYDR#sLHiF+jCHa%67KR+Pb+IFxe zMZu45Ww8w#CzvCTkB*5^fP-u-V%$^wU}fp2jgk%9@XTVz?Ie?l_S~b#k5?`H{vHt* zM+uL5;r6=4Lh-_dbMpo+E>Z&n1K}_m?BdoU&$F_QSHUTkk=cw}=45B5&eQ*z{b!9b zg;Ol^;dLt@{w`1V)(%t$<(hqEgTddY$4vE>hM83QVrE}o=Ot343ho@ml>K5-Qfzz4 zXwI9M@Y+jpO3TRfPfdl&xGp8byz7;^%ScO0&&>2I9HGj3#y-G`#Xo9FyTGnMle>AQ zT324)bF}T~YmEmF9;m3PMJD_;4t{a02H`FYTEuzASVvda6nWo;?;1+W%9i;>Zj(JF z?EU@ysjdgcf_R?p@j-iEM`;;PcNKb_G%V`t%(Gls9Z6~`w7Y%t_U*x*64%krJRwg{ z&ns82?uVIy-F8~j_*WMyC@83Zc-U9Yi_B#7TguA%bg9y^;(T??pFucbuU@^1K6R6# zxVX4)WJKVzuKOM0#gDQ-qlI)8mk<45l{@33?1L^WEQFKw2sY$vQXg;cA1WK@ z_VcT3ZDmn=&hYbt%}537&UW58Jp4}Bn3IO`1f!C^(NTZovCp4BmvCEqKjfBs)NW<0 z`8hSCT+|h8SpQv(svu#OnjG1SbeK>s87d(mp?&-I8Gm_l!ap$ZP)iDofrp2O!o2$(D}8B^rGjz7`q|D6siJAZwg!5MZm!bKGbFH?M|(=nT6YzcD?W;L zRXBsDsUbw&ym>SEYUVZM5U~>VqTpQbD<>~*Ju10=?AS5Sv^2gqh97-{ScNN^nhrn& zuKpCk$3Gc#RkWq8`=e9;=;+ZRdTl%@ek#Curn&+x=B>)B4B_Ol8h)eOU? zrlxy#b_&+kCv{C%(qWuSmGtMTBKg&gMbIJ-=5Ah0kYa{;Kn|LpA32w_^FxTyd?F&@ zaeIVDd<*ca_u*Ki)revY3=L=J8_%hCvSuO?Vs}b!V=)-a%iw&&e#dM2vN+Nd0O$L?bvK)UMxvse94X5Q z{e9%*L06F4QW8(!)%?PXL zq@*we#=LkTds^A0giGzY)?e>_1YMtZM#Tcyt(vK!hJ&mc9^_^LI~D2GFAAR5-%BmIfAI#D+0Is z3aM#rXmww?m(sH7W$anUiHG{x${!skbBxRP06Inj;SZsMi~M=iu5(2K@awHLS16A7 zpdAtv0hU4VW7l=N}SMT@}D+yEt~WNv1CE<)`kLAJ)0YKFAyxC+e}m%<@--%iEe?)_j!RtNY-A zr0mv;Db2xC`y3q|bMo@4ljXb=+4nvrthvEapoeX^vv2@*f;rFT*R-i#%hG$4o_<($ z9d{LS*}iQ^aNa8}D>J-C?yI+?@hhm?4bRFyM++$}A8t!LCliKutr&*tGJHawH`N>1j1ZwqB6q zUH-ylrny^XaClMd>_Y$ZJP{rJL6lNO5zo7g9i`(m&XtN8gI`v zmAF6TKPsD8i-)pcVe%(yYiq0XVvBA>V&cgn;cKwn%;+%)D)Dqz1}Emwa=Q_<^Wj+0c;YCe>VM?`G7 z&7TU--O5;+?hRX-{E1+-uLFS9Wz9p`q9Y^s zr6mog6jK`ki=?tsegxRj#oJr!sjd%<=C1;{U!5OmTd~jKs50=EJJtB88$#ugz>Gq- z+*dEwJ~uS@Mn^M4KKJf*U#I0$4ldhRo#&qpx*99VQlpt!^YWyjjx4>hYI7-wzsK9&0zo|azkUhukPtSlq@}+oy|3^wUB<20ildoKWzz1Rzs4e{ql0bgL$)eD^Od}KTTU=VPZ6o&6_V!f(Sgz>nTl^TDwv?quaBBH{h9*6?Y?fviBy~~%MeoQC{?Hy85ju5> zfy!r(aPiC@4i1hhIyzNQKHQ>1fKZn&8c^EGXj+)!a%Cr)>XCe~St3)4X@O}i-LRJA zv7E(qDaQ#k%suR$hd?O=v179W@Ntc8x6=IEzRRfn zG}N(B?4_=o-2G>8ZJDy%-r58jLPVAbPzc^1fCvxZ2v~x~HaN{*x<(JG3l1Xd0MOL( z=&4h4g-At54}%B{40L&ML}t|?l1s)VIXU_K{k#~6==-q{9N*Zo`mZlfr``JUB-LXr zZaC8#JKmaI8Nqh}z^C8pKSTUC4&vo!5|7~ErCy2`LyK9VA$&t9hRibBp34Vo{K(UD z&%XWpP0AjUMlLU=zrmK$MXT`_2|%P&#jUzXebOtkzw>TqSWh#Te0_bNik2lOYJDI; ztdo1KBbx>xNv*RDjyc8IvuB^3^Wbut>MDPG>x;-1En4E1s8ZI?Do>b=c1hcpHThHoF8Y`Q)=X*3f7co4VNEEh(b_8yC-LZAkq z=##6fP(*sZdv}_Fk#QEzp~=!jhhC2Hqain_dxHx#Ok&3+9)CPqWqhTWt9^K-sv_zG z*9l?aT593qhk()58*~i}IJ9+D-SuzXy5%1hCjP}1@UUa?e8X8L+`XysIv&%S;Ddh$ zOJ*jfn@c2KKAl3*iKiUKbRY<*Hpg(ZT8+062nY0sMn)>j%jN8C?A=wr>?FIL-JLG& zduh>Od8(VuX;Q*tOS;Hm{K#7NP4+=`LK~lq3@3baYU7vh5Ihv1)LU?Iiwdipn6O%y z=wR&V=wQNqD$}*K#n5p`7`KiWLeYlW_|74k0g%m)j_f zHg&5r`RceZs<|-MLJdzidg4U2FD*L+Tg7cP$^>ll9FmrH&%a<;N+JHLuI?b9p?i*w zW&`>1A+w7Gf;F|ZgA*O^E(*%Z5*y6SKjR^Sm_XQtn&k`?HML+B57un?uiE`nTUuUO zCV?1;bzfDo*9ckUj}iR|XSFHgs?aN)W5;jg(?CoD>0UA(K0csV;8$-^CJ+D!;O2(v09i2M!U-cgsj3eF5_`3@v_$YL_nM&gjCp)( z45_FGAv}Hh@YYQn4FFS)vck8SG_JjA_VjqP)cI5 zTVt7oZ>1g{stqyE8iXZ-?pzjsZ)+clIp%)YMe_yW3%hN7PR`C`_fI zyyRwGjKy2p0B44LxZtX#wLwgL+!8w&{(%r>|GRm=s;X+ujoRFt^HHYVz}wO9d?qc2 z1PUqkvTuCIvFbQQ!!8y~jRimldxNE0UE59d`iuIu*}>ZWi3u7Y(6VlPxV%6;5V_CT8fJM;Qv0%^ABwx=mZILF5@R)HU~)zTsS-D8p`TZ9OwT4~6WT!)~f>yF+>N-wowlMa+{Y zWKdk%jWl5RcZ*D^-VZ)L`*Ap2-_TH%(pv)Xu@E5>F4s=tDJ4sRLZyJ0eJ1P121u(G zDoJ264?pVsfYH`E&}hjnxc<)scI6H20TLkkXZhT; z9xJCky8O~|#^A|Y??i0aw#Dpjk#Ehv9yu{voFDOa2eUWwS3zDsCxWY@fM62LeU1wvDWhAmUL2D)-2|Km z=LZk^*A~Z9T`jVN1;^{6jvhHe*3;9IDxP2S`RC7gwt;QVTB!s&DBTL~_3xPimI+u7 zB$h==m!^M1K`7fPQz&PzUb{vHr8dV|M;Z`d^a}6ulhJb>SH)_vWOtAVh%Cu@`B=$P?2hW_>LRdp_7m*~ z$mzKd20fDA)a~u2yLWTW3*q#R?oLL5i3@|vPCWR_nX?L)dY1B$5^m0h< zcD|2L^iR<_b^xkL7tJ#<3obIi@qAzn7;qqtNtGgrcO=Op(4DU3d2zAyVSfIWwVv@z zcCA0z!FjQIoDFtO^A!cle1T;}n1h*_84=mbmoNLq$H$M3=xHyz2nq@Ue^oLn`&3)Q z)$CLi1ud-)ln;CM?$y-NI<%IoI$7qf)zHuoNrAz;xuvvNCw*7x(r6^}&AbpKSX*1$PoF(+Z&$~eC>^f;0aL>fG0Xp`q~B?Dy^L zOiWBPE$vhxP(jlF{Q0wDQp`)(fxe)Hv~(~%NFo#&Ijzp!N>5KePiQ;+{PANZ10ue# zVY&O;1&`+wNc9FMXm%`UMD(GNhNajO{+nNyh7tkZ%gP%YC(j~Bj)}@=)Z_5TqEJ~@ za0;rP3pWA8D?}zAKzkLBfwJKRreBHs=(Qt0ZK%B@2;KNxD*y_VL&uJ(MLw0ZL)g5_ z2~t<5G2E=IwKq@Wv);ZvRaIO29dFCiQ(Afv<-Gs}{_GfacpI|BRw|?TmSxposI|y} zr+mC2fKj3GMFS)54bc{1>fyLTtyA96K=Zl4ke^L@SZr?2OU|WQz1DXU# zcTsBiI`dan?g2O6OMgCO9CQCVqH@uSnh_Cb_)>#=a1f>i$%isnEm^wjQ1VH~SmF$d z>?sY4?90_{)0dyd5}#C;fTm~78^Ew`Tjr^<>Tn+^2Wxn0BW3;|LjKCs;~1& zUf*)#GNAnXM@GnR+_(YIIZ*b>*XK|L0#6?|S!TvxW&VkkB>3QIvcZ~=%z0Ngt#BiP zUsxFZi%an}ZVHdT1F$F-PN(z?mjy=9$c=PPfA>WliAVtrXSM>AoYQ9YWnSd;u|15c zs}eVXAToY}Qh52jf2<`FkkV0M;R{!;pn$pswlP4~ZLKffhIqg&=czjIie8sro?b0; zzfW^rM}Y`43?%XRaRVSyRMgc?)!htC(>a38E?y^Pj9g4QZ2!&~eK>1N5u9 zKjfT8u;+LoL4%5D-b<8eePb9D8;b_$#RKK)@87?>gy5Sa4GEd^RoTR%SnSz|IkU`ycheT@5c+jo(@PK4a&nXd0v+f77!3Paf0?|{#`HF z7HZEce!SL>c>461%b}x=W9{D_Z7!hSroUK$4T_U;D0W%2NNfJlDIW~FU(+VVUH{?+ zU8sjRI5`inv8{EndNtnQ<>j4OT0*L%4}UZ}0;1W?u;D)4C2|D;;rL~j$`!5RX%S8= z#a_n_zIycvRTAFHZ|6n`i9soh&F?3HAo9)p3>=U$P@?$-fuIEiduVu=ZCvK#Q(jSPJTBmHDu0zb(x#J!4C1%;iMs zfM?G*(%jc4#p{5yqxC`J-DpcDE21GzPYbVM%PvO$Eh%o+WB0l)j`<{Ze>AOlr5U?D z^)a&9TQlw3JJ;pg_`mcAE>|k}V1$tKL8sS1;QGf$KG>29XrKNlNQ5N-IOR>tF6QrU zbmpplc7DzB+k|J&a?EOIp2eNjZKis9%I8gh9O_xQWynC@%b6lF&@5$ubhD@jN-iCh z_9k;MlC5=6Xm(D__l3a$DG?FW_ZOE=%M$HI==Afg0)UD9vGNY0ad~qy1E>@iS@lw! z1O$bJV{`_cJ7eCxvkSRVlc95LWo<1rIr*U~cF|B(7AOWtW#7gZFA9Rr2zcSmqRhDm zJ{zwGYg&r>WJPb&;r8sEove?$D0oB!^>V!Z@I_AX(5cJvD30B6QW)-iZ`CmuccYqH z%ANvfGvoWT=Xrfefq?P>Tm@(V#AInIar-pw(cXU}BThP9Bhk= zR2ULOmqAGJ1(%Xh<>x#lMqxlZm;l9U5VEV_^?Gb`?iQaABlX^!AGnsSzaQ8Mz(!@p zB7N|_7w+8?IlcdyHFtmJi7G&d@*zo+?YVn_5|4OH@b=yZWm|x(fCDT%JycAKYZ;RS zAME9L-yvqXf_%YXRel0Rh3@y4ZEHO~?grsJ6iY}(?9%qmB6X(4=;>&?{Tdo7>+EEM zsSUQcaHx?n#y}1TD{waK15F7iMqV+oCp&_fxrj77jtPp!3U5jZYU-%>!YnP} zgie+Yzn2#exG{bUr_+c7Uy0m3I#9Vs5)W0e`krwynY z^-GJ)3=EzRA3oIgaDvzmuOBzRi0)ZZEMCEx(2Q3Op$12r(!jJK4`Dsus>AcutD{<+ zouDY}*|W#^)-4}kaBWZf=B>iqg>p!GLInhXhKf<(vUj=hc`Yr5wdLtB_`kC6-=kh5 zN+V1h6^6Jv%szP6l#zjrkR=iYn_3W*}*)n@bpe*FtdP-1!DDmQD2QU7!tyR zLYYSf{FN-Q@#L_Iup7@m*W!f`By=syIHT-yAuk(E9+uG*I8ME{Hv`f^B}RCG@MCaL z5?upP*wE0>#w=1We+7GZM`pl6>tK;Q4@cY`JTYvgA3)!L!PP)v6t{C`1hBY}oinqG zpDj1Tw6(Rt4|8v-OR_`l<#*l_C$d{-n*fC^E=CWbsb+7f4c>Eb@B#10+js9m&dr00 z3V*+xB>Pq8QM4Us$QJY%fOK>qg4eCFN!gocJ4I?9WlA-A6$1JZPdXLof+`xf!RNLlmggVfE~)9 zA2&BQL)k(O6WL__PCrT5XjxHfp&D3hh~x^dbqqd1t{Xs9#3Lp{b7F( zz_aU@n0PG_$@e&x$N^~d5tK77%Tpm>h`D%1V|WgE$4poxpq9$Y9_>xhdff+J29Q*O z-sZC)fjxrBEmv$uzn$A1xHl_gwwhK@yv$hPzgqCAa{uk8l`k(#Xo}>Y<}(Alv1$uOT4`u>t@$ z(+74t#6^Hu0T!!MKgHnPAjH9hqAvNhv4Log=!f%=7Q8`GV`61ZOHL+%$wiKr`^M}A z)%8BRbPZlgF!4&Z)VLrgdGan z|IbMJiS@=I?4lnU(7mX8>jxVwhb&&NnTY70?wf1nJw05&7FU3p#k+?8m%RH4?Y^}- zf<}&WsVkz=K{Vn24XWMljPp>)XCQ8^DZ!y2*g+<|HQ<6cz{*MvHWd(k)LL~lH4lLD zGz0mnAA(!#S*Mf0KM4N$2(R+JXAd9V2g+;S)>KuMBGhhb|J&e!>d(*5&&khM29hcV zS52k5zP2&n2*}a~j|ayM%tl&9hT4LpsmUKrCmhrD!G;?wU>2L*K#((>c%8OKov0UX z;5J(z_ZQD84H9|vlTW&vyft-E0ufPBUNEzW&M-#=cZ12@yR=XUr0E=s&LV0-#`Lln zd*n9RDGHx92$F{A)&w|1K7IQ15JU}U=Yqp-xyO)Ad_`L!_)&LJYk|vhl$w5Cb5_vS zU=T}1iPuvkAd*l}W775hOdVlOA^0UBfH(i?7$QH#VoZH!ZLeNs2GigbL&FnA;w*nJ zJ7*;b{0Og58^(PBVxi+?rw_u&S+>1_N+CQ;7(xKZ>lPONwhuO?(*4XMxKe#O8(1Q~ zzhL9u=E#qzqusMBF%J~J3>VHEI=wYZi%JNq)~NQ&i0$18%- z=#G!9C$lKUWLcM%evYoBa!L`+{l0E(!Cwu%8f8l4B&1zgy3W2bvAi3SySdiCG1dZ_ zqIWPtXLM=rY}+|145IgJZ@EILhkz&8WfvSB^Zz01HvhmBJ56)Bul*L7!p};>4_3@XnF5+!py4V#t~uGPUy=iM4*3gz@B zPBW-|xppr{^I*#h2g||Qyg!`gpZOe8x5k~S0_TdTk*)q~9fUlFmG`7EEWE#eb8V4v zp%XUL01)1(8lDDpR&$F4;K&p|mSv#8I>rlr=HVbd?4?zq5tz=9#^+GKKRKb__cA0U zR@9zij~@+2mR0g@#-Hhw-#qeTW%HchUB!w(9s}AmLKMo|V0U$ghJt_z1Tz9ZJ%$}O zy66JoZ}3B}dnM?dP?_Fao%=;b3laFur?yf^*(w?u7p`BA8=c<1gA4?yJg{yeV+rZz zsXF1Y;5M)D=yb%37M%R{*39p2_BJt}{`md#{mEMWKlf87(;Lxhv{~2uHBBl;B~(ip zV*XE={TEOtSc087-Of5OEV$YIx_f2V2*n_Ifd%HQ_a=V-Qb)O2*drKP2_ zvyhq*Gg$l2pQd1UMkr}x1aJRXlmfFYh|`Fq0%*a37@DUVG56>aG4XC77@H)((yk4; zgYfR)X9uG5Ov_`TZ5t3+3*OtEXTN0`Jo@Vqb@{f@>baX;H_UIF?u~JzYhUY8ERd8G zUFrI+yVZNvP0E1tCu|w2#5dij4|vIcY)r}3RMGhN!;nlBA}KK-j(y9%A&#aY1HV-{ zfT>=$Wlrl}VhG6QxS>xGB4`U=^kPYa@yc=(nzkhL`R+JZ!Z}8Q$gwZ1P~OLEtEsAv z>)*t0EN-mM+;_M;BdPrd2_O}N078$A{Pl6xJ;jvIwGd+)DEh@UFHeCTf*he1u3l}S zz>K*jl+W1sH+>rica0!-`%n;loh`ioqO=%=-|a?EFEyW`mdtSGBGR<=V((;(DH}c% z36qK5U^U)Z3PJVIc_rcyZ=E+djrM%7F+z*b6BMA+$aCLhh3UtiY%wa_XFEb}OKNd!NMO zBQ=n+F{U*%gLXjpLN=FkaBv7gr4ic>(ro+w*C~@1r{FG`r!$&rKG>RlqN%QjD--V) zqT4U7^qW_|T~9E+m^20D#j^rg|KDH9Od+_|NuUlahA?LU{br#1fgC7!aIhf+8Q5?G zgMxD1H(j8hFE@Vm;8O6K(QTwifz|Bp`)fu+W|_IU!_GQQ`ET`%H$$Nt;_dD2;@09+ z&Mz3aygIPB!SGg2@Ao>{5667}XJX7nS2J^LYV0NQ?*?5drM&nDzao`Q+pdiCtj$Vm z5z&VG3w_W~qrn$=S&fX0AXtbR%|o$V2?Z#u0$LU?0abyCh_tIyWDyJvJ=5bljd%j! z1S}GFcUCtV`}+0kzW_OC#&KEz%z?-QLQVgrFjx>l>}ZOQEo3@y01SzhllWP@yXbp4 z=i=mT$8t|L>V@p-OWrSBodyRr1TM+9IZh^P9mBkJ5;oAApEe}%tPS<)Y-O>yaU*NN zEv<&Ee`ezPz3F7%>^#w$rE$OcOkHh2bo)q5czv06s<+zRckKGtJ9?w%VnCR5w!-09=PG0P&WKPWsFWC3t;yaZcRhT7-{<~bhLPAISSWq;E3Cz*E z$Xe2!{s0M>paFT1D=I4oZY8p10xq>5{YDCUZT2##ZO-RP**bZ=*H+7ae$DQwUK`6L zqI{DDBDCJKaxzZ)Q2qsiWurDu<9D z=-Bu|ls&s+$kAP9ava3<8UoGYM2EJ$Mx!?CNrUqMRDoa>GDq+zSsJ-mP^6^-4HcE= ze=qbMsytQOtvXD@?t6Jjn2oUEarE91sg9qf0b%qIz!bXXF7%3@W0GLJqkrPa!ZdwS zPe};(*L+LUkTkoIfr_Wb&L0a?vZI-ipPd`KnxmU1_ao~(V8C4Cs`1gEh1y>6dm-S- zbM1n5-15XoE*S|Z8q9UG8!nxQuY|Zhb#?=eHdtbryT8x>Knj@2$rH|hk3XX^M(eer zl~vZLQj@`M9o=PgIIwLsV|+vH;>9X(pa`x>>coJfA^h=UopD!j{;C2t7T-LZk^m#l zv+|I+5+){d?H|*-ccLxuUze79{nXErzt_yK@i*csKy6G%Z?_dovRux;+kf*X3w!U9 zSJd4bgLbYjHT*J7U5}o)QT{!Tec*}kOJrk`R4CBAZb8^WAc-McE6~F3BnmJL2#Ja^ zL#T3)9frbEMe#n(|4*fm-`=Y%^^c)-wo@CJ_HR!wv01=OF3Nx%w=qzjCO{?h9}f7F zF1A(~scC6QhXORxKo8fCP6H(RB_@V~h}Jan3xPC$HJ0^&QrTum#2@?*@_62DCy0$B zt2ZeqO#m&bCf_>?dEr#l;B`%Z-UD@*Dw2n37s7yZ!hxX{6qCqwvxaAonFD~WXmPEt zt**v&&~Rsh9}nQj87v24@8!`$a+0M6=};b7vM4({gA{1XjG{-XR8&<{P=l{ciM#-I zXUfd3%G2e8{Ttzyot;&*^s`w&t25x3KZC`qnC}!E0DaQ44EfexJVe46>kgCq*>vdb z&T}Kb;3;V_WHe}F{Ki-D-Yfo^UocqioeJY!hVRa!kL$mufVMl}f@c;M9zXtJA$t7y zaTEhXMKwlazS<9&bWaCFXP=s0~c-729w`dmE<0w1%*g z3;fJC@6KRebC?Q#$Blnz8DG&So_x-;CKyAs-Wn&E2AX|KtKR(2G&9)wLgd-?e5So0 z9jb9j5u+)NV7=kFiEylKiF-a-B5o0}sxSCBQ-Us-W}$`xsxQT+m$>(ty4DW8v;y0wQG1b)7Q?4An zVqjpk(E$`H;w%OhviWJqqt(c@M3oF;;>$!j4BM{59xCWEfTqE^+tHbbzy~Cplt$MY zoz;`tEB?ZuaUnf|V?yBihsK5i``--O8I8L3_Gdr=0q!4s2mq3HOn<<9LW5WVe)X;S z{xqWRr*ZtHMCpS-GJGY9;Ekv#D9S2)sN;*}3g-I#{OPGG@-CTt>dGN~=SN%3?zS$y z<}}_~UX;gw(#M-e)?5-Y5K_kdso1tcxn&LLpWhPN;K)C48!U|Rt=SRGMURLe+U)y) zEONy-TQY{X#$$UOYd`jb5(Ljw>$#xl7BMDH4L0B$BT}2M(}Mu*b~nePnE)g50&zt3qcNgv}qZAj3l+nW1hizi3vi z?!d3RG?z+(YN6?JriR_7416O?OH0n<*&pr=*3i~5x35iIj*O2Ff?+B^QFv~9H7wmt zQbIy{UiWmgTJ;3J#fg6v)cN$YI)!|Hya4}hsA*lc`rNI`mbsmU4SRL{(LJl5Ea!ZE zwGc_FZWlDkw~}b6rCb3&m&T7Ro6x*VcR%QL=bDncEKLMJCa+ruQl7~z)Ek@-8ddSa znBBG}$drIaQrRD;a`iICeZZXg)zbwZ^^>#@lUE&3JEVburimf(vyLY*ZD z0@)>^)@yIDdqNHPE~N4?ice6Gvbwrjv?@awg6Zh!=T{PyizWENh4BgF@L z&!H{y+&t0L)HLNUEw zT#E|h+|4*UtRB3x0A#ynmD(^rBLZvpE2i|eag4=}qtJvFl8M20LZ_T7w8SEg{Etoq z<-u4H6VF%drfU?~ZX%Gs;SmwMMKLed)KpZAakE$d07C*{WK(l;gdaJvh`|+TFYPw5 zVsG?L#~z}gv0`zM@M1Y|&@Ox)8uP%V19O;8wjgn5=q{o+rk7pQ)lJh#l0`a>ppFbg z9KAt8J1t-gxEYausWMQ#ROP^%;Ei679cA@~4$98lk`(gk$^@WeMFE&WMnJ_rm{vr?Pt zaUbzRBeFf>W81SQ=hhb%$Y&8_-(bd3C=>}W=Fg-Y#^Nx~P$HyuVvXg^jZak6kiU38 zq!h(d3g&=C3h8B;odt9J%;6`wy-fxF`3-=jeqJ%@&d&{y^KkNwAJn!|y@!$I?B z*-9+vmTsz|ReiP^3+aT}>H3O^>YusJU&Yg<&bZDx27BCYJ#E^Kf>u0u_^wsWIh*|O zYe%IE7b?GgrG+rPE$*9rVBzcitc%o<@1Jn5lUQ4KN5sbqy(&|_aKRK>FdCT(fIZ|p zbtxY3@XtRpj{-hTAel9~aMq>o%Eas^#B5K2Du|?Z$X{?9-=IyB6EJYhdgI zS5aPQ*p3%a7{pDC>DOR=jfeCN!qo%bN_tEm9}1qhtmpk}?H2TUAG9G ze9sw1G(G}B_(fyKm2qXarkc#y(kb$K+QQ>EzG9d6viKPi9Psc>5-b)g=T`eKopbN( z|5fLNRn)Ux>)7iNXHEHp|71;T{EeJ<#%HxVUF@i3RrEYza@>~EWmxw;*AgtS1z+Jo z=%++HdRA6eBIe(Cz>WO0V|O8E*l`nGg^b_^t^}KBDCi^`GnMo+%gZ}rn5JfVx-geG z#cu1oS_7{#VmJ*(lfof^g2CVYr?cG~QoYB8^1(0jJht7<+-8dev|w~BF8y(|YZc#; zL_9X>+fl3HvQm17Zrt_XV5e@~eyGGwkY&GV<+6}Xk2JadaA2setv$Uw%b%;Gr{|B* zT-2I(e|LMHp3gb$ah5K|ttQ=Z*rvAP-MppS^nDu+=-p|V%FM|@LHCOi7%M`0Z-6Nd zTH*SjUcb0DVEacm9OA&`9GiodaS)XA+&&vObe^%2bteB9-(-~G@XY%S z{Z|H@O8;Tprgwse#hX!qTMAD-EKd5Mht%z%9~v~I+0Q}*|EWrye?%Z3G&JALsZ(<+cK6o)3w7bqoNdoR8pZ>Cd=X4u=~@++B4y%t(T#T6r^FI3&Fjp89}cN{B4l!pyNhvaeB;||CxQA7Zhx+)Ts3Vc zB&0vom?C>jC^C~!#L}s?)1^+o%S^7~)bB6y-_&@2#GScl;Wtfm3Dwg8qxRL_yY&C1m#9l1Bw0E#{K8d(jSjxU4h%RAf>HS^UQgXu*CTVK) z6+InXCNW~h+R8_>?q<(kpOuZ$Xs^D&T4w71an^PuM#|*U#xX0fvs>PnQlv(nP1hV0d z>&KJi*%4f@@7ynl89DdwznHjuPTOAWd1Fe) zH?M?+MC>1Ja+UBwYlTb72j@|S5tkQNa^GFJaD3e?w@zS!Sb8YgDy^#L#>d>nF_w0z z&Vl)lKkH}(Km!YQZ(EJvLM;lwdg9i zrgp6F!Q89Jtf?grTq0FoB%;?#oa#UK#XRfnh*G%9?yc$Sqad_{OopwS$&wBq?MPXR8%3Db(jh}k-7JlI`u9+WFuICDce=_+J zEh14U)w=c(=6|4@c5Afx{enCZx>D3YNvwGUHhdid<7a)}opef*)iO{p@0hjT`v&2=Z8|Z9Dv$l4R@jCtvLg zPJ?!7o9~_N29yU)*OyMV=bUBT6rFA<2(5Wh;sK{?zv!a3jQ#C%RvcD2N35A0hplQG zo=sAO8dBb3=ci+u#H@NJu*p(-y)5=k?2*Y?TW79e%vYe#n-x9HXJ)*%1Wk3WRE}UO z`Juv(EYWe5P=ukOt4|VMOYJdOyT65h)iQR(DvrX_m=dv{%lP1PVUJpvYn(ZaQw|y5 zqa4jul|RnSHerv7#g6I*K@vBXhoc+IctTk_+rcY~8q z53&k{G}5vY*gl4Co-60Axz~FOEou@nJ0i#aU9c+L^QlV(S%QJ@(#c87XUUq&bg71{ zY*npf;cB;Y+H{^eCi?V zeQx?~k(qVvFcJsvFNh+ydvJ#L&Ar#Fb@?&M~rAGTJS8|N? zulSmoi_Cy4O)L;QTt=oOxw4^{mB#C zqYT_AR|DO?1>71P?IC?~?a8R<56&ANTPkomh7(@_(;C${l{})(XWY@rX6Q;&vC*g3 z{=unyK?&>62K#qud&auV+J35)`$=~8ws2Yd&0;d&Z>T}rE2g)nY2ef$(Pd&HL9oi$ zaJX3DZQ;;x3#SnAMo)S#_>CZ=-e36R9lz&fSGnQT8=cY*CbH(TKlC4Sk#&{6a^D= zhQYD9eeC2(I^=S$(&Zu@=%`s)alS65$mJIOpO;WQw*&-pdzZhwKM&ngjw6Vp+6T=* zhd~_eU{2sWca9sR^ijB=2i&Uc4tuWnm-`;ATG53&RiJa>sE`oj=H|I<-~piiRv@%} zdCNOD`d1smtHmAe;XnBX4ixIVlK?M8C}N4|)E*iJOTExj83y-ZfOcF7k}LFuoL5p(3PBA5MFV}B%4%v< z&=Y~N>5*>l=sYu5LW|A&j{^Qc*}RElUyErBNa z#J7xeo~KjGNDkdpi#?#)qptdzC)UNoW5yIbv9XU#mU=8(*QKZDtIjvL-_Bmlo_4)G zy=Vf(43vQ^hB+)&xc7Ghq1XiA*Uw~UXXjw;`y_`q@|F5w2Jo9_R!&1R(#=x`;ng$^ z4ZjM)bjTlxg5Gw=f+@HH>DHyr! z(^6&5P`;5Z?zVepFg0HlOA3J@x6mA zQVYa4ye-@W69laBVks~MfpB5p0NgX?{QG$fa&C?r7U^uR!@Va+e-cPi2$SxyExWZc zNDuFWG*6Ay>awx3o4`#d(B|&+dlU8^nTLnR;n%PduQhWIQ*6D>`sHFZNH6; z4P2U8yfOF1f{_=@zi@TJbPfsljcFg9e+aiCAnpRNW5DptEiB~07moBbLYIIk*ymP2 zzl3|!I{ImlivvIXnmbwIVP$nZD?1zRse1JyBqXHag4%J1@<=x0j-Ikn-}cSf)S`md zL7=D8gtMi+Iyn_FY;`k)^|j~$QH(Qe#B+?mCz?Rhfy$*z)llAHAfI)WxUzyDk=tz{ zqEqqzF!t4PRd(IBDiSIn2*RdQM3mS_D5>vrKtiRYV@pU&qoRbQ zG$Of4Ny$4OeZTK~=lssSzx&s#$P3S2&suBFIp!E+LZ7X%HIlCH=nk}+psKgu-FWaN zQSc0WLwh`L8#v3svaiBprI(jeadUG+bAtbs&!IakDJuxbLEE(8la-Tm3S*Y8o2p>u=PRFvS@JI_1KARV*$(HQ785|Ggb@!#y)Z>2#;$tW;!G zh#8Ymwxc%@|17W#KuC&UwIbrS$_ymPM?jLKq@qIP^a-HnJKSHtgOvNQ!-Lgxnt??V zdP(E0F?1(r2|fG!`jABiqq0VT`O#2#_4f5mhA=&@2VSlH&yVB?wVj!40-Sb0w9S&C zeu+al!FOh6hNt!j)G~oAGQl@^;t}&KU~LBjhKVUANI>k>+&1ROaZ;MpE2GsRu=^Gm zc)baE)?zZEsdMPW!>TwrIX@oDL4W?{6!R3XD>?F-z`Yv9g0Sqc1~ZCu@fK6`*7E2X z*wbJyfDcV2e&n@+Jt0Eq1=yk)Y@mqYUtvdqcmbh{>eP9O0?B@xl>2UadO8|>8m@b6 z5FuJzD5O^xOFB(~R=;o+ZRowJ_2soB6HtO7e76F~T(y4)FVM()^E`+SfCd^l-;)LC zJRN3CL=jUwBtU)sJfv@L3JXc$(wL>hEi8bk0=TSXIM%>gKYjMBahKyh*V~MY`nI-^ z!L@g#fw3$9@$uHg3Ezm)xmsFw$p3wBi6{f(`}g1Ol9Tg1q|e~d!AOCi4dqZt5BOMe zngNf3y*;)Aw+w+2wis+>#lR9HRn=n(3JM>m9ZcK8dC{LWPhA{$R#R1ddR*P?dFK2N zPtqHXLd#vSjJ=7WiKyP@xpO&T4crs~MK=1f`sFr$I#)m$&xIT4)q4B(t@ITt%;@NiwKYEjo)stV^_Ou8 zkA7kPb?S8!c_d*En0gM;N*Y7)WW>#q_E!T`^jYF0!#{As!LpMD>YI3y3rQ8}kOA|J+#81p1 z8s@B#dXc8?h>N~?itL6Fe{=0k!2+ZDx6akcl=9W_JTq*RF*ZoLQrkM zqTa<|F6@82la~S(Q`C_;VPnxvoIz=JM=BA6HyJz}qlLB_mE?ZG< zvwyQQxw0S6kl||jC?(F)l#e(7B2O_RrAiAZ82E@~7FpCXqT<U`r7K#H?aQI;S;2 z7e!o`ll!eNipISC=Qda0rc`%4mRPbDu;eHtW0lr5)j%d1ZftwG`R9Q6qY9z09>JJY zj@GmnD<*FaRCUDJnzONEp|^IUoJ&%(c0T)*Pb@jN!O}YGrG+7|XpZJ*4`YGzfaU=J zx>^254-FDyAT~E$g7djBQa?Q893y5}W%?Yt3(6caAVY$5MzjU+^N;uV!9=dsUS@b@ zhs-l43~YHN{zlM@nPadvgu}BoDSfhgMazC=DT3wRmH0W%A*-hKlx}rvC$g+rWt1aE z6_(SBv?K%NUbnqE>k~ZCJDtGK7W(H|-;Lk5GF|n9#nRN&^ff^NVgvO9T8d*yQz>fGGgZ zLdvtw8WaI=d*dL?#8hQHO-AmGVK0vwvAnRjMej4b1d6?qOowaCyE>Zr#%@kn3q)7^Y6VA@~v$Zh9}>8Q=zC6Ape%|o_Eu-9>=vJ{|&W|D-Ujxf%_ zCUNx{$a0P~@gatdW1_sVpF}EY%E$lYC>=6Nbi5L=i6|gc8xZE8pY)337w6OaLhA9R zd~G40)4v!iTfs;a8`hyl_A z_3h_EI=4vcx7`(gxzV^>Y^B`nyd-?KY%ENzbLATPZlL#*$@Gh6+cA40Ucc37@CD{x!M zx>tkZ!#{d;?Imn(7LL}W_Om7%I!ud)tH*^_uC%Up$4>IwQ<0jN7e5r+I5}EN&Foek z0nc^c%#7_G|I0Cwm}n09q4cw4`_p>09IeTsj(m<=*KH#5y2LKIH&mQfekn!=YR%~b zgxu8{N8E%*21LUHY)S zYO;&MYuC6lpe+e2Ruk$?Ap-#r((ru3V?3)s<9OOW?IA2{8!NG4L*$|FBx|7M_Xm|YL@h+?3UUc3 ze;zr=JinC*RGHqFC{UWGRa7KsfOkfpdo8>auuk+4{G+ubl}MB#q97>AnMX%kTRSk&X9!)~ zYSc#i;FN!QJ2}-hNfwG86ZPgJe_)HzirZ+nD0Dyt-DH#%73)_gn~<~#k_;Ab4DJ-) zrU$iN<0q2tzP|IITG1PDFf?QYqznLj5jk%h;NNG!^cVDSr@$9N_YT~;_4POMjXt~@ zY>xORlT#ekQ2csaF(rh3c96Yawn{mocn3%Hs%HF5S|+{Ld_v(nHr(_3{Fk7 zbm~B605{l%Pb6ybg`jM=-!04q=FUQGPflGOBdF(rNoOvuyU4@F#>Nt(sA^<%$Ho-; zB2ol!NaD(~R>cYVoEV3`f1iXbJRgU4VtkftrmwEjJblf=BT-5ELw!krf{EdTTCMAR z@qJU(g)EjcanXy5zl$=azUC9EW0V(uzPtht1++3i#^2Q)r>$lId+Wi$kGo|!QwxiZ zV^9y`LqdWG8H z`6MbdEEpkb&3dazQH7ZF+c|2RJsF#dTi#hywC`9R?@Wdy0B;CK_XbPHnsds64ty9u z?bM{i!OpIu>~}*-s=-G`IwH;Uw6JAZCCQ(kMl6V~P_Qz6^fa!*_$E<>3?;NIT{z49Y_dp{73~JJTGe(TG}Wg6&GX#)(p3< z*ryj26@~1ZM7{bK7XVyt!I($KXk|20lPl8#xldP5zN_mGXAX=m&m^YTg3ormhL`9^eoN9pxX=2-+j<+z(;H0=FTVt06u z%@Q~Nknr!d<>1d|hMl6^%Vs^6cJQMj#sG?I14h~8?O*u+%@NnpWM9Wg5% zO<@Pj0o+jrL8fgX+}z;=y)SF=1SinM0R?C}gU9>gCvX``gZ35_TFIv1+YIW;Qp2lD zx253)5JEw7#r;ktEW*hX$Kj-0^STeMpr9MfH=y>)YHjaw-+}6t+>s-=@=NHekJy_9 zVNTAmsf)>UX?oWNP$$xriE}hhg9y2w#_k{m&Ff>SN&jlk?kJGgUMZ^>G1HTDxWF&Fj4in;J5zjw=eO%Rm3F4 zVN6E^gljri^fo2>Z6yQzwq&rpwPWnZU0SX6(Nkpw3F1bliyrvt;pMkC>yi{x(@^;K+o*CFAT_ zQ=y2&`=@6i&;RGMf*SzLfp~;m^Ehf=!)EX%@&`BUwf^QEurF29)BC(DLX+P9l)jqD zETC-oaDa_N{?5Nw<^!@8Ojj#NNqXU3_CQShsSzaoZ@U z_yfZ;i3bA1DJX-COG3MdKMvIN3$JBlWU%&A@?*FktlVnd*6gPQSgo{ zc9Ti0Or5;bKY;H8qEv>w{Y_>jKB71S3~0sKJ|-^vUqHbXUG1bW#ECkO=@QTm{9tGR zq8zrS2nhfAYl>a`h1q+*(!@|ojKL1^W`iXK!X6+y9Rvo~&EV|_ycnsR05I{AGB#!o zlx6{JV|4Or^4<(rKB>5G*XkYjmcCR%zU{ACv{ezOitP#{PIRjZL%DOx?uxkavtxTd z@|}x4K5VcL4L&@`<^|2c#Tgfmd{N6Ni zcYytA18j}Pn;6*G_v#G@x9MQP_qiEVhe$H)yzsm~NIoY8j13Uf(bkq5%xAiyO^WT?XtrKU zE^suZeP~3@Vj=7Ziqy9<9+Ed6x(w3m2NqO+t|ua7=9>3-?~iMk@@Z^!;cHCmWIGI~ z4n3OS5t6;s6^)hp(e^=&B0Y)D8v+FQwxc`G|p zFNjP!wH|_q#}N3PNoA(N?dFU%H{G}wr2@4!Zn_ZbU28)W!H=-QA)zj-vxm3)(?Rst z`Z{+URNTO^(vxI@ix21)VCiA{JrPxKhWXyCR(?2_g6ch*tO}l7`c!)@y&`w`C-@Fp zO5@l&`}pyvuC9H{H{P`7-Lv)Yskk)ik(8nU_s2<$hVZKbK)uL^6(@&6j(jF}X*nxm0W6PJ8R3ZR=lVLxH z?2?84jNWFxA|5F8UWrhoUv#tqNL7#5^@E|%N%@y3;-(4k6J{7g)c3&Y$zxQgU)}Ev(XjlOfc8P%cMesl}A{H?i8qJXQ4QobBR0OYtmJtjF1g?rEa$?qySH zqkRiPwC9Y+^$v~`44rK`H2aWir1a74#2yRVTI;uF9zva>oc6VM<1?g1ceY8I)(sCC zPAuO0q;DKpUV1HzylSTNHR1t+J>(3#FbBHA;EH4(ED?r@l8v`q_iZ%Ycm5zvZbYEJ@^2i%|BD#HCq9DsBZ8wy}q|t zLc12v{s&$J{1@!&)sB>56EE;LH_wGFvx~n(;uD;;z0G$laMrrc(?cO|4^x2p@s3fu z!GDv*J^SZwlyan@))bgt3alnPga4XDmde^;?G$~dS#!cnbgPDxBOqnXHS%1YI1X6= zqvYc+`WP;)yf8HQG{J-CT%tVP$I%KV9H)VRiNIrE=i&?55CRbX1N&N0WMQ%7u(J?y z6!>rd!F)ZhyZ<@~3NXuu59L9wi~wqYzd7Cfj|HFy4=jlAQb5QAwhiLWl84;}Ex0j? z0CAQCY_hLteYAOki(892M^p$f*Mj)Xk`j;aWC_j96EctZEg zW|EYbmOf$VwI*kXQ_s;;iD+z;?(OZ(reR_#vgc^c*DXQdc&M38-Fs6Y=1_NKs9>6z|$w=_%u=+jbe{aO+gmNxaj$q=KcPN~fn=4}Wr&$0I zpbf@d9Dng75v3Xbz&R$-EH*d1X#MGB$1yThil#3C(!cyKX#Mk`!HFnDsSaloG7tcc z1K=T%$0fctxc<*f7vvLcmiz>k9T+*O9;s+(Py`dx_#+($CbvDKO7Sc9W?##I`^Oiec0_P%&q%Sj zH#~y}bsSR{_K;DD0E`D#YXV?QaQg}`z6NsHB0FGYkxg%);&e~ATBET=AYMGwKfAP8a_Hm^AXJ&ePo%35lLX+U1 zZ4JI2gEj6~0sG^LU0@Y#<3N^(MSG@(Zro|8D#(bGPt5Fc>x4T9ph6d!9`64}Y*3*$2twhvhX=^~9>~H0>o$Y6 zMkwE!Tz}Az(ncM4h;Kfs8L8-ya1JCYEiNt=JI>yQf5ve1$XP|HAirIv@Qb_54He?6 zXP>Z~ae?$AlIrPEssFtQ!+S~tJ`vq!-VlQtj1?}{U^jf_lQOdQMBlH?_XIy+{xP2X zzBh7Al_I_1+9$Z_V3ZFDT<2h^{OWyGL@M0OfL83zLPG_b-d&4-;9p-z*zP2u09%F* z6bLrnauD>H^J6k*24{NBI}$_xb5ogq^cUZ`NwJkVkXJc7$BPobed6qEIeG4W;W&;T z-=&(cF2hG;+hg1(?cy6c4n?mRI+iL>UCB8f_wN_JMH${Q2o8ot&NPkS8Gt|%m9wv8 z%*@hvo&PM76JcCUmgQA+Vqzjfulo1O*z#az3d459&Q|izk{lOAf4R zHF)}TZE&Kcino>#3FGC}22-2$Bo`<6O*jxZjfcWQikYnb@hVYG^(=q#=-WxjGp;`> z$tkkKq;4?3>y3Q1@a-$`pc-J92pHvmb4&RHnT;NgtQ}$NlZ)d~ceHVwGfn6CfxG_m zbF%PB2s!I-P}Rl(@7s}N!RtsXoytbBSvNGe%6Zq-w$SXSpB>AhT?n;BVat}c_J94F zA5{OwFg2;SEpw0q@-;O)@_(%I7yr?hdW1>G1B#sv+T?i$FGwj&irJT|orxnSt#7!K z_-KdSJ2^1$#yx0J^tEt9f$8t>^|x2lt&ZFUNix)Qg5>|Xvs=3GJy&BnB4}}um#+3Z zJ!mK#-8vr}l`uHDiN|yl^?ras=9|yaT(NOTXmX#Af(r2=AuAk$9G-_Ue-3&;FACac z(Q&!qz4XKMRfF08{Z$0>49?e?poBhSYKtSx_X%A=j($WMoqDo%{elhQlisYga--s? z&Ppe1q|fzRY?j+OJ*%oh4teEB)j-+TBCePFe_7~v#@e=GL60Ly%9rZ$yEE?@dDN?bilFShJ`F(^tCO2F^gM$Dc|M%aXUwS5T z>V@KY90z2*QbG(~t_S-jqV6+N%24Hpbf%GVGY?yS@mG;pqoz8^2)G}k+uPThN4)(Q z+NA&vrLhxir7hK-Jb>>O|34OADZbL0^*@jCX%g8Hww(X_^ZY+0=isySXI+NvBd-s;1?$-wxFO1QDeJmvsSp$w7zfcZ7O=@aDO-`TwC1n)> z{Y3?hxp!D>11y*BfN2D>@aoQM&ffOs9d!PTXf)hp!EleA$0H;~=1duSE(wC=2J{_M zL2&_Hr=Cl}CaBF$=-D(terAs}tiiws%H({X2?4V18(=ta0l<3!A)$8?15Vh~)Z@@< z6Yxu|(z%Ev$R82FZ{Y`HbsBCyc?ohC*#{3U;q-TgIh)qI4sSLXM zM#!=e-}R9?Z#oFnLE+(NAPjAgenxtGcO-tx9;_qJ0Vcf=hfE3n-s84ry3mjUv0-p9 zLI3P6w+1L8x$mng8Wv|Pn0n&ja!9(LmVJ@? z)*M0qCw=k#du{YKGhc>S8_$9Z?{BBSibfjv`!Hi{;Wd-E2jVnD6eJBjm~6Y~2YcS| z8{|m-E|86#v3MB^q}-K?i3u_3|0;Eno_Hdv%5m{U(mN#F^sig#UF-6wthR5_21P-q!*BBL+iNJb=*57H7t5HBOsnXmeZq)<@M6EJ7MiV zdz9xKj;T8eA!pJ$t>XtlLA=Wt5Ls3~=w?YbN%mDq+znxbM-}+QpoH*hdVo~(ssx)tu`L^= z;-JzzP|@%LW&ZC(`W*wACu@DV6ib?O!DtNxUQsJMb z`n)LJu&6!Yey}IJBIyjm)c%Rb qAIDxiaiz<{It|)Jw{AV@z)tf!IyeB6;Y5t0 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�hhFz0NynmI=;0Sd&-bSeS0v(g*sx5vG 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 literal 0 HcmV?d00001 diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..835816b53c7d68143457bcf416a0da51fe856e59 GIT binary patch literal 54604 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 kb?FrRkk!U56AE){(", + { + "x": 10.5, + "t": "#b81c1c" + }, + "8" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@", + { + "x": 1 + }, + "}", + { + "x": 8.5 + }, + "7", + { + "x": 1 + }, + "9" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "|", + { + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "!", + { + "x": 14.5 + }, + "*", + { + "w": 1.5 + }, + "F12" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#b81c1c\n\n\n#529151" + }, + "(\n\n\n", + { + "x": 10.5, + "t": "#b81c1c" + }, + "5" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c\n\n\n#529151" + }, + "$\n\n\n", + { + "x": 1 + }, + ")\n\n\n", + { + "x": 8.5, + "t": "#b81c1c" + }, + "4", + { + "x": 1 + }, + "6" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "`", + { + "x": 6.5 + }, + "" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "#", + { + "x": 14.5 + }, + "+", + { + "t": "#000000\n\n\n#529151", + "w": 1.5 + }, + "\n\n\n" + ], + [ + { + "y": -0.625, + "x": 6.5, + "t": "#000000", + "a": 7, + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "" + ], + [ + { + "y": -0.75, + "x": 3.5, + "t": "#b81c1c", + "a": 4 + }, + "[", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + "2\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#b81c1c" + }, + "^", + { + "x": 1 + }, + "]", + { + "x": 8.5 + }, + "1", + { + "x": 1, + "t": "#b81c1c\n\n\n#529151" + }, + "3\n\n\n" + ], + [ + { + "y": -0.875, + "x": 5.5, + "t": "#b81c1c" + }, + "~", + { + "x": 6.5 + }, + "&" + ], + [ + { + "y": -0.875, + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "%", + { + "x": 14.5 + }, + "\\", + { + "t": "#000000", + "a": 7, + "w": 1.5 + }, + "" + ], + [ + { + "y": -0.375, + "x": 3.5, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nleft click", + { + "x": 10.5, + "t": "#b81c1c\n\n\n#529151" + }, + ".\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5, + "t": "#000000", + "a": 7 + }, + "", + { + "x": 1, + "t": "#000000\n\n\n#529151", + "a": 4 + }, + "\n\n\nright click", + { + "x": 8.5, + "t": "#b81c1c\n\n\n#529151" + }, + "?\n\n\n", + { + "x": 1, + "t": "#b81c1c" + }, + "0" + ], + [ + { + "y": -0.75, + "x": 0.5, + "t": "#000000", + "a": 7 + }, + "", + { + "t": "#b81c1c", + "a": 4 + }, + "EPRM RST", + { + "x": 14.5, + "t": "#000000", + "a": 7 + }, + "", + "" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "" + ], + [ + { + "h": 2 + }, + "", + { + "h": 2 + }, + "", + "" + ], + [ + { + "x": 2 + }, + "" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + "", + "" + ], + [ + { + "x": -3 + }, + "", + { + "h": 2 + }, + "", + { + "t": "#000000\n\n\n#529151", + "a": 4, + "h": 2 + }, + "\n\n\nWeb back" + ], + [ + { + "x": -3, + "t": "#000000", + "a": 7 + }, + "" + ] +] diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c new file mode 100644 index 000000000..a969393bb --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -0,0 +1,275 @@ +#include "ergodox.h" +#include "debug.h" +#include "action_layer.h" +#include "version.h" +#include "string.h" + +#ifdef SUBPROJECT_infinity +#include "visualizer/lcd_backlight.h" +#endif + + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +#define EPRM M(1) // Macro 1: Reset EEPROM +#define HTML_LI M(10) +#define HTML_UL M(11) +#define HTML_OL M(12) +#define HTML_CODE M(13) + +#define SEND_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING("&"); \ + SEND_STRING(TAG); \ + send_larger_than(); \ + go_back_based_on_tag(TAG); \ + } while (0) + +void send_key(uint16_t keycode); +void go_back_based_on_tag(char* tag); +void send_larger_than(void); + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | § | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L |ö / L2|ä / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | ¨ | ~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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, 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, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, + KC_LALT,CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | EPRM | | | | | ? | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, + KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), + KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, + KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*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, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, + KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, + ACTION_MODS_KEY(MOD_RSFT,KC_MINS),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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | RESET | | | | | | | | | | | | | | RESET | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | |H_UL | |H_OL | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |H_CODE| | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, 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, HTML_CODE, 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, RESET, + KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, 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) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + break; + case 1: + if (record->event.pressed) { // For resetting EEPROM + eeconfig_init(); + } + break; + case 10: + if (record->event.pressed) { + SEND_TAG("li"); + } + break; + case 11: + if (record->event.pressed) { + SEND_TAG( "ul" ); + } + break; + case 12: + if (record->event.pressed) { + SEND_TAG("ol"); + } + break; + case 13: + if (record->event.pressed) { + SEND_TAG("code"); + } + 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); + + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 0: + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + + #ifdef SUBPROJECT_infinity + lcd_backlight_hal_color(0, 0, 0); + #endif + break; + case 1: + ergodox_right_led_1_on(); + + ergodox_board_led_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + #ifdef SUBPROJECT_infinity + lcd_backlight_hal_color(5000, 0, 0); + #endif + break; + case 2: + ergodox_right_led_2_on(); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_3_off(); + #ifdef SUBPROJECT_infinity + lcd_backlight_hal_color(0, 5000, 0); + #endif + break; + default: + // none + break; + } + +}; + +void send_key(uint16_t keycode) { + register_code(keycode); + unregister_code(keycode); +} + +void go_back_based_on_tag(char* tag) { + const int BRACKETS_AND_SLASH_LENGTH = 3; + + for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { + send_key(KC_LEFT); + } +} + +void send_larger_than() { + register_code(KC_LSFT); + send_key(KC_NONUS_BSLASH); + unregister_code(KC_LSFT); +} diff --git a/keyboards/ergodox/keymaps/swissgerman/readme.md b/keyboards/ergodox/keymaps/swissgerman/readme.md new file mode 100644 index 000000000..49889cd65 --- /dev/null +++ b/keyboards/ergodox/keymaps/swissgerman/readme.md @@ -0,0 +1,15 @@ +# ErgoDox Swiss German Configuration + +Swiss German keyboard layout based on the Ergodox EZ default layout. + +Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). + +Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) + +![Layout Layer 0](keyboard-layout.png) +![Layout Layer 1&2](keyboard-layout_1_2.png) + +## Changelog +* Jan 21, 2017: + * Initial version based on default layout. + From 250628de04aabd65d6465c5a6afe48332e8d7f53 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:22:24 +0100 Subject: [PATCH 15/41] Removed Ergodox EZ & Infinity specific keymaps - Removed the keymaps for Swiss German spefic for Ergodox EZ and Infinity after previously merging them. --- .../swissgerman_ez/keyboard-layout.json | 417 ----------------- .../swissgerman_ez/keyboard-layout.png | Bin 75633 -> 0 bytes .../swissgerman_ez/keyboard-layout_1_2.png | Bin 54604 -> 0 bytes .../swissgerman_ez/keyboard-layout_2_3.json | 429 ------------------ .../ergodox/keymaps/swissgerman_ez/keymap.c | 260 ----------- .../ergodox/keymaps/swissgerman_ez/readme.md | 15 - .../swissgerman_infinity/keyboard-layout.json | 417 ----------------- .../swissgerman_infinity/keyboard-layout.png | Bin 75633 -> 0 bytes .../keyboard-layout_1_2.png | Bin 54604 -> 0 bytes .../keyboard-layout_2_3.json | 429 ------------------ .../keymaps/swissgerman_infinity/keymap.c | 252 ---------- .../keymaps/swissgerman_infinity/readme.md | 14 - 12 files changed, 2233 deletions(-) delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_2_3.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/keymap.c delete mode 100644 keyboards/ergodox/keymaps/swissgerman_ez/readme.md delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_2_3.json delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c delete mode 100644 keyboards/ergodox/keymaps/swissgerman_infinity/readme.md diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json deleted file mode 100644 index 7a0397f72..000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.json +++ /dev/null @@ -1,417 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5 - }, - "#\n3", - { - "x": 10.5 - }, - "*\n8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@\n2", - { - "x": 1 - }, - "$\n4", - { - "x": 8.5 - }, - "&\n7", - { - "x": 1 - }, - "(\n9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "%\n5", - { - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "a": 4 - }, - "^\n6" - ], - [ - { - "y": -0.875, - "w": 1.5 - }, - "°\n§", - "!\n1", - { - "x": 14.5 - }, - ")\n0", - { - "w": 1.5 - }, - "?\n'\n\n'" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "E", - { - "x": 10.5 - }, - "I" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "W", - { - "x": 1 - }, - "R", - { - "x": 8.5 - }, - "U", - { - "x": 1 - }, - "O" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "T", - { - "c": "#b56b6b", - "a": 6, - "h": 1.5 - }, - "Toggle Code Layer", - { - "x": 4.5, - "h": 1.5 - }, - "Toggle Code Layer", - { - "c": "#cccccc", - "a": 4 - }, - "Y" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Delete", - { - "a": 4 - }, - "Q", - { - "x": 14.5 - }, - "P", - { - "w": 1.5 - }, - "è\nü\n\n[" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "D", - { - "x": 10.5 - }, - "K" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "S", - { - "x": 1 - }, - "F", - { - "x": 8.5 - }, - "J", - { - "x": 1 - }, - "L" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "G", - { - "x": 6.5 - }, - "H" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Backspace", - { - "c": "#79c777", - "a": 4 - }, - "A\n\nLyr3", - { - "x": 14.5 - }, - "é\nö\nLyr3", - { - "c": "#748adb", - "w": 1.5 - }, - "à\nä\nCmd\n{" - ], - [ - { - "y": -0.625, - "x": 6.5, - "c": "#cccccc", - "a": 6, - "h": 1.5 - }, - "Hyper", - { - "x": 4.5, - "h": 1.5 - }, - "Meh" - ], - [ - { - "y": -0.75, - "x": 3.5, - "a": 4 - }, - "C", - { - "x": 10.5 - }, - ";\n," - ], - [ - { - "y": -0.875, - "x": 2.5, - "c": "#748adb" - }, - "X\n\nAlt", - { - "x": 1, - "c": "#cccccc" - }, - "V", - { - "x": 8.5 - }, - "M", - { - "x": 1, - "c": "#748adb" - }, - ":\n.\nAlt" - ], - [ - { - "y": -0.875, - "x": 5.5, - "c": "#cccccc" - }, - "B", - { - "x": 6.5 - }, - "N" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Shift", - { - "c": "#748adb", - "a": 4 - }, - "Z\n\nCtrl", - { - "x": 14.5 - }, - "_\n-\nCtrl", - { - "c": "#cccccc", - "a": 6, - "w": 1.5 - }, - "Shift" - ], - [ - { - "y": -0.375, - "x": 3.5, - "a": 7 - }, - "", - { - "x": 10.5 - }, - "" - ], - [ - { - "y": -0.875, - "x": 2.5, - "a": 4 - }, - "£\n$\n\n}", - { - "x": 1, - "a": 7 - }, - "", - { - "x": 10.5, - "a": 6 - }, - "AltGr" - ], - [ - { - "y": -0.9950000000000001, - "x": 14, - "a": 7 - }, - "" - ], - [ - { - "y": -0.7549999999999999, - "x": 0.5, - "c": "#b56b6b", - "a": 4 - }, - ">\n<\nCode Layer\n\\", - { - "c": "#cccccc" - }, - "`\n^\n\n~", - { - "x": 14.5 - }, - "!\n¨\n\n]", - { - "c": "#b56b6b" - }, - "\n\nCode Layer" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1, - "c": "#748adb" - }, - "Apps\nAlt", - { - "c": "#cccccc", - "a": 6 - }, - "Win / Cmd" - ], - [ - { - "h": 2 - }, - "Space", - { - "h": 2 - }, - "Back Space", - "Home" - ], - [ - { - "x": 2 - }, - "End" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "Alt", - { - "c": "#748adb", - "a": 4 - }, - "Esc\nCtrl" - ], - [ - { - "x": -3, - "c": "#cccccc", - "a": 6 - }, - "Pg Up", - { - "h": 2 - }, - "Tab", - { - "h": 2 - }, - "Enter" - ], - [ - { - "x": -3 - }, - "Pg Dn" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout.png deleted file mode 100644 index aff6af85138060acef61781dc889917885f677ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75633 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 qAIDxiaiz<{It|)Jw{AV@z)tf!IyeB6;Y5t0 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�hhFz0NynmI=;0Sd&-bSeS0v(g*sx5vG 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 diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_ez/keyboard-layout_1_2.png deleted file mode 100644 index 835816b53c7d68143457bcf416a0da51fe856e59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54604 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 kb?FrRkk!U56AE){(", - { - "x": 10.5, - "t": "#b81c1c" - }, - "8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@", - { - "x": 1 - }, - "}", - { - "x": 8.5 - }, - "7", - { - "x": 1 - }, - "9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "|", - { - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "!", - { - "x": 14.5 - }, - "*", - { - "w": 1.5 - }, - "F12" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#b81c1c\n\n\n#529151" - }, - "(\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "5" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c\n\n\n#529151" - }, - "$\n\n\n", - { - "x": 1 - }, - ")\n\n\n", - { - "x": 8.5, - "t": "#b81c1c" - }, - "4", - { - "x": 1 - }, - "6" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "`", - { - "x": 6.5 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "#", - { - "x": 14.5 - }, - "+", - { - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\n" - ], - [ - { - "y": -0.625, - "x": 6.5, - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "" - ], - [ - { - "y": -0.75, - "x": 3.5, - "t": "#b81c1c", - "a": 4 - }, - "[", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - "2\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c" - }, - "^", - { - "x": 1 - }, - "]", - { - "x": 8.5 - }, - "1", - { - "x": 1, - "t": "#b81c1c\n\n\n#529151" - }, - "3\n\n\n" - ], - [ - { - "y": -0.875, - "x": 5.5, - "t": "#b81c1c" - }, - "~", - { - "x": 6.5 - }, - "&" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "%", - { - "x": 14.5 - }, - "\\", - { - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nleft click", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - ".\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#000000", - "a": 7 - }, - "", - { - "x": 1, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nright click", - { - "x": 8.5, - "t": "#b81c1c\n\n\n#529151" - }, - "?\n\n\n", - { - "x": 1, - "t": "#b81c1c" - }, - "0" - ], - [ - { - "y": -0.75, - "x": 0.5, - "t": "#000000", - "a": 7 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "EPRM RST", - { - "x": 14.5, - "t": "#000000", - "a": 7 - }, - "", - "" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1 - }, - "", - "" - ], - [ - { - "h": 2 - }, - "", - { - "h": 2 - }, - "", - "" - ], - [ - { - "x": 2 - }, - "" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "", - "" - ], - [ - { - "x": -3 - }, - "", - { - "h": 2 - }, - "", - { - "t": "#000000\n\n\n#529151", - "a": 4, - "h": 2 - }, - "\n\n\nWeb back" - ], - [ - { - "x": -3, - "t": "#000000", - "a": 7 - }, - "" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c b/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c deleted file mode 100644 index c6717abff..000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/keymap.c +++ /dev/null @@ -1,260 +0,0 @@ -#include "ergodox.h" -#include "debug.h" -#include "action_layer.h" -#include "version.h" - -#define BASE 0 // default layer -#define SYMB 1 // symbols -#define MDIA 2 // media keys - -#define EPRM M(1) // Macro 1: Reset EEPROM -#define HTML_LI M(10) -#define HTML_UL M(11) -#define HTML_OL M(12) -#define HTML_CODE M(13) - -#define SEND_TAG(TAG) do {\ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING("&"); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - go_back_based_on_tag(TAG); \ - } while (0) - -void send_key(uint16_t keycode); -void go_back_based_on_tag(char* tag); -void send_larger_than(void); - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | § | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | ü | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L |ö / L2|ä / Cmd | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | ¨ | ~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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, - KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), - KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, - KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), - LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, 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, - TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), - MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, - KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, - KC_LALT,CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT - ), -/* Keymap 1: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | EPRM | | | | | ? | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, - KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*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, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, - KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, - ACTION_MODS_KEY(MOD_RSFT,KC_MINS),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 - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | RESET | | | | | | | | | | | | | | RESET | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | |H_UL | |H_OL | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |H_CODE| | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[MDIA] = KEYMAP( - RESET, 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, HTML_CODE, 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, RESET, - KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, 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) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; - case 1: - if (record->event.pressed) { // For resetting EEPROM - eeconfig_init(); - } - break; - case 10: - if (record->event.pressed) { - SEND_TAG("li"); - } - break; - case 11: - if (record->event.pressed) { - SEND_TAG( "ul" ); - } - break; - case 12: - if (record->event.pressed) { - SEND_TAG("ol"); - } - break; - case 13: - if (record->event.pressed) { - SEND_TAG("code"); - } - 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); - - switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. - case 0: - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - break; - case 1: - ergodox_right_led_1_on(); - - ergodox_board_led_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - break; - case 2: - ergodox_right_led_2_on(); - - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_3_off(); - break; - default: - // none - break; - } - -}; - -void send_key(uint16_t keycode) { - register_code(keycode); - unregister_code(keycode); -} - -void go_back_based_on_tag(char* tag) { - const int BRACKETS_AND_SLASH_LENGTH = 3; - - for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { - send_key(KC_LEFT); - } -} - -void send_larger_than() { - register_code(KC_LSFT); - send_key(KC_NONUS_BSLASH); - unregister_code(KC_LSFT); - -} diff --git a/keyboards/ergodox/keymaps/swissgerman_ez/readme.md b/keyboards/ergodox/keymaps/swissgerman_ez/readme.md deleted file mode 100644 index 039a08588..000000000 --- a/keyboards/ergodox/keymaps/swissgerman_ez/readme.md +++ /dev/null @@ -1,15 +0,0 @@ -# ErgoDox EZ Swiss German Configuration - -Swiss German keyboard layout based on the Ergodox EZ default layout. - -Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). - -Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) - -![Layout Layer 0](keyboard-layout.png) -![Layout Layer 1&2](keyboard-layout_1_2.png) - -## Changelog -* Jan 21, 2017: - * Initial version based on default layout. - diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json deleted file mode 100644 index 7a0397f72..000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.json +++ /dev/null @@ -1,417 +0,0 @@ -[ - { - "backcolor": "#ffffff" - }, - [ - { - "x": 3.5 - }, - "#\n3", - { - "x": 10.5 - }, - "*\n8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@\n2", - { - "x": 1 - }, - "$\n4", - { - "x": 8.5 - }, - "&\n7", - { - "x": 1 - }, - "(\n9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "%\n5", - { - "a": 7 - }, - "", - { - "x": 4.5 - }, - "", - { - "a": 4 - }, - "^\n6" - ], - [ - { - "y": -0.875, - "w": 1.5 - }, - "°\n§", - "!\n1", - { - "x": 14.5 - }, - ")\n0", - { - "w": 1.5 - }, - "?\n'\n\n'" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "E", - { - "x": 10.5 - }, - "I" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "W", - { - "x": 1 - }, - "R", - { - "x": 8.5 - }, - "U", - { - "x": 1 - }, - "O" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "T", - { - "c": "#b56b6b", - "a": 6, - "h": 1.5 - }, - "Toggle Code Layer", - { - "x": 4.5, - "h": 1.5 - }, - "Toggle Code Layer", - { - "c": "#cccccc", - "a": 4 - }, - "Y" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Delete", - { - "a": 4 - }, - "Q", - { - "x": 14.5 - }, - "P", - { - "w": 1.5 - }, - "è\nü\n\n[" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "D", - { - "x": 10.5 - }, - "K" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "S", - { - "x": 1 - }, - "F", - { - "x": 8.5 - }, - "J", - { - "x": 1 - }, - "L" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "G", - { - "x": 6.5 - }, - "H" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Backspace", - { - "c": "#79c777", - "a": 4 - }, - "A\n\nLyr3", - { - "x": 14.5 - }, - "é\nö\nLyr3", - { - "c": "#748adb", - "w": 1.5 - }, - "à\nä\nCmd\n{" - ], - [ - { - "y": -0.625, - "x": 6.5, - "c": "#cccccc", - "a": 6, - "h": 1.5 - }, - "Hyper", - { - "x": 4.5, - "h": 1.5 - }, - "Meh" - ], - [ - { - "y": -0.75, - "x": 3.5, - "a": 4 - }, - "C", - { - "x": 10.5 - }, - ";\n," - ], - [ - { - "y": -0.875, - "x": 2.5, - "c": "#748adb" - }, - "X\n\nAlt", - { - "x": 1, - "c": "#cccccc" - }, - "V", - { - "x": 8.5 - }, - "M", - { - "x": 1, - "c": "#748adb" - }, - ":\n.\nAlt" - ], - [ - { - "y": -0.875, - "x": 5.5, - "c": "#cccccc" - }, - "B", - { - "x": 6.5 - }, - "N" - ], - [ - { - "y": -0.875, - "a": 6, - "w": 1.5 - }, - "Shift", - { - "c": "#748adb", - "a": 4 - }, - "Z\n\nCtrl", - { - "x": 14.5 - }, - "_\n-\nCtrl", - { - "c": "#cccccc", - "a": 6, - "w": 1.5 - }, - "Shift" - ], - [ - { - "y": -0.375, - "x": 3.5, - "a": 7 - }, - "", - { - "x": 10.5 - }, - "" - ], - [ - { - "y": -0.875, - "x": 2.5, - "a": 4 - }, - "£\n$\n\n}", - { - "x": 1, - "a": 7 - }, - "", - { - "x": 10.5, - "a": 6 - }, - "AltGr" - ], - [ - { - "y": -0.9950000000000001, - "x": 14, - "a": 7 - }, - "" - ], - [ - { - "y": -0.7549999999999999, - "x": 0.5, - "c": "#b56b6b", - "a": 4 - }, - ">\n<\nCode Layer\n\\", - { - "c": "#cccccc" - }, - "`\n^\n\n~", - { - "x": 14.5 - }, - "!\n¨\n\n]", - { - "c": "#b56b6b" - }, - "\n\nCode Layer" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1, - "c": "#748adb" - }, - "Apps\nAlt", - { - "c": "#cccccc", - "a": 6 - }, - "Win / Cmd" - ], - [ - { - "h": 2 - }, - "Space", - { - "h": 2 - }, - "Back Space", - "Home" - ], - [ - { - "x": 2 - }, - "End" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "Alt", - { - "c": "#748adb", - "a": 4 - }, - "Esc\nCtrl" - ], - [ - { - "x": -3, - "c": "#cccccc", - "a": 6 - }, - "Pg Up", - { - "h": 2 - }, - "Tab", - { - "h": 2 - }, - "Enter" - ], - [ - { - "x": -3 - }, - "Pg Dn" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout.png deleted file mode 100644 index aff6af85138060acef61781dc889917885f677ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75633 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 qAIDxiaiz<{It|)Jw{AV@z)tf!IyeB6;Y5t0 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�hhFz0NynmI=;0Sd&-bSeS0v(g*sx5vG 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 diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman_infinity/keyboard-layout_1_2.png deleted file mode 100644 index 835816b53c7d68143457bcf416a0da51fe856e59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54604 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 kb?FrRkk!U56AE){(", - { - "x": 10.5, - "t": "#b81c1c" - }, - "8" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "@", - { - "x": 1 - }, - "}", - { - "x": 8.5 - }, - "7", - { - "x": 1 - }, - "9" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "|", - { - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "!", - { - "x": 14.5 - }, - "*", - { - "w": 1.5 - }, - "F12" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#b81c1c\n\n\n#529151" - }, - "(\n\n\n", - { - "x": 10.5, - "t": "#b81c1c" - }, - "5" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c\n\n\n#529151" - }, - "$\n\n\n", - { - "x": 1 - }, - ")\n\n\n", - { - "x": 8.5, - "t": "#b81c1c" - }, - "4", - { - "x": 1 - }, - "6" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "`", - { - "x": 6.5 - }, - "" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "#", - { - "x": 14.5 - }, - "+", - { - "t": "#000000\n\n\n#529151", - "w": 1.5 - }, - "\n\n\n" - ], - [ - { - "y": -0.625, - "x": 6.5, - "t": "#000000", - "a": 7, - "h": 1.5 - }, - "", - { - "x": 4.5, - "h": 1.5 - }, - "" - ], - [ - { - "y": -0.75, - "x": 3.5, - "t": "#b81c1c", - "a": 4 - }, - "[", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - "2\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#b81c1c" - }, - "^", - { - "x": 1 - }, - "]", - { - "x": 8.5 - }, - "1", - { - "x": 1, - "t": "#b81c1c\n\n\n#529151" - }, - "3\n\n\n" - ], - [ - { - "y": -0.875, - "x": 5.5, - "t": "#b81c1c" - }, - "~", - { - "x": 6.5 - }, - "&" - ], - [ - { - "y": -0.875, - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "%", - { - "x": 14.5 - }, - "\\", - { - "t": "#000000", - "a": 7, - "w": 1.5 - }, - "" - ], - [ - { - "y": -0.375, - "x": 3.5, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nleft click", - { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" - }, - ".\n\n\n" - ], - [ - { - "y": -0.875, - "x": 2.5, - "t": "#000000", - "a": 7 - }, - "", - { - "x": 1, - "t": "#000000\n\n\n#529151", - "a": 4 - }, - "\n\n\nright click", - { - "x": 8.5, - "t": "#b81c1c\n\n\n#529151" - }, - "?\n\n\n", - { - "x": 1, - "t": "#b81c1c" - }, - "0" - ], - [ - { - "y": -0.75, - "x": 0.5, - "t": "#000000", - "a": 7 - }, - "", - { - "t": "#b81c1c", - "a": 4 - }, - "EPRM RST", - { - "x": 14.5, - "t": "#000000", - "a": 7 - }, - "", - "" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1 - }, - "", - "" - ], - [ - { - "h": 2 - }, - "", - { - "h": 2 - }, - "", - "" - ], - [ - { - "x": 2 - }, - "" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "", - "" - ], - [ - { - "x": -3 - }, - "", - { - "h": 2 - }, - "", - { - "t": "#000000\n\n\n#529151", - "a": 4, - "h": 2 - }, - "\n\n\nWeb back" - ], - [ - { - "x": -3, - "t": "#000000", - "a": 7 - }, - "" - ] -] diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c b/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c deleted file mode 100644 index 0ccb7f47e..000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/keymap.c +++ /dev/null @@ -1,252 +0,0 @@ -#include "ergodox.h" -#include "debug.h" -#include "action_layer.h" -#include "version.h" -#include "visualizer/lcd_backlight.h" -#include "string.h" - -#define BASE 0 // default layer -#define SYMB 1 // symbols -#define MDIA 2 // media keys - -#define EPRM M(1) // Macro 1: Reset EEPROM -#define HTML_LI M(10) -#define HTML_UL M(11) -#define HTML_OL M(12) -#define HTML_CODE M(13) - -#define SEND_TAG(TAG) do {\ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - send_key(KC_NONUS_BSLASH); \ - SEND_STRING("&"); \ - SEND_STRING(TAG); \ - send_larger_than(); \ - go_back_based_on_tag(TAG); \ - } while (0) - -void send_key(uint16_t keycode); -void go_back_based_on_tag(char* tag); -void send_larger_than(void); - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -/* Keymap 0: Basic layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | § | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | ' | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | Q | W | E | R | T | L1 | | L1 | Z | U | I | O | P | ü | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A /L2| S | D | F | G |------| |------| H | J | K | L |ö / L2|ä / Cmd | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |Y/Ctrl|X/Alt | C | V | B | | | | N | M | , |./Alt |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |< / L1| ^ | $ | Left | Right| | Up | Down |AltGr | ¨ | ~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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, - KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), - KC_BSPC, LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, - KC_LSFT, CTL_T(KC_Z), ALT_T(KC_X), KC_C, KC_V, KC_B, ALL_T(KC_NO), - LT(SYMB,KC_NONUS_BSLASH), KC_EQL, KC_BSLS, 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, - TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), - MEH_T(KC_NO),KC_N, KC_M, KC_COMM,ALT_T(KC_DOT), CTL_T(KC_SLSH), KC_RSFT, - KC_UP, KC_DOWN,KC_RALT,KC_RBRC, KC_FN1, - KC_LALT,CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT - ), -/* Keymap 1: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | EPRM | | | | | ? | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT, KC_RBRC), ACTION_MODS_KEY(MOD_RALT, KC_2), ACTION_MODS_KEY(MOD_RALT, KC_QUOT), ACTION_MODS_KEY(MOD_RALT, KC_BSLS),ACTION_MODS_KEY(MOD_RALT,KC_7),KC_TRNS, - KC_TRNS,ACTION_MODS_KEY(MOD_RALT,KC_3),KC_BSLS, ACTION_MODS_KEY(MOD_LSFT, KC_8), ACTION_MODS_KEY(MOD_RSFT, KC_9),ACTION_MODS_KEY(MOD_LSFT,KC_EQL), - KC_TRNS,ACTION_MODS_KEY(MOD_LSFT,KC_5),KC_EQL, ACTION_MODS_KEY(MOD_RALT, KC_LBRC), ACTION_MODS_KEY(MOD_RALT, KC_RBRC),ACTION_MODS_KEY(MOD_RALT,KC_EQL),KC_TRNS, - KC_TRNS,EPRM,KC_TRNS,KC_NONUS_BSLASH, ACTION_MODS_KEY(MOD_LSFT, KC_NONUS_BSLASH)/*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, ACTION_MODS_KEY(MOD_RSFT,KC_3), KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, - KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, - ACTION_MODS_KEY(MOD_RSFT,KC_MINS),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 - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | RESET | | | | | | | | | | | | | | RESET | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | |H_UL | |H_OL | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |H_CODE| | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[MDIA] = KEYMAP( - RESET, 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, HTML_CODE, 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, RESET, - KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, HTML_LI, 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) { - SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); - } - break; - case 1: - if (record->event.pressed) { // For resetting EEPROM - eeconfig_init(); - } - break; - case 10: - if (record->event.pressed) { - SEND_TAG("li"); - } - break; - case 11: - if (record->event.pressed) { - SEND_TAG("ul"); - } - break; - case 12: - if (record->event.pressed) { - SEND_TAG("ol"); - } - break; - case 13: - if (record->event.pressed) { - SEND_TAG("code"); - } - 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); - - switch (layer) { - // TODO: Make this relevant to the ErgoDox EZ. - case 0: - ergodox_board_led_off(); - lcd_backlight_hal_color(0, 0, 0); - break; - case 1: - lcd_backlight_hal_color(5000, 0, 0); - break; - case 2: - lcd_backlight_hal_color(0, 5000, 0); - break; - default: - // none - break; - } - -}; - -void send_key(uint16_t keycode) { - register_code(keycode); - unregister_code(keycode); -} - -void go_back_based_on_tag(char* tag) { - const int BRACKETS_AND_SLASH_LENGTH = 3; - - for (int i=0; i < strlen(tag) + BRACKETS_AND_SLASH_LENGTH; i++) { - send_key(KC_LEFT); - } -} - -void send_larger_than() { - register_code(KC_LSFT); - send_key(KC_NONUS_BSLASH); - unregister_code(KC_LSFT); - -} diff --git a/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md b/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md deleted file mode 100644 index 1c35f7473..000000000 --- a/keyboards/ergodox/keymaps/swissgerman_infinity/readme.md +++ /dev/null @@ -1,14 +0,0 @@ -# ErgoDox Infinity Swiss German Configuration - -Swiss German keyboard layout based on the Ergodox EZ default layout. - -Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). - -Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) - -![Layout Layer 0](keyboard-layout.png) -![Layout Layer 1&2](keyboard-layout_1_2.png) - -## Changelog -* Jan 21, 2017: - * Initial version. From 6b5cd656fd32033d1b5d117381208cd6708721ed Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:55:18 +0100 Subject: [PATCH 16/41] Correct layout description of ergodox swissgerman - Added missing HTML macros to media layer. --- .../swissgerman/keyboard-layout_1_2.png | Bin 54604 -> 56347 bytes .../swissgerman/keyboard-layout_2_3.json | 31 +++++++++--------- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png index 835816b53c7d68143457bcf416a0da51fe856e59..e0a45536902cf776d6dda0aa76804ea319b2ab44 100644 GIT binary patch literal 56347 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∈I+ydYO3x@3JBdtO7nwY$1Xfmf?FCzN4a^b) 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 kb?FrRkk!U56AE){(", { - "x": 10.5, - "t": "#b81c1c" + "x": 10.5 }, - "5" + "5\n\n\nHTML li" ], [ { "y": -0.875, - "x": 2.5, - "t": "#b81c1c\n\n\n#529151" + "x": 2.5 }, "$\n\n\n", { @@ -237,13 +237,12 @@ { "y": -0.75, "x": 3.5, - "t": "#b81c1c", + "t": "#b81c1c\n\n\n#529151", "a": 4 }, - "[", + "[\n\n\nHTML code", { - "x": 10.5, - "t": "#b81c1c\n\n\n#529151" + "x": 10.5 }, "2\n\n\n" ], @@ -255,11 +254,13 @@ }, "^", { - "x": 1 + "x": 1, + "t": "#b81c1c\n\n\n#529151" }, "]", { - "x": 8.5 + "x": 8.5, + "t": "#b81c1c" }, "1", { From eb6abb6305d66033b67a9860b57b21765b5b46bb Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sat, 21 Jan 2017 20:58:28 +0100 Subject: [PATCH 17/41] Renamed JSON source of Ergodox Swiss German - Renamed the JSON source files for the layout description of the Ergodox Swiss German keymap --- .../{keyboard-layout_2_3.json => keyboard-layout_1_2.json} | 0 keyboards/ergodox/keymaps/swissgerman/readme.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename keyboards/ergodox/keymaps/swissgerman/{keyboard-layout_2_3.json => keyboard-layout_1_2.json} (100%) diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json similarity index 100% rename from keyboards/ergodox/keymaps/swissgerman/keyboard-layout_2_3.json rename to keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json diff --git a/keyboards/ergodox/keymaps/swissgerman/readme.md b/keyboards/ergodox/keymaps/swissgerman/readme.md index 49889cd65..b1061c1dd 100644 --- a/keyboards/ergodox/keymaps/swissgerman/readme.md +++ b/keyboards/ergodox/keymaps/swissgerman/readme.md @@ -4,7 +4,7 @@ Swiss German keyboard layout based on the Ergodox EZ default layout. Keyboard diagrams created with the [keyboard layout editor](http://www.keyboard-layout-editor.com). -Diagram sources: [default layer](keyboard-layout.json), [layer 2 & 3](keyboard-layout_2_3.json) +Diagram sources: [default layer](keyboard-layout.json), [layer 1 & 2](keyboard-layout_1_2.json) ![Layout Layer 0](keyboard-layout.png) ![Layout Layer 1&2](keyboard-layout_1_2.png) From 9ce38cbccf073fccea6f7ee6492bf472a48852b8 Mon Sep 17 00:00:00 2001 From: Luiz Ribeiro Date: Sat, 21 Jan 2017 17:09:17 -0500 Subject: [PATCH 18/41] Simplified and polished a bit the code changes on tmk_core --- keyboards/ps2avrGB/config.h | 2 +- tmk_core/common/avr/bootloader.c | 6 ++++-- tmk_core/common/avr/suspend.c | 2 -- tmk_core/common/command.c | 1 + tmk_core/protocol/vusb.mk | 4 ++-- 5 files changed, 8 insertions(+), 7 deletions(-) diff --git a/keyboards/ps2avrGB/config.h b/keyboards/ps2avrGB/config.h index dfaea5979..f0bef2464 100644 --- a/keyboards/ps2avrGB/config.h +++ b/keyboards/ps2avrGB/config.h @@ -34,7 +34,7 @@ along with this program. If not, see . #define BACKLIGHT_COLOR 0x110000 #define NO_UART 1 -#define EEPROM_BOOTLOADER_START 1 +#define BOOTLOADHID_BOOTLOADER 1 /* key combination for command */ #define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) diff --git a/tmk_core/common/avr/bootloader.c b/tmk_core/common/avr/bootloader.c index 98a24d178..34db8d0b0 100644 --- a/tmk_core/common/avr/bootloader.c +++ b/tmk_core/common/avr/bootloader.c @@ -90,8 +90,10 @@ void bootloader_jump(void) { _delay_ms(5); #endif - #ifdef EEPROM_BOOTLOADER_START - eeprom_write_byte((uint8_t *)EEPROM_BOOTLOADER_START, 0x00); + #ifdef BOOTLOADHID_BOOTLOADER + // force bootloadHID to stay in bootloader mode, so that it waits + // for a new firmware to be flashed + eeprom_write_byte((uint8_t *)1, 0x00); #endif // watchdog reset diff --git a/tmk_core/common/avr/suspend.c b/tmk_core/common/avr/suspend.c index 0e97892d9..0c81e8361 100644 --- a/tmk_core/common/avr/suspend.c +++ b/tmk_core/common/avr/suspend.c @@ -65,7 +65,6 @@ static uint8_t wdt_timeout = 0; static void power_down(uint8_t wdto) { -#ifndef __AVR_ATmega32A__ #ifdef PROTOCOL_LUFA if (USB_DeviceState == DEVICE_STATE_Configured) return; #endif @@ -100,7 +99,6 @@ static void power_down(uint8_t wdto) // Disable watchdog after sleep wdt_disable(); -#endif } #endif diff --git a/tmk_core/common/command.c b/tmk_core/common/command.c index beba768ec..f79d5a257 100644 --- a/tmk_core/common/command.c +++ b/tmk_core/common/command.c @@ -236,6 +236,7 @@ static void print_status(void) print_val_hex8(host_keyboard_leds()); #ifndef PROTOCOL_VUSB + // these aren't set on the V-USB protocol, so we just ignore them for now print_val_hex8(keyboard_protocol); print_val_hex8(keyboard_idle); #endif diff --git a/tmk_core/protocol/vusb.mk b/tmk_core/protocol/vusb.mk index 4d90510af..897b833e1 100644 --- a/tmk_core/protocol/vusb.mk +++ b/tmk_core/protocol/vusb.mk @@ -2,7 +2,7 @@ VUSB_DIR = protocol/vusb OPT_DEFS += -DPROTOCOL_VUSB -SRC += $(VUSB_DIR)/main.c \ +SRC += $(VUSB_DIR)/main.c \ $(VUSB_DIR)/vusb.c \ $(VUSB_DIR)/usbdrv/usbdrv.c \ $(VUSB_DIR)/usbdrv/usbdrvasm.S \ @@ -16,7 +16,7 @@ SRC += $(COMMON_DIR)/sendchar_uart.c \ $(COMMON_DIR)/uart.c endif + # Search Path -#VPATH += $(TMK_PATH)/$(VUSB_DIR) VPATH += $(TMK_PATH)/$(VUSB_DIR) VPATH += $(TMK_PATH)/$(VUSB_DIR)/usbdrv From bfbab75292a3e1fa9fea501fc3c37698c16dedd5 Mon Sep 17 00:00:00 2001 From: Luiz Ribeiro Date: Sat, 21 Jan 2017 18:15:39 -0500 Subject: [PATCH 19/41] Slightly saner default keymap for ps2avrGB and removed some unused code --- keyboards/ps2avrGB/config.h | 4 --- keyboards/ps2avrGB/keymaps/default/keymap.c | 27 +++------------------ 2 files changed, 4 insertions(+), 27 deletions(-) diff --git a/keyboards/ps2avrGB/config.h b/keyboards/ps2avrGB/config.h index f0bef2464..b5c696f3f 100644 --- a/keyboards/ps2avrGB/config.h +++ b/keyboards/ps2avrGB/config.h @@ -29,10 +29,6 @@ along with this program. If not, see . #define MATRIX_ROWS 8 #define MATRIX_COLS 15 -/* only support one hard-coded backlight color for now */ -#define BACKLIGHT_LEVELS 0 -#define BACKLIGHT_COLOR 0x110000 - #define NO_UART 1 #define BOOTLOADHID_BOOTLOADER 1 diff --git a/keyboards/ps2avrGB/keymaps/default/keymap.c b/keyboards/ps2avrGB/keymaps/default/keymap.c index 43cc6bce3..bd1ce775c 100644 --- a/keyboards/ps2avrGB/keymaps/default/keymap.c +++ b/keyboards/ps2avrGB/keymaps/default/keymap.c @@ -2,33 +2,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KEYMAP( \ - ESC, NO, NO, NO, NO, NO, NO, MPRV,MPLY,MNXT,MUTE,VOLD,VOLU,PSCR,HOME,END, \ + ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,HOME,END, \ GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, DEL, \ - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, FN1, \ - FN2, A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP,\ + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, INS, \ + CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP,\ LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ - FN0, LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT \ - ), - KEYMAP( \ - NO, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, NO, NO, NO, \ - NO, NO, NO, NO, NO, NO, NO, MPRV,MPLY,MNXT,MUTE,VOLD,VOLU,DEL, NO, \ - NO, NO, NO, NO, NO, NO, NO, PGUP,NO, NO, NO, NO, NO, NO, TRNS,\ - FN2, NO, NO, PGDN,NO, NO, LEFT,DOWN,UP, RGHT,NO, NO, NO, NO, \ - TRNS,NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, TRNS, NO, NO, \ - TRNS,TRNS,TRNS, NO, TRNS,TRNS,TRNS,NO, NO, NO \ - ), - KEYMAP( \ - NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, NO, \ - NO, NO, NO, NO, END, NO, NO, NO, NO, NO, HOME,NO, NO, NO, NO, \ - NO, BTN1,MS_U,BTN2,NO, NO, NO, PGUP,FN1, NO, NO, NO, NO, NO, TRNS,\ - FN2, MS_L,MS_D,MS_R,NO, NO, LEFT,DOWN,UP, RGHT,NO, NO, NO, NO, \ - TRNS,NO, DEL, NO, NO, NO, NO, NO, NO, NO, NO, TRNS, NO, NO, \ - TRNS,TRNS,TRNS, NO, TRNS,TRNS,TRNS,NO, NO, NO \ + LCTL,LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT \ ), }; const uint16_t PROGMEM fn_actions[] = { - [0] = ACTION_LAYER_MOMENTARY(1), - [1] = ACTION_LAYER_TOGGLE(2), - [2] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC), }; From 642d0acef547c8276ed82a319d2e16c5a977d1a4 Mon Sep 17 00:00:00 2001 From: Luiz Ribeiro Date: Sat, 21 Jan 2017 18:23:44 -0500 Subject: [PATCH 20/41] =?UTF-8?q?Added=20a=20copyright=20header=20to=20the?= =?UTF-8?q?=20default=20keymap...=20=C2=AF\=5F(=E3=83=84)=5F/=C2=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- keyboards/ps2avrGB/keymaps/default/keymap.c | 17 +++++++++++++++++ keyboards/ps2avrGB/ps2avrGB.h | 1 + 2 files changed, 18 insertions(+) diff --git a/keyboards/ps2avrGB/keymaps/default/keymap.c b/keyboards/ps2avrGB/keymaps/default/keymap.c index bd1ce775c..5c66cde59 100644 --- a/keyboards/ps2avrGB/keymaps/default/keymap.c +++ b/keyboards/ps2avrGB/keymaps/default/keymap.c @@ -1,3 +1,20 @@ +/* +Copyright 2017 Luiz Ribeiro + +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 . +*/ + #include "ps2avrGB.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/ps2avrGB/ps2avrGB.h b/keyboards/ps2avrGB/ps2avrGB.h index 1527c604e..6432e3be9 100644 --- a/keyboards/ps2avrGB/ps2avrGB.h +++ b/keyboards/ps2avrGB/ps2avrGB.h @@ -14,6 +14,7 @@ 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 KEYMAP_COMMON_H #define KEYMAP_COMMON_H From 803a861b4e5cce8da2f1260273ee5d918b0f58a7 Mon Sep 17 00:00:00 2001 From: lucwastiaux Date: Sun, 22 Jan 2017 10:32:17 +0800 Subject: [PATCH 21/41] document BRACKETS and SHELL_LAYER --- keyboards/ergodox/keymaps/dvorak_programmer/README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/dvorak_programmer/README.md b/keyboards/ergodox/keymaps/dvorak_programmer/README.md index 3e4a2545b..54da74f7f 100644 --- a/keyboards/ergodox/keymaps/dvorak_programmer/README.md +++ b/keyboards/ergodox/keymaps/dvorak_programmer/README.md @@ -7,18 +7,23 @@ Layers ------ * BASE: this is where you type. +* SHELL_LAYER: this is a permanent layer which I use when I don't need the F keys and gives me bash shortcuts on the top row. * SHELL_NAV: hold down the Tab key to access shell/terminal navigation shorcuts such as forward/backward word, history, Ctrl+C, screen tab movement. * KEY_NAV: arrow key movement with backward/forward word support, and copy/paste. * KEY_SEL: same as above, but every movement shift-selects. * NUMBER: keypad layer. * SYMBOL: all the symbols. -* BRACKET: special brackets-only layer for programming +* BRACKET: special brackets-only layer for programming. Activated by pressing left capslock (OSL) * SHORTCUTS: sends Hyper keys for Autohotkey to interpret. I use this to switch between specific apps. * MOUSE: use mouse keys Updates ------- +2017/01/22: +* Made brackets toggle an OSL on the left capslock +* Added SHELL_LAYER + 2016/12/10: * toggle for brackets layer is now on left thumb cluster. From 3fd9aa3660331b05144f9cf7cebb60bef32a352f Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:30:18 +0100 Subject: [PATCH 22/41] SG Ergodox layout: Add
macro to media layer - Added
macro to media layer of Swiss German layout for Ergodox --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index a969393bb..54a8299cb 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -18,6 +18,7 @@ #define HTML_UL M(11) #define HTML_OL M(12) #define HTML_CODE M(13) +#define HTML_BR M(14) #define SEND_TAG(TAG) do {\ send_key(KC_NONUS_BSLASH); \ @@ -30,6 +31,13 @@ go_back_based_on_tag(TAG); \ } while (0) +#define SEND_SHORT_TAG(TAG) do {\ + send_key(KC_NONUS_BSLASH); \ + SEND_STRING(TAG); \ + SEND_STRING("&"); \ + send_larger_than(); \ + } while (0) + void send_key(uint16_t keycode); void go_back_based_on_tag(char* tag); void send_larger_than(void); @@ -130,7 +138,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | |MsLeft|MsDown|MsRght| |------| |------| | | |H_LI | | Play | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |H_CODE| | | | | | | | | Prev | Next | | | + * | | |H_CODE| |H_BR | | | | | | | Prev | Next | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | * `----------------------------------' `----------------------------------' @@ -147,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RESET, 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, HTML_CODE, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, HTML_CODE, KC_TRNS, HTML_BR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, @@ -202,6 +210,10 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) SEND_TAG("code"); } break; + case 14: + if (record->event.pressed) { + SEND_SHORT_TAG("br"); + } } return MACRO_NONE; }; From 5c4a73d788470a3fc53b8dd06b808cc662d37795 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:32:40 +0100 Subject: [PATCH 23/41] SG Ergodox layout: Add ENTER to left keyboard - Swiss German Ergodox layout: Added ENTER key to left keyboard half on media layer such that the enter key is available on both halves to be able to flash both halves without an additional keyboard. --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index 54a8299cb..93e36d032 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_TRNS, KC_TRNS, + KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), @@ -145,7 +145,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-------------. ,-------------. * | | | | | | * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| + * |Enter | | | | | |Brwser| * | | |------| |------| |Back | * | | | | | | | | * `--------------------' `--------------------' From c2c8a120228fe8b8bfc15f05f4a39f35f6372b08 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:35:24 +0100 Subject: [PATCH 24/41] SG Ergodox layout: Minor code formatting changes - Swiss German Ergodox layout: Removed unnecessary spaces. --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index 93e36d032..3f90c4e63 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -197,7 +197,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) break; case 11: if (record->event.pressed) { - SEND_TAG( "ul" ); + SEND_TAG("ul"); } break; case 12: From afd2c2ee9eac95869b8f9366f8861baf64444509 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:43:46 +0100 Subject: [PATCH 25/41] SG Ergodox layout: Fixed ENTER key mapping - Swiss German Ergodox layout: Additional ENTER key was mapped to wrong layer and keyboard half. --- keyboards/ergodox/keymaps/swissgerman/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/ergodox/keymaps/swissgerman/keymap.c b/keyboards/ergodox/keymaps/swissgerman/keymap.c index 3f90c4e63..2291fb651 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keymap.c +++ b/keyboards/ergodox/keymaps/swissgerman/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_DOWN, KC_4, KC_5, KC_6, ACTION_MODS_KEY(MOD_RSFT,KC_1), KC_TRNS, KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_6), KC_1, KC_2, KC_3, ACTION_MODS_KEY(MOD_RALT,KC_NONUS_BSLASH), KC_TRNS, ACTION_MODS_KEY(MOD_RSFT,KC_MINS),KC_DOT, KC_0, KC_EQL, KC_TRNS, - KC_ENT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), @@ -159,7 +159,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, 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, RESET, KC_TRNS, KC_TRNS, HTML_UL, KC_TRNS, HTML_OL, KC_TRNS, KC_TRNS, From 08c192caea1d0c1815b86461705f23d96f010e76 Mon Sep 17 00:00:00 2001 From: Andreas Schmidt Date: Sun, 22 Jan 2017 12:57:58 +0100 Subject: [PATCH 26/41] SG Ergodox layout: Updated layout documentation - Swiss German Ergodox layout: Updated layout documentation based on previous layout changes. --- .../keymaps/swissgerman/keyboard-layout.json | 4 +++- .../swissgerman/keyboard-layout_1_2.json | 12 +++++++++--- .../swissgerman/keyboard-layout_1_2.png | Bin 56347 -> 58099 bytes 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json index 7a0397f72..6958952b4 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout.json @@ -1,6 +1,8 @@ [ { - "backcolor": "#ffffff" + "backcolor": "#ffffff", + "name": "Ergodox Swiss German Layout - Base Layer", + "author": "Andreas Schmidt (https://github.com/remigius42)" }, [ { diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json index 332f8f3b5..38a728514 100644 --- a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json +++ b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.json @@ -1,6 +1,8 @@ [ { - "backcolor": "#ffffff" + "backcolor": "#ffffff", + "name": "Ergodox Swiss German Layout - Symbol & Media Layer", + "author": "Andreas Schmidt (https://github.com/remigius42)" }, [ { @@ -257,7 +259,7 @@ "x": 1, "t": "#b81c1c\n\n\n#529151" }, - "]", + "]\n\n\nHTML br", { "x": 8.5, "t": "#b81c1c" @@ -378,10 +380,14 @@ ], [ { + "t": "#000000\n\n\n#529151", + "a": 4, "h": 2 }, - "", + "\n\n\nEnter", { + "t": "#000000", + "a": 7, "h": 2 }, "", diff --git a/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png b/keyboards/ergodox/keymaps/swissgerman/keyboard-layout_1_2.png index e0a45536902cf776d6dda0aa76804ea319b2ab44..54c4a7587c0b6683c297394ce3f0649d77f7319b 100644 GIT binary patch literal 58099 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∈I+ydYO3x@3JBdtO7nwY$1Xfmf?FCzN4a^b) zA564e!R8}^_riA!!@8Ocj~(AZgDL^kd|vM$4uXP{9pTFn=hf-zDDRnpcHNP+9BXp7 zi6rd`WPkGd{~OHM;HKhmR^0!~4{yR37`cuT%2vqOfj|LB1F1zYifo1ga`U2P0Rep< z*rBiB&97hkaTAlo0bMSkFBMa8kfOh5vulW{LoQGvn(QgIP3`SJ#*S|j5pibkcWNZ; zf;1yQLD$t6g{0aeRm7%Hr@Ofo>t#97401To3m<|1fjtXBgtH^;?U9KZ@2^26F-$Trko4_1Hql389tuQ6y2( zM!-_hu)_!kI@H4xGS~f4sjed+!KZO}&Vo82kGGEQ0~8a}{K_dny$wAdRQ<(~AnAW= zN;VwD&o;2HDgl0pz3=u8<2`Kn1oqAumqk<+U&*76!{xAkUZKW+)jj@c{OQms>7tRt zL#=r=)cw84*%WqIW8yeHzsx}-@2t{!rNon`bP*Wc=f;`#y>1HpKgPmHSmuw2kIVi_ z%4B~QZsO~AM=XH&da{eX5%9AllG$})t+BrbRuWHx{iR32#(jMU_$mxTp9ki0{`2?T zpOuuA-?q26SI7gRycsTC@JaO*{Lk-;m~aUyze1xUEH_Zj)J_+{=b_GMwq4~>khC0>Mhhe$2;0@jP8VS;mKoScTc vAU1$w)y80SlYjq*N+Vt%(_!lrWkKlf{k_fs0yfM=_|jC@A!QyubL0O2buj Date: Sun, 22 Jan 2017 12:06:14 -0500 Subject: [PATCH 27/41] Upgrade AVR 8-bit Toolchain to 3.5.4 on Travis --- .travis.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index e74744a96..b206d1451 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,6 @@ os: linux dist: trusty sudo: required language: c -compiler: avr-gcc branches: except: - /^.*-automated-build$/ @@ -12,13 +11,18 @@ env: matrix: - TARGET=all-keyboards AUTOGEN=true - TARGET=test AUTOGEN=false +before_install: + - wget http://www.atmel.com/images/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz +install: + - tar -zxf avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz + - export PATH="$PATH:$TRAVIS_BUILD_DIR/avr8-gnu-toolchain-linux_x86_64/bin" +before_script: + - avr-gcc --version script: - make $TARGET AUTOGEN=$AUTOGEN addons: apt: packages: - - avr-libc - - gcc-avr - dfu-programmer - pandoc - gcc-arm-none-eabi From 9d24943ec1285c2d5d5853390abd5eb4e0cd7a2c Mon Sep 17 00:00:00 2001 From: TerryMathews Date: Sun, 22 Jan 2017 15:37:48 -0500 Subject: [PATCH 28/41] Refactor code to eliminate duplicate defines * Moved duplicated defines out of inappropriate source files (matrix pins in keymap subdirectory) * Eliminated default keymap directory * Hardcoded serial keymap to use serial defines and EE_CONFIG * Hardcoded i2c keymap to use i2c defines --- keyboards/lets_split/config.h | 43 ---- keyboards/lets_split/keymaps/default/keymap.c | 188 ------------------ keyboards/lets_split/keymaps/i2c/config.h | 85 +------- keyboards/lets_split/keymaps/serial/config.h | 87 +------- keyboards/lets_split/rev1/config.h | 5 +- keyboards/lets_split/rev2/config.h | 4 +- 6 files changed, 16 insertions(+), 396 deletions(-) delete mode 100644 keyboards/lets_split/keymaps/default/keymap.c diff --git a/keyboards/lets_split/config.h b/keyboards/lets_split/config.h index 4db45ab0b..7df0c5752 100644 --- a/keyboards/lets_split/config.h +++ b/keyboards/lets_split/config.h @@ -20,49 +20,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x3060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Wootpatoot -#define PRODUCT Lets Split -#define DESCRIPTION A split keyboard for the cheap makers - -/* 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)) \ -) - -/* 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 - #ifdef SUBPROJECT_rev1 #include "rev1/config.h" #endif diff --git a/keyboards/lets_split/keymaps/default/keymap.c b/keyboards/lets_split/keymaps/default/keymap.c deleted file mode 100644 index 6f1f71f5f..000000000 --- a/keyboards/lets_split/keymaps/default/keymap.c +++ /dev/null @@ -1,188 +0,0 @@ -#include "lets_split.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 _COLEMAK 1 -#define _DVORAK 2 -#define _LOWER 3 -#define _RAISE 4 -#define _ADJUST 16 - -enum custom_keycodes { - QWERTY = SAFE_RANGE, - COLEMAK, - DVORAK, - LOWER, - RAISE, - ADJUST, -}; - -// 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 | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_QWERTY] = KEYMAP( \ - 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, 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 , \ - KC_LCTL, ADJUST, KC_LALT, KC_LGUI, LOWER, KC_SPC, MT(MOD_LSFT, 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 | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_COLEMAK] = KEYMAP( \ - 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 , \ - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ -), - -/* Dvorak - * ,-----------------------------------------------------------------------------------. - * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Esc | A | O | E | U | I | D | H | T | N | S | / | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | - * `-----------------------------------------------------------------------------------' - */ -[_DVORAK] = KEYMAP( \ - KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, \ - KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, \ - KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , \ - ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \ -), -[3] = KEYMAP( \ - 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_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,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, \ - _______, _______, _______, _______, _______, KC_BSPC, MT(MOD_LSFT, KC_BSPC), _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ -), -[4] = KEYMAP( \ - 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_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_NUHS, KC_NUBS, _______, _______, _______, \ - _______, _______, _______, _______, _______, KC_ENT, MT(MOD_LSFT, KC_ENT), _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY \ -), - -/* Adjust (Lower + Raise) - * ,-----------------------------------------------------------------------------------. - * | | Reset| | | | | | | | | | Del | - * |------+------+------+------+------+-------------+------+------+------+------+------| - * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | | - * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | | | | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | - * `-----------------------------------------------------------------------------------' - */ -[_ADJUST] = KEYMAP( \ - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ - _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, \ - _______, RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD, _______, _______, _______, \ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ -) -}; - -#ifdef AUDIO_ENABLE -float tone_qwerty[][2] = SONG(QWERTY_SOUND); -float tone_dvorak[][2] = SONG(DVORAK_SOUND); -float tone_colemak[][2] = SONG(COLEMAK_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 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 ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; - } - return true; -} \ No newline at end of file diff --git a/keyboards/lets_split/keymaps/i2c/config.h b/keyboards/lets_split/keymaps/i2c/config.h index 72e5ae66b..efe8bb0f2 100644 --- a/keyboards/lets_split/keymaps/i2c/config.h +++ b/keyboards/lets_split/keymaps/i2c/config.h @@ -14,89 +14,14 @@ 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 0x3060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Wootpatoot -#define PRODUCT Lets Split -#define DESCRIPTION A split keyboard for the cheap makers - -/* key matrix size */ -// Rows are doubled-up -#define MATRIX_ROWS 8 -#define MATRIX_COLS 6 - -// wiring of each half -#define MATRIX_ROW_PINS { B5, B4, E6, D7 } -#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } - -#define CATERINA_BOOTLOADER - #define USE_I2C -// Use serial if not using I2C -#ifndef USE_I2C -# define USE_SERIAL -#endif - -// #define EE_HANDS - #define I2C_MASTER_LEFT // #define I2C_MASTER_RIGHT -/* 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)) \ -) - -/* ws2812 RGB LED */ -#define RGB_DI_PIN D4 -#define RGBLIGHT_ANIMATIONS -#define RGBLED_NUM 8 // Number of LEDs -#define RGBLIGHT_HUE_STEP 10 -#define RGBLIGHT_SAT_STEP 17 -#define RGBLIGHT_VAL_STEP 17 - -/* - * 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 - +#ifdef SUBPROJECT_rev1 + #include "../../rev1/config.h" #endif +#ifdef SUBPROJECT_rev2 + #include "../../rev2/config.h" +#endif \ No newline at end of file diff --git a/keyboards/lets_split/keymaps/serial/config.h b/keyboards/lets_split/keymaps/serial/config.h index b0ad522fc..cd766cc4f 100644 --- a/keyboards/lets_split/keymaps/serial/config.h +++ b/keyboards/lets_split/keymaps/serial/config.h @@ -15,88 +15,15 @@ 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" +#define USE_SERIAL -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x3060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Wootpatoot -#define PRODUCT Lets Split -#define DESCRIPTION A split keyboard for the cheap makers +#define EE_HANDS -/* key matrix size */ -// Rows are doubled-up -#define MATRIX_ROWS 8 -#define MATRIX_COLS 6 - -// wiring of each half -#define MATRIX_ROW_PINS { B5, B4, E6, D7 } -#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } - -#define CATERINA_BOOTLOADER - -// #define USE_I2C - -// Use serial if not using I2C -#ifndef USE_I2C -# define USE_SERIAL -#endif - -// #define EE_HANDS - -#define I2C_MASTER_LEFT -// #define I2C_MASTER_RIGHT - -/* 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)) \ -) - -/* ws2812 RGB LED */ -#define RGB_DI_PIN D4 -#define RGBLIGHT_ANIMATIONS -#define RGBLED_NUM 8 // Number of LEDs -#define RGBLIGHT_HUE_STEP 10 -#define RGBLIGHT_SAT_STEP 17 -#define RGBLIGHT_VAL_STEP 17 - -/* - * 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 +#ifdef SUBPROJECT_rev1 + #include "../../rev1/config.h" #endif +#ifdef SUBPROJECT_rev2 + #include "../../rev2/config.h" +#endif \ No newline at end of file diff --git a/keyboards/lets_split/rev1/config.h b/keyboards/lets_split/rev1/config.h index 825e5ec24..4d3d382a4 100644 --- a/keyboards/lets_split/rev1/config.h +++ b/keyboards/lets_split/rev1/config.h @@ -25,7 +25,6 @@ along with this program. If not, see . #define PRODUCT_ID 0x3060 #define DEVICE_VER 0x0001 #define MANUFACTURER Wootpatoot -#define PRODUCT Lets Split #define PRODUCT Lets Split v1 #define DESCRIPTION A split keyboard for the cheap makers @@ -42,13 +41,13 @@ along with this program. If not, see . // #define USE_I2C // Use serial if not using I2C -#ifndef USE_I2C +/*#ifndef USE_I2C # define USE_SERIAL #endif // #define EE_HANDS -#define I2C_MASTER_LEFT +#define I2C_MASTER_LEFT*/ // #define I2C_MASTER_RIGHT /* COL2ROW or ROW2COL */ diff --git a/keyboards/lets_split/rev2/config.h b/keyboards/lets_split/rev2/config.h index e9689d773..ed9e106db 100644 --- a/keyboards/lets_split/rev2/config.h +++ b/keyboards/lets_split/rev2/config.h @@ -42,13 +42,13 @@ along with this program. If not, see . // #define USE_I2C // Use serial if not using I2C -#ifndef USE_I2C +/*#ifndef USE_I2C # define USE_SERIAL #endif // #define EE_HANDS -#define I2C_MASTER_LEFT +#define I2C_MASTER_LEFT*/ // #define I2C_MASTER_RIGHT /* COL2ROW or ROW2COL */ From efa526f57016f691fbdd75b1088f7e47240615ea Mon Sep 17 00:00:00 2001 From: TerryMathews Date: Sun, 22 Jan 2017 15:46:43 -0500 Subject: [PATCH 29/41] Created lines to uncomment keyboards built upside down * Reverses column order to fix left-to-right key order that occurs if PCB assembled upside down. --- keyboards/lets_split/rev1/config.h | 2 ++ keyboards/lets_split/rev2/config.h | 1 + 2 files changed, 3 insertions(+) diff --git a/keyboards/lets_split/rev1/config.h b/keyboards/lets_split/rev1/config.h index 4d3d382a4..b73a7fb34 100644 --- a/keyboards/lets_split/rev1/config.h +++ b/keyboards/lets_split/rev1/config.h @@ -36,6 +36,8 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { B5, B4, E6, D7 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } +// #define MATRIX_COL_PINS { B3, B1, F7, F6, F5, F4 } uncomment this line and comment line above if you need to reverse left-to-right key order + #define CATERINA_BOOTLOADER diff --git a/keyboards/lets_split/rev2/config.h b/keyboards/lets_split/rev2/config.h index ed9e106db..86f6ad1be 100644 --- a/keyboards/lets_split/rev2/config.h +++ b/keyboards/lets_split/rev2/config.h @@ -36,6 +36,7 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { D7, E6, B4, B5 } #define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } +// #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6 } uncomment this line and comment line above if you need to reverse left-to-right key order #define CATERINA_BOOTLOADER From a00957abca4a7c67d25450246fbe73fda09b0e72 Mon Sep 17 00:00:00 2001 From: TerryMathews Date: Sun, 22 Jan 2017 15:50:08 -0500 Subject: [PATCH 30/41] Fixed keymap matrix on rev2 * Fixed keymap matrix in rev2 so that left half and right half match when in same orientation. --- keyboards/lets_split/rev2/rev2.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/lets_split/rev2/rev2.h b/keyboards/lets_split/rev2/rev2.h index 990976de2..7c397912f 100644 --- a/keyboards/lets_split/rev2/rev2.h +++ b/keyboards/lets_split/rev2/rev2.h @@ -9,10 +9,10 @@ //void promicro_bootloader_jmp(bool program); #define KEYMAP( \ - k00, k01, k02, k03, k04, k05, k45, k44, k43, k42, k41, k40, \ - k10, k11, k12, k13, k14, k15, k55, k54, k53, k52, k51, k50, \ - k20, k21, k22, k23, k24, k25, k65, k64, k63, k62, k61, k60, \ - k30, k31, k32, k33, k34, k35, k75, k74, k73, k72, k71, k70 \ + k00, k01, k02, k03, k04, k05, k40, k41, k42, k43, k44, k45, \ + k10, k11, k12, k13, k14, k15, k50, k51, k52, k53, k54, k55, \ + k20, k21, k22, k23, k24, k25, k60, k61, k62, k63, k64, k65, \ + k30, k31, k32, k33, k34, k35, k70, k71, k72, k73, k74, k75 \ ) \ { \ { k00, k01, k02, k03, k04, k05 }, \ From 99d548c4fbf207a0d38077d655bcf86a92db562f Mon Sep 17 00:00:00 2001 From: TerryMathews Date: Sun, 22 Jan 2017 15:57:30 -0500 Subject: [PATCH 31/41] Missed commenting out notes at end of line --- keyboards/lets_split/rev1/config.h | 2 +- keyboards/lets_split/rev2/config.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/lets_split/rev1/config.h b/keyboards/lets_split/rev1/config.h index b73a7fb34..e5e9a1c82 100644 --- a/keyboards/lets_split/rev1/config.h +++ b/keyboards/lets_split/rev1/config.h @@ -36,7 +36,7 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { B5, B4, E6, D7 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } -// #define MATRIX_COL_PINS { B3, B1, F7, F6, F5, F4 } uncomment this line and comment line above if you need to reverse left-to-right key order +// #define MATRIX_COL_PINS { B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order #define CATERINA_BOOTLOADER diff --git a/keyboards/lets_split/rev2/config.h b/keyboards/lets_split/rev2/config.h index 86f6ad1be..07d3aa506 100644 --- a/keyboards/lets_split/rev2/config.h +++ b/keyboards/lets_split/rev2/config.h @@ -36,7 +36,7 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { D7, E6, B4, B5 } #define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } -// #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6 } uncomment this line and comment line above if you need to reverse left-to-right key order +// #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6 } //uncomment this line and comment line above if you need to reverse left-to-right key order #define CATERINA_BOOTLOADER From 89461e743efbe49092c30cbd71c51ccecbfdd8a9 Mon Sep 17 00:00:00 2001 From: Christopher Browne Date: Sun, 22 Jan 2017 19:01:07 -0500 Subject: [PATCH 32/41] More keyboard map tweaking (#1019) * Add HOME/END keys as upper/lower on arrow-up/down * Reduce .hex file size by turning off unneeded options * Put digit keypad onto left hand upon RAISE; this will sometimes be preferable to double-hits of right hand --- keyboards/planck/keymaps/cbbrowne/Makefile | 4 ++-- keyboards/planck/keymaps/cbbrowne/keymap.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/planck/keymaps/cbbrowne/Makefile b/keyboards/planck/keymaps/cbbrowne/Makefile index b1c70ace7..19e5c2a84 100644 --- a/keyboards/planck/keymaps/cbbrowne/Makefile +++ b/keyboards/planck/keymaps/cbbrowne/Makefile @@ -12,11 +12,11 @@ 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 +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. -API_SYSEX_ENABLE = yes # Enable SYSEX API (+5390) +API_SYSEX_ENABLE = no # Enable SYSEX API (+5390) # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/planck/keymaps/cbbrowne/keymap.c b/keyboards/planck/keymaps/cbbrowne/keymap.c index 2be4dab4b..0448a8d11 100644 --- a/keyboards/planck/keymaps/cbbrowne/keymap.c +++ b/keyboards/planck/keymaps/cbbrowne/keymap.c @@ -110,15 +110,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { }, [_RAISE] = { /* 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_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, QWERTY, KEYPAD, KEYPAD, ALTSLASH,_______}, - {_______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_PGUP} + {_______, KC_4, KC_5, KC_6, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, + {_______, KC_7, KC_8, KC_9, _______, _______, _______, QWERTY, KEYPAD, KEYPAD, ALTSLASH,_______}, + {_______, KC_0, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_HOME, KC_END, KC_PGUP} }, [_LOWER] = { /* LOWER */ {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, {_______, 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, QWERTY, KEYPAD, KEYPAD, ALTSLASH, _______}, - {_______, KEYPAD, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_PGUP} + {_______, KEYPAD, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_HOME, KC_END, KC_PGUP} }, [_KEYPAD] = { /* Key Pad */ {KC_ESC, USERNAME, MVERSION, KC_F10, KC_F11, KC_F12, KC_PGUP, KC_KP_ENTER, KC_7, KC_8, KC_9, KC_BSPC}, From 372af5e3f6dc2bc362dee1ea8615769d6df7f9a9 Mon Sep 17 00:00:00 2001 From: TerryMathews Date: Sun, 22 Jan 2017 22:06:53 -0500 Subject: [PATCH 33/41] More code cleanup Missed a few commented out vestigal defines in revx/config.h that had been moved to keymap/serial and i2c. --- keyboards/lets_split/rev1/config.h | 11 ----------- keyboards/lets_split/rev2/config.h | 12 ------------ 2 files changed, 23 deletions(-) diff --git a/keyboards/lets_split/rev1/config.h b/keyboards/lets_split/rev1/config.h index e5e9a1c82..2f5bde953 100644 --- a/keyboards/lets_split/rev1/config.h +++ b/keyboards/lets_split/rev1/config.h @@ -41,17 +41,6 @@ along with this program. If not, see . #define CATERINA_BOOTLOADER -// #define USE_I2C -// Use serial if not using I2C -/*#ifndef USE_I2C -# define USE_SERIAL -#endif - -// #define EE_HANDS - -#define I2C_MASTER_LEFT*/ -// #define I2C_MASTER_RIGHT - /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/lets_split/rev2/config.h b/keyboards/lets_split/rev2/config.h index 07d3aa506..b34d7c004 100644 --- a/keyboards/lets_split/rev2/config.h +++ b/keyboards/lets_split/rev2/config.h @@ -40,18 +40,6 @@ along with this program. If not, see . #define CATERINA_BOOTLOADER -// #define USE_I2C - -// Use serial if not using I2C -/*#ifndef USE_I2C -# define USE_SERIAL -#endif - -// #define EE_HANDS - -#define I2C_MASTER_LEFT*/ -// #define I2C_MASTER_RIGHT - /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW From 841d7e6a1d74b1fc45575ed551132ec27353ebf3 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Mon, 23 Jan 2017 13:55:24 -0500 Subject: [PATCH 34/41] turn off rgb_midi in ez --- keyboards/ergodox/ez/config.h | 2 +- keyboards/ergodox/ez/ez.c | 8 ++++---- quantum/process_keycode/process_music.c | 1 + 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/keyboards/ergodox/ez/config.h b/keyboards/ergodox/ez/config.h index 6a8c66d7d..e4f95c302 100644 --- a/keyboards/ergodox/ez/config.h +++ b/keyboards/ergodox/ez/config.h @@ -49,7 +49,7 @@ along with this program. If not, see . #define RGBLIGHT_SAT_STEP 255 #define RGBLIGHT_VAL_STEP 12 -#define RGB_MIDI +// #define RGB_MIDI #define RGBW_BB_TWI #define RGBW 1 diff --git a/keyboards/ergodox/ez/ez.c b/keyboards/ergodox/ez/ez.c index 039e4c6bb..3e19f2302 100644 --- a/keyboards/ergodox/ez/ez.c +++ b/keyboards/ergodox/ez/ez.c @@ -52,9 +52,9 @@ uint8_t init_mcp23018(void) { // I2C subsystem - uint8_t sreg_prev; - sreg_prev=SREG; - cli(); + // uint8_t sreg_prev; + // sreg_prev=SREG; + // cli(); if (i2c_initialized == 0) { i2c_init(); // on pins D(1,0) i2c_initialized++; @@ -83,7 +83,7 @@ uint8_t init_mcp23018(void) { out: i2c_stop(); - SREG=sreg_prev; + // SREG=sreg_prev; return mcp23018_status; } diff --git a/quantum/process_keycode/process_music.c b/quantum/process_keycode/process_music.c index ca68bef6c..1e2648bff 100644 --- a/quantum/process_keycode/process_music.c +++ b/quantum/process_keycode/process_music.c @@ -114,6 +114,7 @@ bool process_music(uint16_t keycode, keyrecord_t *record) { music_sequence_interval+=10; return false; } + #define MUSIC_MODE_GUITAR #ifdef MUSIC_MODE_CHROMATIC float freq = ((float)220.0)*pow(2.0, -5.0)*pow(2.0,(music_starting_note + record->event.key.col + music_offset)/12.0+(MATRIX_ROWS - record->event.key.row)); From a777495683128fc56aa2d0081f27ff4c5c86d219 Mon Sep 17 00:00:00 2001 From: SjB Date: Mon, 23 Jan 2017 22:01:33 -0500 Subject: [PATCH 35/41] fix: infinity60 keyboard was not using quantum features. the quantum matrix codes where not being initialized or/and called so no feature of the quantum firmware could be used. These codes have been added and now we can enjoy the quantum firmware goodness. --- keyboards/infinity60/infinity60.c | 15 +++++++++++++++ keyboards/infinity60/matrix.c | 3 +++ 2 files changed, 18 insertions(+) diff --git a/keyboards/infinity60/infinity60.c b/keyboards/infinity60/infinity60.c index e471250fe..fdeed5124 100644 --- a/keyboards/infinity60/infinity60.c +++ b/keyboards/infinity60/infinity60.c @@ -15,3 +15,18 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "infinity60.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(); +} + diff --git a/keyboards/infinity60/matrix.c b/keyboards/infinity60/matrix.c index d2f185288..b6ccf86c3 100644 --- a/keyboards/infinity60/matrix.c +++ b/keyboards/infinity60/matrix.c @@ -62,6 +62,8 @@ void matrix_init(void) #endif memset(matrix, 0, MATRIX_ROWS); memset(matrix_debouncing, 0, MATRIX_ROWS); + + matrix_init_quantum(); } uint8_t matrix_scan(void) @@ -146,6 +148,7 @@ uint8_t matrix_scan(void) } debouncing = false; } + matrix_scan_quantum(); return 1; } From 9111cc00f587188c68d3ed0379aae6675ad8d377 Mon Sep 17 00:00:00 2001 From: SjB Date: Tue, 24 Jan 2017 00:24:01 -0500 Subject: [PATCH 36/41] updated all the other keymaps to support the new changes. qmk firmware requires the matrix_init_user and matrix_scan_user function to be implementated. Added these function to all the existing keymaps. --- keyboards/infinity60/keymaps/default/keymap.c | 9 +++++++++ keyboards/infinity60/keymaps/depariel/keymap.c | 9 +++++++++ keyboards/infinity60/keymaps/hasu/keymap.c | 10 ++++++++++ 3 files changed, 28 insertions(+) diff --git a/keyboards/infinity60/keymaps/default/keymap.c b/keyboards/infinity60/keymaps/default/keymap.c index 443412857..8347c94b4 100644 --- a/keyboards/infinity60/keymaps/default/keymap.c +++ b/keyboards/infinity60/keymaps/default/keymap.c @@ -46,3 +46,12 @@ const uint16_t fn_actions[] = { }; +// 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) { + +}; diff --git a/keyboards/infinity60/keymaps/depariel/keymap.c b/keyboards/infinity60/keymaps/depariel/keymap.c index 7412b9b9d..57f9487f2 100755 --- a/keyboards/infinity60/keymaps/depariel/keymap.c +++ b/keyboards/infinity60/keymaps/depariel/keymap.c @@ -80,3 +80,12 @@ const uint16_t PROGMEM fn_actions[] = { }; +// 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) { + +}; diff --git a/keyboards/infinity60/keymaps/hasu/keymap.c b/keyboards/infinity60/keymaps/hasu/keymap.c index d3728869a..9982078c1 100644 --- a/keyboards/infinity60/keymaps/hasu/keymap.c +++ b/keyboards/infinity60/keymaps/hasu/keymap.c @@ -111,3 +111,13 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t fn_actions[] = { }; + +// 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) { + +}; From b3cf96ec2e0fee322ac6314730fa6e3e43d76cb2 Mon Sep 17 00:00:00 2001 From: Stephen Tudor Date: Wed, 25 Jan 2017 00:25:17 -0500 Subject: [PATCH 37/41] Add smt keymap for Preonic --- keyboards/preonic/keymaps/smt/Makefile | 3 + keyboards/preonic/keymaps/smt/keymap.c | 248 ++++++++++++++++++++++++ keyboards/preonic/keymaps/smt/readme.md | 1 + 3 files changed, 252 insertions(+) create mode 100644 keyboards/preonic/keymaps/smt/Makefile create mode 100644 keyboards/preonic/keymaps/smt/keymap.c create mode 100644 keyboards/preonic/keymaps/smt/readme.md diff --git a/keyboards/preonic/keymaps/smt/Makefile b/keyboards/preonic/keymaps/smt/Makefile new file mode 100644 index 000000000..3d4659ceb --- /dev/null +++ b/keyboards/preonic/keymaps/smt/Makefile @@ -0,0 +1,3 @@ +ifndef QUANTUM_DIR + include ../../../../Makefile +endif \ No newline at end of file diff --git a/keyboards/preonic/keymaps/smt/keymap.c b/keyboards/preonic/keymaps/smt/keymap.c new file mode 100644 index 000000000..4ef22bb97 --- /dev/null +++ b/keyboards/preonic/keymaps/smt/keymap.c @@ -0,0 +1,248 @@ +#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 _DVORAK 0 +#define _QWERTY 1 +#define _LOWER 2 +#define _RAISE 3 +#define _ADJUST 16 + +enum preonic_keycodes { + DVORAK = SAFE_RANGE, + QWERTY, + COLEMAK, + 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] = { + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | ` | 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 |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = { + {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_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, SFT_T(KC_ENT)}, + {BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | 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_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL}, + {_______, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {_______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | F1 | F2 | F3 | F4 | F5 | F6 | 4 | 5 | 6 | Home |PageUp| + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 | 1 | 2 | 3 | End |PageDn| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = { + {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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, + {_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_4, KC_5, KC_6, KC_HOME, KC_PGUP}, + {_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_1, KC_2, KC_3, KC_END, KC_PGDN}, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | - | = | [ | ] | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = { + {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_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL}, + {_______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, + {_______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, + {_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} +}, + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | |Aud on|AudOff|AGnorm|AGswap|Dvorak|Qwerty| | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_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}, + {_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, DVORAK, QWERTY, _______, _______, _______}, + {_______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______}, + {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______} +} + + +}; + +#ifdef AUDIO_ENABLE +float tone_startup[][2] = { + {NOTE_B5, 20}, + {NOTE_B6, 8}, + {NOTE_DS6, 20}, + {NOTE_B6, 8} +}; + +float tone_dvorak[][2] = SONG(DVORAK_SOUND); +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 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 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/smt/readme.md b/keyboards/preonic/keymaps/smt/readme.md new file mode 100644 index 000000000..e911968dd --- /dev/null +++ b/keyboards/preonic/keymaps/smt/readme.md @@ -0,0 +1 @@ +# The default Preonic layout - largely based on the Planck's \ No newline at end of file From 51fe4f0d3429387ee512c22c5c1daffe63e2db9a Mon Sep 17 00:00:00 2001 From: Stephen Tudor Date: Wed, 25 Jan 2017 00:55:40 -0500 Subject: [PATCH 38/41] Update readme for smt Preonic keymap --- keyboards/preonic/keymaps/smt/readme.md | 86 ++++++++++++++++++++++++- 1 file changed, 85 insertions(+), 1 deletion(-) diff --git a/keyboards/preonic/keymaps/smt/readme.md b/keyboards/preonic/keymaps/smt/readme.md index e911968dd..b2052b37c 100644 --- a/keyboards/preonic/keymaps/smt/readme.md +++ b/keyboards/preonic/keymaps/smt/readme.md @@ -1 +1,85 @@ -# The default Preonic layout - largely based on the Planck's \ No newline at end of file +# smt's Preonic keymap + +This keymap is primarily based on the default Preonic keymap, which in turn is derived from Planck's default. + +Notable differences from the default are: + +1. **Dvorak by default** + + I happen to type in Dvorak, and prefer that layer to be the default on my keyboard. This is easy enough to switch around with Qwerty, Colemak, or whatever. + +2. **Right Shift** + + I use both the left and right shift keys when I type. When I want to modify a key with shift, I hold shift with the hand opposite the one typing the key. In the default keymap, Enter is where shift would be on a standard keyboard layout. Oh, muscle memory. + + Thankfully, QMK supports [mod-tap](https://github.com/jackhumbert/qmk_firmware/wiki#fun-with-modifier-keys) keys, and this allows me to set the Enter key to send a modifier (MOD_LSFT) when held, and KC_ENT when tapped. Awesome! + +## Dvorak (default) + +``` +,-----------------------------------------------------------------------------------. +| ` | 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 |Enter | +|------+------+------+------+------+------+------+------+------+------+------+------| +| Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | +`-----------------------------------------------------------------------------------' +``` + +## Qwerty (same as default) + +``` +,-----------------------------------------------------------------------------------. +| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | +|------+------+------+------+------+------+------+------+------+------+------+------| +| Tab | Q | W | E | R | T | Y | U | I | O | P | Del | +|------+------+------+------+------+-------------+------+------+------+------+------| +| 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 | +`-----------------------------------------------------------------------------------' +``` + +## Lower + +This is where I put the number row, a numpad cluster, function keys, and some light navigation via Home/End/PageUp/PageDn. Like the "Raise" layer, the top row is redundant to help with Planck compatibility. + +``` +,-----------------------------------------------------------------------------------. +| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | +|------+------+------+------+------+------+------+------+------+------+------+------| +| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del | +|------+------+------+------+------+-------------+------+------+------+------+------| +| | F1 | F2 | F3 | F4 | F5 | F6 | 4 | 5 | 6 | Home |PageUp| +|------+------+------+------+------+------|------+------+------+------+------+------| +| | F7 | F8 | F9 | F10 | F11 | F12 | 1 | 2 | 3 | End |PageDn| +|------+------+------+------+------+------+------+------+------+------+------+------| +| | | | | | | | Next | Vol- | Vol+ | Play | +`-----------------------------------------------------------------------------------' +``` + +## Raise + +As a developer, it makes the most sense for me to group all the commonly-used symbols that don't fit on the main layer. In particular, having the dual-column of parens-braces-brackets really helps a lot. + +I haven't completely filled this layer, which leaves room for future mappings and macros. + +``` +,-----------------------------------------------------------------------------------. +| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | +|------+------+------+------+------+-------------+------+------+------+------+------| +| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | +|------+------+------+------+------+-------------+------+------+------+------+------| +| | | | | | | | _ | + | { | } | | | +|------+------+------+------+------+------|------+------+------+------+------+------| +| | | | | | | | - | = | [ | ] | \ | +|------+------+------+------+------+------+------+------+------+------+------+------| +| | | | | | | | Next | Vol- | Vol+ | Play | +`-----------------------------------------------------------------------------------' +``` From 938422ce9901b7e15c738d6abaa78e0076ebdc84 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Wed, 25 Jan 2017 10:02:01 -0500 Subject: [PATCH 39/41] layer defines to enum --- keyboards/planck/keymaps/default/keymap.c | 17 ++++++++++------- keyboards/preonic/keymaps/default/keymap.c | 15 +++++++++------ 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/keyboards/planck/keymaps/default/keymap.c b/keyboards/planck/keymaps/default/keymap.c index ddbe4d7b2..1b1b998b2 100644 --- a/keyboards/planck/keymaps/default/keymap.c +++ b/keyboards/planck/keymaps/default/keymap.c @@ -14,13 +14,16 @@ extern keymap_config_t keymap_config; // 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 _PLOVER 5 -#define _ADJUST 16 + +enum planck_layers { + _QWERTY, + _COLEMAK, + _DVORAK, + _LOWER, + _RAISE, + _PLOVER, + _ADJUST +}; enum planck_keycodes { QWERTY = SAFE_RANGE, diff --git a/keyboards/preonic/keymaps/default/keymap.c b/keyboards/preonic/keymaps/default/keymap.c index 78b4997a8..3313af945 100644 --- a/keyboards/preonic/keymaps/default/keymap.c +++ b/keyboards/preonic/keymaps/default/keymap.c @@ -9,12 +9,15 @@ // 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 _ADJUST 16 + +enum preonic_layers { + _QWERTY, + _COLEMAK, + _DVORAK, + _LOWER, + _RAISE, + _ADJUST +}; enum preonic_keycodes { QWERTY = SAFE_RANGE, From 6546dddddb883b76243fd4088a5c7b38bd050c0d Mon Sep 17 00:00:00 2001 From: Stephen Tudor Date: Wed, 25 Jan 2017 10:57:42 -0500 Subject: [PATCH 40/41] Remove COLEMAK from preonic_keycodes enum --- keyboards/preonic/keymaps/smt/keymap.c | 1 - 1 file changed, 1 deletion(-) diff --git a/keyboards/preonic/keymaps/smt/keymap.c b/keyboards/preonic/keymaps/smt/keymap.c index 4ef22bb97..5465d543a 100644 --- a/keyboards/preonic/keymaps/smt/keymap.c +++ b/keyboards/preonic/keymaps/smt/keymap.c @@ -18,7 +18,6 @@ enum preonic_keycodes { DVORAK = SAFE_RANGE, QWERTY, - COLEMAK, LOWER, RAISE, BACKLIT From 1b20243092002637d0020b341801e5e26a61fd2f Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Thu, 26 Jan 2017 01:26:17 -0500 Subject: [PATCH 41/41] Add gitter image, start update to qmk org --- readme.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/readme.md b/readme.md index d33c3ad01..71f756667 100644 --- a/readme.md +++ b/readme.md @@ -1,6 +1,6 @@ # Quantum Mechanical Keyboard Firmware -[![Build Status](https://travis-ci.org/jackhumbert/qmk_firmware.svg?branch=master)](https://travis-ci.org/jackhumbert/qmk_firmware) +[![Build Status](https://travis-ci.org/jackhumbert/qmk_firmware.svg?branch=master)](https://travis-ci.org/jackhumbert/qmk_firmware) [![Gitter](https://badges.gitter.im/qmk/qmk_firmware.svg)](https://gitter.im/qmk/qmk_firmware?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) This is a keyboard firmware based on the [tmk_keyboard firmware](http://github.com/tmk/tmk_keyboard) with some useful features for Atmel AVR controllers, and more specifically, the [OLKB product line](http://olkb.com), the [ErgoDox EZ](http://www.ergodox-ez.com) keyboard, and the [Clueboard product line](http://clueboard.co/). @@ -23,7 +23,7 @@ The project also includes community support for [lots of other keyboards](/keybo QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, [Hasu](https://github.com/tmk). This repo used to be a fork of [TMK](https://github.com/tmk/tmk_keyboard), and we are incredibly grateful for his founding contributions to the firmware. We've had to break the fork due to purely technical reasons - it simply became too different over time, and we've had to start refactoring some of the basic bits and pieces. We are huge fans of TMK and Hasu :) -This documentation is edited and maintained by Erez Zukerman of ErgoDox EZ. If you spot any typos or inaccuracies, please [open an issue](https://github.com/jackhumbert/qmk_firmware/issues/new). +This documentation is edited and maintained by Erez Zukerman of ErgoDox EZ. If you spot any typos or inaccuracies, please [open an issue](https://github.com/qmk/qmk_firmware/issues/new). The OLKB product firmwares are maintained by [Jack Humbert](https://github.com/jackhumbert), the Ergodox EZ by [Erez Zukerman](https://github.com/ezuk), and the Clueboard by [Zach White](https://github.com/skullydazed). @@ -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 Wiki**](https://github.com/jackhumbert/qmk_firmware/wiki) - the entirety of the readme has been moved here +* [**The Wiki**](https://github.com/qmk/qmk_firmware/wiki) - the entirety of the readme has been moved here * 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.