Releases: jtroo/kanata
Windows key code tester v0.2.0
Binaries to help test Windows keycodes without having to have a kanata config. Simply run the program and see the logs.
Notes for interception variant:
Running the binary has the same requirements as kanata. See the wintercept variants of the kanata release.
v1.1.0
Changelog
- fix incorrect mapping of
kp0
- fix key repeat behaviour with some key actions
- add cancellable macro
- allow some actions in macro
- improve leniency with linux device definitions
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
cmd_allowed variants
The binaries with the name cmd_allowed
are conditionally compiled with the cmd
action enabled.
Using the regular binaries, there is no way to get the cmd
action to work. This action is restricted behind conditional compilation because I consider the action to be a security risk that should be explicitly opted into and completely forbidden by default.
wintercept variants
Warning: known issue
This issue in the Interception driver exists: oblitum/Interception#25. This will affect you if you put your PC to sleep instead of shutting it down, or if you frequently plug/unplug USB devices.
Description
These variants use the Interception driver instead of Windows hooks. You will need to install the driver using the assets from the linked website or from the copy in this repo. The benefit of using this driver is that it is a lower-level mechanism than Windows hooks. This means kanata
will work in more applications, including administrator-privileged apps.
Steps to install the driver
- extract the
.zip
- run a shell with administrator privilege
- run the script
"command line installer/install-interception.exe"
- reboot
Additional installation steps
The above steps are those recommended by the interception driver author. However, I have found that those steps work inconsistently and sometimes the dll stops being able to be loaded. I think it has something to do with being installed in the privileged location of system32\drivers
.
To help with the dll issue, you can copy the following file in the zip archive to the directory that kanata starts from: Interception\library\x64\interception.dll
.
E.g. if you start kanata from your Documents
folder, put the file there:
C:\Users\my_user\Documents\
kanata_wintercept.exe
kanata.kbd
interception.dll
sha256 checksums
6acc7f749f57164cc606e94ad02c147252b2f3cbf6195a8e9fbf46ec6979ca23 kanata
8ec9839977fd69806b7507fbfb2a251c106b0e7896f0dd492f5fbe61407e51b4 kanata.exe
395a7a8b4136c8e2e46b4d474896d57cf79f2fd19e4ed554da39ecf7673bc376 kanata.kbd
a11f417b974a139053d7caf57d9ad769d7bb464ec16cf0d743308d54b1fed980 kanata_cmd_allowed
6d79e23b1c2221ad2d9370a9e7894b2913d5664e34461b773dc4f8cc391d70fb kanata_cmd_allowed.exe
adacdcd2801146c8728f32d9668163ab00397976a2a78391f576430959d691f8 kanata_wintercept.exe
999dce55259272e029dd5ababb871e15ef7e40062db04bfe0eaad939aabfaaa1 kanata_wintercept_cmd_allowed.exe
Windows key code tester v0.1.0
Binaries to help test Windows keycodes without having to have a kanata config. Simply run the program and see the logs.
Notes for interception variant:
Running the binary has the same requirements as kanata. See the wintercept variants of the kanata release.
v1.0.8
Known issues
- Incorrect numpad 0 key mapping
kp0
. Workaround: build from the main branch in which this is fixed, or use v1.0.7
Changelog
- Fixes to some Interception keys
- Improve CPU usage when nothing is being typed
- Allow colons in device path by escaping with backslash
- Add AltGr chord shortcut (
AG-
orRA-
) - Autodetect keyboard devices if linux-dev is omitted
- Add more mappable keys
- Add guaranteed termination of kanata using the key combo LCtrl+Space+Escape
- Enable defsrc and remapping of mouse buttons in Linux
- Allow automatic handling of unmapped keys
- Fix an issue on Windows related to keys mapped to shift
- Fix behaviour of nested multi actions
- Fix one-shot behaviour when followed by certain other special actions
- Add more remappable mouse buttons
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
cmd_allowed variants
The binaries with the name cmd_allowed
are conditionally compiled with the cmd
action enabled.
Using the regular binaries, there is no way to get the cmd
action to work. This action is restricted behind conditional compilation because I consider the action to be a security risk that should be explicitly opted into and completely forbidden by default.
wintercept variants
Warning: known issue
This issue in the Interception driver exists: oblitum/Interception#25. This will affect you if you put your PC to sleep instead of shutting it down, or if you frequently plug/unplug USB devices.
Description
These variants use the Interception driver instead of Windows hooks. You will need to install the driver using the assets from the linked website or from the copy in this repo. The benefit of using this driver is that it is a lower-level mechanism than Windows hooks. This means kanata
will work in more applications, including administrator-privileged apps.
Steps to install the driver
- extract the
.zip
- run a shell with administrator privilege
- run the script
"command line installer/install-interception.exe"
- reboot
Additional installation steps
The above steps are those recommended by the interception driver author. However, I have found that those steps work inconsistently and sometimes the dll stops being able to be loaded. I think it has something to do with being installed in the privileged location of system32\drivers
.
To help with the dll issue, you can copy the following file in the zip archive to the directory that kanata starts from: Interception\library\x64\interception.dll
.
E.g. if you start kanata from your Documents
folder, put the file there:
C:\Users\my_user\Documents\
kanata_wintercept.exe
kanata.kbd
interception.dll
sha256 checksums
99e44ef70594f3d916402ea606f6a5d0368301bd84aa10991180b7716e233b81 kanata.kbd
27c25bc33d710faec48c59efcac57071cd14ec131dfeab0b16b74684cb3486ab kanata
876a08b9d83537af043769c73165b3d1582f6d53f1eb95cddc00be8f30cebfde kanata.exe
2082f3e64e2ab991e494de2f45f7b5efabade3efb76400981c87c5f88e01bb77 kanata_cmd_allowed
583691bb4f3544bab2a6d81722a2355eb21b040efc32ac38da571be960cf857b kanata_cmd_allowed.exe
8d6be55d095bf491e0bc97cfb57cf888b3bcbd797914a0f496cac1ac2f0c2bb1 kanata_wintercept.exe
8ddc3db8f1e63d94a6c57762c0cfa0cd2b37656c8e17cf661d38639887af3a3d kanata_wintercept_cmd_allowed.exe
v1.0.7
Changelog
- Add support for the interception driver
- Add vertical and horizontal mouse scrolling actions
- Add fake keys feature with press-only, release-only actions
- Add leader->sequence actions that activate a fake key tap
- Fix mouse button regression in Linux in v1.0.6
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
cmd_allowed variants
The binaries with the name cmd_allowed
are conditionally compiled with the cmd
action enabled.
Using the regular binaries, there is no way to get the cmd
action to work. This action is restricted behind conditional compilation because I consider the action to be a security risk that should be explicitly opted into and completely forbidden by default.
wintercept variants
Warning: experimental feature
The interception driver support is newly added in this release. Some handling of specific key inputs/outputs may be incorrect because the driver uses a different scancode mechanism vs. existing code. Please file bugs if you find issues.
Warning: known issue
This issue in the Interception driver exists: oblitum/Interception#25. This will affect you if you put your PC to sleep instead of shutting down or frequently plug/unplug USB devices.
Description
These variants use the Interception driver instead of Windows hooks. You will need to install the driver using the assets from the linked website or from the copy in this repo. The benefit of using this driver is that it is a lower-level mechanism than Windows hooks. This means kanata
will work in more applications, including administrator-privileged apps.
Steps to install the driver
- extract the
.zip
- run a shell with administrator privilege
- run the script
"command line installer/install-interception.exe"
- reboot
Additional installation steps
The above steps are those recommended by the interception driver author. However, I have found that those steps work inconsistently and sometimes the dll stops being able to be loaded. I think it has something to do with being installed in the privileged location of system32\drivers
.
To help with the dll issue, you can copy the following file in the zip archive to the directory that kanata starts from: Interception\library\x64\interception.dll
.
E.g. if you start kanata from your Documents
folder, put the file there:
C:\Users\my_user\Documents\
kanata_wintercept.exe
kanata.kbd
interception.dll
Known issues
- Not all keys are mapped (e.g. L/R Windows keys, numpad Enter)
- This is fixed in the latest main branch - you can build it yourself with:
cargo build --release --features interception_driver
sha256 checksums
4310ec51672d51ed335340861e181aed7e8717f87ea11f07db2c217ab02cd15c kanata.kbd
40797919c508b5c361038d53009982c508a48339822e8acd874c8daf9696630a kanata
f82a77495e38a5c04f43eb4c5353cf74c02e2db81c5f0ba9728e8543d9a15325 kanata.exe
1525391232738d3cc139cc68fa24b5624ab11c7d17fe3d48701d3ef8881103ba kanata_cmd_allowed
aa74311a15edb9a6c9d8f355170f6454c9d7aaff402fc00ebb667b9ae7dd9151 kanata_cmd_allowed.exe
79553252062d0438d00e557d940928f58c1e95c8fdb997bf935b58fcbda280ff kanata_wintercept.exe
757e57367c68d820afdda4ca5ed812c47b5aed2861debb514a19976436db1a83 kanata_wintercept_cmd_allowed.exe
v1.0.6
Changelog
- Add TCP server for changing layers and publishing layer changes
- Add
release-key
andrelease-layer
- Add
ro
key (ABNT2 slash key) - Add
tap-hold-press
andtap-hold-release
actions - Add Windows AltGr behaviour mitigations
- Enable Linux to listen for multiple devices
Known issues
- Mouse button actions do not work in Linux (works in v1.0.5)
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
cmd_allowed variants
The binaries kanata_cmd_allowed
and kanata_cmd_allowed.exe
are conditionally compiled with the cmd
action enabled.
Using the regular binaries, there is no way to get the cmd
action to work. This action is restricted behind conditional compilation because I consider the action to be a security risk that should be explicitly opted into and completely forbidden by default.
sha256 checksums
b18f3c03a3835fc7c777c1458bbe5b88fc7941f74e586f5e5b733fdb6b35ae5a kanata.kbd
6be621d05dfb23dcd0cb942fcc4653ac599a4692eaf6c1702078ea276c89194b kanata
02a8ca50b988f08236582fd83a4c798457373a17892e4c1b53ff2b7be20ffbfe kanata.exe
712720863633fc9989040d8643e2b0b84f0789968e9d9f65594e437ce0189b62 kanata_cmd_allowed
d82a6ecd3482d191307c4553fa456c574f8aa1a030261c258716eac1a9047d9f kanata_cmd_allowed.exe
v1.0.5
Changelog
- Add tap-dance
- Add one-shot
- Add parsing support for
M-
for use as a chord withlmeta
(aka GUI, Windows, Cmd) - Disable nested
tap-hold
- Fix behaviour of some multi actions
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
cmd_allowed variants
The binaries kanata_cmd_allowed
and kanata_cmd_allowed.exe
are conditionally compiled with the cmd
action enabled.
Using the regular binaries, there is no way to get the cmd
action to work. This action is restricted behind conditional compilation because I consider the action to be a security risk that should be explicitly opted into and completely forbidden by default.
sha256 checksums
485129267862373bb6164c56bf3d6f6e7a4248342c2b425a8b175625830d9ba3 kanata.kbd
10749aa49b7c41d8fed5832a44ac3fa3b504f44a158918f3620f307dde33dee7 kanata
760384a577e55dc8e507b76c41c849f7f30c636da69dbabae598f66993f89309 kanata.exe
c8e79a25c8e6fa5334535958138989177b6a709399c3ea880a095ce320a96e0d kanata_cmd_allowed
469631650eb47da5434d0971dba56aeb2b8a16ddac47ce54caad3e0a79d3e56b kanata_cmd_allowed.exe
v1.0.4
Changelog
- Add optional "cmd" functionality to execute binaries from kanata
- Fix regression of mouse buttons in linux
- Add sleep on init as mitigation for key spam issue
- Add
M-
as shortcut forlmeta
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
cmd_allowed variants
The binaries kanata_cmd_allowed
and kanata_cmd_allowed.exe
are conditionally compiled with the cmd
action enabled.
Using the regular binaries, there is no way to get the cmd
action to work. This action is restricted behind conditional compilation because I consider the action to be a security risk that should be explicitly opted into and completely forbidden by default.
sha256 checksums
abe365a8bd75fba0eb686f2c915dee620932f90bcc100f49c388c0d1558dd85d kanata.kbd
e57ff76219430f4eae31b4c3296401af9d048a5d529050496c77eaaf47b8aaf9 kanata
4bb7025b157a6e5c05afeaa29ebf48b38ef1e618e0025293e05d70b3fc190ecc kanata.exe
93b43d720d70378774794a7faffc4fe9bd0554967f6d412cfb21477dd27d2478 kanata_cmd_allowed
f2101ed0498f00be3d7c6f3550d95dc4de1c63e78eaf1e86c97279fb3811f9c5 kanata_cmd_allowed.exe
v1.0.3
Changelog
- Fix handling of key 102 (non-US pipe+backslash)
- Change behaviour of transparent keys on default layer to delegate to defsrc
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
sha256 checksums
e6301f1ecc8abc6b6c0a36035eb5c69b52f5feca5fede6e392e6bf67cca4e7e5 kanata.exe
7ef97acd0157805b9ca42c04a8c7398955ede004d76760e6bf5d28d9a59d5709 kanata
v1.0.2
Changelog
- Add Hangeul/Hanja key aliases
- Add missing kmonad aliases
- Limit maximum keycode number to 256 (exclusive) in Linux to fix a Wayland issue
- Print layer configuration when the active layer changes
Sample configuration file
The attached kanata.kbd
file is tested to work with the current version. The one in the main
branch of the repository may have extra features that are not supported in this release.
Windows
Download kanata.exe
. Optionally, download kanata.kbd
. With the two files in the same directory, you can double-click the exe
to start kanata.
You need to run kanata.exe
via cmd
or powershell
to use a different configuration file:
kanata.exe --cfg <cfg_file>
You can also set up a toolbar shortcut.
Linux
Download kanata
.
Run it in a terminal and point it to a valid configuration file:
chmod +x kanata # may be downloaded without executable permissions
sudo ./kanata --cfg <cfg_file>`
To avoid requiring sudo
, follow the instructions here.
sha256 checksums
e5b7176799ad69f7cfbfef54bc26205b807c5088c7ee72f93c5c8b7967bea43b kanata.exe
05d57040ce5672c401d77d935b8a52b6288792ad2c03f1989814fa6d26937dd8 kanata