Comments (8)
Thanks, it's fixed indeed!
from interception-k2k.
That's strange because CapsLock has the same config.
Can you confirm the behavior with evtest
? Also debug messages would be helpful, so could compile using make test
and send the output?
from interception-k2k.
I cannot run evtest, it tells me This device is grabbed by another process.
If I run make test
, I get this:
➜ sudo make test
CFLAGS=-DVERBOSE make
make[1]: Entering directory '/home/schmitta/src/interception-k2k'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/schmitta/src/interception-k2k'
make install
make[1]: Entering directory '/home/schmitta/src/interception-k2k'
# If you have run `make test` then do not forget to run `make clean` after. Otherwise you may install with debug logs on.
install -D --strip -t /opt/interception out/interception-pipe0 out/interception-ergo out/interception-pipe1 out/interception-dell
make[1]: Leaving directory '/home/schmitta/src/interception-k2k'
timeout 10 udevmon -c /etc/udevmon.yaml
make: *** [Makefile:35: test] Error 124
Hitting any key while it's waiting just display it. I guess I'm doing it wrong…
from interception-k2k.
I cannot run evtest, it tells me This device is grabbed by another process.
Yes, this is how interception-tools
supposed to work. It grabs the input, so it has exclusive access to it. Then it reads the device and transforms the input with the help of plugins (like interception-k2k
). In order to make it working, it also creates a new keyboard device that will emit the final result.
So you have to start evtest
after udevmon
and select the new device (Will be the last entry probably).
Hitting any key while it's waiting just display it. I guess I'm doing it wrong…
You have to run something like sudo env CONFIG_DIR=yourconfig make test
. You need sudo
, because it runs make install
internally and starts udevmon
with a timeout. (It helps me test if everything works and kills udevmon
if I have messed things up. You can change timeout with sudo env TIMEOUT=30 ...
)
Please check out master.
from interception-k2k.
I managed to test using evtest
, and with the exception of one try (the first one), I have the same behavior (holding caps gives me repeated esc).
I had to reboot and I discovered that the interception works for a short while, and then it no longer works.
I am able to run the make test. My observations are that the problem happens as soon as I hold RIGHT_CONTROL
. Until then, caps works as intended (esc or ctrl), and as soon as I hold RIGHT_CONTROL
, caps only generates escape:
timeout 30 udevmon -c /etc/udevmon.yaml
Tap rule #1: Armed.
Tap rule #1: Tapped.
Tap rule #1: Up.
Typing: Yes.
'Typing: No; elapsed: 1964 ms.
Tap rule #0: Armed.
Tap rule #0: Repeated.
^CTyping: Yes.
Tap rule #0: Up.
Typing: No; elapsed: 931 ms.
Tap rule #0: Armed.
Tap rule #0: Repeated.
^CTyping: Yes.
Tap rule #0: Up.
Typing: No; elapsed: 1208 ms.
Tap rule #1: Armed.
Tap rule #1: Repeated.
''''''''''Tap rule #1: Up.
Typing: Yes.
Typing: No; elapsed: 712 ms.
Tap rule #0: Tapped immediately.
^[^[^[^[^[^[^[^[^[^[Tap rule #0: Up.
from interception-k2k.
My observations are that the problem happens as soon as I hold RIGHT_CONTROL. Until then, caps works as intended (esc or ctrl), and as soon as I hold RIGHT_CONTROL, caps only generates escape
What do you think what CapsLock should do in this case? Would it be beneficial to generate a L-Ctrl?
Because a Ctrl is already down (R-Ctrl) the tap rule thinks that it makes no sense to press that key again (L-Ctrl), so it instead generates the tap key (Escape) ("Tapped immediately.").
This way you can do things like this:
interception-k2k/default/interception-pipe0/tap-rules.h.in
Lines 8 to 9 in 83b0f3b
(F -> F; J -> J; FJ -> Shift+J; JF -> Shift+F)
from interception-k2k.
What I mean is that as soon as I hold (a little bit, until it repeats) right ctrl and then release it, from that point on caps lock stops working (and I no longer touch right ctrl).
Can I have a tap rule that is right ctrl → apostrophe when tapped, and to right ctrl otherwise?
from interception-k2k.
Thanks for the report! Now it should work.
from interception-k2k.
Related Issues (9)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from interception-k2k.