Whitefox refactor (#10175)

This commit is contained in:
Ryan 2020-10-14 15:06:05 +11:00 committed by GitHub
commit 7437a38899
Failed to generate hash of commit
10 changed files with 876 additions and 478 deletions

View file

@ -14,156 +14,225 @@ 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/>.
*/
#ifndef WHITEFOX_H
#define WHITEFOX_H
#pragma once
#include "quantum.h"
/* WhiteFox
* ,---------------------------------------------------------------.
* |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Ins|
* |---------------------------------------------------------------|
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del|
* |---------------------------------------------------------------|
* |CapsL | A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU|
* |---------------------------------------------------------------|
* |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
* |---------------------------------------------------------------|
* |Ctrl|Gui |Alt | Space |App |Alt |Gui | |Lef|Dow|Rig|
* `---------------------------------------------------------------'
#define XXX KC_NO
/*
*
*                                                 
*
*                                                  
*
*                                                  
*
*                                                  
*
*                                                       
*
*/
#define LAYOUT( \
K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K41, K51, K61, \
K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K23, K33, \
K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K74, K84, K05, \
K15, K25, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \
K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \
#define LAYOUT_all( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k14, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k32, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k47, k48, k50, \
k51, k52, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k74, k75, k76, k77 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, K23, K24, K25, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, K41, K42, K43, K44, K45, K46, 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, KC_NO } \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48 }, \
{ k50, k51, k52, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, k74, k75, k76, k77, XXX } \
}
/* Keymap for truefox layout */
#define LAYOUT_truefox( \
K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K41, K51, K61, \
K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K23, K33, \
K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K84, K05, \
K15, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \
K76, K86, K07, K17, K27, K37, K57, K67, K77 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, K23, K24, KC_NO, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, K41, K42, K43, K44, K45, K46, KC_NO }, \
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
{ K70, K71, K72, K73, KC_NO, K75, K76, K77 }, \
{ K80, K81, K82, K83, K84, K85, K86, KC_NO } \
}
/* ISO WhiteFox
* ,---------------------------------------------------------------.
* |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|Ins|
* |---------------------------------------------------------------|
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter|Del|
* |------------------------------------------------------` |---|
* |CapsLo| A| S| D| F| G| H| J| K| L| ;| '| \| |PgU|
* |---------------------------------------------------------------|
* |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
* |---------------------------------------------------------------|
* |Ctrl|Gui |Alt | Space |Fn0 |Alt |Gui | |Lef|Dow|Rig|
* `---------------------------------------------------------------'
/*
*
*                                                  
*
*                                                  
*
*                                                   
*
*                                                   
*
*                                                       
*
*/
#define LAYOUT_iso( \
K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K51, K61, \
K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K33, \
K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K74, K84, K05, \
K15, K25, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \
K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \
#define LAYOUT_65_ansi( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k32, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k48, k50, \
k51, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k74, k75, k76, k77 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, KC_NO, K24, K25, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, KC_NO, K42, K43, K44, K45, K46, 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, KC_NO } \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, XXX, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, XXX, k48 }, \
{ k50, k51, XXX, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, k74, k75, k76, k77, XXX } \
}
/* ARIA WhiteFox
* ,---------------------------------------------------------------.
* |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|Ins|
* |---------------------------------------------------------------|
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \|Del|
* |---------------------------------------------------------------|
* |CapsL | A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU|
* |---------------------------------------------------------------|
* |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
* |---------------------------------------------------------------|
* |Ctrl|GUI |Alt | Space |Alt |Ctrl| |Lef|Dow|Rig|
* `---------------------------------------------------------------'
/*
*
*                                                  
*
*                                                  
*
*                                                   
*
*                                                   
*
*                                                       
*  
*/
#define LAYOUT_aria( \
K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K51, K61, \
K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K23, K33, \
K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K84, K05, \
K15, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \
K76, K86, K07, K17, K27, K37, K57, K67, K77 \
#define LAYOUT_65_ansi_blocker( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k32, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k48, k50, \
k51, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k75, k76, k77 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, K23, K24, KC_NO, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, KC_NO, K42, K43, K44, K45, K46, KC_NO }, \
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
{ K70, K71, K72, K73, KC_NO, K75, K76, K77 }, \
{ K80, K81, K82, K83, K84, K85, K86, KC_NO } \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, XXX, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, XXX, k48 }, \
{ k50, k51, XXX, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, XXX, k75, k76, k77, XXX } \
}
/* Vanilla WhiteFox
* ,---------------------------------------------------------------.
* |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp| `|
* |---------------------------------------------------------------|
* |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \|Del|
* |---------------------------------------------------------------|
* |CapsL | A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU|
* |---------------------------------------------------------------|
* |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
* |---------------------------------------------------------------|
* |Ctrl|GUI |Alt | Space |Alt|GUI|Ctl|Lef|Dow|Rig|
* `---------------------------------------------------------------'
/*
*
*                                                 
*
*                                                  
*
*                                                   
*
*                                                   
*
*                                                       
*  
*/
#define LAYOUT_vanilla( \
K00, K10, K20, K30, K40, K50, K60, K70, K80, K01, K11, K21, K31, K51, K61, \
K71, K81, K02, K12, K22, K32, K42, K52, K62, K72, K82, K03, K13, K23, K33, \
K43, K53, K63, K73, K83, K04, K14, K24, K34, K44, K54, K64, K84, K05, \
K15, K35, K45, K55, K65, K75, K85, K06, K16, K26, K36, K46, K56, K66, \
K76, K86, K07, K17, K27, K37, K47, K57, K67, K77 \
#define LAYOUT_65_ansi_blocker_split_bs( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k14, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k32, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k48, k50, \
k51, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k75, k76, k77 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07 }, \
{ K10, K11, K12, K13, K14, K15, K16, K17 }, \
{ K20, K21, K22, K23, K24, KC_NO, K26, K27 }, \
{ K30, K31, K32, K33, K34, K35, K36, K37 }, \
{ K40, KC_NO, K42, K43, K44, K45, K46, K47 }, \
{ K50, K51, K52, K53, K54, K55, K56, K57 }, \
{ K60, K61, K62, K63, K64, K65, K66, K67 }, \
{ K70, K71, K72, K73, KC_NO, K75, K76, K77 }, \
{ K80, K81, K82, K83, K84, K85, K86, KC_NO } \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, XXX, k48 }, \
{ k50, k51, XXX, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, XXX, k75, k76, k77, XXX } \
}
#endif
/*
*
*                                                  
*
*                                                  
*     
*                                                  
*
*                                                  
*
*                                                       
*
*/
#define LAYOUT_65_iso( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k47, k48, k50, \
k51, k52, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k74, k75, k76, k77 \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, XXX, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, XXX, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48 }, \
{ k50, k51, k52, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, k74, k75, k76, k77, XXX } \
}
/*
*
*                                                  
*
*                                                  
*     
*                                                  
*
*                                                  
*
*                                                       
*  
*/
#define LAYOUT_65_iso_blocker( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k47, k48, k50, \
k51, k52, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k75, k76, k77 \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, XXX, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, XXX, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48 }, \
{ k50, k51, k52, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, XXX, k75, k76, k77, XXX } \
}
/*
*
*                                                 
*
*                                                  
*     
*                                                  
*
*                                                  
*
*                                                       
*  
*/
#define LAYOUT_65_iso_blocker_split_bs( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k10, k11, k12, k13, k14, k15, k16, \
k17, k18, k20, k21, k22, k23, k24, k25, k26, k27, k28, k30, k31, k33, \
k34, k35, k36, k37, k38, k40, k41, k42, k43, k44, k45, k46, k47, k48, k50, \
k51, k52, k53, k54, k55, k56, k57, k58, k60, k61, k62, k63, k64, k65, k66, \
k67, k68, k70, k71, k72, k73, k75, k76, k77 \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08 }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28 }, \
{ k30, k31, XXX, k33, k34, k35, k36, k37, k38 }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48 }, \
{ k50, k51, k52, k53, k54, k55, k56, k57, k58 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68 }, \
{ k70, k71, k72, k73, XXX, k75, k76, k77, XXX } \
}
#define LAYOUT LAYOUT_all
#define LAYOUT_aria LAYOUT_65_ansi_blocker
#define LAYOUT_iso LAYOUT_65_iso
#define LAYOUT_truefox LAYOUT_65_ansi_blocker_split_bs
#define LAYOUT_vanilla LAYOUT_65_ansi