mirror of
https://github.com/qmk/qmk_firmware
synced 2024-11-16 08:56:11 +00:00
a038b712d0
* Adding support for the 2 x 2u layout. This adds a macro to support the 2 x 2u layout which facilitates a cleaner looking layout configuration for the people using it. * Update keyboards/kyria/kyria.h Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: swampmonster <> Co-authored-by: Drashna Jaelre <drashna@live.com>
82 lines
3.9 KiB
C
82 lines
3.9 KiB
C
/* Copyright 2019 Thomas Baart <thomas@splitkb.com>
|
|
*
|
|
* 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 "quantum.h"
|
|
|
|
/* This a shortcut to help you visually see your layout.
|
|
*
|
|
* The first section contains all of the arguments representing the physical
|
|
* layout of the board and position of the keys.
|
|
*
|
|
* The second converts the arguments into a two-dimensional array which
|
|
* represents the switch matrix.
|
|
*/
|
|
#define LAYOUT( \
|
|
L00, L01, L02, L03, L04, L05, R06, R07, R08, R09, R10, R11, \
|
|
L12, L13, L14, L15, L16, L17, R18, R19, R20, R21, R22, R23, \
|
|
L24, L25, L26, L27, L28, L29, L30, L31, R32, R33, R34, R35, R36, R37, R38, R39, \
|
|
L40, L41, L42, L43, L44, R45, R46, R47, R48, R49 \
|
|
) \
|
|
{ \
|
|
{ KC_NO, KC_NO, L05, L04, L03, L02, L01, L00 }, \
|
|
{ KC_NO, KC_NO, L17, L16, L15, L14, L13, L12 }, \
|
|
{ L31, L30, L29, L28, L27, L26, L25, L24 }, \
|
|
{ L44, L43, L42, L41, L40, KC_NO, KC_NO, KC_NO }, \
|
|
{ KC_NO, KC_NO, R06, R07, R08, R09, R10, R11 }, \
|
|
{ KC_NO, KC_NO, R18, R19, R20, R21, R22, R23 }, \
|
|
{ R32, R33, R34, R35, R36, R37, R38, R39 }, \
|
|
{ R45, R46, R47, R48, R49, KC_NO, KC_NO, KC_NO }, \
|
|
}
|
|
|
|
#define LAYOUT_stack( \
|
|
L00, L01, L02, L03, L04, L05, \
|
|
L12, L13, L14, L15, L16, L17, \
|
|
L24, L25, L26, L27, L28, L29, L30, L31, \
|
|
L40, L41, L42, L43, L44, \
|
|
\
|
|
R06, R07, R08, R09, R10, R11, \
|
|
R18, R19, R20, R21, R22, R23, \
|
|
R32, R33, R34, R35, R36, R37, R38, R39, \
|
|
R45, R46, R47, R48, R49 \
|
|
) \
|
|
{ \
|
|
{ KC_NO, KC_NO, L05, L04, L03, L02, L01, L00 }, \
|
|
{ KC_NO, KC_NO, L17, L16, L15, L14, L13, L12 }, \
|
|
{ L31, L30, L29, L28, L27, L26, L25, L24 }, \
|
|
{ L44, L43, L42, L41, L40, KC_NO, KC_NO, KC_NO }, \
|
|
{ KC_NO, KC_NO, R06, R07, R08, R09, R10, R11 }, \
|
|
{ KC_NO, KC_NO, R18, R19, R20, R21, R22, R23 }, \
|
|
{ R32, R33, R34, R35, R36, R37, R38, R39 }, \
|
|
{ R45, R46, R47, R48, R49, KC_NO, KC_NO, KC_NO }, \
|
|
}
|
|
|
|
#define LAYOUT_split_3x6_5( \
|
|
L00, L01, L02, L03, L04, L05, R06, R07, R08, R09, R10, R11, \
|
|
L12, L13, L14, L15, L16, L17, R18, R19, R20, R21, R22, R23, \
|
|
L24, L25, L26, L27, L28, L29, R34, R35, R36, R37, R38, R39, \
|
|
L40, L41, L42, L43, L44, R45, R46, R47, R48, R49 \
|
|
) \
|
|
{ \
|
|
{ KC_NO, KC_NO, L05, L04, L03, L02, L01, L00 }, \
|
|
{ KC_NO, KC_NO, L17, L16, L15, L14, L13, L12 }, \
|
|
{ KC_NO, KC_NO, L29, L28, L27, L26, L25, L24 }, \
|
|
{ L44, L43, L42, L41, L40, KC_NO, KC_NO, KC_NO }, \
|
|
{ KC_NO, KC_NO, R06, R07, R08, R09, R10, R11 }, \
|
|
{ KC_NO, KC_NO, R18, R19, R20, R21, R22, R23 }, \
|
|
{ KC_NO, KC_NO, R34, R35, R36, R37, R38, R39 }, \
|
|
{ R45, R46, R47, R48, R49, KC_NO, KC_NO, KC_NO }, \
|
|
}
|