]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/al1/keymaps/default/keymap.c
5da3b5a7b2fc86b17ba19ab398314c59f262960c
[qmk_firmware.git] / keyboards / al1 / keymaps / default / keymap.c
1 /* Copyright 2018 MechMerlin
2  *
3  * This program is free software: you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation, either version 2 of the License, or
6  * (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
15  */
16 #include QMK_KEYBOARD_H
17
18 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
19        [0] = LAYOUT(\
20        KC_ESC,  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,  KC_INS,   KC_NLCK,  KC_PSLS,  KC_PAST,  KC_PMNS,\
21        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, KC_DELETE, KC_P7,    KC_P8,    KC_P9,    KC_PPLS,\
22        KC_CAPS, KC_A,    KC_S,     KC_D,    KC_F,     KC_G,     KC_H,     KC_J,    KC_K,     KC_L,     KC_SCLN,  KC_QUOT,  KC_ENT,                 KC_P4,    KC_P5,    KC_P6,          \
23        KC_LSFT, KC_Z,    KC_X,     KC_C,    KC_V,     KC_B,     KC_N,     KC_M,    KC_COMMA, KC_DOT,   KC_SLSH,  KC_RSFT,  MO(1),          KC_UP,    KC_P1,    KC_P2,    KC_P3,    KC_PENT, \
24        KC_LCTL, KC_LGUI,  KC_LALT, KC_SPACE,   MO(1),  KC_RGUI,  KC_RCTRL,                                         KC_LEFT,  KC_DOWN,  KC_RIGHT, KC_P0,    KC_PDOT         ),
25
26        [1] = LAYOUT(\
27        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_BSPC,  KC_INS,   KC_NLCK,  KC_PSLS,  KC_PAST,  KC_PMNS,\
28        KC_TAB,  KC_Q,    KC_W,     KC_E,    RESET,     KC_T,     KC_Y,     KC_U,    KC_I,     KC_O,     KC_P,     KC_LBRC,  KC_RBRC,  KC_BSLS, KC_DELETE, KC_P7,    KC_P8,    KC_P9,    KC_PPLS,\
29        KC_CAPS, KC_A,    KC_S,     KC_D,    KC_F,     KC_G,     KC_H,     KC_J,    KC_K,     KC_L,     KC_SCLN,  KC_QUOT,  KC_ENT,                 KC_P4,    KC_P5,    KC_P6,          \
30        KC_LSFT, KC_Z,    KC_X,     KC_C,    KC_V,     KC_B,     KC_N,     KC_M,    KC_COMMA, KC_DOT,   KC_SLSH,  KC_RSFT,  KC_TRNS,          KC_UP,    KC_P1,    KC_P2,    KC_P3,    KC_PENT, \
31        KC_LCTL, KC_LGUI,  KC_LALT, KC_SPACE,   KC_TRNS,  KC_RGUI,  KC_RCTRL,                                         BL_TOGG,  BL_DEC,  BL_INC, KC_P0,    KC_PDOT         ),
32 };
33
34
35 const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
36 {
37   // MACRODOWN only works in this function
38       switch(id) {
39         case 0:
40           if (record->event.pressed) {
41             register_code(KC_RSFT);
42           } else {
43             unregister_code(KC_RSFT);
44           }
45         break;
46       }
47     return MACRO_NONE;
48 };
49
50
51 void matrix_init_user(void) {
52
53 }
54
55 void matrix_scan_user(void) {
56
57 }
58
59 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
60   return true;
61 }
62
63 void led_set_user(uint8_t usb_led) {
64
65 }