]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergotravel/keymaps/ian/keymap.c
Merge branch 'master' of github.com:qmk/qmk_firmware into hf/shinydox
[qmk_firmware.git] / keyboards / ergotravel / keymaps / ian / keymap.c
1 #include QMK_KEYBOARD_H
2
3 extern keymap_config_t keymap_config;
4
5 enum custom_layers {
6     _COLEMAK,
7     _ADJUST,
8     _RAISE,
9     _LOWER,
10     _QWERTY
11 };
12
13
14
15 #define _______ KC_TRNS
16 #define XXXXXXX KC_NO
17 #define BASELYR TO(_COLEMAK) // base layer
18 #define LOWER MO(_LOWER) // momentary lower layer
19 #define RAISE MO(_RAISE) // momentary raise layer
20 #define ADJUST MO(_ADJUST) // momentary adjust layer
21 #define QWERTY TG(_QWERTY)
22 #define LLOWER TG(_LOWER) // lock for lower layer
23 #define LRAISE TG(_RAISE) // lock for raise layer
24 #define LHALF LALT(LGUI(KC_LEFT)) // spec left half screen
25 #define TLHALF LCTL(LGUI(KC_LEFT)) // spec top left half
26 #define BLHALF LCTL(LSFT(LGUI(KC_LEFT))) // spec bottom left half
27 #define RHALF LALT(LGUI(KC_RIGHT)) // spec right half screen
28 #define TRHALF LCTL(LGUI(KC_RIGHT)) // spec top right half
29 #define BRHALF LCTL(LSFT(LGUI(KC_RIGHT))) // spec bottom right half
30 #define SAFBCK LGUI(KC_LBRC) // safari back
31 #define SAFFWD LGUI(KC_RBRC) // safari forward
32 #define CENTER LALT(LGUI(KC_C)) // spec center
33 #define FULL LALT(LGUI(KC_F)) // spec full screen
34
35 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
36
37   [_COLEMAK] = LAYOUT(
38     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
39       KC_ESC ,  KC_Q ,  KC_W ,  KC_F ,  KC_P ,  KC_G ,KC_LCBR,      KC_RCBR,  KC_J  ,  KC_L ,  KC_U ,  KC_Y ,KC_SCLN,KC_BSPC,
40     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
41       KC_TAB ,  KC_A ,  KC_R ,  KC_S ,  KC_T ,  KC_D ,KC_LPRN,      KC_RPRN, KC_H  ,  KC_N ,  KC_E ,  KC_I , KC_O  ,KC_QUOT,
42     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
43       KC_BSLS, KC_Z  ,  KC_X ,  KC_C ,  KC_V ,  KC_B ,KC_LBRC ,      KC_RBRC ,  KC_K ,  KC_M ,KC_COMM, KC_DOT,KC_SLSH,KC_ENT ,
44     //,------+-------+-------+-------+-------+-------+-------.     .-------+-------+-------+-------+-------+-------+-------.
45       ADJUST ,KC_LCTL,KC_LALT,KC_LGUI, LOWER, KC_SPC,                       KC_LSFT, RAISE, KC_LEFT, KC_DOWN, KC_UP,KC_RGHT
46     //,------+-------+-------+-------+-------/-------/                     \-------\-------+-------+-------+-------+-------'
47   ),
48
49   [_ADJUST] = LAYOUT(
50     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
51       BASELYR,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,      XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, RESET ,
52     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
53       XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,      XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
54     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
55       XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,      XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
56     //|------+-------+-------+-------+-------+-------+-------.     .-------+-------+-------+-------+-------+-------+-------.
57       _______,KC_F10 ,KC_F11 ,KC_F12 ,LLOWER ,XXXXXXX,                      XXXXXXX,LRAISE ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX
58     //`------+-------+-------+-------+-------/-------/                      \------\-------+-------+-------+-------+-------'
59   ),
60
61   [_RAISE] = LAYOUT(
62     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
63       BASELYR,KC_EXLM, KC_AT, KC_HASH, KC_DLR,KC_LCBR,XXXXXXX,      XXXXXXX, KC_RCBR, TLHALF,  CENTER,  TRHALF, XXXXXXX, KC_BSPC,
64     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
65       KC_TILD,KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,XXXXXXX,      XXXXXXX, KC_RPRN, LHALF,   FULL,    RHALF,  XXXXXXX, KC_VOLU,
66     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
67       KC_GRV, KC_MINS,KC_PLUS,KC_UNDS,KC_EQL, KC_LBRC,XXXXXXX,      XXXXXXX, KC_RBRC, BLHALF,  XXXXXXX, BRHALF, XXXXXXX, KC_VOLD,
68     //|-------+-------+-------+-------+-------+-------+-------.    .-------+-------+-------+-------+-------+-------+-------|
69        XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_TRNS,KC_SPC,                     KC_LSFT, KC_TRNS, XXXXXXX, KC_F14, KC_F15,  KC_MUTE
70     //`-------+-------+-------+-------+-------/-------/                     \------\-------+-------+-------+-------+-------'
71   ),
72
73   [_LOWER] = LAYOUT(
74     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
75       BASELYR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LCBR,XXXXXXX,      XXXXXXX, KC_RCBR, KC_7,  KC_8, KC_9,   KC_MINS,  KC_BSPC,
76     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
77       XXXXXXX, XXXXXXX, SAFBCK,  XXXXXXX, SAFFWD,  KC_LPRN,XXXXXXX,      XXXXXXX, KC_RPRN, KC_4,  KC_5, KC_6,   KC_PLUS,  XXXXXXX,
78     //,------+-------+-------+-------+-------+-------+-------.     ,-------+-------+-------+-------+-------+-------+-------.
79       XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LBRC,XXXXXXX,      XXXXXXX, KC_RBRC, KC_1,  KC_2, KC_3,   KC_ASTR,  KC_ENT,
80     //|-------+-------+-------+-------+-------+-------+-------.    .-------+-------+-------+-------+-------+-------+-------|
81        XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_TRNS, KC_SPC,                  KC_LSFT, KC_0,  KC_0, KC_DOT, KC_SLASH, XXXXXXX 
82     //`-------+-------+-------+-------+-------/-------/                     \------\-------+-------+-------+-------+-------'
83   )
84
85 };
86
87    
88
89 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
90   switch (keycode) {
91     
92   }
93   return true;
94 }
95