diff options
Diffstat (limited to 'keyboards')
| -rw-r--r-- | keyboards/alicia_cook/alicia_cook.c | 17 | ||||
| -rw-r--r-- | keyboards/alicia_cook/alicia_cook.h | 41 | ||||
| -rw-r--r-- | keyboards/alicia_cook/config.h | 48 | ||||
| -rw-r--r-- | keyboards/alicia_cook/info.json | 62 | ||||
| -rw-r--r-- | keyboards/alicia_cook/keymaps/default/keymap.c | 55 | ||||
| -rw-r--r-- | keyboards/alicia_cook/keymaps/default/readme.md | 1 | ||||
| -rw-r--r-- | keyboards/alicia_cook/keymaps/rick/config.h | 23 | ||||
| -rw-r--r-- | keyboards/alicia_cook/keymaps/rick/keymap.c | 246 | ||||
| -rw-r--r-- | keyboards/alicia_cook/keymaps/rick/readme.md | 1 | ||||
| -rw-r--r-- | keyboards/alicia_cook/keymaps/rick/rules.mk | 2 | ||||
| -rw-r--r-- | keyboards/alicia_cook/readme.md | 26 | ||||
| -rw-r--r-- | keyboards/alicia_cook/rules.mk | 18 |
12 files changed, 540 insertions, 0 deletions
diff --git a/keyboards/alicia_cook/alicia_cook.c b/keyboards/alicia_cook/alicia_cook.c new file mode 100644 index 000000000..39f17e4a7 --- /dev/null +++ b/keyboards/alicia_cook/alicia_cook.c | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | /* Copyright 2021 Ibnu D. Aji | ||
| 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 "alicia_cook.h" | ||
diff --git a/keyboards/alicia_cook/alicia_cook.h b/keyboards/alicia_cook/alicia_cook.h new file mode 100644 index 000000000..35c803b3a --- /dev/null +++ b/keyboards/alicia_cook/alicia_cook.h | |||
| @@ -0,0 +1,41 @@ | |||
| 1 | /* Copyright 2021 Ibnu D. Aji | ||
| 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 | #pragma once | ||
| 18 | |||
| 19 | #include "quantum.h" | ||
| 20 | |||
| 21 | #define XXX KC_NO | ||
| 22 | |||
| 23 | /* This is a shortcut to help you visually see your layout. | ||
| 24 | * | ||
| 25 | * The first section contains all of the arguments representing the physical | ||
| 26 | * layout of the board and position of the keys. | ||
| 27 | * | ||
| 28 | * The second converts the arguments into a two-dimensional array which | ||
| 29 | * represents the switch matrix. | ||
| 30 | */ | ||
| 31 | #define LAYOUT_all( \ | ||
| 32 | k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, \ | ||
| 33 | k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ | ||
| 34 | k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \ | ||
| 35 | k30, k31, k33, k34, k35, k36, k37, k38, k3b, k3c \ | ||
| 36 | ) { \ | ||
| 37 | { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c }, \ | ||
| 38 | { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, XXX }, \ | ||
| 39 | { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c }, \ | ||
| 40 | { k30, k31, XXX, k33, k34, k35, k36, k37, k38, XXX, XXX, k3b, k3c } \ | ||
| 41 | } | ||
diff --git a/keyboards/alicia_cook/config.h b/keyboards/alicia_cook/config.h new file mode 100644 index 000000000..28db5f342 --- /dev/null +++ b/keyboards/alicia_cook/config.h | |||
| @@ -0,0 +1,48 @@ | |||
| 1 | /* | ||
| 2 | Copyright 2021 Ibnu D. Aji | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | */ | ||
| 17 | |||
| 18 | #pragma once | ||
| 19 | |||
| 20 | #include "config_common.h" | ||
| 21 | |||
| 22 | /* USB Device descriptor parameter */ | ||
| 23 | #define VENDOR_ID 0xFEED | ||
| 24 | #define PRODUCT_ID 0x6955 | ||
| 25 | #define DEVICE_VER 0x0899 | ||
| 26 | #define MANUFACTURER Ibnu D. Aji | ||
| 27 | #define PRODUCT Alicia Cook | ||
| 28 | |||
| 29 | /* key matrix size */ | ||
| 30 | #define MATRIX_ROWS 4 | ||
| 31 | #define MATRIX_COLS 13 | ||
| 32 | |||
| 33 | /* | ||
| 34 | * Keyboard Matrix Assignments | ||
| 35 | * | ||
| 36 | * Change this to how you wired your keyboard | ||
| 37 | * COLS: AVR pins used for columns, left to right | ||
| 38 | * ROWS: AVR pins used for rows, top to bottom | ||
| 39 | * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) | ||
| 40 | * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) | ||
| 41 | * | ||
| 42 | */ | ||
| 43 | #define MATRIX_ROW_PINS { D2, D3, F4, F5 } | ||
| 44 | #define MATRIX_COL_PINS { B5, F6, F7, B1, B3, B2, B4, E6, D7, C6, D4, D0, D1 } | ||
| 45 | #define UNUSED_PINS | ||
| 46 | |||
| 47 | /* COL2ROW, ROW2COL */ | ||
| 48 | #define DIODE_DIRECTION COL2ROW | ||
diff --git a/keyboards/alicia_cook/info.json b/keyboards/alicia_cook/info.json new file mode 100644 index 000000000..c07be7719 --- /dev/null +++ b/keyboards/alicia_cook/info.json | |||
| @@ -0,0 +1,62 @@ | |||
| 1 | { | ||
| 2 | "keyboard_name": "Alicia Cook", | ||
| 3 | "url": "https://github.com/ibnuda/alicia-cook", | ||
| 4 | "maintainer": "ibnuda", | ||
| 5 | "layouts": { | ||
| 6 | "LAYOUT_all": { | ||
| 7 | "layout": [ | ||
| 8 | {"x":0,"y":0}, | ||
| 9 | {"x":1,"y":0}, | ||
| 10 | {"x":2,"y":0}, | ||
| 11 | {"x":3,"y":0}, | ||
| 12 | {"x":4,"y":0}, | ||
| 13 | {"x":5,"y":0}, | ||
| 14 | {"x":7,"y":0}, | ||
| 15 | {"x":8,"y":0}, | ||
| 16 | {"x":9,"y":0}, | ||
| 17 | {"x":10,"y":0}, | ||
| 18 | {"x":11,"y":0}, | ||
| 19 | {"x":12,"y":0}, | ||
| 20 | {"x":13,"y":0}, | ||
| 21 | |||
| 22 | {"x":0,"y":1,"w":1.25}, | ||
| 23 | {"x":1.25,"y":1}, | ||
| 24 | {"x":2.25,"y":1}, | ||
| 25 | {"x":3.25,"y":1}, | ||
| 26 | {"x":4.25,"y":1}, | ||
| 27 | {"x":5.25,"y":1}, | ||
| 28 | {"x":7.25,"y":1}, | ||
| 29 | {"x":8.25,"y":1}, | ||
| 30 | {"x":9.25,"y":1}, | ||
| 31 | {"x":10.25,"y":1}, | ||
| 32 | {"x":11.25,"y":1}, | ||
| 33 | {"x":12.25,"y":1,"w":1.75}, | ||
| 34 | |||
| 35 | {"x":0,"y":2,"w":1.75}, | ||
| 36 | {"x":1.75,"y":2}, | ||
| 37 | {"x":2.75,"y":2}, | ||
| 38 | {"x":3.75,"y":2}, | ||
| 39 | {"x":4.75,"y":2}, | ||
| 40 | {"x":5.75,"y":2}, | ||
| 41 | {"x":6.75,"y":2}, | ||
| 42 | {"x":7.75,"y":2}, | ||
| 43 | {"x":8.75,"y":2}, | ||
| 44 | {"x":9.75,"y":2}, | ||
| 45 | {"x":10.75,"y":2}, | ||
| 46 | {"x":11.75,"y":2}, | ||
| 47 | {"x":12.75,"y":2,"w":1.25}, | ||
| 48 | |||
| 49 | {"x":0,"y":3,"w":1.25}, | ||
| 50 | {"x":1.25,"y":3,"w":1.25}, | ||
| 51 | {"x":3.5,"y":3,"w":1.25}, | ||
| 52 | {"x":4.75,"y":3}, | ||
| 53 | {"x":5.75,"y":3}, | ||
| 54 | {"x":6.75,"y":3,"w":1.25}, | ||
| 55 | {"x":8,"y":3}, | ||
| 56 | {"x":9,"y":3,"w":1.25}, | ||
| 57 | {"x":11.5,"y":3,"w":1.25}, | ||
| 58 | {"x":12.75,"y":3,"w":1.25} | ||
| 59 | ] | ||
| 60 | } | ||
| 61 | } | ||
| 62 | } | ||
diff --git a/keyboards/alicia_cook/keymaps/default/keymap.c b/keyboards/alicia_cook/keymaps/default/keymap.c new file mode 100644 index 000000000..c28967f38 --- /dev/null +++ b/keyboards/alicia_cook/keymaps/default/keymap.c | |||
| @@ -0,0 +1,55 @@ | |||
| 1 | /* | ||
| 2 | Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com> | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | */ | ||
| 17 | |||
| 18 | #include QMK_KEYBOARD_H | ||
| 19 | |||
| 20 | #define LW_BSPC LT(2, KC_BSPC) | ||
| 21 | #define RS_SPC LT(1, KC_SPC) | ||
| 22 | |||
| 23 | #define ALT_ENT ALT_T(KC_ENT) | ||
| 24 | #define SFT_ESC SFT_T(KC_ESC) | ||
| 25 | |||
| 26 | // home row mods. | ||
| 27 | #define CT_S RCTL_T(KC_S) | ||
| 28 | #define CT_L RCTL_T(KC_L) | ||
| 29 | #define SH_A RSFT_T(KC_A) | ||
| 30 | #define SH_SCLN RSFT_T(KC_SCLN) | ||
| 31 | #define AL_D RALT_T(KC_D) | ||
| 32 | #define AL_K RALT_T(KC_K) | ||
| 33 | #define GU_G RGUI_T(KC_G) | ||
| 34 | #define GU_H RGUI_T(KC_H) | ||
| 35 | |||
| 36 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 37 | [0] = LAYOUT_all( | ||
| 38 | KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC, | ||
| 39 | KC_LCTL,SH_A, CT_S, AL_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_SCLN, | ||
| 40 | KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(1), | ||
| 41 | KC_LGUI,KC_LALT, KC_LGUI,LW_BSPC,SFT_ESC, ALT_ENT,RS_SPC, KC_LALT, KC_RGUI,KC_RCTL | ||
| 42 | ), | ||
| 43 | [1] = LAYOUT_all( | ||
| 44 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_BSPC, | ||
| 45 | KC_LCTL,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_SCLN, | ||
| 46 | KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(2), | ||
| 47 | KC_LGUI,KC_LALT, KC_LGUI,LW_BSPC,SFT_ESC, ALT_ENT,RS_SPC, KC_LALT, KC_RGUI,KC_RCTL | ||
| 48 | ), | ||
| 49 | [2] = LAYOUT_all( | ||
| 50 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, | ||
| 51 | KC_LCTL,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_SCLN, | ||
| 52 | KC_LSFT,KC_Z, KC_X, KC_C, KC_V, RESET, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(1), | ||
| 53 | KC_LGUI,KC_LALT, KC_LGUI,LW_BSPC,SFT_ESC, ALT_ENT,RS_SPC, KC_LALT, KC_RGUI,KC_RCTL | ||
| 54 | ), | ||
| 55 | }; | ||
diff --git a/keyboards/alicia_cook/keymaps/default/readme.md b/keyboards/alicia_cook/keymaps/default/readme.md new file mode 100644 index 000000000..18f516f6f --- /dev/null +++ b/keyboards/alicia_cook/keymaps/default/readme.md | |||
| @@ -0,0 +1 @@ | |||
| # The default keymap for alicia_cook | |||
diff --git a/keyboards/alicia_cook/keymaps/rick/config.h b/keyboards/alicia_cook/keymaps/rick/config.h new file mode 100644 index 000000000..fc9cdfe78 --- /dev/null +++ b/keyboards/alicia_cook/keymaps/rick/config.h | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | /* Copyright 2021 Ibnu D. Aji | ||
| 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 | #pragma once | ||
| 17 | |||
| 18 | #define COMBO_TERM 50 | ||
| 19 | #define COMBO_COUNT 50 | ||
| 20 | #define IGNORE_MOD_TAP_INTERRUPT | ||
| 21 | #define PERMISSIVE_HOLD | ||
| 22 | #define TAPPING_TERM 175 | ||
| 23 | #define TAPPING_TERM 175 | ||
diff --git a/keyboards/alicia_cook/keymaps/rick/keymap.c b/keyboards/alicia_cook/keymaps/rick/keymap.c new file mode 100644 index 000000000..35e0e1db9 --- /dev/null +++ b/keyboards/alicia_cook/keymaps/rick/keymap.c | |||
| @@ -0,0 +1,246 @@ | |||
| 1 | /* Copyright 2021 Ibnu D. Aji | ||
| 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 | #include QMK_KEYBOARD_H | ||
| 17 | #ifdef CONSOLE_ENABLE | ||
| 18 | #include "print.h" | ||
| 19 | #endif | ||
| 20 | |||
| 21 | // enum for combos. | ||
| 22 | enum combos { | ||
| 23 | // left hand combinations. | ||
| 24 | L_U_PINKY_RING, | ||
| 25 | L_U_RING_MIDDLE, | ||
| 26 | L_U_RING_INDEX, | ||
| 27 | L_U_MIDDLE_INDEX, | ||
| 28 | L_U_MIDDLE_INNER_INDEX, | ||
| 29 | L_U_INDEX_INNER_INDEX, | ||
| 30 | L_L_PINKY_RING, | ||
| 31 | L_L_RING_MIDDLE, | ||
| 32 | L_L_RING_INDEX, | ||
| 33 | L_L_MIDDLE_INDEX, | ||
| 34 | L_L_INDEX_INNER_INDEX, | ||
| 35 | |||
| 36 | L_U_RING_MIDDLE_INDEX, | ||
| 37 | L_L_RING_MIDDLE_INDEX, | ||
| 38 | |||
| 39 | // right hand combinations. | ||
| 40 | R_U_PINKY_RING, | ||
| 41 | R_U_RING_MIDDLE, | ||
| 42 | R_U_RING_INDEX, | ||
| 43 | R_U_MIDDLE_INDEX, | ||
| 44 | R_U_MIDDLE_INNER_INDEX, | ||
| 45 | R_U_INNER_INNER_INDEX, | ||
| 46 | R_L_PINKY_RING, | ||
| 47 | R_L_RING_MIDDLE, | ||
| 48 | R_L_MIDDLE_INDEX, | ||
| 49 | R_L_RING_INDEX, | ||
| 50 | R_L_INDEX_INNER_INDEX, | ||
| 51 | |||
| 52 | R_U_RING_MIDDLE_INDEX, | ||
| 53 | R_L_RING_MIDDLE_INDEX, | ||
| 54 | |||
| 55 | // both hands combinations. | ||
| 56 | B_L_MIDDLE_MIDDLE, | ||
| 57 | }; | ||
| 58 | |||
| 59 | enum { | ||
| 60 | _BASE, | ||
| 61 | _LOWER, | ||
| 62 | _RAISE, | ||
| 63 | _ADJUST, | ||
| 64 | }; | ||
| 65 | |||
| 66 | enum custom_keycodes { | ||
| 67 | BASE = SAFE_RANGE, | ||
| 68 | LOWER, | ||
| 69 | RAISE, | ||
| 70 | ADJUST, | ||
| 71 | }; | ||
| 72 | |||
| 73 | // keycode abstraction | ||
| 74 | #define LUP KC_Q | ||
| 75 | #define LUR KC_V | ||
| 76 | #define LUM KC_C | ||
| 77 | #define LUI KC_P | ||
| 78 | #define LUII KC_B | ||
| 79 | #define LMP KC_R | ||
| 80 | #define LMR KC_S | ||
| 81 | #define LMM KC_T | ||
| 82 | #define LMI KC_H | ||
| 83 | #define LMII KC_D | ||
| 84 | #define LLP KC_QUOT | ||
| 85 | #define LLR KC_J | ||
| 86 | #define LLM KC_G | ||
| 87 | #define LLI KC_K | ||
| 88 | #define LLII KC_X | ||
| 89 | |||
| 90 | #define RUP KC_Z | ||
| 91 | #define RUR KC_Y | ||
| 92 | #define RUM KC_U | ||
| 93 | #define RUI KC_L | ||
| 94 | #define RUII KC_DOT | ||
| 95 | #define RMP KC_O | ||
| 96 | #define RMR KC_I | ||
| 97 | #define RMM KC_A | ||
| 98 | #define RMI KC_N | ||
| 99 | #define RMII KC_F | ||
| 100 | #define RLP KC_SLSH | ||
| 101 | #define RLR KC_COMM | ||
| 102 | #define RLM KC_W | ||
| 103 | #define RLI KC_M | ||
| 104 | #define RLII KC_SCLN | ||
| 105 | |||
| 106 | // thumb keys. | ||
| 107 | #define TRAISE TG(_RAISE) | ||
| 108 | #define AL_ENT ALT_T(KC_ENT) | ||
| 109 | #define SF_BSPC SFT_T(KC_BSPC) | ||
| 110 | #define CT_ESC CTL_T(KC_ESC) | ||
| 111 | |||
| 112 | // home row mods. | ||
| 113 | #define CTLR LCTL_T(LMR) | ||
| 114 | #define CTRR RCTL_T(RMR) | ||
| 115 | #define CT_LEFT LCTL_T(KC_LEFT) | ||
| 116 | #define CT_SIX RCTL_T(KC_6) | ||
| 117 | |||
| 118 | #define SHLP LSFT_T(LMP) | ||
| 119 | #define SHRP RSFT_T(RMP) | ||
| 120 | #define SH_HASH LSFT_T(KC_HASH) | ||
| 121 | #define SH_ZERO RSFT_T(KC_0) | ||
| 122 | |||
| 123 | #define ALLM LALT_T(LMM) | ||
| 124 | #define ALRM RALT_T(RMM) | ||
| 125 | #define AL_DOWN LALT_T(KC_DOWN) | ||
| 126 | #define AL_FIVE RALT_T(KC_5) | ||
| 127 | |||
| 128 | #define GULII RGUI_T(LMII) | ||
| 129 | #define GURII LGUI_T(RMII) | ||
| 130 | #define GU_DLR RGUI_T(KC_DLR) | ||
| 131 | #define GU_EQL LGUI_T(KC_EQL) | ||
| 132 | |||
| 133 | // layer toggle. | ||
| 134 | #define LW_E LT(_LOWER, KC_E) | ||
| 135 | #define RS_SPC LT(_RAISE, KC_SPC) | ||
| 136 | #define LW_RMI LT(_LOWER, RMI) | ||
| 137 | #define RS_LMI LT(_RAISE, LMI) | ||
| 138 | |||
| 139 | // idk, man. not used, i guess. | ||
| 140 | #define ADDDD MO(_ADJUST) | ||
| 141 | |||
| 142 | // common shortcuts for windows and linux that i use. | ||
| 143 | #define NXTTAB LCTL(KC_PGDN) | ||
| 144 | #define PRVTAB LCTL(KC_PGUP) | ||
| 145 | #define UPTAB LCTL(LSFT(KC_PGUP)) | ||
| 146 | #define DNTAB LCTL(LSFT(KC_PGDN)) | ||
| 147 | #define NXTWIN LALT(KC_TAB) | ||
| 148 | #define PRVWIN LALT(LSFT(KC_TAB)) | ||
| 149 | #define CALDL LCTL(LALT(KC_DELT)) | ||
| 150 | #define TSKMGR LCTL(LSFT(KC_ESC)) | ||
| 151 | #define EXPLR LGUI(KC_E) | ||
| 152 | #define LCKGUI LGUI(KC_L) | ||
| 153 | #define CONPST LSFT(KC_INS) | ||
| 154 | #define CLSGUI LALT(KC_F4) | ||
| 155 | |||
| 156 | // left hand combinations. | ||
| 157 | const uint16_t PROGMEM lu_p_r_combo[] = {LUP, LUR, COMBO_END}; | ||
| 158 | const uint16_t PROGMEM lu_r_m_combo[] = {LUR, LUM, COMBO_END}; | ||
| 159 | const uint16_t PROGMEM lu_r_i_combo[] = {LUR, LUI, COMBO_END}; | ||
| 160 | const uint16_t PROGMEM lu_m_i_combo[] = {LUM, LUI, COMBO_END}; | ||
| 161 | const uint16_t PROGMEM lu_m_ii_combo[] = {LUM, LUII, COMBO_END}; | ||
| 162 | const uint16_t PROGMEM lu_i_ii_combo[] = {LUI, LUII, COMBO_END}; | ||
| 163 | const uint16_t PROGMEM ll_p_r_combo[] = {LLP, LLR, COMBO_END}; | ||
| 164 | const uint16_t PROGMEM ll_r_m_combo[] = {LLR, LLM, COMBO_END}; | ||
| 165 | const uint16_t PROGMEM ll_r_i_combo[] = {LLR, LLI, COMBO_END}; | ||
| 166 | const uint16_t PROGMEM ll_m_i_combo[] = {LLM, LLI, COMBO_END}; | ||
| 167 | const uint16_t PROGMEM ll_i_ii_combo[] = {LLI, LLII, COMBO_END}; | ||
| 168 | |||
| 169 | const uint16_t PROGMEM lu_r_m_i_combo[] = {LUR, LUM, LUI, COMBO_END}; | ||
| 170 | const uint16_t PROGMEM ll_r_m_i_combo[] = {LLR, LLM, LLI, COMBO_END}; | ||
| 171 | |||
| 172 | // right hand combinations. | ||
| 173 | const uint16_t PROGMEM ru_p_r_combo[] = {RUP, RUR, COMBO_END}; | ||
| 174 | const uint16_t PROGMEM ru_r_m_combo[] = {RUR, RUM, COMBO_END}; | ||
| 175 | const uint16_t PROGMEM ru_r_i_combo[] = {RUR, RUI, COMBO_END}; | ||
| 176 | const uint16_t PROGMEM ru_m_i_combo[] = {RUM, RUI, COMBO_END}; | ||
| 177 | const uint16_t PROGMEM ru_m_ii_combo[] = {RUM, RUII, COMBO_END}; | ||
| 178 | const uint16_t PROGMEM ru_i_ii_combo[] = {RUI, RUII, COMBO_END}; | ||
| 179 | const uint16_t PROGMEM rl_p_r_combo[] = {RLP, RLR, COMBO_END}; | ||
| 180 | const uint16_t PROGMEM rl_r_m_combo[] = {RLR, RLM, COMBO_END}; | ||
| 181 | const uint16_t PROGMEM rl_r_i_combo[] = {RLR, RLI, COMBO_END}; | ||
| 182 | const uint16_t PROGMEM rl_m_i_combo[] = {RLM, RLI, COMBO_END}; | ||
| 183 | const uint16_t PROGMEM rl_i_ii_combo[] = {RLI, RLII, COMBO_END}; | ||
| 184 | |||
| 185 | const uint16_t PROGMEM ru_r_m_i_combo[] = {RUR, RUM, RUI, COMBO_END}; | ||
| 186 | const uint16_t PROGMEM rl_r_m_i_combo[] = {RLR, RLM, RLI, COMBO_END}; | ||
| 187 | |||
| 188 | // both hand combinations. | ||
| 189 | const uint16_t PROGMEM bl_m_m_combo[] = {LLM, RLM, COMBO_END}; | ||
| 190 | |||
| 191 | combo_t key_combos[COMBO_COUNT] = { | ||
| 192 | // left hand combinations. | ||
| 193 | [L_U_PINKY_RING] = COMBO(lu_p_r_combo, KC_TAB), | ||
| 194 | [L_U_RING_MIDDLE] = COMBO(lu_r_m_combo, KC_QUES), | ||
| 195 | [L_U_RING_INDEX] = COMBO(lu_r_i_combo, PRVTAB), | ||
| 196 | [L_U_MIDDLE_INDEX] = COMBO(lu_m_i_combo, KC_UNDS), | ||
| 197 | [L_U_MIDDLE_INNER_INDEX] = COMBO(lu_m_ii_combo, KC_ENT), | ||
| 198 | [L_U_INDEX_INNER_INDEX] = COMBO(lu_i_ii_combo, KC_PIPE), | ||
| 199 | [L_L_PINKY_RING] = COMBO(ll_p_r_combo, KC_ENT), | ||
| 200 | [L_L_RING_MIDDLE] = COMBO(ll_r_m_combo, LCTL(KC_W)), | ||
| 201 | [L_L_RING_INDEX] = COMBO(ll_r_i_combo, KC_TAB), | ||
| 202 | [L_L_MIDDLE_INDEX] = COMBO(ll_m_i_combo, KC_DELT), | ||
| 203 | [L_L_INDEX_INNER_INDEX] = COMBO(ll_i_ii_combo, KC_TILD), | ||
| 204 | |||
| 205 | [L_U_RING_MIDDLE_INDEX] = COMBO(lu_r_m_i_combo, KC_PIPE), | ||
| 206 | [L_L_RING_MIDDLE_INDEX] = COMBO(ll_r_m_i_combo, KC_TILD), | ||
| 207 | |||
| 208 | // right hand combinations. | ||
| 209 | [R_U_PINKY_RING] = COMBO(ru_p_r_combo, KC_BSPC), | ||
| 210 | [R_U_RING_MIDDLE] = COMBO(ru_r_m_combo, KC_SLSH), | ||
| 211 | [R_U_RING_INDEX] = COMBO(ru_r_i_combo, NXTTAB), | ||
| 212 | [R_U_MIDDLE_INDEX] = COMBO(ru_m_i_combo, KC_MINS), | ||
| 213 | [R_U_MIDDLE_INNER_INDEX] = COMBO(ru_m_ii_combo, KC_ENT), | ||
| 214 | [R_U_INNER_INNER_INDEX] = COMBO(ru_i_ii_combo, KC_BSLS), | ||
| 215 | [R_L_PINKY_RING] = COMBO(rl_p_r_combo, KC_BSLS), | ||
| 216 | [R_L_RING_MIDDLE] = COMBO(rl_r_m_combo, KC_APP), | ||
| 217 | [R_L_RING_INDEX] = COMBO(rl_r_i_combo, LSFT(KC_TAB)), | ||
| 218 | [R_L_MIDDLE_INDEX] = COMBO(rl_m_i_combo, KC_DELT), | ||
| 219 | [R_L_INDEX_INNER_INDEX] = COMBO(rl_i_ii_combo, KC_GRV), | ||
| 220 | |||
| 221 | [R_U_RING_MIDDLE_INDEX] = COMBO(ru_r_m_i_combo, KC_BSLS), | ||
| 222 | [R_L_RING_MIDDLE_INDEX] = COMBO(rl_r_m_i_combo, KC_GRV), | ||
| 223 | |||
| 224 | // both hand combinations. | ||
| 225 | [B_L_MIDDLE_MIDDLE] = COMBO(bl_m_m_combo, KC_ENT), | ||
| 226 | }; | ||
| 227 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 228 | [0] = LAYOUT_all( | ||
| 229 | KC_ESC, LUP, LUR, LUM, LUI, LUII, RUII, RUI, RUM, RUR, RUP, KC_BSPC, KC_BSPC, | ||
| 230 | KC_LCTL,SHLP, CTLR, ALLM, RS_LMI, GULII, GURII, LW_RMI, ALRM, CTRR, SHRP, KC_ENT, | ||
| 231 | KC_LSFT,LLP, LLR, LLM, LLI, LLII, RLII, RLI, RLM, RLR, RLP, KC_RSFT,MO(1), | ||
| 232 | KC_LGUI,KC_LALT, KC_LGUI,LW_E, SF_BSPC, AL_ENT, RS_SPC, KC_LALT, KC_RGUI,KC_RCTL | ||
| 233 | ), | ||
| 234 | [1] = LAYOUT_all( | ||
| 235 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_BSPC, | ||
| 236 | KC_LCTL,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_SCLN, | ||
| 237 | KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(2), | ||
| 238 | KC_LGUI,KC_LALT, KC_LGUI,LW_E, SF_BSPC, AL_ENT, RS_SPC, KC_LALT, KC_RGUI,KC_RCTL | ||
| 239 | ), | ||
| 240 | [2] = LAYOUT_all( | ||
| 241 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, | ||
| 242 | KC_LCTL,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_SCLN, | ||
| 243 | KC_LSFT,KC_Z, KC_X, KC_C, KC_V, RESET, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(1), | ||
| 244 | KC_LGUI,KC_LALT, KC_LGUI,LW_E, SF_BSPC, AL_ENT, RS_SPC, KC_LALT, KC_RGUI,KC_RCTL | ||
| 245 | ), | ||
| 246 | }; | ||
diff --git a/keyboards/alicia_cook/keymaps/rick/readme.md b/keyboards/alicia_cook/keymaps/rick/readme.md new file mode 100644 index 000000000..2bfb2a96f --- /dev/null +++ b/keyboards/alicia_cook/keymaps/rick/readme.md | |||
| @@ -0,0 +1 @@ | |||
| # Rick's Keymap for Alicia Cook | |||
diff --git a/keyboards/alicia_cook/keymaps/rick/rules.mk b/keyboards/alicia_cook/keymaps/rick/rules.mk new file mode 100644 index 000000000..6ecc62095 --- /dev/null +++ b/keyboards/alicia_cook/keymaps/rick/rules.mk | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | COMBO_ENABLE = yes | ||
| 2 | CONSOLE_ENABLE = yes \ No newline at end of file | ||
diff --git a/keyboards/alicia_cook/readme.md b/keyboards/alicia_cook/readme.md new file mode 100644 index 000000000..4e37a366e --- /dev/null +++ b/keyboards/alicia_cook/readme.md | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | # Alicia Cook | ||
| 2 | |||
| 3 |  | ||
| 4 | |||
| 5 | 40% Alice-style keyboard that can be split and uses IDC connector. | ||
| 6 | |||
| 7 | * Keyboard Maintainer: [Ibnu D. Aji](https://github.com/ibnuda) | ||
| 8 | * Hardware Supported: [Alicia Cook](https://github.com/ibnuda/alicia-cook) | ||
| 9 | * Hardware Availability: [Alicia Cook](https://github.com/ibnuda/alicia-cook) | ||
| 10 | |||
| 11 | Make example for this keyboard (after setting up your build environment): | ||
| 12 | |||
| 13 | make alicia_cook:default | ||
| 14 | |||
| 15 | Flashing example for this keyboard: | ||
| 16 | |||
| 17 | make alicia_cook:default:flash | ||
| 18 | |||
| 19 | See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). | ||
| 20 | |||
| 21 | ## Bootloader | ||
| 22 | |||
| 23 | To enter the bootloader, there's only one way to do it: | ||
| 24 | |||
| 25 | * **Keycode in layout**: Hold left spacebar and then tap `B` key in the default keymap. | ||
| 26 | |||
diff --git a/keyboards/alicia_cook/rules.mk b/keyboards/alicia_cook/rules.mk new file mode 100644 index 000000000..f35bef0a6 --- /dev/null +++ b/keyboards/alicia_cook/rules.mk | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | # MCU name | ||
| 2 | MCU = atmega32u4 | ||
| 3 | |||
| 4 | # Bootloader selection | ||
| 5 | BOOTLOADER = caterina | ||
| 6 | |||
| 7 | # Build Options | ||
| 8 | # change yes to no to disable | ||
| 9 | # | ||
| 10 | BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite | ||
| 11 | MOUSEKEY_ENABLE = no # Mouse keys | ||
| 12 | EXTRAKEY_ENABLE = no # Audio control and System control | ||
| 13 | CONSOLE_ENABLE = no # Console for debug | ||
| 14 | COMMAND_ENABLE = no # Commands for debug and configuration | ||
| 15 | NKRO_ENABLE = no # Enable N-Key Rollover | ||
| 16 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
| 17 | RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow | ||
| 18 | AUDIO_ENABLE = no # Audio output | ||
