commit
eb0f21a984
|
@ -0,0 +1,66 @@
|
||||||
|
// This is the personal keymap of Jeremy Cowgar (@jcowgar). It is written for the programmer.
|
||||||
|
|
||||||
|
#include "atreus.h"
|
||||||
|
#include "action_layer.h"
|
||||||
|
#include "keymap_colemak.h"
|
||||||
|
|
||||||
|
#define PREVENT_STUCK_MODIFIERS
|
||||||
|
|
||||||
|
// Each layer gets a name for readability, which is then used in the keymap matrix below.
|
||||||
|
#define ALPH 0
|
||||||
|
#define NUMS 1
|
||||||
|
#define CURS 2
|
||||||
|
#define SYMB 3
|
||||||
|
#define FKEY 4
|
||||||
|
|
||||||
|
// Some handy macros to keep the keymaps clean and easier to maintain
|
||||||
|
#define KM_SAVE LGUI(CM_S)
|
||||||
|
#define KM_CLSE LGUI(CM_W)
|
||||||
|
#define KM_OPEN LGUI(CM_O)
|
||||||
|
|
||||||
|
#define KM_COPY LGUI(KC_C)
|
||||||
|
#define KM_CUT LGUI(KC_X)
|
||||||
|
#define KM_PAST LGUI(KC_V)
|
||||||
|
#define KM_UNDO LGUI(KC_Z)
|
||||||
|
#define KM_REDO LGUI(LSFT(KC_Z))
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
[ALPH] = {
|
||||||
|
{KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P},
|
||||||
|
{KC_A, LT(NUMS, KC_S), LT(FKEY, KC_D), KC_F, KC_G, KC_TRNS, KC_H, KC_J, LT(CURS, KC_K), LT(SYMB, KC_L), KC_SCLN},
|
||||||
|
{KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH},
|
||||||
|
{KC_LCTL, KC_ESC, KC_NO, KC_LSFT, KC_SPC, KC_LGUI, KC_ENT, KC_RSFT, KC_NO, KC_ESC, KC_RCTL}
|
||||||
|
},
|
||||||
|
[NUMS] = {
|
||||||
|
{KC_TRNS, KC_TRNS, KC_TRNS, KC_ASTR, KC_SLSH, KC_TRNS, KC_TRNS, KC_7, KC_8, KC_9, KC_SLSH},
|
||||||
|
{KC_TRNS, KC_TRNS, KC_EQL, KC_PLUS, KC_MINS, KC_TRNS, KC_LPRN, KC_4, KC_5, KC_6, KC_ASTR},
|
||||||
|
{KC_TRNS, KC_TRNS, KC_DOT, KC_COMM, CM_SCLN, KC_TRNS, KC_RPRN, KC_1, KC_2, KC_3, KC_MINS},
|
||||||
|
{KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_EQL, KC_PLUS}
|
||||||
|
},
|
||||||
|
[CURS] = {
|
||||||
|
{KC_TRNS, KC_BSPC, KC_UP, KC_DELT, KC_PGUP, KC_TRNS, KC_TRNS, KM_SAVE, KC_TRNS, KM_OPEN, KC_TRNS},
|
||||||
|
{KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_TRNS, KM_UNDO, KC_LALT, KC_TRNS, KC_LGUI, KC_TRNS},
|
||||||
|
{KC_TRNS, KC_VOLD, KC_MUTE, KC_VOLU, KC_MPLY, KM_COPY, KM_REDO, KM_CLSE, KC_TRNS, KC_TRNS, KC_TRNS},
|
||||||
|
{KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TAB, KM_CUT, KM_PAST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}
|
||||||
|
},
|
||||||
|
[SYMB] = {
|
||||||
|
{KC_BSLS, KC_EXLM, KC_LABK, KC_RABK, CM_COLN, KC_TRNS, KC_UNDS, KC_DLR, KC_QUES, KC_TRNS, KC_PERC},
|
||||||
|
{KC_AT, KC_AMPR, KC_LPRN, KC_RPRN, CM_SCLN, KC_TRNS, KC_COMM, KC_DOT, KC_QUOT, KC_TRNS, KC_TILD},
|
||||||
|
{KC_HASH, KC_PIPE, KC_LCBR, KC_RCBR, KC_SLSH, KC_TRNS, KC_TRNS, KC_GRV, KC_DQT, KC_TRNS, KC_CIRC},
|
||||||
|
{KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}
|
||||||
|
},
|
||||||
|
[FKEY] = {
|
||||||
|
{KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12},
|
||||||
|
{KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F5, KC_F6, KC_F7, KC_F8},
|
||||||
|
{KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4},
|
||||||
|
{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 macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
|
{
|
||||||
|
switch(id) {}
|
||||||
|
|
||||||
|
return MACRO_NONE;
|
||||||
|
};
|
|
@ -0,0 +1,45 @@
|
||||||
|
Jeremy's Atreus Key Mapping
|
||||||
|
===========================
|
||||||
|
|
||||||
|
I am a programmer by trade that suffers from the beginning stages of RSI. As a programmer I use letters, symbols and cursor navigation most often. To prevent strange finger gymnastics, I wrote a script to rank which non-letter characters occurred in my primary source projects most often and then placed these characters in the easiest to reach locations, for me. I made heavy use of momentary layer toggling.
|
||||||
|
|
||||||
|
My layout is also geared toward a software based Colemak mapping. I would like it to be hardware, but I use my Laptop on the go frequently and thus my laptop keyboard. I have moved the keycaps to reflect the Colemak layout. My laptop is a MacBook Pro (2015).
|
||||||
|
|
||||||
|
## Main Layers
|
||||||
|
|
||||||
|
1. [Letters](http://www.keyboard-layout-editor.com/#/gists/6861cb9df09ce78efaddf8aa7471e3ac)
|
||||||
|
2. [Symbols](http://www.keyboard-layout-editor.com/#/gists/8956a18b508a78e93b9c38ec3fcccaa5)
|
||||||
|
3. [Navigation](http://www.keyboard-layout-editor.com/#/gists/6ed492b714a7f54eb1c5de09b87fd8c4)
|
||||||
|
4. [Numbers](http://www.keyboard-layout-editor.com/#/gists/399ceb5624e8388e48a3a5eacac8e973)
|
||||||
|
5. [Function Keys](http://www.keyboard-layout-editor.com/#/gists/7fd7dc24c7048316f3724b1893c64e89)
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
### General
|
||||||
|
|
||||||
|
Some characters can be accessed multiple ways. This was done because you may be in a given layer, such as numbers, where when doing math, you may need quick access to the parentheses characters for grouping. This prevents some layer switching.
|
||||||
|
|
||||||
|
I own an ErgoDox and plan on porting this as a base layer, then using the extra keys the ErgoDox provides accordingly. My goal, though, is to be fully functional on this base setup and build everything into muscle memory.
|
||||||
|
|
||||||
|
### Symbol Layer
|
||||||
|
|
||||||
|
1. I placed characters that deal with an if statement close together, such as !, & and |.
|
||||||
|
2. All matching brace/bracket characters are together as well.
|
||||||
|
|
||||||
|
### Number Layer
|
||||||
|
|
||||||
|
1. Everything I did was a compromise when trying to mimic a ten-key. I did the best I could.
|
||||||
|
2. Operators are duplicated on the right and left. I do not find it comfortable to use my pinky much, so I tend to use my left hand for +, -, * and / but those were also placed on the right hand to mimic the ten-key.
|
||||||
|
3. Parentheses were added for typing on the calculator.
|
||||||
|
|
||||||
|
### Cursor Layer
|
||||||
|
|
||||||
|
1. It includes basic audio controls because they didn't really fit anywhere else
|
||||||
|
2. It contains basic file manipulation. I'm not sure that was a good idea. I do save all the time, but Cmd+S isn't exactly hard.
|
||||||
|
3. It contains the backspace and delete keys right on top of the left and right arrows.
|
||||||
|
4. Cmd and Opt keys are duplicated. This makes for very easy navigation, for example on a Mac, Opt+Left/Right moves word by word. It also backspaces or deletes word by word.
|
||||||
|
|
||||||
|
### Function Layer
|
||||||
|
|
||||||
|
1. Almost all other layers I saw grouped the F keys into a bunch of three. This only gives nine function keys in order if you attempt to stay as close to the home row as possible. I went with a group of four, which gives all twelve function keys to the right hand, one row below and above the home row.
|
||||||
|
2. I duplicated the Command and Option keys the same as on the cursor layer. This makes it dead easy to hit modified function keys such as Cmd+Opt+F5. It's also easy to toss in a Shift modifier in there with the right thumb since the bottom row is preserved.
|
|
@ -24,7 +24,9 @@ void matrix_init_kb(void) {
|
||||||
};
|
};
|
||||||
|
|
||||||
void shutdown_user(void) {
|
void shutdown_user(void) {
|
||||||
|
#ifdef AUDIO_ENABLE
|
||||||
PLAY_NOTE_ARRAY(tone_goodbye, false, 0);
|
PLAY_NOTE_ARRAY(tone_goodbye, false, 0);
|
||||||
_delay_ms(150);
|
_delay_ms(150);
|
||||||
stop_all_notes();
|
stop_all_notes();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,9 @@
|
||||||
|
|
||||||
#include "../../config.h"
|
#include "../../config.h"
|
||||||
|
|
||||||
|
#define LEADER_TIMEOUT 300
|
||||||
|
#define BACKLIGHT_BREATHING
|
||||||
|
|
||||||
/* cbbrowne user configuration */
|
/* cbbrowne user configuration */
|
||||||
|
|
||||||
#define randadd 53
|
#define randadd 53
|
||||||
|
@ -16,5 +19,3 @@
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -65,10 +65,11 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
enum layers {
|
enum layers {
|
||||||
_QW = 0, /* Qwerty mapping */
|
_QWERTY = 0, /* Qwerty mapping */
|
||||||
_LW, /* Lower layer, where top line has symbols !@#$%^&*() */
|
_LOWER, /* Lower layer, where top line has symbols !@#$%^&*() */
|
||||||
_RS, /* Raised layer, where top line has digits 1234567890 */
|
_RAISE, /* Raised layer, where top line has digits 1234567890 */
|
||||||
_KP, /* Key pad */
|
_KEYPAD, /* Key pad */
|
||||||
|
_ADJUST, /* Special Adjust layer coming via tri-placement */
|
||||||
};
|
};
|
||||||
|
|
||||||
enum macro_id {
|
enum macro_id {
|
||||||
|
@ -76,36 +77,59 @@ enum macro_id {
|
||||||
M_USERNAME,
|
M_USERNAME,
|
||||||
M_RANDDIGIT,
|
M_RANDDIGIT,
|
||||||
M_RANDLETTER,
|
M_RANDLETTER,
|
||||||
M_VERSION
|
M_VERSION,
|
||||||
|
MACRO_UPPER,
|
||||||
|
MACRO_LOWER,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define M_LOWER M(MACRO_LOWER)
|
||||||
|
#define M_UPPER M(MACRO_UPPER)
|
||||||
|
#define ROT_LED M(M_LED) /* Rotate LED */
|
||||||
|
#define QWERTY DF(_QWERTY) /* Switch to QWERTY layout */
|
||||||
|
#define KEYPAD DF(_KEYPAD) /* Switch to keypad */
|
||||||
|
#define USERNAME M(M_USERNAME) /* shortcut for username */
|
||||||
|
#define RANDDIG M(M_RANDDIGIT)
|
||||||
|
#define RANDALP M(M_RANDLETTER)
|
||||||
|
#define CTLENTER MT(MOD_RCTL, KC_ENT)
|
||||||
|
#define SHIFTQUOTE MT(MOD_RSFT, KC_QUOT)
|
||||||
|
#define ALTRIGHT MT(MOD_LALT, KC_RGHT)
|
||||||
|
#define MVERSION M(M_VERSION)
|
||||||
|
|
||||||
|
|
||||||
/* Note that Planck has dimensions 4 rows x 12 columns */
|
/* Note that Planck has dimensions 4 rows x 12 columns */
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
[_QW] = { /* Qwerty */
|
[_QWERTY] = { /* Qwerty */
|
||||||
{KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
|
{KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC},
|
||||||
{KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MT(MOD_RSFT, KC_ENT)},
|
{KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, CTLENTER},
|
||||||
{KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT },
|
{KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SHIFTQUOTE },
|
||||||
{KC_TAB, M(M_LED), KC_LALT, KC_LGUI, MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}
|
{KC_TAB, KC_LALT, ROT_LED, KC_LGUI, M_LOWER, KC_SPC, KC_SPC, M_UPPER, KC_LEFT, KC_DOWN, KC_UP, ALTRIGHT}
|
||||||
/* Note that KC_SPC is recorded TWICE, so that either matrix position can activate it */
|
/* Note that KC_SPC is recorded TWICE, so that either matrix position can activate it */
|
||||||
},
|
},
|
||||||
[_RS] = { /* RAISE */
|
[_RAISE] = { /* RAISE */
|
||||||
{KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC},
|
{KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC},
|
||||||
{_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS},
|
{_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS},
|
||||||
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_KP), DF(_KP), RESET, _______},
|
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QWERTY, KEYPAD, KEYPAD, RESET, _______},
|
||||||
{_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
{_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
||||||
},
|
},
|
||||||
[_LW] = { /* LOWER */
|
[_LOWER] = { /* LOWER */
|
||||||
{KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC},
|
{KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC},
|
||||||
{_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE},
|
{_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE},
|
||||||
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_KP), DF(_KP), RESET, _______},
|
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QWERTY, KEYPAD, KEYPAD, RESET, _______},
|
||||||
{_______, DF(_KP), _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
{_______, KEYPAD, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
||||||
},
|
},
|
||||||
[_KP] = { /* Key Pad */
|
[_KEYPAD] = { /* Key Pad */
|
||||||
{KC_ESC, M(M_USERNAME), M(M_VERSION), KC_F10, KC_F11, KC_F12, KC_PGUP, KC_KP_ENTER, KC_7, KC_8, KC_9, KC_BSPC},
|
{KC_ESC, USERNAME, MVERSION, KC_F10, KC_F11, KC_F12, KC_PGUP, KC_KP_ENTER, KC_7, KC_8, KC_9, KC_BSPC},
|
||||||
{KC_LCTL, M(M_RANDDIGIT), KC_F5, KC_F6, KC_F7, KC_F8, KC_PGDN, KC_KP_MINUS, KC_4, KC_5, KC_6, KC_PIPE},
|
{KC_LCTL, RANDDIG, KC_F5, KC_F6, KC_F7, KC_F8, KC_PGDN, KC_KP_MINUS, KC_4, KC_5, KC_6, KC_PIPE},
|
||||||
{KC_LSFT, M(M_RANDLETTER), KC_F1, KC_F2, KC_F3, KC_F4, KC_DEL, KC_KP_PLUS, KC_1, KC_2, KC_3, KC_ENTER},
|
{KC_LSFT, RANDALP, KC_F1, KC_F2, KC_F3, KC_F4, KC_DEL, KC_KP_PLUS, KC_1, KC_2, KC_3, KC_ENTER},
|
||||||
{BL_STEP, M(M_LED), KC_LALT, KC_LGUI, KC_NO, KC_SPC, KC_SPC, DF(_QW), KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT}
|
{KC_TAB, KC_LALT, ROT_LED, KC_LGUI, M_LOWER, KC_SPC, KC_SPC, QWERTY, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT}
|
||||||
|
},
|
||||||
|
|
||||||
|
[_ADJUST] = { /* Adjustments - gonna shift the wild tools in here */
|
||||||
|
{ROT_LED,USERNAME,MVERSION, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
|
||||||
|
{_______, RANDDIG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
|
||||||
|
{_______, RANDALP, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ },
|
||||||
|
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -171,6 +195,39 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
unregister_code (KC_A + rval);
|
unregister_code (KC_A + rval);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case MACRO_UPPER:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
layer_on(_RAISE);
|
||||||
|
#ifdef BACKLIGHT_ENABLE
|
||||||
|
breathing_speed_set(2);
|
||||||
|
breathing_pulse();
|
||||||
|
#endif
|
||||||
|
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
layer_off(_RAISE);
|
||||||
|
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case MACRO_LOWER:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
layer_on(_LOWER);
|
||||||
|
#ifdef BACKLIGHT_ENABLE
|
||||||
|
breathing_speed_set(2);
|
||||||
|
breathing_pulse();
|
||||||
|
#endif
|
||||||
|
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
layer_off(_LOWER);
|
||||||
|
update_tri_layer(_LOWER, _RAISE, _ADJUST);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
return MACRO_NONE;
|
return MACRO_NONE;
|
||||||
};
|
};
|
||||||
|
|
|
@ -24,7 +24,26 @@ doing sundry experimentation:
|
||||||
- Key [2][2] aka "a" uses a random number generator to select a digit 0-9 at random
|
- Key [2][2] aka "a" uses a random number generator to select a digit 0-9 at random
|
||||||
- Key [3][2] aka "z" uses a random number generator to select a letter a-z at random
|
- Key [3][2] aka "z" uses a random number generator to select a letter a-z at random
|
||||||
- Key [1][3] aka "e" spits out the keymap version number
|
- Key [1][3] aka "e" spits out the keymap version number
|
||||||
* Minor use of Space Cadet Shift; my SHIFT key has switched to KC_LSP0, so that when I just hit SHIFT, I get a left parens: ( which is great for Lisping. I don't have a Right Shift, so I don't get an autoclose; I think I'll live with that until a Planck successor with more lines of keys :-)
|
* Trying out sgoodwin's "hold Enter down to get Shift"
|
||||||
|
- Liking this Quite Well Enough...
|
||||||
|
- Applied this to both Shift and Quote
|
||||||
|
- It seems likely that Alt should get a right-hand-side, akin to this...
|
||||||
|
- Alt needs to move, and get a RHS
|
||||||
|
- Hence ALTRIGHT, and shifted ROT_LED over
|
||||||
|
- Emacs likes this!!! :-)
|
||||||
|
- I'm suspicious that I'll want to shift ROT_LED another location over,
|
||||||
|
so some modifier can replace the OS/KC_LGUI key
|
||||||
|
* I have added an alternate ADJUST layer that is activated via update_tri_layer()
|
||||||
|
- e.g. - LOWER+RAISE simultaneously
|
||||||
|
- This seems entirely more useful for handling my "special keys"
|
||||||
|
like the random numbers, user name, and such, than the keypad layer
|
||||||
|
* The _ADJUST layer provides a good place to have RESET
|
||||||
|
- But this isn't strictly enough; I want RESET somewhat accessible from
|
||||||
|
main layer lest an error hide that layer
|
||||||
|
- I never use the OS/KC_LGUI key (that's Command on MacOS, Windows
|
||||||
|
Key on Windows), so that's a good place to have it as a chord of
|
||||||
|
some sort
|
||||||
|
|
||||||
|
|
||||||
2. Some code structure ideas
|
2. Some code structure ideas
|
||||||
---------------------------------------------------
|
---------------------------------------------------
|
||||||
|
@ -43,8 +62,8 @@ doing sundry experimentation:
|
||||||
only need to fit 4 symbols onto each line, rather than 12.
|
only need to fit 4 symbols onto each line, rather than 12.
|
||||||
|
|
||||||
I used enums to manage layer IDs and macro IDs so that I don't need
|
I used enums to manage layer IDs and macro IDs so that I don't need
|
||||||
to care (beyond "start at 0", and arguably that's not needed) about
|
to care (beyond "start at 0", and arguably even that's not needed)
|
||||||
their values.
|
about their values.
|
||||||
|
|
||||||
3. Things I did not like about the default mapping
|
3. Things I did not like about the default mapping
|
||||||
---------------------------------------------------------
|
---------------------------------------------------------
|
||||||
|
@ -57,12 +76,27 @@ doing sundry experimentation:
|
||||||
and shift ESC off the first column so KC_LCTL and KC_LALT can
|
and shift ESC off the first column so KC_LCTL and KC_LALT can
|
||||||
be on the first column.
|
be on the first column.
|
||||||
* I needed to swap ' and ENTER
|
* I needed to swap ' and ENTER
|
||||||
|
|
||||||
|
4. Unuseful experiments
|
||||||
|
---------------------------------------------------------
|
||||||
|
|
||||||
|
I have tried some things out that didn't turn out particularly well.
|
||||||
|
I'll note some of these for posterity, hopefully helpful in not doing
|
||||||
|
unwise things again...
|
||||||
|
|
||||||
* I tried added Workman alongside Dvorak and Colemak
|
* I tried added Workman alongside Dvorak and Colemak
|
||||||
- Boy, oh boy, these don't help!!!
|
- Boy, oh boy, these don't help!!!
|
||||||
- I have done 30 years of learning of Emacs key mappings, and
|
- I have done 30 years of learning of Emacs key mappings, and
|
||||||
these alternative keyboards massively mess me up
|
these alternative keyboards massively mess me up
|
||||||
|
|
||||||
4. TODO
|
* Space Cadet Shift; switching L_SHIFT to KC_LSP0, so that when I
|
||||||
|
just hit SHIFT, I get a left parens. In principle, this is great
|
||||||
|
for Lisping.
|
||||||
|
- Unfortunately, there are times when mouse interfaces use SHIFT
|
||||||
|
to allow selecting multiple items, and this really interferes
|
||||||
|
with that
|
||||||
|
|
||||||
|
5. TODO
|
||||||
---------------------------------------------------------
|
---------------------------------------------------------
|
||||||
|
|
||||||
* I use tmux quite a lot; the mollat keymap seems to have some
|
* I use tmux quite a lot; the mollat keymap seems to have some
|
||||||
|
@ -77,4 +111,3 @@ doing sundry experimentation:
|
||||||
* The jeebak keymap seems to have some neat ideas:
|
* The jeebak keymap seems to have some neat ideas:
|
||||||
- Number layer which is aggressive about having numbers in several places
|
- Number layer which is aggressive about having numbers in several places
|
||||||
- Touch layer seems interesting
|
- Touch layer seems interesting
|
||||||
* Trying out sgoodwin's "hold Enter down to get Shift"
|
|
|
@ -26,10 +26,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
/* COL2ROW or ROW2COL */
|
/* COL2ROW or ROW2COL */
|
||||||
#define DIODE_DIRECTION ROW2COL
|
#define DIODE_DIRECTION ROW2COL
|
||||||
|
|
||||||
// #define BACKLIGHT_PIN B7
|
#define BACKLIGHT_PIN B7
|
||||||
// #define BACKLIGHT_BREATHING
|
#define BACKLIGHT_BREATHING
|
||||||
// #define BACKLIGHT_LEVELS 3
|
#define BACKLIGHT_LEVELS 3
|
||||||
|
|
||||||
|
|
||||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||||
#define DEBOUNCING_DELAY 5
|
#define DEBOUNCING_DELAY 5
|
||||||
|
@ -124,10 +123,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* disable debug print */
|
/* disable debug print */
|
||||||
|
// #ifndef NO_DEBUG
|
||||||
// # define NO_DEBUG
|
// # define NO_DEBUG
|
||||||
|
// #endif
|
||||||
|
|
||||||
/* disable print */
|
/* disable print */
|
||||||
|
// #ifndef NO_PRINT
|
||||||
// # define NO_PRINT
|
// # define NO_PRINT
|
||||||
|
// #endif
|
||||||
|
|
||||||
|
/* Only print user print statements */
|
||||||
|
// #define USER_PRINT
|
||||||
|
|
||||||
|
|
||||||
/* disable action features */
|
/* disable action features */
|
||||||
//#define NO_ACTION_LAYER
|
//#define NO_ACTION_LAYER
|
||||||
|
|
|
@ -8,7 +8,7 @@ EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||||
CONSOLE_ENABLE = yes # Console for debug(+400)
|
CONSOLE_ENABLE = yes # Console for debug(+400)
|
||||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||||
NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
||||||
MIDI_ENABLE = no # MIDI controls
|
MIDI_ENABLE = no # MIDI controls
|
||||||
AUDIO_ENABLE = yes # Audio output on port C6
|
AUDIO_ENABLE = yes # Audio output on port C6
|
||||||
UNICODE_ENABLE = no # Unicode
|
UNICODE_ENABLE = no # Unicode
|
||||||
|
|
|
@ -4,25 +4,44 @@
|
||||||
#include "../../config.h"
|
#include "../../config.h"
|
||||||
#include "matrix_types.h"
|
#include "matrix_types.h"
|
||||||
|
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
/* USB Device descriptor parameter */
|
||||||
#define VENDOR_ID 0xFEED
|
#define VENDOR_ID 0xFEED
|
||||||
#define PRODUCT_ID GET_PID(NUMERIC_NORMAL, HOMING_MAX_TEENSY)
|
|
||||||
#define DEVICE_VER 0x0001
|
#define DEVICE_VER 0x0001
|
||||||
#define MANUFACTURER IBNobody
|
#define MANUFACTURER IBNobody
|
||||||
#define PRODUCT Vision Division
|
#define PRODUCT Vision Division
|
||||||
#define DESCRIPTION Full / Split Keyboard
|
#define DESCRIPTION Full / Split Keyboard
|
||||||
|
|
||||||
|
|
||||||
#define MATRIX_ROWS 6
|
#define MATRIX_ROWS 6
|
||||||
#define MATRIX_ROW_PINS { C2, C3, F4, F5, F6, F7 }
|
#define MATRIX_ROW_PINS { C2, C3, F4, F5, F6, F7 }
|
||||||
|
|
||||||
#define MATRIX_COLS GET_MATRIX_COLS(NUMERIC_NORMAL, HOMING_MAX_TEENSY)
|
// !!! MAKE SURE THAT THE LEFT/RIGHT PCB DEFINES MATCH ON ALL OF THESE COLUMNS
|
||||||
#define MATRIX_COL_PINS GET_MATRIX_COL_PINS(NUMERIC_NORMAL, HOMING_MAX_TEENSY)
|
|
||||||
|
|
||||||
#define UNUSED_PINS
|
// **LEFT** **RIGHT**
|
||||||
|
#define PRODUCT_ID GET_PID( NUMERIC_NORMAL, NUMERIC_MAX_TEENSY)
|
||||||
|
#define MATRIX_COLS GET_MATRIX_COLS( NUMERIC_NORMAL, NUMERIC_MAX_TEENSY)
|
||||||
|
#define MATRIX_COL_PINS GET_MATRIX_COL_PINS( NUMERIC_NORMAL, NUMERIC_MAX_TEENSY)
|
||||||
|
|
||||||
/*#define KEYMAP( \
|
#define KEYMAP(MATRIX_LAYER, \
|
||||||
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
||||||
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
||||||
|
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C, \
|
||||||
|
k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C, \
|
||||||
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C, \
|
||||||
|
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, k61C \
|
||||||
|
) \
|
||||||
|
KEYMAP_MASTER(MATRIX_LAYER, NUMERIC_NORMAL, NUMERIC_MAX_TEENSY, \
|
||||||
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, KC_NO, KC_NO, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
||||||
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, KC_NO, KC_NO, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
||||||
|
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, KC_NO, KC_NO, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C, \
|
||||||
|
k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, KC_NO, KC_NO, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C, \
|
||||||
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, KC_NO, KC_NO, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C, \
|
||||||
|
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, KC_NO, KC_NO, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, k61C \
|
||||||
|
)
|
||||||
|
|
||||||
|
// Example Keymap Macros
|
||||||
|
|
||||||
|
/*
|
||||||
|
#define KEYMAP(MATRIX_LAYER, \
|
||||||
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
||||||
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
||||||
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k30B, k30C, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C, \
|
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k30B, k30C, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C, \
|
||||||
|
@ -30,16 +49,18 @@
|
||||||
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C, \
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C, \
|
||||||
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k60B, k60C, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, k61C \
|
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k60B, k60C, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, k61C \
|
||||||
) \
|
) \
|
||||||
KEYMAP_MASTER(NUMERIC_MAX_TEENSY, NUMERIC_MAX, \
|
KEYMAP_MASTER(MATRIX_LAYER, NUMERIC_MAX_TEENSY, NUMERIC_MAX, \
|
||||||
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
||||||
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
||||||
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k30B, k30C, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C, \
|
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k30B, k30C, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C, \
|
||||||
k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k40B, k40C, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C, \
|
k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k40B, k40C, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C, \
|
||||||
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C, \
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C, \
|
||||||
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k60B, k60C, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, k61C \
|
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k60B, k60C, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, k61C \
|
||||||
)*/
|
)
|
||||||
|
*/
|
||||||
|
|
||||||
#define KEYMAP( \
|
/*
|
||||||
|
#define KEYMAP(MATRIX_LAYER, \
|
||||||
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, \
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, \
|
||||||
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, \
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, \
|
||||||
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, \
|
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, \
|
||||||
|
@ -47,7 +68,7 @@ KEYMAP_MASTER(NUMERIC_MAX_TEENSY, NUMERIC_MAX, \
|
||||||
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, \
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, \
|
||||||
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B \
|
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B \
|
||||||
) \
|
) \
|
||||||
KEYMAP_MASTER(NUMERIC_NORMAL, HOMING_MAX_TEENSY, \
|
KEYMAP_MASTER(MATRIX_LAYER, NUMERIC_NORMAL, HOMING_MAX_TEENSY, \
|
||||||
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, KC_NO, KC_NO, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, KC_NO, \
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, KC_NO, KC_NO, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, KC_NO, \
|
||||||
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, KC_NO, KC_NO, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, KC_NO, \
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, KC_NO, KC_NO, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, KC_NO, \
|
||||||
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, KC_NO, KC_NO, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, KC_NO, \
|
k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, KC_NO, KC_NO, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, KC_NO, \
|
||||||
|
@ -55,5 +76,6 @@ KEYMAP_MASTER(NUMERIC_NORMAL, HOMING_MAX_TEENSY, \
|
||||||
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, KC_NO, KC_NO, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, KC_NO, \
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, KC_NO, KC_NO, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, KC_NO, \
|
||||||
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, KC_NO, KC_NO, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, KC_NO \
|
k601, k602, k603, k604, k605, k606, k607, k608, k609, k60A, KC_NO, KC_NO, k611, k612, k613, k614, k615, k616, k617, k618, k619, k61A, k61B, KC_NO \
|
||||||
)
|
)
|
||||||
|
*/
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -8,46 +8,70 @@
|
||||||
#include "song_list.h"
|
#include "song_list.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define LAYER_QWERTY 0
|
enum keyboard_layers {
|
||||||
#define LAYER_COLEMAK 1
|
LAYER_QWERTY = 0,
|
||||||
#define LAYER_DVORAK 2
|
LAYER_UPPER,
|
||||||
#define LAYER_UPPER 3
|
LAYER_LOWER,
|
||||||
#define LAYER_LOWER 4
|
LAYER_FUNCTION,
|
||||||
#define LAYER_FUNCTION 5
|
LAYER_MOUSE,
|
||||||
#define LAYER_MOUSE 6
|
LAYER_ADJUST,
|
||||||
#define LAYER_ADJUST 7
|
};
|
||||||
|
enum keyboard_macros {
|
||||||
#define MACRO_QWERTY 0
|
MACRO_QWERTY = 0,
|
||||||
#define MACRO_COLEMAK 1
|
MACRO_UPPER,
|
||||||
#define MACRO_DVORAK 2
|
MACRO_LOWER,
|
||||||
#define MACRO_UPPER 3
|
MACRO_FUNCTION,
|
||||||
#define MACRO_LOWER 4
|
MACRO_MOUSE,
|
||||||
#define MACRO_FUNCTION 5
|
MACRO_TIMBRE_1,
|
||||||
#define MACRO_MOUSE 6
|
MACRO_TIMBRE_2,
|
||||||
#define MACRO_TIMBRE_1 7
|
MACRO_TIMBRE_3,
|
||||||
#define MACRO_TIMBRE_2 8
|
MACRO_TIMBRE_4,
|
||||||
#define MACRO_TIMBRE_3 9
|
MACRO_TEMPO_U,
|
||||||
#define MACRO_TIMBRE_4 10
|
MACRO_TEMPO_D,
|
||||||
#define MACRO_TEMPO_U 11
|
MACRO_TONE_DEFAULT,
|
||||||
#define MACRO_TEMPO_D 12
|
MACRO_MUSIC_TOGGLE,
|
||||||
#define MACRO_TONE_DEFAULT 13
|
MACRO_AUDIO_TOGGLE,
|
||||||
#define MACRO_MUSIC_TOGGLE 14
|
MACRO_INC_VOICE,
|
||||||
#define MACRO_AUDIO_TOGGLE 16
|
MACRO_DEC_VOICE,
|
||||||
#define MACRO_INC_VOICE 18
|
MACRO_BACKLIGHT,
|
||||||
#define MACRO_DEC_VOICE 19
|
MACRO_BREATH_TOGGLE,
|
||||||
#define MACRO_BACKLIGHT 20
|
MACRO_BREATH_SPEED_INC,
|
||||||
#define MACRO_BREATH_TOGGLE 21
|
MACRO_BREATH_SPEED_DEC,
|
||||||
#define MACRO_BREATH_SPEED_INC 23
|
MACRO_BREATH_DEFAULT,
|
||||||
#define MACRO_BREATH_SPEED_DEC 24
|
MACRO_MOUSE_MOVE_UL,
|
||||||
#define MACRO_BREATH_DEFAULT 25
|
MACRO_MOUSE_MOVE_UR,
|
||||||
|
MACRO_MOUSE_MOVE_DL,
|
||||||
|
MACRO_MOUSE_MOVE_DR,
|
||||||
|
MACRO_HELP,
|
||||||
|
MACRO_HELP_1,
|
||||||
|
MACRO_HELP_2,
|
||||||
|
MACRO_HELP_3,
|
||||||
|
MACRO_HELP_4,
|
||||||
|
MACRO_HELP_5,
|
||||||
|
MACRO_HELP_6,
|
||||||
|
MACRO_HELP_7,
|
||||||
|
MACRO_HELP_8,
|
||||||
|
MACRO_HELP_9,
|
||||||
|
MACRO_HELP_0,
|
||||||
|
MACRO_GENERAL_1,
|
||||||
|
MACRO_GENERAL_2,
|
||||||
|
MACRO_GENERAL_3,
|
||||||
|
MACRO_GENERAL_4,
|
||||||
|
MACRO_GENERAL_5,
|
||||||
|
MACRO_CURSOR_UL,
|
||||||
|
MACRO_CURSOR_UR,
|
||||||
|
MACRO_CURSOR_DL,
|
||||||
|
MACRO_CURSOR_DR,
|
||||||
|
MACRO_MUTE_APP,
|
||||||
|
MACRO_COPY_CUT,
|
||||||
|
};
|
||||||
|
|
||||||
#define M_QWRTY M(MACRO_QWERTY)
|
#define M_QWRTY M(MACRO_QWERTY)
|
||||||
#define M_COLMK M(MACRO_COLEMAK)
|
|
||||||
#define M_DVORK M(MACRO_DVORAK)
|
|
||||||
#define M_UPPER M(MACRO_UPPER)
|
#define M_UPPER M(MACRO_UPPER)
|
||||||
#define M_LOWER M(MACRO_LOWER)
|
#define M_LOWER M(MACRO_LOWER)
|
||||||
#define M_FUNCT M(MACRO_FUNCTION)
|
#define M_FUNCT M(MACRO_FUNCTION)
|
||||||
#define M_MOUSE M(MACRO_MOUSE)
|
#define M_MOUSE M(MACRO_MOUSE)
|
||||||
|
|
||||||
#define TIMBR_1 M(MACRO_TIMBRE_1)
|
#define TIMBR_1 M(MACRO_TIMBRE_1)
|
||||||
#define TIMBR_2 M(MACRO_TIMBRE_2)
|
#define TIMBR_2 M(MACRO_TIMBRE_2)
|
||||||
#define TIMBR_3 M(MACRO_TIMBRE_3)
|
#define TIMBR_3 M(MACRO_TIMBRE_3)
|
||||||
|
@ -55,15 +79,47 @@
|
||||||
#define TMPO_UP M(MACRO_TEMPO_U)
|
#define TMPO_UP M(MACRO_TEMPO_U)
|
||||||
#define TMPO_DN M(MACRO_TEMPO_D)
|
#define TMPO_DN M(MACRO_TEMPO_D)
|
||||||
#define TMPO_DF M(MACRO_TONE_DEFAULT)
|
#define TMPO_DF M(MACRO_TONE_DEFAULT)
|
||||||
|
|
||||||
|
#define VC_UP M(MACRO_INC_VOICE)
|
||||||
|
#define VC_DOWN M(MACRO_DEC_VOICE)
|
||||||
|
|
||||||
#define M_BACKL M(MACRO_BACKLIGHT)
|
#define M_BACKL M(MACRO_BACKLIGHT)
|
||||||
#define M_BRTOG M(MACRO_BREATH_TOGGLE)
|
#define M_BRTOG M(MACRO_BREATH_TOGGLE)
|
||||||
#define M_BSPDU M(MACRO_BREATH_SPEED_INC)
|
#define M_BSPDU M(MACRO_BREATH_SPEED_INC)
|
||||||
#define M_BSPDD M(MACRO_BREATH_SPEED_DEC)
|
#define M_BSPDD M(MACRO_BREATH_SPEED_DEC)
|
||||||
#define M_BDFLT M(MACRO_BREATH_DEFAULT)
|
#define M_BDFLT M(MACRO_BREATH_DEFAULT)
|
||||||
|
|
||||||
|
#define M_MS_UL M(MACRO_MOUSE_MOVE_UL)
|
||||||
|
#define M_MS_UR M(MACRO_MOUSE_MOVE_UR)
|
||||||
|
#define M_MS_DL M(MACRO_MOUSE_MOVE_DL)
|
||||||
|
#define M_MS_DR M(MACRO_MOUSE_MOVE_DR)
|
||||||
|
|
||||||
#define VC_UP M(MACRO_INC_VOICE)
|
#define M_HELP M(MACRO_HELP)
|
||||||
#define VC_DOWN M(MACRO_DEC_VOICE)
|
#define M_HELP1 M(MACRO_HELP_1)
|
||||||
|
#define M_HELP2 M(MACRO_HELP_2)
|
||||||
|
#define M_HELP3 M(MACRO_HELP_3)
|
||||||
|
#define M_HELP4 M(MACRO_HELP_4)
|
||||||
|
#define M_HELP5 M(MACRO_HELP_5)
|
||||||
|
#define M_HELP6 M(MACRO_HELP_6)
|
||||||
|
#define M_HELP7 M(MACRO_HELP_7)
|
||||||
|
#define M_HELP8 M(MACRO_HELP_8)
|
||||||
|
#define M_HELP9 M(MACRO_HELP_9)
|
||||||
|
#define M_HELP0 M(MACRO_HELP_0)
|
||||||
|
|
||||||
|
#define M_M1 M(MACRO_GENERAL_1)
|
||||||
|
#define M_M2 M(MACRO_GENERAL_2)
|
||||||
|
#define M_M3 M(MACRO_GENERAL_3)
|
||||||
|
#define M_M4 M(MACRO_GENERAL_4)
|
||||||
|
#define M_M5 M(MACRO_GENERAL_5)
|
||||||
|
|
||||||
|
#define M_UL M(MACRO_CURSOR_UL)
|
||||||
|
#define M_UR M(MACRO_CURSOR_UR)
|
||||||
|
#define M_DL M(MACRO_CURSOR_DL)
|
||||||
|
#define M_DR M(MACRO_CURSOR_DR)
|
||||||
|
|
||||||
|
#define M_MUTEA M(MACRO_MUTE_APP)
|
||||||
|
|
||||||
|
#define M_CP_CT M(MACRO_COPY_CUT)
|
||||||
|
|
||||||
|
|
||||||
#define SC_UNDO LCTL(KC_Z)
|
#define SC_UNDO LCTL(KC_Z)
|
||||||
|
@ -77,6 +133,7 @@
|
||||||
#define SC_ACLS LALT(KC_F4)
|
#define SC_ACLS LALT(KC_F4)
|
||||||
#define SC_CCLS LCTL(KC_F4)
|
#define SC_CCLS LCTL(KC_F4)
|
||||||
|
|
||||||
|
#define TG_NKRO MAGIC_TOGGLE_NKRO
|
||||||
#define OS_SHFT KC_FN0
|
#define OS_SHFT KC_FN0
|
||||||
|
|
||||||
#define _______ KC_TRNS
|
#define _______ KC_TRNS
|
||||||
|
@ -84,208 +141,128 @@
|
||||||
#define ________________ _______, _______
|
#define ________________ _______, _______
|
||||||
#define XXXXXXXXXXXXXXXX XXXXXXX, XXXXXXX
|
#define XXXXXXXXXXXXXXXX XXXXXXX, XXXXXXX
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] =
|
||||||
|
{
|
||||||
|
/* LAYER = LAYER_QWERTY
|
||||||
KEYMAP( \
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, \
|
| FN | PRINT | SCR LK | PAUSE | | F1 | F2 | F3 | F4 | XXXXXX | F5 | F6 | F7 | F8 | XXXXXX | F9 | F10 | F11 | F12 | | VOL DN | MUTE | VOL UP | BACKLT |
|
||||||
KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, KC_TAB, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, KC_CAPS, KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, \
|
| M1 | INS | HOME | PG UP | | ESC | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | = | BACKSP | | NUM LK | KP / | KP * | KP - |
|
||||||
KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, XXXXXXX, KC_UP, XXXXXXX, \
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, KC_LCTL, KC_LCTL, XXXXXXX, KC_LALT, KC_LGUI, XXXXXXX, KC_SPC, KC_SPC, XXXXXXX, OS_SHFT, KC_RALT, KC_APP, KC_RCTL, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \
|
| M2 | DEL | END | PG DN | | TAB | TAB | Q | W | E | R | T | Y | U | I | O | P | - | \ | | KP 7 | KP 8 | KP 9 | KP + |
|
||||||
)
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
|
| M3 | UL | UP | UR | | CAP LK | BACKSP | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | o | KP 4 | KP 5 | KP 6 | KP + |
|
||||||
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// [LAYER_QWERTY] = { // QWERTY
|
| M4 | LEFT | CP/CT | RIGHT | | LSHIFT | LSHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | RSHIFT | | KP 1 | KP 2 | KP 3 | KP Ent |
|
||||||
// { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL },
|
| M5 | DL | DOWN | DR | | LCTRL | XXXXXX | XXXXXX | LWIN | LALT | LOWER | SPACE . SPACE | UPPER | OSHIFT | RALT | APP | XXXXXX | RCTRL | | KP 0 | KP , | KP . | KP Ent |
|
||||||
// { KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT, KC_PGUP },
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, KC_PGDN },
|
*/
|
||||||
// { KC_LCTL, KC_LGUI, M_FUNCT, KC_LALT, M_UPPER, KC_SPC, KC_SPC, M_LOWER, OS_SHFT, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT },
|
KEYMAP(LAYER_QWERTY, \
|
||||||
// },
|
M_HELP , KC_PSCR, KC_SLCK, KC_PAUS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , XXXXXXX, KC_F5 , KC_F6 , KC_F7 , KC_F8 , XXXXXXX, KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_VOLD, KC_MUTE, KC_VOLU, M_BACKL, \
|
||||||
|
M_M1 , KC_INS , KC_HOME, KC_PGUP, KC_ESC , KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_EQL , KC_BSPC, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \
|
||||||
|
M_M2 , KC_DEL , KC_END , KC_PGDN, KC_TAB , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, KC_BSLS, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, \
|
||||||
// /* Numeric Max / Homing Normal - Traditional
|
M_M3 , M_UL , KC_UP , M_UR , KC_CAPS, KC_BSPC, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, \
|
||||||
// * .-----------------------------------. .-----------------------------------. .-----------------_-----------------. .-----------------------------------. .--------------------------.
|
M_M4 , KC_LEFT, M_CP_CT, KC_RGHT, KC_LSFT, KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_RSFT, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, \
|
||||||
// * | | | | | | | | | | | | | | | | | | | | | | | |
|
M_M5 , M_DL , KC_DOWN, M_DR , KC_LCTL, XXXXXXX, XXXXXXX, KC_LGUI, KC_LALT, M_LOWER, KC_SPC , KC_SPC , M_UPPER, OS_SHFT, KC_RALT, KC_APP , XXXXXXX, KC_RCTL, KC_KP_0, KC_PCMM, KC_PDOT, KC_PENT \
|
||||||
// * '-----------------------------------' '-----------------------------------' '-----------------------------------' '-----------------------------------' '--------------------------'
|
),
|
||||||
// * .-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .--------------------------.
|
/* LAYER = LAYER_LOWER
|
||||||
// * | | | | | | ESC | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | | | | | |
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// * |--------+--------+--------+--------| | -------+ -------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------|
|
| ______ | ______ | ______ | ______ | | F13 | F14 | F15 | F16 | XXXXXX | F17 | F18 | F19 | F20 | XXXXXX | F21 | F22 | F23 | F24 | | ______ | MUTE A | ______ | ______ |
|
||||||
// * | | | | | | TAB | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | | | | | |
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// * |--------+--------+--------+ | o | -------+ -------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| '--------+--------+--------'
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// * | | | | | o | CAPS | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | |
|
| ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// * |--------+--------+--------+--------| o | -------+ -------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---+--------| .--------.
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// * | | | | | | LSHIFT | LSHIFT | Z | X | C | V | B | N | M | , | . | / | XXXXXX | | | |
|
| ______ | ______ | ______ | ______ | | ______ | ______ | $ | { | [ | ( | % | # | ) | ] | } | @ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// * |--------+--------+--------+ | | -------+ -------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+--------+--------| .--------+--------+--------.
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// * | | | | | LCTRL | LCTRL | LWIN | FN | LALT | UPPER | XXXXXX . SPACE | LOWER | SHIFT | RALT | APP | RCTRL | | | | | |
|
| ______ | ______ | ______ | ______ | | ______ | ______ | ^ | * | + | - | / | \ | _ | ' | " | ` | ______ | ______ | o | ______ | ______ | ______ | ______ |
|
||||||
// * '-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '--------------------------'
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// */
|
| ______ | ______ | ______ | ______ | | ______ | ______ | | | & | ! | ~ | ; | : | = | < | > | ? | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
|
| ______ | ______ | ______ | ______ | | ______ | XXXXXX | XXXXXX | ______ | ______ | ______ | ______ . ______ | LOWER | ______ | ______ | ______ | XXXXXX | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// /* QWERTY
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
|
*/
|
||||||
// * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | XXXXXX . BACKSP |
|
KEYMAP(LAYER_LOWER, \
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
_______, _______, _______, _______, KC_F13 , KC_F14 , KC_F15 , KC_F16 , XXXXXXX, KC_F17 , KC_F18 , KC_F19 , KC_F20 , XXXXXXX, KC_F21 , KC_F22 , KC_F23 , KC_F24 , _______, M_MUTEA, _______, _______, \
|
||||||
// * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | DEL |
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ------------+--------|
|
_______, _______, _______, _______, _______, _______, KC_DLR , KC_LCBR, KC_LBRC, KC_LPRN, KC_PERC, KC_HASH, KC_RPRN, KC_RBRC, KC_RCBR, KC_AT , _______, _______, _______, _______, _______, _______, \
|
||||||
// * | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | XXXXXX . ENTER | PG UP |
|
_______, _______, _______, _______, _______, _______, KC_CIRC, KC_ASTR, KC_PLUS, KC_MINS, KC_SLSH, KC_BSLS, KC_UNDS, KC_QUOT, KC_DQT , KC_GRV , _______, _______, _______, _______, _______, _______, \
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---------------------+--------|
|
_______, _______, _______, _______, _______, _______, KC_PIPE, KC_AMPR, KC_EXLM, KC_TILD, KC_SCLN, KC_COLN, KC_EQL , KC_LT , KC_GT , KC_QUES, _______, _______, _______, _______, _______, _______, \
|
||||||
// * | LSHIFT | Z | X | C | V | B | N | M | , | . | / | XXXXXX . RSHIFT | UP | PG DN |
|
_______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, M_LOWER, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______ \
|
||||||
// * |--------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+-----------------+--------+--------|
|
),
|
||||||
// * | LCTRL | LWIN | FN | LALT | UPPER | XXXXXX . SPACE | LOWER | SHIFT | RALT | APP | RCTRL | LEFT | DOWN | RIGHT |
|
/* LAYER = LAYER_UPPER
|
||||||
// * '--------------------------------------------------------------------------------------------------------------------------------------'
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// */
|
| ______ | ______ | ______ | ______ | | F13 | F14 | F15 | F16 | XXXXXX | F17 | F18 | F19 | F20 | XXXXXX | F21 | F22 | F23 | F24 | | ______ | MUTE A | ______ | ______ |
|
||||||
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// [LAYER_QWERTY] = { // QWERTY
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC },
|
| ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// { KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT, KC_PGUP },
|
| ______ | ______ | ______ | ______ | | ______ | ______ | F1 | F2 | F3 | F4 | NUM LK | KP / | KP 7 | KP 8 | KP 9 | KP - | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, KC_PGDN },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// { KC_LCTL, KC_LGUI, M_FUNCT, KC_LALT, M_UPPER, KC_SPC, KC_SPC, M_LOWER, OS_SHFT, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT },
|
| ______ | ______ | ______ | ______ | | ______ | ______ | F5 | F6 | F7 | F8 | CAP LK | KP * | KP 4 | KP 5 | KP 6 | KP + | ______ | ______ | o | ______ | ______ | ______ | ______ |
|
||||||
// },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
|
| ______ | ______ | ______ | ______ | | ______ | ______ | F9 | F10 | F11 | F12 | SCR LK | KP 0 | KP 1 | KP 2 | KP 3 | KP Ent | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// /* COLEMAK
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
|
| ______ | ______ | ______ | ______ | | ______ | XXXXXX | XXXXXX | ______ | ______ | UPPER | KP 0 . KP 0 | ______ | RALT | KP . | KP Ent | XXXXXX | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | XXXXXX . BACKSP |
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
*/
|
||||||
// * | TAB | Q | W | F | P | G | J | L | U | Y | ; | [ | ] | \ | DEL |
|
KEYMAP(LAYER_UPPER, \
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ------------+--------|
|
_______, _______, _______, _______, KC_F13 , KC_F14 , KC_F15 , KC_F16 , XXXXXXX, KC_F17 , KC_F18 , KC_F19 , KC_F20 , XXXXXXX, KC_F21 , KC_F22 , KC_F23 , KC_F24 , _______, M_MUTEA, _______, _______, \
|
||||||
// * | BACKSP | A | R | S | T | D | H | N | E | I | O | ' | XXXXXX . ENTER | PG UP |
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---------------------+--------|
|
_______, _______, _______, _______, _______, _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_NLCK, KC_PSLS, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______, _______, _______, _______, _______, _______, \
|
||||||
// * | LSHIFT | Z | X | C | V | B | K | M | , | . | / | XXXXXX . RSHIFT | UP | PG DN |
|
_______, _______, _______, _______, _______, _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_CAPS, KC_PAST, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, _______, _______, _______, _______, _______, \
|
||||||
// * |--------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+-----------------+--------+--------|
|
_______, _______, _______, _______, _______, _______, KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_SLCK, KC_KP_0, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______, _______, _______, _______, _______, _______, \
|
||||||
// * | LCTRL | LWIN | FN | LALT | UPPER | XXXXXX . SPACE | LOWER | SHIFT | RALT | APP | RCTRL | LEFT | DOWN | RIGHT |
|
_______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, M_UPPER, KC_KP_0, KC_KP_0, _______, KC_RALT, KC_PDOT, KC_PENT, XXXXXXX, _______, _______, _______, _______, _______ \
|
||||||
// * '--------------------------------------------------------------------------------------------------------------------------------------'
|
),
|
||||||
// */
|
/* LAYER = LAYER_MOUSE
|
||||||
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// [LAYER_COLEMAK] = { // COLEMAK
|
| ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC },
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// { KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL },
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// { KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, KC_ENT, KC_PGUP },
|
| MS BT1 | MS AC0 | MS WHU | MS AC2 | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, KC_PGDN },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// { KC_LCTL, KC_LGUI, M_FUNCT, KC_LALT, M_UPPER, KC_SPC, KC_SPC, M_LOWER, OS_SHFT, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT },
|
| MS BT2 | MS WHL | MS WHD | MS WHU | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
|
| MS BT3 | MS UL | MS U | MS UR | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | o | ______ | ______ | ______ | ______ |
|
||||||
// /* DVORAK
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
|
| MS BT4 | MS L | MS BT1 | MS R | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | [ | ] | XXXXXX . BACKSP |
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
| MS BT5 | MS DL | MS D | MS DR | | ______ | ______ | ______ | ______ | ______ | ______ | ______ . ______ | ______ | ______ | ______ | ______ | ______ | ______ | | ______ | ______ | ______ | ______ |
|
||||||
// * | TAB | ' | , | . | P | Y | F | G | C | R | L | / | = | \ | DEL |
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ------------+--------|
|
*/
|
||||||
// * | CAPS | A | O | E | U | I | D | H | T | N | S | - | XXXXXX . ENTER | PG UP |
|
KEYMAP(LAYER_MOUSE, \
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---------------------+--------|
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// * | LSHIFT | ; | Q | J | K | X | B | M | W | V | Z | XXXXXX . RSHIFT | UP | PG DN |
|
KC_BTN1, KC_ACL0, KC_WH_U, KC_ACL2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// * |--------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+-----------------+--------+--------|
|
KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// * | LCTRL | LWIN | FN | LALT | UPPER | XXXXXX . SPACE | LOWER | SHIFT | RALT | APP | RCTRL | LEFT | DOWN | RIGHT |
|
KC_BTN3, M_MS_UL, KC_MS_U, M_MS_UR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// * '--------------------------------------------------------------------------------------------------------------------------------------'
|
KC_BTN4, KC_MS_L, KC_BTN1, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
// */
|
KC_BTN5, M_MS_DL, KC_MS_D, M_MS_DR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
|
||||||
|
),
|
||||||
// [LAYER_DVORAK] = { // DVORAK
|
/* LAYER = LAYER_ADJUST
|
||||||
// { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSPC, KC_BSPC },
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// { KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_DEL },
|
| XXXXXX | XXXXXX | XXXXXX | XXXXXX | | HELP 1 | HELP 2 | HELP 3 | HELP 4 | XXXXXX | HELP 5 | HELP 6 | HELP 7 | HELP 8 | XXXXXX | HELP 9 | HELP 0 | XXXXXX | XXXXXX | | VOICE- | AUDIO | VOICE+ | MUSIC |
|
||||||
// { KC_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, KC_ENT, KC_PGUP },
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// { KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_RSFT, KC_UP, KC_PGDN },
|
.-----------------------------------. .-----------------------------------------------------------------------------------------------------------------------------. .-----------------------------------.
|
||||||
// { KC_LCTL, KC_LGUI, M_FUNCT, KC_LALT, M_UPPER, KC_SPC, KC_SPC, M_LOWER, OS_SHFT, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT },
|
| XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX |
|
||||||
// },
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
|
| XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX |
|
||||||
// /* UPPER
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
|
| XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | o | XXXXXX | XXXXXX | XXXXXX | XXXXXX |
|
||||||
// * | PRINT | BR TOG | BR SP+ | BR SP- | BR RST | XXXXXX | XXXXXX | NUM LK | / | * | | NUM LK | SCR LK | XXXXXX . PAUSE |
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| o |--------|--------|--------+--------|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
| XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | RESET | XXXXXX | MOUSE | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX |
|
||||||
// * | | F1 | F2 | F3 | F4 | | | 7 | 8 | 9 | - | | | | INS |
|
|--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------|--------|--------+--------|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ------------+--------|
|
| XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | UPPER | XXXXXX . XXXXXX | LOWER | XXXXXX | XXXXXX | XXXXXX | XXXXXX | XXXXXX | | XXXXXX | XXXXXX | XXXXXX | XXXXXX |
|
||||||
// * | CAP LK | F5 | F6 | F7 | F8 | | | 4 | 5 | 6 | + | | XXXXXX . | HOME |
|
'-----------------------------------' '-----------------------------------------------------------------------------------------------------------------------------' '-----------------------------------'
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---------------------+--------|
|
*/
|
||||||
// * | | F9 | F10 | F11 | F12 | | | 1 | 2 | 3 | ENTER | XXXXXX . | | END |
|
KEYMAP(LAYER_ADJUST, \
|
||||||
// * |--------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+-----------------+--------+--------|
|
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_HELP1, M_HELP2, M_HELP3, M_HELP4, XXXXXXX, M_HELP5, M_HELP6, M_HELP7, M_HELP8, XXXXXXX, M_HELP9, M_HELP0, XXXXXXX, XXXXXXX, MUV_DE , AU_TOG , MUV_IN , MU_TOG , \
|
||||||
// * | | | | | | 0 | | RALT | . | ENTER | | | | |
|
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||||
// * '--------------------------------------------------------------------------------------------------------------------------------------'
|
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||||
// */
|
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||||
|
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET , XXXXXXX, M_MOUSE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||||
// [LAYER_UPPER] = { // UPPER
|
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, M_UPPER, XXXXXXX, XXXXXXX, M_LOWER, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
|
||||||
// { KC_PSCR, M_BRTOG, M_BSPDU, M_BSPDD, M_BDFLT, XXXXXXX, XXXXXXX, KC_NLCK, KC_PSLS, KC_PAST, XXXXXXX, XXXXXXX, KC_SLCK, KC_PAUS, KC_PAUS },
|
),
|
||||||
// { _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______, _______, _______, KC_INS },
|
|
||||||
// { KC_CAPS, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, ________________, KC_HOME },
|
|
||||||
// { _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, ________________, _______, KC_END },
|
|
||||||
// { _______, _______, _______, _______, _______, KC_KP_0, KC_KP_0, _______, KC_RALT, KC_PDOT, KC_PENT, _______, _______, _______, _______ },
|
|
||||||
// },
|
|
||||||
|
|
||||||
// /* LOWER
|
|
||||||
// * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
|
|
||||||
// * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | XXXXXX . BACKSP |
|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
|
||||||
// * | | $ | { | [ | ( | % | # | ) | ] | } | @ | | | | INS |
|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ------------+--------|
|
|
||||||
// * | | ^ | * | + | - | / | \ | _ | ' | " | ` | | XXXXXX . | HOME |
|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---------------------+--------|
|
|
||||||
// * | | | | & | ! | ~ | ; | : | = | < | > | ? | XXXXXX . | | END |
|
|
||||||
// * |--------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+-----------------+--------+--------|
|
|
||||||
// * | | | | | | | | | | | | | | |
|
|
||||||
// * '--------------------------------------------------------------------------------------------------------------------------------------'
|
|
||||||
// */
|
|
||||||
|
|
||||||
// [LAYER_LOWER] = { // LOWER
|
|
||||||
// { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ________________ },
|
|
||||||
// { _______, KC_DLR, KC_LCBR, KC_LBRC, KC_LPRN, KC_PERC, KC_HASH, KC_RPRN, KC_RBRC, KC_RCBR, KC_AT, _______, _______, _______, KC_INS },
|
|
||||||
// { _______, KC_CIRC, KC_ASTR, KC_PPLS, KC_PMNS, KC_SLSH, KC_BSLS, KC_UNDS, KC_QUOT, KC_DQT, KC_GRV, _______, ________________, KC_HOME },
|
|
||||||
// { _______, KC_PIPE, KC_AMPR, KC_EXLM, KC_TILD, KC_SCLN, KC_COLN, KC_EQL, KC_LT, KC_GT, KC_QUES, ________________, _______, KC_END },
|
|
||||||
// { _______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______, _______, _______, _______ },
|
|
||||||
// },
|
|
||||||
|
|
||||||
// /* FUNCTION
|
|
||||||
// * .---------------------------------------------------------------------------------------------------------------------- 2u ------------.
|
|
||||||
// * | NUM LK | | | | | | | | | | | | | XXXXXX . |
|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
|
||||||
// * | SCR LK | F13 | F14 | F15 | F16 | | | | | | | | | | |
|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ------------+--------|
|
|
||||||
// * | CAP LK | F17 | F18 | F19 | F20 | | | | | | | | XXXXXX . | |
|
|
||||||
// * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+- 2u ---------------------+--------|
|
|
||||||
// * | | F21 | F22 | F23 | F24 | | | | | | | XXXXXX . | VOL UP | MUTE |
|
|
||||||
// * |--------+--------+--------+--------+--------+- 2u ------------+--------+--------+--------+--------+-----------------+--------+--------|
|
|
||||||
// * | | | | | | PLAY/PAUSE | | | | | | PTRACK | VOL DN | NTRACK |
|
|
||||||
// * '--------------------------------------------------------------------------------------------------------------------------------------'
|
|
||||||
// */
|
|
||||||
|
|
||||||
// [LAYER_FUNCTION] = { // FUNCTION
|
|
||||||
// { KC_NLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXX },
|
|
||||||
// { KC_SLCK, KC_F13, KC_F14, KC_F15, KC_F16, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
|
|
||||||
// { KC_CAPS, KC_F17, KC_F18, KC_F19, KC_F20, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXX, XXXXXXX },
|
|
||||||
// { _______, KC_F21, KC_F22, KC_F23, KC_F24, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, ________________, KC_VOLU, KC_MUTE },
|
|
||||||
// { _______, _______, _______, _______, _______, KC_MPLY, KC_MPLY, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT },
|
|
||||||
// },
|
|
||||||
|
|
||||||
// #ifdef MOUSEKEY_ENABLE
|
|
||||||
|
|
||||||
// [LAYER_MOUSE] = { // MOUSE
|
|
||||||
// { _______, KC_ACL0, KC_ACL1, KC_ACL2, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXX },
|
|
||||||
// { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX },
|
|
||||||
// { XXXXXXX, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXXXXXXXXXXX, KC_WH_U },
|
|
||||||
// { _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, ________________, KC_MS_U, KC_WH_D },
|
|
||||||
// { _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R },
|
|
||||||
// },
|
|
||||||
|
|
||||||
// #endif
|
|
||||||
|
|
||||||
// [LAYER_ADJUST] = { // ADJUST
|
|
||||||
// { _______, TIMBR_1, TIMBR_2, TIMBR_3, TIMBR_4, TMPO_UP, TMPO_DN, TMPO_DF, _______, _______, _______, MU_TOG, AU_TOG, ________________ },
|
|
||||||
// { _______, M_QWRTY, M_COLMK, M_DVORK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
|
|
||||||
// { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ________________, _______ },
|
|
||||||
// { _______, _______, _______, _______, M_BACKL, RESET, _______, M_MOUSE, _______, _______, _______, ________________, MUV_IN, _______ },
|
|
||||||
// { _______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______, _______, MUV_DE, _______ },
|
|
||||||
// },
|
|
||||||
|
|
||||||
|
|
||||||
// /*
|
|
||||||
// [LAYER_EMPTY] = { // LAYER
|
|
||||||
// { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ________________ },
|
|
||||||
// { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
|
|
||||||
// { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ________________, _______ },
|
|
||||||
// { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ________________, _______, _______ },
|
|
||||||
// { _______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______, _______, _______, _______ },
|
|
||||||
// },
|
|
||||||
// */
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -328,61 +305,101 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
switch(id)
|
switch(id)
|
||||||
{
|
{
|
||||||
|
|
||||||
// case MACRO_BREATH_TOGGLE:
|
case MACRO_HELP_1:
|
||||||
// if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
// {
|
{
|
||||||
// breathing_toggle();
|
uprint("H1");
|
||||||
// }
|
}
|
||||||
// break;
|
break;
|
||||||
|
|
||||||
// case MACRO_BREATH_SPEED_INC:
|
case MACRO_HELP_2:
|
||||||
// if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
// {
|
{
|
||||||
// breathing_speed_inc(1);
|
uprint("H2");
|
||||||
// }
|
}
|
||||||
// break;
|
break;
|
||||||
|
|
||||||
// case MACRO_BREATH_SPEED_DEC:
|
case MACRO_HELP_3:
|
||||||
// if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
// {
|
{
|
||||||
// breathing_speed_dec(1);
|
uprint("H3");
|
||||||
// }
|
}
|
||||||
// break;
|
break;
|
||||||
|
|
||||||
// case MACRO_BREATH_DEFAULT:
|
case MACRO_HELP_4:
|
||||||
// if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
// {
|
{
|
||||||
// breathing_defaults();
|
uprint("H4");
|
||||||
// }
|
}
|
||||||
// break;
|
break;
|
||||||
|
|
||||||
|
case MACRO_HELP_5:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
uprint("H5");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_HELP_6:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
uprint("H6");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_HELP_7:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
uprint("H7");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_HELP_8:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
uprint("H8");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_HELP_9:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
uprint("H9");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_BREATH_TOGGLE:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
breathing_toggle();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_BREATH_SPEED_INC:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
breathing_speed_inc(1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_BREATH_SPEED_DEC:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
breathing_speed_dec(1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MACRO_BREATH_DEFAULT:
|
||||||
|
if (record->event.pressed)
|
||||||
|
{
|
||||||
|
breathing_defaults();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case MACRO_QWERTY:
|
case MACRO_QWERTY:
|
||||||
if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
{
|
{
|
||||||
persistant_default_layer_set(1UL<<LAYER_QWERTY);
|
persistant_default_layer_set(1UL<<LAYER_QWERTY);
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
PLAY_NOTE_ARRAY(tone_qwerty, false, STACCATO);
|
|
||||||
#endif /* AUDIO_ENABLE */
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MACRO_COLEMAK:
|
|
||||||
if (record->event.pressed)
|
|
||||||
{
|
|
||||||
persistant_default_layer_set(1UL<<LAYER_COLEMAK);
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
PLAY_NOTE_ARRAY(tone_colemak, false, STACCATO);
|
|
||||||
#endif /* AUDIO_ENABLE */
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MACRO_DVORAK:
|
|
||||||
if (record->event.pressed)
|
|
||||||
{
|
|
||||||
persistant_default_layer_set(1UL<<LAYER_DVORAK);
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
PLAY_NOTE_ARRAY(tone_dvorak, false, STACCATO);
|
|
||||||
#endif /* AUDIO_ENABLE */
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -390,8 +407,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
{
|
{
|
||||||
layer_on(LAYER_UPPER);
|
layer_on(LAYER_UPPER);
|
||||||
// breathing_speed_set(2);
|
breathing_speed_set(2);
|
||||||
// breathing_pulse();
|
breathing_pulse();
|
||||||
update_tri_layer(LAYER_LOWER, LAYER_UPPER, LAYER_ADJUST);
|
update_tri_layer(LAYER_LOWER, LAYER_UPPER, LAYER_ADJUST);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -405,8 +422,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
{
|
{
|
||||||
layer_on(LAYER_LOWER);
|
layer_on(LAYER_LOWER);
|
||||||
// breathing_speed_set(2);
|
breathing_speed_set(2);
|
||||||
// breathing_pulse();
|
breathing_pulse();
|
||||||
update_tri_layer(LAYER_LOWER, LAYER_UPPER, LAYER_ADJUST);
|
update_tri_layer(LAYER_LOWER, LAYER_UPPER, LAYER_ADJUST);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -419,14 +436,14 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
case MACRO_FUNCTION:
|
case MACRO_FUNCTION:
|
||||||
if (record->event.pressed)
|
if (record->event.pressed)
|
||||||
{
|
{
|
||||||
// breathing_speed_set(3);
|
breathing_speed_set(3);
|
||||||
// breathing_enable();
|
breathing_enable();
|
||||||
layer_on(LAYER_FUNCTION);
|
layer_on(LAYER_FUNCTION);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// breathing_speed_set(1);
|
breathing_speed_set(1);
|
||||||
// breathing_self_disable();
|
breathing_self_disable();
|
||||||
layer_off(LAYER_FUNCTION);
|
layer_off(LAYER_FUNCTION);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -476,58 +493,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/*
|
|
||||||
case MACRO_AUDIO_TOGGLE:
|
|
||||||
if (record->event.pressed)
|
|
||||||
{
|
|
||||||
if (is_audio_on())
|
|
||||||
{
|
|
||||||
audio_off();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
audio_on();
|
|
||||||
PLAY_NOTE_ARRAY(tone_audio_on, false, STACCATO);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MACRO_MUSIC_TOGGLE:
|
|
||||||
if (record->event.pressed)
|
|
||||||
{
|
|
||||||
if (IS_LAYER_ON(LAYER_MUSIC))
|
|
||||||
{
|
|
||||||
layer_off(LAYER_MUSIC);
|
|
||||||
stop_all_notes();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
PLAY_NOTE_ARRAY(tone_music_on, false, STACCATO);
|
|
||||||
layer_on(LAYER_MUSIC);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case MACRO_INC_VOICE:
|
|
||||||
if (record->event.pressed)
|
|
||||||
{
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
voice_iterate();
|
|
||||||
PLAY_NOTE_ARRAY(music_scale, false, STACCATO);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MACRO_DEC_VOICE:
|
|
||||||
if (record->event.pressed)
|
|
||||||
{
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
voice_deiterate();
|
|
||||||
PLAY_NOTE_ARRAY(music_scale, false, STACCATO);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
*/
|
|
||||||
|
|
||||||
#endif /* AUDIO_ENABLE */
|
#endif /* AUDIO_ENABLE */
|
||||||
|
|
||||||
#ifdef BACKLIGHT_ENABLE
|
#ifdef BACKLIGHT_ENABLE
|
||||||
|
@ -536,7 +501,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
{
|
{
|
||||||
backlight_step();
|
backlight_step();
|
||||||
}
|
}
|
||||||
#endif
|
break;
|
||||||
|
#endif /* BACKLIGHT_ENABLE */
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
@ -545,7 +511,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
return MACRO_NONE;
|
return MACRO_NONE;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#ifdef AUDIO_ENABLE
|
#ifdef AUDIO_ENABLE
|
||||||
|
|
||||||
void matrix_init_user(void)
|
void matrix_init_user(void)
|
||||||
|
@ -598,7 +563,6 @@ void led_set_user(uint8_t usb_led)
|
||||||
old_usb_led = usb_led;
|
old_usb_led = usb_led;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void startup_user()
|
void startup_user()
|
||||||
{
|
{
|
||||||
_delay_ms(10); // gets rid of tick
|
_delay_ms(10); // gets rid of tick
|
||||||
|
|
|
@ -139,14 +139,15 @@
|
||||||
|
|
||||||
// Changable Row Macro
|
// Changable Row Macro
|
||||||
|
|
||||||
#define KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, \
|
#define _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, \
|
||||||
k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C, k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C \
|
k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C, k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C \
|
||||||
) \
|
) \
|
||||||
KEYMAP_ROW_LEFT_ ## LEFT_TYPE(k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C), KEYMAP_ROW_RIGHT_ ## RIGHT_TYPE(k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C)
|
KEYMAP_ROW_LEFT_ ## _LEFT_TYPE( k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C ), \
|
||||||
|
KEYMAP_ROW_RIGHT_ ## _RIGHT_TYPE( k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C )
|
||||||
|
|
||||||
// Changable Master Macro
|
// Changable Master Macro
|
||||||
|
|
||||||
#define KEYMAP_MASTER(LEFT_TYPE, RIGHT_TYPE, \
|
#define KEYMAP_MASTER(_MATRIX_LAYER, _LEFT_TYPE, _RIGHT_TYPE, \
|
||||||
k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C, k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C, \
|
k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C, k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C, \
|
||||||
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C, \
|
||||||
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C, \
|
||||||
|
@ -154,13 +155,13 @@ KEYMAP_ROW_LEFT_ ## LEFT_TYPE(k001, k002, k003, k004, k005, k006, k007, k008, k0
|
||||||
k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k40B, k40C, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C, \
|
k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k40B, k40C, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C, \
|
||||||
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C \
|
k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C \
|
||||||
) \
|
) \
|
||||||
{ \
|
[_MATRIX_LAYER] = { \
|
||||||
{ KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C, k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C ) },\
|
{ _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, k001, k002, k003, k004, k005, k006, k007, k008, k009, k00A, k00B, k00C, k011, k012, k013, k014, k015, k016, k017, k018, k019, k01A, k01B, k01C ) },\
|
||||||
{ KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C ) },\
|
{ _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, k101, k102, k103, k104, k105, k106, k107, k108, k109, k10A, k10B, k10C, k111, k112, k113, k114, k115, k116, k117, k118, k119, k11A, k11B, k11C ) },\
|
||||||
{ KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C ) },\
|
{ _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, k201, k202, k203, k204, k205, k206, k207, k208, k209, k20A, k20B, k20C, k211, k212, k213, k214, k215, k216, k217, k218, k219, k21A, k21B, k21C ) },\
|
||||||
{ KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k30B, k30C, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C ) },\
|
{ _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, k301, k302, k303, k304, k305, k306, k307, k308, k309, k30A, k30B, k30C, k311, k312, k313, k314, k315, k316, k317, k318, k319, k31A, k31B, k31C ) },\
|
||||||
{ KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k40B, k40C, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C ) },\
|
{ _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, k401, k402, k403, k404, k405, k406, k407, k408, k409, k40A, k40B, k40C, k411, k412, k413, k414, k415, k416, k417, k418, k419, k41A, k41B, k41C ) },\
|
||||||
{ KEYMAP_ROW(LEFT_TYPE, RIGHT_TYPE, k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C ) },\
|
{ _KEYMAP_ROW( _LEFT_TYPE, _RIGHT_TYPE, k501, k502, k503, k504, k505, k506, k507, k508, k509, k50A, k50B, k50C, k511, k512, k513, k514, k515, k516, k517, k518, k519, k51A, k51B, k51C ) },\
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -63,7 +63,7 @@ COMMAND_ENABLE ?= yes # Commands for debug and configuration
|
||||||
SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend
|
SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend
|
||||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
NKRO_ENABLE ?= yes # USB Nkey Rollover
|
NKRO_ENABLE ?= yes # USB Nkey Rollover
|
||||||
BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality on B7 by default
|
BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality on B7 by default
|
||||||
MIDI_ENABLE ?= no # MIDI controls
|
MIDI_ENABLE ?= no # MIDI controls
|
||||||
UNICODE_ENABLE ?= no # Unicode
|
UNICODE_ENABLE ?= no # Unicode
|
||||||
BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID
|
BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||||
|
|
|
@ -24,5 +24,45 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||||
void led_set_kb(uint8_t usb_led) {
|
void led_set_kb(uint8_t usb_led) {
|
||||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||||
|
|
||||||
|
if (usb_led & (1 << USB_LED_CAPS_LOCK))
|
||||||
|
{
|
||||||
|
// HI
|
||||||
|
DDRD |= (1<<4);
|
||||||
|
PORTD |= (1<<4);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Hi-Z
|
||||||
|
DDRD &= ~(1<<4);
|
||||||
|
PORTD &= ~(1<<4);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (usb_led & (1 << USB_LED_NUM_LOCK))
|
||||||
|
{
|
||||||
|
// HI
|
||||||
|
DDRD |= (1<<5);
|
||||||
|
PORTD |= (1<<5);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Hi-Z
|
||||||
|
DDRD &= ~(1<<5);
|
||||||
|
PORTD &= ~(1<<5);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (usb_led & (1 << USB_LED_SCROLL_LOCK))
|
||||||
|
{
|
||||||
|
// HI
|
||||||
|
DDRD |= (1<<6);
|
||||||
|
PORTD |= (1<<6);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Hi-Z
|
||||||
|
DDRD &= ~(1<<6);
|
||||||
|
PORTD &= ~(1<<6);
|
||||||
|
}
|
||||||
|
|
||||||
led_set_user(usb_led);
|
led_set_user(usb_led);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
* | | | |
|
* | | | |
|
||||||
* = = = =
|
* = = = =
|
||||||
* | | 32KB-4KB | | 128KB-8KB
|
* | | 32KB-4KB | | 128KB-8KB
|
||||||
* 0x6000 +---------------+ 0x1FC00 +---------------+
|
* 0x7000 +---------------+ 0x1E000 +---------------+
|
||||||
* | Bootloader | 4KB | Bootloader | 8KB
|
* | Bootloader | 4KB | Bootloader | 8KB
|
||||||
* 0x7FFF +---------------+ 0x1FFFF +---------------+
|
* 0x7FFF +---------------+ 0x1FFFF +---------------+
|
||||||
*
|
*
|
||||||
|
|
|
@ -384,9 +384,6 @@ static bool command_common(uint8_t code)
|
||||||
debug_mouse = true;
|
debug_mouse = true;
|
||||||
} else {
|
} else {
|
||||||
print("\ndebug: off\n");
|
print("\ndebug: off\n");
|
||||||
debug_matrix = false;
|
|
||||||
debug_keyboard = false;
|
|
||||||
debug_mouse = false;
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue