Open maricn opened 3 years ago
Problem 1 - can't run make test
You have something wrong with your directory structure. Move all your “maricn/*.h.in” files into a subdirectory (as you can see with “default”, “shift2caps“, “caps2esc”).
First level (“maricn”) is the config directory. Second level (new subdirectory) will be the name of the executable that will use the “*.h.in” files inside.
Problem 2 - space + home row => arrows
Phew. I haven’t used my plugin lately, but if you go with multi rules you surely need to set nbeforedown = 2
so it switches home row key down only if both keys are down. When you release a key it sends the other, because DOWN_IFF_ALL_DOWN
specifies nbeforeup = nup = -2
=> we are in a toggled down state and we go into a toggled up state when not 2 keys are down (negative numbers mean not). From this, I think you will have more luck with setting them to 1 or 0.
But have you tried the following tap rules?
Just replace KEY_VIM*
with KEY_SPACE
and I think this is what you need.
Problem 3 - stuck letters
Did you type on the keyboard while restarting udevmon
? That could cause issues.
If not, run make test
, hopefully debug output can help.
Problem 1 - can't run make test
You have something wrong with your directory structure. Move all your “maricn/*.h.in” files into a subdirectory (as you can see with “default”, “shift2caps“, “caps2esc”).
Now, per your instructions, I have this repo cloned at ~/Tools/interception-k2k/
and inside I have my folder maricn
which contains inteception-pipe-maricn
folder with *.h.in
files.
The command I have succeeded running is:
make clean && mkdir -p out/ && sudo env CONFIG_DIR=/home/nikola/Tools/interception-k2k/maricn make test
Thank you!
Problem 2 - space + home row => arrows
Just replace
KEY_VIM*
withKEY_SPACE
and I think this is what you need.
Wow, thank you! Didn't realize that would work the way I wanted. On the first look it seems fine, but there's a huge problem (3) with stuck letters and some repeated and missed ones.
Problem 3 - stuck letters
Did you type on the keyboard while restarting
udevmon
? That could cause issues.
No, the command I'm running to apply the changes is:
make clean && make && sudo make install && sudo systemctl restart udevmon.service
Then I wait for a while so udevmon
service restarts, but the letters still get stuck.
This happens especially when switching windows (i'm on Wayland with SwayWM). When I change focus to another window, some random key starts outputting there. So far I got letters e, n, comma, space, and even SHIFT stuck. They get unstuck when I press some other key. Also, my touchpad gets stuck sometimes.
Trying out make test
and looking at the debug output didn't really help. The debug output looks fine, I wasn't able to replicate anything strange there. I also increased TIMEOUT and tried moving around my DE, but couldn't replicate that issue.
there's a huge problem (3) with stuck letters and some repeated and missed ones.
I never experienced such issue on my machine (used also with Sway), but here are a few things I can think of:
udevmon
is misconfigured my stuff surely does not touch that. Using evtest
, you could figure out whether there is some oddity with your keyboard.some random key starts outputting there
That does not sound well. As mentioned above, please try shrinking down your config, maybe that key is one of them.
My setup
Thank you for writing and sharing this piece of code. I tried to read into it, and find it a bit confusing, so I'm asking for your kind help. :)
I'm on Arch on Wayland with SwayWM. I'm using latest AUR for
interception-tools
andevtest
./etc/interception/udevmon.d/keymod.yaml
:/etc/udevmon.yaml
:Problem 1 - can't run
make test
Hi, I would like to run tests, but
make
always throws errors...Instead I do this to run tests (albeit w/o debug output):
Problem 2 - space + home row => arrows
I want to make my space key pressed with home row keys emulate arrows. I tried:
KEY_SPACE
andK
mapping intoPRESS(KEY_UP)
, but I can't makeKEY_SPACE
stop repeating on other key down/up (space + k
keeps repeatingspace
long after i releasek
)KEY_SPACE
intoKEY_RIGHTMETA
and then multi-rules that mapKEY_RIGHTMETA
withK
into arrow up.. but thenmeta + k
seems to have precedence, which is mapped with my tiling WM..KEY_SPACE
into itself with.repeat_key = KEY_RESERVED
and multi-rule that mapsKEY_SPACE
withK
into an arrow.. this doesn't change anything..My
interception-k2k/maricn/multi-rules.h.in
:My
interception-k2k/maricn/multi-tap.h.in
:Problem 3 - stuck letters
Sometimes when I load interception plugin, my letter J gets stuck and doesn't output.. It doesn't get registered in
evtest
and when I move to another window (firefox) it keeps outputtingj
until i press some other key.