mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-11-23 00:47:02 +06:00
Merge pull request #265 from sboesebeck/master
ErgodoxLayoutGenerator used
This commit is contained in:
commit
a8fd65d86f
|
@ -1,60 +1,48 @@
|
||||||
#include "ergodox_ez.h"
|
#include "ergodox_ez.h"
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
#include "action_layer.h"
|
#include "action_layer.h"
|
||||||
|
#include "keymap_extras/keymap_french.h"
|
||||||
|
#include "keymap_extras/keymap_neo2.h"
|
||||||
|
#include "keymap_extras/keymap_uk.h"
|
||||||
|
#include "keymap_extras/keymap_colemak.h"
|
||||||
|
#include "keymap_extras/keymap_french_osx.h"
|
||||||
|
#include "keymap_extras/keymap_nordic.h"
|
||||||
|
#include "keymap_extras/keymap_dvorak.h"
|
||||||
|
#include "keymap_extras/keymap_german.h"
|
||||||
|
#include "keymap_extras/keymap_norwegian.c"
|
||||||
|
#include "keymap_extras/keymap_fr_ch.h"
|
||||||
#include "keymap_extras/keymap_german_osx.h"
|
#include "keymap_extras/keymap_german_osx.h"
|
||||||
|
#include "keymap_extras/keymap_spanish.h"
|
||||||
|
#include "keymap_extras/keymap_bepo.h"
|
||||||
|
|
||||||
#define BASE 0 // default layer
|
#define BASE 0
|
||||||
#define SYMB 1 // symbols
|
#define SYMB 1
|
||||||
#define MDIA 2 // media keys
|
#define MDIA 2
|
||||||
#define SMLY 3 // media keys
|
#define SMLY 3
|
||||||
#define NUMB 4 // number keys
|
#define NUMB 4
|
||||||
#define EGOS 5 // Egoshooter layer
|
#define EGOS 5
|
||||||
|
|
||||||
#define M_CTRL_CMDV 1
|
|
||||||
#define M_CTRL_CMDC 2
|
|
||||||
#define M_MEH_SH_ACUT 3
|
|
||||||
#define M_DE_OSX_PLUS_CTRLALT 12
|
|
||||||
#define M_DE_OSX_CIRC_CTRLCMD 13
|
|
||||||
#define M_TOGGLE_5 14
|
|
||||||
#define M_CTL_SFT_HASH 15
|
|
||||||
#define M_LGUI_SHFT 16
|
|
||||||
|
|
||||||
#define SM_SMILE 4
|
|
||||||
#define SM_SMIRK 5
|
|
||||||
#define SM_FROWN 6
|
|
||||||
#define SM_CRY 7
|
|
||||||
#define SM_KISS 8
|
|
||||||
#define SM_HEART 9
|
|
||||||
#define SM_LAUGH 10
|
|
||||||
#define SM_SAD 11
|
|
||||||
|
|
||||||
|
#define M_CTRL_CMDV 0
|
||||||
|
#define M_CTRL_CMDC 1
|
||||||
|
#define M_MEH_SH_ACUT 2
|
||||||
|
#define M_LGUI_SHFT 3
|
||||||
|
#define M_CTL_SFT_HASH 4
|
||||||
|
#define M_DE_OSX_CIRC_CTRLCMD 5
|
||||||
|
#define M_DE_OSX_PLUS_CTRLALT 6
|
||||||
|
#define SM_SMILE 7
|
||||||
|
#define SM_SMIRK 8
|
||||||
|
#define SM_CRY 9
|
||||||
|
#define SM_SAD 10
|
||||||
|
#define SM_HEART 11
|
||||||
|
#define SM_LAUGH 12
|
||||||
|
#define SM_KISS 13
|
||||||
|
#define SM_FROWN 14
|
||||||
|
#define M_TOGGLE_5 15
|
||||||
|
|
||||||
|
//Layout keymap.c generated with ErgodoxLayoutGenerator V1.0BETA1
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
/* Keymap 0: Basic layer
|
[BASE]=KEYMAP(
|
||||||
*
|
//left half
|
||||||
* ,-----------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | ESC | 1 | 2 | 3 | 4 | 5 |CTL_SFT/#| |CTL_SFT/#| 6 | 7 | 8 | 9 | 0 | ß |
|
|
||||||
* |--------+------+------+------+------+----------------| |---------+------+------+------+------+------+--------|
|
|
||||||
* | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | LALT | A | S | D | F | G |---------| |---------| H | J | K | L | ö | ä/RALT|
|
|
||||||
* |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------|
|
|
||||||
* | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift |
|
|
||||||
* `--------+------+------+------+------+----------------' `-------------+------+------+------+------+--------'
|
|
||||||
* |</L1| ^°/CTRL_CMD | +/CTRL_ALT | UP | DOWN| | Left | Right | CMD-SHFT| ALT-SHIFT | +/L1 |
|
|
||||||
* `------------------------------------------' `---------------------------------------------'
|
|
||||||
* ,-------------. ,---------------.
|
|
||||||
* |`/Meh | Media| | NUM | ´/Hyper |
|
|
||||||
* ,------|------|------| |------+--------+------.
|
|
||||||
* | | | Home | | PgUp | | |
|
|
||||||
* | Back-| Del |------| |------| Enter | Space|
|
|
||||||
* | Space| | 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_ESC, DE_OSX_1, DE_OSX_2, DE_OSX_3, DE_OSX_4, DE_OSX_5, M(M_CTL_SFT_HASH),
|
KC_ESC, DE_OSX_1, DE_OSX_2, DE_OSX_3, DE_OSX_4, DE_OSX_5, M(M_CTL_SFT_HASH),
|
||||||
KC_TAB, DE_OSX_Q, DE_OSX_W, DE_OSX_E, DE_OSX_R, DE_OSX_T, KC_LGUI,
|
KC_TAB, DE_OSX_Q, DE_OSX_W, DE_OSX_E, DE_OSX_R, DE_OSX_T, KC_LGUI,
|
||||||
KC_LALT, DE_OSX_A, DE_OSX_S, DE_OSX_D, DE_OSX_F, DE_OSX_G,
|
KC_LALT, DE_OSX_A, DE_OSX_S, DE_OSX_D, DE_OSX_F, DE_OSX_G,
|
||||||
|
@ -63,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
M(M_MEH_SH_ACUT), TG(MDIA),
|
M(M_MEH_SH_ACUT), TG(MDIA),
|
||||||
KC_HOME,
|
KC_HOME,
|
||||||
KC_BSPC, KC_DEL, LT(SMLY,KC_END),
|
KC_BSPC, KC_DEL, LT(SMLY,KC_END),
|
||||||
// right hand
|
//right half
|
||||||
M(M_CTL_SFT_HASH), DE_OSX_6, DE_OSX_7, DE_OSX_8, DE_OSX_9, DE_OSX_0, DE_OSX_SS,
|
M(M_CTL_SFT_HASH), DE_OSX_6, DE_OSX_7, DE_OSX_8, DE_OSX_9, DE_OSX_0, DE_OSX_SS,
|
||||||
KC_RGUI, DE_OSX_Z, DE_OSX_U, DE_OSX_I, DE_OSX_O, DE_OSX_P, DE_OSX_UE,
|
KC_RGUI, DE_OSX_Z, DE_OSX_U, DE_OSX_I, DE_OSX_O, DE_OSX_P, DE_OSX_UE,
|
||||||
DE_OSX_H, DE_OSX_J, DE_OSX_K, DE_OSX_L, DE_OSX_OE, ALT_T(DE_OSX_AE),
|
DE_OSX_H, DE_OSX_J, DE_OSX_K, DE_OSX_L, DE_OSX_OE, ALT_T(DE_OSX_AE),
|
||||||
|
@ -71,32 +59,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_LEFT, KC_RIGHT, LGUI(KC_LSFT), LALT(KC_LSFT), LT(SYMB,DE_OSX_PLUS),
|
KC_LEFT, KC_RIGHT, LGUI(KC_LSFT), LALT(KC_LSFT), LT(SYMB,DE_OSX_PLUS),
|
||||||
TG(NUMB), ALL_T(DE_OSX_ACUT),
|
TG(NUMB), ALL_T(DE_OSX_ACUT),
|
||||||
KC_PGUP,
|
KC_PGUP,
|
||||||
KC_PGDN,KC_ENT, KC_SPC
|
KC_PGDN, KC_ENT, KC_SPC),
|
||||||
),
|
|
||||||
/* Keymap 1: Symbol Layer
|
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | | F1 | F2 | F3 | F4 | F5 | | | L5 | F6 | F7 | F8 | F9 | F10 | F11 |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | | < | > | ! | ? | | | | | \ | [ | ] | < | > | ! |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | # |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | ^ | % | | | ~ | | | | | | ~ | ^ | UP | | $ |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* | | | | | | | ' | LEFT| DOWN | RIGHT | |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | | | | F13 | F12 |
|
|
||||||
* ,------|------|------| |------+------+------.
|
|
||||||
* | | | | | F14 | | |
|
|
||||||
* | | |------| |------| | |
|
|
||||||
* | | | | | F15 | | |
|
|
||||||
* `--------------------' `--------------------'
|
|
||||||
*/
|
|
||||||
// SYMBOLS
|
|
||||||
[SYMB]=KEYMAP(
|
[SYMB]=KEYMAP(
|
||||||
// left hand
|
//left half
|
||||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
|
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
|
||||||
KC_TRNS, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, DE_OSX_QST, KC_TRNS, KC_TRNS,
|
KC_TRNS, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, DE_OSX_QST, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, DE_OSX_HASH, DE_OSX_DLR, DE_OSX_BSLS, DE_OSX_SLSH, KC_DOT,
|
KC_TRNS, DE_OSX_HASH, DE_OSX_DLR, DE_OSX_BSLS, DE_OSX_SLSH, KC_DOT,
|
||||||
|
@ -105,7 +70,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_DEL, KC_TRNS,
|
KC_TRNS, KC_DEL, KC_TRNS,
|
||||||
// right hand
|
//right half
|
||||||
M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||||
KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM,
|
KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM,
|
||||||
DE_OSX_SLSH, DE_OSX_LPRN, DE_OSX_RPRN, LALT(KC_8), LALT(KC_9), DE_OSX_HASH,
|
DE_OSX_SLSH, DE_OSX_LPRN, DE_OSX_RPRN, LALT(KC_8), LALT(KC_9), DE_OSX_HASH,
|
||||||
|
@ -113,31 +78,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
DE_OSX_QUOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS,
|
DE_OSX_QUOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS,
|
||||||
KC_F13, KC_F12,
|
KC_F13, KC_F12,
|
||||||
KC_F14,
|
KC_F14,
|
||||||
KC_F15, KC_TRNS, KC_TRNS
|
KC_F15, KC_TRNS, KC_TRNS),
|
||||||
),
|
|
||||||
/* Keymap 2: Media and mouse keys
|
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | | | | | | | | | Mute | | | | | | EGOS |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | | | Lclk | MsUp | Rclk | WlUp | | | | | | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | |MsLeft|MsDown|MsRght| WlDw |------| |------|VolUp | | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | | | | MClk | | | |VolDn | | Prev | Next | Up | |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* | | | | | | | | | Left | Down | Right |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | | | | | |
|
|
||||||
* ,------|------|------| |------+------+------.
|
|
||||||
* | | | | | | |Brwser|
|
|
||||||
* | | |------| |------| |Back |
|
|
||||||
* | | | | | | | |
|
|
||||||
* `--------------------' `--------------------'
|
|
||||||
*/
|
|
||||||
// MEDIA AND MOUSE
|
|
||||||
[MDIA]=KEYMAP(
|
[MDIA]=KEYMAP(
|
||||||
|
//left half
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D,
|
KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D,
|
||||||
|
@ -146,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
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
|
//right half
|
||||||
KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
|
KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
@ -154,32 +97,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,
|
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_WBAK
|
KC_TRNS, KC_TRNS, KC_WBAK),
|
||||||
),
|
|
||||||
/* Keymap 3: Smiley layer
|
|
||||||
* making it easier to type smileys... tipp: on osx you can easily replace those smileys with the UTF-8 character using
|
|
||||||
* keyboard short commands...
|
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | | | | | | | | | :-) | ;-) | :-D | | | | |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | | | | | | | | | | :-{ | :-( | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | | | | |------| |------| <3 | :-* | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | | | | | | | | | | | | | |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* | | | | | | | | | | | r|
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | | | | | |
|
|
||||||
* ,------|------|------| |------+--------+------.
|
|
||||||
* | | | | | | | |
|
|
||||||
* | | |------| |------| | |
|
|
||||||
* | | | | | | | |
|
|
||||||
* `--------------------' `----------------------'
|
|
||||||
*/
|
|
||||||
[SMLY]=KEYMAP(
|
[SMLY]=KEYMAP(
|
||||||
|
//left half
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
@ -188,7 +108,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
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
|
//right half
|
||||||
M(SM_SMILE), M(SM_SMIRK), M(SM_LAUGH), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
M(SM_SMILE), M(SM_SMIRK), M(SM_LAUGH), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, M(SM_FROWN), M(SM_SAD), M(SM_CRY), KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, M(SM_FROWN), M(SM_SAD), M(SM_CRY), KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
M(SM_HEART), M(SM_KISS), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
M(SM_HEART), M(SM_KISS), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
@ -196,10 +116,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
),
|
|
||||||
//number pad
|
|
||||||
[NUMB]=KEYMAP(
|
[NUMB]=KEYMAP(
|
||||||
|
//left half
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS,
|
||||||
|
@ -208,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
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
|
//right half
|
||||||
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||||
KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12,
|
KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12,
|
||||||
KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, DE_OSX_MINS,
|
KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, DE_OSX_MINS,
|
||||||
|
@ -216,31 +135,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_0, KC_DOT, KC_COMM, DE_OSX_EQL, KC_TRNS,
|
KC_0, KC_DOT, KC_COMM, DE_OSX_EQL, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
),
|
|
||||||
|
|
||||||
/* Keymap 3: Egoshooter layer
|
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | | | | | | | | | L5 | | | | | | |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | | | | | | | | | | | | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | SHIFT | | | | | |------| |------| | | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | | | | | | | | | | | | | |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* | CTRL | | | | | | | | | | |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | F1 | F2 | | | |
|
|
||||||
* ,------|------|------| |------+--------+------.
|
|
||||||
* | | | F3 | | | | |
|
|
||||||
* | SPACE| CTRL|------| |------| | |
|
|
||||||
* | | | F4 | | | | |
|
|
||||||
* `--------------------' `----------------------'
|
|
||||||
*/
|
|
||||||
[EGOS]=KEYMAP(
|
[EGOS]=KEYMAP(
|
||||||
|
//left half
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
@ -249,7 +146,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_F1, KC_F2,
|
KC_F1, KC_F2,
|
||||||
KC_F3,
|
KC_F3,
|
||||||
KC_SPC, KC_LCTL, KC_F4,
|
KC_SPC, KC_LCTL, KC_F4,
|
||||||
// right hand
|
//right half
|
||||||
M(M_TOGGLE_5), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
M(M_TOGGLE_5), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
@ -257,40 +154,27 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
const uint16_t PROGMEM fn_actions[] = {
|
||||||
[1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols)
|
|
||||||
[2] = ACTION_LAYER_TAP_TOGGLE(SMLY) // FN2 - Momentary Layer 2 (Smiley)
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
{
|
{
|
||||||
static uint16_t start;
|
static uint16_t start;
|
||||||
// MACRODOWN only works in this function
|
|
||||||
switch(id) {
|
switch(id) {
|
||||||
case 0:
|
case M_TOGGLE_5:
|
||||||
|
//Macro: M_TOGGLE_5//-----------------------
|
||||||
if (record->event.pressed){
|
if (record->event.pressed){
|
||||||
register_code(KC_RSFT);
|
layer_state ^= (1<<5);
|
||||||
} else {
|
layer_state &= (1<<5);
|
||||||
unregister_code(KC_RSFT);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 1:
|
case M_CTRL_CMDC:
|
||||||
if (record->event.pressed) {
|
//Macro: M_CTRL_CMDC//-----------------------
|
||||||
start = timer_read();
|
|
||||||
return MACRO(D(LCTRL), END);
|
|
||||||
} else {
|
|
||||||
if (timer_elapsed(start) > 150) {
|
|
||||||
return MACRO(U(LCTRL), END);
|
|
||||||
} else {
|
|
||||||
return MACRO(U(LCTRL), D(LGUI), T(V), U(LGUI), END);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
if (record->event.pressed) {
|
if (record->event.pressed) {
|
||||||
start = timer_read();
|
start = timer_read();
|
||||||
return MACRO(D(LCTRL),END);
|
return MACRO(D(LCTRL),END);
|
||||||
|
@ -301,51 +185,10 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
return MACRO(U(LCTRL),D(LGUI),T(C),U(LGUI),END);
|
return MACRO(U(LCTRL),D(LGUI),T(C),U(LGUI),END);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
start = timer_read();
|
|
||||||
return MACRO(D(LCTRL),D(LSFT),D(LALT),END);
|
|
||||||
} else {
|
|
||||||
if (timer_elapsed(start) > 150){
|
|
||||||
return MACRO(U(LCTRL),U(LSFT),U(LALT),END);
|
|
||||||
} else {
|
|
||||||
return MACRO(U(LCTRL),U(LALT),T(EQL),U(LSFT),END); //cannot use DE_OSX_ACUT here, as macro needs KC_ prefix
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case M_LGUI_SHFT:
|
|
||||||
if (record->event.pressed){
|
|
||||||
return MACRO(D(LGUI),D(LSFT),END);
|
|
||||||
}else{
|
|
||||||
return MACRO(U(LGUI),U(LSFT),END);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case M_CTL_SFT_HASH:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
start=timer_read();
|
|
||||||
return MACRO(D(LCTRL),D(LSFT),END);
|
|
||||||
} else {
|
|
||||||
if (timer_elapsed(start) > 150){
|
|
||||||
return MACRO(U(LCTRL),U(LSFT),END);
|
|
||||||
} else {
|
|
||||||
return MACRO(U(LCTRL),U(LSFT),T(BSLS),END);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case M_DE_OSX_CIRC_CTRLCMD:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
start = timer_read();
|
|
||||||
return MACRO(D(LCTRL),D(LGUI),END);
|
|
||||||
} else {
|
|
||||||
if (timer_elapsed(start) > 150){
|
|
||||||
return MACRO(U(LCTRL),U(LGUI),END);
|
|
||||||
} else {
|
|
||||||
return MACRO(U(LCTRL),U(LGUI),T(NUBS),END);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case M_DE_OSX_PLUS_CTRLALT:
|
case M_DE_OSX_PLUS_CTRLALT:
|
||||||
|
//Macro: M_DE_OSX_PLUS_CTRLALT//-----------------------
|
||||||
if (record->event.pressed) {
|
if (record->event.pressed) {
|
||||||
start = timer_read();
|
start = timer_read();
|
||||||
return MACRO(D(LCTRL),D(LALT),END);
|
return MACRO(D(LCTRL),D(LALT),END);
|
||||||
|
@ -356,55 +199,128 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
return MACRO(U(LCTRL),U(LALT),T(RBRC),END);
|
return MACRO(U(LCTRL),U(LALT),T(RBRC),END);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case SM_SMILE:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(9),U(LSFT),END);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SM_SMIRK:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
return MACRO(D(LSFT),T(COMM),U(LSFT),T(SLSH),D(LSFT),T(9),U(LSFT),END);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SM_CRY:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
return MACRO(D(LSFT),T(COMM),U(LSFT),T(SLSH),D(LSFT),T(8),U(LSFT),END);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SM_SAD:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(8),U(LSFT),END);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SM_HEART:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
return MACRO(T(GRV),T(3),END);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SM_LAUGH:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(D),U(LSFT),END);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case SM_KISS:
|
case SM_KISS:
|
||||||
|
//Macro: SM_KISS//-----------------------
|
||||||
if (record->event.pressed) {
|
if (record->event.pressed) {
|
||||||
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(RBRC),U(LSFT),END);
|
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(RBRC),U(LSFT),END);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case SM_FROWN:
|
case SM_FROWN:
|
||||||
|
//Macro: SM_FROWN//-----------------------
|
||||||
if (record->event.pressed) {
|
if (record->event.pressed) {
|
||||||
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LALT),T(8),U(LALT),END);
|
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LALT),T(8),U(LALT),END);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case M_TOGGLE_5:
|
case SM_CRY:
|
||||||
|
//Macro: SM_CRY//-----------------------
|
||||||
if (record->event.pressed) {
|
if (record->event.pressed) {
|
||||||
layer_state ^= (1<<5);
|
return MACRO(D(LSFT),T(COMM),U(LSFT),T(SLSH),D(LSFT),T(8),U(LSFT),END);
|
||||||
layer_state &= (1<<5);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_SMILE:
|
||||||
|
//Macro: SM_SMILE//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(9),U(LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_SMIRK:
|
||||||
|
//Macro: SM_SMIRK//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(D(LSFT),T(COMM),U(LSFT),T(SLSH),D(LSFT),T(9),U(LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_LGUI_SHFT:
|
||||||
|
//Macro: M_LGUI_SHFT//-----------------------
|
||||||
|
if (record->event.pressed){
|
||||||
|
return MACRO(D(LGUI),D(LSFT),END);
|
||||||
|
}else{
|
||||||
|
return MACRO(U(LGUI),U(LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_HEART:
|
||||||
|
//Macro: SM_HEART//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(T(GRV),T(3),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_LAUGH:
|
||||||
|
//Macro: SM_LAUGH//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(D),U(LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_CTL_SFT_HASH:
|
||||||
|
//Macro: M_CTL_SFT_HASH//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(D(LCTRL),D(LSFT),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),U(LSFT),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(U(LCTRL),U(LSFT),T(BSLS),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_SAD:
|
||||||
|
//Macro: SM_SAD//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(8),U(LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_DE_OSX_CIRC_CTRLCMD:
|
||||||
|
//Macro: M_DE_OSX_CIRC_CTRLCMD//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(D(LCTRL),D(LGUI),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),U(LGUI),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(U(LCTRL),U(LGUI),T(NUBS),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_CTRL_CMDV:
|
||||||
|
//Macro: M_CTRL_CMDV//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(D(LCTRL),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(U(LCTRL),D(LGUI),T(V),U(LGUI),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_MEH_SH_ACUT:
|
||||||
|
//Macro: M_MEH_SH_ACUT//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(D(LCTRL),D(LSFT),D(LALT),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),U(LSFT),U(LALT),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(U(LCTRL),U(LALT),T(EQL),U(LSFT),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return MACRO_NONE;
|
return MACRO_NONE;
|
||||||
|
@ -425,22 +341,28 @@ void matrix_scan_user(void) {
|
||||||
ergodox_right_led_2_off();
|
ergodox_right_led_2_off();
|
||||||
ergodox_right_led_3_off();
|
ergodox_right_led_3_off();
|
||||||
switch (layer) {
|
switch (layer) {
|
||||||
// TODO: Make this relevant to the ErgoDox EZ.
|
|
||||||
case 1:
|
case SYMB:
|
||||||
ergodox_right_led_1_on();
|
ergodox_right_led_1_on();
|
||||||
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 2:
|
case MDIA:
|
||||||
|
|
||||||
ergodox_right_led_2_on();
|
ergodox_right_led_2_on();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 3:
|
case SMLY:
|
||||||
|
|
||||||
|
|
||||||
ergodox_right_led_3_on();
|
ergodox_right_led_3_on();
|
||||||
break;
|
break;
|
||||||
case 4:
|
case NUMB:
|
||||||
ergodox_right_led_1_on();
|
ergodox_right_led_1_on();
|
||||||
|
|
||||||
ergodox_right_led_3_on();
|
ergodox_right_led_3_on();
|
||||||
//ergodox_board_led_on();
|
|
||||||
break;
|
break;
|
||||||
case 5:
|
case EGOS:
|
||||||
ergodox_right_led_1_on();
|
ergodox_right_led_1_on();
|
||||||
ergodox_right_led_2_on();
|
ergodox_right_led_2_on();
|
||||||
ergodox_right_led_3_on();
|
ergodox_right_led_3_on();
|
||||||
|
@ -451,3 +373,4 @@ void matrix_scan_user(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 669 KiB After Width: | Height: | Size: 292 KiB |
|
@ -11,6 +11,12 @@ Dies ist nur ein kleiner Tweak der bestehenden firmware für das ErgoDox-EZ-Keyb
|
||||||
- der Zehnerblock wurde in eine eigene Layer umgezogen
|
- der Zehnerblock wurde in eine eigene Layer umgezogen
|
||||||
- die Meh und Hyper-Tasten wurden in die Daumenblöcke umgezogen
|
- die Meh und Hyper-Tasten wurden in die Daumenblöcke umgezogen
|
||||||
|
|
||||||
|
# Erstellt Mit Dem ErgodoxLayoutGenerator
|
||||||
|
|
||||||
|
Der ErgodoxLayoutGenerator ist ein kleines Werkzeug, welches die Erstellung und Pflege der eigenen Keymaps erleichtern soll. Es ist in java geschrieben und kann [hier](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases) heruntergeladen werden. Damit das Tool funktioniert sollte das offizielle Oracle JDK in aktueller Version installiert sein.
|
||||||
|
Die Dokumentation für den ELG kann man [hier](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/) nachlesen (momentan leider nur in Englisch verfügbar).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
|
@ -26,3 +32,10 @@ This is only a little tweak of the existing default layout for the ErgoDox keyb
|
||||||
- the symbollayer now has only symbols
|
- the symbollayer now has only symbols
|
||||||
- the number block was moved to a special layer
|
- the number block was moved to a special layer
|
||||||
- meh and hyper went down to the thumb block
|
- meh and hyper went down to the thumb block
|
||||||
|
|
||||||
|
# Created Using the ErgodoxLayoutGenerator
|
||||||
|
|
||||||
|
The ErgodoxLayoutGenerator (ELG) is a little tool, which makes the creation and maintenance of keycaps a lot easier. It was written in Java and can be downloaded [here](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases). To use the tool, you need to have a current version of Oracles JDK installed.
|
||||||
|
|
||||||
|
The documentation of the ELG can be viewed [here](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/).
|
||||||
|
|
||||||
|
|
|
@ -1,88 +1,51 @@
|
||||||
// Netable differences vs. the default firmware for the ErgoDox EZ:
|
|
||||||
// 1. The Cmd key is now on the right side, making Cmd+Space easier.
|
|
||||||
// 2. The media keys work on OSX (But not on Windows).
|
|
||||||
#include "ergodox_ez.h"
|
#include "ergodox_ez.h"
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
#include "action_layer.h"
|
#include "action_layer.h"
|
||||||
|
#include "keymap_extras/keymap_french.h"
|
||||||
|
#include "keymap_extras/keymap_neo2.h"
|
||||||
|
#include "keymap_extras/keymap_uk.h"
|
||||||
|
#include "keymap_extras/keymap_colemak.h"
|
||||||
|
#include "keymap_extras/keymap_french_osx.h"
|
||||||
|
#include "keymap_extras/keymap_nordic.h"
|
||||||
|
#include "keymap_extras/keymap_dvorak.h"
|
||||||
#include "keymap_extras/keymap_german.h"
|
#include "keymap_extras/keymap_german.h"
|
||||||
|
#include "keymap_extras/keymap_norwegian.c"
|
||||||
|
#include "keymap_extras/keymap_fr_ch.h"
|
||||||
|
#include "keymap_extras/keymap_german_osx.h"
|
||||||
|
#include "keymap_extras/keymap_spanish.h"
|
||||||
|
#include "keymap_extras/keymap_bepo.h"
|
||||||
|
|
||||||
#define BASE 0 // default layer
|
#define BASE 0
|
||||||
#define SYMB 1 // symbols
|
#define SYMB 1
|
||||||
#define MDIA 2 // media keys
|
#define MDIA 2
|
||||||
#define ADNW 3 // media keys
|
#define QWERTZ 3
|
||||||
#define NUMB 4 // number keys
|
#define NUMB 4
|
||||||
|
|
||||||
|
|
||||||
|
#define UNUSED 0
|
||||||
|
|
||||||
|
//Layout keymap.c generated with ErgodoxLayoutGenerator V1.0BETA1
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
// If it accepts an argument (i.e, is a function), it doesn't need KC_.
|
[BASE]=KEYMAP(
|
||||||
// Otherwise, it needs KC_*
|
//left half
|
||||||
|
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LCTL,
|
||||||
/* Keymap 0: ADNW-Koy layer
|
KC_TAB, KC_K, KC_DOT, KC_O, KC_COMM, KC_Z, KC_LGUI,
|
||||||
* ADNW-Koy is a special layout designed to be ergonomic. Was created using software to determine the most ergonomic way to type German and English texts.
|
TG(QWERTZ), KC_H, KC_A, KC_E, KC_I, KC_U,
|
||||||
*
|
KC_LSFT, CTL_T(KC_X), KC_Q, DE_AE, DE_UE, DE_OE, KC_LALT,
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
LT(SYMB,KC_GRV), DE_LESS, LALT(KC_LSFT), KC_LEFT, KC_RGHT,
|
||||||
* | ESC | 1 | 2 | 3 | 4 | 5 |Lctrl | |Rctrl | 6 | 7 | 8 | 9 | 0 | - |
|
TG(MDIA), MEH_T(LSFT(DE_ACUT)),
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
KC_HOME,
|
||||||
* | TAB | K | . | O | , | Y | CMD | | CMD | V | G | C | L | ß | Z |
|
KC_BSPC, KC_DEL, KC_END,
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
//right half
|
||||||
* | ADNW | H | A | E | I | U |------| |------| D | T | R | N | S | F/L2 |
|
KC_RCTL, KC_6, KC_7, KC_8, KC_9, KC_0, DE_OSX_MINS,
|
||||||
* |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------|
|
KC_RGUI, KC_V, KC_G, KC_C, KC_L, KC_MINS, KC_Y,
|
||||||
* | LShift |X/Ctrl| Q | Ä | Ü | Ö | | | | B | P | W | M |J/Ctrl| RShift |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* |</L1| ^ |AltShf| Left | Right| | Up | Down | CMD-SHIFT | ´ | //L1 |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | L1 | LGui | | Alt |Ctrl/Esc|
|
|
||||||
* ,------|------|------| |------+--------+------.
|
|
||||||
* | | | Home | | PgUp | | |
|
|
||||||
* | Space|Backsp|------| |------| Enter | Space|
|
|
||||||
* | |ace | End | | PgDn | | |
|
|
||||||
* `--------------------' `----------------------'
|
|
||||||
*/
|
|
||||||
KEYMAP(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_K, KC_DOT, KC_O, KC_COMM, KC_Z, KC_TRNS,
|
|
||||||
KC_TRNS, KC_H, KC_A, KC_E, KC_I, KC_U,
|
|
||||||
KC_TRNS, CTL_T(KC_X),KC_Q, DE_AE, DE_UE, DE_OE, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
// right hand
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLSH,
|
|
||||||
KC_TRNS, KC_V, KC_G, KC_C, KC_L, KC_MINS, KC_Y,
|
|
||||||
KC_D, KC_T, KC_R, KC_N, KC_S, LT(MDIA,KC_F),
|
KC_D, KC_T, KC_R, KC_N, KC_S, LT(MDIA,KC_F),
|
||||||
KC_TRNS, KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_TRNS,
|
KC_RALT, KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_RSFT,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_UP, KC_DOWN, LGUI(KC_LSFT), KC_RBRC, LT(SYMB,KC_BSLS),
|
||||||
KC_TRNS, KC_TRNS,
|
ALL_T(DE_ACUT), TG(NUMB),
|
||||||
KC_TRNS,
|
KC_PGUP,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS
|
KC_PGDN, KC_ENT, KC_SPC),
|
||||||
),
|
|
||||||
/* Keymap 1: Symbol Layer
|
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | | | | ! | ? | | | | | \ | [ | ] | | | # | F12 |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | ^ | % | | | ~ | | | | & | < | > | " | ' | ? |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* | | | | | | | | | . | ! | |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | | | | | |
|
|
||||||
* ,------|------|------| |------+------+------.
|
|
||||||
* | | | | | | | |
|
|
||||||
* | | |------| |------| | |
|
|
||||||
* | | | | | | | |
|
|
||||||
* `--------------------' `--------------------'
|
|
||||||
*/
|
|
||||||
// SYMBOLS
|
|
||||||
[SYMB]=KEYMAP(
|
[SYMB]=KEYMAP(
|
||||||
// left hand
|
//left half
|
||||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
|
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
|
||||||
KC_TRNS, KC_GRV, LSFT(KC_GRV), DE_EXLM, DE_QST, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_GRV, LSFT(KC_GRV), DE_EXLM, DE_QST, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, DE_HASH, DE_DLR, LALT(LSFT(KC_7)), DE_SLSH, KC_DOT,
|
KC_TRNS, DE_HASH, DE_DLR, LALT(LSFT(KC_7)), DE_SLSH, KC_DOT,
|
||||||
|
@ -91,7 +54,7 @@ KEYMAP(
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_DEL, KC_TRNS,
|
KC_TRNS, KC_DEL, KC_TRNS,
|
||||||
// right hand
|
//right half
|
||||||
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||||
KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12,
|
KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12,
|
||||||
DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), KC_TRNS,
|
DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), KC_TRNS,
|
||||||
|
@ -99,31 +62,9 @@ KEYMAP(
|
||||||
KC_TRNS, KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
),
|
[MDIA]=KEYMAP(
|
||||||
/* Keymap 2: Media and mouse keys
|
//left half
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | | | | | | | | | | | | | | | Play |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | | | | MsUp | | | | | | | | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | | | | | | | | | | | | Prev | Next | | |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,-------------.
|
|
||||||
* | | | | | |
|
|
||||||
* ,------|------|------| |------+------+------.
|
|
||||||
* | | | | | | |Brwser|
|
|
||||||
* | | |------| |------| |Back |
|
|
||||||
* | | | | | | | |
|
|
||||||
* `--------------------' `--------------------'
|
|
||||||
*/
|
|
||||||
// MEDIA AND MOUSE
|
|
||||||
KEYMAP(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_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_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_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
|
||||||
|
@ -132,7 +73,7 @@ KEYMAP(
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
// right hand
|
//right half
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
@ -140,52 +81,28 @@ KEYMAP(
|
||||||
KC_VOLU, KC_VOLD, KC_LEFT, KC_DOWN, KC_RIGHT,
|
KC_VOLU, KC_VOLD, KC_LEFT, KC_DOWN, KC_RIGHT,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_WBAK
|
KC_TRNS, KC_TRNS, KC_WBAK),
|
||||||
),
|
[QWERTZ]=KEYMAP(
|
||||||
/* Keymap 3: qwertz layer
|
//left half
|
||||||
*
|
|
||||||
* ,--------------------------------------------------. ,--------------------------------------------------.
|
|
||||||
* | ESC | 1 | 2 | 3 | 4 | 5 |CMD-V | |CMD-C | 6 | 7 | 8 | 9 | 0 | ß |
|
|
||||||
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
|
|
||||||
* | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü |
|
|
||||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
|
|
||||||
* | ADNW | A | S | D | F | G |------| |------| H | J | K | L | ö | ä/L2 |
|
|
||||||
* |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------|
|
|
||||||
* | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift |
|
|
||||||
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
|
|
||||||
* |</L1| ^° |AltShf| Left | Right| | Up | Down | CMD-SHIFT | + | #/L1 |
|
|
||||||
* `----------------------------------' `----------------------------------'
|
|
||||||
* ,-------------. ,---------------.
|
|
||||||
* | MDIA | Meh | | Hyper| NUM |
|
|
||||||
* ,------|------|------| |------+--------+------.
|
|
||||||
* | | | Home | | PgUp | | |
|
|
||||||
* | Back-| Del |------| |------| Enter | Space|
|
|
||||||
* | Space| | End | | PgDn | | |
|
|
||||||
* `--------------------' `----------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[BASE] = KEYMAP( // layer 3 : default qwertz layout
|
|
||||||
// left hand
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LGUI(KC_V),
|
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LGUI(KC_V),
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LGUI,
|
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LGUI,
|
||||||
TG(3), KC_A, KC_S, KC_D, KC_F, KC_G,
|
KC_TRNS, KC_A, KC_S, KC_D, KC_F, KC_G,
|
||||||
KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_LALT,
|
KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_LALT,
|
||||||
LT(SYMB,KC_GRV), DE_LESS, LALT(KC_LSFT), KC_LEFT, KC_RGHT,
|
LT(SYMB,KC_GRV), DE_LESS, LALT(KC_LSFT), KC_LEFT, KC_RGHT,
|
||||||
TG(2), MEH_T(LSFT(DE_ACUT)),
|
KC_TRNS, MEH_T(LSFT(DE_ACUT)),
|
||||||
KC_HOME,
|
KC_HOME,
|
||||||
KC_BSPC, KC_DEL, KC_END,
|
KC_BSPC, KC_DEL, KC_END,
|
||||||
// right hand
|
//right half
|
||||||
LGUI(KC_C), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
|
LGUI(KC_C), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
|
||||||
KC_RGUI, KC_Y, KC_U, KC_I, KC_O, KC_P, DE_UE,
|
KC_RGUI, KC_Y, KC_U, KC_I, KC_O, KC_P, DE_UE,
|
||||||
KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(MDIA,DE_AE),
|
KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(MDIA,DE_AE),
|
||||||
KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
|
KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
|
||||||
KC_UP, KC_DOWN, LGUI(KC_LSFT), KC_RBRC, LT(SYMB,KC_BSLS),
|
KC_UP, KC_DOWN, LGUI(KC_LSFT), KC_RBRC, LT(SYMB,KC_BSLS),
|
||||||
ALL_T(DE_ACUT), TG(4),
|
ALL_T(DE_ACUT), KC_TRNS,
|
||||||
KC_PGUP,
|
KC_PGUP,
|
||||||
KC_PGDN,KC_ENT, KC_SPC
|
KC_PGDN, KC_ENT, KC_SPC),
|
||||||
),
|
[NUMB]=KEYMAP(
|
||||||
//numblock
|
//left half
|
||||||
KEYMAP(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS,
|
||||||
|
@ -194,7 +111,7 @@ KEYMAP(
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
// right hand
|
//right half
|
||||||
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||||
KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12,
|
KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12,
|
||||||
KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, KC_TRNS,
|
KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, KC_TRNS,
|
||||||
|
@ -202,25 +119,32 @@ KEYMAP(
|
||||||
KC_0, KC_DOT, KC_0, KC_EQL, KC_TRNS,
|
KC_0, KC_DOT, KC_0, KC_EQL, KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS,
|
KC_TRNS, KC_TRNS,
|
||||||
KC_TRNS,
|
KC_TRNS,
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
const uint16_t PROGMEM fn_actions[] = {
|
||||||
[1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols)
|
|
||||||
[2] = ACTION_LAYER_TAP_TOGGLE(ADNW) // FN2 - Momentary Layer 2 (ADNW)
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
{
|
{
|
||||||
// MACRODOWN only works in this function
|
static uint16_t start;
|
||||||
switch(id) {
|
switch(id) {
|
||||||
case 0:
|
case UNUSED:
|
||||||
|
//Macro: UNUSED//-----------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (record->event.pressed) {
|
if (record->event.pressed) {
|
||||||
register_code(KC_RSFT);
|
register_code(KC_RSFT);
|
||||||
} else {
|
} else {
|
||||||
unregister_code(KC_RSFT);
|
unregister_code(KC_RSFT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return MACRO_NONE;
|
return MACRO_NONE;
|
||||||
|
@ -241,24 +165,11 @@ void matrix_scan_user(void) {
|
||||||
ergodox_right_led_2_off();
|
ergodox_right_led_2_off();
|
||||||
ergodox_right_led_3_off();
|
ergodox_right_led_3_off();
|
||||||
switch (layer) {
|
switch (layer) {
|
||||||
// TODO: Make this relevant to the ErgoDox EZ.
|
|
||||||
case 1:
|
|
||||||
ergodox_right_led_1_on();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
ergodox_right_led_2_on();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
ergodox_right_led_3_on();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
ergodox_right_led_1_on();
|
|
||||||
ergodox_right_led_3_on();
|
|
||||||
//ergodox_board_led_on();
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
// none
|
// none
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 180 KiB |
376
keyboard/ergodox_ez/keymaps/osx_de_experimental/keymap.c
Normal file
376
keyboard/ergodox_ez/keymaps/osx_de_experimental/keymap.c
Normal file
|
@ -0,0 +1,376 @@
|
||||||
|
#include "ergodox_ez.h"
|
||||||
|
#include "debug.h"
|
||||||
|
#include "action_layer.h"
|
||||||
|
#include "keymap_extras/keymap_french.h"
|
||||||
|
#include "keymap_extras/keymap_neo2.h"
|
||||||
|
#include "keymap_extras/keymap_uk.h"
|
||||||
|
#include "keymap_extras/keymap_colemak.h"
|
||||||
|
#include "keymap_extras/keymap_french_osx.h"
|
||||||
|
#include "keymap_extras/keymap_nordic.h"
|
||||||
|
#include "keymap_extras/keymap_dvorak.h"
|
||||||
|
#include "keymap_extras/keymap_german.h"
|
||||||
|
#include "keymap_extras/keymap_norwegian.c"
|
||||||
|
#include "keymap_extras/keymap_fr_ch.h"
|
||||||
|
#include "keymap_extras/keymap_german_osx.h"
|
||||||
|
#include "keymap_extras/keymap_spanish.h"
|
||||||
|
#include "keymap_extras/keymap_bepo.h"
|
||||||
|
|
||||||
|
#define BASE 0
|
||||||
|
#define SYMB 1
|
||||||
|
#define MDIA 2
|
||||||
|
#define SMLY 3
|
||||||
|
#define NUMB 4
|
||||||
|
#define EGOS 5
|
||||||
|
|
||||||
|
#define SMLY_TOG_QUOT 0
|
||||||
|
#define M_TOGGLE_5 1
|
||||||
|
#define TGH_NUM 2
|
||||||
|
#define M_DE_OSX_PLUS_CTRLALT 3
|
||||||
|
#define SM_KISS 4
|
||||||
|
#define SM_FROWN 5
|
||||||
|
#define SM_CRY 6
|
||||||
|
#define SM_SMILE 7
|
||||||
|
#define SM_SMIRK 8
|
||||||
|
#define M_LGUI_SHFT 9
|
||||||
|
#define SM_HEART 10
|
||||||
|
#define TOG_HLD_MDIA 11
|
||||||
|
#define SM_LAUGH 12
|
||||||
|
#define SM_SAD 13
|
||||||
|
#define M_DE_OSX_CIRC_CTRLCMD 14
|
||||||
|
#define M_MEH_SH_ACUT 15
|
||||||
|
|
||||||
|
//Layout keymap.c generated with ErgodoxLayoutGenerator V1.0BETA1
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
[BASE]=KEYMAP(
|
||||||
|
//left half
|
||||||
|
KC_ESC, DE_OSX_1, DE_OSX_2, DE_OSX_3, DE_OSX_4, DE_OSX_5, M(TGH_NUM),
|
||||||
|
KC_TAB, DE_OSX_Q, DE_OSX_W, DE_OSX_E, DE_OSX_R, DE_OSX_T, KC_LGUI,
|
||||||
|
KC_LALT, DE_OSX_A, DE_OSX_S, DE_OSX_D, DE_OSX_F, DE_OSX_G,
|
||||||
|
KC_LSFT, CTL_T(DE_OSX_Y), DE_OSX_X, DE_OSX_C, DE_OSX_V, DE_OSX_B, KC_LALT,
|
||||||
|
LT(SYMB,DE_OSX_LESS), M(M_DE_OSX_CIRC_CTRLCMD), M(M_DE_OSX_PLUS_CTRLALT), LSFT(KC_LCTRL), M(SMLY_TOG_QUOT),
|
||||||
|
KC_HOME, KC_END,
|
||||||
|
KC_PGUP,
|
||||||
|
KC_BSPC, KC_DEL, KC_PGDN,
|
||||||
|
//right half
|
||||||
|
M(TOG_HLD_MDIA), DE_OSX_6, DE_OSX_7, DE_OSX_8, DE_OSX_9, DE_OSX_0, DE_OSX_SS,
|
||||||
|
KC_RGUI, DE_OSX_Z, DE_OSX_U, DE_OSX_I, DE_OSX_O, DE_OSX_P, DE_OSX_UE,
|
||||||
|
DE_OSX_H, DE_OSX_J, DE_OSX_K, DE_OSX_L, DE_OSX_OE, ALT_T(DE_OSX_AE),
|
||||||
|
KC_RALT, DE_OSX_N, DE_OSX_M, DE_OSX_COMM, DE_OSX_DOT, CTL_T(DE_OSX_MINS), KC_RSFT,
|
||||||
|
MEH_T(DE_OSX_HASH), ALL_T(DE_OSX_ACUT), LGUI(KC_LSFT), LALT(KC_LSFT), LT(SYMB,DE_OSX_PLUS),
|
||||||
|
KC_LEFT, KC_RIGHT,
|
||||||
|
KC_UP,
|
||||||
|
KC_DOWN, KC_ENT, KC_SPC),
|
||||||
|
[SYMB]=KEYMAP(
|
||||||
|
//left half
|
||||||
|
KC_APPLICATION, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F5,
|
||||||
|
KC_TRNS, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, DE_OSX_QST, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, DE_OSX_HASH, DE_OSX_DLR, DE_OSX_BSLS, DE_OSX_SLSH, KC_DOT,
|
||||||
|
KC_TRNS, KC_TRNS, DE_OSX_LESS, DE_OSX_PERC, DE_OSX_PIPE, DE_OSX_TILD, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS,
|
||||||
|
KC_TRNS, KC_DEL, KC_TRNS,
|
||||||
|
//right half
|
||||||
|
KC_F6, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||||
|
KC_TRNS, DE_OSX_BSLS, DE_OSX_LBRC, DE_OSX_RBRC, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM,
|
||||||
|
DE_OSX_SLSH, DE_OSX_LPRN, DE_OSX_RPRN, DE_OSX_LCBR, DE_OSX_RCBR, DE_OSX_HASH,
|
||||||
|
KC_TRNS, DE_OSX_PIPE, DE_OSX_TILD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
DE_OSX_QUOT, DE_OSX_DQOT, KC_TRNS, M(M_TOGGLE_5), KC_TRNS,
|
||||||
|
KC_F13, KC_F12,
|
||||||
|
KC_F14,
|
||||||
|
KC_F15, KC_TRNS, KC_TRNS),
|
||||||
|
[MDIA]=KEYMAP(
|
||||||
|
//left half
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D,
|
||||||
|
KC_TRNS, KC_TRNS, KC_WH_L, KC_WH_D, KC_WH_R, KC_BTN3, 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 half
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_VOLD, KC_TRNS, KC_MPRV, KC_MNXT, KC_UP, KC_TRNS,
|
||||||
|
KC_MUTE, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,
|
||||||
|
KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_WBAK),
|
||||||
|
[SMLY]=KEYMAP(
|
||||||
|
//left half
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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 half
|
||||||
|
M(SM_SMILE), M(SM_SMIRK), M(SM_LAUGH), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, M(SM_FROWN), M(SM_SAD), M(SM_CRY), KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
M(SM_HEART), M(SM_KISS), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
|
[NUMB]=KEYMAP(
|
||||||
|
//left half
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
//right half
|
||||||
|
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||||
|
KC_TRNS, DE_OSX_SLSH, KC_7, KC_8, KC_9, DE_OSX_ASTR, KC_F12,
|
||||||
|
DE_OSX_SLSH, KC_4, KC_5, KC_6, DE_OSX_PLUS, DE_OSX_MINS,
|
||||||
|
KC_TRNS, DE_OSX_PERC, KC_1, KC_2, KC_3, KC_TRNS, KC_TRNS,
|
||||||
|
KC_0, KC_DOT, KC_COMM, DE_OSX_EQL, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
|
[EGOS]=KEYMAP(
|
||||||
|
//left half
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_F1, KC_F2,
|
||||||
|
KC_F3,
|
||||||
|
KC_SPC, KC_LCTL, KC_F4,
|
||||||
|
//right half
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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(M_TOGGLE_5), KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS),
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint16_t PROGMEM fn_actions[] = {
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
|
{
|
||||||
|
static uint16_t start;
|
||||||
|
switch(id) {
|
||||||
|
case SMLY_TOG_QUOT:
|
||||||
|
//Macro: SMLY_TOG_QUOT//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
layer_state ^= (1<<SMLY);
|
||||||
|
layer_state &= (1<<SMLY);
|
||||||
|
return MACRO_NONE; } else {
|
||||||
|
layer_state ^= (1<<SMLY);
|
||||||
|
layer_state &= (1<<SMLY);
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO_NONE;
|
||||||
|
} else {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(DE_OSX_HASH),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_TOGGLE_5:
|
||||||
|
//Macro: M_TOGGLE_5//-----------------------
|
||||||
|
if (record->event.pressed){
|
||||||
|
layer_state ^= (1<<5);
|
||||||
|
layer_state &= (1<<5);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case TGH_NUM:
|
||||||
|
//Macro: TGH_NUM//-----------------------
|
||||||
|
if (record->event.pressed){
|
||||||
|
start = timer_read();
|
||||||
|
layer_state ^=(1<<NUMB);
|
||||||
|
layer_state &=(1<<NUMB);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) > 150) {
|
||||||
|
layer_state^=(1<<NUMB);
|
||||||
|
layer_state&=(1<<NUMB);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return MACRO_NONE;
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_DE_OSX_PLUS_CTRLALT:
|
||||||
|
//Macro: M_DE_OSX_PLUS_CTRLALT//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(DOWN(KC_LCTRL),DOWN(KC_LALT),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),U(LALT),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(UP(KC_LCTRL),UP(KC_LALT),TYPE(KC_RBRC),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_KISS:
|
||||||
|
//Macro: SM_KISS//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_RBRC),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_FROWN:
|
||||||
|
//Macro: SM_FROWN//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LALT),TYPE(KC_8),UP(KC_LALT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_CRY:
|
||||||
|
//Macro: SM_CRY//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_COMM),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_8),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_SMILE:
|
||||||
|
//Macro: SM_SMILE//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_9),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_SMIRK:
|
||||||
|
//Macro: SM_SMIRK//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_COMM),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_9),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_LGUI_SHFT:
|
||||||
|
//Macro: M_LGUI_SHFT//-----------------------
|
||||||
|
if (record->event.pressed){
|
||||||
|
return MACRO(DOWN(KC_LGUI),DOWN(KC_LSFT),END);
|
||||||
|
}else{
|
||||||
|
return MACRO(UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),U(LGUI),U(LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_HEART:
|
||||||
|
//Macro: SM_HEART//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(TYPE(KC_GRV),TYPE(KC_3),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case TOG_HLD_MDIA:
|
||||||
|
//Macro: TOG_HLD_MDIA//-----------------------
|
||||||
|
if (record->event.pressed){
|
||||||
|
start = timer_read();
|
||||||
|
layer_state ^=(1<<MDIA);
|
||||||
|
layer_state &=(1<<MDIA);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) > 150) {
|
||||||
|
layer_state^=(1<<MDIA);
|
||||||
|
layer_state&=(1<<MDIA);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return MACRO_NONE;
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_LAUGH:
|
||||||
|
//Macro: SM_LAUGH//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_D),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case SM_SAD:
|
||||||
|
//Macro: SM_SAD//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_8),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_DE_OSX_CIRC_CTRLCMD:
|
||||||
|
//Macro: M_DE_OSX_CIRC_CTRLCMD//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(DOWN(KC_LCTRL),DOWN(KC_LGUI),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),U(LGUI),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(UP(KC_LCTRL),UP(KC_LGUI),TYPE(KC_NUBS),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case M_MEH_SH_ACUT:
|
||||||
|
//Macro: M_MEH_SH_ACUT//-----------------------
|
||||||
|
if (record->event.pressed) {
|
||||||
|
start = timer_read();
|
||||||
|
return MACRO(DOWN(KC_LCTRL),DOWN(KC_LSFT),DOWN(KC_LALT),END);
|
||||||
|
} else {
|
||||||
|
if (timer_elapsed(start) >150) {
|
||||||
|
return MACRO(U(LCTRL),U(LSFT),U(LALT),END);
|
||||||
|
} else {
|
||||||
|
return MACRO(UP(KC_LCTRL),UP(KC_LALT),TYPE(DE_OSX_ACUT),UP(KC_LSFT),END);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return MACRO_NONE;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Runs just one time when the keyboard initializes.
|
||||||
|
void matrix_init_user(void) {
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
// Runs constantly in the background, in a loop.
|
||||||
|
void matrix_scan_user(void) {
|
||||||
|
|
||||||
|
uint8_t layer = biton32(layer_state);
|
||||||
|
|
||||||
|
ergodox_board_led_off();
|
||||||
|
ergodox_right_led_1_off();
|
||||||
|
ergodox_right_led_2_off();
|
||||||
|
ergodox_right_led_3_off();
|
||||||
|
switch (layer) {
|
||||||
|
|
||||||
|
case SYMB:
|
||||||
|
ergodox_right_led_1_on();
|
||||||
|
|
||||||
|
|
||||||
|
break;
|
||||||
|
case MDIA:
|
||||||
|
|
||||||
|
ergodox_right_led_2_on();
|
||||||
|
|
||||||
|
break;
|
||||||
|
case NUMB:
|
||||||
|
|
||||||
|
|
||||||
|
ergodox_right_led_3_on();
|
||||||
|
break;
|
||||||
|
case EGOS:
|
||||||
|
ergodox_right_led_1_on();
|
||||||
|
ergodox_right_led_2_on();
|
||||||
|
ergodox_right_led_3_on();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// none
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 282 KiB |
|
@ -85,8 +85,8 @@
|
||||||
#define DE_OSX_UNDS LSFT(DE_OSX_MINS) // _
|
#define DE_OSX_UNDS LSFT(DE_OSX_MINS) // _
|
||||||
|
|
||||||
// Alt-ed characters
|
// Alt-ed characters
|
||||||
#define DE_OSX_SQ2 LALT(KC_2) // ²
|
//#define DE_OSX_SQ2 LALT(KC_2) // ²
|
||||||
#define DE_OSX_SQ3 LALT(KC_3) // ³
|
//#define DE_OSX_SQ3 LALT(KC_3) // ³
|
||||||
#define DE_OSX_LCBR LALT(KC_8) // {
|
#define DE_OSX_LCBR LALT(KC_8) // {
|
||||||
#define DE_OSX_LBRC LALT(KC_5) // [
|
#define DE_OSX_LBRC LALT(KC_5) // [
|
||||||
#define DE_OSX_RBRC LALT(KC_6) // ]
|
#define DE_OSX_RBRC LALT(KC_6) // ]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user