Merge remote-tracking branch 'origin/master' into develop
18 files changed, 998 insertions(+), 0 deletions(-) A keyboards/handwired/dactyl_manuform/6x6_4/6x6_4.c A keyboards/handwired/dactyl_manuform/6x6_4/6x6_4.h A keyboards/handwired/dactyl_manuform/6x6_4/config.h A keyboards/handwired/dactyl_manuform/6x6_4/info.json A keyboards/handwired/dactyl_manuform/6x6_4/keymaps/default/keymap.c A keyboards/handwired/dactyl_manuform/6x6_4/rules.mk A keyboards/handwired/dactyl_manuform/6x6_kinesis/6x6_kinesis.c A keyboards/handwired/dactyl_manuform/6x6_kinesis/6x6_kinesis.h A keyboards/handwired/dactyl_manuform/6x6_kinesis/config.h A keyboards/handwired/dactyl_manuform/6x6_kinesis/info.json A keyboards/handwired/dactyl_manuform/6x6_kinesis/keymaps/default/keymap.c A keyboards/handwired/dactyl_manuform/6x6_kinesis/readme.md A keyboards/handwired/dactyl_manuform/6x6_kinesis/rules.mk M keyboards/handwired/dactyl_manuform/dactyl_manuform.h A keyboards/splitkb/kyria/keymaps/lw/config.h A keyboards/splitkb/kyria/keymaps/lw/keymap.c A keyboards/splitkb/kyria/keymaps/lw/readme.md A keyboards/splitkb/kyria/keymaps/lw/rules.mk
A keyboards/handwired/dactyl_manuform/6x6_4/6x6_4.c => keyboards/handwired/dactyl_manuform/6x6_4/6x6_4.c +5 -0
@@ 0,0 1,5 @@ // Copyright 2012 Jun Wako <wakojun@gmail.com> // Copyright 2021 Dmitriy Kuminov (@dmik) // SPDX-License-Identifier: GPL-2.0-or-later #include "6x6_4.h"
A keyboards/handwired/dactyl_manuform/6x6_4/6x6_4.h => keyboards/handwired/dactyl_manuform/6x6_4/6x6_4.h +37 -0
@@ 0,0 1,37 @@ // Copyright 2012 Jun Wako <wakojun@gmail.com> // Copyright 2021 Dmitriy Kuminov (@dmik) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "dactyl_manuform.h" #define XXX KC_NO #define LAYOUT_6x6_4( \ L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \ L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45, \ L50, L51, L52, L53, R52, R53, R54, R55, \ L54, L55, R50, R51, \ L64, L65, R60, R61, \ L62, L63, R62, R63 \ ) { \ { L00, L01, L02, L03, L04, L05 }, \ { L10, L11, L12, L13, L14, L15 }, \ { L20, L21, L22, L23, L24, L25 }, \ { L30, L31, L32, L33, L34, L35 }, \ { L40, L41, L42, L43, L44, L45 }, \ { L50, L51, L52, L53, L54, L55 }, \ { XXX, XXX, L62, L63, L64, L65 }, \ \ { R00, R01, R02, R03, R04, R05 }, \ { R10, R11, R12, R13, R14, R15 }, \ { R20, R21, R22, R23, R24, R25 }, \ { R30, R31, R32, R33, R34, R35 }, \ { R40, R41, R42, R43, R44, R45 }, \ { R50, R51, R52, R53, R54, R55 }, \ { R60, R61, R62, R63, XXX, XXX } \ }
A keyboards/handwired/dactyl_manuform/6x6_4/config.h => keyboards/handwired/dactyl_manuform/6x6_4/config.h +40 -0
@@ 0,0 1,40 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2015 Jack Humbert 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/>. */ #pragma once #include "config_common.h" #define PRODUCT_ID 0x3636 #define DEVICE_VER 0x0001 #define PRODUCT Dactyl-Manuform (6x6+4) /* key matrix size */ // Rows are doubled-up #define MATRIX_ROWS 14 #define MATRIX_COLS 6 // wiring of each half #define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 } #define MATRIX_ROW_PINS { F5, F6, F7, B1, B3, B2, B6 } #define DIODE_DIRECTION COL2ROW // WS2812 RGB LED strip input and number of LEDs #define RGB_DI_PIN D3 #define RGBLED_NUM 12
A keyboards/handwired/dactyl_manuform/6x6_4/info.json => keyboards/handwired/dactyl_manuform/6x6_4/info.json +108 -0
@@ 0,0 1,108 @@ { "keyboard_name": "Dactyl Manuform 6x6 4 extra keys", "url": "", "maintainer": "dmik", "layouts": { "LAYOUT_6x6_4": { "layout": [ {"x": 0, "y": 0}, {"x": 1, "y": 0}, {"x": 2, "y": 0}, {"x": 3, "y": 0}, {"x": 4, "y": 0}, {"x": 5, "y": 0}, {"x": 11, "y": 0}, {"x": 12, "y": 0}, {"x": 13, "y": 0}, {"x": 14, "y": 0}, {"x": 15, "y": 0}, {"x": 16, "y": 0}, {"x": 0, "y": 1}, {"x": 1, "y": 1}, {"x": 2, "y": 1}, {"x": 3, "y": 1}, {"x": 4, "y": 1}, {"x": 5, "y": 1}, {"x": 11, "y": 1}, {"x": 12, "y": 1}, {"x": 13, "y": 1}, {"x": 14, "y": 1}, {"x": 15, "y": 1}, {"x": 16, "y": 1}, {"x": 0, "y": 2}, {"x": 1, "y": 2}, {"x": 2, "y": 2}, {"x": 3, "y": 2}, {"x": 4, "y": 2}, {"x": 5, "y": 2}, {"x": 11, "y": 2}, {"x": 12, "y": 2}, {"x": 13, "y": 2}, {"x": 14, "y": 2}, {"x": 15, "y": 2}, {"x": 16, "y": 2}, {"x": 0, "y": 3}, {"x": 1, "y": 3}, {"x": 2, "y": 3}, {"x": 3, "y": 3}, {"x": 4, "y": 3}, {"x": 5, "y": 3}, {"x": 11, "y": 3}, {"x": 12, "y": 3}, {"x": 13, "y": 3}, {"x": 14, "y": 3}, {"x": 15, "y": 3}, {"x": 16, "y": 3}, {"x": 0, "y": 4}, {"x": 1, "y": 4}, {"x": 2, "y": 4}, {"x": 3, "y": 4}, {"x": 4, "y": 4}, {"x": 5, "y": 4}, {"x": 11, "y": 4}, {"x": 12, "y": 4}, {"x": 13, "y": 4}, {"x": 14, "y": 4}, {"x": 15, "y": 4}, {"x": 16, "y": 4}, {"x": 0, "y": 5}, {"x": 1, "y": 5}, {"x": 2, "y": 5}, {"x": 3, "y": 5}, {"x": 13, "y": 5}, {"x": 14, "y": 5}, {"x": 15, "y": 5}, {"x": 16, "y": 5}, {"x": 4, "y": 6}, {"x": 5, "y": 6}, {"x": 11, "y": 6}, {"x": 12, "y": 6}, {"x": 6, "y": 7}, {"x": 7, "y": 7}, {"x": 9, "y": 7}, {"x": 10, "y": 7}, {"x": 6, "y": 8}, {"x": 7, "y": 8}, {"x": 9, "y": 8}, {"x": 10, "y": 8} ] } } }
A keyboards/handwired/dactyl_manuform/6x6_4/keymaps/default/keymap.c => keyboards/handwired/dactyl_manuform/6x6_4/keymaps/default/keymap.c +52 -0
@@ 0,0 1,52 @@ // Copyright 2012 Jun Wako <wakojun@gmail.com> // Copyright 2021 Dmitriy Kuminov (@dmik) // SPDX-License-Identifier: GPL-2.0-or-later #include QMK_KEYBOARD_H enum custom_layers { _QWERTY, _LOWER, _RAISE, }; #define RAISE MO(_RAISE) #define LOWER MO(_LOWER) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_6x6_4( 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_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_BSPC, KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_MINS, KC_LSFT, 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_BSLASH, _______,_______, KC_LBRC,KC_RBRC, KC_PLUS, KC_EQL,_______,_______, RAISE,KC_SPC, KC_ENT, LOWER, KC_TAB,KC_HOME, KC_END, KC_DEL, KC_BSPC, KC_GRV, KC_LGUI, KC_LALT ), [_LOWER] = LAYOUT_6x6_4( 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_TILD,KC_EXLM, KC_AT ,KC_HASH,KC_DLR ,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_DEL, _______,_______,_______,_______,_______,KC_LBRC, KC_RBRC, KC_P7 , KC_P8 , KC_P9 ,_______,KC_PLUS, _______,KC_HOME,KC_PGUP,KC_PGDN,KC_END ,KC_LPRN, KC_RPRN, KC_P4 , KC_P5 , KC_P6 ,KC_MINS,KC_PIPE, _______,_______,_______,_______,_______,_______, _______, KC_P1 , KC_P2 , KC_P3 ,KC_EQL ,KC_UNDS, _______,_______,_______,KC_PSCR, _______, KC_P0,_______,_______, _______,_______, _______,_______, _______,_______, _______,_______, _______,_______, _______,_______ ), [_RAISE] = LAYOUT_6x6_4( KC_F12 , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 , _______,_______,_______,_______,_______,KC_LBRC, KC_RBRC,_______,KC_NLCK,KC_INS ,KC_SLCK,KC_MUTE, _______,KC_LEFT,KC_UP ,KC_DOWN,KC_RGHT,KC_LPRN, KC_RPRN,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_VOLU, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,KC_VOLD, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______, KC_EQL ,_______,_______,_______, _______,_______, _______,_______, _______,_______, _______,_______, _______,_______, _______,_______ ) };
A keyboards/handwired/dactyl_manuform/6x6_4/rules.mk => keyboards/handwired/dactyl_manuform/6x6_4/rules.mk +19 -0
@@ 0,0 1,19 @@ # MCU name MCU = atmega32u4 # Bootloader selection BOOTLOADER = caterina # Build Options # change yes to no to disable # BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output SPLIT_KEYBOARD = yes
A keyboards/handwired/dactyl_manuform/6x6_kinesis/6x6_kinesis.c => keyboards/handwired/dactyl_manuform/6x6_kinesis/6x6_kinesis.c +5 -0
@@ 0,0 1,5 @@ // Copyright 2012 Jun Wako <wakojun@gmail.com> // Copyright 2021 Dmitriy Kuminov (@dmik) // SPDX-License-Identifier: GPL-2.0-or-later #include "6x6_kinesis.h"
A keyboards/handwired/dactyl_manuform/6x6_kinesis/6x6_kinesis.h => keyboards/handwired/dactyl_manuform/6x6_kinesis/6x6_kinesis.h +37 -0
@@ 0,0 1,37 @@ // Copyright 2012 Jun Wako <wakojun@gmail.com> // Copyright 2021 Dmitriy Kuminov (@dmik) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "dactyl_manuform.h" #define XXX KC_NO #define LAYOUT_6x6_kinesis( \ L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \ L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45, \ L50, L51, L52, L53, R52, R53, R54, R55, \ L54, L55, R50, R51, \ L64, L65, R60, R61, \ L62, L63, R62, R63 \ ) { \ { L00, L01, L02, L03, L04, L05 }, \ { L10, L11, L12, L13, L14, L15 }, \ { L20, L21, L22, L23, L24, L25 }, \ { L30, L31, L32, L33, L34, L35 }, \ { L40, L41, L42, L43, L44, L45 }, \ { L50, L51, L52, L53, L54, L55 }, \ { XXX, XXX, L62, L63, L64, L65 }, \ \ { R00, R01, R02, R03, R04, R05 }, \ { R10, R11, R12, R13, R14, R15 }, \ { R20, R21, R22, R23, R24, R25 }, \ { R30, R31, R32, R33, R34, R35 }, \ { R40, R41, R42, R43, R44, R45 }, \ { R50, R51, R52, R53, R54, R55 }, \ { R60, R61, R62, R63, XXX, XXX } \ }
A keyboards/handwired/dactyl_manuform/6x6_kinesis/config.h => keyboards/handwired/dactyl_manuform/6x6_kinesis/config.h +40 -0
@@ 0,0 1,40 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2015 Jack Humbert 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/>. */ #pragma once #include "config_common.h" #define PRODUCT_ID 0x3636 #define DEVICE_VER 0x0001 #define PRODUCT Dactyl-Manuform (6x6+4) /* key matrix size */ // Rows are doubled-up #define MATRIX_ROWS 14 #define MATRIX_COLS 6 // wiring of each half #define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 } #define MATRIX_ROW_PINS { F5, F6, F7, B1, B3, B2, B6 } #define DIODE_DIRECTION COL2ROW // WS2812 RGB LED strip input and number of LEDs #define RGB_DI_PIN D3 #define RGBLED_NUM 12
A keyboards/handwired/dactyl_manuform/6x6_kinesis/info.json => keyboards/handwired/dactyl_manuform/6x6_kinesis/info.json +108 -0
@@ 0,0 1,108 @@ { "keyboard_name": "Dactyl Manuform 6x6 Kinesis Advantage edition", "url": "", "maintainer": "dmik", "layouts": { "LAYOUT_6x6_kinesis": { "layout": [ {"x": 0, "y": 0}, {"x": 1, "y": 0}, {"x": 2, "y": 0}, {"x": 3, "y": 0}, {"x": 4, "y": 0}, {"x": 5, "y": 0}, {"x": 11, "y": 0}, {"x": 12, "y": 0}, {"x": 13, "y": 0}, {"x": 14, "y": 0}, {"x": 15, "y": 0}, {"x": 16, "y": 0}, {"x": 0, "y": 1}, {"x": 1, "y": 1}, {"x": 2, "y": 1}, {"x": 3, "y": 1}, {"x": 4, "y": 1}, {"x": 5, "y": 1}, {"x": 11, "y": 1}, {"x": 12, "y": 1}, {"x": 13, "y": 1}, {"x": 14, "y": 1}, {"x": 15, "y": 1}, {"x": 16, "y": 1}, {"x": 0, "y": 2}, {"x": 1, "y": 2}, {"x": 2, "y": 2}, {"x": 3, "y": 2}, {"x": 4, "y": 2}, {"x": 5, "y": 2}, {"x": 11, "y": 2}, {"x": 12, "y": 2}, {"x": 13, "y": 2}, {"x": 14, "y": 2}, {"x": 15, "y": 2}, {"x": 16, "y": 2}, {"x": 0, "y": 3}, {"x": 1, "y": 3}, {"x": 2, "y": 3}, {"x": 3, "y": 3}, {"x": 4, "y": 3}, {"x": 5, "y": 3}, {"x": 11, "y": 3}, {"x": 12, "y": 3}, {"x": 13, "y": 3}, {"x": 14, "y": 3}, {"x": 15, "y": 3}, {"x": 16, "y": 3}, {"x": 0, "y": 4}, {"x": 1, "y": 4}, {"x": 2, "y": 4}, {"x": 3, "y": 4}, {"x": 4, "y": 4}, {"x": 5, "y": 4}, {"x": 11, "y": 4}, {"x": 12, "y": 4}, {"x": 13, "y": 4}, {"x": 14, "y": 4}, {"x": 15, "y": 4}, {"x": 16, "y": 4}, {"x": 1, "y": 5}, {"x": 2, "y": 5}, {"x": 3, "y": 5}, {"x": 4, "y": 5}, {"x": 12, "y": 5}, {"x": 13, "y": 5}, {"x": 14, "y": 5}, {"x": 15, "y": 5}, {"x": 5, "y": 7, "h": 2}, {"x": 6, "y": 7, "h": 2}, {"x": 10, "y": 7, "h": 2}, {"x": 11, "y": 7, "h": 2}, {"x": 6, "y": 6}, {"x": 7, "y": 6}, {"x": 9, "y": 6}, {"x": 10, "y": 6}, {"x": 7, "y": 8}, {"x": 7, "y": 7}, {"x": 9, "y": 7}, {"x": 9, "y": 8} ] } } }
A keyboards/handwired/dactyl_manuform/6x6_kinesis/keymaps/default/keymap.c => keyboards/handwired/dactyl_manuform/6x6_kinesis/keymaps/default/keymap.c +52 -0
@@ 0,0 1,52 @@ // Copyright 2012 Jun Wako <wakojun@gmail.com> // Copyright 2021 Dmitriy Kuminov (@dmik) // SPDX-License-Identifier: GPL-2.0-or-later #include QMK_KEYBOARD_H enum custom_layers { _QWERTY, _LOWER, _RAISE, }; #define RAISE MO(_RAISE) #define LOWER MO(_LOWER) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_6x6_kinesis( KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_CAPS, KC_EQL , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , 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_BSLS, KC_LCTL, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_GRV , LOWER , KC_LEFT, KC_RGHT, KC_UP , KC_DOWN, KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL , KC_ENT , KC_SPC , KC_LGUI, KC_LALT, KC_RCTL, KC_RGUI, KC_END , KC_HOME, KC_PGUP, KC_PGDN ), [_LOWER] = LAYOUT_6x6_kinesis( _______, KC_F11 , KC_F12 , _______, _______, _______, KC_BRID, KC_BRIU, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [_RAISE] = LAYOUT_6x6_kinesis( _______, KC_F11 , KC_F12 , _______, _______, _______, KC_BRID, KC_BRIU, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), };
A keyboards/handwired/dactyl_manuform/6x6_kinesis/readme.md => keyboards/handwired/dactyl_manuform/6x6_kinesis/readme.md +85 -0
@@ 0,0 1,85 @@ # Kinesis Advantage Keymap ## About this keymap This keymap is designed after Kinesis Advantage's QWERTY layout with the following key differences: - There are only 10 F-keys in the main layer, F1 and F2 are moved to additional LOWER layer. - The INS key acts like a LOWER layer activation key and Del in LOWER layer ats like INS. - LCtl is placed where CAPS should be and CAPS is moved to a free key after F10. - Brigtness and volume control keys are added to LOWER layer. The keymap file also contains RAISE layer but it is currently equivalent to LOWER layer and does not have an activation key mapped. It is intended for possible extensions. ## Mapping details Main QUERTY layer: ,-------------------------------------------. ,-------------------------------------------. | ESC | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | CAPS | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | LCtl | A | S | D | F | G | | H | J | K | L | ; | ' | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | LShift | Z | X | C | V | B | | N | M | , | . | / | RShift | `--------+------+------+------+------+------' `------+------+------+------+------+--------' | ` | LOWER| Left | Rght | | Up | Dn | [ | ] | `---------------------------' `---------------------------' ,-------------. ,-------------. | LGui | LAlt | | RCtl | RGui | ,------|------|------| |------+------+------. | | | Home | | PgUp | | | | BkSp | Del |------| |------|Enter |Space | | | | End | | PgDn | | | `--------------------' `--------------------' LOWER layer: ,-------------------------------------------. ,-------------------------------------------. | | F11 | F12 | | | | |BriDn |BriUp |VMute |VolDn |VolUp | | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | | | | | | | | | | | | | | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | | | | | | | | | | | | | | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | | | | | | | | | | | | | | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | | | | | | | | | | | | | | `--------+------+------+------+------+------' `------+------+------+------+------+--------' | | | | | | | | | | `---------------------------' `---------------------------' ,-------------. ,-------------. | | | | | | ,------|------|------| |------+------+------. | | | | | | | | | | INS |------| |------| | | | | | | | | | | `--------------------' `--------------------' ## Soldering details The below picture shows correspondence between the keys and the row/column wires of the left and right halves: LOWER layer: ,-------------------------------------------. ,-------------------------------------------. | L00 | L01 | L02 | L03 | L04 | L05 | | R00 | R01 | R02 | R03 | R04 | R05 | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | L10 | L11 | L12 | L13 | L14 | L15 | | R10 | R11 | R12 | R13 | R14 | R15 | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | L20 | L21 | L22 | L23 | L24 | L25 | | R20 | R21 | R22 | R23 | R24 | R25 | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | L30 | L31 | L32 | L33 | L34 | L35 | | R30 | R31 | R32 | R33 | R34 | R35 | |--------+------+------+------+------+------| |------+------+------+------+------+--------| | L40 | L41 | L42 | L43 | L44 | L45 | | R40 | R41 | R42 | R43 | R44 | R45 | `--------+------+------+------+------+------' `------+------+------+------+------+--------' | L50 | L51 | L52 | L53 | | R52 | R53 | R54 | R55 | `---------------------------' `---------------------------' ,-------------. ,-------------. | L64 | L65 | | R60 | R61 | ,------|------|------| |------+------+------. | | | L63 | | R62 | | | | L54 | L55 |------| |------| R50 | R51 | | | | L62 | | R63 | | | `--------------------' `--------------------'
A keyboards/handwired/dactyl_manuform/6x6_kinesis/rules.mk => keyboards/handwired/dactyl_manuform/6x6_kinesis/rules.mk +19 -0
@@ 0,0 1,19 @@ # MCU name MCU = atmega32u4 # Bootloader selection BOOTLOADER = caterina # Build Options # change yes to no to disable # BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output SPLIT_KEYBOARD = yes
M keyboards/handwired/dactyl_manuform/dactyl_manuform.h => keyboards/handwired/dactyl_manuform/dactyl_manuform.h +4 -0
@@ 16,6 16,10 @@ # include "5x7.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_6x6) # include "6x6.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_6x6_4) # include "6x6_4.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_6x6_kinesis) # include "6x6_kinesis.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_6x7) # include "6x7.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_dmote_62key)
A keyboards/splitkb/kyria/keymaps/lw/config.h => keyboards/splitkb/kyria/keymaps/lw/config.h +26 -0
@@ 0,0 1,26 @@ /* Copyright 2022 Lucas Waelti (@LucasWaelti) * * 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/>. */ #pragma once // Lets you roll mod-tap keys #define IGNORE_MOD_TAP_INTERRUPT // If you are using an Elite C rev3 on the slave side, uncomment the lines below: // #define SPLIT_USB_DETECT // #define NO_USB_STARTUP_CHECK #define UNICODE_SELECTED_MODES UC_LNX, UC_WINC // support for Linux and Windows unicode \ No newline at end of file
A keyboards/splitkb/kyria/keymaps/lw/keymap.c => keyboards/splitkb/kyria/keymaps/lw/keymap.c +251 -0
@@ 0,0 1,251 @@ /* Copyright 2022 Lucas Waelti (@LucasWaelti) * * 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 #include <keymap_us_international.h> // US_ACUT KC_QUOT // ´ (dead) // US_DGRV KC_GRV // ` (dead) // US_DCIR S(US_6) // ^ (dead) // US_DIAE S(US_ACUT) // ¨ (dead) enum layers { _QWERTZ = 0, // base text layer _SYM, // symbol layer _NAV, // navigation layer + accents }; enum unicode_names { APOST, QUOTE, CIRCUM, GRAVE, ACUTE, UMLAUT, CEDIL_MAJ, CEDIL, SECTION, DEGREE, }; const uint32_t PROGMEM unicode_map[] = { [APOST] = 0x0027, // ' [QUOTE] = 0x0022, // " [ACUTE] = 0x00B4, // ´ [GRAVE] = 0x0060, // ` [CIRCUM] = 0x005E, // ^ [UMLAUT] = 0x00A8, // ¨ [CEDIL_MAJ] = 0x00C7, // Ç [CEDIL] = 0x00E7, // ç [SECTION] = 0x00A7, // § [DEGREE] = 0x00B0, // ° }; // usage: X(ACUTE), XP(CEDIL,CEDIL_MAJ) // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * 0. Base Layer: QWERTZ * * ,-------------------------------------------. ,-------------------------------------------. * | Esc | Q | W | E | R | T | | Z | U | I | O | P | Del | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | Tab | A | S | D | F | G | | H | J | K | L | ' " | BkSpace| * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| * | LShift | Y | X | C | V | B | \ | | ` ~ | | ( | ) | N | M | , < | . > | ; : | CpLock | * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' * |LCtrl | LGUI | LAlt | Space| MO(1)| | MO(2)| Enter| - _ | ! | / ? | * | | | | | | | |/shift| | | | * `----------------------------------' `----------------------------------' */ [_QWERTZ] = LAYOUT( KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Z, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, XP(APOST,QUOTE), KC_BSPC, // XP(APOST,QUOTE) or KC_QUOT KC_LSFT, KC_Y, KC_X, KC_C, KC_V, KC_B, KC_BSLS, KC_GRV, KC_LPRN, KC_RPRN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SCLN, KC_CAPS, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), MO(2), KC_SFTENT, KC_MINS, KC_EXLM, KC_SLSH ), // /* // * 1. Sym Layer: Numbers and symbols (DEPRECATED) // * // * ,-------------------------------------------. ,-------------------------------------------. // * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | // * |--------+------+------+------+------+------| |------+------+------+------+------+--------| // * | . | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | = | // * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| // * | LAlt | ? | ! | @ | # | < | [ | { | | } | ] | > | ^ | / | * | - | + | // * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' // * | $ | % | & | | MO(1)| | MO(2)| RAlt | ~ | _ | | | // * | | | | | | | | | | | | // * `----------------------------------' `----------------------------------' // */ // [_SYM] = LAYOUT( // 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_DOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_PEQL, // KC_LALT, KC_QUES, KC_EXLM, KC_AT, KC_HASH, KC_LT, KC_LBRC, KC_LCBR, KC_RCBR, KC_RBRC, KC_GT, KC_CIRC, KC_PSLS, KC_ASTR, KC_PMNS, KC_PLUS, // KC_DLR, KC_PERC, KC_AMPR, _______, MO(1), MO(2), KC_RALT, KC_TILD, KC_UNDS, KC_PIPE // ), /* * 1. Sym Layer: Numbers and symbols * * ,-------------------------------------------. ,-------------------------------------------. * | F1 | F2 | F3 | F4 | LAlt | PASTE| | , | 7 | 8 | 9 | * | / | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | F5 | F6 | F7 | F8 | @ | COPY | | . | 6 | 7 | 8 | = | | * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| * | F9 | F10 | F11 | F12 | & | CUT | UNDO | FIND | | [ | ] | 0 | 1 | 2 | 3 | + | - | * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' * | $ | # | % | | MO(1)| | MO(2)| | \ | | { | } | * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' */ [_SYM] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_LALT,LCTL(KC_V), KC_COMM, KC_7, KC_8, KC_9, KC_ASTR, KC_PSLS, KC_F5, KC_F6, KC_F7, KC_F8, KC_AT, LCTL(KC_C), KC_DOT, KC_4, KC_5, KC_6, KC_PEQL, _______, KC_F9, KC_F10, KC_F11, KC_F12, KC_AMPR,LCTL(KC_X),LCTL(KC_Z), LCTL(KC_F), KC_LBRC, KC_RBRC, KC_0, KC_1, KC_2, KC_3, KC_PLUS, KC_PMNS, KC_DLR, KC_HASH, KC_PERC, _______, MO(1), MO(2), _______, KC_BSLS, KC_LCBR, KC_RCBR ), /* * 2. Nav Layer: Media, navigation, accents * * ,-------------------------------------------. ,-------------------------------------------. * | | Brt+ | Next | Fwd | Play | Vol+ | | Home | PgUp | Up | PgDn | | Del | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | | Brt- | Prev | Bckw | Stop | Vol- | | End | Left | Down | Right|ScrLck| BkSpace| * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| * | LShift | ´ | ` | ^ | ¨ | Mute | |UC_MOD| |RShift| Menu | PrtSc| ç/Ç | § ° | | SAVE | Insert | * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' * |LCtrl | LGUI | LAlt | | MO(1)| | MO(2)| UNDO | CUT | COPY | PASTE| * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' */ [_NAV] = LAYOUT( _______, KC_BRIU, KC_MNXT, KC_MFFD, KC_MPLY, KC_VOLU, KC_HOME, KC_PGUP, KC_UP, KC_PGDN, _______, KC_DEL, _______, KC_BRID, KC_MPRV, KC_MRWD, KC_MSTP, KC_VOLD, KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_SLCK, KC_BSPC, KC_LSFT, US_ACUT, US_DGRV, US_DCIR, US_DIAE, KC_MUTE, _______, UC_MOD, KC_RSFT, KC_APP, KC_PSCR, XP(CEDIL,CEDIL_MAJ), XP(SECTION,DEGREE), _______, LCTL(KC_S), KC_INS, KC_LCTL, KC_LGUI, KC_LALT, _______, MO(1), MO(2), LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V) ), // /* // * Layer template // * // * ,-------------------------------------------. ,-------------------------------------------. // * | | | | | | | | | | | | | | // * |--------+------+------+------+------+------| |------+------+------+------+------+--------| // * | | | | | | | | | | | | | | // * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| // * | | | | | | | | | | | | | | | | | | // * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' // * | | | | | | | | | | | | // * | | | | | | | | | | | | // * `----------------------------------' `----------------------------------' // */ // [_LAYERINDEX] = LAYOUT( // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ // ), }; /* The default OLED and rotary encoder code can be found at the bottom of qmk_firmware/keyboards/splitkb/kyria/rev1/rev1.c * These default settings can be overriden by your own settings in your keymap.c * For your convenience, here's a copy of those settings so that you can uncomment them if you wish to apply your own modifications. * DO NOT edit the rev1.c file; instead override the weakly defined default functions by your own. */ /* DELETE THIS LINE TO UNCOMMENT (1/2) #ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; } bool oled_task_user(void) { if (is_keyboard_master()) { // QMK Logo and version information // clang-format off static const char PROGMEM qmk_logo[] = { 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0}; // clang-format on oled_write_P(qmk_logo, false); oled_write_P(PSTR("Kyria rev1.0\n\n"), false); // Host Keyboard Layer Status oled_write_P(PSTR("Layer: "), false); switch (get_highest_layer(layer_state|default_layer_state)) { case _QWERTZ: oled_write_P(PSTR("QWERTZ\n"), false); break; case _NAV: oled_write_P(PSTR("Nav\n"), false); break; case _SYM: oled_write_P(PSTR("Sym\n"), false); break; default: oled_write_P(PSTR("Undefined\n"), false); } // Write host Keyboard LED Status to OLEDs led_t led_usb_state = host_keyboard_led_state(); oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false); oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false); oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false); } else { // clang-format off static const char PROGMEM kyria_logo[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; // clang-format on oled_write_raw_P(kyria_logo, sizeof(kyria_logo)); } return false; } #endif #ifdef ENCODER_ENABLE bool encoder_update_user(uint8_t index, bool clockwise) { if (index == 0) { // Volume control if (clockwise) { tap_code(KC_VOLU); } else { tap_code(KC_VOLD); } } else if (index == 1) { // Page up/Page down if (clockwise) { tap_code(KC_PGDN); } else { tap_code(KC_PGUP); } } return false; } #endif // DELETE THIS LINE TO UNCOMMENT (2/2) */
A keyboards/splitkb/kyria/keymaps/lw/readme.md => keyboards/splitkb/kyria/keymaps/lw/readme.md +104 -0
@@ 0,0 1,104 @@ # Kyria's lw Keymap Custom keymap for the [kyria keyboard](https://blog.splitkb.com/blog/introducing-the-kyria). It is intended to be used with an *English (US, intl. with dead keys)* keyboard layout (includes the `keymap_us_international.h` header). This layout is mainly designed for every day writing in either English, French or German and programming. The layout implements all accents and symbols (leveraging dead keys) found on a **swiss** keyboard. It uses Unicode for special characters. It makes use of the [Linux built-in IBus Unicode input](https://docs.qmk.fm/#/feature_unicode?id=input-modes) and relies on [WinCompose](https://github.com/samhocevar/wincompose) for Windows. ## Build this keymap ```bash qmk compile -kb splitkb/kyria/rev1 -km lw ``` ## Flash this keymap > **Note**: this was tested for an Elite-C microcontroller. First, check that the bootloader is visible. For instance: ```bash $ lsusb ... Bus 001 Device 034: ID 03eb:2ff4 Atmel Corp. atmega32u4 DFU bootloader ... ``` If the bootloader is not visible, press the reset button of the microcontroller. The bootloader should become visible when running the `lsusb` command again. The microcontroller can now be flashed: ```bash qmk flash -kb splitkb/kyria/rev1 -km lw ``` > **Note**: if there is any issue, run `qmk doctor` to see whether the qmk configuration is valid. ## Implemented keymaps The default keymap contains 5 layers which allows it to include all keys found on an ANSI layout TKL keyboard plus media keys. Hardware features of the Kyria such as OLEDs, rotary encoders and underglow are also supported. The five different layers are the following: 1. Base layer (QWERTZ) 2. Symbols/Numbers layer 3. Navigation layer ### Base layer This layer is activated by default. ``` /* * 0. Base Layer: QWERTZ * * ,-------------------------------------------. ,-------------------------------------------. * | Esc | Q | W | E | R | T | | Z | U | I | O | P | Del | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | Tab | A | S | D | F | G | | H | J | K | L | ' " | BkSpace| * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| * | LShift | Y | X | C | V | B | \ | | ` ~ | | ( | ) | N | M | , < | . > | ; : | CpLock | * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' * |LCtrl | LGUI | LAlt | Space| MO(1)| | MO(2)| Enter| - _ | ! | / ? | * | | | | | | | |/shift| | | | * `----------------------------------' `----------------------------------' */ ``` Hold down the `Enter` key to make it a shift. This compensates for the poor placement of the dedicated `LShift` key. ### Symbol layer This layer is activated when holding `MO(1)`. ``` /* * 1. Sym Layer: Numbers and symbols * * ,-------------------------------------------. ,-------------------------------------------. * | F1 | F2 | F3 | F4 | LAlt | PASTE| | , | 7 | 8 | 9 | * | / | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | F5 | F6 | F7 | F8 | @ | COPY | | . | 6 | 7 | 8 | = | | * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| * | F9 | F10 | F11 | F12 | & | CUT | UNDO | FIND | | [ | ] | 0 | 1 | 2 | 3 | + | - | * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' * | $ | # | % | | MO(1)| | MO(2)| | \ | | { | } | * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' */ ``` ### Navigation layer This layer is activated when holding `MO(2)`. ``` /* * 2. Nav Layer: Media, navigation, accents * * ,-------------------------------------------. ,-------------------------------------------. * | | Brt+ | Next | Fwd | Play | Vol+ | | Home | PgUp | Up | PgDn | | Del | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | | Brt- | Prev | Bckw | Stop | Vol- | | End | Left | Down | Right|ScrLck| BkSpace| * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| * | LShift | ´ | ` | ^ | ¨ | Mute | |UC_MOD| |RShift| Menu | PrtSc| ç/Ç | § ° | | SAVE | Insert | * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' * |LCtrl | LGUI | LAlt | | MO(1)| | MO(2)| UNDO | CUT | COPY | PASTE| * | | | | | | | | | | | | * `----------------------------------' `----------------------------------' */ ``` The key `UC_MOD` allows to switch between Linux and Windows unicode. Note however that [WinCompose](https://github.com/samhocevar/wincompose) must be installed on Windows (simply download and install the latest release and it will run). \ No newline at end of file
A keyboards/splitkb/kyria/keymaps/lw/rules.mk => keyboards/splitkb/kyria/keymaps/lw/rules.mk +6 -0