Skip to content

Commit

Permalink
[Keymap] update arkag keymap, add hitbox layout (qmk#20271)
Browse files Browse the repository at this point in the history
Co-authored-by: Alex Kagno <[email protected]>
  • Loading branch information
2 people authored and struckmb committed Apr 10, 2023
1 parent a562255 commit 57a4ebb
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 106 deletions.
19 changes: 13 additions & 6 deletions keyboards/preonic/keymaps/arkag/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

[_QWERTY] = LAYOUT_preonic_grid(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, XXXXXXX,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, M_OS,
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_TAB, 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_ENT,
KC_LCTL, KC_LGUI, KC_LALT, MEDIA, SYMBOL, KC_SPC, QK_LEAD, ARROW, FUNCT, XXXXXXX, KC_RALT, QK_LEAD),
KC_LCTL, KC_LGUI, KC_LALT, MEDIA, SYMBOL, KC_SPC, QK_LEAD, ARROW, FUNCT, KC_RALT, XXXXXXX, HITBOX),

[_SYMBOL] = LAYOUT_preonic_grid(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
Expand All @@ -47,15 +47,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),

[_HITBOX] = LAYOUT_preonic_grid(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_U, KC_I, KC_O, KC_P, XXXXXXX,
XXXXXXX, XXXXXXX, KC_A, KC_S, KC_D, XXXXXXX, XXXXXXX, KC_J, KC_K, KC_L, KC_SCLN, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_ENT,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_W, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, HITBOX),

[_FUNCT] = LAYOUT_preonic_grid(
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_END, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______,
M_SFTY, _______, _______, KC_CALC, _______, _______, _______, _______, _______, _______, _______, KC_CAPS,
_______, _______, _______, _______, _______, _______, M_AEST, _______, _______, _______, _______, M_OS ),
_______, _______, _______, KC_CALC, _______, _______, _______, _______, _______, _______, _______, KC_CAPS,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),

[_KEEB] = LAYOUT_preonic_grid(
CK_TOGG, AU_TOGG, MU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______,
CK_TOGG, AU_TOGG, MU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, HITBOX,
M_USSR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, BL_TOGG, BL_STEP, BL_UP, BL_DOWN, BL_BRTG, _______, _______, _______, _______, _______, _______,
RGB_M_P, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______,
Expand Down
89 changes: 1 addition & 88 deletions users/arkag/arkag.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ uint8_t velocikey_match_speed(uint8_t minValue, uint8_t maxValue) {
}
// End: Written by Chris Lewis

static int shift_int = 0;
uint8_t current_os,
mod_primary_mask,
fade_interval,
Expand All @@ -53,8 +52,6 @@ Color underglow,
flashState flash_state = no_flash;
fadeState fade_state = add_fade;
activityState state = boot;
bool aesthetic = false,
shifty = false;

float song_ussr[][2] = SONG(USSR_ANTHEM);

Expand Down Expand Up @@ -208,7 +205,7 @@ void set_os (uint8_t os, bool update) {
flash_color = underglow;
flash_state = flash_off;
state = boot;
num_extra_flashes_off = 1;
num_extra_flashes_off = 3;
}

// register GUI if Mac or Ctrl if other
Expand Down Expand Up @@ -245,17 +242,6 @@ void sec_mod(bool press) {
}
}

// register Meh if Win or Hyper if other
// KC_MEH/HYPR registers both sides, causes issues with some apps
// I'll do it myself, then
void meh_hyper(bool press) {
if (current_os == OS_WIN) {
(press) ? register_mods(L_BIT_MEH) : unregister_mods(L_BIT_MEH);
} else {
(press) ? register_mods(L_BIT_HYPR) : unregister_mods(L_BIT_HYPR);
}
}

void multi_tap(uint8_t num_of_chars, uint16_t keycode, bool use_shift) {
if (use_shift) {
register_code(KC_LSFT);
Expand Down Expand Up @@ -441,56 +427,6 @@ void matrix_scan_user(void) {
}

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (aesthetic) {
switch (keycode) {
case KC_A ... KC_0:
case KC_SPACE ... KC_SLASH:
if (record->event.pressed) {
state = active;
velocikey_accelerate();
tap_code(keycode);
tap_code(KC_SPACE);
}
return false;

case KC_BACKSPACE:
if (record->event.pressed) {
state = active;
velocikey_accelerate();
tap_code(keycode);
tap_code(keycode);
}
return false;
default: // Do nothing
break;
}
}

if (shifty) {
switch (keycode) {
case KC_A ... KC_Z:
if (record->event.pressed) {
shift_int += (rand() % 5);
int shift = ((shift_int % 2) == 1) ? true : false;
state = active;
velocikey_accelerate();
(shift) ? register_code(KC_LSFT) : NULL;
tap_code(keycode);
(shift) ? unregister_code(KC_LSFT) : NULL;
}
return false;
case KC_SPC:
if (record->event.pressed) {
state = active;
velocikey_accelerate();
tap_code(keycode);
}
return false;
default: // Do nothing
break;
}
}

switch (keycode) {
#ifdef AUDIO_ENABLE
case M_USSR:
Expand All @@ -509,29 +445,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_unicode(0x2014); // —
}
return false;
case M_LMHYP:
case M_EHYPR:
(keycode = M_LMHYP) ? (record->event.pressed) ? layer_on(_ARROW) : layer_off(_ARROW) : NULL;
meh_hyper(record->event.pressed);
return false;

case M_SFTY:
if(record->event.pressed){
num_extra_flashes_off = (shifty) ? 1 : 0;
shifty = !shifty;
flash_color = underglow;
flash_state = flash_off;
return false;
}

case M_AEST:
if(record->event.pressed){
num_extra_flashes_off = (aesthetic) ? 1 : 0;
aesthetic = !aesthetic;
flash_color = underglow;
flash_state = flash_off;
return false;
}

default:
if (record->event.pressed) {
Expand Down
19 changes: 7 additions & 12 deletions users/arkag/arkag.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,12 @@

#define EECONFIG_USERSPACE (uint8_t *)20

#define SYMBOL MO(1)
#define MEDIA MO(2)
#define ARROW MO(3)
#define FUNCT MO(4)
#define KEEB MO(5)

#define L_BIT_MEH MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LSFT)
#define L_BIT_HYPR MOD_BIT(KC_LCTL) | MOD_BIT(KC_LGUI) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LSFT)
#define SYMBOL MO(_SYMBOL)
#define MEDIA MO(_MEDIA)
#define ARROW MO(_ARROW)
#define FUNCT MO(_FUNCT)
#define KEEB MO(_KEEB)
#define HITBOX TT(_HITBOX)

#define LED_FLASH_DELAY 150

Expand All @@ -30,6 +28,7 @@ enum {
_ARROW,
_FUNCT,
_KEEB,
_HITBOX,
};

typedef enum {
Expand Down Expand Up @@ -68,10 +67,6 @@ enum custom_keycodes {
M_OS,
M_DASH,
M_USSR,
M_EHYPR,
M_LMHYP,
M_SFTY,
M_AEST,
};

void velocikey_accelerate(void);
Expand Down

0 comments on commit 57a4ebb

Please sign in to comment.