]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ai03/lunar/keymaps/default/keymap.c
Add Lunar Keyboard (#4976)
[qmk_firmware.git] / keyboards / ai03 / lunar / keymaps / default / keymap.c
1 /* Copyright 2019 Ryota Goto
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 // Defines the keycodes used by our macros in process_record_user
19 enum custom_keycodes {
20   MANUAL = SAFE_RANGE,
21   SWPLURL
22 };
23
24 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
25         
26         /*
27         
28         Layout
29         
30         K000 K001 K002 K003 K004 K005 K006 K007 K008 K009 K010 K011 K012 K013 K212 K014
31         K100  K101  K102 K103 K104 K105 K106 K107 K108 K109 K110 K111   K112  K113 K114
32         K200    K201 K202 K203 K204 K205 K206 K207 K208 K209 K210 K211     K213    K214
33         K300      K301 K302 K303 K304 K305 K306 K307 K308 K309 K310 K311    K313   K314
34         K400 K401 K402        K403       K405       K407       K409 K410 K411 K413 K414
35         
36         K212 = Split backspace (bound to Del by default)
37         K403, K407 = Split space (bound to space by default)
38         K405 = Main space
39         
40         */
41         
42         [0] = LAYOUT( /* Base */
43                 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_BSPC, KC_HOME, 
44                 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_END, 
45                 MO(1),            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_PGUP, 
46                 KC_LSFT,          KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_LSFT,          KC_UP,   KC_PGDN, 
47                 KC_LCTL, KC_LGUI, KC_LALT,          KC_SPC,           KC_SPC,           KC_SPC,                    MO(1),   KC_GRV,  KC_LEFT, KC_DOWN, KC_RGHT
48         ),
49         [1] = LAYOUT( /* FN */
50                 RESET,   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,  KC_DEL,  MANUAL, 
51                 KC_CAPS,          _______, KC_UP,   _______, _______, _______, KC_NLCK, KC_P7,   KC_P8,   KC_P9,   KC_MPRV, KC_MPLY, KC_MNXT, _______, SWPLURL, 
52                 _______,          KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_VOLD, KC_VOLU, KC_P4,   KC_P5,   KC_P6,   _______, _______,          _______, _______, 
53                 _______,          KC_RCTL, KC_RGUI, KC_RALT, _______, _______, KC_P0,   KC_P1,   KC_P2,   KC_P3,   _______, _______,          KC_PGUP, _______, 
54                 _______, _______, _______,          _______,          _______,          _______,                   _______, _______, KC_HOME, KC_PGDN, KC_END
55         )
56 };
57
58 bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59   switch (keycode) {
60     case MANUAL:
61       if (record->event.pressed) {
62         // when keycode QMKBEST is pressed
63         SEND_STRING("https://kb.ai03.me/redir/lunar/index.html");
64       } else {
65         // when keycode QMKBEST is released
66       }
67       break;
68     case SWPLURL:
69       if (record->event.pressed) {
70         // when keycode QMKURL is pressed
71         SEND_STRING("https://switchplate.co/collections/lunar-group-buy");
72       } else {
73         // when keycode QMKURL is released
74       }
75       break;
76   }
77   return true;
78 }
79
80 void matrix_init_user(void) {
81
82 }
83
84 void matrix_scan_user(void) {
85
86 }
87
88 void led_set_user(uint8_t usb_led) {
89
90 }