diff options
-rw-r--r-- | keyboards/noxary/220/220.c | 40 | ||||
-rw-r--r-- | keyboards/noxary/220/220.h | 2 | ||||
-rw-r--r-- | keyboards/noxary/220/config.h | 36 | ||||
-rw-r--r-- | keyboards/noxary/220/keymaps/default/keymap.c | 155 | ||||
-rw-r--r-- | keyboards/noxary/220/keymaps/default/readme.md | 2 | ||||
-rw-r--r-- | keyboards/noxary/220/keymaps/via/keymap.c | 122 | ||||
-rw-r--r-- | keyboards/noxary/220/keymaps/via/readme.md | 3 | ||||
-rw-r--r-- | keyboards/noxary/220/keymaps/via/rules.mk | 5 | ||||
-rw-r--r-- | keyboards/noxary/220/readme.md | 4 | ||||
-rw-r--r-- | keyboards/noxary/220/rules.mk | 5 | ||||
-rw-r--r-- | keyboards/noxary/280/config.h | 35 | ||||
-rw-r--r-- | keyboards/noxary/280/keymaps/default/keymap.c | 169 | ||||
-rw-r--r-- | keyboards/noxary/280/keymaps/default/readme.md | 2 | ||||
-rw-r--r-- | keyboards/noxary/280/keymaps/via/keymap.c | 185 | ||||
-rw-r--r-- | keyboards/noxary/280/keymaps/via/readme.md | 2 | ||||
-rw-r--r-- | keyboards/noxary/280/keymaps/via/rules.mk | 3 | ||||
-rw-r--r-- | keyboards/noxary/280/readme.md | 10 |
17 files changed, 459 insertions, 321 deletions
diff --git a/keyboards/noxary/220/220.c b/keyboards/noxary/220/220.c index e671e15a43..0af57ff36d 100644 --- a/keyboards/noxary/220/220.c +++ b/keyboards/noxary/220/220.c @@ -1,4 +1,4 @@ -/* Copyright 2019 MechMerlin +/* Copyright 2020 Rozakiin * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -26,37 +26,9 @@ void matrix_init_kb(void) { matrix_init_user(); } - -/* - -void matrix_scan_kb(void) { - // put your looping keyboard code here - // runs every cycle (a lot) - - matrix_scan_user(); -} - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - // put your per-action keyboard code here - // runs for every action, just before processing by the firmware - - return process_record_user(keycode, record); -} - -void led_set_kb(uint8_t usb_led) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - - led_set_user(usb_led); -} - -*/ - -void led_set_kb(uint8_t usb_led) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here - if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) { - writePinLow(C6); - } else { - writePinHigh(C6); - } - led_set_user(usb_led); +bool led_update_kb(led_t led_state) { + if(led_update_user(led_state)) { + writePin(C6, led_state.num_lock); + } + return true; }
\ No newline at end of file diff --git a/keyboards/noxary/220/220.h b/keyboards/noxary/220/220.h index 3f1375e2a6..26419976c8 100644 --- a/keyboards/noxary/220/220.h +++ b/keyboards/noxary/220/220.h @@ -1,4 +1,4 @@ -/* Copyright 2019 MechMerlin +/* Copyright 2019 Rozakiin * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/keyboards/noxary/220/config.h b/keyboards/noxary/220/config.h index 1242de61bc..7571138076 100644 --- a/keyboards/noxary/220/config.h +++ b/keyboards/noxary/220/config.h @@ -20,12 +20,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 +#define VENDOR_ID 0x4E58 //"NX" +#define PRODUCT_ID 0x00DC //220 #define DEVICE_VER 0x0001 #define MANUFACTURER Noxary #define PRODUCT 220 -#define DESCRIPTION A custom numpad +#define DESCRIPTION A custom numpad keyboard. /* key matrix size */ #define MATRIX_ROWS 6 @@ -57,42 +57,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define BACKLIGHT_BREATHING #define BACKLIGHT_LEVELS 3 -// #define RGB_DI_PIN E2 -// #ifdef RGB_DI_PIN -// #define RGBLED_NUM 16 -// #define RGBLIGHT_HUE_STEP 8 -// #define RGBLIGHT_SAT_STEP 8 -// #define RGBLIGHT_VAL_STEP 8 -// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -// #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 -// #endif - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST -/* number of backlight levels */ - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ diff --git a/keyboards/noxary/220/keymaps/default/keymap.c b/keyboards/noxary/220/keymaps/default/keymap.c index a72841db54..ec49ea160d 100644 --- a/keyboards/noxary/220/keymaps/default/keymap.c +++ b/keyboards/noxary/220/keymaps/default/keymap.c @@ -15,62 +15,109 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +enum layer_names { + _BL, + _FL1, + _FL2, + _FL3 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - LAYOUT_ortho_6x4( - KC_ESC, BL_TOGG, BL_DEC, BL_INC, - KC_NLCK, KC_SLSH, KC_ASTR, KC_PEQL, - KC_7, KC_8, KC_9, KC_PMNS, - KC_4, KC_5, KC_6, KC_PPLS, - KC_1, KC_2, KC_3, KC_PENT, - KC_0, KC_0, KC_DEL, KC_PENT), - - LAYOUT_ortho_6x4( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + /* Base Layer + * ┌───┬───┬───┬───┐ + * │Esc│BLT│BL-│BL+│ + * ├───┼───┼───┼───┤ + * │NLK│ / │ * │ = │ + * ├───┼───┼───┼───┤ + * │ 7 │ 8 │ 9 │ - │ + * ├───┼───┼───┼───┤ + * │ 4 │ 5 │ 6 │ + │ + * ├───┼───┼───┼───┤ + * │ 1 │ 2 │ 3 │ENT│ + * ├───┼───┼───┼───┤ + * │ 0 │ 0 │ . │ENT│ + * └───┴───┴───┴───┘ + */ + [_BL] = LAYOUT_ortho_6x4( + KC_ESC, BL_TOGG, BL_DEC, BL_INC, + KC_NLCK, KC_PSLS, KC_PAST, KC_PEQL, + KC_P7, KC_P8, KC_P9, KC_PMNS, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_P0, KC_PDOT, KC_PENT + ), + /* Function Layer 1 + * ┌───┬───┬───┬───┐ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * └───┴───┴───┴───┘ + */ + [_FL1] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + /* Function Layer 2 + * ┌───┬───┬───┬───┐ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * └───┴───┴───┴───┘ + */ + [_FL2] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + /* Function Layer 3 + * ┌───┬───┬───┬───┐ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * └───┴───┴───┴───┘ + */ + [_FL3] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QMKBEST: - if (record->event.pressed) { - // when keycode QMKBEST is pressed - SEND_STRING("QMK is the best thing ever!"); - } else { - // when keycode QMKBEST is released - } - break; - case QMKURL: - if (record->event.pressed) { - // when keycode QMKURL is pressed - SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER)); - } else { - // when keycode QMKURL is released - } - break; - } - return true; -} - -void matrix_init_user(void) { - -} - -void matrix_scan_user(void) { - -} - -void led_set_user(uint8_t usb_led) { - -} diff --git a/keyboards/noxary/220/keymaps/default/readme.md b/keyboards/noxary/220/keymaps/default/readme.md index bff7feda38..40f25464a0 100644 --- a/keyboards/noxary/220/keymaps/default/readme.md +++ b/keyboards/noxary/220/keymaps/default/readme.md @@ -1 +1,3 @@ +![Noxary 220 Layout Image](https://i.imgur.com/jVQ50lt.png) + # The default keymap for Noxary 220
\ No newline at end of file diff --git a/keyboards/noxary/220/keymaps/via/keymap.c b/keyboards/noxary/220/keymaps/via/keymap.c new file mode 100644 index 0000000000..1bfc7a8d04 --- /dev/null +++ b/keyboards/noxary/220/keymaps/via/keymap.c @@ -0,0 +1,122 @@ +/* Copyright 2020 Rozakiin + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +enum layer_names { + _BL, + _FL1, + _FL2, + _FL3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base Layer + * ┌───┬───┬───┬───┐ + * │Esc│BLT│BL-│BL+│ + * ├───┼───┼───┼───┤ + * │NLK│ / │ * │ = │ + * ├───┼───┼───┼───┤ + * │ 7 │ 8 │ 9 │ - │ + * ├───┼───┼───┼───┤ + * │ 4 │ 5 │ 6 │ + │ + * ├───┼───┼───┼───┤ + * │ 1 │ 2 │ 3 │ENT│ + * ├───┼───┼───┼───┤ + * │ 0 │ 0 │ . │ENT│ + * └───┴───┴───┴───┘ + */ + [_BL] = LAYOUT_ortho_6x4( + KC_ESC, BL_TOGG, BL_DEC, BL_INC, + KC_NLCK, KC_PSLS, KC_PAST, KC_PEQL, + KC_P7, KC_P8, KC_P9, KC_PMNS, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_P0, KC_PDOT, KC_PENT + ), + /* Function Layer 1 + * ┌───┬───┬───┬───┐ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * └───┴───┴───┴───┘ + */ + [_FL1] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + /* Function Layer 2 + * ┌───┬───┬───┬───┐ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * └───┴───┴───┴───┘ + */ + [_FL2] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + /* Function Layer 3 + * ┌───┬───┬───┬───┐ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * ├───┼───┼───┼───┤ + * │ │ │ │ │ + * └───┴───┴───┴───┘ + */ + [_FL3] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), +}; diff --git a/keyboards/noxary/220/keymaps/via/readme.md b/keyboards/noxary/220/keymaps/via/readme.md new file mode 100644 index 0000000000..1e2b4542d7 --- /dev/null +++ b/keyboards/noxary/220/keymaps/via/readme.md @@ -0,0 +1,3 @@ +![Noxary 220 Layout Image](https://i.imgur.com/GsswjSf.png) + +# The VIA keymap for Noxary 220
\ No newline at end of file diff --git a/keyboards/noxary/220/keymaps/via/rules.mk b/keyboards/noxary/220/keymaps/via/rules.mk new file mode 100644 index 0000000000..c2e96d233b --- /dev/null +++ b/keyboards/noxary/220/keymaps/via/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +MOUSEKEY_ENABLE = no +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +LTO_ENABLE = yes diff --git a/keyboards/noxary/220/readme.md b/keyboards/noxary/220/readme.md index 1fcdfcc3c7..bae50c4137 100644 --- a/keyboards/noxary/220/readme.md +++ b/keyboards/noxary/220/readme.md @@ -1,6 +1,8 @@ # Noxary 220 -A fully customizable numpad +![Noxary 220](https://i.imgur.com/8XCxJhP.png) + +A fully customizable (4x6) numpad keyboard. Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin), [Rozakiin](https://github.com/rozakiin) Hardware Supported: Noxary 220 PCB diff --git a/keyboards/noxary/220/rules.mk b/keyboards/noxary/220/rules.mk index f099fefb5d..8d6532925a 100644 --- a/keyboards/noxary/220/rules.mk +++ b/keyboards/noxary/220/rules.mk @@ -1,5 +1,5 @@ # MCU name -MCU = atmega32u4 +MCU = atmega32u2 # Bootloader selection # Teensy halfkay @@ -14,7 +14,7 @@ BOOTLOADER = atmel-dfu # Build Options # change yes to no to disable # -BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration +BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = yes # Console for debug @@ -30,6 +30,5 @@ UNICODE_ENABLE = no # Unicode BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID AUDIO_ENABLE = no # Audio output on port C6 FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches -HD44780_ENABLE = no # Enable support for HD44780 based LCDs LAYOUTS = ortho_6x4 diff --git a/keyboards/noxary/280/config.h b/keyboards/noxary/280/config.h index d0a10866a9..0fe0121733 100644 --- a/keyboards/noxary/280/config.h +++ b/keyboards/noxary/280/config.h @@ -20,12 +20,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0x4E58 -#define PRODUCT_ID 0x0050 +#define VENDOR_ID 0x4E58 //"NX" +#define PRODUCT_ID 0x0118 //280 #define DEVICE_VER 0x0001 #define MANUFACTURER Noxary #define PRODUCT 280 -#define DESCRIPTION A custom TKL +#define DESCRIPTION A custom TKL keyboard. /* key matrix size */ #define MATRIX_ROWS 12 @@ -57,33 +57,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define BACKLIGHT_BREATHING #define BACKLIGHT_LEVELS 3 -// #define RGB_DI_PIN E2 -// #ifdef RGB_DI_PIN -// #define RGBLED_NUM 16 -// #define RGBLIGHT_HUE_STEP 8 -// #define RGBLIGHT_SAT_STEP 8 -// #define RGBLIGHT_VAL_STEP 8 -// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -// #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 -// #endif /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -91,8 +64,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST -/* number of backlight levels */ - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ diff --git a/keyboards/noxary/280/keymaps/default/keymap.c b/keyboards/noxary/280/keymaps/default/keymap.c index 3d993e0425..38fff0da2f 100644 --- a/keyboards/noxary/280/keymaps/default/keymap.c +++ b/keyboards/noxary/280/keymaps/default/keymap.c @@ -1,4 +1,4 @@ -/* Copyright 2019 Rozakin +/* Copyright 2020 Rozakiin * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,35 +15,34 @@ */ #include QMK_KEYBOARD_H -// Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { - QMKBEST = SAFE_RANGE, - QMKURL -}; - // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them // entirely and just use numbers. -#define _BL 0 -#define _FL1 1 -#define _FL2 2 +enum layer_names { + _BL, + _FL1, + _FL2, + _FL3 +}; + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* _BL: Base Layer(Default) - For ISO enter use ANSI enter - * ,------------------------------------------------------------. ,--------------. - * |Esc |f1| f2| f3| f4| | f5| f6| f7| f8| | f9|f10|f11| f12| |Prnt|ScLk|Paus| - * |------------------------------------------------------------| |--------------| - * | ~ | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \|BSpc| | Ins|Home|PgUp| - * |------------------------------------------------------------| |--------------| - * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ | | Del| End|PgDn| - * |------------------------------------------------------------| `--------------' - * |CAPS | A| S| D| F| G| H| J| K| L| ;| '| #| Ent| - * |------------------------------------------------------------| ,----. - * |Shift| \| Z| X| C| V| B| N| M| ,| .| /|Shift|Mo(1)| | Up | - * |------------------------------------------------------------| ,--------------. - * |Ctrl|Win |Alt | Space |Alt |Win |Mo(1) |Ctrl | |Left| Dn |Rght| - * `------------------------------------------------------------' `--------------' + /* Base Layer - For ISO enter use ANSI enter + * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐ + * │ESC│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12││PRT│SLK│PSE│ + * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │BSP││INS│HME│PUP│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┼───┤ + * │ TAB │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ ││DEL│END│PDN│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ + * │ CAPS │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ ENTER │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ + * │SFT │ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │Shift │M1 │ │ ↑ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌───┼───┼───┐ + * │CTRL│Win │ALT │ SPC │ALT │WIN │M(1)│CTRL││ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘ */ [_BL] = LAYOUT( KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS, @@ -51,52 +50,78 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FL1), KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FL1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT), - /* _FL1: Function Layer 1 - For ISO enter use ANSI enter - * ,------------------------------------------------------------. ,--------------. - * | | | | | | | | | | | | | | | | | | | | - * |------------------------------------------------------------| |--------------| - * | | | | | | | | | | | | | | | | | | | | - * |------------------------------------------------------------| |--------------| - * | | | | |RST| | | | | | | | | | | | | | - * |------------------------------------------------------------| `--------------' - * | | | | | | | | | | | | | | | - * |------------------------------------------------------------| ,----. - * | | | | | | | | | |Bl-|Bl+| | Mute| | |Vol+| - * |------------------------------------------------------------| ,--------------. - * | | | | BL_Toggle | | | | | | |Vol-| | - * `------------------------------------------------------------' `--------------' - */ - [_FL1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, _______, KC_VOLU, - _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, KC_VOLD, _______), - /* _FL2: Function Layer 2 - For ISO enter use ANSI enter - * ,------------------------------------------------------------. ,--------------. - * | | | | | | | | | | | | | | | | | | | | - * |------------------------------------------------------------| |--------------| - * | | | | | | | | | | | | | | | | | | | | - * |------------------------------------------------------------| |--------------| - * | | | | | | | | | | | | | | | | | | | - * |------------------------------------------------------------| `--------------' - * | | | | | | | | | | | | | | | - * |------------------------------------------------------------| ,----. - * | | | | | | | | | | | | | | | | | - * |------------------------------------------------------------| ,--------------. - * | | | | | | | | | | | | | - * `------------------------------------------------------------' `--------------' - */ - [_FL2] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - - + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FL1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT + ), + /* Function Layer 1 - For ISO enter use ANSI enter + * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ + * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┬───┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┼───┤ + * │ │ │ │ │ │RST│ │ │ │ │ │ │ │ ││ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ + * │ │ │ │ │ │ │ │ │ │BL-│BL+│ │ MUTE │ │ │VL+│ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌───┼───┼───┐ + * │ │ │ │ BL_TOGGLE │ │ │ │ ││ │VL-│ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘ + */ + [_FL1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, _______, KC_VOLU, + _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, KC_VOLD, _______ + ), + /* Function Layer 2 - For ISO enter use ANSI enter + * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ + * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┬───┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┼───┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌─ |