mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-02-23 15:27:44 +00:00
Merge remote-tracking branch 'origin/develop' into xap
This commit is contained in:
commit
993e9c29e7
@ -283,6 +283,65 @@ void suspend_wakeup_init_user(void) {
|
|||||||
* Keyboard/Revision: `void suspend_power_down_kb(void)` and `void suspend_wakeup_init_user(void)`
|
* Keyboard/Revision: `void suspend_power_down_kb(void)` and `void suspend_wakeup_init_user(void)`
|
||||||
* Keymap: `void suspend_power_down_kb(void)` and `void suspend_wakeup_init_user(void)`
|
* Keymap: `void suspend_power_down_kb(void)` and `void suspend_wakeup_init_user(void)`
|
||||||
|
|
||||||
|
|
||||||
|
# Keyboard Shutdown/Reboot Code
|
||||||
|
|
||||||
|
This function gets called whenever the firmware is reset, whether it's a soft reset or reset to the bootloader. This is the spot to use for any sort of cleanup, as this happens right before the actual reset. And it can be useful for turning off different systems (such as RGB, onboard screens, etc).
|
||||||
|
|
||||||
|
Additionally, it differentiates between the soft reset (eg, rebooting back into the firmware) or jumping to the bootloader.
|
||||||
|
|
||||||
|
Certain tasks are performed during shutdown too. The keyboard is cleared, music and midi is stopped (if enabled), the shutdown chime is triggered (if audio is enabled), and haptic is stopped.
|
||||||
|
|
||||||
|
If `jump_to_bootloader` is set to `true`, this indicates that the board will be entering the bootloader for a new firmware flash, whereas `false` indicates that this is happening for a soft reset and will load the firmware agaim immediately (such as when using `QK_REBOOT` or `QK_CLEAR_EEPROM`).
|
||||||
|
|
||||||
|
As there is a keyboard and user level function, returning `false` for the user function will disable the keyboard level function, allowing for customization.
|
||||||
|
|
||||||
|
?> Bootmagic does not trigger `shutdown_*()` as it happens before most of the initialization process.
|
||||||
|
|
||||||
|
### Example `shutdown_kb()` Implementation
|
||||||
|
|
||||||
|
```c
|
||||||
|
bool shutdown_kb(bool jump_to_bootloader) {
|
||||||
|
if (!shutdown_user(jump_to_bootloader)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (jump_to_bootloader) {
|
||||||
|
// red for bootloader
|
||||||
|
rgb_matrix_set_color_all(RGB_OFF);
|
||||||
|
} else {
|
||||||
|
// off for soft reset
|
||||||
|
rgb_matrix_set_color_all(RGB_GREEN);
|
||||||
|
}
|
||||||
|
// force flushing -- otherwise will never happen
|
||||||
|
rgb_matrix_update_pwm_buffers();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Example `shutdown_user()` Implementation
|
||||||
|
|
||||||
|
```c
|
||||||
|
bool shutdown_user(bool jump_to_bootloader) {
|
||||||
|
if (jump_to_bootloader) {
|
||||||
|
// red for bootloader
|
||||||
|
rgb_matrix_set_color_all(RGB_RED);
|
||||||
|
} else {
|
||||||
|
// off for soft reset
|
||||||
|
rgb_matrix_set_color_all(RGB_OFF);
|
||||||
|
}
|
||||||
|
// force flushing -- otherwise will never happen
|
||||||
|
rgb_matrix_update_pwm_buffers();
|
||||||
|
// false to not process kb level
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Keyboard shutdown/reboot Function Documentation
|
||||||
|
|
||||||
|
* Keyboard/Revision: `bool shutdown_kb(bool jump_to_bootloader)`
|
||||||
|
* Keymap: `bool shutdown_user(bool jump_to_bootloader)`
|
||||||
|
|
||||||
# Deferred Execution :id=deferred-execution
|
# Deferred Execution :id=deferred-execution
|
||||||
|
|
||||||
QMK has the ability to execute a callback after a specified period of time, rather than having to manually manage timers. To enable this functionality, set `DEFERRED_EXEC_ENABLE = yes` in rules.mk.
|
QMK has the ability to execute a callback after a specified period of time, rather than having to manually manage timers. To enable this functionality, set `DEFERRED_EXEC_ENABLE = yes` in rules.mk.
|
||||||
|
@ -183,22 +183,8 @@ void oled_render_boot(bool bootloader) {
|
|||||||
oled_render_dirty(true);
|
oled_render_dirty(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool reboot = false;
|
bool shutdown_user(bool jump_to_bootloader) {
|
||||||
|
oled_render_boot(jump_to_bootloader);
|
||||||
bool uint16_t keycode, keyrecord_t *record) {
|
|
||||||
if (record->event.pressed) {
|
|
||||||
|
|
||||||
// Display a special message prior to rebooting...
|
|
||||||
if (keycode == QK_BOOT) {
|
|
||||||
reboot = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void shutdown_user(void) {
|
|
||||||
oled_render_boot(reboot);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
```
|
```
|
||||||
|
@ -656,6 +656,10 @@ enum rgb_matrix_effects {
|
|||||||
RGB_MATRIX_MULTISPLASH, // Full gradient & value pulse away from multiple key hits then fades value out
|
RGB_MATRIX_MULTISPLASH, // Full gradient & value pulse away from multiple key hits then fades value out
|
||||||
RGB_MATRIX_SOLID_SPLASH, // Hue & value pulse away from a single key hit then fades value out
|
RGB_MATRIX_SOLID_SPLASH, // Hue & value pulse away from a single key hit then fades value out
|
||||||
RGB_MATRIX_SOLID_MULTISPLASH, // Hue & value pulse away from multiple key hits then fades value out
|
RGB_MATRIX_SOLID_MULTISPLASH, // Hue & value pulse away from multiple key hits then fades value out
|
||||||
|
RGB_MATRIX_STARLIGHT, // LEDs turn on and off at random at varying brightness, maintaining user set color
|
||||||
|
RGB_MATRIX_STARLIGHT_DUAL_HUE, // LEDs turn on and off at random at varying brightness, modifies user set hue by +- 30
|
||||||
|
RGB_MATRIX_STARLIGHT_DUAL_SAT, // LEDs turn on and off at random at varying brightness, modifies user set saturation by +- 30
|
||||||
|
RGB_MATRIX_RIVERFLOW, // Modification to breathing animation, offset's animation depending on key location to simulate a river flowing
|
||||||
RGB_MATRIX_EFFECT_MAX
|
RGB_MATRIX_EFFECT_MAX
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
@ -695,6 +699,10 @@ You can enable a single effect by defining `ENABLE_[EFFECT_NAME]` in your `confi
|
|||||||
|`#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL` |Enables `RGB_MATRIX_PIXEL_FRACTAL` |
|
|`#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL` |Enables `RGB_MATRIX_PIXEL_FRACTAL` |
|
||||||
|`#define ENABLE_RGB_MATRIX_PIXEL_FLOW` |Enables `RGB_MATRIX_PIXEL_FLOW` |
|
|`#define ENABLE_RGB_MATRIX_PIXEL_FLOW` |Enables `RGB_MATRIX_PIXEL_FLOW` |
|
||||||
|`#define ENABLE_RGB_MATRIX_PIXEL_RAIN` |Enables `RGB_MATRIX_PIXEL_RAIN` |
|
|`#define ENABLE_RGB_MATRIX_PIXEL_RAIN` |Enables `RGB_MATRIX_PIXEL_RAIN` |
|
||||||
|
|`#define ENABLE_RGB_MATRIX_STARLIGHT` |Enables `RGB_MATRIX_STARLIGHT` |
|
||||||
|
|`#define ENABLE_RGB_MATRIX_STARLIGHT_DUAL_HUE` |Enables `RGB_MATRIX_STARLIGHT_DUAL_HUE` |
|
||||||
|
|`#define ENABLE_RGB_MATRIX_STARLIGHT_DUAL_SAT` |Enables `RGB_MATRIX_STARLIGHT_DUAL_SAT` |
|
||||||
|
|`#define ENABLE_RGB_MATRIX_RIVERFLOW` |Enables `RGB_MATRIX_RIVERFLOW` |
|
||||||
|
|
||||||
|Framebuffer Defines |Description |
|
|Framebuffer Defines |Description |
|
||||||
|------------------------------------------------------|----------------------------------------------|
|
|------------------------------------------------------|----------------------------------------------|
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
/* Copyright 2018 Chuck "@vosechu" Lauer Vose
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
// place overrides here
|
|
@ -1,46 +0,0 @@
|
|||||||
/* Copyright 2018 Chuck "@vosechu" Lauer Vose
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
#define SPACEFN LT(1, KC_SPC)
|
|
||||||
#define CTL_GRV CTL_T(KC_GRV)
|
|
||||||
#define ALT_TAB ALT_T(KC_TAB)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT_60_ansi(
|
|
||||||
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_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 ,
|
|
||||||
KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_RSFT ,
|
|
||||||
CTL_GRV , ALT_TAB , KC_LGUI , SPACEFN , KC_RALT , KC_RGUI , MO(1) , KC_RCTL
|
|
||||||
),
|
|
||||||
|
|
||||||
[1] = LAYOUT_60_ansi(
|
|
||||||
KC_GRV , 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 ,
|
|
||||||
KC_TRNS , KC_TRNS , KC_UP , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_PSCR , KC_SCRL , KC_PAUS , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_LEFT , KC_DOWN , KC_RGHT , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_INS , KC_HOME , KC_PGUP , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_VOLU , KC_VOLD , KC_MUTE , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_END , KC_PGDN , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , MO(2) , KC_TRNS , KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
[2] = LAYOUT_60_ansi(
|
|
||||||
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , QK_BOOT,
|
|
||||||
BL_TOGG , BL_UP , BL_DOWN , BL_STEP , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
|
|
||||||
RGB_TOG , RGB_MOD , RGB_HUI , RGB_SAI , RGB_VAI , RGB_SPI , RGB_M_P , RGB_M_B , RGB_M_R , RGB_M_SW , KC_TRNS , KC_TRNS , KC_TRNS ,
|
|
||||||
KC_TRNS , RGB_RMOD , RGB_HUD , RGB_SAD , RGB_VAD , RGB_SPD , RGB_M_SN , RGB_M_K , RGB_M_X , RGB_M_G , KC_TRNS , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,6 +0,0 @@
|
|||||||
# 1up60hse keymap made by vosechu
|
|
||||||
|
|
||||||
Tweaks from default
|
|
||||||
|
|
||||||
* Add in SpaceFN so arrows are reachable with just left hand (leaving right free for mousing).
|
|
||||||
* Also add tab/grv under the alt/ctrl keys to make those easier to reach.
|
|
@ -1,59 +0,0 @@
|
|||||||
/*
|
|
||||||
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/>.
|
|
||||||
*/
|
|
||||||
#include "badger.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_QWERTY_MAC] = LAYOUT_tsangan(
|
|
||||||
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_DEL,
|
|
||||||
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,
|
|
||||||
MOVE_MAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_MAC,
|
|
||||||
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RALT, KC_RGUI),
|
|
||||||
|
|
||||||
[_MOVE_MAC] = LAYOUT_tsangan(
|
|
||||||
MAC_FRC, MM_LEFT, MM_RGHT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_0, IJ_TOP, IJ_BOTT, _______, _______,
|
|
||||||
KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, IJ_BACK, IJ_FWD, KC_NEXT,
|
|
||||||
_______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN, _______,
|
|
||||||
_______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______),
|
|
||||||
|
|
||||||
[_QWERTY_LINUX] = LAYOUT_tsangan(
|
|
||||||
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_DEL,
|
|
||||||
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,
|
|
||||||
MOVE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_LNX,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, ADJUST, KC_RALT, KC_RGUI),
|
|
||||||
|
|
||||||
[_MOVE_LINUX] = LAYOUT_tsangan(
|
|
||||||
KC_GRV, VD_1, VD_2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
|
|
||||||
KC_BACK, WM_VD1, WM_UH, WM_VD2, QK_BOOT, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, _______, _______, KC_NEXT,
|
|
||||||
_______, WM_LH, WM_MAX, WM_RH, WD_FRWD, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN, _______,
|
|
||||||
_______, WM_VD3, WM_BH, OS_COPY, OS_PAST, WD_BACK, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______),
|
|
||||||
|
|
||||||
[_ADJUST] = LAYOUT_tsangan(
|
|
||||||
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_WREF, KC_MSTP, KC_MPLY, KC_PGUP, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_INS,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, KC_CAPS, _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______),
|
|
||||||
|
|
||||||
[_CONFIG] = LAYOUT_tsangan(
|
|
||||||
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
|
|
||||||
_______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
|
|
||||||
_______, GE_SWAP, GE_NORM, DB_TOGG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, RGB_M_B, _______, _______, RGB_TOG, _______,
|
|
||||||
_______, DF_1, DF_2, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, RGB_M_K, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______)
|
|
||||||
};
|
|
@ -1,59 +0,0 @@
|
|||||||
/*
|
|
||||||
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/>.
|
|
||||||
*/
|
|
||||||
#include "badger.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_QWERTY_MAC] = LAYOUT_60_ansi_tsangan_split_rshift(
|
|
||||||
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,
|
|
||||||
MOVE_MAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_MAC,
|
|
||||||
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RALT, KC_RGUI),
|
|
||||||
|
|
||||||
[_MOVE_MAC] = LAYOUT_60_ansi_tsangan_split_rshift(
|
|
||||||
MAC_FRC, MM_LEFT, MM_RGHT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_0, IJ_TOP, IJ_BOTT, KC_DEL,
|
|
||||||
KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, IJ_BACK, IJ_FWD, KC_NEXT,
|
|
||||||
_______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN, _______,
|
|
||||||
_______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______),
|
|
||||||
|
|
||||||
[_QWERTY_LINUX] = LAYOUT_60_ansi_tsangan_split_rshift(
|
|
||||||
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,
|
|
||||||
MOVE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_LNX,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, ADJUST, KC_LALT, KC_RGUI),
|
|
||||||
|
|
||||||
[_MOVE_LINUX] = LAYOUT_60_ansi_tsangan_split_rshift(
|
|
||||||
KC_GRV, VD_1, VD_2, VD_3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
|
|
||||||
KC_BACK, WM_VD1, WM_UH, WM_VD2, QK_BOOT, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, _______, _______, KC_NEXT,
|
|
||||||
_______, WM_LH, WM_MAX, WM_RH, WD_FRWD, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN, _______,
|
|
||||||
_______, WM_VD3, WM_BH, OS_COPY, OS_PAST, WD_BACK, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______),
|
|
||||||
|
|
||||||
[_ADJUST] = LAYOUT_60_ansi_tsangan_split_rshift(
|
|
||||||
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,
|
|
||||||
_______, _______, _______, _______, KC_WREF, KC_MSTP, KC_MPLY, KC_PGUP, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_INS,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, DF_1, DF_2, KC_CAPS, _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______),
|
|
||||||
|
|
||||||
[_CONFIG] = LAYOUT_60_ansi_tsangan_split_rshift(
|
|
||||||
_______, 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,
|
|
||||||
_______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
|
|
||||||
_______, GE_SWAP, GE_NORM, DB_TOGG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, RGB_M_B, _______, _______, RGB_TOG, _______,
|
|
||||||
_______, LAG_SWP, LAG_NRM, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, RGB_M_K, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______)
|
|
||||||
};
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
|||||||
// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
|
|
||||||
// SPDX-License-Identifier: GPL-2.0+
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
# define TAPPING_TERM 160
|
|
||||||
# define TAPPING_TERM_PER_KEY
|
|
||||||
# define HOLD_ON_OTHER_KEY_PRESS
|
|
||||||
# define QUICK_TAP_TERM TAPPING_TERM / 2
|
|
||||||
# define QUICK_TAP_TERM_PER_KEY
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,290 +0,0 @@
|
|||||||
// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
|
|
||||||
// SPDX-License-Identifier: GPL-2.0+
|
|
||||||
|
|
||||||
#include "miketronic.h"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
/* Workman
|
|
||||||
* ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
|
|
||||||
* │ TAB │ Q │ D │ R │ W │ B │ │ J │ F │ U │ P │ BSPC│ BSPC│
|
|
||||||
* │ ESC │ ESC │ │ │ │ SYM │ │ SYM │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
|
|
||||||
* │ TAB │ A │ S │ H ┃ T ┃ G │ │ Y ┃ N ┃ E │ O │ I │ │
|
|
||||||
* │SHIFT│ │ │ ┃ EX ┃ │ │ ┃ ┃ │ │ENTER│ENTER│
|
|
||||||
* ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
|
|
||||||
* │SHIFT| Z │ X │ M │ C │ V │ │ K │ L │ SPC │ SPC │ / │ UP |
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ , │ . │ │RIGHT|
|
|
||||||
* ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
|
|
||||||
* │ FN │CTRL │ OS │ ALT │LOWER│ │ │ │RAISE│ SS │CLIP │COPY │ DN │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │PASTE│LEFT │
|
|
||||||
* └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_WM] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
RGB_TOG,
|
|
||||||
_____________WORKMAN_412_001_L_____________, _____________WORKMAN_412_001_R_____________,
|
|
||||||
_____________WORKMAN_412_002_L_____________, _____________WORKMAN_412_002_R_____________,
|
|
||||||
_____________WORKMAN_412_003_L_____________, _____________WORKMAN_412_003_R_____________,
|
|
||||||
_____________WORKMAN_412_004_L_____________, _____________WORKMAN_412_004_R_____________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_QW] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
RGB_TOG,
|
|
||||||
KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
|
|
||||||
KC_ESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT,
|
|
||||||
KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT,
|
|
||||||
_____________WORKMAN_412_004_L_____________, _____________WORKMAN_412_004_R_____________
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Lower
|
|
||||||
* ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
|
|
||||||
* │ │ () │ [] │ /\ │ │ │ │ │ 7 │ 8 │ 9 │ │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ @ # │ & % │ ┃ ┃ │ │ ┃ 4 ┃ 5 │ 6 │ │ │
|
|
||||||
* │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ │ UP │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ 0 │ │ │RIGHT│
|
|
||||||
* ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ │ │ │LOWER│ │ │ │BPSC │ SPC │ . │ │ DN │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ ENT │ │LEFT │
|
|
||||||
* └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
|
|
||||||
*/
|
|
||||||
[_LOWER] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
KC_MUTE,
|
|
||||||
_______________LOWER_412_L1________________, _______________LOWER_412_R1________________,
|
|
||||||
_______________LOWER_412_L2________________, _______________LOWER_412_R2________________,
|
|
||||||
_______________LOWER_412_L3________________, _______________LOWER_412_R3________________,
|
|
||||||
_______________LOWER_412_L4________________, _______________LOWER_412_R4________________
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
/* RAISE
|
|
||||||
* ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
|
|
||||||
* │BOOT │DEBUG│ │ │ │MAKE │ │ │ │ F7 │ F8 │ F9 │ F10 │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ RGB | RGB | RGB ┃ RGB ┃ WM │ │ ┃ / \ ┃ F4 │ F5 │ F6 │ F11 │
|
|
||||||
* │ │ TOG │ MOD │ HUI ┃ HUD ┃ │ │ ┃ ┃ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ RGB │ RGB │ RGB │ RGB │ QW │ │ │ _ │ F1 | F2 | F3 │ F12 │
|
|
||||||
* │ │ SAI │ SAD │ VAI │ VAD │ │ │ │ - │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ │ │ │ │ │ │ │RAISE│ │ │ │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
|
|
||||||
*/
|
|
||||||
[_RAISE] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
KC_MUTE,
|
|
||||||
_______________RAISE_412_L1________________, _______________RAISE_412_R1________________,
|
|
||||||
_______________RAISE_412_L2________________, _______________RAISE_412_R2________________,
|
|
||||||
_______________RAISE_412_L3________________, _______________RAISE_412_R3________________,
|
|
||||||
_________________BLANK_6___________________, _________________BLANK_6___________________
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
/* EXTRAS
|
|
||||||
* ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
|
|
||||||
* │ │ ! │ │ │ │ │ │ │ /\ | [ | ] | ; │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
|
|
||||||
* │SHIFT│ | |EXTRA┃ ┃ │ │ ┃ @ # ┃ & % | | ' | │
|
|
||||||
* │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ , | . | ? │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
|
|
||||||
*/
|
|
||||||
[_EX] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
KC_MUTE,
|
|
||||||
______________EXTRAS_412_L1________________, ______________EXTRAS_412_R1________________,
|
|
||||||
______________EXTRAS_412_L2________________, ______________EXTRAS_412_R2________________,
|
|
||||||
______________EXTRAS_412_L3________________, ______________EXTRAS_412_R3________________,
|
|
||||||
______________EXTRAS_412_L4________________, ______________EXTRAS_412_R4________________
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* FUNCTION
|
|
||||||
* ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
|
|
||||||
* │COPY │CLIP │ SS │ │ │ │ │ │ /\ │ UP │ │ │ DEL │
|
|
||||||
* │PASTE│ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
|
|
||||||
* │TAB │ M05 | M06 | M07 ┃ M08 ┃ │ │ ┃LEFT ┃DOWN │RIGHT│ │UP │
|
|
||||||
* │SHIFT│ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │RIGHT│
|
|
||||||
* ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ M01 │ M02 │ M03 │ M04 │ │ │ │ │ , | . | ? │DOWN │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │LEFT │
|
|
||||||
* ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
|
|
||||||
* │ │RGB1 │RGB2 │RGB3 │RGB4 │ │ │ │ │ │ │ │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
|
|
||||||
*/
|
|
||||||
[_FN] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
KC_MUTE,
|
|
||||||
_____________FUNCTION_412_L1_______________, _____________FUNCTION_412_R1_______________,
|
|
||||||
_____________FUNCTION_412_L2_______________, _____________FUNCTION_412_R2_______________,
|
|
||||||
_____________FUNCTION_412_L3_______________, _____________FUNCTION_412_R3_______________,
|
|
||||||
_____________FUNCTION_412_L4_______________, _____________FUNCTION_412_R4_______________
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
/* SYMBOLS
|
|
||||||
* ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
|
|
||||||
* │ | $ | ^ | < | > │ SYMB│ │ SYMB│ | | [ | ] | - | |
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
|
|
||||||
* │ | % | : | ; ┃ + ┃ = │ │ ┃ ┃ ( | ) | _ | |
|
|
||||||
* │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
|
|
||||||
* | | & | ' | " | * | # │ │ ! | ? | / | \ | @ | |
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
|
|
||||||
* └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_SYMB] = LAYOUT_ortho_4x12_wrapper (
|
|
||||||
KC_MUTE,
|
|
||||||
_______, _____________SYMBOLS_310_L1________________, _____________SYMBOLS_310_R1________________, _______,
|
|
||||||
_______, _____________SYMBOLS_310_L2________________, _____________SYMBOLS_310_R2________________, _______,
|
|
||||||
_______, _____________SYMBOLS_310_L3________________, _____________SYMBOLS_310_R3________________, _______,
|
|
||||||
_________________BLANK_6___________________, _________________BLANK_6___________________
|
|
||||||
)
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifndef NUM_DIRECTIONS
|
|
||||||
# define NUM_DIRECTIONS 2
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(ENCODER_MAP_ENABLE) && defined(KEYBOARD_1upkeyboards_pi40_mit_v1_0)
|
|
||||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
|
||||||
[_WM] = { ENCODER_CCW_CW(LCTL(KC_V), LCTL(KC_C)) },
|
|
||||||
[_QW] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
|
||||||
[_LOWER] = { ENCODER_CCW_CW(____, ____) },
|
|
||||||
[_RAISE] = { ENCODER_CCW_CW(____, ____) },
|
|
||||||
[_EX] = { ENCODER_CCW_CW(____, ____) },
|
|
||||||
[_FN] = { ENCODER_CCW_CW(RGB_MOD, RGB_RMOD) },
|
|
||||||
[_SYMB] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef OLED_ENABLE
|
|
||||||
bool oled_task_user(void) {
|
|
||||||
// Host Keyboard Layer Status
|
|
||||||
oled_write_P(PSTR("Layer: "), false);
|
|
||||||
|
|
||||||
switch (get_highest_layer(layer_state)) {
|
|
||||||
case _LOWER:
|
|
||||||
oled_write_P(PSTR("LOWER"), false);
|
|
||||||
break;
|
|
||||||
case _RAISE:
|
|
||||||
oled_write_P(PSTR("RAISE"), false);
|
|
||||||
break;
|
|
||||||
case _EX:
|
|
||||||
oled_write_P(PSTR("EXTRA"), false);
|
|
||||||
break;
|
|
||||||
case _FN:
|
|
||||||
oled_write_P(PSTR("FUNCTION"), false);
|
|
||||||
break;
|
|
||||||
case _WM:
|
|
||||||
oled_write_P(PSTR("WORKMAN"), false);
|
|
||||||
break;
|
|
||||||
case _SYMB:
|
|
||||||
oled_write_P(PSTR("SYMBOLS"), false);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
// Or use the write_ln shortcut over adding '\n' to the end of your string
|
|
||||||
oled_write_ln_P(PSTR("HOME"), false);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Host Keyboard LED Status
|
|
||||||
// led_t led_state = host_keyboard_led_state();
|
|
||||||
// oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
|
|
||||||
// oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
|
|
||||||
// oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
switch (keycode) {
|
|
||||||
case SFT_T(KC_A):
|
|
||||||
// Do not force the mod-tap key press to be handled as a modifier
|
|
||||||
// if any other key was pressed while the mod-tap key is held down.
|
|
||||||
return false;
|
|
||||||
case TEX:
|
|
||||||
return false;
|
|
||||||
case CTRLX:
|
|
||||||
return false;
|
|
||||||
case FNZ:
|
|
||||||
return false;
|
|
||||||
case MGUI:
|
|
||||||
return false;
|
|
||||||
case VLOWER:
|
|
||||||
return false;
|
|
||||||
case KRAISE:
|
|
||||||
return false;
|
|
||||||
default:
|
|
||||||
// Force the dual-role key press to be handled as a modifier if any
|
|
||||||
// other key was pressed while the mod-tap key is held down.
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
float leader_start_song[][2] = SONG(ONE_UP_SOUND);
|
|
||||||
float leader_succeed_song[][2] = SONG(ALL_STAR);
|
|
||||||
float leader_fail_song[][2] = SONG(RICK_ROLL);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void matrix_scan_user(void);
|
|
||||||
|
|
||||||
void leader_start_user(void) {
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
PLAY_SONG(leader_start_song);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
bool did_leader_succeed;
|
|
||||||
|
|
||||||
void leader_end_user(void) {
|
|
||||||
did_leader_succeed = false;
|
|
||||||
|
|
||||||
if (leader_sequence_one_key(KC_E)) {
|
|
||||||
SEND_STRING(SS_LCTL(SS_LSFT("t")));
|
|
||||||
did_leader_succeed = true;
|
|
||||||
} else if (leader_sequence_two_keys(KC_E, KC_D)) {
|
|
||||||
SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c"));
|
|
||||||
did_leader_succeed = true;
|
|
||||||
} else if (leader_sequence_two_keys(KC_A, KC_T)) {
|
|
||||||
SEND_STRING("@guidehouse.com");
|
|
||||||
did_leader_succeed = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
if (did_leader_succeed) {
|
|
||||||
PLAY_SONG(leader_succeed_song);
|
|
||||||
} else {
|
|
||||||
PLAY_SONG(leader_fail_song);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
# Common feature for all keyboards
|
|
||||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
TAP_DANCE_ENABLE = yes # Tap Dance keys
|
|
||||||
NKRO_ENABLE = yes # Enable N-Key Rollover
|
|
||||||
MACROS_ENABLED = yes
|
|
||||||
|
|
||||||
|
|
||||||
# Keyboard specific
|
|
||||||
AUTO_SHIFT_ENABLE = no
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
|
||||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
|
||||||
AUDIO_ENABLE = no # Audio output
|
|
||||||
MOUSEKEY_ENABLE = no # Mouse keys
|
|
||||||
|
|
||||||
LEADER_ENABLE = yes
|
|
||||||
RGB_MATRIX_ENABLE = yes
|
|
||||||
ENCODER_ENABLE = yes
|
|
||||||
ENCODER_MAP_ENABLE = yes
|
|
||||||
OLED_ENABLE = yes
|
|
@ -1,32 +0,0 @@
|
|||||||
/* Copyright 2021 weteor
|
|
||||||
*
|
|
||||||
* 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/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// generated from users/manna-harbour_miryoku/miryoku.org -*- buffer-read-only: t -*-
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
|
|
||||||
) \
|
|
||||||
LAYOUT( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
K32, K33, K34, K35, K36, K37 \
|
|
||||||
)
|
|
@ -1,17 +0,0 @@
|
|||||||
/* Copyright 2021 weteor
|
|
||||||
*
|
|
||||||
* 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/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// generated from users/manna-harbour_miryoku/miryoku.org -*- buffer-read-only: t -*-
|
|
@ -66,15 +66,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||||||
|
|
||||||
#ifdef AUDIO_ENABLE
|
#ifdef AUDIO_ENABLE
|
||||||
|
|
||||||
float tone_startup[][2] = SONG(STARTUP_SOUND);
|
|
||||||
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
|
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
|
||||||
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
|
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
|
||||||
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
|
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
|
||||||
float tone_plover[][2] = SONG(PLOVER_SOUND);
|
float tone_plover[][2] = SONG(PLOVER_SOUND);
|
||||||
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
|
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
|
||||||
float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
|
|
||||||
|
|
||||||
float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void persistant_default_layer_set(uint16_t default_layer) {
|
void persistant_default_layer_set(uint16_t default_layer) {
|
||||||
@ -166,39 +163,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
void matrix_scan_user(void) {
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
startup_user();
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
|
|
||||||
void startup_user(void)
|
|
||||||
{
|
|
||||||
_delay_ms(20); // gets rid of tick
|
|
||||||
PLAY_SONG(tone_startup);
|
|
||||||
}
|
|
||||||
|
|
||||||
void shutdown_user(void)
|
|
||||||
{
|
|
||||||
PLAY_SONG(tone_goodbye);
|
|
||||||
_delay_ms(150);
|
|
||||||
stop_all_notes();
|
|
||||||
}
|
|
||||||
|
|
||||||
void music_on_user(void)
|
|
||||||
{
|
|
||||||
music_scale_user();
|
|
||||||
}
|
|
||||||
|
|
||||||
void music_scale_user(void)
|
|
||||||
{
|
|
||||||
PLAY_SONG(music_scale);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//Tap Dance Definitions
|
//Tap Dance Definitions
|
||||||
tap_dance_action_t tap_dance_actions[] = {
|
tap_dance_action_t tap_dance_actions[] = {
|
||||||
//Tap once for Esc, twice for Caps Lock
|
//Tap once for Esc, twice for Caps Lock
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.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
|
|
||||||
|
|
||||||
#define ANALOG_JOYSTICK_X_AXIS_PIN B4
|
|
||||||
#define ANALOG_JOYSTICK_Y_AXIS_PIN B5
|
|
||||||
|
|
||||||
#define ANALOG_JOYSTICK_CLICK_PIN E6
|
|
@ -1,31 +0,0 @@
|
|||||||
/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.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 "drashna.h"
|
|
||||||
#include "analog.h"
|
|
||||||
#include "pointing_device.h"
|
|
||||||
|
|
||||||
#define KC_X0 LT(_FN, KC_ESC)
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_QWERTY] = LAYOUT(
|
|
||||||
KC_VOLU, KC_MPLY, KC_MPRV, QK_BOOT,
|
|
||||||
KC_VOLD, KC_MUTE, KC_MNXT, QK_BOOT
|
|
||||||
),
|
|
||||||
|
|
||||||
};
|
|
||||||
// clang-format on
|
|
@ -1,6 +0,0 @@
|
|||||||
POINTING_DEVICE_ENABLE = yes
|
|
||||||
POINTING_DEVICE_DRIVER = analog_joystick
|
|
||||||
RGBLIGHT_ENABLE = no
|
|
||||||
CONSOLE_ENABLE = no
|
|
||||||
|
|
||||||
BOOTLOADER = qmk-dfu
|
|
@ -1,39 +0,0 @@
|
|||||||
/* Copyright 2021 Jonathan Rascher
|
|
||||||
*
|
|
||||||
* 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 "bcat.h"
|
|
||||||
|
|
||||||
#define KY_LOCK LGUI(KC_L) /* Chrome OS: Lock screen */
|
|
||||||
#define KY_MICM LSG(KC_1) /* Meet Shortcuts: Mute mic */
|
|
||||||
#define KY_MICU LSG(KC_2) /* Meet Shortcuts: Unmute mic */
|
|
||||||
#define KY_RHAND LSG(KC_3) /* Meet Shortcuts: Raise/lower hand */
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
// clang-format off
|
|
||||||
[LAYER_DEFAULT] = LAYOUT(
|
|
||||||
KC_MPLY, KC_VOLU, KY_RHAND,
|
|
||||||
KY_LOCK, KC_VOLD, KY_MICU,
|
|
||||||
LY_FN1, KC_MUTE, KY_MICM
|
|
||||||
),
|
|
||||||
[LAYER_FUNCTION_1] = LAYOUT(
|
|
||||||
EE_CLR, _______, QK_BOOT,
|
|
||||||
_______, _______, _______,
|
|
||||||
_______, _______, _______
|
|
||||||
),
|
|
||||||
// clang-format on
|
|
||||||
};
|
|
@ -1,5 +0,0 @@
|
|||||||
# bcat's 9-Key layout
|
|
||||||
|
|
||||||
This is a super simple PCB-mount macropad with nine keys, used on my
|
|
||||||
work-from-home Chromebox for media/volume control and to activate some global
|
|
||||||
shortcuts for Google Meet.
|
|
@ -1,19 +0,0 @@
|
|||||||
// Copyright 2021 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
|
|
||||||
) \
|
|
||||||
LAYOUT( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
K33, K34, K35, K36 \
|
|
||||||
)
|
|
@ -1,4 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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/>.
|
|
@ -1,4 +0,0 @@
|
|||||||
# Copyright 2021 Manna Harbour
|
|
||||||
# https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
MIRYOKU_KLUDGE_THUMBCOMBOS=yes
|
|
@ -1,126 +0,0 @@
|
|||||||
# AJP10304 Custom Shark Layout
|
|
||||||
# Also available for the Planck, Quark, JJ40 and Atreus50
|
|
||||||
|
|
||||||
**Note:** In the tables below where there are two characters on a key,
|
|
||||||
the second is the output when shift is applied.
|
|
||||||
|
|
||||||
**Note:** The below tables assume a UK layout.
|
|
||||||
|
|
||||||
#### Flashing
|
|
||||||
Refer to the README.md of the keyboard you want to flash.
|
|
||||||
|
|
||||||
##### Main Qwerty Layer
|
|
||||||
|
|
||||||
* Tab: when held, operates as shift.
|
|
||||||
* Enter: when held, operates as shift.
|
|
||||||
* MENU: perform right-click
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:|
|
|
||||||
| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
|
|
||||||
| Tab | A | S | D | F | G | H | J | K | L | ;: | Enter|
|
|
||||||
| Shft | Z | X | C | V | B | N | M | ,< | .> | /? | Shft |
|
|
||||||
| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
|
|
||||||
|
|
||||||
##### Main Colemak-DHm Layer
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| ---- |:----:| :---:|:---:|:-----:|:----:|:-----:|:-----:|:-----:|:----:|:----:| ----:|
|
|
||||||
| Esc | Q | W | F | P | B | J | L | U | Y | ;: | Bksp |
|
|
||||||
| Tab | A | R | S | T | G | M | N | E | I | O | Enter|
|
|
||||||
| Shft | Z | X | C | D | V | K | H | ,< | .> | /? | Shft |
|
|
||||||
| Fn | Ctrl | Alt | GUI | Lower | Bksp | Space | Raise | Shift | MENU | Ctrl | Fn2 |
|
|
||||||
|
|
||||||
##### Function Layer
|
|
||||||
Activated when `fn` held in the above `qwerty` layer.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
|
||||||
| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
|
||||||
| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
|
|
||||||
| Shift | \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
|
|
||||||
| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn2 |
|
|
||||||
|
|
||||||
##### Lower Layer
|
|
||||||
Activated when `Lower` is held in the above `qwerty` layer.
|
|
||||||
|
|
||||||
* Numbers are along the top row, their shifted counterparts are on row 2.
|
|
||||||
* WrdBks: `backspace` with `ctrl` applied. I.e. delete a word.
|
|
||||||
* WrdDel: `delete` with `ctrl` applied. I.e. forward delete a word.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
|
||||||
| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | DEL | Bksp |
|
|
||||||
| ! | " | £ | $ | % | ^ | & | * | ( | ) |WrdDel|WrdBks|
|
|
||||||
| Shift | \| | `¬ | #~ | '@ | -_ | =+ | #~ | [{ | ]} | '@ |Shift |
|
|
||||||
| | | | |Lower | Del |Space | | Next | Vol- | Vol+ | Play |
|
|
||||||
|
|
||||||
##### Raise Layer
|
|
||||||
Activated when `Raise` is held in the above `qwerty` layer.
|
|
||||||
|
|
||||||
* Preferred layer for typing brackets.
|
|
||||||
* Allows for cursor navigation to be used solely with the right hand.
|
|
||||||
* WRDSEL: Select the word where the cursor is.
|
|
||||||
* |< and >|: Apply `ctrl` to `left` and `right` respectively for word jumping.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: |:----:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
|
|
||||||
| ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
|
|
||||||
| ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
|
|
||||||
| | | | { | } | ||<| LEFT | DOWN |RIGHT |>||ZOOM -|
|
|
||||||
| Mouse | | | | | Alt | Enter |Raise | | | | |
|
|
||||||
|
|
||||||
##### Lower + Raise
|
|
||||||
Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
|
|
||||||
|
|
||||||
* Audio controls in the same position as cursor keys from the `Raise` layer.
|
|
||||||
* ????: Runs a macro for outputting a text string. Do not use this store passwords.
|
|
||||||
* Reset: Enter bootloader for flashing firmware to the keyboard.
|
|
||||||
* CAPS: Toggle caps lock.
|
|
||||||
* Macro functions: Allows recording of macros. To start recording the macro, press either REC1 or REC2.
|
|
||||||
To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
|
|
||||||
* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
|
|
||||||
MRSE with RAISE, MFNC with FUNC and MFNC2 with FUNC2 respectively.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|:-------:|
|
|
||||||
| ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
|
|
||||||
| CAPS | | | | | PLAY1|PLAY2 | Mute | Vol+ | Play | | Qwerty |
|
|
||||||
| MAC | | | | | STOP1|STOP2 | Prev | Vol- | Next | | Colemak |
|
|
||||||
| | | | | | | | | DYN | | | |
|
|
||||||
|
|
||||||
##### Function 2 Layer
|
|
||||||
Activated when `fn` held in the above `qwerty` layer.
|
|
||||||
* WRDSEL: Select the word where the cursor is.
|
|
||||||
* LNDEL: Delete the line where the cursor is.
|
|
||||||
* LNSEL: Select the line where the cursor is.
|
|
||||||
* DUP: Duplicate the selected text.
|
|
||||||
* LNJOIN: Join the line where the cursor is with the following line.
|
|
||||||
* MODE: Print either `PC` or `OSX` depending on what layer mode is active.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
|
||||||
| | |WRDSEL| | | | LNDEL| | | | | |
|
|
||||||
| | | LNSEL| DUP | | | | |LNJOIN| | | |
|
|
||||||
| | UNDO | CUT | COPY | PASTE| | | | | | | MODE |
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
|
|
||||||
##### Mouse Layer
|
|
||||||
Activated when `fn` and `raise` held together.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
|
||||||
| ESC | | | | | | W_L | W_UP | BTN3 | W_DWN| W_R | |
|
|
||||||
| ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
|
|
||||||
| ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN | RIGHT| | |
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
|
|
||||||
##### Number Pad Layout
|
|
||||||
Activated when holding `Esc` key.
|
|
||||||
|
|
||||||
| | | | | | | | | | | | |
|
|
||||||
| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
|
|
||||||
| | | | | | |NMLOCK| 7 | 8 | 9 | / | |
|
|
||||||
| | | | | | | | 4 | 5 | 6 | * | |
|
|
||||||
| | | | | | | | 1 | 2 | 3 | + | |
|
|
||||||
| | | | | | | | 0 | . | , | - | |
|
|
@ -1,7 +0,0 @@
|
|||||||
// Copyright 2023 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
|
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64
|
|
||||||
#define TAPPING_TERM 499
|
|
@ -1,100 +0,0 @@
|
|||||||
// Copyright 2023 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
|
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
#include "drashna.h"
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
LT(1,KC_MUTE),
|
|
||||||
KC_ENT, KC_0, KC_BSPC,
|
|
||||||
KC_7, KC_8, KC_9,
|
|
||||||
KC_4, KC_5, KC_6,
|
|
||||||
KC_1, KC_2, KC_3
|
|
||||||
),
|
|
||||||
[1] = LAYOUT(
|
|
||||||
_______,
|
|
||||||
CK_TOGG, AU_TOGG, _______,
|
|
||||||
_______, _______, _______,
|
|
||||||
_______, _______, _______,
|
|
||||||
_______, _______, _______
|
|
||||||
),
|
|
||||||
};
|
|
||||||
// clang-format on
|
|
||||||
|
|
||||||
#ifdef ENCODER_MAP_ENABLE
|
|
||||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
|
||||||
[0] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
|
||||||
[1] = {ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)},
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void render_oled_title(bool side) {
|
|
||||||
oled_write_P(PSTR(" Macropad "), true);
|
|
||||||
}
|
|
||||||
|
|
||||||
void render_rgb_mode(uint8_t col, uint8_t line);
|
|
||||||
|
|
||||||
void l_render_keylock_status(led_t led_usb_state, uint8_t col, uint8_t line) {
|
|
||||||
oled_set_cursor(col, line);
|
|
||||||
#ifdef CAPS_WORD_ENABLE
|
|
||||||
led_usb_state.caps_lock |= is_caps_word_on();
|
|
||||||
#endif
|
|
||||||
oled_write_P(PSTR(OLED_RENDER_LOCK_NUML), led_usb_state.num_lock);
|
|
||||||
oled_write_P(PSTR(" "), false);
|
|
||||||
oled_write_P(PSTR(OLED_RENDER_LOCK_CAPS), led_usb_state.caps_lock);
|
|
||||||
oled_write_P(PSTR(" "), false);
|
|
||||||
oled_write_P(PSTR(OLED_RENDER_LOCK_SCLK), led_usb_state.scroll_lock);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool oled_task_keymap(void) {
|
|
||||||
oled_write_raw_P(header_image, sizeof(header_image));
|
|
||||||
oled_set_cursor(0, 1);
|
|
||||||
oled_write_raw_P(row_2_image, sizeof(row_2_image));
|
|
||||||
oled_set_cursor(4, 0);
|
|
||||||
render_oled_title(false);
|
|
||||||
|
|
||||||
render_kitty(0, 2);
|
|
||||||
render_matrix_scan_rate(1, 7, 2);
|
|
||||||
|
|
||||||
#ifdef AUDIO_ENABLE
|
|
||||||
oled_set_cursor(7, 4);
|
|
||||||
bool l_is_audio_on = is_audio_on();
|
|
||||||
|
|
||||||
static const char PROGMEM audio_status[2][3] = {{0xE0, 0xE1, 0}, {0xE2, 0xE3, 0}};
|
|
||||||
oled_write_P(audio_status[l_is_audio_on], false);
|
|
||||||
|
|
||||||
# ifdef AUDIO_CLICKY
|
|
||||||
bool l_is_clicky_on = is_clicky_on();
|
|
||||||
static const char PROGMEM audio_clicky_status[2][3] = {{0xF4, 0xF5, 0}, {0xF6, 0xF7, 0}};
|
|
||||||
oled_write_P(audio_clicky_status[l_is_clicky_on && l_is_audio_on], false);
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static const char PROGMEM cat_mode[3] = {0xF8, 0xF9, 0};
|
|
||||||
oled_write_P(cat_mode, get_keyboard_lock());
|
|
||||||
|
|
||||||
#ifdef RGB_MATIRX_ENABLE
|
|
||||||
static const char PROGMEM rgb_layer_status[2][3] = {{0xEE, 0xEF, 0}, {0xF0, 0xF1, 0}};
|
|
||||||
oled_write_P(rgb_layer_status[rgb_matrix_is_enabled()], false);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAPTIC_ENABLE
|
|
||||||
static const char PROGMEM nukem_good[2] = {0xFA, 0};
|
|
||||||
oled_write_P(haptic_get_enable() ? nukem_good : PSTR(" "), false);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
l_render_keylock_status(host_keyboard_led_state(), 7, 5);
|
|
||||||
render_rgb_mode(1, 6);
|
|
||||||
|
|
||||||
for (uint8_t i = 1; i < 7; i++) {
|
|
||||||
oled_set_cursor(0, i);
|
|
||||||
oled_write_raw_P(display_border, sizeof(display_border));
|
|
||||||
oled_set_cursor(21, i);
|
|
||||||
oled_write_raw_P(display_border, sizeof(display_border));
|
|
||||||
}
|
|
||||||
oled_set_cursor(0, 7);
|
|
||||||
oled_write_raw_P(footer_image, sizeof(footer_image));
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
ENCODER_MAP_ENABLE = yes
|
|
||||||
DEBUG_MATRIX_SCAN_RATE_ENABLE = api
|
|
||||||
WPM_ENABLE = yes
|
|
@ -1,98 +0,0 @@
|
|||||||
// Copyright 2023 Peter.Falken (@PeterFalken)
|
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
#include "peterfalken.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
KC_MUTE,
|
|
||||||
KC_7, KC_8, KC_9,
|
|
||||||
KC_4, KC_5, KC_6,
|
|
||||||
KC_1, KC_2, KC_3,
|
|
||||||
KC_ENT, KC_0, KC_BSPC
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef ENCODER_MAP_ENABLE
|
|
||||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
|
||||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef OLED_ENABLE
|
|
||||||
static void render_qmk_logo(void) {
|
|
||||||
static const char PROGMEM qmk_logo[] = {
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x3f, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
|
|
||||||
0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x03, 0x83, 0x83, 0x83, 0x83, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe,
|
|
||||||
0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x83, 0x83, 0x83, 0x83, 0x03,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x81, 0x83, 0x83, 0x83, 0x83, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
|
|
||||||
0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x83, 0x83, 0x83, 0x83, 0x81,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x01, 0x07, 0x1f, 0x3f, 0x7f, 0x7e, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff,
|
|
||||||
0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0x7e, 0x7f, 0x3f, 0x1f, 0x07, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0xc0, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0xff, 0xff,
|
|
||||||
0xff, 0xff, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc0,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfc, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
|
|
||||||
0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
||||||
};
|
|
||||||
|
|
||||||
oled_write_raw_P(qmk_logo, sizeof(qmk_logo));
|
|
||||||
}
|
|
||||||
|
|
||||||
bool oled_task_user(void) {
|
|
||||||
render_qmk_logo();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
#endif // OLED_ENABLE
|
|
@ -1,3 +0,0 @@
|
|||||||
# Setup QMK features
|
|
||||||
ENCODER_MAP_ENABLE = yes
|
|
||||||
RGB_MATRIX_ENABLE = no # Disable RGB key matrix
|
|
@ -1,23 +0,0 @@
|
|||||||
// Copyright 2022 ZyBeR (@ZyberSE)
|
|
||||||
// SPDX-License-Identifier: GPL-2.0
|
|
||||||
|
|
||||||
#include "zyber.h"
|
|
||||||
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT( /* Base */
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, TD(SSHT), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_PGUP,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_PGDN,
|
|
||||||
L1_EXPL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_DEL,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, MO(1),
|
|
||||||
KC_LCTL, ROPT_SRH,KC_LCMD, _______, LCMD_T(KC_SPC), _______, ROPT_SRH, KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT
|
|
||||||
),
|
|
||||||
[1] = LAYOUT( /* FN */
|
|
||||||
QK_BOOT, 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, KC_DEL, KC_PAUS,
|
|
||||||
C_BLK, _______, KC_UP, _______, _______, _______, KC_NUM, KC_P7, KC_P8, KC_P9, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_SCRL,
|
|
||||||
_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_VOLD, KC_VOLU, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______,
|
|
||||||
_______, KC_RCTL, KC_RGUI, KC_RALT, _______, _______, KC_P0, KC_P1, KC_P2, KC_P3, _______, _______, KC_PGUP, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
enum layer_names {
|
|
||||||
HOME,
|
|
||||||
MODS,
|
|
||||||
MODS2,
|
|
||||||
OTHER,
|
|
||||||
};
|
|
||||||
|
|
||||||
enum custom_keycodes {
|
|
||||||
MACRO1 = SAFE_RANGE
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
if (record->event.pressed) {
|
|
||||||
switch (keycode) {
|
|
||||||
case MACRO1:
|
|
||||||
SEND_STRING("I'm so sorry... -PyroL");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[HOME] = LAYOUT(
|
|
||||||
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, MT(MOD_LCTL,KC_P),
|
|
||||||
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MT(MOD_LSFT,KC_ENT),
|
|
||||||
KC_Z, KC_X, KC_C, LT(MODS2,KC_V), LT(MODS, KC_SPC), LT(OTHER,KC_B), KC_N, KC_M),
|
|
||||||
|
|
||||||
[MODS] = LAYOUT(
|
|
||||||
KC_TAB, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_BSPC,
|
|
||||||
KC_LSFT, KC_ESC, _______, KC_SCLN, KC_QUOT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, _______, _______, KC_COMM, KC_DOT, KC_SLSH),
|
|
||||||
|
|
||||||
[MODS2] = LAYOUT(
|
|
||||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
|
|
||||||
KC_LSFT, KC_ESC, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, _______,
|
|
||||||
RGB_VAI, RGB_VAD, RGB_HUI, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU),
|
|
||||||
|
|
||||||
[OTHER] = LAYOUT(
|
|
||||||
KC_ESC, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
|
|
||||||
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_NO, KC_NO, KC_NO),
|
|
||||||
};
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
}
|
|
@ -1,26 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
#include "mechmerlin.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* 0: qwerty */
|
|
||||||
[_BL] = LAYOUT_infinity(
|
|
||||||
QK_GESC, 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_BSLS, 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_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(_AL),
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FL), KC_RALT, KC_RGUI, KC_RCTL),
|
|
||||||
|
|
||||||
[_FL] = LAYOUT_infinity(
|
|
||||||
KC_GRV, 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_DEL,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
|
||||||
|
|
||||||
[_AL] = LAYOUT_infinity(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RSFT_T(KC_UP), KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT),
|
|
||||||
};
|
|
@ -1,10 +0,0 @@
|
|||||||
# MechMerlin Alps64 Infinity Keymap
|
|
||||||
|
|
||||||
This is the 60% infinity layout used by u/merlin36, host of the [MechMerlin](www.youtube.com/mechmerlin)
|
|
||||||
YouTube channel.
|
|
||||||
|
|
||||||
## Keymap Notes
|
|
||||||
- `Caps Lock` can be held to act as a `Left Control`
|
|
||||||
|
|
||||||
### Build
|
|
||||||
To build the firmware file associated with this keymap, simply run `make alps64:mechmerlin`.
|
|
@ -1,33 +0,0 @@
|
|||||||
// Copyright 2022 ZyBeR (@ZyberSE)
|
|
||||||
// SPDX-License-Identifier: GPL-2.0
|
|
||||||
|
|
||||||
#include "zyber.h"
|
|
||||||
|
|
||||||
enum keyboard_layers {
|
|
||||||
_BL = 0,
|
|
||||||
_FL
|
|
||||||
};
|
|
||||||
|
|
||||||
// Custom #defined keycodes (shorter macros for readability)
|
|
||||||
#define KC_CTES CTL_T(KC_ESC)
|
|
||||||
#define KC_RSUP RSFT_T(KC_UP)
|
|
||||||
#define KC_FNDN LT(_FL, KC_DOWN)
|
|
||||||
#define KC_RGLT RCMD_T(KC_LEFT)
|
|
||||||
#define KC_RCRT RCTL_T(KC_RIGHT)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_BL] = LAYOUT_aek_103(
|
|
||||||
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, TD(LBRC), KC_RBRC, KC_BSLS,
|
|
||||||
CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSUP,
|
|
||||||
MO(_FL), KC_LALT, KC_LGUI, KC_SPC, KC_RGLT, KC_FNDN, KC_RCRT
|
|
||||||
),
|
|
||||||
[_FL] = LAYOUT_aek_103(
|
|
||||||
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,
|
|
||||||
_______, KC_HOME, KC_UP, KC_END, _______, _______, _______, _______, KC_MUTE, _______, _______, KC_PGDN, KC_PGUP, _______,
|
|
||||||
_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_SCRL, KC_VOLD, KC_VOLU, KC_PAUS, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, QK_BOOT, _______, _______, _______
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,50 +0,0 @@
|
|||||||
/* Copyright 2021 Stanrc85
|
|
||||||
*
|
|
||||||
* 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 "stanrc85.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_QWERTY] = LAYOUT(
|
|
||||||
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_BSPC, KC_PGUP,
|
|
||||||
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_PGDN,
|
|
||||||
KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, MO(_FN2_60),
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
|
|
||||||
KC_LCTL, KC_LALT, LT_BPCF, KC_LGUI, LT_SPCF, TD_TWIN, KC_LEFT, KC_DOWN, KC_RGHT
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT] = LAYOUT(
|
|
||||||
QK_GESC, 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_BSLS, KC_GRV, KC_PGUP,
|
|
||||||
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_BSPC, KC_PGDN,
|
|
||||||
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, MO(_FN2_60),
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
|
|
||||||
KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT
|
|
||||||
),
|
|
||||||
|
|
||||||
[_FN1_60] = LAYOUT(
|
|
||||||
KC_TILD, 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, KC_DEL, _______,
|
|
||||||
_______, _______, CA_QUOT, _______, CA_SCLN, KC_VOLU, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PSCR, _______, _______, KC_INS, _______,
|
|
||||||
KC_CAPS, _______, _______, KC_LCTL, KC_LSFT, KC_VOLD, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______,
|
|
||||||
_______, KC_RDP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_FN2_60] = LAYOUT(
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, TG(_DEFAULT)
|
|
||||||
)
|
|
||||||
};
|
|
@ -1 +0,0 @@
|
|||||||
USER_NAME := stanrc85
|
|
@ -1,21 +0,0 @@
|
|||||||
Overview
|
|
||||||
========
|
|
||||||
|
|
||||||
This is a dvorak based layout for the Atreus. Its basic key layout is similar to the ergodox_ez "dvorak_42_key" layout. In fact this layout was created for seamless switching between the Ergodox EZ and Atreus.
|
|
||||||
|
|
||||||
How to build and flash
|
|
||||||
----------------------
|
|
||||||
|
|
||||||
to build;
|
|
||||||
make atreus:dvorak_42_key
|
|
||||||
|
|
||||||
to flash:
|
|
||||||
avrdude -p atmega32u4 -c avr109 -U flash:w:atreus_dvorak_42_key.hex -P COM7
|
|
||||||
|
|
||||||
Layers
|
|
||||||
------
|
|
||||||
* BASE: basic dvorak layout
|
|
||||||
* KEYNAV: arrow-key navigation. Momentary toggle held by thumb allows the right hand to navigate through text as well as copy/paste/cut, page up/page down
|
|
||||||
* KEYSEL: similar to KEYNAV, except for shift-selection
|
|
||||||
* COMBINED: this is a layer that combines numbers, brackets and special characters. !@#$%^&*( can be type by shift+COMBINED+1/2/3/etc..
|
|
||||||
* MOUSE: mouse navigation, as well as browser tab-left/tab-right shortcuts
|
|
@ -1,15 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
// place overrides here
|
|
||||||
|
|
||||||
// mouse speed
|
|
||||||
|
|
||||||
#define MOUSEKEY_INTERVAL 15
|
|
||||||
#define MOUSEKEY_DELAY 100
|
|
||||||
#define MOUSEKEY_TIME_TO_MAX 100
|
|
||||||
#define MOUSEKEY_MAX_SPEED 3
|
|
||||||
|
|
||||||
#define MOUSEKEY_WHEEL_DELAY 500
|
|
||||||
#define MOUSEKEY_WHEEL_DELTA 1
|
|
||||||
#define MOUSEKEY_WHEEL_MAX_SPEED 1
|
|
||||||
#define MOUSEKEY_WHEEL_TIME_TO_MAX 100
|
|
@ -1,167 +0,0 @@
|
|||||||
|
|
||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
// layers
|
|
||||||
#define BASE 0
|
|
||||||
#define KEYNAV 1
|
|
||||||
#define KEYSEL 2
|
|
||||||
#define COMBINED 3
|
|
||||||
#define BROWSER_CONTROL 4
|
|
||||||
|
|
||||||
// aliases
|
|
||||||
// shell
|
|
||||||
#define SHELL_DEL_WORD RCTL(KC_W)
|
|
||||||
|
|
||||||
// comment out to use android studio macros instead
|
|
||||||
#define USE_VSCODE_MACROS
|
|
||||||
|
|
||||||
// android studio shortcuts
|
|
||||||
#define AS_TABLEFT LALT(KC_LEFT)
|
|
||||||
#define AS_TABRIGHT LALT(KC_RIGHT)
|
|
||||||
#define AS_SYMBOL LCTL(LALT(KC_N))
|
|
||||||
#define AS_CLASS LCTL(KC_N)
|
|
||||||
#define AS_FINDUSAGE LALT(KC_F7)
|
|
||||||
#define AS_BACK LCTL(LALT(KC_LEFT))
|
|
||||||
#define AS_GO_DECLARATION LCTL(KC_B)
|
|
||||||
#define AS_GO_IMPLEMENTATION LCTL(LALT(KC_B))
|
|
||||||
#define AS_CLOSETAB LCTL(KC_F4)
|
|
||||||
#define AS_CLOSETOOLWINDOW LCTL(LSFT(KC_F4))
|
|
||||||
#define AS_ALTENTER LALT(KC_ENTER)
|
|
||||||
|
|
||||||
// visual studio code shortcuts
|
|
||||||
#define VS_FILE LCTL(KC_P)
|
|
||||||
#define VS_OPEN_FILE LCTL(KC_O)
|
|
||||||
#define VS_LINE LCTL(KC_G)
|
|
||||||
#define VS_SYMBOLEDITOR LCTL(LSFT(KC_O))
|
|
||||||
#define VS_DEFINITION MEH(KC_F5)
|
|
||||||
#define VS_IMPLEMENTATION MEH(KC_F6)
|
|
||||||
#define VS_REFERENCES MEH(KC_F7)
|
|
||||||
#define VS_BACK LALT(KC_LEFT)
|
|
||||||
#define VS_BRACKET LCTL(LSFT(KC_BSLS))
|
|
||||||
#define VS_TABLEFT MEH(KC_F1)
|
|
||||||
#define VS_TABRIGHT MEH(KC_F2)
|
|
||||||
#define VS_CLOSETAB MEH(KC_F3)
|
|
||||||
#define VS_CLOSEPANEL LCTL(LSFT(KC_W))
|
|
||||||
#define VS_GROUP_1 LCTL(KC_1)
|
|
||||||
#define VS_GROUP_2 LCTL(KC_2)
|
|
||||||
#define VS_TERMINAL LCTL(KC_GRAVE)
|
|
||||||
#define VS_BUILD LCTL(LSFT(KC_B))
|
|
||||||
#define VS_COMMANDS MEH(KC_F4)
|
|
||||||
#define VS_CMT_BLOCK LSFT(LALT(KC_A))
|
|
||||||
#define VS_CMT_LINE LCTL(KC_SLSH)
|
|
||||||
#define VS_DEL_LINE LCTL(LSFT(KC_K))
|
|
||||||
#define VS_COPYLINEDOWN LSFT(LALT(KC_DOWN))
|
|
||||||
// visual studio bookmark commands
|
|
||||||
#define VS_BM_LIST LCTL(LALT(KC_L))
|
|
||||||
#define VS_BM_LISTALL LCTL(LALT(KC_A))
|
|
||||||
#define VS_BM_PREV LCTL(LALT(KC_P))
|
|
||||||
#define VS_BM_NEXT LCTL(LALT(KC_N))
|
|
||||||
#define VS_BM_TOGGLE LCTL(LALT(KC_K))
|
|
||||||
#define VS_BM_CLEARALL LCTL(LALT(KC_C))
|
|
||||||
// visual studio code navigation shortcuts
|
|
||||||
#define VS_FOCUS_EDITOR MEH(KC_F8)
|
|
||||||
#define VS_FOCUS_TERMINAL MEH(KC_F9)
|
|
||||||
#define VS_TOGGLE_TERMINAL MEH(KC_F10)
|
|
||||||
#define VS_CLEAR_TERMINAL MEH(KC_F11)
|
|
||||||
#define VS_TERMINAL_PREV MEH(KC_F12)
|
|
||||||
#define VS_TERMINAL_NEXT MEH(KC_F13)
|
|
||||||
#define VS_TERMINAL_NEW MEH(KC_F14)
|
|
||||||
#define VS_TERMINAL_DETACH MEH(KC_F15)
|
|
||||||
#define VS_TERMINAL_RENAME MEH(KC_F16)
|
|
||||||
#define VS_JUMPY MEH(KC_F17)
|
|
||||||
|
|
||||||
/*
|
|
||||||
// VS code bookmark prev/next requires the following in vscode shortcuts config
|
|
||||||
{
|
|
||||||
"key": "ctrl+alt+p",
|
|
||||||
"command": "bookmarks.jumpToPrevious"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"key": "ctrl+alt+n",
|
|
||||||
"command": "bookmarks.jumpToNext"
|
|
||||||
},
|
|
||||||
*/
|
|
||||||
|
|
||||||
enum custom_keycodes {
|
|
||||||
PLACEHOLDER = SAFE_RANGE, // can always be here
|
|
||||||
|
|
||||||
// Windows 10 macros
|
|
||||||
W10_TASKVIEW,
|
|
||||||
W10_WORKSPACE_LEFT,
|
|
||||||
W10_WORKSPACE_RIGHT,
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
// building/flashing instructions:
|
|
||||||
// make atreus/astar:dvorak_42_key:flash
|
|
||||||
// or
|
|
||||||
// qmk compile -kb atreus -km dvorak_42_key
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[BASE] = LAYOUT(
|
|
||||||
KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L,
|
|
||||||
KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S,
|
|
||||||
KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z,
|
|
||||||
OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL), MO(COMBINED), MO(KEYNAV), KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_CAPS, OSM(MOD_LSFT)
|
|
||||||
),
|
|
||||||
|
|
||||||
#ifdef USE_VSCODE_MACROS
|
|
||||||
// use visual studio code macros on the KEYNAV layer
|
|
||||||
[KEYNAV] = LAYOUT(
|
|
||||||
KC_ESC, VS_DEFINITION, RCTL(KC_Z), RCTL(KC_S), MEH(KC_A), MEH(KC_B), KC_HOME, KC_UP, KC_END, KC_PGUP,
|
|
||||||
VS_BACK, VS_SYMBOLEDITOR, RSFT(KC_TAB), KC_TAB, SHELL_DEL_WORD, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT),
|
|
||||||
VS_LINE, VS_FILE, VS_TABLEFT, VS_TABRIGHT, VS_CLOSETAB, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDN,
|
|
||||||
VS_COMMANDS, VS_CMT_LINE, VS_BM_PREV, VS_BM_NEXT, VS_BM_TOGGLE, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE)
|
|
||||||
),
|
|
||||||
#else
|
|
||||||
// use android studio macros on the KEYNAV layer
|
|
||||||
[KEYNAV] = LAYOUT(
|
|
||||||
KC_ESC, AS_GO_IMPLEMENTATION, RCTL(KC_Z), RCTL(KC_S), MEH(KC_A), MEH(KC_B), KC_HOME, KC_UP, KC_END, KC_PGUP,
|
|
||||||
AS_BACK, AS_SYMBOL, RSFT(KC_TAB), KC_TAB, SHELL_DEL_WORD, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT),
|
|
||||||
AS_FINDUSAGE, AS_CLASS, AS_TABLEFT, AS_TABRIGHT, AS_CLOSETAB, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDN,
|
|
||||||
AS_CLOSETOOLWINDOW, AS_GO_DECLARATION, KC_TRNS, KC_TRNS, AS_ALTENTER, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE)
|
|
||||||
),
|
|
||||||
#endif
|
|
||||||
|
|
||||||
[KEYSEL] = LAYOUT(
|
|
||||||
MEH(KC_G), MEH(KC_H),MEH(KC_I), MEH(KC_J), MEH(KC_K), KC_TRNS, RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP),
|
|
||||||
MEH(KC_L), MEH(KC_M),MEH(KC_N), MEH(KC_O), MEH(KC_P), RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)),
|
|
||||||
MEH(KC_Q), MEH(KC_R),MEH(KC_S), MEH(KC_T), MEH(KC_U), KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), RSFT(KC_PGDN),
|
|
||||||
QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE)
|
|
||||||
),
|
|
||||||
|
|
||||||
[COMBINED] = LAYOUT(
|
|
||||||
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR,
|
|
||||||
KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_UNDS, KC_MINS, KC_4, KC_5, KC_6, KC_SLSH,
|
|
||||||
KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_AMPR, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES,
|
|
||||||
KC_TRNS, KC_TILD, KC_GRAVE, KC_CIRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_PIPE, KC_BSLS
|
|
||||||
),
|
|
||||||
|
|
||||||
[BROWSER_CONTROL] = LAYOUT(
|
|
||||||
MEH(KC_C), KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_UP, KC_PGUP, KC_PGDN, KC_MS_WH_UP, MEH(KC_9),
|
|
||||||
MEH(KC_D), KC_MS_L, KC_MS_D, KC_MS_R, MEH(KC_6), KC_DOWN, RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), KC_MS_WH_DOWN, LALT(KC_LEFT),
|
|
||||||
MEH(KC_E), W10_TASKVIEW, W10_WORKSPACE_LEFT, W10_WORKSPACE_RIGHT, MEH(KC_7), MEH(KC_8), RCTL(KC_1), RCTL(KC_9), KC_F6, KC_F5,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
if(record->event.pressed) {
|
|
||||||
switch (keycode) {
|
|
||||||
// windows 10 workspace shortcuts
|
|
||||||
case W10_TASKVIEW:
|
|
||||||
tap_code16(G(KC_TAB));
|
|
||||||
return true;
|
|
||||||
break;
|
|
||||||
case W10_WORKSPACE_LEFT:
|
|
||||||
tap_code16(G(C(KC_LEFT)));
|
|
||||||
return true;
|
|
||||||
break;
|
|
||||||
case W10_WORKSPACE_RIGHT:
|
|
||||||
tap_code16(G(C(KC_RIGHT)));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
@ -1,47 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
#include "ibnuda.h"
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
#define LAYOUT_atreus_base( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
|
|
||||||
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
|
|
||||||
KTA, KTB, KTC, KTD \
|
|
||||||
) \
|
|
||||||
LAYOUT_wrapper( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
|
|
||||||
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
|
|
||||||
___, ___, ___, ___, KTA, KTB, KTC, KTD, ___, ___, ___, ___ \
|
|
||||||
)
|
|
||||||
#define LAYOUT_atreus_base_wrapper(...) LAYOUT_atreus_base(__VA_ARGS__)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_BASE] = LAYOUT_atreus_base_wrapper(
|
|
||||||
________________DVORAK_L1_______________, ________________DVORAK_R1_______________,
|
|
||||||
________________DVORAK_L2_______________, ________________DVORAK_R2_______________,
|
|
||||||
________________DVORAK_L3_______________, ________________DVORAK_R3_______________,
|
|
||||||
LW_BSPC,SFT_ESC, ALT_ENT,RS_SPC
|
|
||||||
),
|
|
||||||
|
|
||||||
[_RAISE] = LAYOUT_atreus_base_wrapper(
|
|
||||||
________________RAISE_L1________________, ________________RAISE_R1________________,
|
|
||||||
________________RAISE_L2________________, ________________RAISE_R2________________,
|
|
||||||
________________RAISE_L3________________, ________________RAISE_R3________________,
|
|
||||||
ADDDD, _______, _______,_______
|
|
||||||
),
|
|
||||||
[_LOWER] = LAYOUT_atreus_base_wrapper(
|
|
||||||
________________LOWER_L1________________, ________________LOWER_R1________________,
|
|
||||||
________________LOWER_L2________________, ________________LOWER_R2________________,
|
|
||||||
________________LOWER_L3________________, ________________LOWER_R3________________,
|
|
||||||
_______,_______, _______,ADDDD
|
|
||||||
),
|
|
||||||
[_ADJUST] = LAYOUT_atreus_base_wrapper(
|
|
||||||
________________ADJUST_L1_______________, ________________ADJUST_R1_______________,
|
|
||||||
________________ADJUST_L2_______________, ________________ADJUST_R2_______________,
|
|
||||||
________________ADJUST_L3_______________, ________________ADJUST_R3_______________,
|
|
||||||
_______,_______, _______,_______
|
|
||||||
),
|
|
||||||
};
|
|
||||||
// clang-format on
|
|
@ -1 +0,0 @@
|
|||||||
LTO_ENABLE=yes
|
|
@ -1,21 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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
|
|
||||||
|
|
||||||
#define XXX KC_NO
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku(\
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
|
|
||||||
)\
|
|
||||||
LAYOUT(\
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
|
|
||||||
XXX, XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX, XXX\
|
|
||||||
)
|
|
@ -1,4 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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/>.
|
|
@ -1,13 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#undef MATRIX_ROWS
|
|
||||||
#define MATRIX_ROWS 8
|
|
||||||
|
|
||||||
#undef MATRIX_COLS
|
|
||||||
#define MATRIX_COLS 6
|
|
||||||
|
|
||||||
#undef MATRIX_ROW_PINS
|
|
||||||
#define MATRIX_ROW_PINS { A6, A7, A8, A15, B11, B12, A14, A13 }
|
|
||||||
|
|
||||||
#undef MATRIX_COL_PINS
|
|
||||||
#define MATRIX_COL_PINS { B5, B4, B3, B2, B1, B0 }
|
|
@ -1,153 +0,0 @@
|
|||||||
/* Copyright 2019 George Koenig
|
|
||||||
*
|
|
||||||
* 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 "ridingqwerty.h"
|
|
||||||
|
|
||||||
/* Atreus
|
|
||||||
┏━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┓ ┏━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┓
|
|
||||||
┃ Q │ W │ E │ R │ T ┃ ┃ Y │ U │ I │ O │ P ┃
|
|
||||||
┠────────┼────────┼────────┼────────┼────────┨ ┠────────┼────────┼────────┼────────┼────────┨
|
|
||||||
/┃ ¶ A │ S │ D │ F │ G ┃ ┃ H │ J │ K │ L │ 🔢 ; ┃
|
|
||||||
┠────────┼────────┼────────┼────────┼────────┞━━━━━━━━┳━━━━━━━━┞────────┼────────┼────────┼────────┼────────┨
|
|
||||||
/┃ ⇧ Z │ X │ C │ V │ B │ ┃ │ N │ M │ , │ 𝔽 . │ ⇧ / ┃
|
|
||||||
┠────────┼────────┼────────┼────────┼────────┤ ¶ ⎋ ┃ ❦ ⇥ ├────────┼────────┼────────┼────────┼────────┨
|
|
||||||
┃ ⎈ ⎋ │ ⌘ ⇥ │ ⎇ [ │ ⇧ ] │ 🔢 ⌫ │ ┃ │ ★ ␣ │ ⇧ - │ ⎇ = │ ⌘ ' │ ⎈ ↵ ┃
|
|
||||||
┗━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┻━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┛
|
|
||||||
MODS // LAYERS // MODS //
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define LAYOUT_atreus( \
|
|
||||||
K00, K01, K02, K03, K04, K40, K41, K42, K43, K44, \
|
|
||||||
K10, K11, K12, K13, K14, K50, K51, K52, K53, K54, \
|
|
||||||
K20, K21, K22, K23, K24, K60, K61, K62, K63, K64, \
|
|
||||||
K30, K31, K32, K33, K34, K35, K70, K71, K72, K73, K74, K75 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03, K04, KC_NO }, \
|
|
||||||
{ K10, K11, K12, K13, K14, KC_NO }, \
|
|
||||||
{ K20, K21, K22, K23, K24, KC_NO }, \
|
|
||||||
{ K30, K31, K32, K33, K34, K35 }, \
|
|
||||||
{ K44, K43, K42, K41, K40, KC_NO }, \
|
|
||||||
{ K54, K53, K52, K51, K50, KC_NO }, \
|
|
||||||
{ K64, K63, K62, K61, K60, KC_NO }, \
|
|
||||||
{ K75, K74, K73, K72, K71, K70 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
//#define ALPHA UP(UCM_LDEL, UCM_UDEL)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_QWERTY] = LAYOUT_atreus_wrapper( /* Qwerty */
|
|
||||||
________________ATREUS_L1__________________, ________________ATREUS_R1__________________,
|
|
||||||
________________ATREUS_L2__________________, ________________ATREUS_R2__________________,
|
|
||||||
________________ATREUS_L3__________________, ________________ATREUS_R3__________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
[_DVORAK] = LAYOUT_atreus_wrapper( /* Qwerty */
|
|
||||||
________________DVORAK_L1__________________, ________________DVORAK_R1__________________,
|
|
||||||
________________DVORAK_L2__________________, ________________DVORAK_R2__________________,
|
|
||||||
________________DVORAK_L3__________________, ________________DVORAK_R3__________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
[_COLEMAK] = LAYOUT_atreus_wrapper( /* Qwerty */
|
|
||||||
________________COLEMAK_L1_________________, ________________COLEMAK_R1_________________,
|
|
||||||
________________COLEMAK_L2_________________, ________________COLEMAK_R2_________________,
|
|
||||||
________________COLEMAK_L3_________________, ________________COLEMAK_R3_________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
//#if defined(UNICODEMAP_ENABLE)
|
|
||||||
//#ifdef UNICODE_H
|
|
||||||
#ifdef UNICODEMAP_ENABLE
|
|
||||||
[_GREEK] = LAYOUT_atreus_wrapper(
|
|
||||||
________________GREEK_L1___________________, ________________GREEK_R1___________________,
|
|
||||||
________________GREEK_L2___________________, ________________GREEK_R2___________________,
|
|
||||||
________________GREEK_L3___________________, ________________GREEK_R3___________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
[_RUSSIAN] = LAYOUT_atreus_wrapper(
|
|
||||||
________________CYRLC_L1___________________, ________________CYRLC_R1___________________,
|
|
||||||
________________CYRLC_L2___________________, ________________CYRLC_R2___________________,
|
|
||||||
________________CYRLC_L3___________________, ________________CYRLC_R3___________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________CYRLC_R4___________________
|
|
||||||
),
|
|
||||||
[_RUNES] = LAYOUT_atreus_wrapper(
|
|
||||||
________________FTHRK_L1___________________, ________________FTHRK_R1___________________,
|
|
||||||
________________FTHRK_L2___________________, ________________FTHRK_R2___________________,
|
|
||||||
________________FTHRK_L3___________________, ________________FTHRK_R3___________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
[_HIRA1] = LAYOUT_atreus_wrapper(
|
|
||||||
________________JIS1_L1____________________, ________________JIS1_R1____________________,
|
|
||||||
________________JIS1_L2____________________, ________________JIS1_R2____________________,
|
|
||||||
________________JIS1_L3____________________, ________________JIS1_R3____________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
[_HIRA2] = LAYOUT_atreus_wrapper(
|
|
||||||
________________JIS2_L1____________________, ________________JIS2_R1____________________,
|
|
||||||
________________JIS2_L2____________________, ________________JIS2_R2____________________,
|
|
||||||
________________JIS2_L3____________________, ________________JIS2_R3____________________,
|
|
||||||
________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
|
|
||||||
),
|
|
||||||
#endif
|
|
||||||
[_EDITOR] = LAYOUT_atreus_wrapper( /* ED_A, ED_ESC */
|
|
||||||
________________EDITOR_L1__________________, ________________EDITOR_R1__________________,
|
|
||||||
________________EDITOR_L2__________________, ________________EDITOR_R2__________________,
|
|
||||||
________________EDITOR_L3__________________, ________________EDITOR_R3__________________,
|
|
||||||
_______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_NUMBER] = LAYOUT_atreus_wrapper( /* NM_SCLN, NM_BSPC */
|
|
||||||
________________NUMROW_L1__________________, ________________NUMROW_R1__________________,
|
|
||||||
________________NUMROW_R1__________________, ________________NUMPAD_R2__________________,
|
|
||||||
___________________________________________, ________________NUMPAD_R3__________________,
|
|
||||||
___________________________________________, ________________, ________________NUMPAD_R4__________________
|
|
||||||
),
|
|
||||||
[_SYMBOL] = LAYOUT_atreus_wrapper( /* SM_SPC */
|
|
||||||
________________SYMROW_L1__________________, ________________SYMROW_R1__________________,
|
|
||||||
________________SYMROW_R1__________________, ________________SYMROW_R1__________________,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSLS,
|
|
||||||
KC_LBRC, _______, _______, _______, _______, ________________, _______, _______, _______, _______, KC_RBRC
|
|
||||||
),
|
|
||||||
[_F_KEYS] = LAYOUT_atreus_wrapper( /* FK_DOT */
|
|
||||||
________________FKEYROW_L1_________________, ________________FKEYROW_R1_________________,
|
|
||||||
________________FKEYROW_R1_________________, ________________FKEYROW_L1_________________,
|
|
||||||
KC_F11, KC_F12, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_DEBUG] = LAYOUT_atreus_wrapper( /* shhhh... */
|
|
||||||
________________DEBUG_L1___________________, ________________DEBUG_R1___________________,
|
|
||||||
________________DEBUG_L2___________________, ________________DEBUG_R2___________________,
|
|
||||||
________________DEBUG_L3___________________, ________________DEBUG_R3___________________,
|
|
||||||
_______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_SECRET] = LAYOUT_atreus_wrapper( /* shhhh... */
|
|
||||||
/*
|
|
||||||
_______, _______, _______, RUSTY, FUEL, _______, _______, _______, _______, _______,
|
|
||||||
AR1ST, SYSNOC, _______, _______, _______, _______, _______, _______, OS_LAB, _______,
|
|
||||||
CDLOCAL, _______, C0RE, VAXIS, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
*/
|
|
||||||
________________SECRET_L1__________________, ________________SECRET_R1__________________,
|
|
||||||
________________SECRET_L2__________________, ________________SECRET_R2__________________,
|
|
||||||
________________SECRET_L3__________________, ________________SECRET_R3__________________,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
|
|
||||||
),
|
|
||||||
[_FINAL] = LAYOUT_atreus( /* . */
|
|
||||||
_______, _______, _______, _______, TESTING, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
)
|
|
||||||
};
|
|
@ -1 +0,0 @@
|
|||||||
This is a handwired Atreus42 using a Proton C
|
|
@ -1,22 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = STM32F303
|
|
||||||
BOARD = QMK_PROTON_C
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
BOOTLOADER = stm32-dfu
|
|
||||||
|
|
||||||
# Build Options
|
|
||||||
# comment out to disable the options.
|
|
||||||
#
|
|
||||||
BACKLIGHT_ENABLE = no
|
|
||||||
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
|
|
||||||
MOUSEKEY_ENABLE = no # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
NKRO_ENABLE = yes # USB Nkey Rollover
|
|
||||||
AUDIO_ENABLE = yes # Doot
|
|
||||||
RGBLIGHT_ENABLE = no
|
|
||||||
TAP_DANCE_ENABLE = no
|
|
||||||
UNICODE_ENABLE = no
|
|
||||||
UNICODEMAP_ENABLE = yes
|
|
@ -1,53 +0,0 @@
|
|||||||
/* Copyright 2020 Joseph Wasson
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
#define SPACE_COUNT 3
|
|
||||||
|
|
||||||
#define TEMPLATE_TKL( \
|
|
||||||
KESC, KF01, KF02, KF03, KF04, KF05, KF06, KF07, KF08, KF09, KF10, KF11, KF12, KSCL, KPRS, KADJ, \
|
|
||||||
KGRV, K_1 , K_2 , K_3 , K_4 , K_5 , K_6 , K_7 , K_8 , K_9 , K_0 , KMIN, KEQL, KBSP, KINS, KHOM, KPUP, \
|
|
||||||
KTAB, K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , KLBR, KRBR, KBLS, KDEL, KEND, LPDN, \
|
|
||||||
KCAP, K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, KQUO, KENT, \
|
|
||||||
KLSH, K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, KRSH, K_UP, \
|
|
||||||
KLCT, KLOS, KLAL, KSP3, KSP2, KSP1, KRAL, KROS, KRCT, KPTT, K_LT, K_DN, K_RT \
|
|
||||||
) LAYOUT( \
|
|
||||||
K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , \
|
|
||||||
K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, \
|
|
||||||
K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, \
|
|
||||||
KTAB, KLOS, KLAL, KLSH, KSP3, KSP2, KCAP, KSP1, KRSH, KBLS, KQUO, KADJ \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define TEMPLATE_NUM( \
|
|
||||||
KGRV, K_1 , K_2 , K_3 , K_4 , K_5 , K_6 , K_7 , K_8 , K_9 , K_0 , KMIN, KEQL, KBSL, KESC, \
|
|
||||||
KTAB, K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , KLBR, KRBR, KBSP, \
|
|
||||||
KCAP, K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, KQUO, KENT, \
|
|
||||||
KLSH, K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, KRSH, KADJ, \
|
|
||||||
KLCT, KLOS, KLAL, KSP3, KSP2, KSP1, KRAL, KROS, KRCT, KPTT \
|
|
||||||
) LAYOUT( \
|
|
||||||
K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , \
|
|
||||||
K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, \
|
|
||||||
K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, \
|
|
||||||
KTAB, KLOS, KLAL, KLSH, KSP3, KSP2, KCAP, KSP1, KRAL, KROS, KQUO, KADJ \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define TEMPLATE_RESET LAYOUT( \
|
|
||||||
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
|
||||||
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
|
|
||||||
)
|
|
@ -1 +0,0 @@
|
|||||||
// This space intentionally left blank
|
|
@ -1 +0,0 @@
|
|||||||
USER_NAME := talljoe
|
|
@ -1,196 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
#include "d4mation.h"
|
|
||||||
|
|
||||||
enum layer_names {
|
|
||||||
_DVR,
|
|
||||||
_QWR,
|
|
||||||
_LOWER,
|
|
||||||
_RAISE,
|
|
||||||
_NUM,
|
|
||||||
_ADJUST
|
|
||||||
};
|
|
||||||
|
|
||||||
enum keymap_custom_keycodes {
|
|
||||||
LOWER = NEW_SAFE_RANGE,
|
|
||||||
RAISE
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
/* Default/Dvorak layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | / |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Tab | ' | , | . | P | Y | | F | G | C | R | L | = |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Ctrl | A | O | E | U | I |,------.,------.| D | H | T | N | S | - |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* |Shift | ; | Q | J | K | X ||Super ||Enter || B | M | W | V | Z | \ |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | NUM | Alt | Home | End |Lower | Bksp |`------'`------'|Space |Raise | Left | Down | Up |Right |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_DVR] = LAYOUT(
|
|
||||||
_GRAVE_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH,
|
|
||||||
KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL,
|
|
||||||
KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
|
|
||||||
TD(SHIFT_CAPS), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_BSLS,
|
|
||||||
TG(_NUM), KC_RALT, KC_HOME, KC_END, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
|
|
||||||
),
|
|
||||||
|
|
||||||
/* Qwerty layer, more "standard" for other people who may need to use my keyboard or for games where using Qwerty is just easier
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Ctrl | A | S | D | F | G |,------.,------.| H | J | K | L | ; | ' |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* |Shift | Z | X | C | V | B ||Super ||Enter || N | M | , | . | / | = |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | NUM | Alt | Home | End |Lower | Bksp |`------'`------'|Space |Raise | Left | Down | Up |Right |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_QWR] = LAYOUT(
|
|
||||||
_GRAVE_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
|
|
||||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
|
||||||
TD(SHIFT_CAPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_EQL,
|
|
||||||
TG(_NUM), KC_RALT, KC_HOME, KC_END, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
|
|
||||||
),
|
|
||||||
|
|
||||||
/* "Lower" layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | | | |SLEEP | | | | | SCRGB| | | |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | | | | | |,------.,------.| | | | { | } | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | | | | | || || || | Mute | VolD | VolU | | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | |PageUp|PgDown| | Del |`------'`------'| Ins | | | | | |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_LOWER] = LAYOUT(
|
|
||||||
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
|
|
||||||
_______, _______, _______, _______, SLEEP, _______, _______, _______, SCRGB, _______, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
|
|
||||||
_______, _______, KC_PGUP, KC_PGDN, _______, KC_DEL, _______, _______, KC_INS, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
/* "Raise" layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | |<?php>| ?> | | | |ZALGO | | | | | |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | Shrug|Lenny |Magic |Disfac| |,------.,------.| | | | [ | ] | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | Ameno| Tflip| Tput | | || || || | Prev | Play | Next | | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | |PageUp|PgDown| | Del |`------'`------'| Ins | | | | | |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_RAISE] = LAYOUT(
|
|
||||||
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
|
|
||||||
_______, _______, PHPOPEN, PHPCLSE, _______, _______, ZALGO, _______, _______, _______, _______, _______,
|
|
||||||
_______, SHRUG, LENNY, MAGIC, DISFACE, _______, _______, _______, _______, KC_LBRC, KC_RBRC,_______,
|
|
||||||
_______, AMENO, TFLIP, TPUT, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______,
|
|
||||||
_______, _______, KC_PGUP, KC_PGDN, _______, KC_DEL, _______, _______, KC_INS, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
/* "Numpad" layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | | | / | * | - | | | | | / | * | - | |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | 7 | 8 | 9 | + | | | | 7 | 8 | 9 | + | |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | 4 | 5 | 6 | + | |,------.,------.| | 4 | 5 | 6 | + | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | 1 | 2 | 3 | Enter| || || || | 1 | 2 | 3 | Enter| |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | 0 | 0 | . | Enter| |`------'`------'| | 0 | 0 | . | Enter| |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_NUM] = LAYOUT(
|
|
||||||
_______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______, _______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______,
|
|
||||||
_______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, _______,
|
|
||||||
_______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______,
|
|
||||||
_______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______,
|
|
||||||
_______, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, _______, _______, _______, _______, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
/* "Adjust" layer, only active if both "Lower" and "Raise" are active at the same time
|
|
||||||
* All unused keys are blanked out for this layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | NO | NO | NO | NO | NO | NO | | NO | NO | NO | NO | NO | NO |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | NO |QK_BOOT | NO | NO | NO | NO | | NO | NO | NO | NO | NO | NO |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | NO | NO | NO |UC WIN|UC OSX| NO |,------.,------.| NO |Dvorak|Qwerty| NO | NO | NO |
|
|
||||||
* |------+------+------+------+------+------|| Swap || ||------+------+------+------+------+------|
|
|
||||||
* | NO | NO | NO | NO | NO | NO || to || Swap || NO | NO | NO | NO | NO | NO |
|
|
||||||
* |------+------+------+------+------+------|| Ctrl || Back ||------+------+------+------+------+------|
|
|
||||||
* | NO | NO | NO | NO | | NO |`------'`------'| NO | | NO | NO | NO | NO |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
[_ADJUST] = LAYOUT(
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
|
||||||
XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, UC_WIN, UC_MAC, XXXXXXX, XXXXXXX, DF(_DVR),DF(_QWR),XXXXXXX, XXXXXXX, XXXXXXX,
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, CG_SWAP, CG_NORM, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
|
|
||||||
),
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Runs just one time when the keyboard initializes. */
|
|
||||||
void eeconfig_init_keymap( void ) {
|
|
||||||
set_unicode_input_mode( UNICODE_MODE_MACOS );
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_keymap( uint16_t keycode, keyrecord_t *record ) {
|
|
||||||
|
|
||||||
switch ( keycode ) {
|
|
||||||
|
|
||||||
case LOWER:
|
|
||||||
|
|
||||||
if ( record->event.pressed ) {
|
|
||||||
layer_on( _LOWER );
|
|
||||||
update_tri_layer( _LOWER, _RAISE, _ADJUST );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
layer_off( _LOWER );
|
|
||||||
update_tri_layer( _LOWER, _RAISE, _ADJUST );
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case RAISE :
|
|
||||||
|
|
||||||
if ( record->event.pressed ) {
|
|
||||||
layer_on( _RAISE );
|
|
||||||
update_tri_layer( _LOWER, _RAISE, _ADJUST );
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
layer_off( _RAISE );
|
|
||||||
update_tri_layer( _LOWER, _RAISE, _ADJUST );
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
|
|
||||||
};
|
|
@ -1,40 +0,0 @@
|
|||||||
# d4mation's keymap for the Atreus62
|
|
||||||
|
|
||||||
This is a bit of a work in-progress, but for the most part I like what I have done here.
|
|
||||||
|
|
||||||
I switched to Dvorak some time ago and software-based support in most OS's for Dvorak isn't very great, so this keymap by default is set to Dvorak.
|
|
||||||
|
|
||||||
## Table of Contents
|
|
||||||
|
|
||||||
* [Layers](#layers)
|
|
||||||
- [Base layer](#base)
|
|
||||||
- [Num](#num)
|
|
||||||
- [Lower](#lower)
|
|
||||||
- [Raise](#raise)
|
|
||||||
- [Adjust](#adjust)
|
|
||||||
|
|
||||||
# Layers
|
|
||||||
|
|
||||||
## Base
|
|
||||||
|
|
||||||
* By default, this layer is Dvorak. But using the Adjust layer you can switch to Qwerty
|
|
||||||
* Double-tapping Shift enables and disables Caps Lock
|
|
||||||
* Quickly tapping the Grave accent key will output a Grave Accent, but holding it for 200ms will output the ESC key instead
|
|
||||||
|
|
||||||
## Num
|
|
||||||
|
|
||||||
This layer gets toggled off and on to place a numpad on both the left and right sides of the keyboard.
|
|
||||||
|
|
||||||
## Lower
|
|
||||||
|
|
||||||
This layer holds some handy shortcuts that I use often, like the screen grab shortcut and sleep shortcut in OS X.
|
|
||||||
|
|
||||||
It also has quick access to {} as they are inaccessible in the base layer
|
|
||||||
|
|
||||||
## Raise
|
|
||||||
|
|
||||||
Aside from quick access to [] and Play/Pause/Next/Previous, this layer is mostly just goofy things I decided to program into the keyboard because I could. There's a bunch of [kaomoji](https://en.wikipedia.org/wiki/Emoticon#Japanese_style_(kaomoji))/"unicode smileys" and I added a toggle switch to enable a [Zalgo Text](https://zalgo.org/) mode.
|
|
||||||
|
|
||||||
## Adjust
|
|
||||||
|
|
||||||
This layer is a "here be dragons" layer. It can only be accessed by holding down the keys for Lower and Raise at the same time. I added exclusively keys that drastically transformed the keyboard's layout or function on this layer. The ability to switch to Qwerty is on this layer, a way to switch CTRL and CMD back and forth is on this layer, and a hotkey to enter bootloader mode also exists.
|
|
@ -1,2 +0,0 @@
|
|||||||
UNICODE_ENABLE = yes
|
|
||||||
TAP_DANCE_ENABLE = yes
|
|
@ -1,4 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#define TAPPING_TERM 150
|
|
||||||
#define PERMISSIVE_HOLD
|
|
@ -1,67 +0,0 @@
|
|||||||
|
|
||||||
#include QMK_KEYBOARD_H
|
|
||||||
#include "hvp.c"
|
|
||||||
|
|
||||||
// Each layer gets a name for readability, which is then used in the keymap matrix below.
|
|
||||||
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
|
|
||||||
// Layer names don't all need to be of the same length, obviously, and you can also skip them
|
|
||||||
// entirely and just use numbers.
|
|
||||||
|
|
||||||
#define LT3_ESC LT(3, KC_ESC)
|
|
||||||
#define LT4_TAB LT(4, KC_TAB)
|
|
||||||
#define LT1_ENT LT(1, KC_ENTER)
|
|
||||||
#define LT2_BSP LT(2, KC_BSPC)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
LAYOUT( /* qwerty */
|
|
||||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC ,
|
|
||||||
LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
|
|
||||||
LT3_ESC, KC_A, KC_S, KC_D, LT(3,KC_F), LT(4,KC_G), KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2) ,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT ,
|
|
||||||
KC_LCTL, KC_APP, _______, KC_LGUI, KC_LALT,SFT_T(KC_SPC), LT2_BSP, LT1_ENT, SFT_T(KC_SPC), KC_LSFT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
|
||||||
),
|
|
||||||
|
|
||||||
LAYOUT( /* Right */
|
|
||||||
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_DEL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC ,
|
|
||||||
KC_DEL, _______, _______, _______, _______, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
_______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
|
|
||||||
),
|
|
||||||
|
|
||||||
LAYOUT(/* Left */
|
|
||||||
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_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_BSPC,
|
|
||||||
KC_DELETE, _______, _______, _______, _______, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
|
|
||||||
_______ , _______ , _______ , _______ , _______ , KC_LEFT_CURLY_BRACE , KC_RIGHT_CURLY_BRACE ,KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_TILD,
|
|
||||||
_______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , KC_HOME, KC_PGDN, KC_PGUP, KC_END
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
LAYOUT(/* 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
|
|
||||||
KC_NO, KC_NO, KC_NO, D_NAVI, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_NO ,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_NO, KC_NO ,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MSTP, KC_MPLY, KC_NO, KC_MUTE, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
LAYOUT(/* Tab */
|
|
||||||
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______ ,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______ ,
|
|
||||||
_______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, _______, _______ ,
|
|
||||||
KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
|
|
||||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
/*
|
|
||||||
[_TRNS] = LAYOUT(
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
*/
|
|
||||||
};
|
|
@ -1,10 +0,0 @@
|
|||||||
Keyboard: Atreus62
|
|
||||||
Keys: 62 keyed ortho staggered keyboard with a split layout and num row.
|
|
||||||
Layout: Swedish characters on main layer using tap dance. Built for Eurkey keyboard layout.
|
|
||||||
Flash instructions: Flash using avrdude, will req the hvp user space to compile.
|
|
||||||
|
|
||||||
> make make atreus62:hvp:avrdude
|
|
||||||
|
|
||||||
Links:
|
|
||||||
Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/atreus62
|
|
||||||
Eurkey layout - https://eurkey.steffen.bruentjen.eu/
|
|
@ -1 +0,0 @@
|
|||||||
TAP_DANCE_ENABLE = yes
|
|
@ -1,21 +0,0 @@
|
|||||||
/* Copyright 2018 Jarred Steenvoorden
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
// My hand wire diodes are in the opposite direction to the Atreus62 PCB
|
|
||||||
#undef DIODE_DIRECTION
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
@ -1,26 +0,0 @@
|
|||||||
/* Copyright 2018 Jarred Steenvoorden
|
|
||||||
*
|
|
||||||
* 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 "jarred.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_QW] = LAYOUT_atreus62_grid_wrapper(BLANK_12, QWERTY_1_12, QWERTY_2_12, QWERTY_3_12, QWERTY_L4, KC_NO, KC_NO, QWERTY_R4),
|
|
||||||
[_LW] = LAYOUT_atreus62_grid_wrapper(BLANK_12, LOWER_1_12 , LOWER_2_12 , LOWER_3_12 , LOWER_L4 , KC_NO, KC_NO, LOWER_R4 ),
|
|
||||||
[_NV] = LAYOUT_atreus62_grid_wrapper(BLANK_12, NAV_1_12 , NAV_2_12 , NAV_3_12 , NAV_L4 , KC_NO, KC_NO, NAV_R4 ),
|
|
||||||
[_NP] = LAYOUT_atreus62_grid_wrapper(BLANK_12, NUMPAD_1_12, NUMPAD_2_12, NUMPAD_3_12, NUMPAD_L4, KC_NO, KC_NO, NUMPAD_R4),
|
|
||||||
[_MS] = LAYOUT_atreus62_grid_wrapper(BLANK_12, MOUSE_1_12 , MOUSE_2_12 , MOUSE_3_12 , MOUSE_L4 , KC_NO, KC_NO, MOUSE_R4 )
|
|
||||||
};
|
|
@ -1,76 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
#define FN MO(_FN)
|
|
||||||
#define TODO KC_NO
|
|
||||||
|
|
||||||
enum atreus62_layers {
|
|
||||||
_DEFAULT,
|
|
||||||
_FN,
|
|
||||||
_RESET
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
/* Default layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Esc | A | S | D | F | G |,------.,------.| H | J | K | L | ; | " |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* |Shift | Z | X | C | V | B ||Delete||Enter || N | M | , | . | / |Shift |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | Ctrl | Win | Alt | ` | Fn | Bksp |`------'`------'|Space | Fn | | Alt | Win | Ctrl |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
[_DEFAULT] = LAYOUT( /* qwerty */
|
|
||||||
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
|
|
||||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
|
||||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_GRV, FN, KC_BSPC, KC_DEL, KC_ENT, KC_SPC, FN, TODO, KC_RALT, KC_RGUI, KC_RCTL
|
|
||||||
),
|
|
||||||
|
|
||||||
/* Function layer
|
|
||||||
* ,-----------------------------------------. ,-----------------------------------------.
|
|
||||||
* | | | | | | | | | F10 | F11 | F12 | | |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | | Home | Up | End | PgUp | | | PrSc | F7 | F8 | F9 | | |
|
|
||||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
|
||||||
* | Caps | Left | Down |Right | PgDn | |,------.,------.|Pause | F4 | F5 | F6 | | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | { | } | [ | ] | || || ||Insert| F1 | F2 | F3 | | |
|
|
||||||
* |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
|
|
||||||
* | | | | | | |`------'`------'| | | | | | |
|
|
||||||
* `-----------------------------------------' `-----------------------------------------'
|
|
||||||
*/
|
|
||||||
[_FN] = LAYOUT(
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, KC_F10, KC_F11, KC_F12, _______, TO(_RESET),
|
|
||||||
_______, KC_HOME, KC_UP, KC_END, KC_PGDN, _______, KC_PSCR, KC_F7, KC_F8, KC_F9, _______, _______,
|
|
||||||
_______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGUP, _______, KC_PAUS, KC_F4, KC_F5, KC_F6, _______, _______,
|
|
||||||
_______, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, _______, KC_INS, KC_F1, KC_F2, KC_F3, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This layer makes it possible to reset the firmware; don't get rid of it and make sure there is a way to activate it.
|
|
||||||
*/
|
|
||||||
[_RESET] = LAYOUT(
|
|
||||||
TO(_DEFAULT), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT
|
|
||||||
)
|
|
||||||
|
|
||||||
/*
|
|
||||||
[_TRNS] = LAYOUT(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
*/
|
|
||||||
};
|
|
@ -1,51 +0,0 @@
|
|||||||
/* Copyright 2017 Benjamin Kesselring
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
// place overrides here
|
|
||||||
#define AUTO_SHIFT_TIMEOUT 125
|
|
||||||
#define NO_AUTO_SHIFT_SPECIAL
|
|
||||||
#define NO_AUTO_SHIFT_NUMERIC
|
|
||||||
|
|
||||||
// require two taps for a TT layer switch (default 5)
|
|
||||||
#define TAPPING_TOGGLE 2
|
|
||||||
|
|
||||||
// Mouse control
|
|
||||||
// constant mode (velocity)
|
|
||||||
#define MK_3_SPEED
|
|
||||||
// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
|
|
||||||
|
|
||||||
// Cursor offset per movement (unmodified)
|
|
||||||
#define MK_C_OFFSET_UNMOD 20
|
|
||||||
// Time between cursor movements (unmodified)
|
|
||||||
#define MK_C_INTERVAL_UNMOD 1
|
|
||||||
/* #define MK_C_INTERVAL_UNMOD 16 */
|
|
||||||
|
|
||||||
// Cursor offset per movement (KC_ACL0)
|
|
||||||
#define MK_C_OFFSET_0 1
|
|
||||||
// Time between cursor movements (KC_ACL0)
|
|
||||||
#define MK_C_INTERVAL_0 10
|
|
||||||
|
|
||||||
// Cursor offset per movement (KC_ACL1)
|
|
||||||
#define MK_C_OFFSET_1 4
|
|
||||||
// Time between cursor movements (KC_ACL1)
|
|
||||||
#define MK_C_INTERVAL_1 16
|
|
||||||
|
|
||||||
// Cursor offset per movement (KC_ACL2)
|
|
||||||
#define MK_C_OFFSET_2 20
|
|
||||||
/* #define MK_C_OFFSET_2 32 */
|
|
||||||
// Time between cursor movements (KC_ACL2)
|
|
||||||
#define MK_C_INTERVAL_2 16
|
|
@ -1,43 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
#include "koy_keys_on_quertz_de_latin1.h"
|
|
||||||
// Layer shorthand
|
|
||||||
#define _1 0
|
|
||||||
#define _3 1
|
|
||||||
#define _4 2
|
|
||||||
#define _7 3
|
|
||||||
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
[_1] = LAYOUT(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
|
||||||
KC_TAB, KC_K, KC_DOT, KC_O, KC_COMM, N_Y, KC_V, KC_G, KC_C, KC_L, N_SS, N_Z,
|
|
||||||
MO(_3), KC_H, KC_A, KC_E, KC_I, KC_U, KC_D, KC_T, KC_R, KC_N, KC_S, KC_F,
|
|
||||||
KC_LSFT, KC_X, KC_Q, N_AE, N_UE, N_OE, KC_B, KC_P, KC_W, KC_M, KC_J, KC_RSFT,
|
|
||||||
KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_SPC, KC_ENTER, KC_RCTL, MO(_3), MO(_4), KC_TRNS, KC_TRNS, KC_CAPS, TT(_7)
|
|
||||||
),
|
|
||||||
|
|
||||||
[_3] = LAYOUT(
|
|
||||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSPC,
|
|
||||||
KC_TAB, N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC, N_EXKL, N_LT, N_GT, N_EQ, N_AMP, N_ACUT,
|
|
||||||
KC_TRNS, N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR, N_QUES, N_LPARN, N_RPARN, N_MINS, N_COLN, N_AT,
|
|
||||||
KC_LSFT, N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE, N_PLUS, N_PERC, N_QUOT, N_SING, N_SEMI, KC_RSFT,
|
|
||||||
KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_SPC, KC_ENTER, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
[_4] = LAYOUT(
|
|
||||||
KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC,
|
|
||||||
KC_TAB, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN, KC_KP_SLASH, KC_7, KC_8, KC_9, KC_KP_MINUS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_KP_ASTERISK, KC_4, KC_5, KC_6, KC_KP_PLUS, KC_TRNS,
|
|
||||||
KC_LSFT, KC_ESC, KC_TAB, KC_INS, KC_ENTER, N_UNDO, KC_KP_ENTER, KC_1, KC_2, KC_3, KC_KP_DOT, KC_RSFT,
|
|
||||||
KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_0, KC_ENTER, KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
[_7] = LAYOUT(
|
|
||||||
KC_ESC, KC_TRNS, KC_TRNS, KC_MS_BTN3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
|
|
||||||
KC_TAB, KC_MS_WH_UP, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_WH_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_MS_ACCEL0, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_LSFT, KC_MS_ACCEL1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_LCTL, KC_MS_ACCEL2, KC_TRNS, KC_LALT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,13 +0,0 @@
|
|||||||
# KOY Layout for the atreus62 pcb board
|
|
||||||
Compile the layout
|
|
||||||
```bash
|
|
||||||
qmk compile -kb atreus62 -km scheiklp
|
|
||||||
```
|
|
||||||
disable this service that interfers with the pro micro
|
|
||||||
```
|
|
||||||
sudo systemctl stop ModemManager.service
|
|
||||||
```
|
|
||||||
and flash it to the board
|
|
||||||
```bash
|
|
||||||
qmk flash -kb atreus62 -km scheiklp
|
|
||||||
```
|
|
@ -1,4 +0,0 @@
|
|||||||
AUTO_SHIFT_ENABLE = yes
|
|
||||||
CONSOLE_ENABLE = no
|
|
||||||
COMMAND_ENABLE = no
|
|
||||||
NKRO_ENABLE = yes
|
|
@ -210,15 +210,3 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
|
|||||||
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
||||||
void rgb_matrix_update_pwm_buffers(void);
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void shutdown_user(void) {
|
|
||||||
#ifdef RGBLIGHT_ENABLE
|
|
||||||
rgblight_enable_noeeprom();
|
|
||||||
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
|
||||||
rgblight_setrgb(RGB_RED);
|
|
||||||
#endif // RGBLIGHT_ENABLE
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
rgb_matrix_set_color_all(RGB_RED);
|
|
||||||
rgb_matrix_update_pwm_buffers();
|
|
||||||
#endif // RGB_MATRIX_ENABLE
|
|
||||||
}
|
|
||||||
|
@ -1,109 +0,0 @@
|
|||||||
/*
|
|
||||||
|
|
||||||
Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.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
|
|
||||||
|
|
||||||
#ifdef KEYBOARD_bastardkb_charybdis_3x5_blackpill
|
|
||||||
|
|
||||||
# undef MATRIX_ROW_PINS
|
|
||||||
# define MATRIX_ROW_PINS \
|
|
||||||
{ B12, B13, B14, B15 }
|
|
||||||
# undef MATRIX_COL_PINS
|
|
||||||
# define MATRIX_COL_PINS \
|
|
||||||
{ A15, B3, B4, B5, B6 }
|
|
||||||
|
|
||||||
# undef MATRIX_ROW_PINS_RIGHT
|
|
||||||
# define MATRIX_ROW_PINS_RIGHT \
|
|
||||||
{ B12, B13, B14, B15 }
|
|
||||||
# undef MATRIX_COL_PINS_RIGHT
|
|
||||||
# define MATRIX_COL_PINS_RIGHT \
|
|
||||||
{ A15, B3, B4, B5, B6 }
|
|
||||||
|
|
||||||
# define USB_VBUS_PIN B10
|
|
||||||
# undef SPLIT_HAND_PIN
|
|
||||||
# define SPLIT_HAND_PIN C14 // high = left, low = right
|
|
||||||
|
|
||||||
// WS2812 RGB LED strip input and number of LEDs
|
|
||||||
# undef WS2812_DI_PIN
|
|
||||||
# define WS2812_DI_PIN A1
|
|
||||||
# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150
|
|
||||||
# define WS2812_PWM_DRIVER PWMD2 // default: PWMD2
|
|
||||||
# define WS2812_PWM_CHANNEL 2 // default: 2
|
|
||||||
# define WS2812_PWM_PAL_MODE 1 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2
|
|
||||||
# define WS2812_EXTERNAL_PULLUP
|
|
||||||
//#define WS2812_PWM_COMPLEMENTARY_OUTPUT // Define for a complementary timer output (TIMx_CHyN); omit for a normal timer output (TIMx_CHy).
|
|
||||||
# undef WS2812_DMA_STREAM
|
|
||||||
# define WS2812_DMA_STREAM STM32_DMA1_STREAM7 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU.
|
|
||||||
# define WS2812_DMA_CHANNEL 3 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU.
|
|
||||||
# define WS2812_PWM_TARGET_PERIOD 800000
|
|
||||||
|
|
||||||
# define DEBUG_LED_PIN C13
|
|
||||||
|
|
||||||
/* Audio config */
|
|
||||||
# define AUDIO_PIN B1
|
|
||||||
# define AUDIO_PWM_DRIVER PWMD3
|
|
||||||
# define AUDIO_PWM_CHANNEL 4
|
|
||||||
# define AUDIO_PWM_PAL_MODE 2
|
|
||||||
|
|
||||||
/* serial.c configuration for split keyboard */
|
|
||||||
# undef SOFT_SERIAL_PIN
|
|
||||||
# define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode.
|
|
||||||
# undef SERIAL_USART_TX_PIN
|
|
||||||
# define SERIAL_USART_TX_PIN A2
|
|
||||||
# undef SERIAL_USART_RX_PIN
|
|
||||||
# define SERIAL_USART_RX_PIN A3
|
|
||||||
# define SERIAL_USART_DRIVER SD2
|
|
||||||
# define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
|
|
||||||
# define SERIAL_USART_RX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
|
|
||||||
# define SERIAL_USART_TIMEOUT 100 // USART driver timeout. default 100
|
|
||||||
# define SERIAL_USART_SPEED 921600
|
|
||||||
// #define SERIAL_USART_PIN_SWAP // swap RX and TX pins on master
|
|
||||||
// To use the highest possible baudrate (3.75Mbit/s) uncomment the following
|
|
||||||
// line, this can result in dropped communications so lower the speed if there
|
|
||||||
// are many timeouts.
|
|
||||||
// #define SERIAL_USART_SPEED (STM32_PCLK2 >> 4)
|
|
||||||
|
|
||||||
# define CRC8_USE_TABLE
|
|
||||||
# define CRC8_OPTIMIZE_SPEED
|
|
||||||
|
|
||||||
/* spi config for eeprom and pmw3360 sensor */
|
|
||||||
# define SPI_DRIVER SPID1
|
|
||||||
# define SPI_SCK_PIN A5
|
|
||||||
# define SPI_SCK_PAL_MODE 5
|
|
||||||
# define SPI_MOSI_PIN A7
|
|
||||||
# define SPI_MOSI_PAL_MODE 5
|
|
||||||
# define SPI_MISO_PIN A6
|
|
||||||
# define SPI_MISO_PAL_MODE 5
|
|
||||||
|
|
||||||
/* eeprom config */
|
|
||||||
# define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4
|
|
||||||
# define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 64
|
|
||||||
// #define EXTERNAL_EEPROM_BYTE_COUNT 8196
|
|
||||||
// #define EXTERNAL_EEPROM_PAGE_SIZE 32
|
|
||||||
// #define EXTERNAL_EEPROM_ADDRESS_SIZE 2
|
|
||||||
|
|
||||||
/* pmw3360 config */
|
|
||||||
# undef PMW33XX_CS_PIN
|
|
||||||
# define PMW33XX_CS_PIN B0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200
|
|
||||||
#define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 400
|
|
||||||
#define CHARYBDIS_MINIMUM_SNIPING_DPI 200
|
|
||||||
#define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 100
|
|
@ -1,27 +0,0 @@
|
|||||||
/* Copyright 2020 Nick Brassel (tzarc)
|
|
||||||
*
|
|
||||||
* 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 3 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 <https://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#if defined(KEYBOARD_bastardkb_charybdis_3x5_blackpill)
|
|
||||||
# define HAL_USE_PWM TRUE
|
|
||||||
# define HAL_USE_SERIAL TRUE
|
|
||||||
# define HAL_USE_I2C TRUE
|
|
||||||
# define HAL_USE_SPI TRUE
|
|
||||||
# define SPI_USE_WAIT TRUE
|
|
||||||
# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include_next <halconf.h>
|
|
@ -1,84 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
|
|
||||||
* Copyright 2021 Drashna Jael're @drashna
|
|
||||||
*
|
|
||||||
* 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 "drashna.h"
|
|
||||||
|
|
||||||
#define LAYOUT_charybdis_3x5_wrapper(...) LAYOUT_charybdis_3x5(__VA_ARGS__)
|
|
||||||
#define LAYOUT_charybdis_3x5_base( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
|
|
||||||
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
|
|
||||||
) \
|
|
||||||
LAYOUT_charybdis_3x5 ( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
ALT_T(K11), K12, K13, K14, GUI_T(K15), LGUI_T(K16), K17, K18, K19, LALT_T(K1A), \
|
|
||||||
CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), \
|
|
||||||
LSFT_T(KC_GRV), KC_SPC, BK_LWER, DL_RAIS, RSFT_T(KC_ENT) \
|
|
||||||
)
|
|
||||||
#define LAYOUT_charybdis_3x5_base_wrapper(...) LAYOUT_charybdis_3x5_base(__VA_ARGS__)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_1] = LAYOUT_charybdis_3x5_base_wrapper(
|
|
||||||
_________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
|
|
||||||
_________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
|
|
||||||
_________________QWERTY_L3_________________, _________________QWERTY_R3_________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_2] = LAYOUT_charybdis_3x5_base_wrapper(
|
|
||||||
______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
|
|
||||||
______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
|
|
||||||
______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
|
|
||||||
),
|
|
||||||
[_DEFAULT_LAYER_3] = LAYOUT_charybdis_3x5_base_wrapper(
|
|
||||||
_________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
|
|
||||||
_________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
|
|
||||||
_________________COLEMAK_L3________________, _________________COLEMAK_R3________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_4] = LAYOUT_charybdis_3x5_base_wrapper(
|
|
||||||
_________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
|
|
||||||
_________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
|
|
||||||
_________________DVORAK_L3_________________, _________________DVORAK_R3_________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_MOUSE] = LAYOUT_charybdis_3x5(
|
|
||||||
_______, _______, _______, _______, _______, KC_WH_U, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD,
|
|
||||||
_______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6,
|
|
||||||
_______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______,
|
|
||||||
_______, SNIPING, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_LOWER] = LAYOUT_charybdis_3x5_wrapper(
|
|
||||||
_________________LOWER_L1__________________, _________________LOWER_R1__________________,
|
|
||||||
_________________LOWER_L2__________________, _________________LOWER_R2__________________,
|
|
||||||
_________________LOWER_L3__________________, _________________LOWER_R3__________________,
|
|
||||||
_______, _______, _______, _______, AUTO_CTN
|
|
||||||
),
|
|
||||||
[_RAISE] = LAYOUT_charybdis_3x5_wrapper(
|
|
||||||
_________________RAISE_L1__________________, _________________RAISE_R1__________________,
|
|
||||||
_________________RAISE_L2__________________, _________________RAISE_R2__________________,
|
|
||||||
_________________RAISE_L3__________________, _________________RAISE_R3__________________,
|
|
||||||
QK_RBT, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_ADJUST] = LAYOUT_charybdis_3x5_wrapper(
|
|
||||||
_________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
|
|
||||||
_________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
|
|
||||||
_________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
|
|
||||||
EE_CLR, KC_NUKE, _______, _______, QK_BOOT
|
|
||||||
),
|
|
||||||
};
|
|
@ -1,44 +0,0 @@
|
|||||||
/* Copyright 2020 Nick Brassel (tzarc)
|
|
||||||
*
|
|
||||||
* 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 3 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 <https://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include_next <mcuconf.h>
|
|
||||||
|
|
||||||
#if defined(KEYBOARD_bastardkb_charybdis_3x5_blackpill)
|
|
||||||
# undef STM32_I2C_USE_I2C1
|
|
||||||
# define STM32_I2C_USE_I2C1 TRUE
|
|
||||||
|
|
||||||
// #undef STM32_I2C_I2C1_RX_DMA_STREAM
|
|
||||||
// #define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0)
|
|
||||||
# undef STM32_I2C_I2C1_TX_DMA_STREAM
|
|
||||||
# define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 1)
|
|
||||||
|
|
||||||
# undef STM32_PWM_USE_TIM2
|
|
||||||
# define STM32_PWM_USE_TIM2 TRUE
|
|
||||||
|
|
||||||
# undef STM32_PWM_USE_TIM3
|
|
||||||
# define STM32_PWM_USE_TIM3 TRUE
|
|
||||||
|
|
||||||
# undef STM32_SPI_USE_SPI1
|
|
||||||
# define STM32_SPI_USE_SPI1 TRUE
|
|
||||||
|
|
||||||
# undef STM32_SERIAL_USE_USART2
|
|
||||||
# define STM32_SERIAL_USE_USART2 TRUE
|
|
||||||
|
|
||||||
# undef STM32_ST_USE_TIMER
|
|
||||||
# define STM32_ST_USE_TIMER 5
|
|
||||||
#endif
|
|
@ -1,43 +0,0 @@
|
|||||||
RGB_MATRIX_ENABLE = no
|
|
||||||
CUSTOM_UNICODE_ENABLE = no
|
|
||||||
CUSTOM_POINTING_DEVICE = no
|
|
||||||
CUSTOM_SPLIT_TRANSPORT_SYNC = no
|
|
||||||
|
|
||||||
|
|
||||||
ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/3x5/blackpill)
|
|
||||||
# Bootloader selection
|
|
||||||
BOOTLOADER := tinyuf2
|
|
||||||
|
|
||||||
LTO_ENABLE := no
|
|
||||||
|
|
||||||
AUDIO_SUPPORTED = yes
|
|
||||||
AUDIO_ENABLE = yes
|
|
||||||
AUDIO_DRIVER = pwm_hardware
|
|
||||||
|
|
||||||
OVERLOAD_FEATURES = yes
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/3x5/v2/stemcell)
|
|
||||||
OVERLOAD_FEATURES = yes
|
|
||||||
endif
|
|
||||||
ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/3x5/v2/splinky)
|
|
||||||
OVERLOAD_FEATURES = yes
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
ifeq ($(strip $(OVERLOAD_FEATURES)), yes)
|
|
||||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
|
||||||
KEYBOARD_SHARED_EP = yes
|
|
||||||
MOUSE_SHARED_EP = yes
|
|
||||||
|
|
||||||
MOUSEKEY_ENABLE = yes
|
|
||||||
NKRO_ENABLE = yes
|
|
||||||
CONSOLE_ENABLE = yes
|
|
||||||
RGB_MATRIX_ENABLE = yes
|
|
||||||
|
|
||||||
AUTOCORRECT_ENABLE = yes
|
|
||||||
|
|
||||||
CUSTOM_UNICODE_ENABLE = yes
|
|
||||||
CUSTOM_POINTING_DEVICE = yes
|
|
||||||
CUSTOM_SPLIT_TRANSPORT_SYNC = yes
|
|
||||||
endif
|
|
@ -1,19 +0,0 @@
|
|||||||
// Copyright 2022 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
|
|
||||||
) \
|
|
||||||
LAYOUT_charybdis_3x5( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
K32, K33, K34, K35, K36 \
|
|
||||||
)
|
|
@ -1,4 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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/>.
|
|
@ -1,4 +0,0 @@
|
|||||||
# Copyright 2021 Manna Harbour
|
|
||||||
# https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
MIRYOKU_KLUDGE_THUMBCOMBOS=yes
|
|
@ -255,15 +255,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
|
|||||||
// rgb_matrix.c.
|
// rgb_matrix.c.
|
||||||
void rgb_matrix_update_pwm_buffers(void);
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void shutdown_user(void) {
|
|
||||||
#ifdef RGBLIGHT_ENABLE
|
|
||||||
rgblight_enable_noeeprom();
|
|
||||||
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
|
||||||
rgblight_setrgb(RGB_RED);
|
|
||||||
#endif // RGBLIGHT_ENABLE
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
rgb_matrix_set_color_all(RGB_RED);
|
|
||||||
rgb_matrix_update_pwm_buffers();
|
|
||||||
#endif // RGB_MATRIX_ENABLE
|
|
||||||
}
|
|
||||||
|
@ -134,15 +134,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
|
|||||||
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
||||||
void rgb_matrix_update_pwm_buffers(void);
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void shutdown_user(void) {
|
|
||||||
#ifdef RGBLIGHT_ENABLE
|
|
||||||
rgblight_enable_noeeprom();
|
|
||||||
rgblight_mode_noeeprom(1);
|
|
||||||
rgblight_setrgb(RGB_RED);
|
|
||||||
#endif // RGBLIGHT_ENABLE
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
rgb_matrix_set_color_all(RGB_RED);
|
|
||||||
rgb_matrix_update_pwm_buffers();
|
|
||||||
#endif // RGB_MATRIX_ENABLE
|
|
||||||
}
|
|
||||||
|
@ -1,69 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
#if defined(KEYBOARD_bastardkb_charybdis_4x6_blackpill)
|
|
||||||
# undef MATRIX_COL_PINS
|
|
||||||
# define MATRIX_COL_PINS \
|
|
||||||
{ B0, B1, B12, B3, B4, B5 }
|
|
||||||
|
|
||||||
# define USB_VBUS_PIN B10
|
|
||||||
# define DEBUG_LED_PIN C13
|
|
||||||
|
|
||||||
# define AUDIO_PIN B7
|
|
||||||
# define AUDIO_PWM_DRIVER PWMD4
|
|
||||||
# define AUDIO_PWM_CHANNEL 2
|
|
||||||
# define AUDIO_PWM_PAL_MODE 2
|
|
||||||
# define AUDIO_INIT_DELAY
|
|
||||||
# define AUDIO_ENABLE_TONE_MULTIPLEXING
|
|
||||||
# define AUDIO_TONE_MULTIPLEXING_RATE_DEFAULT 10
|
|
||||||
|
|
||||||
# define SERIAL_USART_SPEED (1 * 1024 * 1024)
|
|
||||||
|
|
||||||
# undef POINTING_DEVICE_CS_PIN
|
|
||||||
# define POINTING_DEVICE_CS_PIN A15 // b14
|
|
||||||
# define PMW33XX_LIFTOFF_DISTANCE 0b1111
|
|
||||||
|
|
||||||
# define RGB_MATRIX_LED_FLUSH_LIMIT 33
|
|
||||||
# define RGB_MATRIX_LED_PROCESS_LIMIT 29
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#undef ROTATIONAL_TRANSFORM_ANGLE
|
|
||||||
#define ROTATIONAL_TRANSFORM_ANGLE 25
|
|
||||||
#define POINTING_DEVICE_ROTATION_270
|
|
||||||
|
|
||||||
/* RGB Matrix. */
|
|
||||||
#undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150
|
|
||||||
|
|
||||||
#define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200
|
|
||||||
#define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 400
|
|
||||||
#define CHARYBDIS_MINIMUM_SNIPING_DPI 200
|
|
||||||
#define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 100
|
|
||||||
|
|
||||||
#define CHARYBDIS_CONFIG_SYNC
|
|
||||||
|
|
||||||
#define BOOTMAGIC_LITE_ROW 0
|
|
||||||
#define BOOTMAGIC_LITE_COLUMN 0
|
|
||||||
#define BOOTMAGIC_LITE_ROW_RIGHT 5
|
|
||||||
#define BOOTMAGIC_LITE_COLUMN_RIGHT 0
|
|
||||||
#define BOOTMAGIC_LITE_EEPROM_ROW 1
|
|
||||||
#define BOOTMAGIC_LITE_EEPROM_COLUMN 0
|
|
||||||
#define BOOTMAGIC_LITE_EEPROM_ROW_RIGHT 1
|
|
||||||
#define BOOTMAGIC_LITE_EEPROM_COLUMN_RIGHT 0
|
|
||||||
|
|
||||||
#define DEBOUNCE 15
|
|
@ -1,154 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
|
|
||||||
*
|
|
||||||
* 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 "drashna.h"
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
#define LAYOUT_charybdis_4x6_wrapper(...) LAYOUT_charybdis_4x6(__VA_ARGS__)
|
|
||||||
#define LAYOUT_charybdis_4x6_base( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
|
|
||||||
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
|
|
||||||
) \
|
|
||||||
LAYOUT_charybdis_4x6_wrapper( \
|
|
||||||
KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, UC_CLUE, \
|
|
||||||
SH_TT, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, SH_TT, \
|
|
||||||
LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
|
|
||||||
OS_LSFT,CTL_T(K21),ALT_T(K22),GUI_T(K23),K24,K25, K26,K27,RGUI_T(K28),RALT_T(K29),RCTL_T(K2A), OS_RSFT, \
|
|
||||||
SFT_T(KC_GRV), OS_LALT, OS_LGUI, TT(_MOUSE), KC_ENT, \
|
|
||||||
KC_SPC, BK_LWER, DL_RAIS \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define LAYOUT_base_wrapper(...) LAYOUT_charybdis_4x6_base(__VA_ARGS__)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
|
|
||||||
_________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
|
|
||||||
_________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
|
|
||||||
_________________QWERTY_L3_________________, _________________QWERTY_R3_________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
|
|
||||||
______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
|
|
||||||
______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
|
|
||||||
______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
|
|
||||||
),
|
|
||||||
[_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
|
|
||||||
_________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
|
|
||||||
_________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
|
|
||||||
_________________COLEMAK_L3________________, _________________COLEMAK_R3________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
|
|
||||||
_________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
|
|
||||||
_________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
|
|
||||||
_________________DVORAK_L3_________________, _________________DVORAK_R3_________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_GAMEPAD] = LAYOUT_charybdis_4x6(
|
|
||||||
KC_ESC, KC_NO, KC_1, KC_2, KC_3, KC_4, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_H, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_V, _______, _______, _______, TG_GAME,
|
|
||||||
KC_SPC, KC_H, _______
|
|
||||||
),
|
|
||||||
[_DIABLO] = LAYOUT_charybdis_4x6(
|
|
||||||
KC_ESC, KC_V, KC_D, KC_LALT, KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO,
|
|
||||||
KC_TAB, KC_S, KC_I, KC_F, KC_M, KC_T, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_G, _______, _______, TO(_DIABLOII), TG_DBLO,
|
|
||||||
KC_LSFT, KC_LCTL, _______
|
|
||||||
),
|
|
||||||
[_DIABLOII] = LAYOUT_charybdis_4x6(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_GRV, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_TAB, KC_A, KC_T, KC_Q, KC_I, KC_M, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_S, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_LCTL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______,
|
|
||||||
KC_DIABLO_CLEAR, _______, _______, _______, TG(_DIABLOII),
|
|
||||||
SFT_T(KC_SPACE), ALT_T(KC_Q), _______
|
|
||||||
),
|
|
||||||
[_MOUSE] = LAYOUT_charybdis_4x6(
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, PD_JIGGLER,
|
|
||||||
_______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______, _______, DRGSCRL,
|
|
||||||
_______, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, SNIPING,
|
|
||||||
_______, _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______,
|
|
||||||
_______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
[_LOWER] = LAYOUT_charybdis_4x6_wrapper(
|
|
||||||
KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
|
|
||||||
_______, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______,
|
|
||||||
_______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
|
|
||||||
_______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
|
|
||||||
_______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
[_RAISE] = LAYOUT_charybdis_4x6_wrapper(
|
|
||||||
KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
|
|
||||||
KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
|
|
||||||
_______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
|
|
||||||
_______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
|
|
||||||
_______, _______, _______, _______, _______,
|
|
||||||
_______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
[_ADJUST] = LAYOUT_charybdis_4x6_wrapper(
|
|
||||||
QK_MAKE, KC_WIDE,KC_AUSSIE,KC_SCRIPT,KC_ZALGO,KC_SUPER, KC_NOMODE,KC_COMIC,KC_REGIONAL,TG_GAME,TG_DBLO, QK_BOOT,
|
|
||||||
VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EE_CLR,
|
|
||||||
KEYLOCK, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS,
|
|
||||||
UC_NEXT, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY,
|
|
||||||
QK_RBT, AUTO_CTN, _______, _______, KC_NUKE,
|
|
||||||
_______, _______, _______
|
|
||||||
)
|
|
||||||
};
|
|
||||||
// clang-format on
|
|
||||||
|
|
||||||
void keyboard_post_init_keymap(void) {
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
g_led_config.flags[53] = g_led_config.flags[54] = g_led_config.flags[55] = g_led_config.flags[0] = g_led_config.flags[1] = g_led_config.flags[2] = g_led_config.flags[3] = g_led_config.flags[29] = g_led_config.flags[30] = g_led_config.flags[31] = g_led_config.flags[32] = LED_FLAG_MODIFIER;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
#if defined(KEYBOARD_bastardkb_charybdis_4x6_blackpill)
|
|
||||||
void keyboard_pre_init_keymap(void) {
|
|
||||||
setPinInputHigh(A0);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef SWAP_HANDS_ENABLE
|
|
||||||
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* Left hand, matrix positions */
|
|
||||||
{{0, 5}, {1, 5}, {2, 5}, {3, 5}, {4, 5}, {5, 5}},
|
|
||||||
{{0, 6}, {1, 6}, {2, 6}, {3, 6}, {4, 6}, {5, 6}},
|
|
||||||
{{0, 7}, {1, 7}, {2, 7}, {3, 7}, {4, 7}, {5, 7}},
|
|
||||||
{{0, 8}, {1, 8}, {2, 8}, {3, 8}, {4, 8}, {5, 8}},
|
|
||||||
{{2, 9}, {4, 9}, {5, 9}, {1, 9}, {0, 9}, {3, 9}},
|
|
||||||
/* Right hand, matrix positions */
|
|
||||||
{{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}},
|
|
||||||
{{0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}},
|
|
||||||
{{0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}, {5, 2}},
|
|
||||||
{{0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}, {5, 3}},
|
|
||||||
{{0, 4}, {3, 4}, {2, 4}, {5, 4}, {4, 4}, {2, 4}}
|
|
||||||
};
|
|
||||||
|
|
||||||
# ifdef ENCODER_MAP_ENABLE
|
|
||||||
const uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS] = {1, 0};
|
|
||||||
# endif
|
|
||||||
#endif
|
|
@ -1,27 +0,0 @@
|
|||||||
/* Copyright 2020 Nick Brassel (tzarc)
|
|
||||||
*
|
|
||||||
* 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 3 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 <https://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include_next <mcuconf.h>
|
|
||||||
|
|
||||||
#if defined(KEYBOARD_bastardkb_charybdis_4x6_blackpill)
|
|
||||||
# undef STM32_PWM_USE_ADVANCED
|
|
||||||
# define STM32_PWM_USE_ADVANCED TRUE
|
|
||||||
|
|
||||||
# undef STM32_PWM_USE_TIM4
|
|
||||||
# define STM32_PWM_USE_TIM4 TRUE
|
|
||||||
#endif
|
|
@ -1,52 +0,0 @@
|
|||||||
CUSTOM_UNICODE_ENABLE = no
|
|
||||||
CUSTOM_POINTING_DEVICE = no
|
|
||||||
CUSTOM_SPLIT_TRANSPORT_SYNC = no
|
|
||||||
PER_KEY_TAPPING = yes
|
|
||||||
|
|
||||||
ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/4x6/blackpill)
|
|
||||||
# MCU name
|
|
||||||
# Bootloader selection
|
|
||||||
BOOTLOADER := tinyuf2
|
|
||||||
|
|
||||||
AUDIO_ENABLE = yes # Audio output
|
|
||||||
AUDIO_SUPPORTED = yes # is set to no in kb, needs to be forcibly enabled
|
|
||||||
AUDIO_DRIVER = pwm_hardware
|
|
||||||
|
|
||||||
BACKLIGHT_DRIVER = pwm
|
|
||||||
|
|
||||||
OVERLOAD_FEATURES = yes
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(strip $(MCU)), atmega32u4)
|
|
||||||
LTO_ENABLE = yes
|
|
||||||
BOOTLOADER = qmk-hid
|
|
||||||
BOOTLOADER_SIZE = 512
|
|
||||||
EXTRAKEY_ENABLE = no
|
|
||||||
else
|
|
||||||
OVERLOAD_FEATURES = yes
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(strip $(OVERLOAD_FEATURES)), yes)
|
|
||||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
|
||||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = yes # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
NKRO_ENABLE = yes # Enable N-Key Rollover
|
|
||||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
|
||||||
|
|
||||||
MOUSE_SHARED_EP = no
|
|
||||||
|
|
||||||
AUTOCORRECT_ENABLE = yes
|
|
||||||
CAPS_WORD_ENABLE = yes
|
|
||||||
SWAP_HANDS_ENABLE = yes
|
|
||||||
TAP_DANCE_ENABLE = yes
|
|
||||||
WPM_ENABLE = yes
|
|
||||||
LTO_ENABLE = no
|
|
||||||
# OPT = 3
|
|
||||||
|
|
||||||
CUSTOM_UNICODE_ENABLE = yes
|
|
||||||
CUSTOM_POINTING_DEVICE = yes
|
|
||||||
CUSTOM_SPLIT_TRANSPORT_SYNC = yes
|
|
||||||
|
|
||||||
endif
|
|
@ -1,23 +0,0 @@
|
|||||||
// Copyright 2022 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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
|
|
||||||
|
|
||||||
#define XXX KC_NO
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
|
|
||||||
) \
|
|
||||||
LAYOUT_charybdis_4x6( \
|
|
||||||
XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
|
|
||||||
XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
|
|
||||||
XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
|
|
||||||
XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
|
|
||||||
K32, K33, K34, K35, K36, \
|
|
||||||
XXX, K32, K37 \
|
|
||||||
)
|
|
@ -1,4 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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/>.
|
|
@ -1,4 +0,0 @@
|
|||||||
# Copyright 2021 Manna Harbour
|
|
||||||
# https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
MIRYOKU_KLUDGE_THUMBCOMBOS=yes
|
|
@ -157,15 +157,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
|
|||||||
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
||||||
void rgb_matrix_update_pwm_buffers(void);
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void shutdown_user(void) {
|
|
||||||
#ifdef RGBLIGHT_ENABLE
|
|
||||||
rgblight_enable_noeeprom();
|
|
||||||
rgblight_mode_noeeprom(1);
|
|
||||||
rgblight_setrgb(RGB_RED);
|
|
||||||
#endif // RGBLIGHT_ENABLE
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
rgb_matrix_set_color_all(RGB_RED);
|
|
||||||
rgb_matrix_update_pwm_buffers();
|
|
||||||
#endif // RGB_MATRIX_ENABLE
|
|
||||||
}
|
|
||||||
|
@ -382,3 +382,20 @@ void matrix_scan_kb(void) {
|
|||||||
matrix_scan_user();
|
matrix_scan_user();
|
||||||
}
|
}
|
||||||
#endif // KEYBOARD_bastardkb_charybdis_3x5_blackpill || KEYBOARD_bastardkb_charybdis_4x6_blackpill
|
#endif // KEYBOARD_bastardkb_charybdis_3x5_blackpill || KEYBOARD_bastardkb_charybdis_4x6_blackpill
|
||||||
|
|
||||||
|
bool shutdown_kb(bool jump_to_bootloader) {
|
||||||
|
if (!shutdown_user(jump_to_bootloader)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
#ifdef RGBLIGHT_ENABLE
|
||||||
|
rgblight_enable_noeeprom();
|
||||||
|
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
||||||
|
rgblight_setrgb(RGB_RED);
|
||||||
|
#endif // RGBLIGHT_ENABLE
|
||||||
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
|
rgb_matrix_set_color_all(RGB_RED);
|
||||||
|
rgb_matrix_update_pwm_buffers();
|
||||||
|
#endif // RGB_MATRIX_ENABLE
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@ -210,15 +210,3 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
|
|||||||
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
// Forward-declare this helper function since it is defined in rgb_matrix.c.
|
||||||
void rgb_matrix_update_pwm_buffers(void);
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void shutdown_user(void) {
|
|
||||||
#ifdef RGBLIGHT_ENABLE
|
|
||||||
rgblight_enable_noeeprom();
|
|
||||||
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
|
||||||
rgblight_setrgb(RGB_RED);
|
|
||||||
#endif // RGBLIGHT_ENABLE
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
rgb_matrix_set_color_all(RGB_RED);
|
|
||||||
rgb_matrix_update_pwm_buffers();
|
|
||||||
#endif // RGB_MATRIX_ENABLE
|
|
||||||
}
|
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
// Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
|
|
||||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#define CIRQUE_PINNACLE_TAP_ENABLE
|
|
||||||
#define POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE
|
|
||||||
#define POINTING_DEVICE_GESTURES_SCROLL_ENABLE
|
|
||||||
|
|
||||||
#define OLED_DISPLAY_128X128
|
|
@ -1,23 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
#define HAL_USE_SPI TRUE
|
|
||||||
#define HAL_USE_I2C TRUE
|
|
||||||
|
|
||||||
#include_next <halconf.h>
|
|
@ -1,176 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
|
||||||
*
|
|
||||||
* 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 "drashna.h"
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
#define LAYOUT_split_3x5_2_wrapper(...) LAYOUT_split_3x5_2(__VA_ARGS__)
|
|
||||||
#define LAYOUT_split_3x5_2_base( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
|
|
||||||
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
|
|
||||||
) \
|
|
||||||
LAYOUT_split_3x5_2 ( \
|
|
||||||
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
|
|
||||||
ALT_T(K11), K12, K13, K14, GUI_T(K15), LGUI_T(K16), K17, K18, K19, LALT_T(K1A), \
|
|
||||||
CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), \
|
|
||||||
KC_SPC, BK_LWER, DL_RAIS, RSFT_T(KC_ENT) \
|
|
||||||
)
|
|
||||||
|
|
||||||
#define LAYOUT_split_3x5_2_base_wrapper(...) LAYOUT_split_3x5_2_base(__VA_ARGS__)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_1] = LAYOUT_split_3x5_2_base_wrapper(
|
|
||||||
_________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
|
|
||||||
_________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
|
|
||||||
_________________QWERTY_L3_________________, _________________QWERTY_R3_________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_2] = LAYOUT_split_3x5_2_base_wrapper(
|
|
||||||
______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
|
|
||||||
______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
|
|
||||||
______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
|
|
||||||
),
|
|
||||||
[_DEFAULT_LAYER_3] = LAYOUT_split_3x5_2_base_wrapper(
|
|
||||||
_________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
|
|
||||||
_________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
|
|
||||||
_________________COLEMAK_L3________________, _________________COLEMAK_R3________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_DEFAULT_LAYER_4] = LAYOUT_split_3x5_2_base_wrapper(
|
|
||||||
_________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
|
|
||||||
_________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
|
|
||||||
_________________DVORAK_L3_________________, _________________DVORAK_R3_________________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_MOUSE] = LAYOUT_split_3x5_2(
|
|
||||||
_______, _______, _______, _______, _______, KC_WH_U, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD,
|
|
||||||
_______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6,
|
|
||||||
_______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______,
|
|
||||||
SNIPING, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_LOWER] = LAYOUT_split_3x5_2_wrapper(
|
|
||||||
_________________LOWER_L1__________________, _________________LOWER_R1__________________,
|
|
||||||
_________________LOWER_L2__________________, _________________LOWER_R2__________________,
|
|
||||||
_________________LOWER_L3__________________, _________________LOWER_R3__________________,
|
|
||||||
_______, _______, _______, AUTO_CTN
|
|
||||||
),
|
|
||||||
[_RAISE] = LAYOUT_split_3x5_2_wrapper(
|
|
||||||
_________________RAISE_L1__________________, _________________RAISE_R1__________________,
|
|
||||||
_________________RAISE_L2__________________, _________________RAISE_R2__________________,
|
|
||||||
_________________RAISE_L3__________________, _________________RAISE_R3__________________,
|
|
||||||
_______, _______, _______, _______
|
|
||||||
),
|
|
||||||
[_ADJUST] = LAYOUT_split_3x5_2_wrapper(
|
|
||||||
_________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
|
|
||||||
_________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
|
|
||||||
_________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
|
|
||||||
KC_NUKE, _______, _______, QK_BOOT
|
|
||||||
),
|
|
||||||
};
|
|
||||||
|
|
||||||
#if defined(OLED_ENABLE) && defined(OLED_DISPLAY_128X128)
|
|
||||||
# ifdef UNICODE_COMMON_ENABLE
|
|
||||||
# include "process_unicode_common.h"
|
|
||||||
# include "keyrecords/unicode.h"
|
|
||||||
# endif
|
|
||||||
|
|
||||||
extern const char PROGMEM display_border[3];
|
|
||||||
|
|
||||||
extern bool is_oled_enabled;
|
|
||||||
|
|
||||||
|
|
||||||
bool oled_task_keymap(void) {
|
|
||||||
static const char PROGMEM header_image[] = {
|
|
||||||
0, 192, 32, 16, 8, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 7, 15, 31, 63, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 63, 31, 15, 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, 8, 16, 32, 192, 0,
|
|
||||||
// 0,255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 7, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 7, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255, 0
|
|
||||||
};
|
|
||||||
oled_write_raw_P(header_image, sizeof(header_image));
|
|
||||||
oled_set_cursor(7, 0);
|
|
||||||
oled_write_P(PSTR("Dilemma"), true);
|
|
||||||
|
|
||||||
render_default_layer_state(1, 1);
|
|
||||||
render_layer_state(1, 2);
|
|
||||||
render_kitty(0, 5);
|
|
||||||
render_wpm(1, 7, 5);
|
|
||||||
# if defined(POINTING_DEVICE_ENABLE)
|
|
||||||
render_pointing_dpi_status(dilemma_get_pointer_sniping_enabled() ? dilemma_get_pointer_sniping_dpi() : dilemma_get_pointer_default_dpi(), 1, 7, 6);
|
|
||||||
render_mouse_mode(17, 6);
|
|
||||||
# elif defined(WPM_ENABLE) && defined(DEBUG_MATRIX_SCAN_RATE)
|
|
||||||
render_matrix_scan_rate(1, 7, 6);
|
|
||||||
# endif
|
|
||||||
render_bootmagic_status(7, 7);
|
|
||||||
render_user_status(1, 9);
|
|
||||||
|
|
||||||
render_mod_status(get_mods() | get_oneshot_mods(), 1, 10);
|
|
||||||
render_keylock_status(host_keyboard_led_state(), 1, 11);
|
|
||||||
render_unicode_mode(1, 12);
|
|
||||||
|
|
||||||
// render_rgb_hsv(1, 13);
|
|
||||||
oled_set_cursor(1, 13);
|
|
||||||
oled_write_P(PSTR("OS: "), false);
|
|
||||||
extern os_variant_t os_type;
|
|
||||||
switch (os_type) {
|
|
||||||
case OS_LINUX:
|
|
||||||
oled_write_ln_P(PSTR("Linux"), false);
|
|
||||||
break;
|
|
||||||
case OS_WINDOWS:
|
|
||||||
oled_write_ln_P(PSTR("Windows"), false);
|
|
||||||
break;
|
|
||||||
case OS_MACOS:
|
|
||||||
oled_write_ln_P(PSTR("MacOS"), false);
|
|
||||||
break;
|
|
||||||
case OS_IOS:
|
|
||||||
oled_write_ln_P(PSTR("iOS"), false);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
render_keylogger_status(1, 14);
|
|
||||||
|
|
||||||
for (uint8_t i = 1; i < 15; i++) {
|
|
||||||
oled_set_cursor(0, i);
|
|
||||||
oled_write_raw_P(display_border, sizeof(display_border));
|
|
||||||
oled_set_cursor(21, i);
|
|
||||||
oled_write_raw_P(display_border, sizeof(display_border));
|
|
||||||
}
|
|
||||||
|
|
||||||
static const char PROGMEM footer_image[] = {0, 3, 4, 8, 16, 32, 64, 128, 128, 128, 128, 128, 128, 128, 192, 224, 240, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 240, 224, 192, 128, 128, 128, 128, 128, 128, 128, 64, 32, 16, 8, 4, 3, 0};
|
|
||||||
oled_set_cursor(0, 15);
|
|
||||||
oled_write_raw_P(footer_image, sizeof(footer_image));
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef SWAP_HANDS_ENABLE
|
|
||||||
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* Left hand, matrix positions */
|
|
||||||
{{0, 4}, {3, 4}, {2, 4}, {5, 4}, {4, 4}},
|
|
||||||
{{0, 5}, {1, 5}, {2, 5}, {3, 5}, {4, 5}},
|
|
||||||
{{0, 6}, {1, 6}, {2, 6}, {3, 6}, {4, 6}},
|
|
||||||
{{0, 7}, {1, 7}, {2, 7}, {3, 7}, {4, 7}},
|
|
||||||
/* Right hand, matrix positions */
|
|
||||||
{{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}},
|
|
||||||
{{0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}},
|
|
||||||
{{0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}},
|
|
||||||
{{0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}},
|
|
||||||
};
|
|
||||||
#endif
|
|
@ -1,26 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
|
||||||
*
|
|
||||||
* 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_next <mcuconf.h>
|
|
||||||
|
|
||||||
#undef RP_SPI_USE_SPI1
|
|
||||||
#define RP_SPI_USE_SPI1 TRUE
|
|
||||||
|
|
||||||
#undef RP_I2C_USE_I2C1
|
|
||||||
#define RP_I2C_USE_I2C1 TRUE
|
|
@ -1,7 +0,0 @@
|
|||||||
SWAP_HANDS_ENABLE = no
|
|
||||||
AUTOCORRECT_ENABLE = yes
|
|
||||||
CAPS_WORD_ENABLE = yes
|
|
||||||
CONSOLE_ENABLE = yes
|
|
||||||
KEYLOGGER_ENABLE = no
|
|
||||||
WPM_ENABLE = yes
|
|
||||||
OLED_ENABLE = yes
|
|
@ -210,7 +210,7 @@ layer_state_t layer_state_set_user(layer_state_t state) {
|
|||||||
void rgb_matrix_update_pwm_buffers(void);
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void shutdown_user(void) {
|
bool shutdown_user(bool jump_to_bootloader) {
|
||||||
#ifdef RGBLIGHT_ENABLE
|
#ifdef RGBLIGHT_ENABLE
|
||||||
rgblight_enable_noeeprom();
|
rgblight_enable_noeeprom();
|
||||||
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
||||||
@ -220,4 +220,5 @@ void shutdown_user(void) {
|
|||||||
rgb_matrix_set_color_all(RGB_RED);
|
rgb_matrix_set_color_all(RGB_RED);
|
||||||
rgb_matrix_update_pwm_buffers();
|
rgb_matrix_update_pwm_buffers();
|
||||||
#endif // RGB_MATRIX_ENABLE
|
#endif // RGB_MATRIX_ENABLE
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -343,3 +343,20 @@ void keyboard_pre_init_kb(void) {
|
|||||||
|
|
||||||
keyboard_pre_init_user();
|
keyboard_pre_init_user();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool shutdown_kb(bool jump_to_bootloader) {
|
||||||
|
if (!shutdown_user(jump_to_bootloader)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
#ifdef RGBLIGHT_ENABLE
|
||||||
|
rgblight_enable_noeeprom();
|
||||||
|
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
|
||||||
|
rgblight_setrgb(RGB_RED);
|
||||||
|
#endif // RGBLIGHT_ENABLE
|
||||||
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
|
void rgb_matrix_update_pwm_buffers(void);
|
||||||
|
rgb_matrix_set_color_all(RGB_RED);
|
||||||
|
rgb_matrix_update_pwm_buffers();
|
||||||
|
#endif // RGB_MATRIX_ENABLE
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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
|
|
||||||
|
|
||||||
#define XXX KC_NO
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
|
|
||||||
) \
|
|
||||||
LAYOUT_split_4x6_5( \
|
|
||||||
XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
|
|
||||||
XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
|
|
||||||
XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
|
|
||||||
XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
|
|
||||||
K32, K33, K34, K35, K36, K37, \
|
|
||||||
XXX, XXX, XXX, XXX \
|
|
||||||
)
|
|
@ -1,4 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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/>.
|
|
@ -15,9 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
#include "quantum.h"
|
#include "quantum.h"
|
||||||
|
|
||||||
__attribute__((weak))
|
bool shutdown_kb(bool jump_to_bootloader) {
|
||||||
void shutdown_user(void) {
|
if (!shutdown_user(jump_to_bootloader)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
#ifdef RGBLIGHT_ENABLE
|
#ifdef RGBLIGHT_ENABLE
|
||||||
rgblight_setrgb(255, 0, 0);
|
rgblight_setrgb(255, 0, 0);
|
||||||
#endif
|
#endif
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.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
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT_all(
|
|
||||||
QK_GESC, 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_NO, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
|
||||||
KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(2),
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(1), KC_RALT, KC_RGUI, KC_RCTL
|
|
||||||
),
|
|
||||||
[1] = LAYOUT_all(
|
|
||||||
KC_GRV, 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_NO, KC_DEL,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
[2] = LAYOUT_all(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT
|
|
||||||
),
|
|
||||||
|
|
||||||
[3] = LAYOUT_all(
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
};
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
MechMerlin's FaceW Sprit Edition Layout
|
|
||||||
======================
|
|
||||||
|
|
||||||
This is the preferred 60% layout used by u/merlin36, host of the [MechMerlin YouTube channel](www.youtube.com/mechmerlin).
|
|
||||||
|
|
||||||
## Keyboard Notes
|
|
||||||
- The FaceW Sprit Edition can be purchased on [mechanicalkeyboards.com](www.mechanicalkeyboards.com)
|
|
||||||
- Uses ps2avru instead of ps2avrgb
|
|
||||||
- To put in reset mode hold `q` while inserting the USB cable
|
|
||||||
- Use flashing instructions from ps2avrgb QMK port
|
|
||||||
|
|
||||||
## Keymap Notes
|
|
||||||
- Does not support any form of inswitch lighting as Merlin hates them.
|
|
||||||
- Arrow toggle switch to the right of right shift
|
|
||||||
- Reset is FN + Left Shift + R
|
|
||||||
|
|
||||||
### Build
|
|
||||||
To build this keymap, simply run `make bfake:mechmerlin` from the qmk_firmware directory.
|
|
@ -1,22 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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
|
|
||||||
|
|
||||||
#define XXX KC_NO
|
|
||||||
|
|
||||||
#define LAYOUT_miryoku(\
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
|
|
||||||
N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
|
|
||||||
)\
|
|
||||||
LAYOUT(\
|
|
||||||
XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
|
|
||||||
XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
|
|
||||||
XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX,\
|
|
||||||
XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
|
|
||||||
XXX, K32, K33, K34, K35, K36, K37, XXX\
|
|
||||||
)
|
|
@ -1,4 +0,0 @@
|
|||||||
// Copyright 2019 Manna Harbour
|
|
||||||
// https://github.com/manna-harbour/miryoku
|
|
||||||
|
|
||||||
// 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/>.
|
|
@ -1,45 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2022 Rocco Meli <@RMeli>
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
#define MASTER_LEFT // Left side is the master
|
|
||||||
#define SPLIT_LED_STATE_ENABLE
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
// Configure RGB Matrix
|
|
||||||
# define RGB_MATRIX_KEYPRESSES // enable keypress effects
|
|
||||||
# define RGB_MATRIX_LED_FLUSH_LIMIT 16
|
|
||||||
# define RGB_DISABLE_WHEN_USB_SUSPENDED
|
|
||||||
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
|
|
||||||
# define RGB_MATRIX_DEFAULT_HUE 10
|
|
||||||
# define RGB_MATRIX_DEFAULT_SAT 255
|
|
||||||
# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
// Disable RGB Matrix effects (from lulu/config.h)
|
|
||||||
# undef ENABLE_RGB_MATRIX_ALPHAS_MODS
|
|
||||||
# undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
|
||||||
# undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
|
||||||
# undef ENABLE_RGB_MATRIX_BREATHING
|
|
||||||
# undef ENABLE_RGB_MATRIX_BAND_SAT
|
|
||||||
# undef ENABLE_RGB_MATRIX_BAND_VAL
|
|
||||||
// Enable RGB Matrix effects
|
|
||||||
# define ENABLE_RGB_MATRIX_BREATHING
|
|
||||||
# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
|
||||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
|
||||||
# define ENABLE_RGB_MATRIX_SOLID_COLOR
|
|
||||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
|
||||||
#endif
|
|
@ -1,108 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2022 Cole Smith <cole@boadsource.xyz>
|
|
||||||
Copyright 2022 Rocco Meli <@RMeli>
|
|
||||||
|
|
||||||
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 "rmeli.h"
|
|
||||||
|
|
||||||
enum layers {
|
|
||||||
_QWERTY,
|
|
||||||
_COLEMAK_DH,
|
|
||||||
_RAISE,
|
|
||||||
_LOWER,
|
|
||||||
_ADJUST,
|
|
||||||
};
|
|
||||||
|
|
||||||
#define RAISE MO(_RAISE)
|
|
||||||
#define LOWER MO(_LOWER)
|
|
||||||
|
|
||||||
#define QWY_DF DF(_QWERTY)
|
|
||||||
#define CMK_DF DF(_COLEMAK_DH)
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
#define __________THUMB_LEFT_x4___________ KC_LALT, KC_LGUI, LOWER, KC_SPC
|
|
||||||
#define __________THUMB_RIGHT_x4__________ KC_ENT, RAISE, KC_LCTL, KC_RGUI
|
|
||||||
// clang-format on
|
|
||||||
|
|
||||||
/* LAYOUT
|
|
||||||
*
|
|
||||||
* ,-----------------------------. ,-----------------------------.
|
|
||||||
* | | | | | | | | | | | | | |
|
|
||||||
* |----+----+----+----+----+----| |----+----+----+----+----+----|
|
|
||||||
* | | | | | | | | | | | | | |
|
|
||||||
* |----+----+----+----+----+----| |----+----+----+----+----+----|
|
|
||||||
* | | | | | | |-----. ,-----| | | | | | |
|
|
||||||
* |----+----+----+----+----+----| | | |----+----+----+----+----+----|
|
|
||||||
* | | | | | | |-----| |-----| | | | | | |
|
|
||||||
* `----------------------------/ / \ \----------------------------'
|
|
||||||
* | | | | / / \ \ | | | |
|
|
||||||
* | | | |/ / \ \ | | | |
|
|
||||||
* `--------------''-----' '------''--------------'
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Define wrapper for standard LULU layout
|
|
||||||
#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
[_QWERTY] = LAYOUT_wrapper(
|
|
||||||
___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
|
|
||||||
___________________QWERTY_L1_x6_____________________, ___________________QWERTY_R1_x6_____________________,
|
|
||||||
___________________QWERTY_L2_x6_____________________, ___________________QWERTY_R2_x6_____________________,
|
|
||||||
___________________QWERTY_L3_x6_____________________, KC_LBRC, KC_RBRC, ___________________QWERTY_R3_x6_____________________,
|
|
||||||
__________THUMB_LEFT_x4___________, __________THUMB_RIGHT_x4__________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_COLEMAK_DH] = LAYOUT_wrapper(
|
|
||||||
___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
|
|
||||||
________________COLEMAK_MOD_DH_L1_x6________________, ________________COLEMAK_MOD_DH_R1_x6________________,
|
|
||||||
________________COLEMAK_MOD_DH_L2_x6________________, ________________COLEMAK_MOD_DH_R2_x6________________,
|
|
||||||
________________COLEMAK_MOD_DH_L3_x6________________, KC_LBRC, KC_RBRC, ________________COLEMAK_MOD_DH_R3_x6________________,
|
|
||||||
__________THUMB_LEFT_x4___________, __________THUMB_RIGHT_x4__________
|
|
||||||
),
|
|
||||||
|
|
||||||
[_LOWER] = LAYOUT_wrapper(
|
|
||||||
____________________FUNC_LEFT_x6____________________, ____________________FUNC_RIGHT_x6___________________,
|
|
||||||
_______, ______________NUMBER_LEFT_x5_______________, ______________NUMBER_RIGHT_x5______________, _______,
|
|
||||||
_______, ______________UNICODE_L2_x5________________, ________________NAV_R2_x5__________________, XXXXXXX,
|
|
||||||
_______, ______________UNICODE_L3_x5________________, _______, _______, ________________NAV_R3_x5__________________, _______,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
[_RAISE] = LAYOUT_wrapper(
|
|
||||||
___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
|
|
||||||
___________________SYMBOL_LEFT_x6___________________, ___________________SYMBOL_RIGHT_x6__________________,
|
|
||||||
_______, ____________NAV_VIM_x4____________, XXXXXXX, ____________________SYMBOL_R2_x6____________________,
|
|
||||||
_______, _________________NONE_5x___________________, _______, _______, ____________________SYMBOL_R3_x6____________________,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
),
|
|
||||||
|
|
||||||
[_ADJUST] = LAYOUT_wrapper(
|
|
||||||
QK_BOOT, _________________NONE_5x___________________, ______________________NONE_6x_______________________,
|
|
||||||
XXXXXXX, _________________NONE_5x___________________, _______________CONFIG_R1_x5________________, QWY_DF,
|
|
||||||
RGB_TOG, ________________RGB_L2_x5__________________, _______________CONFIG_R2_x5________________, XXXXXXX,
|
|
||||||
XXXXXXX, ________________RGB_L3_x5__________________, _______, _______, _______________CONFIG_R3_x5________________, CMK_DF,
|
|
||||||
_______, _______, _______, _______, _______, _______, _______, _______
|
|
||||||
)
|
|
||||||
};
|
|
||||||
// clang-format on
|
|
||||||
|
|
||||||
layer_state_t layer_state_set_user(layer_state_t state) {
|
|
||||||
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
|
|
||||||
}
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user