Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "lets_split.h"
- #include "action_layer.h"
- #include "eeconfig.h"
- extern keymap_config_t keymap_config;
- #define _COLEMAK 0
- #define _KAMELOC 1
- #define _IKAPILA 2
- #define _IKASHFT 3
- #define _ARROWKY 4
- #define _FNCTION 5
- #define _NINEKEY 6
- #define _NAVIGAT 7
- #define _QWERTY 8
- #define _GRVTABL 15
- enum custom_keycodes {
- COLEMAK = SAFE_RANGE,
- KAMELOC,
- IKAPILA,
- IKASHFT,
- ARROWKY,
- FNCTION,
- NINEKEY,
- NAVIGAT,
- QWERTY,
- GRVTABL,
- };
- //TD Declarations
- enum {
- VOM = 0,
- PRN,
- EGT,
- HRD,
- DSH,
- QUT,
- ESC,
- EQE,
- PGN,
- UND,
- };
- enum macro_keycodes {
- KC_ALT_TAB,
- KC_GUI_TAB,
- KC_CTL_TAB,
- };
- #define ALT_TAB M(KC_ALT_TAB) // Macro for Alt-Tab
- #define GUI_TAB M(KC_GUI_TAB) // Macro for Cmd-Tab
- #define CTL_TAB M(KC_CTL_TAB) // Macro for Ctl-Tab
- #define _______ KC_TRNS
- #define XXXXXXX KC_NO
- // action-TAP for key/mod behavior LT(layer, kc)
- #define XK_TAB LT(_FNCTION, KC_TAB)
- #define XK_BSP LT(_KAMELOC, M_BSDEL)
- #define XK_HARD LT(_FNCTION, M(B2))
- #define XK_SPC LT(_IKAPILA, KC_SPC)
- #define XK_ENT LT(_IKAPILA, KC_ENT)
- #define XK_PGDN LT(_NAVIGAT, TD(PGN))
- #define XK_PREN LT(_IKASHFT, M(B1))
- #define PIPBOY LT(_FNCTION, KC_BSLS)
- #define XK_DEL LT(_KAMELOC, KC_DEL)
- #define XK_GRV LT(_GRVTABL, KC_GRV)
- // mod-TAP for mod/key behavior MT(modkey, kc)
- #define ESC_IT MT(MOD_MEH, TD(ESC))
- #define ALT_IT MT(MOD_LALT, KC_SCLN)
- #define CTL_IT MT(MOD_LCTL, KC_SLSH)
- #define XK_EGPT MT((MOD_LCTL | MOD_LALT | MOD_LGUI), M(B3))
- #define SFT_IT MT(MOD_RSFT, TG(_NAVIGAT))
- //sticky modifiers
- #define KYCTL OSM(MOD_LCTL)
- #define KYGUI OSM(MOD_LGUI)
- #define KYSFT OSM(MOD_LSFT)
- #define KYALT OSM(MOD_LALT)
- #define CAKY OSM(MOD_LCA)
- //shortcuts
- #define CADEL LALT(LCTL(KC_DEL))
- #define CAINS LALT(LCTL(KC_INS))
- #define TGNKRO MAGIC_TOGGLE_NKRO
- #define NAVCH KC_CTRL(KC_HOME)
- #define NAVCPD KC_CTRL(KC_PGDN)
- #define NAVCPU KC_CTRL(KC_PGUP)
- #define NAVCE KC_CTRL(KC_END)
- #define NAVCU KC_CTRL(KC_UP)
- #define NAVCD KC_CTRL(KC_DOWN)
- #define NAVCL KC_CTRL(KC_LEFT)
- #define NAVCR KC_CTRL(KC_RGHT)
- #define NAVGU LGUI(KC_UP)
- #define NAVGD LGUI(KC_DOWN)
- #define NAVGL LGUI(KC_LEFT)
- #define NAVGR LGUI(KC_RGHT)
- //!not sure if this old TMK code will work
- #define BOOTME ACTION_FUNCTION(BOOTLOADER)
- #define LCLEAR ACTION_LAYER_SET_CLEAR(0)
- const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- TAP
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │TAB │ Q │ W │ F │ P │ B │ │ J │ L │ U │ Y │ ; │DEL │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │BKSP│ A │ R │ S │ T │ G │ │ M │ N │ E │ I │ O │ ' │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │OSFT│ X │ C │ D │ V │ Z │ │ K │ H │ , │ . │ / │LNAV│
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │OCTL│OALT│L9KY│ [] │OGUI│SPC │ │ENT │PGDN│ () │ {} │ \ │ ` │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- HOLD
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │L FN│ │ │ │ │ │ │ │ │ │ │ALT │L!@#│
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │L OH│ │ │ │ │ │ │ │ │ │ │ │L OH│
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │SFT │ │ │ │ │ │ │ │ │ │ │CTL │SFT │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │CTL │ALT │L9KY│L!@#│GUI │L123│ │L123│LNAV│L!@#│MEH │L FN│LGRV│
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- DOUBLETAP
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ │!F4 │ │ │ │ │ │ │ │ │ │ │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │OSML│ │ │ │ │UNDO│ │ │ │ │ │ │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │OSML│OSML│ESC │ │OSML│ │ │ │PGUP│ │ │ │ │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- Switch type
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │Br │Z │Z │Z │Z │Z │ │Z │Z │Z │Z │Br │G │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │G │Z │Z │Z │Z │Z │ │Z │Z │Z │Z │Z │Z │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │Y │Z │Z │Z │Z │Z │ │Z │Z │Z │Z │B │Y │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │Y │Y │C │Z │BLK │BLK │ │BLK │BLK │Z │Z │B │G │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- */
- // Colemak PB&J (Mod-DH)
- [_COLEMAK] = KEYMAP( \
- XK_TAB, TD(QUT), KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, ALT_IT, XK_GRV, \
- XK_BSP, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, XK_DEL, \
- KYSFT, KC_X, KC_C, KC_D, KC_V, TD(UND), KC_K, KC_H, KC_COMM, KC_DOT, CTL_IT, SFT_IT, \
- KYCTL, KYALT, ESC_IT, XK_HARD, KYGUI, XK_SPC, XK_ENT, XK_PGDN, XK_PREN, XK_EGPT, PIPBOY, XK_GRV \
- ),
- // useful for one-handed typing
- [_KAMELOC] = KEYMAP( \
- _______, KC_SCLN, KC_Y, KC_U, KC_L, KC_J, KC_B, KC_P, KC_F, KC_W, TD(QUT), _______, \
- _______, KC_O, KC_I, KC_E, KC_N, KC_M, KC_G, KC_T, KC_S, KC_R, KC_A, _______, \
- _______, KC_SLSH, KC_DOT, KC_COMM, KC_H, KC_K, TD(UND), KC_V, KC_D, KC_C, KC_X, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- ),
- /*
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ ~ │ 1 │ 2 │ 3 │ 4 │ 5 │ │ 6 │ 7 │ 8 │ 9 │ 0 │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │DASH│MV- │ V+ │NEXT│PLAY│ │ ← │ ↓ │ ↑ │ → │INS │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ - │ = │ [ │ ] │ \ │ │HOME│PGDN│PGUP│END │ \ │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- */
- [_IKAPILA] = KEYMAP( \
- KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \
- _______, TD(DSH), TD(VOM), KC_VOLU, KC_MNXT, KC_MPLY, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_INS, _______, \
- _______, KC_MINS, KC_EQL, TD(HRD), KC_RBRC, KC_BSLS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_BSLS, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- ),
- /*
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ │ ! │ @ │ # │ $ │ % │ │ ^ │ & │ * │ ( │ ) │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │DASH│MV- │ V+ │NEXT│PLAY│ │HOME│PGDN│PGUP│END │PSCR│ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ _ │ + │ { │ } │ | │ │ ← │ ↓ │ ↑ │ → │ │ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- */
- [_IKASHFT] = KEYMAP( \
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, \
- KC_DEL, TD(DSH), TD(VOM), KC_VOLU, KC_MNXT, KC_MPLY, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_PSCR, _______, \
- _______, KC_UNDS, KC_PLUS, TD(EGT), KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_PAUS, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- ),
- /*
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ │ → │ ↑ │ ← │ ↓ │ → │ │ → │ ↓ │ ← │ ↑ │ ↑ │ │ just in case someone hacks my IP with a 10MeG pipe, you know?
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ ← │ ↓ │ → │ ↑ │ ← │ │ ↑ │ ← │ ↓ │ → │ ← │ │ hacker_evasion layer
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ >>init network SEQUENCE
- │ │ ↑ │ ← │ ↓ │ → │ ↑ │ │ ↓ │ ← │ ↑ │ → │ ← │ │ sleep 11; echo "DONE\n"
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤ throttle INPUT 11001001 OUTPUT 010011001 ? FULL )); \
- │ │ │ │ → │ ← │ ↓ │ │ → │ ↑ │ ← │ ↓ │ ↑ │ │ <<chkconfig cargoCode ==== "'1'"
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘ up down left right kc_b kc_a GUI
- */
- [_ARROWKY] = KEYMAP( \
- _______, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, _______, \
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, _______, \
- _______, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, _______, \
- _______, _______, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, _______ \
- ),
- /*
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ │ F1 │ F2 │ F3 │ F4 │ F5 │ │ F6 │ F7 │ F8 │ F9 │ F10│ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ F11│ F12│ F13│ F14│ F15│ │ F16│ F17│ F18│ F19│ F20│ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ F21│ F22│ F23│ F24│PAUS│ │ │ │BOOT│RSET│NKRO│CAPS│
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- */
- [_FNCTION] = KEYMAP( \
- _______, 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_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, \
- _______, KC_F21, KC_F22, KC_F23, KC_F24, _______, _______, _______, BOOTME, RESET, TGNKRO, KC_CAPS, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- ),
- /*
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ │ → │ F7 │ F8 │ F9 │ ↑ │ │NLCK│ P7 │ P8 │ P9 │ P- │BDEL│
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ ← │ F4 │ F5 │ F6 │ ↓ │ │^INS│ P4 │ P5 │ P6 │ P+ │ () │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │CALT│ F1 │ F2 │ F3 │ │ │CALT│ P1 │ P2 │ P3 │ P* │ = │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ │ F0?│ │ │ │ │TGL │ P0 │ 0 │ P. │ P/ │ │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- */
- [_NINEKEY] = KEYMAP( \
- _______, KC_RGHT, KC_F7, KC_F8, KC_F9, KC_UP, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_PMNS, M_BSDEL, \
- _______, KC_LEFT, KC_F4, KC_F5, KC_F6, KC_DOWN, CAINS, KC_P4, KC_P5, KC_P6, KC_PPLS, XK_PREN, \
- _______, CAKY, KC_F1, KC_F2, KC_F3, _______, CAKY, KC_P1, KC_P2, KC_P3, KC_PAST, TD(EQE), \
- _______, _______, _______, KC_F11, _______, _______, TG(_NINEKEY), KC_P0, KC_0, KC_PDOT, KC_PSLS, _______ \
- ),
- /*
- ┌────┬────┬────┬────┬────┬────┐ ┌────┬────┬────┬────┬────┬────┐
- │ESC │^PGD│^UP │^PGU│^PGU│^HOM│ │ │MW_L│ MU │MW_R│ AC2│ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │^LFT│^DWN│^RGT│^PGD│^END│ │ │ ML │ MD │ MR │ AC1│ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ M2 │ M4 │ M3 │ M1 │ M5 │ │ │MW_D│MW_U│SLCK│ AC0│ │
- ├────┼────┼────┼────┼────┼────┤ ├────┼────┼────┼────┼────┼────┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │
- └────┴────┴────┴────┴────┴────┘ └────┴────┴────┴────┴────┴────┘
- */
- [_NAVIGAT] = KEYMAP( \
- KC_ESC, NAVCPD, NAVCU, NAVCPU, NAVCPU, NAVCH, XXXXXXX, KC_WH_L, KC_MS_U, KC_WH_R, KC_ACL2, _______, \
- _______, NAVCL, NAVCD, NAVCR, NAVCPD, NAVCE, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_R, KC_ACL1, _______, \
- _______, KC_BTN2, KC_BTN4, KC_BTN3, KC_BTN1, KC_BTN5, XXXXXXX, KC_WH_D, KC_WH_U, KC_SLCK, KC_ACL0, _______, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- ),
- //ew. jk
- [_QWERTY] = KEYMAP( \
- _______, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, \
- _______, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
- _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_ENT, \
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- )
- //add greek symbols
- //set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
- //UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502)
- //UC(0x251C),UC(0x253C),UC(0x2524),
- //UC(0x2514),UC(0x2534),UC(0x2518),
- [_GRVTABL] = KEYMAP( \
- TG(5), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(3), \
- TG(1), XXXXXXX, TD(VOM), KC_VOLU, KC_MNXT, KC_MPLY, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(1), \
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(0), XXXXXXX, TG(4), XXXXXXX, TG(8), LCLEAR, \
- XXXXXXX, XXXXXXX, TG(6), TG(3), XXXXXXX, TG(2), TG(2), TG(7), TG(3), OSM(MOD_MEH), TG(5), _______ \
- );
- qk_tap_dance_action_t tap_dance_actions[] = {
- [VOM] = ACTION_TAP_DANCE_DOUBLE(KC_VOLD, KC_MUTE),
- [PRN] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, KC_RPRN),
- [EGT] = ACTION_TAP_DANCE_DOUBLE(KC_LCBR, KC_RCBR),
- [HRD] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC),
- [DSH] = ACTION_TAP_DANCE_DOUBLE(KC_NDSH, KC_MDSH),
- [QUT] = ACTION_TAP_DANCE_DOUBLE(KC_Q, KC_LALT(KC_F4)),
- [ESC] = ACTION_TAP_DANCE_DOUBLE(TT(_NINEKEY), KC_ESC),
- [EQE] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_ENT),
- [PGN] = ACTION_TAP_DANCE_DOUBLE(KC_PGDN, KC_PGUP),
- [UND] = ACTION_TAP_DANCE_DOUBLE(KC_Z, LCTL(KC_Z)),
- };
- const uint16_t PROGMEM fn_actions[] = {
- [B1] = ACTION_MACRO(B1),
- [B2] = ACTION_MACRO(B2),
- [B3] = ACTION_MACRO(B3),
- };
- const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
- {
- switch(id) {
- case B1:
- if (!record->event.pressed) {
- return MACRO(T(LPRN), T(RPRN), T(LEFT) END);
- }
- break;
- case B2:
- if (!record->event.pressed) {
- return MACRO(T(LBRC), T(RBRC), T(LEFT) END);
- }
- break;
- case B3:
- if (!record->event.pressed) {
- return MACRO(T(LCBR), T(ENT), T(RCBR), T(UP) END);
- }
- break;
- }
- return MACRO_NONE;
- }
- void matrix_init_user(void) {
- set_unicode_input_mode(UC_LNX);
- };
- void action_function(keyrecord_t *record, uint8_t id, uint8_t opt)
- {
- if (id == BOOTLOADER) {
- bootloader();
- }
- }
- static bool bsdel_mods = false;
- case M_BSDEL: {
- uint8_t kc = KC_BSPC;
- if (record->event.pressed) {
- if (keyboard_report->mods) {
- kc = KC_DEL;
- }
- register_code (kc);
- bsdel_mods = keyboard_report->mods;
- }
- else {
- if (bsdel_mods) {
- kc = KC_DEL;
- }
- unregister_code (kc);
- }
- }
- const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
- {
- bool use_cmd = true;
- // Compare to MAGIC_SWAP_ALT_GUI and MAGIC_UNSWAP_ALT_GUI configs, set in quantum/quantum.c
- if(keymap_config.swap_lalt_lgui == 1 && keymap_config.swap_ralt_rgui == 1) {
- use_cmd = false;
- }
- switch (id) {
- case KC_ALT_TAB:
- if(use_cmd) { return (record->event.pressed ? MACRO( D(LALT), D(TAB), END ) : MACRO( U(TAB), END )); }
- else { return (record->event.pressed ? MACRO( D(LGUI), D(TAB), END ) : MACRO( U(TAB), END )); }
- case KC_GUI_TAB:
- if(use_cmd) { return (record->event.pressed ? MACRO( D(LGUI), D(TAB), END ) : MACRO( U(TAB), END )); }
- else { return (record->event.pressed ? MACRO( D(LALT), D(TAB), END ) : MACRO( U(TAB), END )); }
- case KC_CTL_TAB:
- return (record->event.pressed ? MACRO( D(LCTRL), D(TAB), END ) : MACRO( U(TAB), END ));
- }
- return MACRO_NONE;
- }
- /* void persistent_default_layer_set(uint16_t default_layer) {
- * eeconfig_update_default_layer(default_layer);
- * default_layer_set(default_layer);
- * }
- */
- /*
- enum {
- TTP,
- };
- //Triple TAP
- void tap_count (qk_tap_dance_state_t *state, void *user_data) {
- if (state->count == 2) {
- uint8_t kc = KC_LPRN; //define double tap here
- register_code (kc);
- }
- else {
- uint8_t kc = ALT_TAB; //define single tap or hold here
- register_code (kc);
- }
- if (state->count == 3) {
- uint8_t kc = KC_RPRN; //define triple tap here
- register_code (kc);
- }
- else {
- reset_tap_dance (state);
- }
- }
- qk_tap_dance_action_t tap_dance_actions[] = {
- // tap for Layer 0, tap twice to switch to symbol layer, and tap three times to switch to rimworld layer.
- [TTP] = ACTION_TAP_DANCE_FN(tap_count)
- };
- TD(TTP)
- */
- //
- // [_] = KEYMAP( \
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
- // ),
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement