aboutsummaryrefslogtreecommitdiff
path: root/users/art
diff options
context:
space:
mode:
Diffstat (limited to 'users/art')
-rw-r--r--users/art/.gitignore3
-rw-r--r--users/art/art.c722
-rw-r--r--users/art/art.h107
-rw-r--r--users/art/art_user_config.h.example7
-rw-r--r--users/art/config.h14
-rw-r--r--users/art/custom_definitions.h.example8
-rw-r--r--users/art/funcs/led_funcs.c55
-rw-r--r--users/art/funcs/led_funcs.h17
-rw-r--r--users/art/funcs/string_funcs.c307
-rw-r--r--users/art/funcs/string_funcs.h14
-rw-r--r--users/art/rules.mk15
-rw-r--r--users/art/secr.h.example9
12 files changed, 0 insertions, 1278 deletions
diff --git a/users/art/.gitignore b/users/art/.gitignore
deleted file mode 100644
index c05ba7978b..0000000000
--- a/users/art/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-*user_config.*
-custom_definitions.h
-secr.h
diff --git a/users/art/art.c b/users/art/art.c
deleted file mode 100644
index f96a5d6cfd..0000000000
--- a/users/art/art.c
+++ /dev/null
@@ -1,722 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "art.h"
-#include "custom_definitions.h"
-#include "secr.h"
-#include "funcs/led_funcs.h"
-#include "funcs/string_funcs.h"
-
-static const int COPY_DELAY = 50;
-static const int INCOGNITO_DELAY = 500;
-static const int LMB_SPAM_INTERVAL = 30;
-static const uint8_t OS_MOD_KEYS[2] = {MOD_LALT, MOD_LCTL};
-
-bool mac_ctrl_on = false; //for switching tabs
-bool mac_gui_on = false; //for switching languages
-bool mac_alt_window_switching_on = false; //for switching windows
-
-int char_to_bspace = 1;
-int char_to_del = 0;
-
-static bool sarcasm_on = false;
-static bool sarcasm_key = false;
-static bool full_caps_mode = false;
-bool hw_caps_on;
-
-static bool is_lmb_timer_active = false;
-static uint16_t lmb_timer = 0;
-
-__attribute__ ((weak))
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- return true;
-}
-
-void keyboard_post_init_user(void) {
- led_show_variable_status(is_win);
- layer_state_set_user(layer_state);
-}
-
-void matrix_scan_user(void) {
- if (is_lmb_timer_active) {
- if (timer_elapsed(lmb_timer) > LMB_SPAM_INTERVAL) {
- SEND_STRING(SS_TAP(X_BTN1)); //do stuff that needs spamming
- lmb_timer = timer_read();
- }
- }
-}
-
-bool caps_word_on(void) {
- return hw_caps_on && !full_caps_mode;
-}
-
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- if (sarcasm_on) {
- sarcasm_key = ! sarcasm_key;
- del_mods(MOD_LSFT);
- if (sarcasm_key) {
- add_mods(MOD_LSFT);
- }
- }
-
- //Checking all other non-backspace keys to clear the backspace buffer. This is to prevent the bug of deleting N chars sometime after using a macro
- switch (keycode) {
- case LT(COMBOS,KC_BSPC):
- case KC_BACKSPACE:
- case KC_DEL:
- case KC_LSFT:
- case KC_RSFT:
- case XXXXXXX:
- break;
- default:
- char_to_bspace = 1;
- char_to_del = 0;
- break;
- }
- }
-
- switch (keycode) {
- case XXXXXXX:
- if (record->event.pressed && !layer_state_is(BASE)) {
- blink_leds(NUM_SCROLL_LED_ON);
- return true;
- }
- break;
- case KC_TAB:
- if (record->event.pressed && is_mac_with_base_layer_off()) {
- uint8_t mod_state = get_mods() & MOD_MASK_CTRL;
- if (get_mods() & mod_state && !mac_alt_window_switching_on) {
- del_mods(mod_state);
- add_mods(MOD_LGUI);
- mac_ctrl_on = true;
- }
- }
- case KC_GRAVE:
- if (record->event.pressed && is_mac_with_base_layer_off()) {
- uint8_t mod_state = get_mods() & MOD_MASK_ALT;
- if (get_mods() & mod_state) {
- del_mods(mod_state);
- add_mods(MOD_LCTL);
- mac_alt_window_switching_on = true;
- }
- }
- break;
- case KC_LSFT:
- if (record->event.pressed && is_mac_with_base_layer_off() && !mac_ctrl_on) {
- uint8_t mod_state = get_mods() & MOD_MASK_AG;
- if (get_mods() & mod_state) {
- del_mods(mod_state);
- add_mods(MOD_LGUI);
- mac_gui_on = true;
- send_string(lang_switch_combo);
- return false;
- } else {
- return true;
- }
- }
- break;
- case KC_LEFT:
- case KC_RIGHT:
- if (record->event.pressed && is_mac_with_base_layer_off()) {
- /* && !mac_ctrl_on/!mac_alt_tab_on are required since setting the state while holding the key changes
- the modifier from OS's perspective. As a result, just the pressed key cannot be the single source
- of truth to determine which state we're in, and a separate bool is required */
- uint8_t alt_state = get_mods() & MOD_MASK_ALT;
- uint8_t ctrl_state = get_mods() & MOD_MASK_CTRL;
-
- //Allows Ctrl <-/-> on Mac if Ctrl Tab is already pressed
- if (get_mods() & alt_state && mac_alt_window_switching_on && !mac_ctrl_on) {
- del_mods(alt_state);
- add_mods(MOD_LCTL);
- }
-
- if (get_mods() & ctrl_state && !mac_alt_window_switching_on && !mac_gui_on) {
- del_mods(ctrl_state);
- add_mods(MOD_LALT);
- mac_ctrl_on = true;
- }
- }
- break;
- case KC_LALT:
- if (!record->event.pressed && is_mac_with_base_layer_off()) {
- if (mac_alt_window_switching_on) {
- unregister_mods(MOD_LCTL);
- mac_alt_window_switching_on = false;
- return false;
- } else if (mac_gui_on) {
- unregister_mods(MOD_LGUI);
- mac_gui_on = false;
- return false;
- }
- return true;
- }
- break;
- case KC_RALT:
- if (!record->event.pressed && mac_alt_window_switching_on && is_mac_with_base_layer_off()) {
- unregister_mods(MOD_LCTL);
- mac_alt_window_switching_on = false;
- return false;
- }
- break;
- case KC_LCTL:
- case KC_RCTL:
- if (!record->event.pressed && mac_ctrl_on && is_mac_with_base_layer_off()) {
- // Need to remove only previously set mods (e.g. WIN & ALT) to preserve Shift, etc
- unregister_mods(MOD_LGUI);
- unregister_mods(MOD_LALT);
- mac_ctrl_on = false;
- return false;
- }
- break;
-
- case KC_HOME:
- if (record->event.pressed && is_mac_with_base_layer_off()) {
- SEND_STRING(SS_LCTL(SS_TAP(X_LEFT)));
- return false;
- }
- break;
- case KC_END:
- if (record->event.pressed && is_mac_with_base_layer_off()) {
- SEND_STRING(SS_LCTL(SS_TAP(X_RIGHT)));
- return false;
- }
- break;
- case KC_DEL:
- case KC_BSPC:
- if (record->event.pressed) {
- return handle_del_bspace();
- }
- break;
- case LT(COMBOS, KC_BSPC):
- if (record->event.pressed && record->tap.count == 1) {
- return handle_del_bspace();
- }
- break;
- case LT(NAV,KC_APP):
- if (!record->event.pressed && !is_win) {
- mac_ctrl_on = false;
- mac_gui_on = false;
- mac_alt_window_switching_on = false;
- clear_mods();
- SEND_STRING(SS_TAP(X_LCTL) SS_TAP(X_LGUI) SS_TAP(X_LALT) SS_TAP(X_LSFT));
- return true;
- }
- break;
- /* -------------------------------------------------------------------------
- * CAPS WORD
- * ------------------------------------------------------------------------ */
- case KC_CAPS:
- if (record->event.pressed && !layer_state_is(BASE)) {
- if (get_mods() & MOD_MASK_SHIFT) {
- full_caps_mode = true;
- led_show_variable_status(full_caps_mode);
- if (hw_caps_on) {
- SEND_STRING(SS_TAP(X_CAPS));
- }
- } else if (hw_caps_on) {
- full_caps_mode = false;
- }
- }
- break;
- // case KC_SPACE:
- case LT(MEDIA,KC_SPC):
- case LT(NAV,KC_SPC):
- if (record->event.pressed && caps_word_on() && !layer_state_is(BASE) && record->tap.count == 1) {
- SEND_STRING(SS_TAP(X_CAPS));
- }
- break;
- case KC_MINS:
- if (record->event.pressed && caps_word_on() && !layer_state_is(BASE)) {
- SEND_STRING("_");
- return false;
- }
- break;
- /* -------------------------------------------------------------------------
- * CUSTOM MACROS
- * ------------------------------------------------------------------------ */
-
- case CTRL_CTV:
- if (record->event.pressed) {
- bool shifted = get_mods() & MOD_MASK_SHIFT;
- clear_mods();
-
- SEND_STRING(SS_LCTL("c"));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LCTL("tv"));
-
- if (!shifted) {
- SEND_STRING(SS_TAP(X_ENTER));
- }
- }
- break;
- case BEAT_BROWSER:
- if (record->event.pressed) {
- SEND_STRING(SS_LCTL("c"));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LGUI("1") SS_LCTL("tv") SS_TAP(X_ENTER));
- }
- break;
- case CTRL_LCTV:
- if (record->event.pressed) {
- if (get_mods() & MOD_MASK_SHIFT) {
- //Firefox
- clear_mods();
- SEND_STRING(SS_LCTL("lc"));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LCTL("P"));
- wait_ms(INCOGNITO_DELAY);
- SEND_STRING(SS_LCTL("v") SS_TAP(X_ENTER));
- } else if (get_mods() & MOD_MASK_CTRL) {
- //Chrome
- clear_mods();
- SEND_STRING(SS_LCTL("lc"));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LCTL("Nv") SS_TAP(X_ENTER));
- } else {
- SEND_STRING(SS_LCTL("lc"));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LCTL("tv"));
- }
- }
- break;
- case CTRL_CAV:
- if (record->event.pressed) {
- SEND_STRING(SS_LCTL("c" SS_TAP(X_TAB)));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LCTL("av"));
- }
- break;
- case NEUTRAL_COPY:
- if (record->event.pressed && is_win) {
- uint8_t shifted = get_mods() & MOD_MASK_SHIFT;
- if (shifted) {
- del_mods(shifted);
- SEND_STRING(SS_LCTL("z"));
- }
- SEND_STRING(SS_LCTL("c"));
- wait_ms(COPY_DELAY);
- SEND_STRING(SS_LGUI("r") SS_LCTL("vac") SS_TAP(X_ESC));
- }
- break;
- case SARCASM:
- if (record->event.pressed) {
- del_mods(MOD_LSFT);
- sarcasm_on = !sarcasm_on;
- led_show_variable_status(sarcasm_on);
- }
- break;
- case LMB_SPAM:
- if (record->event.pressed) {
- is_lmb_timer_active = ! is_lmb_timer_active;
- lmb_timer = timer_read();
- }
- break;
-
- /* -------------------------------------------------------------------------
- * OS TOGGLING
- * ------------------------------------------------------------------------ */
- case TOG_OS:
- if (record->event.pressed) {
- is_win = ! is_win;
- led_show_variable_status(is_win);
- }
- break;
- case CTR_ALT:
- if (record->event.pressed) {
- add_mods(OS_MOD_KEYS[is_win]);
- } else {
- unregister_mods(OS_MOD_KEYS[is_win]);
- }
- break;
- case CTR_ALT_SHIFT:
- if (record->event.pressed) {
- add_mods(OS_MOD_KEYS[is_win]);
- add_mods(MOD_RSFT);
- } else {
- unregister_mods(OS_MOD_KEYS[is_win]);
- unregister_mods(MOD_RSFT);
- }
- break;
- case OS_CTRL:
- if (is_win) {
- if (record->event.pressed) {
- SEND_STRING(SS_DOWN(X_LCTL));
- } else {
- SEND_STRING(SS_UP(X_LCTL));
- }
- } else {
- if (record->event.pressed) {
- SEND_STRING(SS_DOWN(X_LGUI));
- } else {
- SEND_STRING(SS_UP(X_LGUI));
- }
- }
- break;
- case OS_WIN:
- if (is_win) {
- if (record->event.pressed) {
- SEND_STRING(SS_DOWN(X_LGUI));
- } else {
- SEND_STRING(SS_UP(X_LGUI));
- }
- } else {
- if (record->event.pressed) {
- SEND_STRING(SS_DOWN(X_LCTL));
- } else {
- SEND_STRING(SS_UP(X_LCTL));
- }
- }
- break;
-
- /* -------------------------------------------------------------------------
- * STRING MACROS
- * ------------------------------------------------------------------------ */
- // case :
- // if (record->event.pressed) {
- // send_string_remembering_length("");
- // }
- // break;
- // case :
- // if (record->event.pressed) {
- // send_shifted_strings("", "");
- // }
- // break;
- case TILD_BLOCK:
- if (record->event.pressed) {
- uint8_t alted = get_mods() & MOD_MASK_ALT;
- uint8_t switch_lang_state = get_mods() & MOD_MASK_CTRL;
-
- if (switch_lang_state) {
- del_mods(switch_lang_state);
- switch_lang();
- }
-
- if (alted) {
- del_mods(alted);
- SEND_STRING(SS_TAP(X_ESC) "```" SS_LSFT(SS_TAP(X_ENTER) SS_TAP(X_ENTER)) "```" SS_TAP(X_UP));
- char_to_bspace = 4;
- char_to_del = 4;
- } else {
- SEND_STRING("`` ");
-
- uint8_t shifted = get_mods() & MOD_MASK_SHIFT;
- del_mods(shifted);
- SEND_STRING(SS_TAP(X_LEFT) SS_TAP(X_LEFT));
- add_mods(shifted);
- char_to_bspace = 1;
- char_to_del = 2;
- }
-
- if (switch_lang_state) {
- switch_lang();
- }
- }
- break;
- case ALL_BEST:
- if (record->event.pressed) {
- send_shifted_strings_add("All the best,\nArt", "joms");
- }
- break;
- case AT_EMAIL:
- if (record->event.pressed) {
- send_string_remembering_length("@gmail.com");
- }
- break;
- case BRACES:
- if (record->event.pressed) {
- uint8_t shifted = get_mods() & MOD_MASK_SHIFT;
- uint8_t switch_lang_state = get_mods() & MOD_MASK_CTRL;
- if (switch_lang_state) {
- del_mods(switch_lang_state);
- switch_lang();
- }
-
- add_mods(shifted);
- SEND_STRING("[]");
-
- del_mods(shifted);
- SEND_STRING(SS_TAP(X_LEFT));
- add_mods(shifted);
-
- if (switch_lang_state) {
- switch_lang();
- }
- char_to_bspace = 1;
- char_to_del = 1;
- }
- break;
- case DASHES:
- if (record->event.pressed) {
- SEND_STRING("--");
-
- uint8_t shifted = get_mods() & MOD_MASK_SHIFT;
- del_mods(shifted);
- SEND_STRING(" " SS_TAP(X_LEFT) SS_TAP(X_LEFT));
- add_mods(shifted);
- char_to_bspace = 1;
- char_to_del = 2;
- }
- break;
- case PARENTHS:
- if (record->event.pressed) {
- clear_mods();
- SEND_STRING("() " SS_TAP(X_LEFT) SS_TAP(X_LEFT));
- char_to_bspace = 1;
- char_to_del = 2;
- }
- break;
- case QUOTES:
- if (record->event.pressed) {
- uint8_t shifted = get_mods() & MOD_MASK_SHIFT;
- uint8_t switch_lang_state = get_mods() & MOD_MASK_CTRL;
- if (switch_lang_state) {
- del_mods(switch_lang_state);
- switch_lang();
- }
-
- add_mods(shifted);
- SEND_STRING("''");
-
- del_mods(shifted);
- wait_ms(LONG_TYPING_INTERVAL);
- SEND_STRING(" " SS_TAP(X_LEFT) SS_TAP(X_LEFT));
- add_mods(shifted);
-
- if (switch_lang_state) {
- switch_lang();
- }
- char_to_bspace = 1;
- char_to_del = 2;
- }
- break;
- case QUOTES_RU:
- if (record->event.pressed) {
- clear_mods();
- SEND_STRING("@@ ");
- wait_ms(LONG_TYPING_INTERVAL);
- SEND_STRING(SS_TAP(X_LEFT) SS_TAP(X_LEFT));
- char_to_bspace = 1;
- char_to_del = 2;
- }
- break;
- case STARS:
- if (record->event.pressed) {
- clear_mods();
- SEND_STRING("** " SS_TAP(X_LEFT) SS_TAP(X_LEFT));
- char_to_bspace = 1;
- char_to_del = 2;
- }
- break;
-
- case ADMINS:
- if (record->event.pressed) {
- send_string_remembering_length("admin");
- }
- break;
-
- case G_ADD:
- if (record->event.pressed) {
- send_string_remembering_length("git add ");
- }
- break;
- case G_BRCH:
- if (record->event.pressed) {
- send_shifted_strings_add("git branch ", "-d ");
- }
- break;
- case G_C:
- if (record->event.pressed) {
- send_string_remembering_length("git c[Heckout/Ommit]");
- layer_on(GIT_C);
- }
- break;
- case G_CHEC:
- if (!record->event.pressed) {
- bool shifted = get_mods() & MOD_MASK_SHIFT;
- clear_mods();
-
- press_n_times(15, KC_BACKSPACE);
- send_string_with_translation("heckout ");
- char_to_bspace = 13;
- if (shifted) {
- send_string_with_translation("-b ");
- char_to_bspace = 16;
- }
- layer_off(GIT_C);
- }
- break;
- case G_COMM:
- if (!record->event.pressed) {
- bool ctrled = get_mods() & MOD_MASK_CTRL;
- bool shifted = get_mods() & MOD_MASK_SHIFT;
- clear_mods();
-
- press_n_times(15, KC_BACKSPACE);
- send_string_with_translation("ommit ");
- char_to_bspace = 11;
- layer_off(GIT_C);
-
- if (ctrled) {
- return false;
- }
-
- SEND_STRING("-");
- char_to_bspace = 15;
- if (shifted) {
- send_string_with_translation("a");
- char_to_bspace = 16;
- }
- send_string_with_translation("m");
- SEND_STRING(" \"\"" SS_TAP(X_LEFT));
- char_to_del = 1;
- }
- break;
- case G_DEV:
- if (record->event.pressed) {
- send_shifted_strings("develop", "master");
- }
- break;
- case G_DIFF:
- if (record->event.pressed) {
- send_string_remembering_length("git diff ");
- }
- break;
- case G_FTCH:
- if (record->event.pressed) {
- send_string_remembering_length("git fetch ");
- }
- break;
- case G_LOG:
- if (record->event.pressed) {
- send_string_remembering_length("git log ");
- }
- break;
- case G_MERG:
- if (record->event.pressed) {
- send_string_remembering_length("git merge ");
- }
- break;
- case G_PULL:
- if (record->event.pressed) {
- send_string_remembering_length("git pull ");
- }
- break;
- case G_PUSH:
- if (record->event.pressed) {
- send_string_remembering_length("git push -u ");
- }
- break;
- case G_R:
- if (!record->event.pressed) {
- send_string_remembering_length("git re[Set/Vert/Base -i]");
- layer_on(GIT_R);
- }
- break;
- case G_RBASE:
- if (!record->event.pressed) {
- press_n_times(18, KC_BACKSPACE);
- send_string_with_translation("base -i ");
- char_to_bspace = 14;
- layer_off(GIT_R);
- }
- break;
- case G_RVERT:
- if (!record->event.pressed) {
- press_n_times(18, KC_BACKSPACE);
- send_string_with_translation("vert ");
- char_to_bspace = 11;
- layer_off(GIT_R);
- }
- break;
- case G_RST:
- if (!record->event.pressed) {
- bool shifted = get_mods() & MOD_MASK_SHIFT;
- clear_mods();
-
- press_n_times(18, KC_BACKSPACE);
- send_string_with_translation("set ");
- char_to_bspace = 10;
-
- if (shifted) {
- send_string_with_translation("--hard ");
- char_to_bspace = 17;
- }
- layer_off(GIT_R);
- }
- break;
- case G_S:
- if (!record->event.pressed) {
- send_string_remembering_length("git s[taSh/How/taTus]");
- layer_on(GIT_S);
- }
- break;
- case G_SHOW:
- if (!record->event.pressed) {
- press_n_times(16, KC_BACKSPACE);
- send_string_with_translation("how ");
- char_to_bspace = 9;
- layer_off(GIT_S);
- }
- break;
- case G_STSH:
- if (!record->event.pressed) {
- bool shifted = get_mods() & MOD_MASK_SHIFT;
- clear_mods();
-
- press_n_times(16, KC_BACKSPACE);
- send_string_with_translation("tash ");
- char_to_bspace = 10;
-
- if (shifted) {
- clear_mods();
- send_string_with_translation("apply ");
-
- char_to_bspace = 16;
- }
-
- layer_off(GIT_S);
- }
- break;
- case G_STAT:
- if (!record->event.pressed) {
- press_n_times(16, KC_BACKSPACE);
- send_string_with_translation("tatus ");
- char_to_bspace = 11;
- layer_off(GIT_S);
- }
- break;
-
- case K_CUST1 ... K_CUST3: // custom strings not stored in source control
- if (!record->event.pressed) {
- send_string_remembering_length(custom[keycode - K_CUST1]);
- blink_leds(NUM_SCROLL_LED_ON);
- }
- break;
- case K_SECR1 ... K_SECR4: // Secrets! Externally defined strings, not stored in repo
- if (!record->event.pressed) {
- send_string_remembering_length(secrets[keycode - K_SECR1]);
- blink_leds(NUM_SCROLL_LED_ON);
- }
- break;
-
- case CTL_ALT_START ... CTL_ALT_END:
- if (record->event.pressed) {
- if (is_win) {
- register_code16(LCTL(keycode - CTL_ALT_START));
- } else {
- register_code16(LALT(keycode - CTL_ALT_START));
- }
- } else {
- if (is_win) {
- unregister_code16(LCTL(keycode - CTL_ALT_START));
- } else {
- unregister_code16(LALT(keycode - CTL_ALT_START));
- }
- }
- break;
- }
-
- return process_record_keymap(keycode, record);
-}
diff --git a/users/art/art.h b/users/art/art.h
deleted file mode 100644
index 71af966bef..0000000000
--- a/users/art/art.h
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-#include QMK_KEYBOARD_H
-
-#define CTL_ALT(kc) (CTL_ALT_START + ((kc) & 0xff))
-
-extern bool is_win;
-#define TYPING_INTERVAL 20
-#define LONG_TYPING_INTERVAL 50
-
-enum layer_names {
-#if SPLIT75_SETUP_FOR_PUBLIC_USE_BY_DEFAULT && defined(KEYBOARD_wheatfield_split75) // defined by "KEYBOARD" followed by folder structure
- BASE,
- QWERTY,
-#else
- QWERTY,
- BASE,
-#endif
-
- WORKMAN,
-#if defined(KEYBOARD_mt_split75)
- CONFIG,
- LAYOUT_CHG,
- QWERTY_MOD,
-#elif defined(KEYBOARD_ktec_ergodone)
- FKEYS,
- CTRL_NAV,
- SHIFT_NAV,
-#endif
-
- MEDIA,
- COMBOS,
- //STRINGS,
- NAV,
- NUMPAD,
- GIT,
- GIT_C,
- GIT_R,
- GIT_S
-};
-
-enum custom_keycodes_art {
- CTRL_CTV = SAFE_RANGE,
- CTRL_LCTV,
- CTRL_CAV,
- BEAT_BROWSER,
- NEUTRAL_COPY,
- SARCASM,
- LMB_SPAM,
-
- TOG_OS,
- CTR_ALT,
- CTR_ALT_SHIFT,
- OS_CTRL,
- OS_WIN,
-
- TILD_BLOCK,
- ALL_BEST,
- AT_EMAIL,
- BRACES,
- DASHES,
- PARENTHS,
- STARS,
- QUOTES,
- QUOTES_RU,
-
- ADMINS,
- PRESCRIPTION,
- FOURS,
-
- G_ADD,
- G_BRCH,
- G_C,
- G_CHEC,
- G_COMM,
- G_DEV,
- G_DIFF,
- G_FTCH,
- G_LOG,
- G_MERG,
- G_PULL,
- G_PUSH,
- G_R,
- G_RBASE,
- G_RVERT,
- G_RST,
- G_S,
- G_STAT,
- G_STSH,
- G_SHOW,
-
- K_CUST1,
- K_CUST2,
- K_CUST3,
-
- K_SECR1,
- K_SECR2,
- K_SECR3,
- K_SECR4,
-
- CTL_ALT_START,
- CTL_ALT_END = CTL_ALT_START + 0xff,
-
- NEW_SAFE_RANGE //for keymap specific codes
-};
diff --git a/users/art/art_user_config.h.example b/users/art/art_user_config.h.example
deleted file mode 100644
index b523867259..0000000000
--- a/users/art/art_user_config.h.example
+++ /dev/null
@@ -1,7 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#define SPLIT75_SETUP_FOR_PUBLIC_USE_BY_DEFAULT true
-#define WORKMAN_TO_QWERTY_HW_MAPPING false
-
-#define lang_switch_combo SS_LGUI(SS_TAP(X_Z)) \ No newline at end of file
diff --git a/users/art/config.h b/users/art/config.h
deleted file mode 100644
index 78c7851c65..0000000000
--- a/users/art/config.h
+++ /dev/null
@@ -1,14 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#undef TAPPING_TOGGLE
-#define TAPPING_TOGGLE 2
-
-#define COMBO_SHOULD_TRIGGER
-
-// saving space
-#define LAYER_STATE_16BIT // remove if using more than 16 layers
-#define NO_ACTION_ONESHOT
-#define NO_MUSIC_MODE \ No newline at end of file
diff --git a/users/art/custom_definitions.h.example b/users/art/custom_definitions.h.example
deleted file mode 100644
index b15d3d5e6d..0000000000
--- a/users/art/custom_definitions.h.example
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-static char * custom[] = {
- "",
- "",
- ""
-}; \ No newline at end of file
diff --git a/users/art/funcs/led_funcs.c b/users/art/funcs/led_funcs.c
deleted file mode 100644
index 873836d368..0000000000
--- a/users/art/funcs/led_funcs.c
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "led_funcs.h"
-
-bool hw_caps_on;
-
-__attribute__ ((weak)) void num_led_on(void) {}
-__attribute__ ((weak)) void num_led_off(void) {}
-__attribute__ ((weak)) void caps_led_on(void) {}
-__attribute__ ((weak)) void caps_led_off(void) {}
-__attribute__ ((weak)) void scroll_led_on(void) {}
-__attribute__ ((weak)) void scroll_led_off(void) {}
-
-void toggle_leds(int leds) {
- if (NUM_LED_ON & leds) {
- num_led_on();
- } else {
- num_led_off();
- }
- if (SCROLL_LED_ON & leds) {
- scroll_led_on();
- } else {
- scroll_led_off();
- }
-}
-
-bool led_update_user(led_t led_state) {
- // only use caps LED - ignore Num & Scroll
- if (led_state.caps_lock) {
- caps_led_on();
- } else {
- caps_led_off();
- }
-
- hw_caps_on = led_state.caps_lock;
- return false; // 'false' prevents led_update_kb from firing
-}
-
-void blink_leds(int leds) {
- for (int i = 0; i < 3; i++) {
- toggle_leds(leds);
- wait_ms(BLINKING_INTERVAL);
- toggle_leds(ALL_OFF);
- wait_ms(BLINKING_INTERVAL);
- }
-}
-
-void led_show_variable_status(bool value) {
- if (value) {
- blink_leds(NUM_LED_ON);
- } else {
- blink_leds(SCROLL_LED_ON);
- }
-} \ No newline at end of file
diff --git a/users/art/funcs/led_funcs.h b/users/art/funcs/led_funcs.h
deleted file mode 100644
index 65d2b7c155..0000000000
--- a/users/art/funcs/led_funcs.h
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-#include QMK_KEYBOARD_H
-
-#define NUM_LED_ON 4
-#define SCROLL_LED_ON 1
-#define NUM_SCROLL_LED_ON 5
-#define ALL_OFF 0
-
-#define BLINKING_INTERVAL 25
-
-void toggle_leds(int leds);
-bool led_update_user(led_t led_state);
-void blink_leds(int leds);
-void led_show_variable_status(bool value); \ No newline at end of file
diff --git a/users/art/funcs/string_funcs.c b/users/art/funcs/string_funcs.c
deleted file mode 100644
index 1ea86779cc..0000000000
--- a/users/art/funcs/string_funcs.c
+++ /dev/null
@@ -1,307 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "art.h"
-#include "string_funcs.h"
-#include "string.h"
-
-bool mac_ctrl_on;
-
-int char_to_bspace;
-int char_to_del;
-
-enum combo_events {
- HOMEROW_UP,
- HOMEROW_LEFT,
- HOMEROW_RIGHT,
- HOMEROW_DOWN,
- HOMEROW_PREV_WORD,
- HOMEROW_NEXT_WORD,
- HOMEROW_HOME,
- HOMEROW_END,
-
- ED_F1,
- ED_F2,
- ED_F3,
- ED_F4,
- ED_F5,
- ED_F6,
- ED_F7,
- ED_F8,
- ED_F9,
- ED_F10,
- ED_F11,
- ED_F12,
- ED_PSCREEN,
-
- ED_ENTER,
-
- ED_CS_ENTER,
- BSPC_LSFT_CLEAR
-};
-
-const uint16_t PROGMEM combo_up[] = {KC_W, KC_R, COMBO_END};
-const uint16_t PROGMEM combo_left[] = {KC_S, KC_E, COMBO_END};
-const uint16_t PROGMEM combo_right[] = {KC_F, KC_E, COMBO_END};
-const uint16_t PROGMEM combo_down[] = {KC_S, KC_F, COMBO_END};
-const uint16_t PROGMEM combo_prev_word[] = {KC_S, KC_LCTL, COMBO_END};
-const uint16_t PROGMEM combo_next_word[] = {KC_F, KC_LCTL, COMBO_END};
-const uint16_t PROGMEM combo_end[] = {KC_W, KC_E, COMBO_END};
-const uint16_t PROGMEM combo_home[] = {KC_E, KC_R, COMBO_END};
-
-const uint16_t PROGMEM combo_enter[] = {KC_BSPC, KC_INS, COMBO_END};
-
-const uint16_t PROGMEM combo_f1[] = {KC_1, KC_Q, COMBO_END};
-const uint16_t PROGMEM combo_f2[] = {KC_2, KC_W, COMBO_END};
-const uint16_t PROGMEM combo_f3[] = {KC_3, KC_E, COMBO_END};
-const uint16_t PROGMEM combo_f4[] = {KC_4, KC_R, COMBO_END};
-const uint16_t PROGMEM combo_f5[] = {KC_5, KC_T, COMBO_END};
-const uint16_t PROGMEM combo_f6[] = {KC_6, KC_Y, COMBO_END};
-const uint16_t PROGMEM combo_f7[] = {KC_7, KC_U, COMBO_END};
-const uint16_t PROGMEM combo_f8[] = {KC_8, KC_I, COMBO_END};
-const uint16_t PROGMEM combo_f9[] = {KC_9, KC_O, COMBO_END};
-const uint16_t PROGMEM combo_f10[] = {KC_0, KC_P, COMBO_END};
-const uint16_t PROGMEM combo_f11[] = {LT(GIT,KC_SLSH), KC_RSFT, COMBO_END};
-const uint16_t PROGMEM combo_f12[] = {KC_RALT, KC_RCTL, COMBO_END};
-const uint16_t PROGMEM combo_pscreen[] = {TO(WORKMAN), KC_RALT, COMBO_END};
-
-const uint16_t PROGMEM done_sm[] = {KC_LEFT, KC_RIGHT, COMBO_END};
-const uint16_t PROGMEM clear_line_combo[] = {KC_BSPC, KC_LSFT, COMBO_END};
-
-combo_t key_combos[] = {
- [HOMEROW_UP] = COMBO(combo_up, KC_UP),
- [HOMEROW_LEFT] = COMBO(combo_left, KC_LEFT),
- [HOMEROW_RIGHT] = COMBO(combo_right, KC_RIGHT),
- [HOMEROW_DOWN] = COMBO(combo_down, KC_DOWN),
- [HOMEROW_PREV_WORD] = COMBO_ACTION(combo_prev_word),
- [HOMEROW_NEXT_WORD] = COMBO_ACTION(combo_next_word),
- [HOMEROW_HOME] = COMBO(combo_end, KC_HOME),
- [HOMEROW_END] = COMBO(combo_home, KC_END),
-
- #if defined(KEYBOARD_ktec_ergodone)
- [ED_ENTER] = COMBO(combo_enter, KC_ENTER),
-
- [ED_F1] = COMBO(combo_f1, KC_F1),
- [ED_F2] = COMBO(combo_f2, KC_F2),
- [ED_F3] = COMBO(combo_f3, KC_F3),
- [ED_F4] = COMBO(combo_f4, KC_F4),
- [ED_F5] = COMBO(combo_f5, KC_F5),
- [ED_F6] = COMBO(combo_f6, KC_F6),
- [ED_F7] = COMBO(combo_f7, KC_F7),
- [ED_F8] = COMBO(combo_f8, KC_F8),
- [ED_F9] = COMBO(combo_f9, KC_F9),
- [ED_F10] = COMBO(combo_f10, KC_F10),
- [ED_F11] = COMBO(combo_f11, KC_F11),
- [ED_F12] = COMBO(combo_f12, KC_F12),
- [ED_PSCREEN] = COMBO(combo_pscreen, KC_PRINT_SCREEN),
-
- [ED_CS_ENTER] = COMBO_ACTION(done_sm),
- #endif
-
- [BSPC_LSFT_CLEAR] = COMBO_ACTION(clear_line_combo),
-};
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- switch(combo_index) {
- case HOMEROW_PREV_WORD:
- if (pressed) {
- if (is_win) {
- tap_code16(C(KC_LEFT));
- } else {
- tap_code16(A(KC_LEFT));
- }
- }
- break;
- case HOMEROW_NEXT_WORD:
- if (pressed) {
- if (is_win) {
- tap_code16(C(KC_RIGHT));
- } else {
- tap_code16(A(KC_RIGHT));
- }
- }
- break;
- case BSPC_LSFT_CLEAR:
- if (pressed) {
- tap_code16(KC_END);
- tap_code16(S(KC_HOME));
- tap_code16(KC_BSPC);
- }
- break;
- case ED_CS_ENTER:
- if (pressed) {
- tap_code16(C(S(KC_ENTER)));
- }
- break;
- }
-}
-
-bool combo_should_trigger(uint16_t combo_index, combo_t *combo, uint16_t keycode, keyrecord_t *record) {
- return !layer_state_is(BASE);
-}
-
-bool is_mac_with_base_layer_off(void) {
- return !is_win && !layer_state_is(BASE);
-}
-
-void switch_lang(void) {
- if (is_win) {
- SEND_STRING(SS_LALT(SS_TAP(X_LSFT)));
- } else {
- send_string(lang_switch_combo);
- wait_ms(10);
- }
-}
-
-void press_n_times(int times, uint16_t key) {
- for (int i=0; i<times; i++) {
- // wait_ms(TYPING_INTERVAL);
- tap_code16(key);
- }
-}
-
-
-bool handle_del_bspace(void) {
- if (char_to_bspace > 1 || char_to_del > 0) {
- layer_off(GIT_C);
- layer_off(GIT_R);
- layer_off(GIT_S);
-
- press_n_times(char_to_bspace, KC_BACKSPACE);
- char_to_bspace = 1;
- press_n_times(char_to_del, KC_DEL);
- char_to_del = 0;
-
- return false;
- }
-
- if (is_mac_with_base_layer_off()) {
- uint8_t mod_state = get_mods() & MOD_MASK_CTRL;
- if (get_mods() & mod_state) {
- del_mods(mod_state);
- add_mods(MOD_LALT);
- mac_ctrl_on = true;
- }
- }
- return true;
-}
-
-void send_string_with_translation(char *string) {
- #if WORKMAN_TO_QWERTY_HW_MAPPING
- if (layer_state_is(WORKMAN)) {
- int isUpperCase = 0;
- for (int i = 0; i < strlen(string); i++) {
- char toPrint = string[i];
- if (isupper(toPrint)) {
- if (toPrint == 'P') {
- SEND_STRING(":");
- continue;
- }
-
- isUpperCase = 1;
- toPrint = tolower(toPrint);
- }
- switch (toPrint) {
- case ':':
- toPrint = 'I';
- break;
-
- case 'w':
- toPrint = 'd';
- break;
- case 'e':
- toPrint = 'r';
- break;
- case 'r':
- toPrint = 'w';
- break;
- case 't':
- toPrint = 'b';
- break;
- case 'y':
- toPrint = 'j';
- break;
- case 'u':
- toPrint = 'f';
- break;
- case 'i':
- toPrint = 'u';
- break;
- case 'o':
- toPrint = 'p';
- break;
- case 'p':
- toPrint = ';';
- break;
-
- case 'd':
- toPrint = 'h';
- break;
- case 'f':
- toPrint = 't';
- break;
- case 'h':
- toPrint = 'y';
- break;
- case 'j':
- toPrint = 'n';
- break;
- case 'k':
- toPrint = 'e';
- break;
- case 'l':
- toPrint = 'o';
- break;
- case ';':
- toPrint = 'i';
- break;
-
- case 'b':
- toPrint = 'm';
- break;
- case 'n':
- toPrint = 'k';
- break;
- case 'm':
- toPrint = 'l';
- break;
- }
- if (isUpperCase) {
- isUpperCase = 0;
- toPrint = toupper(toPrint);
- }
- send_char(toPrint);
- }
- } else {
- send_string(string);
- }
- #else
- send_string(string);
- #endif
-}
-
-void send_string_remembering_length(char *string) {
- send_string_with_translation(string);
- char_to_bspace = strlen(string);
-}
-
-void send_shifted_strings(char *string1, char *string2) {
- if (get_mods() & MOD_MASK_SHIFT) {
- clear_mods();
- send_string_remembering_length(string2);
- } else {
- send_string_remembering_length(string1);
- }
-}
-
-void send_shifted_strings_add(char *string1, char *string2) {
- bool shifted = get_mods() & MOD_MASK_SHIFT;
- clear_mods();
-
- send_string_remembering_length(string1);
-
- if (shifted) {
- send_string(string2);
- char_to_bspace = strlen(string1) + strlen(string2);
- }
-}
diff --git a/users/art/funcs/string_funcs.h b/users/art/funcs/string_funcs.h
deleted file mode 100644
index 6d0c424245..0000000000
--- a/users/art/funcs/string_funcs.h
+++ /dev/null
@@ -1,14 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-#include QMK_KEYBOARD_H
-
-bool is_mac_with_base_layer_off(void);
-void switch_lang(void);
-void press_n_times(int times, uint16_t key);
-bool handle_del_bspace(void);
-void send_string_with_translation(char *string);
-void send_string_remembering_length(char *string);
-void send_shifted_strings(char *string1, char *string2);
-void send_shifted_strings_add(char *string1, char *string2); \ No newline at end of file
diff --git a/users/art/rules.mk b/users/art/rules.mk
deleted file mode 100644
index 9bf4d167fc..0000000000
--- a/users/art/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-SRC += art.c
-SRC += funcs/led_funcs.c
-SRC += funcs/string_funcs.c
-
-COMBO_ENABLE = yes
-
-# saving space
-COMMAND_ENABLE = no
-CONSOLE_ENABLE = no
-GRAVE_ESC_ENABLE = no
-LTO_ENABLE = yes
-MAGIC_ENABLE = no
-# MOUSEKEY_ENABLE = no
-MUSIC_ENABLE = no
-SPACE_CADET_ENABLE = no \ No newline at end of file
diff --git a/users/art/secr.h.example b/users/art/secr.h.example
deleted file mode 100644
index 468943fad2..0000000000
--- a/users/art/secr.h.example
+++ /dev/null
@@ -1,9 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-static char * secrets[] = {
- "",
- "",
- "",
- ""
-}; \ No newline at end of file