qmk-keychron-q3-colemak-dh/keyboards/karlb/kbic65/kbic65.h

193 lines
12 KiB
C
Raw Normal View History

// Copyright 2021 Karl Berggren <@bkarl>
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "quantum.h"
2022-05-12 20:24:40 +02:00
#define ___ KC_NO
/*
*
* 10 00 11 01 12 02 13 03 14 04 15 05 16 06 17 07 06 2u Backspace
*
* 30 20 31 21 32 22 33 23 34 24 35 25 36 26 37
* 2.25u 26 ISO Enter
* LShift 50 40 51 41 52 42 53 43 54 44 55 45 56 47 56
*
* 70 70 60 71 61 72 62 73 63 74 64 75 65 76 57
* 66
* 80 81 82 83 84 85 86
* 87 77 67
*
* K83+K84 can be 6.25u/1u or 6u/1.25u
*
* 80 81 82 83 84 85 65% with Blocker
*
*/
// This a shortcut to help you visually see your layout.
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array
2022-05-12 20:24:40 +02:00
#define LAYOUT_all( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \
K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, K17}, \
2022-05-12 20:24:40 +02:00
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{K60, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, K86, K87} \
}
#define LAYOUT_65_iso( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \
K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, ___}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
2022-05-12 20:24:40 +02:00
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{K60, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, K86, K87} \
}
2022-05-12 20:24:40 +02:00
#define LAYOUT_65_iso_split_bs( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \
K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, K17}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{K60, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, K86, K87} \
}
#define LAYOUT_65_iso_blocker( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \
K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, ___}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{K60, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, ___, K87} \
}
#define LAYOUT_65_iso_blocker_split_bs( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \
K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, K17}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{K60, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, ___, K87} \
}
#define LAYOUT_65_ansi( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \
K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, ___}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{___, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, K86, K87} \
}
#define LAYOUT_65_ansi_split_bs( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \
K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, K17}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{___, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, K86, K87} \
}
#define LAYOUT_65_ansi_blocker( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \
K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, ___}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{___, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, ___, K87} \
}
#define LAYOUT_65_ansi_blocker_split_bs( \
K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \
K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \
K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \
K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \
K80, K81, K82, K83, K84, K85, K87, K77, K67 \
) { \
{K00, K01, K02, K03, K04, K05, K06, K07}, \
{K10, K11, K12, K13, K14, K15, K16, K17}, \
{K20, K21, K22, K23, K24, K25, K26, ___}, \
{K30, K31, K32, K33, K34, K35, K36, K37}, \
{K40, K41, K42, K43, K44, K45, ___, K47}, \
{K50, K51, K52, K53, K54, K55, K56, K57}, \
{___, K61, K62, K63, K64, K65, K66, K67}, \
{K70, K71, K72, K73, K74, K75, K76, K77}, \
{K80, K81, K82, K83, K84, K85, ___, K87} \
}