asmvik / asmvik/skhd

Changing layout breaks skhd modes

Open
#281 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
8.1k
Forks
241
PR merge metrics
No merged PRs in 30d

Description

In my setup I have two window managers and they are tied to a specific mode in skhdrc.
It appears to me, that every time I change layout (language) on my keyboard, .skhdrc is re-read and the mode I am in is not saved. I still can access non-modal shortcuts, but the mode I was in is forgotten.

In my case, I have yabai running, but all my commands are not registering after I have changed the language a couple of times.

Does anyone know if there is a way to fix that? I do have to type in multiple languages and having to re-instate the mode I was in is getting a bit unproductive. My config is probably jank as well and I invented a weel

**Changing language makes skhd re-read .skhdrc**
image

**Snippet from my config**
```
:: focus : yabai --start-service && shortcuts run "close_rectangle" && yabai -m space --balance
:: default : yabai --stop-service && open -a"Rectangle"

focus < shift + alt - a ; default
default < shift + alt - a ; focus
```

I want to keep non-modal shortcuts separate from modal. I may probably do with just having a default mode, but I have not yet found how to do that.

And btw, thanks for such an amazing tool. Tonns of appreciation for your work

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the .skhdrc mode configuration and reproduce the issue by changing keyboard language while a modal mode is active. Trace the configuration re-read behavior and verify that the active mode remains available after the reload, while non-modal shortcuts continue to work.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, macos
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.