diff options
Diffstat (limited to 'keyboards/keebio/viterbi/keymaps/default/keymap.c')
-rw-r--r-- | keyboards/keebio/viterbi/keymaps/default/keymap.c | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/keyboards/keebio/viterbi/keymaps/default/keymap.c b/keyboards/keebio/viterbi/keymaps/default/keymap.c new file mode 100644 index 000000000..c4ae0a598 --- /dev/null +++ b/keyboards/keebio/viterbi/keymaps/default/keymap.c | |||
@@ -0,0 +1,136 @@ | |||
1 | #include QMK_KEYBOARD_H | ||
2 | |||
3 | extern keymap_config_t keymap_config; | ||
4 | |||
5 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
6 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
7 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
8 | // entirely and just use numbers. | ||
9 | #define _QWERTY 0 | ||
10 | #define _LOWER 1 | ||
11 | #define _RAISE 2 | ||
12 | #define _ADJUST 16 | ||
13 | |||
14 | enum custom_keycodes { | ||
15 | QWERTY = SAFE_RANGE, | ||
16 | LOWER, | ||
17 | RAISE, | ||
18 | ADJUST, | ||
19 | }; | ||
20 | |||
21 | |||
22 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
23 | |||
24 | /* QWERTY | ||
25 | * ,------------------------------------------------. ,------------------------------------------------. | ||
26 | * | Ins | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp | Del | | ||
27 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
28 | * | - | Tab | Q | W | E | R | T | | Y | U | I | O | P | [ | ] | | ||
29 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
30 | * | = | Esc | A | S | D | F | G | | H | J | K | L | ; | " |Enter | | ||
31 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
32 | * | Pg Up| Shift| Z | X | C | V | B | | N | M | , | . | / | Home | End | | ||
33 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
34 | * | Pg Dn|Adjust| Ctrl | Alt | GUI |Lower |Space | |Space |Raise | Left | Down | Up | Right| \ | | ||
35 | * `------------------------------------------------' `------------------------------------------------' | ||
36 | */ | ||
37 | [_QWERTY] = LAYOUT_ortho_5x14( | ||
38 | KC_INS, KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_BSPC, KC_DEL , | ||
39 | KC_MINS, 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, | ||
40 | KC_EQL, KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , | ||
41 | KC_PGUP, KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_HOME, KC_END , | ||
42 | KC_PGDN, ADJUST , KC_LCTL, KC_LALT, KC_LGUI, LOWER , KC_SPC , KC_SPC , RAISE , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_BSLS | ||
43 | ), | ||
44 | |||
45 | /* Lower | ||
46 | * ,------------------------------------------------. ,------------------------------------------------. | ||
47 | * | | ~ | F1 | F3 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | ||
48 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
49 | * | _ | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | { | } | | ||
50 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
51 | * | + | | F1 | F2 | F3 | F4 | F5 | | F6 | _ | + | { | } | | | | ||
52 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
53 | * | | | F7 | F8 | F9 | F10 | F11 | | F12 | | | | | | | | ||
54 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
55 | * | | | | | | | | | | | Next | Vol- | Vol+ | Play | | | ||
56 | * `------------------------------------------------' `------------------------------------------------' | ||
57 | */ | ||
58 | [_LOWER] = LAYOUT_ortho_5x14( | ||
59 | _______, KC_TILD, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , | ||
60 | KC_UNDS, _______, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_LCBR, KC_RCBR, | ||
61 | KC_PLUS, _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, _______, | ||
62 | _______, _______, KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, _______, _______, | ||
63 | _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_MUTE | ||
64 | ), | ||
65 | |||
66 | /* Raise | ||
67 | * ,------------------------------------------------. ,------------------------------------------------. | ||
68 | * | | ~ | F1 | F3 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | ||
69 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
70 | * | _ | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | { | } | | ||
71 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
72 | * | + | | F1 | F2 | F3 | F4 | F5 | | F6 | - | = | [ | ] | | | | ||
73 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
74 | * | | | F7 | F8 | F9 | F10 | F11 | | F12 |ISO # |ISO / | | | | | | ||
75 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
76 | * | | | | | | | | | | | Next | Vol- | Vol+ | Play | | | ||
77 | * `------------------------------------------------' `------------------------------------------------' | ||
78 | */ | ||
79 | [_RAISE] = LAYOUT_ortho_5x14( | ||
80 | _______, KC_TILD, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , | ||
81 | KC_UNDS, _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_LCBR, KC_RCBR, | ||
82 | KC_PLUS, _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_MINS, KC_EQL , KC_LBRC, KC_RBRC, _______, _______, | ||
83 | _______, _______, KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_NUHS, KC_NUBS, _______, _______, _______, _______, | ||
84 | _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_MUTE | ||
85 | ), | ||
86 | |||
87 | [_ADJUST] = LAYOUT_ortho_5x14( | ||
88 | _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, | ||
89 | _______, _______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, | ||
90 | _______, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, | ||
91 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
92 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
93 | ) | ||
94 | |||
95 | }; | ||
96 | |||
97 | |||
98 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
99 | switch (keycode) { | ||
100 | case QWERTY: | ||
101 | if (record->event.pressed) { | ||
102 | set_single_persistent_default_layer(_QWERTY); | ||
103 | } | ||
104 | return false; | ||
105 | break; | ||
106 | case LOWER: | ||
107 | if (record->event.pressed) { | ||
108 | layer_on(_LOWER); | ||
109 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
110 | } else { | ||
111 | layer_off(_LOWER); | ||
112 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
113 | } | ||
114 | return false; | ||
115 | break; | ||
116 | case RAISE: | ||
117 | if (record->event.pressed) { | ||
118 | layer_on(_RAISE); | ||
119 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
120 | } else { | ||
121 | layer_off(_RAISE); | ||
122 | update_tri_layer(_LOWER, _RAISE, _ADJUST); | ||
123 | } | ||
124 | return false; | ||
125 | break; | ||
126 | case ADJUST: | ||
127 | if (record->event.pressed) { | ||
128 | layer_on(_ADJUST); | ||
129 | } else { | ||
130 | layer_off(_ADJUST); | ||
131 | } | ||
132 | return false; | ||
133 | break; | ||
134 | } | ||
135 | return true; | ||
136 | } | ||