aboutsummaryrefslogtreecommitdiff
path: root/layouts/community/ergodox/alphadox/keymap.c
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2017-08-23 22:29:07 -0400
committerGitHub <noreply@github.com>2017-08-23 22:29:07 -0400
commitd2ff66a985b938e87fffe55c1d9f1dc55e356f91 (patch)
tree561b3e203033849573a17f5ac6248077ab687676 /layouts/community/ergodox/alphadox/keymap.c
parent7260fc3eef98fb7b0e2ed24d3d0d14cf2e613000 (diff)
downloadqmk_firmware-d2ff66a985b938e87fffe55c1d9f1dc55e356f91.tar.gz
qmk_firmware-d2ff66a985b938e87fffe55c1d9f1dc55e356f91.zip
Creates a layouts/ folder for keymaps shared between keyboards (#1609)
* include variables and .h files as pp directives * start layout compilation * split ergodoxes up * don't compile all layouts for everything * might seg fault * reset layouts variable * actually reset layouts * include rules.mk instead * remove includes from rules.mk * update variable setting * load visualizer from path * adds some more examples * adds more layouts * more boards added * more boards added * adds documentation for layouts * use lowercase names for LAYOUT_ * add layout.json files for each layout * add community folder, default keymaps for layouts * touch-up default layouts * touch-up layouts, some keyboard rules.mk * update documentation for layouts * fix up serial/i2c switches
Diffstat (limited to 'layouts/community/ergodox/alphadox/keymap.c')
-rw-r--r--layouts/community/ergodox/alphadox/keymap.c107
1 files changed, 107 insertions, 0 deletions
diff --git a/layouts/community/ergodox/alphadox/keymap.c b/layouts/community/ergodox/alphadox/keymap.c
new file mode 100644
index 000000000..8acd86b7a
--- /dev/null
+++ b/layouts/community/ergodox/alphadox/keymap.c
@@ -0,0 +1,107 @@
1#include QMK_KEYBOARD_H
2#include "debug.h"
3#include "action_layer.h"
4
5#define BASE 0 // default layer
6#define SYMB 1 // symbols
7#define ETC 2 // etc
8
9enum macro_id {
10 TEENSY,
11};
12
13const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
14
15[BASE] = LAYOUT_ergodox(
16 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
17 KC_TAB, KC_Q, KC_W, KC_D, KC_F, KC_K, KC_PGUP,
18 CTL_T(KC_ESC), LT(ETC,KC_A), KC_S, KC_E, KC_T, KC_G,
19 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_PGDN,
20 KC_GRV, KC_DEL, KC_DEL, KC_LALT, GUI_T(KC_TAB),
21 KC_NO, KC_NO,
22 KC_NO,
23 LT(SYMB,KC_BSPC), CTL_T(KC_ESC), KC_NO,
24
25 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
26 KC_VOLU, KC_J, KC_U, KC_R, KC_L, KC_SCLN, KC_BSLS,
27 KC_Y, KC_N, KC_I, KC_O, KC_H, KC_QUOT,
28 KC_VOLD, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
29 GUI_T(KC_TAB), KC_LEFT, KC_DOWN, KC_UP, LCAG_T(KC_RGHT),
30 KC_NO, KC_NO,
31 KC_NO,
32 KC_NO, SFT_T(KC_ENT), LT(SYMB,KC_SPC)
33),
34
35[SYMB] = LAYOUT_ergodox(
36 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
37 KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
38 KC_TRNS, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_BSLS,
39 KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_ASTR, KC_TRNS,
40 KC_TILD, KC_AMPR, KC_AMPR, KC_TRNS, KC_TRNS,
41 KC_TRNS, KC_TRNS,
42 KC_TRNS,
43 KC_TRNS, KC_TRNS, KC_TRNS,
44
45 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
46 KC_TRNS, KC_EQL, KC_7, KC_8, KC_9, KC_PLUS, KC_NO,
47 KC_MINS, KC_4, KC_5, KC_6, KC_QUOT, KC_NO,
48 KC_TRNS, KC_UNDS, KC_1, KC_2, KC_3, KC_DQUO, KC_TRNS,
49 KC_0, KC_NO, KC_DOT, KC_TRNS, KC_TRNS,
50 KC_TRNS, KC_TRNS,
51 KC_TRNS,
52 KC_TRNS, KC_TRNS, KC_TRNS
53),
54
55[ETC] = LAYOUT_ergodox(
56 RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
57 KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_TRNS,
58 KC_TRNS, LT(ETC,KC_A), KC_NO, KC_NO, KC_NO, KC_PGDN,
59 KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL, KC_TRNS,
60 KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS,
61 KC_TRNS, KC_TRNS,
62 KC_TRNS,
63 KC_TRNS, KC_TRNS, KC_TRNS,
64
65 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
66 KC_TRNS, KC_VOLU, KC_F7, KC_F8, KC_F9, KC_HOME, KC_NO,
67 KC_VOLD, KC_F4, KC_F5, KC_F6, KC_END, KC_NO,
68 KC_TRNS, KC_MUTE, KC_F1, KC_F2, KC_F3, KC_INS, KC_TRNS,
69 KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
70 KC_TRNS, KC_TRNS,
71 KC_TRNS,
72 KC_TRNS, KC_TRNS, KC_TRNS
73),
74};
75
76const uint16_t PROGMEM fn_actions[] = {
77};
78
79const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
80 switch(id) {
81 case TEENSY:
82 break;
83 }
84 return MACRO_NONE;
85};
86
87void matrix_init_user(void) {
88};
89
90void matrix_scan_user(void) {
91 uint8_t layer = biton32(layer_state);
92
93 ergodox_board_led_off();
94 ergodox_right_led_1_off();
95 ergodox_right_led_2_off();
96 ergodox_right_led_3_off();
97 switch (layer) {
98 case 1:
99 ergodox_right_led_1_on();
100 break;
101 case 2:
102 ergodox_right_led_2_on();
103 break;
104 default:
105 break;
106 }
107};