summaryrefslogtreecommitdiff
path: root/users/ninjonas
diff options
context:
space:
mode:
Diffstat (limited to 'users/ninjonas')
-rw-r--r--users/ninjonas/.gitignore1
-rw-r--r--users/ninjonas/README.md117
-rw-r--r--users/ninjonas/combos.c55
-rw-r--r--users/ninjonas/config.h20
-rw-r--r--users/ninjonas/encoder.c105
-rw-r--r--users/ninjonas/ninjonas.c39
-rw-r--r--users/ninjonas/ninjonas.h148
-rw-r--r--users/ninjonas/oled.c112
-rw-r--r--users/ninjonas/process_records.c117
-rw-r--r--users/ninjonas/process_records.h30
-rw-r--r--users/ninjonas/rules.mk16
-rw-r--r--users/ninjonas/tap_dances.c122
-rw-r--r--users/ninjonas/tap_dances.h37
13 files changed, 0 insertions, 919 deletions
diff --git a/users/ninjonas/.gitignore b/users/ninjonas/.gitignore
deleted file mode 100644
index c6df8c0139..0000000000
--- a/users/ninjonas/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-secrets.c
diff --git a/users/ninjonas/README.md b/users/ninjonas/README.md
deleted file mode 100644
index f6c2f32352..0000000000
--- a/users/ninjonas/README.md
+++ /dev/null
@@ -1,117 +0,0 @@
-# QMK User Configuration for [ninjonas](https://github.com/ninjonas/qmk-yonas)
-Tired of copying and pasting the same macros and tap dances for all my keymaps. Utilizing user keymaps functionality.
-See: https://docs.qmk.fm/#/feature_userspace
-
-## [ninjonas.c](ninjonas.c)
-- ninjonas [QMK user configuration](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_userspace.md)
-- On `keymap.c` include `ninjonas.h`
- ```c
- #include "ninjonas.h"
- ```
-
-## Supported Keyboards
-- [Crkbd ](../../keyboards/crkbd/keymaps/ninjonas)
-- [Hotdox](../../keyboards/hotdox/keymaps/ninjonas)
-- [Pinky3](../../keyboards/pinky/3/keymaps/ninjonas)
-- [Lily58](../../keyboards/lily58/keymaps/ninjonas)
-- [Kyria](../../keyboards/kyria/keymaps/ninjonas)
-
-## Features
-### [Keys](ninjonas.h)
-|Code | Description |
-|---|---|
-|K_LOCK | MacOS shortcut to execute lock command Cmd + CTRL + Q |
-|K_CSCN | MacOS shortcut to copy a portion of the screen to the clipboard |
-|K_MDSH | MacOS shortcut to get em-dash `–` |
-|K_CPRF | Cmd + Shift + M. Used for switching Google Chrome profiles |
-
-### [Layers](ninjonas.h)
-|Code | Description |
-|---|---|
-|LT_LOW | Tap for ENTER, hold for RAISE |
-|LT_RAI | Tap for SPACE, hold for LOWER |
-
-### [Mod-Taps](ninjonas.h)
-|Code | Description |
-|---|---|
-|MT_DEL | Tap for Delete, hold for ALT + SHIFT |
-|MT_EQL | Tap for =, SHIFT |
-
-### [Layout Blocks](ninjonas.h)
-Predefined keyboard layout templates to speed up configuring split keyboards
-
-|Code | Description |
-|---|---|
-|QWERTY | Qwerty Layout |
-|DVORAK | Dvorak Layout |
-|COLEMAK | Colemak Layout |
-|NUM | Number Rows |
-|FUNC | Function Rows |
-|SYM | Symbol Rows \(When holding shift on numbers\) |
-|NAV | Navigation Cluster |
-|MOUSE | Mouse Cluster |
-|MEDIA | Media Cluster |
-|MOD | Modifier Cluster |
-|NUMPAD | Numpad Cluster |
-
-### [Macros](process_records.c)
-|Code | Description |
-|---|---|
-|M_PYNV | Macro to activate pyenv with the name `jira` |
-|M_MAKE | Macro to send QMK make command to compile keyboard |
-|M_MALL | Macro to send QMK make command to all [ninjonas](#Supported%20Keyboards) keyboards |
-|M_FLSH | Macro to send QMK make command to compile keyboard with the correct bootloader |
-|M_VRSN | Macro to send QMK version |
-|M_SHFT | Sends Cmd + alt + shift to a keycode to activate [ShiftIt](https://github.com/fikovnik/ShiftIt) |
-|M_CODE | Opens [Visual Studio Code](https://code.visualstudio.com/) on current directory |
-|M_TERM | Launches Spotlight and calls Terminal |
-|M_XXX1 to M_XXX5 | Reserved for secret macros see [Secrets](#secrets) |
-
-### [Tap-Dance](tap_dances.h)
-|Code | Description |
-|---|---|
-|T_ESC | Tap once for ESC, double tap for CAPS_LOCK |
-|T_LBRC | Tap once for [, double for back browser |
-|T_RBRC | Tap once for ], double for forward browser |
-|T_TAB | Tap once for TAB, double for CTRL + TAB |
-|T_GRV | Tap once for GRV, double for Cmd + GRV |
-|T_GUI | Tap once for Cmd, double to open spotlight |
-|T_CPAP | Tap for Cmd + V, hold for Cmd + C, double tap to open [Line](https://line.me/en/) app, triple tap for itunes. |
-|T_Y | Tap for Y, double tap for NUMPAD layer |
-
-### [Combos](combos.h)
-|Code | Description |
-|---|---|
-|EQ_QUIT | Press E + Q will trigger Cmd + Q |
-|RW_CLOSE | Press R + W will trigger Cmd + W|
-|ET_TAB | Press E + T will trigger Cmd + T|
-|ZC_COPY | Press Z + C will trigger Cmd + C|
-|XV_PASTE | Press X + V will trigger Cmd + V|
-
-### Secrets
-There's times where you have macros you don't want to share like emails, an address you need but you always forget, passwords 😱, & and private strings. Based off [drashna's secret macros](https://github.com/qmk/qmk_firmware/blob/master/users/drashna/readme_secrets.md), it's now possible to do this. All you need to do is create a `secrets.c` file. Below is an example of how this is used.
-
-```c
-// secrets.c
-#include "ninjonas.h"
-
-static const char * const secret[] = {
- "BLANK1",
- "BLANK2",
- "BLANK3",
- "BLANK4",
- "BLANK5"
-};
-
-bool process_record_secrets(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case M_XXX1...M_XXX5:
- if (record->event.pressed) {
- send_string(secret[keycode - M_XXX1]);
- }
- break;
- }
- return true;
-}
-
-``` \ No newline at end of file
diff --git a/users/ninjonas/combos.c b/users/ninjonas/combos.c
deleted file mode 100644
index 3346af4ce4..0000000000
--- a/users/ninjonas/combos.c
+++ /dev/null
@@ -1,55 +0,0 @@
-#include "ninjonas.h"
-
-#ifdef COMBO_ENABLE
-enum combo_events {
- EQ_QUIT,
- RW_CLOSE,
- QT_TAB,
- ZC_COPY,
- XV_PASTE
-};
-
-const uint16_t PROGMEM quit_combo[] = {KC_E, KC_Q, COMBO_END};
-const uint16_t PROGMEM close_combo[] = {KC_R, KC_W, COMBO_END};
-const uint16_t PROGMEM tab_combo[] = {KC_Q, KC_T, COMBO_END};
-const uint16_t PROGMEM copy_combo[] = {KC_Z, KC_C, COMBO_END};
-const uint16_t PROGMEM paste_combo[] = {KC_X, KC_V, COMBO_END};
-
-combo_t key_combos[] = {
- [EQ_QUIT] = COMBO_ACTION(quit_combo),
- [RW_CLOSE] = COMBO_ACTION(close_combo),
- [QT_TAB] = COMBO_ACTION(tab_combo),
- [ZC_COPY] = COMBO_ACTION(copy_combo),
- [XV_PASTE] = COMBO_ACTION(paste_combo),
-};
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- switch(combo_index) {
- case EQ_QUIT:
- if (pressed) {
- tap_code16(LGUI(KC_Q));
- }
- break;
- case RW_CLOSE:
- if (pressed) {
- tap_code16(LGUI(KC_W));
- }
- break;
- case QT_TAB:
- if (pressed) {
- tap_code16(LGUI(KC_T));
- }
- break;
- case ZC_COPY:
- if (pressed) {
- tap_code16(LGUI(KC_C));
- }
- break;
- case XV_PASTE:
- if (pressed) {
- tap_code16(LGUI(KC_V));
- }
- break;
- }
-}
-#endif
diff --git a/users/ninjonas/config.h b/users/ninjonas/config.h
deleted file mode 100644
index 17bb03865c..0000000000
--- a/users/ninjonas/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#ifdef TAPPING_TERM
- #undef TAPPING_TERM
- #define TAPPING_TERM 200
-#endif
-#define TAPPING_TERM_PER_KEY
-
-// Mouse Settings: Smoothing out mouse movement on keypress
-#ifndef MOUSEKEY_INTERVAL
- #undef MOUSEKEY_INTERVAL
- #define MOUSEKEY_INTERVAL 16
-#endif
-#define MOUSEKEY_DELAY 0
-#define MOUSEKEY_TIME_TO_MAX 60
-#define MOUSEKEY_MAX_SPEED 7
-#define MOUSEKEY_WHEEL_DELAY 0
-
-#ifdef COMBO_ENABLE
- #undef COMBO_TERM
- #define COMBO_TERM 60
-#endif
diff --git a/users/ninjonas/encoder.c b/users/ninjonas/encoder.c
deleted file mode 100644
index f1b448b79b..0000000000
--- a/users/ninjonas/encoder.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/* Copyright 2020 ninjonas
- *
- * 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 "ninjonas.h"
-
-#ifdef ENCODER_ENABLE
-void left_encoder_cw(void) {
- switch (get_highest_layer(layer_state)) {
- case _LOWER:
- tap_code16(LGUI(KC_TAB));
- break;
- case _RAISE:
- tap_code(KC_PGDN);
- break;
- case _ADJUST:
- rgblight_decrease_hue();
- break;
- default:
- tap_code(KC_BRID);
- break;
- }
-}
-void left_encoder_acw(void) {
- switch (get_highest_layer(layer_state)) {
- case _LOWER:
- tap_code16(SGUI(KC_TAB));
- break;
- case _RAISE:
- tap_code(KC_PGUP);
- break;
- case _ADJUST:
- rgblight_increase_hue();
- break;
- default:
- tap_code(KC_BRIU);
- break;
- }
-}
-void right_encoder_cw(void) {
- switch (get_highest_layer(layer_state)) {
- case _LOWER:
- tap_code(KC_DOWN);
- break;
- case _RAISE:
- tap_code16(LCTL(LSFT(KC_TAB)));
- break;
- case _ADJUST:
- rgblight_decrease_val();
- break;
- default:
- tap_code(KC_VOLD);
- break;
- }
-}
-void right_encoder_acw(void) {
- switch (get_highest_layer(layer_state)) {
- case _LOWER:
- tap_code(KC_UP);
- break;
- case _RAISE:
- tap_code16(LCTL(KC_TAB));
- break;
- case _ADJUST:
- rgblight_increase_val();
- break;
- default:
- tap_code(KC_VOLU);
- break;
- }
-}
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- encoder_rotated_timer = timer_read();
- if (index == 0) {
- left_encoder_rotated = true;
- if (clockwise) {
- left_encoder_cw();
- } else {
- left_encoder_acw();
- }
- }
- else if (index == 1) {
- right_encoder_rotated = true;
- if (clockwise) {
- right_encoder_cw();
- } else {
- right_encoder_acw();
- }
- }
- return true;
-}
-
-#endif
diff --git a/users/ninjonas/ninjonas.c b/users/ninjonas/ninjonas.c
deleted file mode 100644
index 8d37641aa3..0000000000
--- a/users/ninjonas/ninjonas.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2019 @ninjonas
- *
- * 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 "ninjonas.h"
-
-layer_state_t layer_state_set_user (layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
-#ifdef RGBLIGHT_ENABLE
-extern rgblight_config_t rgblight_config;
-#endif
-void keyboard_post_init_user(void) {
- #ifdef RGBLIGHT_ENABLE
- // Cycles through the entire hue wheel and resetting to default color
- uint16_t default_hue = rgblight_config.hue;
- rgblight_enable_noeeprom();
- layer_state_set_user(layer_state);
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- for (uint16_t i = 255; i > 0; i--) {
- rgblight_sethsv_noeeprom((i + default_hue) % 255, rgblight_config.sat, rgblight_config.val);
- matrix_scan();
- wait_ms(10);
- }
- #endif
- layer_state_set_user(layer_state);
-}
diff --git a/users/ninjonas/ninjonas.h b/users/ninjonas/ninjonas.h
deleted file mode 100644
index 01df7c6b12..0000000000
--- a/users/ninjonas/ninjonas.h
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2019 @ninjonas
- *
- * 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 "quantum.h"
-#include "version.h"
-#include "eeprom.h"
-#include "process_records.h"
-
-#ifdef TAP_DANCE_ENABLE
- #include "tap_dances.h"
-#endif
-#if defined(KEYBOARD_lily58_rev1) & defined(PROTOCOL_LUFA)
- #include "lufa.h"
- #include "split_util.h"
-#endif
-
-#ifdef ENCODER_ENABLE
-bool left_encoder_rotated;
-bool right_encoder_rotated;
-uint16_t encoder_rotated_timer;
-#endif
-
-#define _QWERTY 0
-#define _DVORAK 1
-#define _COLEMAK 2
-#define _LOWER 3
-#define _RAISE 4
-#define _ADJUST 5
-#define _NUMPAD 6
-
-// Shortcut Keys
-#define K_LOCK LGUI(LCTL(KC_Q)) // Locks screen on MacOS
-#define K_CSCN LGUI(LCTL(LSFT(KC_4))) // Copy a portion of the screen to the clipboard
-#define K_CPRF LGUI(LSFT(KC_M)) // Cmd + Shift + M. Used for switching Google Chrome profiles
-#define K_MDSH LSFT(LALT(KC_MINS))
-
-// Layer Keys
-#define LT_LOW LT(_LOWER, KC_ENT)
-#define LT_RAI LT(_RAISE, KC_SPC)
-
-// Mod-Tap Keys
-#define MT_DEL MT(MOD_LALT | MOD_LSFT, KC_DEL)
-#define MT_EQL MT(MOD_RSFT, KC_EQL)
-
-// Layout blocks
-#define _____________________QWERTY_L1______________________ T_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T
-#define _____________________QWERTY_L2______________________ T_ESC, KC_A, KC_S, KC_D, KC_F, KC_G
-#define _____________________QWERTY_L3______________________ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B
-
-#define _____________________QWERTY_R1______________________ T_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS
-#define _____________________QWERTY_R2______________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT
-#define _____________________QWERTY_R3______________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT_EQL
-
-#define _____________________DVORAK_L1______________________ T_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y
-#define _____________________DVORAK_L2______________________ T_ESC, KC_A, KC_O, KC_E, KC_U, KC_I
-#define _____________________DVORAK_L3______________________ KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X
-
-#define _____________________DVORAK_R1______________________ KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS
-#define _____________________DVORAK_R2______________________ KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH
-#define _____________________DVORAK_R3______________________ KC_B, KC_M, KC_W, KC_V, KC_Z, MT_EQL
-
-#define _____________________COLEMAK_L1_____________________ T_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G
-#define _____________________COLEMAK_L2_____________________ T_ESC, KC_A, KC_R, KC_S, KC_T, KC_D
-#define _____________________COLEMAK_L3_____________________ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B
-
-#define _____________________COLEMAK_R1_____________________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS
-#define _____________________COLEMAK_R2_____________________ KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT
-#define _____________________COLEMAK_R3_____________________ KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, MT_EQL
-
-#define _____________________NUM_LEFT_______________________ T_GRV, KC_1, KC_2, KC_3, KC_4, KC_5
-#define _____________________NUM_RIGHT______________________ KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS
-
-#define _____________________FUNC_LEFT______________________ KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5
-#define _____________________FUNC_RIGHT_____________________ KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12
-
-#define _____________________SYM_LEFT_______________________ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC
-#define _____________________SYM_RIGHT______________________ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS
-
-#define _____________________LOWER_L1_______________________ M_XXX2, M_XXX3, _________MEDIA_1_________, K_CSCN
-#define _____________________LOWER_L2_______________________ M_XXX4, M_XXX5, _________MEDIA_2_________, XXXXXXX
-#define _____________________LOWER_L3_______________________ KC_LSFT, M_SHFT, _________MEDIA_3_________, T_LBRC
-
-#define _____________________LOWER_R1_______________________ _______________NAV_1______________, XXXXXXX, K_MDSH
-#define _____________________LOWER_R2_______________________ _______________NAV_2______________, K_LOCK, XXXXXXX
-#define _____________________LOWER_R3_______________________ T_RBRC, KC_M, M_TERM, M_CODE, M_XXX1, M_PYNV
-
-#define _____________________ADJUST_L1______________________ M_MAKE, EE_CLR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-
-#if defined(RGB_MATRIX_ENABLE) || defined(RGBLIGHT_ENABLE)
- #define _____________________ADJUST_L2______________________ M_VRSN, M_MALL, RGB_SPI, RGB_SAI, RGB_HUI, RGB_VAI
- #define _____________________ADJUST_L3______________________ M_FLSH, XXXXXXX, RGB_SPD, RGB_SAD, RGB_HUD, RGB_VAD
-#else
- #define _____________________ADJUST_L2______________________ M_VRSN, M_MALL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- #define _____________________ADJUST_L3______________________ M_FLSH, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-#endif
-
-#if defined(RGB_MATRIX_ENABLE) || defined(RGBLIGHT_ENABLE)
- #define _____________________ADJUST_R1______________________ RGB_TOG, XXXXXXX, XXXXXXX, COLEMAK, DVORAK, QWERTY
- #define _____________________ADJUST_R3______________________ RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-#else
- #define _____________________ADJUST_R1______________________ XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, DVORAK, QWERTY
- #define _____________________ADJUST_R3______________________ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-#endif
-#define _____________________ADJUST_R2______________________ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-
-#define _____________________NUMPAD_1_______________________ T_Y, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_PAST
-#define _____________________NUMPAD_2_______________________ XXXXXXX, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PSLS
-#define _____________________NUMPAD_3_______________________ KC_P0, KC_P1, KC_P2, KC_P3, KC_PDOT, KC_COLN
-
-#define _______________NAV_1______________ KC_PGUP, KC_HOME, KC_UP, KC_END
-#define _______________NAV_2______________ KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT
-
-#define _____________MOUSE_1______________ KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_D
-#define _____________MOUSE_2______________ KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U
-
-#define __________________________________ _______, _______, _______, _______
-
-#define _____________MOD_LEFT_____________ KC_LALT, T_GUI, KC_LCTL, LT_RAI
-#define _____________MOD_RIGHT____________ LT_LOW, KC_BSPC, MT_DEL, T_CPAP
-
-#define _________MEDIA_1_________ KC_BRIU, KC_MPLY, KC_MUTE
-#define _________MEDIA_2_________ KC_BRID, KC_MFFD, KC_VOLU
-#define _________MEDIA_3_________ XXXXXXX, KC_MRWD, KC_VOLD
-
-#if defined(KEYBOARD_crkbd_rev1) || defined(KEYBOARD_kyria_rev1)
- #define ________MOD_LEFT_________ T_GUI, KC_LCTL, LT_RAI
- #define ________MOD_RIGHT________ LT_LOW, KC_BSPC, MT_DEL
-#else
- #define ________MOD_LEFT_________ KC_LALT, T_GUI, KC_LCTL
- #define ________MOD_RIGHT________ KC_BSPC, MT_DEL, T_CPAP
-#endif
-
-// Layout wrappers
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) \ No newline at end of file
diff --git a/users/ninjonas/oled.c b/users/ninjonas/oled.c
deleted file mode 100644
index 73cd50fb8c..0000000000
--- a/users/ninjonas/oled.c
+++ /dev/null
@@ -1,112 +0,0 @@
-#include QMK_KEYBOARD_H
-#include <stdio.h>
-#include "ninjonas.h"
-
-#if defined(OLED_ENABLE) & !defined(KEYBOARD_kyria_rev1)
-
-static uint32_t oled_timer = 0;
-
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (is_keyboard_master()) {
- return OLED_ROTATION_0;
- }
- return OLED_ROTATION_180;
-}
-
-bool process_record_oled(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- oled_timer = timer_read32();
- }
- return true;
-}
-
-void render_layout_state(void) {
- oled_write_P(PSTR("Layout: "), false);
- switch (get_highest_layer(default_layer_state)) {
- case _COLEMAK:
- oled_write_P(PSTR("Colemak"), false);
- break;
- case _DVORAK:
- oled_write_P(PSTR("Dvorak"), false);
- break;
- case _QWERTY:
- oled_write_P(PSTR("Qwerty"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undefined"), false);
- }
-}
-
-void oled_white_space(void){
- oled_write_P(PSTR(" "), false);
-}
-
-void render_layer_state(void) {
- oled_write_P(PSTR("\nLayer:"), false);
- bool lower = layer_state_is(_LOWER) & !layer_state_is(_ADJUST);
- bool raise = layer_state_is(_RAISE) & !layer_state_is(_ADJUST);
- bool adjust = layer_state_is(_ADJUST);
- bool numpad = layer_state_is(_NUMPAD);
-
- if(lower){
- oled_write_P(PSTR(" Lower "), true);
- } else if(raise){
- oled_write_P(PSTR(" Raise "), true);
- } else if(adjust){
- oled_write_P(PSTR(" Adjust "), true);
- } else if(numpad) {
- oled_write_P(PSTR(" Numpad "), true);
- } else {
- oled_write_P(PSTR(" Default"), false);
- }
-}
-
-void render_mod_state(uint8_t modifiers) {
- oled_write_P(PSTR("\nMods: "), false);
- oled_write_P(PSTR("SHF"), (modifiers & MOD_MASK_SHIFT));
- oled_white_space();
- oled_write_P(PSTR("CTL"), (modifiers & MOD_MASK_CTRL));
- oled_white_space();
- oled_write_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT));
- oled_white_space();
- oled_write_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI));
-}
-
-void render_status(void){
- render_layout_state();
- oled_write_P(PSTR("\n"), false);
- render_layer_state();
- render_mod_state(get_mods()|get_oneshot_mods());
-}
-
-static void render_logo(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4,
- 0};
-
- oled_write_P(qmk_logo, false);
-}
-
-bool oled_task_user(void) {
- if (timer_elapsed32(oled_timer) > 15000) {
- oled_off();
- return false;
- }
- #ifndef SPLIT_KEYBOARD
- else { oled_on(); }
- #endif
-
- if (is_keyboard_master()) {
- render_status();
- } else {
- render_logo();
- oled_write_P(PSTR("\n"), false);
- oled_scroll_left();
- }
- return false;
-}
-
-#endif
diff --git a/users/ninjonas/process_records.c b/users/ninjonas/process_records.c
deleted file mode 100644
index c298227e51..0000000000
--- a/users/ninjonas/process_records.c
+++ /dev/null
@@ -1,117 +0,0 @@
-#include "ninjonas.h"
-
-__attribute__((weak))
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; }
-
-__attribute__((weak))
-bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { return true; }
-
-#ifdef OLED_ENABLE
-__attribute__((weak))
-bool process_record_oled(uint16_t keycode, keyrecord_t *record) { return true; }
-#endif
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
-
- // Sends pyenv to activate 'jira' environment
- case M_PYNV:
- if (record->event.pressed) {
- SEND_STRING("pyenv activate jira\n");
- }
- break;
-
- // Sends Cmd + alt + shift to a keycode to activate shiftit. See: https://github.com/fikovnik/ShiftIt
- case M_SHFT:
- if (record->event.pressed) {
- register_code(KC_LGUI);
- register_code(KC_LALT);
- register_code(KC_LCTL);
- } else {
- unregister_code(KC_LGUI);
- unregister_code(KC_LALT);
- unregister_code(KC_LCTL);
- }
- break;
-
- // Sends QMK make command to compile keyboard
- case M_MAKE:
- if (record->event.pressed) {
- SEND_STRING("rm -f *.hex && rm -rf .build/ && make " QMK_KEYBOARD ":" QMK_KEYMAP SS_TAP(X_ENTER));
- }
- break;
-
- // Sends QMK make command to compile all keyboards
- case M_MALL:
- if (record->event.pressed) {
- SEND_STRING("rm -f *.hex && rm -rf .build/ && make crkbd:ninjonas lily58:ninjonas hotdox:ninjonas pinky/3:ninjonas kyria:ninjonas\n");
- }
- break;
-
- // Sends QMK make command with the correct bootloader
- case M_FLSH:
- if (!record->event.pressed) {
- SEND_STRING("rm -f *.hex && rm -rf .build/ && make " QMK_KEYBOARD ":" QMK_KEYMAP
- #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
- ":dfu "
- #elif defined(BOOTLOADER_CATERINA)
- ":avrdude "
- #endif
- SS_TAP(X_ENTER)
- );
-
- // Send reset_keyboard command instead of pressing reset button
- #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
- reset_keyboard();
- #endif
- }
- break;
-
- // Sends QMK version
- case M_VRSN:
- if (record->event.pressed) {
- SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE);
- }
- break;
-
- // Opens Visual Studio Code on current directory
- case M_CODE:
- if (record->event.pressed) {
- SEND_STRING("code .\n");
- }
- break;
-
- // Opens Terminal
- case M_TERM:
- if (record->event.pressed) {
- SEND_STRING(SS_DOWN(X_LGUI) SS_TAP(X_SPACE) SS_UP(X_LGUI));
- wait_ms(250);
- SEND_STRING("terminal\n");
- }
- break;
-
- // BEGIN: Layer macros
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- break;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- break;
- // END: Layer macros
- }
-
- return process_record_keymap(keycode, record) && process_record_secrets(keycode, record)
- #ifdef OLED_ENABLE
- && process_record_oled(keycode, record)
- #endif
- ; // Close return
-}
diff --git a/users/ninjonas/process_records.h b/users/ninjonas/process_records.h
deleted file mode 100644
index 5b901a1659..0000000000
--- a/users/ninjonas/process_records.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#pragma once
-#include "ninjonas.h"
-
-enum custom_keycodes {
- // Layer Macros
- QWERTY = SAFE_RANGE,
- DVORAK,
- COLEMAK,
- // Custom Macros
- M_PYNV,
- M_SHFT,
- M_MAKE,
- M_MALL,
- M_FLSH,
- M_VRSN,
- M_CODE,
- M_TERM,
- // Secret Macros
- M_XXX1,
- M_XXX2,
- M_XXX3,
- M_XXX4,
- M_XXX5,
-};
-
-bool process_record_secrets(uint16_t keycode, keyrecord_t *record);
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
-#ifdef OLED_ENABLE
-bool process_record_oled(uint16_t keycode, keyrecord_t *record);
-#endif
diff --git a/users/ninjonas/rules.mk b/users/ninjonas/rules.mk
deleted file mode 100644
index 7ff8f24b9e..0000000000
--- a/users/ninjonas/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-TAP_DANCE_ENABLE = yes # Enable Tap Dance.
-COMBO_ENABLE = yes # Enable Combos
-
-SRC += ninjonas.c \
- process_records.c \
- tap_dances.c \
- oled.c \
- encoder.c \
- combos.c
-
-ifneq ("$(wildcard $(USER_PATH)/secrets.c)","")
- SRC += secrets.c
-endif \ No newline at end of file
diff --git a/users/ninjonas/tap_dances.c b/users/ninjonas/tap_dances.c
deleted file mode 100644
index c03433e2d6..0000000000
--- a/users/ninjonas/tap_dances.c
+++ /dev/null
@@ -1,122 +0,0 @@
-#include "ninjonas.h"
-
-//// BEGIN: Advanced Tap Dances
-int cur_dance (tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) return SINGLE_TAP;
- //key has not been interrupted, but they key is still held. Means you want to send a 'HOLD'.
- else return SINGLE_HOLD;
- }
- else if (state->count == 2) {
- /*
- * DOUBLE_SINGLE_TAP is to distinguish between typing "pepper", and actually wanting a double tap
- * action when hitting 'pp'. Suggested use case for this return value is when you want to send two
- * keystrokes of the key, and not the 'double tap' action/macro.
- */
- if (state->interrupted) return DOUBLE_SINGLE_TAP;
- else if (state->pressed) return DOUBLE_HOLD;
- else return DOUBLE_TAP;
- }
- //Assumes no one is trying to type the same letter three times (at least not quickly).
- //If your tap dance key is 'KC_W', and you want to type "www." quickly - then you will need to add
- //an exception here to return a 'TRIPLE_SINGLE_TAP', and define that enum just like 'DOUBLE_SINGLE_TAP'
- if (state->count == 3) {
- if (state->interrupted || !state->pressed) return TRIPLE_TAP;
- else return TRIPLE_HOLD;
- }
- else return 8; //magic number. At some point this method will expand to work for more presses
-}
-
-// BEGIN: Copy, Paste, Apps
-// https://beta.docs.qmk.fm/features/feature_tap_dance#example-6-using-tap-dance-for-momentary-layer-switch-and-layer-toggle-keys
-static tap copy_paste_app_tap_state = {
- .is_press_action = true,
- .state = 0
-};
-
-void copy_paste_app_finished (tap_dance_state_t *state, void *user_data) {
- copy_paste_app_tap_state.state = cur_dance(state);
- switch (copy_paste_app_tap_state.state) {
- case SINGLE_TAP:
- tap_code16(LGUI(KC_V)); // Tap Cmd + V
- break;
- case SINGLE_HOLD:
- tap_code16(LGUI(KC_C)); // Hold Cmd + C
- break;
- case DOUBLE_TAP:
- SEND_STRING(SS_DOWN(X_LGUI) SS_TAP(X_SPACE) SS_UP(X_LGUI));
- wait_ms(250);
- SEND_STRING("line\n");
- break;
- case TRIPLE_TAP:
- SEND_STRING(SS_DOWN(X_LGUI) SS_TAP(X_SPACE) SS_UP(X_LGUI));
- wait_ms(250);
- SEND_STRING("itunes\n");
- break;
- }
-}
-
-void copy_paste_app_reset (tap_dance_state_t *state, void *user_data) {
- copy_paste_app_tap_state.state = 0;
-}
-// END: Copy, Paste, Apps
-
-// BEGIN: Y, NUMPAD
-static tap y_numpad_tap_state = {
- .is_press_action = true,
- .state = 0
-};
-
-void y_numpad_finished (tap_dance_state_t *state, void *user_data) {
- y_numpad_tap_state.state = cur_dance(state);
- switch (y_numpad_tap_state.state) {
- case SINGLE_TAP:
- tap_code(KC_Y);
- break;
- case SINGLE_HOLD:
- register_code16(KC_Y);
- break;
- case DOUBLE_TAP:
- if (layer_state_is(_NUMPAD)) {
- layer_off(_NUMPAD);
- } else {
- layer_on(_NUMPAD);
- }
- break;
- }
-}
-
-void y_numpad_reset (tap_dance_state_t *state, void *user_data) {
- switch (y_numpad_tap_state.state) {
- case SINGLE_HOLD:
- unregister_code16(KC_Y);
- break;
- }
- y_numpad_tap_state.state = 0;
-}
-// END: Y, NUMPAD
-
-//// END: Advanced Tap Dances
-
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CAPS),
- [TD_LBRC_BACK] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, LGUI(KC_LBRC)),
- [TD_RBRC_FWD] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, LGUI(KC_RBRC)),
- [TD_TAB_CTRLTAB] = ACTION_TAP_DANCE_DOUBLE(KC_TAB, LCTL(KC_TAB)),
- [TD_GRV_CTRLGRV] = ACTION_TAP_DANCE_DOUBLE(KC_GRV, LGUI(KC_GRV)),
- [TD_GUI_GUISPC] = ACTION_TAP_DANCE_DOUBLE(KC_LGUI, LGUI(KC_SPC)),
-
- // Advanced Tap Dances
- [TD_COPY_PASTE_APP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, copy_paste_app_finished, copy_paste_app_reset),
- [TD_Y_NUMPAD] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, y_numpad_finished, y_numpad_reset),
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_COPY_PASTE_APP):
- case TD(TD_Y_NUMPAD):
- return 300;
- default:
- return TAPPING_TERM;
- }
-}
diff --git a/users/ninjonas/tap_dances.h b/users/ninjonas/tap_dances.h
deleted file mode 100644
index 11f77e7171..0000000000
--- a/users/ninjonas/tap_dances.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#pragma once
-#include "ninjonas.h"
-
-typedef struct {
- bool is_press_action;
- int state;
-} tap;
-
-enum tapdance_types{
- SINGLE_TAP = 1,
- SINGLE_HOLD = 2,
- DOUBLE_TAP = 3,
- DOUBLE_HOLD = 4,
- DOUBLE_SINGLE_TAP = 5, //send two single taps
- TRIPLE_TAP = 6,
- TRIPLE_HOLD = 7
-};
-
-enum custom_tapdances{
- TD_ESC_CAPS = 0,
- TD_LBRC_BACK,
- TD_RBRC_FWD,
- TD_TAB_CTRLTAB,
- TD_GRV_CTRLGRV,
- TD_GUI_GUISPC,
- TD_COPY_PASTE_APP,
- TD_Y_NUMPAD,
-};
-
-#define T_ESC TD(TD_ESC_CAPS) // Tap for ESC, double tap for CAPSLOCK
-#define T_LBRC TD(TD_LBRC_BACK) // Tap for [, double tap for back browser
-#define T_RBRC TD(TD_RBRC_FWD) // Tap for ], double tap for forward browser
-#define T_TAB TD(TD_TAB_CTRLTAB) // Tap for TAB, double tap for CTRL + TAB
-#define T_GRV TD(TD_GRV_CTRLGRV) // Tap for GRV, double tap for Cmd + GRV
-#define T_GUI TD(TD_GUI_GUISPC) // Tap for Cmd, double tap for Cmd + Space
-#define T_CPAP TD(TD_COPY_PASTE_APP) // Tap for paste, hold for copy, double tap for Line App
-#define T_Y TD(TD_Y_NUMPAD) // Tap for Y, double tap for NUMPAD \ No newline at end of file