Merge pull request #733 from cbbrowne/master
Various recent enhancements to my keyboard map
This commit is contained in:
commit
94ef7f99b8
3 changed files with 38 additions and 15 deletions
|
@ -9,6 +9,11 @@
|
||||||
#define randmul 181
|
#define randmul 181
|
||||||
#define randmod 167
|
#define randmod 167
|
||||||
|
|
||||||
|
/* Filler to make layering a bit clearer *
|
||||||
|
* borrowed from basic keymap */
|
||||||
|
|
||||||
|
#define _______ KC_TRNS
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -84,21 +84,22 @@ enum macro_id {
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
[_QW] = { /* Qwerty */
|
[_QW] = { /* 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, KC_ENT},
|
{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_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, KC_QUOT },
|
||||||
{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, M(M_LED), KC_LALT, KC_LGUI, MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}
|
||||||
|
/* Note that KC_SPC is recorded TWICE, so that either matrix position can activate it */
|
||||||
},
|
},
|
||||||
[_RS] = { /* RAISE */
|
[_RS] = { /* 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_TRNS, 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_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_KP), DF(_KP), RESET, KC_TRNS},
|
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_KP), DF(_KP), RESET, _______},
|
||||||
{KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
{_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
||||||
},
|
},
|
||||||
[_LW] = { /* LOWER */
|
[_LW] = { /* 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_TRNS, 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_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_KP), DF(_KP), RESET, KC_TRNS},
|
{_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_KP), DF(_KP), RESET, _______},
|
||||||
{KC_TRNS, DF(_KP), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
{_______, DF(_KP), _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY}
|
||||||
},
|
},
|
||||||
[_KP] = { /* Key Pad */
|
[_KP] = { /* 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, 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},
|
||||||
|
@ -108,6 +109,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* What is fn_actions actually used for??? */
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
const uint16_t PROGMEM fn_actions[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -7,16 +7,10 @@ Christopher Browne
|
||||||
This was originally based on the default keyboard map, but I have been
|
This was originally based on the default keyboard map, but I have been
|
||||||
doing sundry experimentation:
|
doing sundry experimentation:
|
||||||
|
|
||||||
1. Experiments
|
1. Useful Experiments
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
|
|
||||||
* To figure things out about the toolset
|
|
||||||
* I'm an Emacs guy, so will be needing a fair bit of tuning
|
|
||||||
* It made sense to mess around some with keyboard maps.
|
* It made sense to mess around some with keyboard maps.
|
||||||
- I tried added Workman alongside Dvorak and Colemak
|
|
||||||
- Boy, oh boy, these don't help!!!
|
|
||||||
- I have done 30 years of learning of Emacs key mappings, and
|
|
||||||
these alternative keyboards massively mess me up
|
|
||||||
- I added a keypad, originally based on keymaps/numpad.c, but
|
- I added a keypad, originally based on keymaps/numpad.c, but
|
||||||
mighty substantially revised, as that one seems to be rotated 90
|
mighty substantially revised, as that one seems to be rotated 90
|
||||||
degrees from usual conventions for number pads
|
degrees from usual conventions for number pads
|
||||||
|
@ -30,6 +24,7 @@ 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 :-)
|
||||||
|
|
||||||
2. Some code structure ideas
|
2. Some code structure ideas
|
||||||
---------------------------------------------------
|
---------------------------------------------------
|
||||||
|
@ -62,3 +57,24 @@ 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
|
||||||
|
* I tried added Workman alongside Dvorak and Colemak
|
||||||
|
- Boy, oh boy, these don't help!!!
|
||||||
|
- I have done 30 years of learning of Emacs key mappings, and
|
||||||
|
these alternative keyboards massively mess me up
|
||||||
|
|
||||||
|
4. TODO
|
||||||
|
---------------------------------------------------------
|
||||||
|
|
||||||
|
* I use tmux quite a lot; the mollat keymap seems to have some
|
||||||
|
interesting helpers. It might be interesting to add a "tmux
|
||||||
|
layer," or to have a few keys in a layer oriented towards that
|
||||||
|
* The mollat tmux layer also suggests some thoughts about Emacs
|
||||||
|
helpers.
|
||||||
|
* I do not presently have anything that handles X11 screen
|
||||||
|
switching, as with Control-Alt-various
|
||||||
|
* I ought to probably look into KC_LEAD, to have some key combos
|
||||||
|
that do not need to be concurrent
|
||||||
|
* The jeebak keymap seems to have some neat ideas:
|
||||||
|
- Number layer which is aggressive about having numbers in several places
|
||||||
|
- Touch layer seems interesting
|
||||||
|
* Trying out sgoodwin's "hold Enter down to get Shift"
|
Loading…
Reference in a new issue