summaryrefslogtreecommitdiff
path: root/keyboards/geigeigeist/klor/keymaps/brray/keymap.c
blob: 8d2d7363de13c34d1628ecd1724e7edb9510b161 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#include QMK_KEYBOARD_H
#if __has_include("keymap.h")
#    include "keymap.h"
#endif

enum layers {
    _QWERTY = 0,
    _LOWER,
    _RAISE,
    _ADJUST,
    _DVORAK,
};

const char *layer_names[] = {
    "Default Q", "Lower", "Raise", "Adjust", "Default D",
};

/* THIS FILE WAS GENERATED!
 *
 * This file was generated by qmk json2c. You may or may not want to
 * edit it directly.
 */

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    // clang-format off
    [_QWERTY] = LAYOUT(
             KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,                            KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,
    KC_TAB,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,                            KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,
    QK_GESC, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,       KC_MUTE, KC_MPLY,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,
                      KC_LCTL, TL_LOWR, KC_LGUI, KC_ENT,                          KC_SPC,  KC_BSPC, TL_UPPR, KC_RALT
    ),
    [_LOWER] = LAYOUT(
             KC_1,    KC_2,    KC_3,    KC_4,    KC_5,                            KC_6,    KC_7,    KC_8,    KC_9,    KC_0,
    KC_MINS, KC_1,    KC_2,    KC_3,    KC_4,    KC_5,                            KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_EQL,
    KC_LSFT, QK_BOOT, _______, KC_LPRN, KC_RPRN, KC_BSLS,    _______, _______,    KC_PIPE, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, KC_LSFT,
                      _______, _______, _______, _______,                         _______, _______, _______, _______
    ),
    [_RAISE] = LAYOUT(
             KC_1,    KC_2,    KC_3,    KC_4,    KC_5,                            KC_6,    KC_7,    KC_8,    KC_9,    KC_0,
    _______, _______, _______, _______, _______, _______,                         _______, _______, _______, _______, _______, _______,
    _______, _______, _______, _______, _______, _______,    _______, _______,    _______, _______, _______, _______, _______, _______,
                      _______, _______, _______, _______,                         _______, _______, _______, _______
    ),
    [_ADJUST] = LAYOUT(
             _______, _______, _______, _______, _______,                         _______, _______, _______, _______, _______,
    _______, _______, _______, _______, _______, _______,                         _______, _______, _______, _______, _______, _______,
    _______, _______, _______, _______, _______, _______,    _______, _______,    _______, _______, _______, _______, _______, _______,
                      _______, _______, _______, _______,                         _______, _______, _______, _______
    ),
    // clang-format on
};

#ifdef OLED_ENABLE
#    include "ornl_logo.h"
#    include "status.h"

bool oled_task_user(void) {
    // Host Keyboard Layer Status
    oled_clear();
    if (is_keyboard_master()) {
        switch (get_highest_layer(layer_state)) {
            case _QWERTY:
                oled_write_P(PSTR("Default\n"), false);
                break;
            case _LOWER:
                oled_write_P(PSTR("Lower\n"), false);
                break;
            case _RAISE:
                oled_write_P(PSTR("Raise\n"), false);
                break;
            case _ADJUST:
                oled_write_P(PSTR("Adjust\n"), false);
                break;
            default:
                // Or use the write_ln shortcut over adding '\n' to the end of your string
                oled_write_ln_P(PSTR("Undefined"), false);
        }
        oled_write_P(sep_v, false);
        oled_write_ln_P(PSTR("test"), false);
        // Host Keyboard LED Status
        led_t led_state = host_keyboard_led_state();
        oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR("    "), false);
        oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR("    "), false);
        oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR("    "), false);
    } else {
        oled_write_raw_P(ornl_logo, sizeof(ornl_logo));
    }

    return false;
}

void oled_render_boot(bool bootloader) {
    oled_clear();
    if (bootloader) {
        oled_write_P(PSTR("Awaiting New Firmware "), false);
    } else {
        oled_write_P(PSTR("Rebooting "), false);
    }

    oled_render_dirty(true);
}

bool shutdown_user(bool jump_to_bootloader) {
    oled_render_boot(jump_to_bootloader);
    return true;
}
#endif

#ifdef OTHER_KEYMAP_C
#    include OTHER_KEYMAP_C
#endif // OTHER_KEYMAP_C