110 lines
3.2 KiB
C
110 lines
3.2 KiB
C
|
/*
|
||
|
Copyright 2020 Dan White <opensource@bluetufa.com>
|
||
|
|
||
|
This program is free software: you can redistribute it and/or modify
|
||
|
it under the terms of the GNU General Public License as published by
|
||
|
the Free Software Foundation, either version 2 of the License, or
|
||
|
(at your option) any later version.
|
||
|
This program is distributed in the hope that it will be useful,
|
||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
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/>.
|
||
|
*/
|
||
|
#pragma once
|
||
|
|
||
|
#include QMK_KEYBOARD_H
|
||
|
|
||
|
enum layers {
|
||
|
_QWERTY_MAC,
|
||
|
_MOVE_MAC,
|
||
|
_QWERTY_LINUX,
|
||
|
_MOVE_LINUX,
|
||
|
_ADJUST,
|
||
|
_CONFIG
|
||
|
};
|
||
|
|
||
|
enum CustomKeys {
|
||
|
CS_RIGHT = SAFE_RANGE,
|
||
|
CS_DOWN
|
||
|
};
|
||
|
|
||
|
#define OS_POP LCTL(KC_F10)
|
||
|
#define MAC_POP LCTL(KC_UP)
|
||
|
#define MAC_FRC LGUI(LALT(KC_ESC))
|
||
|
#define OS_COPY LSFT(LCTL(KC_C))
|
||
|
#define OS_PAST LSFT(LCTL(KC_V))
|
||
|
#define MAC_PST LGUI(KC_V)
|
||
|
#define MAC_CPY LGUI(KC_C)
|
||
|
#define KC_BACK LCTL(LSFT(KC_LBRC))
|
||
|
#define KC_NEXT LCTL(LSFT(KC_RBRC))
|
||
|
|
||
|
#define MOVE LT(_MOVE_LINUX, KC_ESC)
|
||
|
#define MOVE_MAC LT(_MOVE_MAC, KC_ESC)
|
||
|
#define ADJUST MO(_ADJUST)
|
||
|
#define CFG_MAC LT(_CONFIG, MAC_POP)
|
||
|
#define CFG_LNX LT(_CONFIG, OS_POP)
|
||
|
|
||
|
#define WD_BACK LALT(KC_LEFT)
|
||
|
#define WD_FRWD LALT(KC_RIGHT)
|
||
|
|
||
|
#define VD_1 LCTL(KC_F1)
|
||
|
#define VD_2 LCTL(KC_F2)
|
||
|
#define VD_3 LCTL(KC_F3)
|
||
|
|
||
|
#define WM_UH LGUI(KC_UP)
|
||
|
#define WM_BH LGUI(KC_DOWN)
|
||
|
#define WM_LH LGUI(KC_LEFT)
|
||
|
#define WM_RH LGUI(KC_RIGHT)
|
||
|
#define WM_MAX LGUI(KC_PGUP)
|
||
|
|
||
|
#define CM_RIGHT LGUI(KC_D)
|
||
|
#define CM_DOWN LGUI(LSFT(KC_D))
|
||
|
|
||
|
/* THESE are not defaults in KDE and must be set manually */
|
||
|
#define WM_VD1 HYPR(KC_1)
|
||
|
#define WM_VD2 HYPR(KC_2)
|
||
|
#define WM_VD3 HYPR(KC_3)
|
||
|
|
||
|
/* IntelliJ / JetBrains shortcuts with Mac keymap */
|
||
|
#define IJ_BACK LGUI(LALT(KC_LEFT))
|
||
|
#define IJ_FWD LGUI(LALT(KC_RIGHT))
|
||
|
#define IJ_UP LGUI(LALT(KC_UP))
|
||
|
#define IJ_DOWN LGUI(LALT(KC_DOWN))
|
||
|
#define IJ_IMPL LGUI(LALT(KC_B))
|
||
|
#define IJ_DECL LGUI(KC_B)
|
||
|
#define IJ_REN LSFT(KC_F6)
|
||
|
#define IJ_USAG LALT(KC_F7)
|
||
|
#define IJ_RUN KC_F9
|
||
|
#define IJ_STEP KC_F8
|
||
|
#define IJ_INTO LSFT(KC_F7)
|
||
|
#define IJ_OUT LSFT(KC_F8)
|
||
|
#define IJ_STOP LGUI(KC_F2)
|
||
|
#define IJ_IMPS LCTL(LALT(LSFT(KC_EQUAL)))
|
||
|
#define IJ_IMPH LCTL(LALT(LSFT(KC_MINUS)))
|
||
|
#define IJ_TOP LGUI(KC_HOME)
|
||
|
#define IJ_BOTT LGUI(KC_END)
|
||
|
#define IJ_FIND LGUI(LSFT(KC_F))
|
||
|
|
||
|
/* MacOS virtual desktop shortcuts */
|
||
|
#define M_VD1 LCTL(KC_1)
|
||
|
#define M_VD2 LCTL(KC_2)
|
||
|
#define M_VD3 LCTL(KC_3)
|
||
|
|
||
|
/* rectangle shortcuts */
|
||
|
#define MM_ULCN LCTL(LGUI(KC_LEFT))
|
||
|
#define MM_URCN LCTL(LGUI(KC_RIGHT))
|
||
|
#define MM_LLCN LCTL(LSFT(LGUI(KC_LEFT)))
|
||
|
#define MM_LRCN LCTL(LSFT(LGUI(KC_RIGHT)))
|
||
|
#define MM_MAX LALT(LGUI(KC_F))
|
||
|
#define MM_LH HYPR(KC_LBRC)
|
||
|
#define MM_RH HYPR(KC_RBRC)
|
||
|
#define MM_UH LALT(LGUI(KC_UP))
|
||
|
#define MM_BH LALT(LGUI(KC_DOWN))
|
||
|
#define MM_LEFT LCTL(LALT(LGUI(KC_LEFT)))
|
||
|
#define MM_RGHT LCTL(LALT(LGUI(KC_RIGHT)))
|
||
|
|
||
|
#define DF_1 DF(_QWERTY_MAC)
|
||
|
#define DF_2 DF(_QWERTY_LINUX)
|