diff options
Diffstat (limited to 'keyboards/planck/keymaps')
-rw-r--r-- | keyboards/planck/keymaps/cbbrowne/readme.org (renamed from keyboards/planck/keymaps/cbbrowne/readme.md) | 63 | ||||
-rw-r--r-- | keyboards/planck/keymaps/vxid/config.h | 1 | ||||
-rw-r--r-- | keyboards/planck/keymaps/vxid/keymap.c | 49 | ||||
-rw-r--r-- | keyboards/planck/keymaps/vxid/readme.md | 13 |
4 files changed, 92 insertions, 34 deletions
diff --git a/keyboards/planck/keymaps/cbbrowne/readme.md b/keyboards/planck/keymaps/cbbrowne/readme.org index e55b130eff..2b10058584 100644 --- a/keyboards/planck/keymaps/cbbrowne/readme.md +++ b/keyboards/planck/keymaps/cbbrowne/readme.org @@ -1,20 +1,18 @@ -cbbrowne custom keyboard -============================== +* cbbrowne custom keyboard -Due to cbbrowne@acm.org -Christopher Browne + Due to cbbrowne@acm.org + Christopher Browne -This was originally based on the default keyboard map, but I have been -doing sundry experimentation: + This was originally based on the default keyboard map, but I have + been doing sundry experimentation: -1. Useful Experiments ----------------------------------------- +** Useful Experiments - * It made sense to mess around some with keyboard maps. + - It made sense to mess around some with keyboard maps. - I added a keypad, originally based on keymaps/numpad.c, but mighty substantially revised, as that one seems to be rotated 90 degrees from usual conventions for number pads - * The keypad layer also includes some sample "hacks" of cool things, + - The keypad layer also includes some sample "hacks" of cool things, all using actions attached in using the function action_get_macro() - Key [1][2] aka "q" types out my name, cbbrowne, as a fun example of a key generating a bunch of keystrokes. The keystroke is @@ -24,7 +22,7 @@ doing sundry experimentation: - 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 [1][3] aka "e" spits out the keymap version number - * Trying out sgoodwin's "hold Enter down to get Shift" + - 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... @@ -33,11 +31,11 @@ doing sundry experimentation: - 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() + - 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 + - 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 @@ -45,8 +43,7 @@ doing sundry experimentation: some sort -2. Some code structure ideas ---------------------------------------------------- +** Some code structure ideas Each layer is given a name to aid in readability, which is then used in the keymap matrix below. The underscores do not denote @@ -65,57 +62,55 @@ doing sundry experimentation: to care (beyond "start at 0", and arguably even that's not needed) about their values. -3. Things I did not like about the default mapping ---------------------------------------------------------- +** Things I did not like about the default mapping - * I found control too hard to get to. I use it more than Tab, so + + - I found control too hard to get to. I use it more than Tab, so switched it there. - * Having dash on [lower-j] is a bit nonintuitive, but may be OK - * I switched ESC/TAB/M(0) around - * I'm suspicious that I want to shift M(0) from [4][1] to [4][2], + - Having dash on [lower-j] is a bit nonintuitive, but may be OK + - I switched ESC/TAB/M(0) around + - I'm suspicious that I want to shift M(0) from [4][1] to [4][2], and shift ESC off the first column so KC_LCTL and KC_LALT can be on the first column. - * I needed to swap ' and ENTER + - I needed to swap ' and ENTER -4. Unuseful experiments ---------------------------------------------------------- +** 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!!! - I have done 30 years of learning of Emacs key mappings, and these alternative keyboards massively mess me up - * Space Cadet Shift; switching L_SHIFT to KC_LSP0, so that when I + - 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 ---------------------------------------------------------- +** 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 interesting helpers. It might be interesting to add a "tmux layer," or to have a few keys in a layer oriented towards that - Keys for... - Picking windows 0 thru 8 - next/prev/new window - * The mollat tmux layer also suggests some thoughts about Emacs + - The mollat tmux layer also suggests some thoughts about Emacs helpers. - * I do not presently have anything that handles X11 screen + - 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 + - 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: + - The jeebak keymap seems to have some neat ideas: - Number layer which is aggressive about having numbers in several places - TouchCursor layer seems interesting - It sets up a layer with cursor keys on the home keys - * The jeremy-dev keymap has some very interesting concepts + - The jeremy-dev keymap has some very interesting concepts - Shift hands outwards; the special keys go in the center - Symbol layer has some compound keys for C operators like /=, *=, -=, +=, ... - This is likely what I'll use for my XD75re, and maybe I'll fork a diff --git a/keyboards/planck/keymaps/vxid/config.h b/keyboards/planck/keymaps/vxid/config.h new file mode 100644 index 0000000000..6f70f09bee --- /dev/null +++ b/keyboards/planck/keymaps/vxid/config.h @@ -0,0 +1 @@ +#pragma once diff --git a/keyboards/planck/keymaps/vxid/keymap.c b/keyboards/planck/keymaps/vxid/keymap.c new file mode 100644 index 0000000000..51d1daa70a --- /dev/null +++ b/keyboards/planck/keymaps/vxid/keymap.c @@ -0,0 +1,49 @@ +#include QMK_KEYBOARD_H + +extern keymap_config_t keymap_config; + +enum planck_layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = LAYOUT_planck_grid( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS, + KC_LCTL, KC_LGUI, KC_LALT, LOWER, RAISE, KC_MINS, KC_SPC, KC_EQL, KC_LBRC, KC_RBRC, KC_QUOT, KC_GRV +), + +[_LOWER] = LAYOUT_planck_grid( + _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, _______, _______, + _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +[_RAISE] = LAYOUT_planck_grid( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +[_ADJUST] = LAYOUT_planck_grid( + RESET, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + +}; + +uint32_t layer_state_set_user(uint32_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/planck/keymaps/vxid/readme.md b/keyboards/planck/keymaps/vxid/readme.md new file mode 100644 index 0000000000..9e0ae33423 --- /dev/null +++ b/keyboards/planck/keymaps/vxid/readme.md @@ -0,0 +1,13 @@ +# vxid planck layout + +## Layout + +This planck layout aims at proviging most symbols on the base layer while remaining usable. +The minus and space keys become alt and gui modifiers when pressed. +Arrow keys are located on hjkl on the lower layer. + +## Building + +``` + make planck/rev6:vxid:dfu-util +``` |