qmk-keychron-q3-colemak-dh/keyboards/projectkb/alice/alice.h
James Young 138c3e7042
Rework LAYOUT_alice support; add LAYOUT_alice_split_bs (#11106)
* Add LAYOUT_alice support: fallacy

* Add LAYOUT_alice support: kb_elmo/sesame

* Add LAYOUT_alice support: cheshire/curiosity

* Add LAYOUT_alice support: evyd13/wonderland

* Add LAYOUT_alice support: mechlovin/adelais

* Update LAYOUT_alice support: projectkb/alice

The PR that added Alice community layout support for the projectkb/alice/rev2 simultaneously broke support for every other keyboard that supported LAYOUT_alice.

This commit partially reverts the offending PR. `LAYOUT_alice` for the projectkb/alice has been renamed to `LAYOUT_alice_split_bs`, and a correct 65-key `LAYOUT_alice` has been added.

Additionally, the `LAYOUTS` rule has been moved to keyboard level as the layout macros are shared between rev1 and rev2 boards, which means the layout options are the same for both revisions.

* Update ramonimbao/aelith info.json

Keyboard source was already correct to support LAYOUT_alice, but the layout tree was missing from info.json.

* Fork `alice` Community Layout...

... into Standard and Split Backspace versions

Also updates stanrc85's layout keymap to use 65 keys instead of the Split Backspace 66-key version.

* Update LAYOUT_alice support: sneakbox/aliceclone

Rework the sneakbox/aliceclone to use the Split Backspace Alice layout.

* Update LAYOUT_alice support: zoo/wampus

The layout macro that was `LAYOUT_alice` was 66 keys. This layout macro has been renamed to `LAYOUT_alice_split_bs`, and a 65-key `LAYOUT_alice` has been added.

Additionally, the 66-key macro has been rearranged to accept its keycodes in the intended order for Community Layout support.

* Update keyboards for `LAYOUT_alice_split_bs` support

* LAYOUT_alice_split_bs support: ergosaurus

* LAYOUT_alice_split_bs support: handwired/colorlice

* LAYOUT_alice(_split_bs) support: handwired/owlet60

* LAYOUT_alice_split_bs support: nightly_boards/alter/rev1

* LAYOUT_alice(_split_bs) support: sck/osa

* LAYOUT_alice_split_bs support: tgr/alice

* LAYOUT_alice(_split_bs) support: tkc/osav2

* LAYOUT_alice_split_bs support: xelus/valor/rev1
2020-12-03 14:07:41 -08:00

35 lines
1.9 KiB
C

#pragma once
#include "quantum.h"
#define KNO KC_NO
#define LAYOUT_default LAYOUT_alice_split_bs
#define LAYOUT_alice_split_bs( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
K10, K11, K12, K13, K14, K15, K16, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
K20, K21, K22, K23, K24, K25, K26, K28, K29, K2A, K2B, K2C, K2D, K2F, \
K31, K32, K33, K34, K35, K36, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F, \
K41, K43, K44, K46, K49, K4B, K4F \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \
{ K10, K11, K12, K13, K14, K15, K16, KNO, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
{ K20, K21, K22, K23, K24, K25, K26, KNO, K28, K29, K2A, K2B, K2C, K2D, KNO, K2F }, \
{ KNO, K31, K32, K33, K34, K35, K36, KNO, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F }, \
{ KNO, K41, KNO, K43, K44, KNO, K46, KNO, KNO, K49, KNO, K4B, KNO, KNO, KNO, K4F } \
}
#define LAYOUT_alice( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \
K10, K11, K12, K13, K14, K15, K16, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
K20, K21, K22, K23, K24, K25, K26, K28, K29, K2A, K2B, K2C, K2D, K2F, \
K31, K32, K33, K34, K35, K36, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F, \
K41, K43, K44, K46, K49, K4B, K4F \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, KNO, K0F }, \
{ K10, K11, K12, K13, K14, K15, K16, KNO, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
{ K20, K21, K22, K23, K24, K25, K26, KNO, K28, K29, K2A, K2B, K2C, K2D, KNO, K2F }, \
{ KNO, K31, K32, K33, K34, K35, K36, KNO, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F }, \
{ KNO, K41, KNO, K43, K44, KNO, K46, KNO, KNO, K49, KNO, K4B, KNO, KNO, KNO, K4F } \
}