Code: Select all
#include "unimap_trans.h"
#include "timer.h"
#include "led.h"
#define IS_LAYER_ON(NumLock)
#define AC_FN1 ACTION_MACRO(1) //Desktop Right
#define AC_FN2 ACTION_MACRO(2) //Desktop Left
#define AC_FN3 ACTION_MACRO(3) //New Explorer On Windows
#define AC_FN4 ACTION_MACRO(4) //Snip Tool Windows
#define AC_FN5 ACTION_MACRO(5) //V-Desktop Up
#define AC_FN6 ACTION_MACRO(6) //Min All
#define AC_FN7 ACTION_MACRO(7) //Paste
#define AC_FN8 ACTION_MACRO(8) //Copy All
#define AC_FN9 ACTION_MACRO(9) //Task Manager
#define AC_FN11 ACTION_MACRO(11) //Double Zero
#define AC_FN0 ACTION_LAYER_TAP_KEY(2, KC_APPLICATION) //Hold Toggle For Layer 1
#define AC_FN10 ACTION_LAYER_TOGGLE(1) //Toggle NumLock
bool my_led_status = 0;
hook_layer_change(uint32_t layer_state)
{
if (layer_state & (1L<<1)) {
// LED is off, so let's turn it on
led_set(host_keyboard_leds() | (1<<USB_LED_NUM_LOCK));
my_led_status = 1;
} else {
// LED is on, so let's turn it off
led_set(host_keyboard_leds() & ~(1<<USB_LED_NUM_LOCK));
my_led_status = 0;
}
}
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
switch (id) {
case 1: //Desktop Right
return (record->event.pressed ?
MACRO( I(0), D(LGUI), D(LCTL), T(RGHT), U(LGUI), U(LCTL), END ) :
MACRO_NONE );
case 2: //Desktop Left
return (record->event.pressed ?
MACRO( I(0), D(LGUI), D(LCTL), T(LEFT), U(LGUI), U(LCTL), END ) :
MACRO_NONE );
case 3: //New Explorer
return (record->event.pressed ?
MACRO( I(0), D(LGUI), D(E), U(LGUI), U(E), END ) :
MACRO_NONE );
case 4: //Snip Tool
return (record->event.pressed ?
MACRO( I(0), D(LGUI), D(LSFT), T(S), U(LGUI), U(LSFT), END ) :
MACRO_NONE );
case 5: //V-Desktop Up
return (record->event.pressed ?
MACRO( I(0), D(LGUI), T(TAB), U(LGUI), END ) :
MACRO_NONE );
case 6: //Min All
return (record->event.pressed ?
MACRO( I(0), D(LGUI), T(D), U(LGUI), END ) :
MACRO_NONE );
case 7: // Paste
return (record->event.pressed ?
MACRO( I(0), T(F2), D(LCTL), T(V), U(LCTL), END ) :
MACRO_NONE );
case 8: //Copy All
return (record->event.pressed ?
MACRO( I(0), T(F2), D(LCTL), T(A), T(C), U(LCTL), END ) :
MACRO_NONE );
case 9: //Task Manager
return (record->event.pressed ?
MACRO( I(0), D(LSFT), D(LCTL), T(ESC), U(LSFT), U(LCTL), END ) :
MACRO_NONE );
case 11: //Double Zero
return (record->event.pressed ?
MACRO( I(0), T(P0), T(P0), END ) :
MACRO_NONE );
}
return MACRO_NONE;
}
#ifdef KEYMAP_SECTION_ENABLE
const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] __attribute__ ((section (".keymap.keymaps"))) = {
#else
const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] PROGMEM = {
#endif
UNIMAP(
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,
DEL, ESC, FN9, F23, F24, FN8, FN7, FN4, FN3, FN2, FN1,TRNS,TRNS, SLCK,FN10,TRNS, TRNS,TRNS,TRNS,
GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0,MINS, EQL,TRNS,BSPC, FN0,TRNS,TRNS, CAPS,TRNS,PPLS,PMNS,
TAB, Q, W, E, R, T, Y, U, I, O, P,LBRC,RBRC, BSLS, TRNS,TRNS,TRNS, INS,HOME,PGUP,PENT,
LGUI, A, S, D, F, G, H, J, K, L,SCLN,QUOT, LEFT, ENT, DEL, END,PGDN,TRNS,
LSFT,TRNS, Z, X, C, V, B, N, M,COMM, DOT,SLSH, TRNS,RSFT, TRNS, NO, UP, NO,TRNS,
LCTL,LGUI,LALT,TRNS, SPC, TRNS, FN0,TRNS,TRNS,BSLS,TRNS, TRNS,TRNS,TRNS, DOWN,RGHT,TRNS
),
UNIMAP(
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,
TRNS, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,
TRNS, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0,MINS, EQL,TRNS,TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, 7, 8, 9,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, 0,TRNS, 4, 5, 6,TRNS,
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS, TRNS, 1, 2, 3,TRNS,
TRNS,TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS, FN11,PDOT,TRNS
),
UNIMAP(
TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,
TRNS, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,
TRNS, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12,TRNS,TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS,FN3 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS, TRNS,TRNS,TRNS,TRNS,
TRNS,TRNS,FN4 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, MPRV,TRNS, TRNS,TRNS,TRNS,TRNS,
TRNS,TRNS,TRNS,TRNS,FN8 ,FN7 ,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS, TRNS, MPLY,VOLU,MPLY,TRNS,
TRNS,TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS,TRNS, VOLD,MNXT,TRNS
),
};