qmk-layouts/preonic/keymap.c

53 lines
2 KiB
C

#include QMK_KEYBOARD_H
typedef enum {
BASE,
ALT,
FN
} layers;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Base Layer
[BASE] = LAYOUT_ortho_5x12(
KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
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_LCTL,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_ENT,
KC_NO, TG(1), KC_LALT,KC_LGUI,KC_SPC, KC_LSFT,KC_BSPC,KC_ENT, KC_RALT,KC_RCTL,KC_APP, OSL(2)
),
// Alt Layer
[ALT] = LAYOUT_ortho_5x12(
KC_ESC, KC_TILD,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,
KC_TRNS,KC_TRNS,KC_UP, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_LPRN,KC_RPRN,KC_LBRC,KC_RBRC,KC_PIPE,
KC_TRNS,KC_LEFT,KC_DOWN,KC_RGHT,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_MINS,KC_EQL, KC_COLN,KC_DQUO,
KC_NO, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_LT, KC_GT, KC_TRNS,KC_DEL,
TG(0), KC_NO, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_DEL, KC_ENT, KC_TRNS,KC_TRNS,KC_TRNS,KC_NO
),
// Function Layer
[FN] = LAYOUT_ortho_5x12(
SGUI(KC_Q), LGUI(KC_ESC), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
KC_NO, KC_NO, LGUI(KC_UP), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F11,
KC_NO, LGUI(KC_LEFT), LGUI(KC_DOWN), LGUI(KC_RGHT), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME,KC_END, KC_NO, KC_NO,
KC_PGDN, KC_PGUP, KC_NO, KC_NO, KC_MPLY,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR,KC_NO
)
};
#define RGBLIGHT_SLEEP
#define RGBLIGHT_MODE_RAINBOW_SWIRL
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL
#ifdef AUDIO_ENABLE
#define STARTUP_SONG SONG(PREONIC_SOUND)
#define BOOT_SONG HD_NOTE(_F5), HD_NOTE(_G5), HD_NOTE(_C6)
float boot_song[][2] = SONG(BOOT_SONG);
#endif
void keyboard_post_init_user(void) {
#ifdef BOOT_SONG
PLAY_SONG(boot_song);
#endif
rgblight_disable_noeeprom();
}