[ANNOUNCE] kwin-type v0.1 is released
Jason A. Donenfeld
jdonenfeld at kde.org
Mon Oct 26 14:07:02 GMT 2026
Hi folks,
KWin 6.8 relaxed restrictions on the fake-input protocol [1], making
it possible for command line applications to autotype. This is useful
for `passmenu --type`, part of the pass(1) set of scripts, for being
able to autotype into password boxes and such.
I've written one such utility, called `kwin-type`. It's very simple.
It takes input on stdin, and types it.
You can read about it here:
- https://git.zx2c4.com/kwin-type/about/
Or its man page here:
- https://git.zx2c4.com/kwin-type/about/kwin-type.1
Or you can read its extremely simple source here:
- https://git.zx2c4.com/kwin-type/tree/kwin-type.c
I've also added this to Gentoo as kde-misc/kwin-type. Future versions
of password store will depend on it for its autotyping functionality
if it detects a KDE environment.
Some background: I didn't want to have to make such a utility, but all
the existing utilities for this seemed deficient in one way or another
-- requiring /dev/uinput or requiring virtual-keyboard-unstable-v1 or
using portals + EIS. I actually initially made a utility that used
libportal + libei called portal-type, which saved its token in a file
and such to not need reauthorization, but it was clunky and did a lot
of work for something so simple, so I was happy to finally come across
this KDE-specific way of doing it cleanly. kwin-type uses
org_kde_kwin_fake_input to type keys and org_kde_kwin_keystate to deal
with capslock being potentially enabled. So it basically works like
plasma's floating virtual keyboard.
I'll move this over to invent.kde.org instead of git.zx2c4.com if so desired.
Enjoy!
Jason
[1] https://invent.kde.org/plasma/kwin/-/commit/f9bf0ee6b1e65cf9bad5a3d38ea417d264a33b55
More information about the kde-devel
mailing list