You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Since the day I started using Kanata I wanted a way to do this, that is besides using cmd, cmd comes with a big security risk, especially if you run Kanata as Admin or superuser/root, and cmd is too slow on Windows, due to the higher executable startup time on Windows, ~10X slower than on Linux, on Windows it takes 100ms for a "Hello World" C program to run, on Linux it takes less than 10 milliseconds or even less than 5ms. a TCP message to a local TCP client takes less than 1 millisecond (microseconds).
Latency is really important if you want to run code on each key press/release/tap, or when performing any keyboard behavior that can be modeled/configured in Kanata, e.g. a chord. (feels/seems related to #797 )
Describe the solution you'd like.
I would like to use TCP as an IPC mechanism, also to replace the use of cmd, I no longer want to use Kanata compiled with the cmd feature flag.
Action naming suggestion: push-msg
usage example:
(defsrc a s d)
(deflayer a
(push-msg hello "how are you")
(push-msg $what (arbitrary S (expression (that can nest) here) )
)
(defvar
what any
)
This is related to #496, this action/feature enables you to send events on any key down and up using fake keys, explicitly. this is my top use case out of this feature as of now, but I can see many scenarios/cases where this feature/action would be needed too.
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
Since the day I started using Kanata I wanted a way to do this, that is besides using
cmd
, cmd comes with a big security risk, especially if you run Kanata as Admin or superuser/root, and cmd is too slow on Windows, due to the higher executable startup time on Windows, ~10X slower than on Linux, on Windows it takes 100ms for a "Hello World" C program to run, on Linux it takes less than 10 milliseconds or even less than 5ms. a TCP message to a local TCP client takes less than 1 millisecond (microseconds).Latency is really important if you want to run code on each key press/release/tap, or when performing any keyboard behavior that can be modeled/configured in Kanata, e.g. a chord. (feels/seems related to #797 )
Describe the solution you'd like.
I would like to use TCP as an IPC mechanism, also to replace the use of
cmd
, I no longer want to use Kanata compiled with thecmd
feature flag.Action naming suggestion:
push-msg
usage example:
TCP server message JSON schema:
the server message for the above examples would be:
and
formatted with Prettier
Describe alternatives you've considered.
None that I could find.
Additional context
This is related to #496, this action/feature enables you to send events on any key down and up using fake keys, explicitly. this is my top use case out of this feature as of now, but I can see many scenarios/cases where this feature/action would be needed too.
The text was updated successfully, but these errors were encountered: