Browse Source

Easier Macro for extra keys.

pull/11366/head
jackokring 2 years ago
parent
commit
a4a1beb0ae
2 changed files with 23 additions and 19 deletions
  1. +22
    -18
      keyboards/dz60/keymaps/jacko_keys/keymap.c
  2. +1
    -1
      keyboards/dz60/keymaps/jacko_keys/readme.md

+ 22
- 18
keyboards/dz60/keymaps/jacko_keys/keymap.c View File

@ -155,7 +155,7 @@ const uint32_t PROGMEM unicode_map[] = {
[AX] = U'', [AY] = U'˙', [AZ] = U'·',
[ABSL] = U'\\'
//1744 bytes free - as space is allocated "quite literally" as ASCII 32 in a 32-bit field.
//2021-12-09
//2021-12-10
//Mode 10 Notes
//all single byte codes for example but 52*3=156 bytes for all in
@ -687,19 +687,23 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
//cur5 is swap extra centre key to outer for cursor together
//x4 and x5 are left and right of the right shift key
//x6 and x7 are left and right split off of the space bar
#define NO_XTRA KC_NO
#define LAYOUT_60_ansi_p( x1, iso, x2, cur5, x3, x4, x5, x6, x7, \
#define NO_XTRA KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
#define IS_ISO false
#define SWP_CUR5 false
#define LAYOUT_60_ansi_p( sbs, zhash, fnR2, shRL, shRR, spcL, spcR, \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
k10, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, \
k20, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, \
k40, k41, k43, k46, k4a, k4b, k4d, k4e \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, x1, k0e }, \
{ k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, (k1e & ~iso)|(x2 & iso) }, \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, sbs, k0e }, \
{ k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, (k1e & ~IS_ISO)|(zhash & IS_ISO) }, \
{ k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, KC_NO }, \
{ k30, k1e, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, x4, k3d, x5 }, \
{ k40, k41, KC_NO, k43, x6, KC_NO, k46, KC_NO, x7, KC_NO, k4a, k4b, (x3 & ~cur5)|(k4d & cur5), (x3 & cur5)|(k4d & ~cur5), k4e } \
{ k30, (k1e & IS_ISO)|(zhash & ~IS_ISO), k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, shRL, k3d, shRR }, \
{ k40, k41, KC_NO, k43, spcL, KC_NO, k46, KC_NO, spcR, KC_NO, k4a, k4b, (fnR2 & ~SWP_CUR5)|(k4d & SWP_CUR5), (fnR2 & SWP_CUR5)|(k4d & ~SWP_CUR5), k4e } \
}
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@ -711,7 +715,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Standard ANSI 60 layout for worldwide ASCII compatibility,
// This is the standard conformance layer and as such remain static.
// MO(4) enters the function shift state.
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, 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_LBRC, KC_RBRC, KC_BSLS,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
@ -723,7 +727,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Backslash enters BQN entry mode
// VirtualBox host key needs an Fn.
// A basic easy cursor mode with easier BQN entry via \.
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, 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_LBRC, KC_RBRC, OSL(3),//BQN shift
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
@ -733,7 +737,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//Macro lock mode 3 ================================================================================== Macro lock mode 2
// A single finger macro launching board producing many modifier and function keys.
// Lots of macros and shifts with an Fn
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
OSM(MOD_LCTL|MOD_LSFT), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,OSM(MOD_LSFT|MOD_LCTL|MOD_LALT),
OSM(MOD_LSFT|MOD_LALT), KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, ALG(KC_F24),
OSM(MOD_LCTL|MOD_LALT), ALG(KC_F1),ALG(KC_F2),ALG(KC_F3),ALG(KC_F4),ALG(KC_F5),ALG(KC_F6),ALG(KC_F7),ALG(KC_F8),ALG(KC_F9),ALG(KC_F10),ALG(KC_F11),ALG(KC_F12),
@ -742,7 +746,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//BQN lock mode 4 ====================================================================================== BQN lock mode 3
// BQN Unicode
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
Z(GR), Z(N1), Z(N2), Z(N3), Z(N4), Z(N5), Z(N6), Z(N7), Z(N8), Z(N9), Z(N0), Z(MIN), Z(EQ), TO(1),//escape
KC_TAB, Z(Q), Z(W), Z(E), Z(R), Z(T), Z(Y), Z(U), Z(I), Z(O), Z(P), Z(LBR), Z(RBR), KC_BSLS,
F_BOOM, Z(A), Z(S), Z(D), Z(F), Z(G), Z(H), Z(J), Z(K), Z(L), Z(SEMI), Z(QUOT), KC_ENT,
@ -757,7 +761,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// ISO characters such as £ and control of RGB/backlight and cursor.
// Fn + P is power switch for shutdown.
// This shift layer is standard for the kind of keyboard plus a few extensions.
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_ESC, 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_DEL,
LCA(KC_DEL), RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_WHOM, KC_PWR, KC_HOME, KC_END, KC_INS,
KC_SLCK, KC_WSCH, Z(INT), Z(DIF), KC_WFAV, Z(ROOT), KC_VOLD, KC_VOLU, Z(DEG), Z(PND), KC_PAUS, KC_PSCR, KC_APP,
@ -768,7 +772,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// All function keys, so Home and End were sacrificed.
// Also media player launch and control.
// No APP menu as / is on the key, as / is ? key.
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_ESC, 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_DEL,
LCA(KC_DEL), KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, KC_INS,
KC_SLCK, KC_WSCH, Z(INT), Z(DIF), KC_WFAV, Z(ROOT), KC_VOLD, KC_VOLU, Z(DEG), Z(PND), KC_PAUS, KC_PSCR, KC_APP,
@ -777,7 +781,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//Macro shift mode 6 ================================================================================ Macro shift mode 6
// Same macro layer but different modifier grouping for more hot key combinations.
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_ESC, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_HAEN, KC_HANJ, KC_DEL,
KC_TAB, KC_RO, KC_KANA, KC_JYEN, KC_HENK, KC_MHEN, KC_INT6, KC_INT7, KC_INT8, KC_INT9, KC_PWR, KC_HOME, KC_END, KC_INS,
KC_NLCK, KC_WSCH, Z(INT), Z(DIF), KC_WFAV, Z(ROOT), KC_VOLD, KC_VOLU, Z(DEG), Z(PND), KC_PAUS, KC_PSCR, KC_ENT,
@ -785,7 +789,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
DF(0),OSM(MOD_LSFT|MOD_LGUI),DF(1), ALGR(KC_SPC), KC_TRNS, OSM(MOD_LSFT|MOD_RGUI),KC_TRNS, TO(10)),
//BQN shift mode 7 ==================================================================================== BQN shift mode 7
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_ESC, X(A1), X(A2), X(A3), X(A4), X(A5), X(A6), X(A7), X(A8), X(A9), X(A0), X(AMIN), X(AEQ), KC_BSPC,//allow backspace
KC_TAB, X(AQ), X(AW), X(AE), X(AR), X(AT), X(AY), X(AU), X(AI), X(AO), X(AP), X(ALBR), X(ARBR), X(ABSL),
KC_SLCK, X(AA), X(AS), X(AD), X(AF), X(AG), X(AH), X(AJ), X(AK), X(AL), X(ASEM), X(AAPO), KC_ENT,
@ -797,7 +801,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//=========================================================
//Control shift mode 8 ============================================================================ Control shift mode 8
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
Z(CES), Z(C1), X(IAT), Z(C3), Z(C4), Z(C5), X(ICAR), Z(C7), Z(C8), Z(C9), Z(C0), X(IUND), Z(CEQ), X(LBS),
X(TAB), X(IQ), X(IW), X(IE), X(IR), X(IT), X(IY), X(IU), X(II), X(IO), X(IP), X(ILBR), X(IRBR), X(IBSL),
KC_TRNS, X(IA), X(IS), X(ID), X(IF), X(IG), X(IH), X(IJ), X(IK), X(IL), LCTL(KC_PAUS),LCTL(KC_PSCR),X(CR),
@ -806,7 +810,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//Mouse shift mode 9 ================================================================================ Mouse shift mode 9
// A utility layer for things like the mouse.
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
RESET, KM_1, KM_2, KM_3, KM_4, KM_5, KM_6, KM_7, KM_8, KM_9, KM_0, KC_BTN4, KC_BTN5, KC_DEL,
KC_TAB, KM_Q, KM_W, KM_E, KM_R, KM_T, KM_Y, KM_U, KM_I, KM_O, KM_P, KC_HOME, KC_END, KC_SYSREQ,
UC_MOD, KM_A, KM_S, KM_D, KM_F, KM_G, KM_H, KM_J, KM_K, KM_L, KC_BTN3, KC_BTN2, KC_ENT,
@ -814,7 +818,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, RCS(KC_LALT), KC_TRNS, KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS),
//Extra shift mode 10 ============================================================================== Extra shift mode 10
LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA,
LAYOUT_60_ansi_p(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
PK_GRV, PK_1, PK_2, PK_3, PK_4, PK_5, PK_6, PK_7, PK_8, PK_9, PK_0, PK_MINS, PK_EQL, PK_BSPC,
PK_TAB, PK_Q, PK_W, PK_E, PK_R, PK_T, PK_Y, PK_U, PK_I, PK_O, PK_P, PK_LBRC, PK_RBRC, PK_BSLS,
PK_CAPS, PK_A, PK_S, PK_D, PK_F, PK_G, PK_H, PK_J, PK_K, PK_L, PK_SCLN, PK_QUOT, PK_ENT,


+ 1
- 1
keyboards/dz60/keymaps/jacko_keys/readme.md View File

@ -16,7 +16,7 @@ It is possible to do a `Ctrl`+`Alt`+`Del`, by `Fn`+`Tab` in most modes but not Y
* `#define LRALT` can be changed in `keymap.c` to not conflict with the default compose key.
### Extra Keys
* `LAYOUT_60_ansi_p(NO_XTRA, false, NO_XTRA, false, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, NO_XTRA, ...)` in `keymap.c` allows adding in keycodes for the extra keys that can be instanced on the PCB.
* `LAYOUT_60_ansi_p(sbs, zhash, fnR2, shRL, shRR, spcL, spcR,, ...)` in `keymap.c` allows adding in keycodes for the extra keys that can be instanced on the PCB.
### Common to All MAGENTA Shift `Fn` Layers (Exceptions Noted Below, Mainly in YELLOW Mode)
* Left `Ctrl` is ANSI layer select. Basic conformist ANSI.


Loading…
Cancel
Save