]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/satan/keymaps/spacemanspiff/keymap.c
Keymap: Spaceman Spiff layout for the GH60 Satan (#3596)
[qmk_firmware.git] / keyboards / satan / keymaps / spacemanspiff / keymap.c
1 #include QMK_KEYBOARD_H
2
3 // Each layer gets a name for readability, which is then used in the keymap matrix below.
4 #define _BL 0
5 #define _FL 1
6 #define _CL 3
7
8 // Add names for complex momentary keys, to keep the keymap matrix aligned better.
9 #define CTL_ESC MT(MOD_LCTL,KC_ESC)
10 #define GUI_ENT MT(MOD_RGUI, KC_ENT)
11
12 #define _______ KC_TRNS
13
14 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
15   /* Keymap _BL: (Base Layer) Default Layer
16    * ,-----------------------------------------------------------.
17    * |   `| F1| F2| F3| F4| F5| F6| F7| F8| F9| F0|  -|  =|Del   |
18    * |-----------------------------------------------------------|
19    * |Tab  |  Q|  W|  E|  R|  T|  Y|  U|  I|  O|  P|  [|  ]|  \  |
20    * |-----------------------------------------------------------|
21    * |Ctl/Esc|  A|  S|  D|  F|  G|  H|  J|  K|  L|  ;|  '|Return |
22    * |-----------------------------------------------------------|
23    * |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift     |
24    * |-----------------------------------------------------------|
25    * |Ctrl|Alt |Gui |      Space            |Gui |Alt |FN  |Ctrl |
26    * `-----------------------------------------------------------'
27    */
28 [_BL] = LAYOUT_60_ansi(
29   KC_GRV,   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, \
30   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, \
31   CTL_ESC,  KC_A,     KC_S,     KC_D,     KC_F,     KC_G,     KC_H,     KC_J,     KC_K,     KC_L,     KC_SCLN,  KC_QUOT,            KC_ENT,  \
32   KC_LSFT,            KC_Z,     KC_X,     KC_C,     KC_V,     KC_B,     KC_N,     KC_M,     KC_COMM,  KC_DOT,   KC_SLSH,            KC_RSFT, \
33   MO(_CL),  KC_RALT,  KC_LGUI,                      KC_SPC,                                           GUI_ENT,  KC_RALT,  KC_RCTL,  MO(_FL)),
34
35
36   /* Keymap _FL: Function Layer
37    * ,-----------------------------------------------------------.
38    * |  `|   |   |   |   |   |   |   |   |   |   |   |   |  RESET|
39    * |-----------------------------------------------------------|
40    * |     |   |   |   |   |   |   |   |   |   |   |   |   |     |
41    * |-----------------------------------------------------------|
42    * |     |VDN|VUP|MUTE|   |   |   |       |   |   |   |        |
43    * |-----------------------------------------------------------|
44    * |        |   |   |   |   |   |   |   |   |   |   |          |
45    * |-----------------------------------------------------------|
46    * |    |    |    |                        |    |    |    |    |
47    * `-----------------------------------------------------------'
48    */
49 [_FL] = LAYOUT_60_ansi(
50   KC_GRV,   _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  RESET,   \
51   _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______, \
52   _______,  KC_VOLD,  KC_VOLU,  KC_MUTE,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______, \
53   _______,            _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______, \
54   _______,  _______,  _______,                      _______,                                          _______,  _______,  _______,  _______),
55
56   /* Keymap _CL: Control+ Layer
57    * ,-----------------------------------------------------------.
58    * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Del   |
59    * |-----------------------------------------------------------|
60    * |     |   |   |   |   |   |   |   |   |   |PGU|   |   |     |
61    * |-----------------------------------------------------------|
62    * |       |   |   |   |   |   |LFT| DN| UP|RGT|   |   |       |
63    * |-----------------------------------------------------------|
64    * |        |   |   |   |   |   |PGD|   |   |   |   |          |
65    * |-----------------------------------------------------------|
66    * |    |    |    |                       |    |    |     |    |
67    * `-----------------------------------------------------------'
68    */
69
70 [_CL] = LAYOUT_60_ansi(
71   KC_ESC,  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_DEL, \
72   KC_TAB,  LCTL(KC_Q),    LCTL(KC_W),    LCTL(KC_E),   LCTL(KC_R),   LCTL(KC_T),   LCTL(KC_Y),   LCTL(KC_U),   LCTL(KC_I),   LCTL(KC_O),    KC_PGUP,        KC_ESC,         LCTL(KC_RBRC),  LCTL(KC_BSLS), \
73   _______, LCTL(KC_A),    LCTL(KC_S),    LCTL(KC_D),   LCTL(KC_F),   LCTL(KC_G),   KC_LEFT,      KC_DOWN,      KC_UP,        KC_RIGHT,      LCTL(KC_SCLN),  LCTL(KC_QUOT),                  LCTL(KC_ENT),  \
74   KC_LSFT,                LCTL(KC_Z),    LCTL(KC_X),   LCTL(KC_C),   LCTL(KC_V),   KC_PGDN,      LCTL(KC_N),   LCTL(KC_M),   LCTL(KC_COMM), LCTL(KC_DOT),   LCTL(KC_SLSH),                  LCTL(KC_RSFT), \
75   _______, LCTL(KC_LALT), LCTL(KC_LGUI),                             LCTL(KC_SPC),                                                          LCTL(KC_RGUI),  LCTL(KC_RALT),  KC_RCTL,        MO(_FL)),
76 };
77