Compare commits

...

2 Commits

Author SHA1 Message Date
Mark 19b4ddfce9
Edited keymaps 2023-12-16 12:27:53 -08:00
Mark 80276758fd
Build system cleanup 2023-12-16 11:21:51 -08:00
19 changed files with 186 additions and 262 deletions

17
Makefile Executable file
View File

@ -0,0 +1,17 @@
default:
@mkdir -p "$$(pwd)/output"
docker run -it --rm \
--user $$(id -u):$$(id -g) \
-v "$$(pwd)/output:/build_output" \
-v "$$(pwd)/keyboards:/qmk_firmware/keyboards:ro" \
-e QMK_TARGET="betalupi_ergodox:default" \
git.betalupi.com/mark/qmk
upload:
wally-cli output/betalupi_ergodox_default.hex
docker:
docker build docker -t git.betalupi.com/mark/qmk
.PHONY: docker upload default

View File

@ -2,17 +2,14 @@
This repository contains my keyboards' firmware and everything you need to build it. It includes a docker container for building QMK firmware, since QMK installation modifies my computer a bit more than I'd like.
## Usage
You do not need a local install of QMK to build this firmware.
You'll need docker, but there's a good chance you have that installed anyway.
1. `cd` into [`./docker`](./docker) and build the container.
2. `mkdir ./output`
3. Run `./build.sh`.
4. Upload the firmware in `./output` to your keyboard using the proper tool.
- `wally-cli` works pretty well for the `betalupi_ergodox`
## Todo
- FFT Animation: clear leds on sleep
1. `make docker`
2. `make`
3. `make upload`
Read [`Makefile`](./Makefile) for details.

View File

@ -1,18 +0,0 @@
#!/bin/bash
# Uses the docker container defined in
# the `docker` directory of this repo.
# Run from the root directory of this repo.
# Targets in this repo:
# betalupi_ergodox:default
#
# Usage:
# bash build.sh betalupi_ergodox:default
docker run -it --rm \
--user $(id -u):$(id -g) \
-v "$(pwd)/output:/build_output" \
-v "$(pwd)/keyboards:/qmk_firmware/keyboards:ro" \
-e QMK_TARGET="$1" \
git.betalupi.com/mark/qmk

View File

@ -1,15 +0,0 @@
root = false
[*]
indent_style = tab
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = false
insert_final_newline = false
[qmk_cli/*]
indent_style = space
[qmk_firmware/*]
indent_style = space

View File

@ -74,10 +74,4 @@ WORKDIR /qmk_firmware
ENV SKIP_GIT true
COPY entrypoint.sh /entrypoint.sh
CMD ["/bin/bash", "/entrypoint.sh"]
# How to use:
# docker run -it \
# --user 1000:1001 \
# -v "$(pwd)/kb:/qmk_firmware/keyboards" \
#
CMD ["/bin/bash", "/entrypoint.sh"]

View File

@ -9,4 +9,6 @@ make $QMK_TARGET
# Move output files to output directory.
# These are the only extensions qmk can produce,
# as far as I know.
mv *.{bin,hex,uf2} /build_output > /dev/null 2>&1
mv *.{bin,hex,uf2} /build_output > /dev/null 2>&1
exit 0

View File

@ -21,6 +21,7 @@ enum custom_keycodes {
M_RESETWM,
M_RU_CTRL,
M_RU_ALT,
M_GUI,
// Special characters.
// M_SPECIAL_TOP and M_SPECIAL_BOTTOM are
@ -115,6 +116,17 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
SEND_STRING(SS_LCTL(SS_LGUI(SS_LSFT(SS_TAP(X_R)))));
}
return false;
// Workaround for one-shot LGUI key.
// Using just LGUI with LAYER_DESKTOP as OSL
// does not allow you to hold lgui. This does.
case M_GUI:
if (record->event.pressed) {
register_code16(KC_LGUI);
} else {
unregister_code16(KC_LGUI);
}
return false;
case M_SHUTDOWN:
if (record->event.pressed) {

View File

@ -9,26 +9,26 @@
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
KC_TRANSPARENT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_TRANSPARENT, KC_NO, LGUI(KC_LEFT), KC_UP, LGUI(KC_RIGHT), KC_PGUP, KC_TRANSPARENT,\
KC_LGUI, LALT(KC_LCTL), KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN,\
KC_TRANSPARENT, LGUI(KC_LCTL), KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_TRNS, KC_NO, LGUI(KC_LEFT), KC_UP, LGUI(KC_RIGHT), KC_PGUP, KC_NO,\
KC_LGUI, LALT(KC_LCTL), KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN,\
KC_TRNS, LGUI(KC_LCTL), KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,\
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
\
KC_TRANSPARENT, KC_TRANSPARENT,\
KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,\
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_TRANSPARENT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_TRANSPARENT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,\
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_TRANSPARENT, KC_TRANSPARENT,\
KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT\
KC_NO, KC_NO,\
KC_NO,\
KC_NO, KC_TRNS, KC_TRNS\
)
BETA_LAYER_MAGIC_MACRO
@ -40,7 +40,7 @@
LC_OFF, LC_CYAN, LC_GREEN, LC_CYAN, LC_ORANGE, \
LC_ORANGE, LC_GREEN, LC_GREEN, LC_GREEN, LC_ORANGE, \
LC_ORANGE, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_PINK, \
LC_OFF, LC_OFF, LC_OFF, LC_RED, \
\
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \

View File

@ -13,18 +13,18 @@
LGUI(KC_TAB), KC_NO, LGUI(LCTL(KC_ENTER)), KC_NO, KC_NO, LGUI(KC_T), KC_NO,\
KC_NO, LGUI(KC_EQL), LGUI(KC_MINUS), KC_NO, LGUI(KC_F), LGUI(KC_G),\
KC_NO, KC_NO, KC_NO, LGUI(LSFT(KC_C)), LGUI(KC_N), LGUI(KC_M), KC_NO,\
KC_NO, KC_NO, KC_NO, KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK,\
M_GUI, KC_NO, KC_NO, KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK,\
\
KC_NO, M_RESETWM,\
KC_NO,\
LGUI(KC_ENTER), LGUI(KC_BSLS), KC_NO,\
\
\
M_SHUTDOWN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LGUI(KC_P), 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,\
M_SHUTDOWN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LGUI(KC_P), 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, \

View File

@ -1,58 +0,0 @@
// See symbols.h for docs
#define BETA_LAYER_MAGIC_MACRO BETA_LAYER(FKEYS)
#ifdef BETA_LAYER_LAYOUTS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_NULL
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
TO(LAYER_MAIN), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO,\
KC_TRNS, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_NO,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO,\
\
KC_TRNS, KC_TRNS,\
KC_TRNS,\
KC_TRNS, KC_TRNS, KC_TRNS,\
\
\
KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, \
KC_NO, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, 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, TO(LAYER_MAIN), \
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
\
KC_TRNS, KC_TRNS,\
KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS \
)
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_LEDS
#define BETA_LAYER_CONTEXT_DATA LEDS_ergodox(\
LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, \
LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
\
LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, \
LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, LC_CYAN, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF \
)
BETA_LAYER_MAGIC_MACRO
#endif
#undef BETA_LAYER_CONTEXT_DATA
#undef BETA_LAYER_MAGIC_MACRO

View File

@ -10,25 +10,25 @@
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
TO(LAYER_MAIN), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO,\
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,\
KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,\
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
\
KC_TRNS, KC_TRNS,\
KC_TRNS,\
KC_TRNS, KC_TRNS, KC_TRNS,\
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, TO(LAYER_MAIN), \
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_TRNS, KC_TRNS,\
KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS \
KC_NO, KC_NO,\
KC_NO, \
KC_NO, KC_TRNS, KC_NO \
)
BETA_LAYER_MAGIC_MACRO

View File

@ -9,14 +9,14 @@
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
KC_ESCAPE, KC_0, KC_9, KC_8, KC_7, KC_6, TO(LAYER_NUMPAD),\
KC_TAB, KC_NO, KC_O, KC_I, KC_U, KC_Y, KC_LGUI,\
KC_DELETE, KC_L, OSL(LAYER_FLIP_SYMBOLS_A), KC_K, KC_J, KC_H,\
KC_LCTL, KC_COMMA, KC_DOT, KC_P, KC_M, KC_N, KC_LALT,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_ESCAPE, KC_0, KC_9, KC_8, KC_7, KC_6, KC_NO,\
KC_NO, KC_NO, KC_O, KC_I, KC_U, KC_Y, KC_NO,\
KC_NO, KC_L, OSL(LAYER_FLIP_SYMBOLS_A), KC_K, KC_J, KC_H,\
KC_NO, KC_COMMA, KC_DOT, KC_P, KC_M, KC_N, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
\
TD(TD_SCREENSHOT), TD(TD_OCR),\
TD(TD_WMLAYOUT),\
KC_NO, KC_NO,\
KC_NO,\
KC_ENTER, KC_RSFT, KC_NO,\
\
\
@ -70,7 +70,7 @@
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
KC_NO, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO,\
KC_NO, KC_GRAVE, KC_LPRN, KC_RPRN, KC_QUES, KC_LCBR, KC_TRNS,\
KC_NO, KC_GRAVE, KC_LPRN, KC_RPRN, KC_QUES, KC_LCBR, KC_NO,\
KC_NO, KC_TILD, KC_QUOTE, KC_COMMA, KC_DOT, KC_DQUO,\
KC_NO, KC_NO, KC_LBRC, KC_RBRC, KC_EXLM, KC_RCBR, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\

View File

@ -15,20 +15,20 @@
KC_NO, RGB_SPD, RGB_SPI, KC_NO, KC_NO, KC_NO, RGB_HUD,\
KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD,\
\
RGB_TOG, KC_NO,\
KC_NO,\
KC_NO, KC_NO, KC_NO,\
RGB_TOG, KC_NO,\
KC_NO,\
KC_NO, KC_NO, KC_NO,\
\
\
KC_NO, LIGHT_HUD, LIGHT_HUI, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, LIGHT_SAD, LIGHT_SAI, KC_NO, KC_NO, KC_NO, KC_NO,\
LIGHT_VAD, LIGHT_VAI, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, LIGHT_SPD, LIGHT_SPI, KC_NO, KC_NO, KC_NO, KC_NO,\
LIGHT_MOD, KC_NO, TO(LAYER_MAIN), KC_NO, KC_NO,\
KC_NO, LIGHT_HUD, LIGHT_HUI, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, LIGHT_SAD, LIGHT_SAI, KC_NO, KC_NO, KC_NO, KC_NO,\
LIGHT_VAD, LIGHT_VAI, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, LIGHT_SPD, LIGHT_SPI, KC_NO, KC_NO, KC_NO, KC_NO,\
LIGHT_MOD, KC_NO, KC_NO, KC_NO, KC_NO,\
\
KC_NO, LIGHT_TOG,\
KC_NO, LIGHT_TOG,\
KC_NO,\
QK_BOOTLOADER, KC_NO, KC_NO\
QK_BOOTLOADER, KC_NO, KC_NO\
)
BETA_LAYER_MAGIC_MACRO

View File

@ -8,21 +8,23 @@
// Second will have index 1, etc. See layers.h
// These MUST be first, since they activate other layers.
// These MUST be first.
// (For example, LAYER_ARROWS overlays on top of LAYER_MAIN.)
#include "main.h"
#include "russian.h"
// The order of these doesn't really matter,
// since only one will be active at a time.
#include "numbers.h" // Must be under symbols and arrows
// The order of the layers below doesn't matter,
// since they avoid transparent keys.
#include "symbols.h"
#include "symbols_ru.h"
#include "flip.h"
#include "arrows.h"
#include "desktop.h"
#include "fkeys.h"
//#include "fkeys.h"
#include "keyboard.h"
#include "numpad.h"

View File

@ -9,11 +9,11 @@
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
KC_ESCAPE, KC_1, KC_2, KC_3, KC_4, KC_5, TO(LAYER_NUMPAD),\
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LGUI,\
KC_ESCAPE, KC_1, KC_2, KC_3, KC_4, KC_5, TO(LAYER_NUMBERS),\
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LEAD, \
KC_DELETE, KC_A, KC_S, KC_D, KC_F, KC_G,\
KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT,\
OSL(LAYER_DESKTOP), OSL(LAYER_FKEYS), KC_NO, KC_LSFT, MO(LAYER_ARROWS),\
OSL(LAYER_DESKTOP), KC_NO, KC_NO, KC_LSFT, MO(LAYER_ARROWS),\
\
TD(TD_SCREENSHOT), TD(TD_OCR),\
TD(TD_WMLAYOUT),\
@ -23,8 +23,8 @@
KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, LGUI(KC_TAB),\
KC_NO, KC_Y, KC_U, KC_I, KC_O, KC_NO, KC_NO,\
KC_H, KC_J, KC_K, MO(LAYER_SYMBOLS), KC_L, KC_LEAD,\
KC_NO, KC_N, KC_M, KC_P, KC_DOT, KC_COMMA, KC_NO,\
KC_RIGHT, KC_NO, TO(LAYER_KEYBOARD), KC_NO, LGUI(KC_SPACE),\
KC_NO, KC_N, KC_M, KC_P, KC_NO, KC_NO, KC_NO,\
KC_RIGHT, KC_NO, KC_NO, KC_NO, LGUI(KC_SPACE),\
\
KC_NO, KC_NO,\
KC_NO, \

View File

@ -0,0 +1,58 @@
// See symbols.h for docs
#define BETA_LAYER_MAGIC_MACRO BETA_LAYER(NUMBERS)
#ifdef BETA_LAYER_LAYOUTS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_EN
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
TO(LAYER_MAIN), KC_1, KC_2, KC_3, KC_4, KC_5, TO(LAYER_MAIN),\
KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO,\
KC_NO, MO(LAYER_SYMBOLS), KC_NO, KC_NO, KC_DOT, KC_MINUS, \
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,\
\
KC_NO, KC_NO,\
KC_NO,\
KC_TRNS, KC_TRNS, KC_NO,\
\
\
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\
)
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_LEDS
#define BETA_LAYER_CONTEXT_DATA LEDS_ergodox(\
LC_GREEN, LC_GREEN, LC_GREEN, LC_GREEN, LC_GREEN, \
LC_GREEN, LC_GREEN, LC_GREEN, LC_GREEN, LC_GREEN, \
LC_RED, LC_OFF, LC_OFF, LC_PINK, LC_CYAN, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
\
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF \
)
BETA_LAYER_MAGIC_MACRO
#endif
#undef BETA_LAYER_CONTEXT_DATA
#undef BETA_LAYER_MAGIC_MACRO

View File

@ -1,67 +0,0 @@
// See symbols.h for docs
#define BETA_LAYER_MAGIC_MACRO BETA_LAYER(NUMPAD)
#ifdef BETA_LAYER_LAYOUTS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_EN
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_KEYS
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
TO(LAYER_MAIN), KC_CIRC, KC_NO, KC_HASH, KC_DLR, KC_PERC, TO(LAYER_MAIN),\
KC_TRANSPARENT, KC_NO, KC_7, KC_8, KC_9, KC_ASTR, KC_SLASH,\
KC_TRANSPARENT, KC_PLUS, KC_4, KC_5, KC_6, KC_0,\
KC_TRANSPARENT, KC_MINUS, KC_1, KC_2, KC_3, KC_DOT, KC_NO,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_NO, KC_NO,\
\
KC_TRANSPARENT, KC_TRANSPARENT,\
KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,\
\
\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,\
KC_TRANSPARENT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_TRANSPARENT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,\
\
KC_TRANSPARENT, KC_TRANSPARENT,\
KC_TRANSPARENT,\
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT\
)
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_LEDS
#define BETA_LAYER_CONTEXT_DATA LEDS_ergodox(\
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_GREEN, LC_GREEN, LC_GREEN, LC_YELLOW, \
LC_YELLOW, LC_GREEN, LC_GREEN, LC_GREEN, LC_GREEN, \
LC_YELLOW, LC_GREEN, LC_GREEN, LC_GREEN, LC_YELLOW, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
\
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF \
)
BETA_LAYER_MAGIC_MACRO
#endif
#ifdef BETA_LAYER_INDICATORS
case BETA_LAYER_MAGIC_MACRO:
ergodox_right_led_1_on();
//ergodox_right_led_2_on();
//ergodox_right_led_3_on();
break;
#endif
#undef BETA_LAYER_CONTEXT_DATA
#undef BETA_LAYER_MAGIC_MACRO

View File

@ -38,7 +38,7 @@
#define BETA_LAYER_CONTEXT_DATA LAYOUT_ergodox(\
KC_NO, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_NO,\
KC_NO, KC_GRAVE, KC_LPRN, KC_RPRN, KC_QUES, KC_LCBR, KC_NO,\
KC_NO, KC_TILD, KC_QUOTE, KC_COMMA, KC_DOT, KC_DQUO,\
KC_NO, KC_TILD, KC_QUOT, KC_COMMA, KC_DOT, KC_DQUO,\
KC_NO, KC_NO, KC_LBRC, KC_RBRC, KC_EXLM, KC_RCBR, KC_NO,\
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,\
\
@ -81,7 +81,7 @@
\
LC_OFF, LC_OFF, LC_OFF, LC_OFF, LC_OFF, \
LC_GREEN, LC_GREEN, LC_CYAN, LC_OFF, LC_CYAN, \
LC_CYAN, LC_GREEN, LC_PINK, LC_ORANGE, LC_CYAN, \
LC_CYAN, LC_GREEN, LC_PINK, LC_RED, LC_CYAN, \
LC_GREEN, LC_GREEN, LC_PINK, LC_OFF, LC_OFF, \
LC_OFF, LC_OFF, LC_OFF, LC_OFF \
)

View File

@ -1,6 +1,13 @@
LEADER_EXTERNS();
void leader_start(void) { ergodox_right_led_3_on(); }
void leader_end(void) { ergodox_right_led_3_off(); }
void leader_start(void) {
ergodox_right_led_3_on();
}
void leader_end(void) {
ergodox_right_led_3_off();
}
void matrix_scan_user(void) {
LEADER_DICTIONARY() {
leading = false;
@ -18,32 +25,25 @@ void matrix_scan_user(void) {
SEND_STRING(SECRET_SCHOOL_EMAIL);
}
SEQ_THREE_KEYS(KC_L, KC_I, KC_G) {
// TODO: cleanup.
// This is a copy of RGB_TOG
switch (rgb_matrix_get_flags()) {
case LED_FLAG_ALL: {
rgb_matrix_set_flags(LED_FLAG_NONE);
keyboard_config.rgb_matrix_enable = false;
rgb_matrix_set_color_all(0, 0, 0);
}
break;
default: {
rgb_matrix_set_flags(LED_FLAG_ALL);
keyboard_config.rgb_matrix_enable = true;
}
break;
}
eeconfig_update_kb(keyboard_config.raw);
SEQ_TWO_KEYS(KC_K, KC_B) {
layer_move(LAYER_KEYBOARD);
}
//SEQ_ONE_KEY(KC_F) {}
//
//SEQ_TWO_KEYS(KC_A, KC_S) {
// register_code(KC_LGUI);
// register_code(KC_S);
// unregister_code(KC_S);
// unregister_code(KC_LGUI);
//SEQ_ONE_KEY(KC_F) {
// doesn't work, no deactivate
// also, this is slow since laeder key uses dumb logic
// set_oneshot_layer(LAYER_FKEYS, ONESHOT_START);
//}
SEQ_TWO_KEYS(KC_F, KC_1) { tap_code(KC_F1); }
SEQ_TWO_KEYS(KC_F, KC_2) { tap_code(KC_F2); }
SEQ_TWO_KEYS(KC_F, KC_3) { tap_code(KC_F3); }
SEQ_TWO_KEYS(KC_F, KC_4) { tap_code(KC_F4); }
SEQ_TWO_KEYS(KC_F, KC_5) { tap_code(KC_F5); }
SEQ_TWO_KEYS(KC_F, KC_Q) { tap_code(KC_F6); }
SEQ_TWO_KEYS(KC_F, KC_W) { tap_code(KC_F7); }
SEQ_TWO_KEYS(KC_F, KC_E) { tap_code(KC_F8); }
SEQ_TWO_KEYS(KC_F, KC_R) { tap_code(KC_F9); }
SEQ_TWO_KEYS(KC_F, KC_T) { tap_code(KC_F10); }
}
}