Some checks failed
Compile my Keebs / lint-and-compile (push) Has been cancelled
116 lines
8.2 KiB
C
116 lines
8.2 KiB
C
/* Copyright 2021 @ Keychron (https://www.keychron.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/>.
|
|
*/
|
|
|
|
#include QMK_KEYBOARD_H
|
|
#include "keychron_common.h"
|
|
#include "dgvigil.h"
|
|
|
|
// clang-format off
|
|
|
|
enum layers{
|
|
QWERTY,
|
|
COLEDH,
|
|
_NAV,
|
|
_NUM,
|
|
_SYM,
|
|
_FUN,
|
|
_MUS,
|
|
_MOUSE
|
|
};
|
|
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
[QWERTY] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________BASE_L1____________________, __________________BASE_R1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________BASE_L2____________________, __________________BASE_R2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________BASE_L3____________________, KC_B, __________________BASE_R3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LOPTN, ___________THUMB_L3________, ___________THUMB_R3________, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[COLEDH] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________COLEML1____________________, __________________COLEMR1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________COLEML2____________________, __________________COLEMR2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________COLEML3____________________, KC_B, __________________COLEMR3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, ___________THUMB_L3________, ___________THUMB_R3________, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[_NAV] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________EMPTY_____________________, __________________NAV_R1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________NAV_L2____________________, __________________NAV_R2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________NAV_L3____________________, KC_B, __________________NAV_R3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, ___________THUMB_L3________, ___________THUMB_R3________, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[_NUM] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________COLEML1____________________, __________________COLEMR1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________COLEML2____________________, __________________COLEMR2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________COLEML3____________________, KC_B, __________________COLEMR3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, _________NUM_TH_L3________, ___________THUMB_3__BLANK__, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[_SYM] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________SYM_L1____________________, __________________COLEMR1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________SYM_L2____________________, __________________COLEMR2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________SYM_L3____________________, KC_B, __________________COLEMR3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, _________SYM_TH_L3________, ___________THUMB_3__BLANK__, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[_FUN] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________FUN_L1____________________, _________________BOOT_R1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________FUN_L2____________________, __________________EMPTY_____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________FUN_L3____________________, KC_B, __________________EMPTY_____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[_MUS] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, _________________BOOT_L1____________________, __________________EMPTY_____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________EMPTY_____________________, __________________MUS_R2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________EMPTY_____________________, KC_B, __________________MUS_R3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__, KC_LEFT, KC_DOWN, KC_RGHT),
|
|
|
|
[_MOUSE] = LAYOUT_ansi_69(
|
|
KC_ESC, 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_MUTE,
|
|
KC_TAB, __________________EMPTY_____________________, __________________MOU_R1____________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
|
|
KC_CAPS, __________________EMPTY_____________________, __________________MOU_R2____________________, KC_QUOT, KC_ENT, KC_HOME,
|
|
KC_LSFT, __________________EMPTY_____________________, KC_B, __________________MOU_R3____________________, KC_RSFT, KC_UP,
|
|
KC_LCTL, KC_LWIN, ___________THUMB_3__BLANK__, ___________THUMB_3__BLANK__, KC_LEFT, KC_DOWN, KC_RGHT)
|
|
};
|
|
|
|
#if defined(ENCODER_MAP_ENABLE)
|
|
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
|
[QWERTY] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
|
[COLEDH] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
|
[_NAV] = {ENCODER_CCW_CW(RGB_MOD, RGB_RMOD)},
|
|
[_NUM] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
|
|
[_FUN] = {ENCODER_CCW_CW(RGB_HUI, RGB_HUD)},
|
|
[_MUS] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
|
|
[_MOUSE] = {ENCODER_CCW_CW(_______, _______)}
|
|
};
|
|
#endif // ENCODER_MAP_ENABLE
|
|
|
|
// clang-format on
|
|
|
|
void housekeeping_task_user(void) {
|
|
housekeeping_task_keychron();
|
|
}
|
|
|
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
if (!process_record_keychron(keycode, record)) {
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|