Releases: houmain/keymapper
5.4.1
Changed
- On Windows the mouse is now also only hooked when it has mappings. One can add
@grab-device mouseto further hook it unconditionally (#344). - On Windows the devices are unhooked when the active context only contains
Any >> Any(#351). keymapper-launchdalso installs theKarabiner-DriverKit-VirtualHIDDevicedaemon (#298).- Updated
Karabiner-DriverKit-VirtualHIDDeviceto version 6.10.0.
Fixed
5.4.0
Added
-
Added FreeBSD support (#222).
-
Allow
keymapperctlto press/release non-virtual keys (#348). -
Added
getenvbuiltin macro and string comparison blocks (#334). .e.g.:# activate context when environment variable has some specific value [getenv["HOSTNAME"] = "LaptopMum"]
-
Added window title change detection to KWin script (#349).
-
Improved version mismatch error dialog on Windows.
5.3.2
5.3.1
5.3.0
5.2.0
Added
-
Added directive
@virtual-keys-toggle, which allows to change the behavior of virtual keys in outputs (#309). e.g.@virtual-keys-toggle true # true is (still) the default # toggle Virtual1 F1 >> Virtual1
@virtual-keys-toggle false # press Virtual1 F1 >> Virtual1 # release Virtual1 F2 >> !Virtual1 # toggle Virtual1 Virtual1{F3} >> !Virtual1 F3 >> Virtual1
Fixed
5.1.0
5.0.0
The reason for the major version number increment is mainly because of the changed behavior of ;. Up until 4.9 it was documented to start comments like #. Otherwise all configurations should work like before.
Added
-
Allow to separate multiple mappings on one line with
;. This is useful for macros which generate multiple mappings. e.g.:swap = $0 >> $1 ; $1 >> $0 swap[Y, Z]
-
Allow to add mappings for inputs which are released. e.g.:
# trigger when A is released !A >> B # trigger when B is released while A is held A{!B} >> C # trigger when B is released while A is NOT held !A !B >> C
-
Toggling virtual keys can also have immediate effects. Using them as modifiers is toggling them twice:
# toggle Virtual1 before and after pressing B # this effectively maps D to A B C Virtual1 >> A ^ C D >> Virtual1{B} # {} may also be empty. This maps C to A B Virtual2 >> B Virtual1 >> A Virtual2{} C >> Virtual1{}
-
Automatically replace
Virtualwith an unused virtual key. e.g.:# assign different virtual keys to VimMode and CapsWord VimMode = Virtual CapsWord = Virtual -
Added
keymapperctloperation--notifyfor showing notifications (#282). e.g.:notify = $(keymapperctl --notify "$0") F1 >> notify["Test"]
-
Added
toggle-activedirective, which allows to set a sequence that de-/activates keymapper (#283). e.g.:@toggle-active ScrollLock
-
Added
include-optionaldirective, which includes a file but does not fail when file does not exist.
Fixed
4.12.3
4.12.2
Added
- Showing a hint in "Next Key Info" that Gnome/KDE script is not enabled.
Changed
- Handling only lowres wheel events by default on Linux (#268).