You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
xremap/CHANGELOG.md

9.3 KiB

Unreleased

  • Emit no key event instead of KEY_UNKNOWN on skip_key_event #462

v0.8.18

  • Fix issues in the release pipeline

v0.8.17

  • Add window matcher for the kde client #448

v0.8.16

  • Add window matcher for the wlroots client #447
  • Handle new KWin API for the kde client #437

v0.8.15

  • Add skip_key_event option to press/release modmap action #420

v0.8.14

  • Support TOML as a config file format #404

v0.8.13

  • Add shared field for anchors and aliases #402

v0.8.12

  • Add device filter to modmap and keymap entries #380

v0.8.11

  • Use xremap instead of xremap pid=$pid as the device name if it doesn't conflict
    • If there's already an xremap device, it uses xremap pid=$pid as before

v0.8.10

  • Add REL_WHEEL and REL_HWHEEL to relative axes if --mouse is given
    • This resurrects what's dropped in v0.8.2 if you use that option

v0.8.9

  • Introduce wlroots support #345
    • sway and hypr users are encourated to switch to this

v0.8.8

  • Let keypress_delay_ms delay key releases as well #341

v0.8.7

  • Support multi-key held/alone in modmap #339

v0.8.6

  • Update clap from v3 to v4
    • --help no longer has colors

v0.8.5

  • Update Hyperland-rs from 0.3.0 to 0.3.1 #275

v0.8.4

  • Support loading multiple configs #269

v0.8.3

  • Support KDE Wayland #264

v0.8.2

  • Remove REL_WHEEL and REL_HWHEEL as a workaround for Arch Linux with systemd-253-1

v0.8.1

  • Update Hyperland-rs from 0.2.4 to 0.3.0 #247

v0.8.0

  • Support scrollwheel / RELATIVE events #180 #187

v0.7.15

  • Handle a None application name on Hyperland #220

v0.7.14

  • Fix overrides with multi-key sequences #217

v0.7.13

  • Support Hyperland #216

v0.7.12

  • Double-fork a launched process to avoid stopping it when xremap exits #214

v0.7.11

  • Reconnect to X11 when an existing connection stops working #212

v0.7.10

  • Introduce keymap-level exact_match option #209

v0.7.9

  • Press keymap modifiers before releasing modifiers not in keymap #208

v0.7.8

  • Fix libinput disable-while-typing support #152

v0.7.7

  • Flush pending keys with an override remap correctly #154

v0.7.6

  • Add keypress_delay_ms to workaround #179
    • This feature might be removed in the future once the root cause of #179 is found and fixed.

v0.7.5

  • Fix a regression to recognize JetBrains IDE on application since v0.5.3 #151

v0.7.4

  • Fix nested remap implementation that has been broken since v0.6.0 #149

v0.7.3

  • Dispatch the original key as well on v0.5.1's press/release modmap

v0.7.2

  • Fix a corner-case bug in the v0.7.1 feature

v0.7.1

  • Keep extra modifiers when a remapped combination is pressed #102

v0.7.0

  • Introduce virtual_modifiers #147
  • Obsolete the modifier: true feature of v0.6.1 in favor of virtual_modifiers

v0.6.2

  • Avoid emitting logical modifiers when a key combination is pressed

v0.6.1

  • Support logical modifier keys by modifier: true in modmap #146

v0.6.0

  • Rewrite the modifier key match logic
    • Match remaps even if extra modifiers are held #102
    • Even faster than the previous version

v0.5.3

  • Match an application matcher against a full WM_CLASS in X11 when the matcher contains ..
    • If you don't specify ., it's backward-compatible.
    • If you already use v0.4.5's /regex/, however, you might need to tweak the regex.

v0.5.2

  • Support overriding timeout_key on nested remap #144

v0.5.1

  • Support triggering keymap actions on key press/release events #79

v0.5.0

  • Switch to binary releases built by cross-rs
    • Support Arm64
    • All binaries no longer have dynamic-link dependencies like libc
    • Stop supporting "others" distribution
      • If you use none of X11, GNOME, or Sway, try X11. It might help XWayland.

v0.4.6

  • Add --mouse option to select mouse as well #140
  • The X11 binary no longer relies on libx11

v0.4.5

  • application supports a regular expression matcher, /regex/ #138

v0.4.4

  • Support Vim-like modal remapping by mode, set_mode, and default_mode #93

v0.4.3

  • Produce xremap binary releases on Ubuntu 18.04 #101

v0.4.2

  • --features gnome: Support a new protocol to talk to the GNOME Shell extension
    • Both old and new GNOME Shell extensions work with this version

v0.4.1

  • --features gnome: Show supported: false in the command output when the GNOME Shell extension is not installed

v0.4.0

  • --features gnome: Depend on an external GNOME Shell extension, xremap-gnome
    • If you use --features gnome, install xremap's GNOME Shell extension
    • This allows you to use xremap with GNOME 40+. Ubuntu 22.04 uses GNOME 42 for example.

v0.3.3

  • Fix a bug in a nested remap with modifiers #91

v0.3.2

  • Support timeout_millis to timeout a prefix key #82

v0.3.1

  • Keep --watch working when multiple keyboards are used #85

v0.3.0

  • Switch the CLI framework from getopts to clap
  • Add --watch=config to watch configs
    • --watch works as before. You may use it as --watch=device as well.
  • Add --completions for shell completion

v0.2.5

  • Support escape_next_key action #74

v0.2.4

  • Use feature-related dependencies only when needed #68

v0.2.3

  • Detect XWayland applications properly for Sway #65

v0.2.2

  • Support BTN_MISC, BTN_MOUSE, BTN_EXTRA, BTN_FORWARD, BTN_BACK, and BTN_TASK as mouse buttons as well #63

v0.2.1

  • Support remapping a mouse with BTN_SIDE #57

v0.2.0

  • Support left/right-specific modifiers by _L/_R prefixes #56

v0.1.9

  • Fix a bug of handling control keys inside with_mark of v0.1.7 #55

v0.1.8

  • Add --version option to show xremap's version #54

v0.1.7

  • Add set_mark and with_mark to emulate Emacs's mark mode #53

v0.1.6

  • Add launch action to execute a command #52

v0.1.5

  • Add --watch option to automatically add new devices
  • Avoid crashing on a disconnected device
  • name is made optional in modmap and keymap

v0.1.4

  • Add --ignore option to deny-list devices instead of allow-listing them #46
  • Abort xremap when no device was selected

v0.1.3

  • Support remapping a key to two different keys depending on whether it's pressed alone or held #47

v0.1.2

  • Fix recognition of a right Alt modifier in keymap #43

v0.1.1

  • Binary distribution is built on GitHub Actions
  • Improve error message for features gnome and sway
  • Stop using a fork of swayipc and publish sway feature on crates.io

v0.1.0

  • Initial release
    • modmap, keymap, application, remap
    • --features: x11, gnome, sway