summaryrefslogtreecommitdiffstats
path: root/keyboard/atomic/common_keymaps/keymap_matthew.c
blob: 56e7003a975e473097c68a2907f33c70c678b42e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// by Matthew Pepers - https://github.com/pepers

/* grid planck layout - modified programmer dvorak
,-----------------------------------------------------------------------------------------------.
| pause |   @   |   |   |   ^   |       |       |       |       |   *   |   #   |   $   |  del  |
|  esc  |  ; :  |  , <  |  . >  |   P   |   Y   |   F   |   G   |   G   |   C   |   R   | bkspc |
|  F1   |  F2   |  F3   |  F4   |  F5   |  F6   |  F7   |  F8   |  F9   |  F10  |  F11  |  F12  |
|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
|   &   |   /   |   {   |   (   |   [   |   =   |   !   |   ]   |   )   |   }   |   \   |   +   |
|  ` ~  |   A   |   O   |   E   |   U   |   I   |   D   |   H   |   T   |   N   |   S   |  - _  |
|   %   |   7   |   5   |   3   |   1   |   9   |   0   |   2   |   4   |   6   |   8   |   ?   |
|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
|       |       |       |       |       |       |       |       |       |       |       | prtsc |
|  tab  |  ' "  |   Q   |   J   |   K   |   X   |   B   |   M   |   W   |   V   |   Z   | retrn |
|       |       |       |       |       |       |       |       |       |       |       | insrt |
|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|-------|
|       |       |       |       |       |       |       |       |       |       |       |       |
| lctrl | lgui  | lalt  | ralt  | lower | shift | space | raise | left  | down  |  up   | right |
|       |       |       |       |       |       |       |       | home  | pgdn  | pgup  |  end  |
`-----------------------------------------------------------------------------------------------'
*/

#include "keymap_common.h"

const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  /* 0: dvorak */
  [0] = KEYMAP_GRID( ESC, SCLN, COMM,  DOT,    P,    Y,    F,    G,    C,    R,    L, BSPC,   \
                     GRV,    A,    O,    E,    U,    I,    D,    H,    T,    N,    S, MINS,   \
                     TAB, QUOT,    Q,    J,    K,    X,    B,    M,    W,    V,    Z,  ENT,   \
                    LCTL, LGUI, LALT, RALT,  FN1, LSFT,  SPC,  FN2, LEFT, DOWN,   UP, RGHT),

  /* 1: lower (FN1) */
  [1] = KEYMAP_GRID( F1,   F2,   F3,   F4,   F5,   F6,   F7,   F8,   F9,  F10,  F11,  F12,   \
                   FN17,    7,    5,    3,    1,    9,    0,    2,    4,    6,    8, FN18,   \
                   TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,  INS,   \
                   TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, HOME, PGDN, PGUP,  END),

  /* 2: raise (FN2) */
  [2] = KEYMAP_GRID(PAUS, FN19, FN20, FN21, TRNS, TRNS, TRNS, TRNS, FN22, FN23, FN24,  DEL,   \
                    FN10, SLSH, FN11, FN12, LBRC,  EQL, FN13, RBRC, FN14, FN15, BSLS, FN16,   \
                    TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, PSCR,   \
                    TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS),

};

const uint16_t PROGMEM fn_actions[] = {
    [1] = ACTION_LAYER_MOMENTARY(1),               // lower Fn layer
    [2] = ACTION_LAYER_MOMENTARY(2),               // raise Fn layer

    // lower row1
    [17] = ACTION_MODS_KEY(MOD_LSFT, KC_5),        // %
    [18] = ACTION_MODS_KEY(MOD_LSFT, KC_SLASH),    // ?
    
    // raise row0
    [19] = ACTION_MODS_KEY(MOD_LSFT, KC_2),        // @
    [20] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLASH),   // |
    [21] = ACTION_MODS_KEY(MOD_LSFT, KC_6),        // ^
    [22] = ACTION_MODS_KEY(MOD_LSFT, KC_8),        // *
    [23] = ACTION_MODS_KEY(MOD_LSFT, KC_3),        // #
    [24] = ACTION_MODS_KEY(MOD_LSFT, KC_4),        // $
    
    // raise row1
    [10] = ACTION_MODS_KEY(MOD_LSFT, KC_7),        // &
    [11] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRACKET), // {
    [12] = ACTION_MODS_KEY(MOD_LSFT, KC_9),        // (
    [13] = ACTION_MODS_KEY(MOD_LSFT, KC_1),        // !
    [14] = ACTION_MODS_KEY(MOD_LSFT, KC_0),        // )
    [15] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRACKET), // }
    [16] = ACTION_MODS_KEY(MOD_LSFT, KC_EQUAL),    // +
};