From 3a453a03ed5f029bb9cf23955e87789245d39a22 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:00:34 +0100 Subject: Atreus62 first semi-final draft --- keyboards/atreus62/keymaps/mneme/keymap.c | 316 ++++++++++++++++++++++++++++++ 1 file changed, 316 insertions(+) create mode 100644 keyboards/atreus62/keymaps/mneme/keymap.c (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c new file mode 100644 index 000000000..8c3f8aa43 --- /dev/null +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -0,0 +1,316 @@ +#include +#include "atreus62.h" +#include "led.h" +#include "action_layer.h" +#include "action_util.h" + +//avrdude -p atmega32u4 -P /dev/tty.usbmodem1411 -c avr109 -U flash:w:atreus63_default.hex +/* + *WINDOWS SWEDISH + */ +#define KN_HALF KC_GRV // 1/2 +#define KN_PLUS KC_MINS // + +#define KN_ACUT KC_EQL // ´ +#define KN_AO KC_LBRC // Å +#define KN_UMLA KC_RBRC // ¨ +#define KN_OE KC_SCLN // Ö +#define KN_AE KC_QUOT // Ä +#define KN_QUOT KC_NUHS // ' +#define KN_LABK KC_NUBS // < +#define KN_MINS KC_SLSH // - +#define KN_EXLM LSFT(KC_1) // ! +#define KN_DQT LSFT(KC_2) // " +#define KN_AT RALT(KC_2) // @ +#define KN_HASH LSFT(KC_3) // # +#define KN_DLR RALT(KC_4) // $ +#define KN_PERC LSFT(KC_5) // % +#define KN_AMPR LSFT(KC_6) // & +#define KN_SLSH LSFT(KC_7) // / +#define KN_LPRN LSFT(KC_8) // ( +#define KN_RPRN LSFT(KC_9) // ) +#define KN_EQL LSFT(KC_0) // = +#define KN_UNDS LSFT(KN_MINS) // _ +#define KN_QUES LSFT(KN_PLUS) // ? +#define KN_GRAV LSFT(KN_ACUT) // ` +#define KN_LCBR RALT(KC_7) // { +#define KN_RCBR RALT(KC_0) // } +#define KN_LBRC RALT(KC_8) // [ +#define KN_RBRC RALT(KC_9) // ] +#define KN_RABK LSFT(KN_LABK) // < +#define KN_COLN LSFT(KC_DOT) // : +#define KN_SCLN LSFT(KC_COMM) // : +#define KN_PIPE RALT(KN_LABK) // | +#define KN_QUES LSFT(KN_PLUS) // ? +#define KN_CIRC LSFT(KN_UMLA) // ^ +#define KN_ASTR LSFT(KN_QUOT) // * +#define KN_TILD RALT(KN_UMLA) // ~ +#define KN_BSLS RALT(KN_PLUS) // + +#define OSM_LCTL OSM(MOD_LCTL) +#define OSM_LALT OSM(MOD_LALT) +#define OSM_LSFT OSM(MOD_LSFT) + +#define KC_HYP LSFT(LALT(LCTL(KC_LGUI))) + +#define KC_COPY LCTL(KC_C) +#define KC_PASTE LCTL(KC_V) +#define KC_UNDO LCTL(KC_Z) +#define KC_REDO LCTL(LSFT(KC_Z)) + +// Layers +enum { + BASE = 0, + NAV, + SYM +}; + +//Macros +enum { + KF_1 = 0, // 1, F1 + KF_2, // ... + KF_3, + KF_4, + KF_5, + KF_6, + KF_7, + KF_8, + KF_9, + KF_10, + KF_11, + KF_12 +}; + +// Tapdance +enum { + TD_FUN = 0, + TD_EQ +}; + +//Custom keycodes +enum { + PLACEHOLDER = SAFE_RANGE +}; + +//State and timers +uint16_t kf_timers[12]; + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [BASE] = { + + { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, + { KC_HYP ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, + { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_TAB ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + + }, + [NAV] = { + + { KC_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_HOME ,KC_UP ,KC_END ,KC_PGUP ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_PGDN ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F11 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } + + }, + [SYM] = { + + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TD(TD_EQ) ,KC_NO ,TD(TD_FUN) ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KN_LABK ,KN_RABK ,KN_LCBR ,KN_RCBR ,KN_PLUS ,KC_NO ,KN_AT ,KN_DQT ,KN_QUOT ,KN_GRAV ,KN_SLSH ,KC_TRNS }, + { KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_SCLN ,KN_COLN ,KN_AMPR ,KN_PIPE ,KC_TRNS }, + { KC_TRNS ,KN_DLR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KC_COMM ,KC_DOT ,KN_QUES ,KN_BSLS ,KC_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 } + + } +}; + +#define TAP_ONCE(code) \ + register_code (code); \ + unregister_code (code) + +static void m_tapn (uint8_t code, ...) { + uint8_t kc = code; + va_list ap; + + va_start(ap, code); + do { + register_code(kc); + unregister_code(kc); + wait_ms(50); + kc = va_arg(ap, int); + } while (kc != 0); + va_end(ap); +} + +static void m_handle_kf (keyrecord_t *record, uint8_t id) { + uint8_t code = id - KF_1; + + if (record->event.pressed) { + kf_timers[code] = timer_read (); + } else { + uint8_t kc_base; + uint8_t long_press = (kf_timers[code] && timer_elapsed (kf_timers[code]) > TAPPING_TERM); + + kf_timers[code] = 0; + + switch(id){ + case KF_1 ... KF_10: + if (long_press) { + // Long press + kc_base = KC_F1; + } else { + kc_base = KC_1; + } + code += kc_base; + break; + case KF_11: + code = long_press ? KC_F11 : KC_ESC; + break; + case KF_12: + code = long_press ? KC_F12 : KC_PLUS; + break; + } + register_code (code); + unregister_code (code); + } +} + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch (id) { + case KF_1 ... KF_12: + m_handle_kf(record, id); + break; + } + return MACRO_NONE; +}; + +// Custom keycodes +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + bool queue = true; + + //Cancle one-shot mods. + switch (keycode) { + case KC_ESC: + if (record->event.pressed && get_oneshot_mods() && !has_oneshot_mods_timed_out()) { + clear_oneshot_mods(); + queue = false; + } + break; + } + return queue; +} + +// TAP DANCE SETTINGS +void dance_eq (qk_tap_dance_state_t *state, void *user_data) { + switch (state->count) { + case 1: // === + register_code(KC_LSHIFT); + m_tapn(KC_0, KC_0, KC_0, 0); + unregister_code(KC_LSHIFT); + break; + case 2: + register_code(KC_LSHIFT); + m_tapn(KC_1, KC_0, KC_0, 0); + unregister_code(KC_LSHIFT); + break; + default: + reset_tap_dance(state); + } +} + +void dance_fun (qk_tap_dance_state_t *state, void *user_data) { + switch (state->count) { + case 1: // => + register_code(KC_LSHIFT); + m_tapn(KC_0, KN_LABK, 0); + unregister_code(KC_LSHIFT); + break; + case 2: // () => {} + register_code(KC_LSHIFT); + m_tapn(KC_8, KC_9, KC_SPC, KC_0, KN_LABK, KC_SPC, 0); + unregister_code(KC_LSHIFT); + register_code(KC_RALT); + m_tapn(KC_7, 0); + unregister_code(KC_RALT); + TAP_ONCE(KC_ENT); + break; + default: + reset_tap_dance(state); + } +} + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_FUN] = ACTION_TAP_DANCE_FN (dance_fun) + ,[TD_EQ] = ACTION_TAP_DANCE_FN (dance_eq) +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + set_unicode_input_mode(UC_WINC); +}; + +LEADER_EXTERNS(); +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + LEADER_DICTIONARY() { + leading = false; + leader_end(); + SEQ_ONE_KEY(KC_L){ + register_code(KC_RGUI); + TAP_ONCE(KC_L); + unregister_code(KC_RGUI); + }; // Todo + + SEQ_TWO_KEYS(KC_F, KC_S){ + register_code(KC_LCTRL); + TAP_ONCE(KC_S); + unregister_code(KC_LCTRL); + }; // Todo + + SEQ_TWO_KEYS(KC_B, KC_D){ + register_code(KC_LCTRL); + TAP_ONCE(KC_W); + unregister_code(KC_LCTRL); + }; // Todo + + SEQ_ONE_KEY(KC_SLSH){ + register_code(KC_LCTRL); + TAP_ONCE(KC_F); + unregister_code(KC_LCTRL); + } + + SEQ_TWO_KEYS (KC_S, KC_S) { + // ¯\_(ツ)_/¯ + unicode_input_start(); register_hex(0xaf); unicode_input_finish(); + register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0xaf); unicode_input_finish(); + } + + SEQ_TWO_KEYS (KC_S, KC_F) { + // 凸(ツ)凸 + unicode_input_start(); register_hex(0x51F8); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); + register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + unicode_input_start (); register_hex(0x51F8); unicode_input_finish(); + } + + SEQ_TWO_KEYS (KC_S, KC_L) { + // λ + unicode_input_start(); + register_hex(0x03bb); + unicode_input_finish(); + } + }; +}; -- cgit v1.2.3 From e491f5a4d0465c1499e14183358730cf73d0ceaf Mon Sep 17 00:00:00 2001 From: David Olsson Date: Wed, 11 Jan 2017 23:41:07 +0100 Subject: Readme + minor change to make it match reality. --- keyboards/atreus62/keymaps/mneme/README.md | 56 +++++++++++++++++++++++++- keyboards/atreus62/keymaps/mneme/img/base.png | Bin 0 -> 458762 bytes keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 0 -> 268634 bytes keyboards/atreus62/keymaps/mneme/img/sym.png | Bin 0 -> 433342 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 18 +++------ 5 files changed, 60 insertions(+), 14 deletions(-) create mode 100644 keyboards/atreus62/keymaps/mneme/img/base.png create mode 100644 keyboards/atreus62/keymaps/mneme/img/fun.png create mode 100644 keyboards/atreus62/keymaps/mneme/img/sym.png (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 54f5e21ab..b4dc89625 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -1,2 +1,54 @@ -Keymap that owes just about everything to Algernon. -Check out his keymap for the Ergodox. It's pretty damned amazing. + + +Mnemes Swedish Bonaza +======================= + +My Layout in process, most of the code is shamelessly stolen from [algernons][algernon] excellent layout + + [algernon]: https://github.com/algernon/ergodox-layout + +It's for Windows (current work forces me to) and Swedish (matter of birth) so ymmw. + +## Table of Contents + +* [Layouts](#layouts) + - [Base layer](#base-layer) + - [Fun layer](#fun-layer) + - [Nav layer](#nav-layer) + - [LED states](#led-states) + +# Layouts + +## Base layer + +![Base layer](img/base.png) + + +* The number row doubles as a function row. Short presses produces numbers, long presses produces Fxx +* The `Shift`, `Alt`, and `Control` modifiers are one-shot. +* `Backspace` and `Enter` doubles as switches to the `sym` layer when held +* The `ESC` key also doubles as a one-shot cancel key. +* The **Lead** key is followed by a sequence of keys. + - `LEAD l` : `lgui+l`. + - `LEAD s l` : `λ`. + - `LEAD s s` : `¯\_(ツ)_/¯` + - `LEAD s f` : `凸(ツ)凸` + - `LEAD f s` : `ctrl+s` + - `LEAD b d` : `ctrl+w` + + +## Nav layer + +![Fun layer](img/fun.png) + +Basic navigation on the right hand and modifiers close +by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. + +## Sym layer + +![Sym layer](img/sym.png) + +Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. + +# License + GPL-3+ diff --git a/keyboards/atreus62/keymaps/mneme/img/base.png b/keyboards/atreus62/keymaps/mneme/img/base.png new file mode 100644 index 000000000..86907d544 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/base.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png new file mode 100644 index 000000000..a58933d96 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/sym.png b/keyboards/atreus62/keymaps/mneme/img/sym.png new file mode 100644 index 000000000..11b5bd4b0 Binary files /dev/null and b/keyboards/atreus62/keymaps/mneme/img/sym.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 8c3f8aa43..56d637120 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -44,7 +44,7 @@ #define KN_CIRC LSFT(KN_UMLA) // ^ #define KN_ASTR LSFT(KN_QUOT) // * #define KN_TILD RALT(KN_UMLA) // ~ -#define KN_BSLS RALT(KN_PLUS) // +#define KN_BSLS RALT(KN_PLUS) // #define OSM_LCTL OSM(MOD_LCTL) #define OSM_LALT OSM(MOD_LALT) @@ -110,8 +110,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [NAV] = { { KC_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_HOME ,KC_UP ,KC_END ,KC_PGUP ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_PGDN ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F11 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } @@ -281,19 +281,13 @@ void matrix_scan_user(void) { unregister_code(KC_LCTRL); }; // Todo - SEQ_ONE_KEY(KC_SLSH){ - register_code(KC_LCTRL); - TAP_ONCE(KC_F); - unregister_code(KC_LCTRL); - } - SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); + register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0xaf); unicode_input_finish(); } @@ -302,7 +296,7 @@ void matrix_scan_user(void) { unicode_input_start(); register_hex(0x51F8); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); - register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + register_code (KC_RSFT); TAP_ONCE (KC_9); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x51F8); unicode_input_finish(); } -- cgit v1.2.3 From ed975f2454692fec28539a7014116beeb21b4c9e Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 00:14:42 +0100 Subject: Remove comments and change to correct KN_PLUS instead of KC_PLUS. --- keyboards/atreus62/keymaps/mneme/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 56d637120..eca452b77 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -170,7 +170,7 @@ static void m_handle_kf (keyrecord_t *record, uint8_t id) { code = long_press ? KC_F11 : KC_ESC; break; case KF_12: - code = long_press ? KC_F12 : KC_PLUS; + code = long_press ? KC_F12 : KN_PLUS; break; } register_code (code); @@ -267,19 +267,19 @@ void matrix_scan_user(void) { register_code(KC_RGUI); TAP_ONCE(KC_L); unregister_code(KC_RGUI); - }; // Todo + }; SEQ_TWO_KEYS(KC_F, KC_S){ register_code(KC_LCTRL); TAP_ONCE(KC_S); unregister_code(KC_LCTRL); - }; // Todo + }; SEQ_TWO_KEYS(KC_B, KC_D){ register_code(KC_LCTRL); TAP_ONCE(KC_W); unregister_code(KC_LCTRL); - }; // Todo + }; SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ -- cgit v1.2.3 From b2419b31d3d4198192a1b5fb78b1c2e8ade0ce87 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Thu, 12 Jan 2017 15:36:14 +0100 Subject: - Change docs to match keymap. - Switched around modifiers on the function layer to match muscle memory. - Added support for application switching. --- keyboards/atreus62/keymaps/mneme/README.md | 8 ++-- keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 268634 -> 430634 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 63 +++++++++++++++++++-------- 3 files changed, 50 insertions(+), 21 deletions(-) (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 1461f6c52..5bac545fc 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -33,8 +33,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym - `LEAD s l` : `λ`. - `LEAD s s` : `¯\_(ツ)_/¯` - `LEAD s f` : `凸(ツ)凸` - - `LEAD f s` : `ctrl+s` - - `LEAD b d` : `ctrl+w` + - `LEAD a *` : Application switching based on position in start menu. Very specific to my computer. ## Nav layer @@ -48,7 +47,10 @@ by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. ![Sym layer](img/sym.png) -Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. +* Easy access to most symbols I use on a daily basis. Most common are on the home row, the rest are grouped as best as I could. + +- `eq` : Tapdance, produces `===` and `!==` +- `fun`: Tapdance, produces `=>` and `() => {\n` # License GPL-3+ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png index a58933d96..ec5a478c6 100644 Binary files a/keyboards/atreus62/keymaps/mneme/img/fun.png and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index eca452b77..7c1879982 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -4,7 +4,6 @@ #include "action_layer.h" #include "action_util.h" -//avrdude -p atmega32u4 -P /dev/tty.usbmodem1411 -c avr109 -U flash:w:atreus63_default.hex /* *WINDOWS SWEDISH */ @@ -101,19 +100,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = { { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, - { KC_HYP ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, - { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_TAB ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_HYP ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } }, [NAV] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F11 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_F12 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU } + { KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_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_VOLD ,KC_VOLU } }, [SYM] = { @@ -179,7 +178,6 @@ static void m_handle_kf (keyrecord_t *record, uint8_t id) { } const uint16_t PROGMEM fn_actions[] = { - }; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) @@ -269,22 +267,51 @@ void matrix_scan_user(void) { unregister_code(KC_RGUI); }; - SEQ_TWO_KEYS(KC_F, KC_S){ - register_code(KC_LCTRL); - TAP_ONCE(KC_S); - unregister_code(KC_LCTRL); - }; - SEQ_TWO_KEYS(KC_B, KC_D){ - register_code(KC_LCTRL); - TAP_ONCE(KC_W); - unregister_code(KC_LCTRL); - }; + SEQ_TWO_KEYS (KC_A, KC_W) { + //Web - chrome + register_code (KC_LGUI); TAP_ONCE (KC_1); unregister_code (KC_LGUI); + } + SEQ_TWO_KEYS (KC_A, KC_P) { + //sPotify + register_code (KC_LGUI); TAP_ONCE (KC_2); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_T) { + //Total Commander + register_code (KC_LGUI); TAP_ONCE (KC_3); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_A) { + //Atom + register_code (KC_LGUI); TAP_ONCE (KC_4); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_E) { + //Emacs + register_code (KC_LGUI); TAP_ONCE (KC_5); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_C) { + //Cmdr + register_code (KC_LGUI); TAP_ONCE (KC_6); unregister_code (KC_LGUI); + + } + SEQ_TWO_KEYS (KC_A, KC_S) { + //Slack + register_code (KC_LGUI); TAP_ONCE (KC_7); unregister_code (KC_LGUI); + } + SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ unicode_input_start(); register_hex(0xaf); unicode_input_finish(); - register_code (KC_RALT); TAP_ONCE (KN_PLUS); unregister_code (KC_RALT); + register_code (KC_LALT); + register_code (KC_LCTL); + TAP_ONCE (KN_PLUS); + unregister_code (KC_LCTL); + unregister_code (KC_LALT); + register_code (KC_RSFT); TAP_ONCE (KC_8); unregister_code (KC_RSFT); unicode_input_start (); register_hex(0x30c4); unicode_input_finish(); register_code (KC_RSFT); TAP_ONCE (KC_9); TAP_ONCE(KC_7); unregister_code (KC_RSFT); -- cgit v1.2.3 From a37e924e368d9c151a0ee307c982ae5a820a441c Mon Sep 17 00:00:00 2001 From: David Olsson Date: Mon, 16 Jan 2017 21:10:25 +0100 Subject: vi style arrow keys. Live unicode switch support --- keyboards/atreus62/keymaps/mneme/keymap.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 7c1879982..263e01f0e 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -85,16 +85,10 @@ enum { TD_EQ }; -//Custom keycodes -enum { - PLACEHOLDER = SAFE_RANGE -}; - //State and timers uint16_t kf_timers[12]; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = { @@ -109,8 +103,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [NAV] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS }, - { KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_HOME ,KC_PGDN ,KC_PGUP ,KC_END ,KC_TRNS ,KC_TRNS }, + { KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RIGHT ,KC_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_VOLD ,KC_VOLU } @@ -302,6 +296,15 @@ void matrix_scan_user(void) { register_code (KC_LGUI); TAP_ONCE (KC_7); unregister_code (KC_LGUI); } + SEQ_TWO_KEYS (KC_U, KC_L) { + set_unicode_input_mode(UC_LNX); + } + + + SEQ_TWO_KEYS (KC_U, KC_W) { + set_unicode_input_mode(UC_WINC); + } + SEQ_TWO_KEYS (KC_S, KC_S) { // ¯\_(ツ)_/¯ -- cgit v1.2.3 From 53382d9564a74ac6babfc4445e575c3de6d2bf98 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Mon, 16 Jan 2017 21:31:44 +0100 Subject: whitespace fixes --- keyboards/atreus62/keymaps/mneme/keymap.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 263e01f0e..41075f9c2 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -21,7 +21,9 @@ #define KN_DQT LSFT(KC_2) // " #define KN_AT RALT(KC_2) // @ #define KN_HASH LSFT(KC_3) // # -#define KN_DLR RALT(KC_4) // $ +#define KN_DLR LALT(KC_4) // $ +#define KN_EUR LSFT(KC_4) // $ + #define KN_PERC LSFT(KC_5) // % #define KN_AMPR LSFT(KC_6) // & #define KN_SLSH LSFT(KC_7) // / @@ -31,19 +33,19 @@ #define KN_UNDS LSFT(KN_MINS) // _ #define KN_QUES LSFT(KN_PLUS) // ? #define KN_GRAV LSFT(KN_ACUT) // ` -#define KN_LCBR RALT(KC_7) // { -#define KN_RCBR RALT(KC_0) // } -#define KN_LBRC RALT(KC_8) // [ -#define KN_RBRC RALT(KC_9) // ] +#define KN_LCBR LALT(KC_7) // { +#define KN_RCBR LALT(KC_0) // } +#define KN_LBRC LALT(KC_8) // [ +#define KN_RBRC LALT(KC_9) // ] #define KN_RABK LSFT(KN_LABK) // < #define KN_COLN LSFT(KC_DOT) // : #define KN_SCLN LSFT(KC_COMM) // : -#define KN_PIPE RALT(KN_LABK) // | +#define KN_PIPE LALT(KN_LABK) // | #define KN_QUES LSFT(KN_PLUS) // ? #define KN_CIRC LSFT(KN_UMLA) // ^ #define KN_ASTR LSFT(KN_QUOT) // * -#define KN_TILD RALT(KN_UMLA) // ~ -#define KN_BSLS RALT(KN_PLUS) // +#define KN_TILD LALT(KN_UMLA) // ~ +#define KN_BSLS LALT(KN_PLUS) // #define OSM_LCTL OSM(MOD_LCTL) #define OSM_LALT OSM(MOD_LALT) @@ -113,8 +115,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { { KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TD(TD_EQ) ,KC_NO ,TD(TD_FUN) ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }, { KC_TRNS ,KN_LABK ,KN_RABK ,KN_LCBR ,KN_RCBR ,KN_PLUS ,KC_NO ,KN_AT ,KN_DQT ,KN_QUOT ,KN_GRAV ,KN_SLSH ,KC_TRNS }, - { KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_SCLN ,KN_COLN ,KN_AMPR ,KN_PIPE ,KC_TRNS }, - { KC_TRNS ,KN_DLR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KC_COMM ,KC_DOT ,KN_QUES ,KN_BSLS ,KC_TRNS }, + { KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_CIRC ,KN_DLR ,KN_AMPR ,KN_PIPE ,KC_TRNS }, + { KC_TRNS ,KN_EUR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KN_SCLN ,KN_COLN ,KN_QUES ,KN_BSLS ,KC_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 } } -- cgit v1.2.3 From d910b94a3c9101dbe89a877236346ede1751c0da Mon Sep 17 00:00:00 2001 From: David Olsson Date: Tue, 17 Jan 2017 19:33:09 +0100 Subject: Don't change ralt to lalt, it's really not the same thing on windows. --- keyboards/atreus62/keymaps/mneme/keymap.c | 80 ++++++++++++++++--------------- 1 file changed, 41 insertions(+), 39 deletions(-) (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 41075f9c2..46edd2e08 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -7,45 +7,47 @@ /* *WINDOWS SWEDISH */ -#define KN_HALF KC_GRV // 1/2 -#define KN_PLUS KC_MINS // + -#define KN_ACUT KC_EQL // ´ -#define KN_AO KC_LBRC // Å -#define KN_UMLA KC_RBRC // ¨ -#define KN_OE KC_SCLN // Ö -#define KN_AE KC_QUOT // Ä -#define KN_QUOT KC_NUHS // ' -#define KN_LABK KC_NUBS // < -#define KN_MINS KC_SLSH // - -#define KN_EXLM LSFT(KC_1) // ! -#define KN_DQT LSFT(KC_2) // " -#define KN_AT RALT(KC_2) // @ -#define KN_HASH LSFT(KC_3) // # -#define KN_DLR LALT(KC_4) // $ -#define KN_EUR LSFT(KC_4) // $ - -#define KN_PERC LSFT(KC_5) // % -#define KN_AMPR LSFT(KC_6) // & -#define KN_SLSH LSFT(KC_7) // / -#define KN_LPRN LSFT(KC_8) // ( -#define KN_RPRN LSFT(KC_9) // ) -#define KN_EQL LSFT(KC_0) // = -#define KN_UNDS LSFT(KN_MINS) // _ -#define KN_QUES LSFT(KN_PLUS) // ? -#define KN_GRAV LSFT(KN_ACUT) // ` -#define KN_LCBR LALT(KC_7) // { -#define KN_RCBR LALT(KC_0) // } -#define KN_LBRC LALT(KC_8) // [ -#define KN_RBRC LALT(KC_9) // ] -#define KN_RABK LSFT(KN_LABK) // < -#define KN_COLN LSFT(KC_DOT) // : -#define KN_SCLN LSFT(KC_COMM) // : -#define KN_PIPE LALT(KN_LABK) // | -#define KN_QUES LSFT(KN_PLUS) // ? -#define KN_CIRC LSFT(KN_UMLA) // ^ -#define KN_ASTR LSFT(KN_QUOT) // * -#define KN_TILD LALT(KN_UMLA) // ~ -#define KN_BSLS LALT(KN_PLUS) // + /* + *WINDOWS SWEDISH + */ + #define KN_HALF KC_GRV // 1/2 + #define KN_PLUS KC_MINS // + + #define KN_ACUT KC_EQL // ´ + #define KN_AO KC_LBRC // Å + #define KN_UMLA KC_RBRC // ¨ + #define KN_OE KC_SCLN // Ö + #define KN_AE KC_QUOT // Ä + #define KN_QUOT KC_NUHS // ' + #define KN_LABK KC_NUBS // < + #define KN_MINS KC_SLSH // - + #define KN_EXLM LSFT(KC_1) // ! + #define KN_DQT LSFT(KC_2) // " + #define KN_AT RALT(KC_2) // @ + #define KN_HASH LSFT(KC_3) // # + #define KN_EUR LSFT(KC_4) // € + #define KN_DLR RALT(KC_4) // $ + #define KN_PERC LSFT(KC_5) // % + #define KN_AMPR LSFT(KC_6) // & + #define KN_SLSH LSFT(KC_7) // / + #define KN_LPRN LSFT(KC_8) // ( + #define KN_RPRN LSFT(KC_9) // ) + #define KN_EQL LSFT(KC_0) // = + #define KN_UNDS LSFT(KN_MINS) // _ + #define KN_QUES LSFT(KN_PLUS) // ? + #define KN_GRAV LSFT(KN_ACUT) // ` + #define KN_LCBR RALT(KC_7) // { + #define KN_RCBR RALT(KC_0) // } + #define KN_LBRC RALT(KC_8) // [ + #define KN_RBRC RALT(KC_9) // ] + #define KN_RABK LSFT(KN_LABK) // < + #define KN_COLN LSFT(KC_DOT) // : + #define KN_SCLN LSFT(KC_COMM) // : + #define KN_PIPE RALT(KN_LABK) // | + #define KN_QUES LSFT(KN_PLUS) // ? + #define KN_CIRC LSFT(KN_UMLA) // ^ + #define KN_ASTR LSFT(KN_QUOT) // * + #define KN_TILD RALT(KN_UMLA) // ~ + #define KN_BSLS RALT(KN_PLUS) // #define OSM_LCTL OSM(MOD_LCTL) #define OSM_LALT OSM(MOD_LALT) -- cgit v1.2.3 From aa69337cf563d7b37722aabfcd1c5bae6c185208 Mon Sep 17 00:00:00 2001 From: David Olsson Date: Sat, 11 Feb 2017 10:49:53 +0100 Subject: update readme --- keyboards/atreus62/keymaps/mneme/README.md | 4 +++- keyboards/atreus62/keymaps/mneme/config.h | 2 +- keyboards/atreus62/keymaps/mneme/img/base.png | Bin 458762 -> 457157 bytes keyboards/atreus62/keymaps/mneme/img/fun.png | Bin 430634 -> 425368 bytes keyboards/atreus62/keymaps/mneme/img/sym.png | Bin 433342 -> 433218 bytes keyboards/atreus62/keymaps/mneme/keymap.c | 10 +++++----- 6 files changed, 9 insertions(+), 7 deletions(-) (limited to 'keyboards/atreus62/keymaps/mneme/keymap.c') diff --git a/keyboards/atreus62/keymaps/mneme/README.md b/keyboards/atreus62/keymaps/mneme/README.md index 04ab070be..3231a88d2 100644 --- a/keyboards/atreus62/keymaps/mneme/README.md +++ b/keyboards/atreus62/keymaps/mneme/README.md @@ -33,6 +33,8 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym - `LEAD s l` : `λ`. - `LEAD s s` : `¯\_(ツ)_/¯` - `LEAD s f` : `凸(ツ)凸` + - `LEAD u l` : Set unicode input mode to linux. + - `LEAD s w` : Set unicode input mode to windows. - `LEAD a *` : Application switching based on position in start menu. Very specific to my computer. @@ -42,7 +44,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym Basic navigation on the right hand and modifiers close by for the left. The latter because I tend to use `ctrl+arrows` quite a lot. - + ## Sym layer ![Sym layer](img/sym.png) diff --git a/keyboards/atreus62/keymaps/mneme/config.h b/keyboards/atreus62/keymaps/mneme/config.h index 2c2a08c05..73eb0fa33 100644 --- a/keyboards/atreus62/keymaps/mneme/config.h +++ b/keyboards/atreus62/keymaps/mneme/config.h @@ -1,7 +1,7 @@ #define ONESHOT_TIMEOUT 3000 #define TAPPING_TERM 200 #define PREVENT_STUCK_MODIFIERS - +#define FORCE_NKRO #define LEADER_TIMEOUT 1000 #include "../../config.h" diff --git a/keyboards/atreus62/keymaps/mneme/img/base.png b/keyboards/atreus62/keymaps/mneme/img/base.png index 86907d544..3e77a5183 100644 Binary files a/keyboards/atreus62/keymaps/mneme/img/base.png and b/keyboards/atreus62/keymaps/mneme/img/base.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/fun.png b/keyboards/atreus62/keymaps/mneme/img/fun.png index ec5a478c6..961a19724 100644 Binary files a/keyboards/atreus62/keymaps/mneme/img/fun.png and b/keyboards/atreus62/keymaps/mneme/img/fun.png differ diff --git a/keyboards/atreus62/keymaps/mneme/img/sym.png b/keyboards/atreus62/keymaps/mneme/img/sym.png index 11b5bd4b0..5e2c80335 100644 Binary files a/keyboards/atreus62/keymaps/mneme/img/sym.png and b/keyboards/atreus62/keymaps/mneme/img/sym.png differ diff --git a/keyboards/atreus62/keymaps/mneme/keymap.c b/keyboards/atreus62/keymaps/mneme/keymap.c index 46edd2e08..2627e024f 100644 --- a/keyboards/atreus62/keymaps/mneme/keymap.c +++ b/keyboards/atreus62/keymaps/mneme/keymap.c @@ -97,11 +97,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = { - { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, - { KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, - { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, - { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, - { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_HYP ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) } + { M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) }, + { KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO }, + { OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE }, + { OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT }, + { MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,MO(SYM) ,KC_BSPC ,KC_ENT ,KC_SPC ,MO(SYM) ,KC_LEAD ,KC_LALT ,KC_LCTRL ,KC_HYP } }, [NAV] = { -- cgit v1.2.3