keymap.c (1998B)
1 /* Copyright 2018 Jack Humbert 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 17 #include QMK_KEYBOARD_H 18 19 #define BASE 0 20 #define FN 1 21 22 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 23 24 [BASE] = LAYOUT( 25 KC_7, KC_8, KC_9, 26 KC_4, KC_5, KC_6, 27 KC_1, KC_2, KC_3, 28 MO(1), KC_0, KC_DOT 29 ), 30 31 [FN] = LAYOUT( 32 KC_TRNS, KC_HOME, KC_PGUP, 33 KC_TRNS, KC_END, KC_PGDN, 34 KC_TRNS, KC_TRNS, KC_TRNS, 35 KC_TRNS, KC_TRNS, KC_ENT 36 ) 37 }; 38 39 #ifdef OLED_ENABLE 40 oled_rotation_t oled_init_user(oled_rotation_t rotation) { 41 return OLED_ROTATION_270; // flips the display 180 degrees if offhand 42 } 43 44 bool oled_task_user(void) { 45 // Host Keyboard Layer Status 46 oled_write_P(PSTR("Let's\nbuild\nsome-\nthing\nto-\nget-\nher!"), false); 47 switch (get_highest_layer(layer_state)) { 48 case BASE: 49 oled_write_ln_P(PSTR(""), false); 50 break; 51 case FN: 52 oled_write_ln_P(PSTR("FN"), false); 53 break; 54 default: 55 // Or use the write_ln shortcut over adding '\n' to the end of your string 56 oled_write_ln_P(PSTR("Undef"), false); 57 } 58 59 // Host Keyboard LED Status 60 led_t led_state = host_keyboard_led_state(); 61 oled_write_P(led_state.num_lock ? PSTR("NLCK ") : PSTR(" "), false); 62 oled_write_P(led_state.caps_lock ? PSTR("CAPS ") : PSTR(" "), false); 63 oled_write_P(led_state.scroll_lock ? PSTR("SCRLK") : PSTR(" "), false); 64 65 return false; 66 } 67 #endif