diff options
-rw-r--r-- | keyboards/preonic/keymaps/pvillano/config.h | 32 | ||||
-rw-r--r-- | keyboards/preonic/keymaps/pvillano/keymap.c | 113 | ||||
-rw-r--r-- | keyboards/preonic/keymaps/pvillano/readme.md | 25 | ||||
-rw-r--r-- | keyboards/preonic/keymaps/pvillano/rules.mk | 1 |
4 files changed, 171 insertions, 0 deletions
diff --git a/keyboards/preonic/keymaps/pvillano/config.h b/keyboards/preonic/keymaps/pvillano/config.h new file mode 100644 index 000000000..a338a1da4 --- /dev/null +++ b/keyboards/preonic/keymaps/pvillano/config.h | |||
@@ -0,0 +1,32 @@ | |||
1 | #pragma once | ||
2 | |||
3 | #ifdef AUDIO_ENABLE | ||
4 | #define STARTUP_SONG SONG(PREONIC_SOUND) | ||
5 | #endif | ||
6 | |||
7 | #define MUSIC_MASK (keycode != KC_NO) | ||
8 | |||
9 | // #define MUSIC_MAP | ||
10 | /* | ||
11 | * MIDI options | ||
12 | */ | ||
13 | |||
14 | /* Prevent use of disabled MIDI features in the keymap */ | ||
15 | //#define MIDI_ENABLE_STRICT 1 | ||
16 | |||
17 | /* enable basic MIDI features: | ||
18 | - MIDI notes can be sent when in Music mode is on | ||
19 | */ | ||
20 | |||
21 | #define MIDI_BASIC | ||
22 | |||
23 | /* enable advanced MIDI features: | ||
24 | - MIDI notes can be added to the keymap | ||
25 | - Octave shift and transpose | ||
26 | - Virtual sustain, portamento, and modulation wheel | ||
27 | - etc. | ||
28 | */ | ||
29 | //#define MIDI_ADVANCED | ||
30 | |||
31 | /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ | ||
32 | //#define MIDI_TONE_KEYCODE_OCTAVES 2 | ||
diff --git a/keyboards/preonic/keymaps/pvillano/keymap.c b/keyboards/preonic/keymaps/pvillano/keymap.c new file mode 100644 index 000000000..093948e09 --- /dev/null +++ b/keyboards/preonic/keymaps/pvillano/keymap.c | |||
@@ -0,0 +1,113 @@ | |||
1 | /* Do as you please | ||
2 | * - pvillano | ||
3 | */ | ||
4 | |||
5 | #include QMK_KEYBOARD_H | ||
6 | #include "muse.h" | ||
7 | |||
8 | enum preonic_layers { | ||
9 | _QWERTY, | ||
10 | _GAME, | ||
11 | _ALT, | ||
12 | _FUN, | ||
13 | }; | ||
14 | |||
15 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
16 | |||
17 | /* Qwerty | ||
18 | * ,-----------------------------------------------------------------------------------------------------------. | ||
19 | * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | | ||
20 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
21 | * | ` | Q | W | E | R | T | Y | U | I | O | P | \ | | ||
22 | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+--------| | ||
23 | * | Tab | A | S | D | F | G | H | J | K | L | ; | " | | ||
24 | * |--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------| | ||
25 | * | Shift | Z | X | C | V | B | N | M | , | . | / | Enter | | ||
26 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
27 | * | Ctrl | GUI | Alt | Func |AltLayer| Space | _ |AltLayer| Left | Down | Up | Right | | ||
28 | * `-----------------------------------------------------------------------------------------------------------' | ||
29 | */ | ||
30 | [_QWERTY] = LAYOUT_preonic_grid( | ||
31 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, | ||
32 | KC_GRV, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, | ||
33 | KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, | ||
34 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, | ||
35 | KC_LCTL, KC_LGUI, KC_LALT, MO(_FUN),MO(_ALT),KC_SPC, KC_UNDS, MO(_ALT),KC_LEFT, KC_DOWN, KC_UP, KC_RGHT | ||
36 | ), | ||
37 | |||
38 | /* Game | ||
39 | * ,-----------------------------------------------------------------------------------------------------------. | ||
40 | * | | | | | | | | | | | | | | ||
41 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
42 | * | | | | | | | | | | | | | | ||
43 | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+--------| | ||
44 | * | | | | | | | | | | | | | | ||
45 | * |--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------| | ||
46 | * | | | | | | | | | | | | | | ||
47 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
48 | * | | NOOP | | | | | ALT | | | | | | | ||
49 | * `-----------------------------------------------------------------------------------------------------------' | ||
50 | */ | ||
51 | [_GAME] = LAYOUT_preonic_grid( | ||
52 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
53 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
54 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
55 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
56 | _______, XXXXXXX, _______, _______, _______, _______, KC_LALT, _______, _______, _______, _______, _______ | ||
57 | ), | ||
58 | |||
59 | /* Alt | ||
60 | * ,-----------------------------------------------------------------------------------------------------------. | ||
61 | * | | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | | ||
62 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
63 | * | |Keypad 7|Keypad 8|Keypad 9| | | | - | + | { | } | | | ||
64 | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+--------| | ||
65 | * | |Keypad 4|Keypad 5|Keypad 6| | | | - | = | [ | ] | | | ||
66 | * |--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------| | ||
67 | * | |Keypad 1|Keypad 2|Keypad 3| | | | | | < | > | | | ||
68 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
69 | * | |Keypad 0|Keypad 0| | | | | | | | | | | ||
70 | * `-----------------------------------------------------------------------------------------------------------' | ||
71 | */ | ||
72 | [_ALT] = LAYOUT_preonic_grid( | ||
73 | _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, | ||
74 | _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, KC_MINS, KC_PLUS, KC_LCBR, KC_RCBR, _______, | ||
75 | _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, | ||
76 | _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, _______, _______, KC_LT, KC_GT, _______, | ||
77 | _______, KC_P0, KC_P0, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
78 | ), | ||
79 | |||
80 | /* Function | ||
81 | * ,-----------------------------------------------------------------------------------------------------------. | ||
82 | * | | F1 | F2 | F3 | F4 | | | | | | | Del | | ||
83 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
84 | * | | F5 | F6 | F7 | F8 | | | | | |program | | | ||
85 | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+--------| | ||
86 | * | | F9 | F10 | F11 | F12 | Game | | | | | | | | ||
87 | * |--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------| | ||
88 | * | | | | | | |Num Lock| Music | | | | | | ||
89 | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| | ||
90 | * | | | | | | | | | | | | | | ||
91 | * `-----------------------------------------------------------------------------------------------------------' | ||
92 | */ | ||
93 | [_FUN] = LAYOUT_preonic_grid( | ||
94 | _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, _______, _______, _______, _______, KC_DEL, | ||
95 | _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, _______, _______, _______, _______, RESET, _______, | ||
96 | _______, KC_F9, KC_F10, KC_F11, KC_F12, TG(_GAME),_______, _______, _______, _______, _______, _______, | ||
97 | _______, _______, _______, _______, _______, _______, KC_NLCK, MU_TOG, _______, _______, _______, _______, | ||
98 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
99 | ) | ||
100 | }; | ||
101 | |||
102 | |||
103 | bool music_mask_user(uint16_t keycode) { | ||
104 | switch (keycode) { | ||
105 | case MO(_FUN): | ||
106 | case MO(_ALT): | ||
107 | case KC_SPC: | ||
108 | case KC_UNDS: | ||
109 | return false; | ||
110 | default: | ||
111 | return true; | ||
112 | } | ||
113 | } | ||
diff --git a/keyboards/preonic/keymaps/pvillano/readme.md b/keyboards/preonic/keymaps/pvillano/readme.md new file mode 100644 index 000000000..a1d11f8ac --- /dev/null +++ b/keyboards/preonic/keymaps/pvillano/readme.md | |||
@@ -0,0 +1,25 @@ | |||
1 | # A preonic layout similar to the default, | ||
2 | |||
3 | but with some extra conviences for programming and gaming | ||
4 | |||
5 | ## For programming | ||
6 | |||
7 | * Underscore is next to space. | ||
8 | * Backslash replaces Del on the default layer. | ||
9 | * Brackets are easy to reach, and are arranged symmetrically. | ||
10 | |||
11 | ## For Gaming | ||
12 | |||
13 | * Gaming mode disables OS key. | ||
14 | * Gaming mode moves ALT to "right space", to be more easily reached. | ||
15 | * Numpad is available with only the left hand (for emotes). | ||
16 | |||
17 | ## Personal taste | ||
18 | |||
19 | * Esc is in the top left, where it belongs | ||
20 | * Only one Alt layer and one Func layer | ||
21 | * Function codes are mnemonic | ||
22 | * Func + G for Game mode | ||
23 | * Func + M for Music mode | ||
24 | * Func + N for Num lock | ||
25 | * No multi-key combos with more than two keys | ||
diff --git a/keyboards/preonic/keymaps/pvillano/rules.mk b/keyboards/preonic/keymaps/pvillano/rules.mk new file mode 100644 index 000000000..dcf16bef3 --- /dev/null +++ b/keyboards/preonic/keymaps/pvillano/rules.mk | |||
@@ -0,0 +1 @@ | |||
SRC += muse.c | |||