summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2023-10-21 21:20:04 +0200
committertv <tv@krebsco.de>2023-10-23 16:31:15 +0200
commit628e62684548e72ec72b1fec5c8981d25e63a22a (patch)
tree8805c31f4a435916a85a76912f048bc27fe58726
parent5928a25ad10c0e463732ba4959e2e2b5a742166a (diff)
fzmenu: xdotool -> xvkbd
xdotool breaks when changing keyboard layouts: https://code.google.com/archive/p/semicomplete/issues/13
-rwxr-xr-xpkgs/simple/fzmenu/bin/otpmenu5
-rwxr-xr-xpkgs/simple/fzmenu/bin/passmenu5
-rw-r--r--pkgs/simple/fzmenu/default.nix4
3 files changed, 10 insertions, 4 deletions
diff --git a/pkgs/simple/fzmenu/bin/otpmenu b/pkgs/simple/fzmenu/bin/otpmenu
index 273a408..714ab7c 100755
--- a/pkgs/simple/fzmenu/bin/otpmenu
+++ b/pkgs/simple/fzmenu/bin/otpmenu
@@ -34,9 +34,12 @@ case ${FZMENU_PHASE-0} in
fi
;;
2)
+ # Specify a font, so xvkbd doesn't use the potentially missing
+ # lucidatypewriter, causing a warning to be printed to stderr.
+ font='-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1'
pass=$(pass otp code "$FZMENU_RESULT/otp")
printf %s "$pass" |
- xdotool type -f -
+ xvkbd -xrm "xvkbd*Font: $font" -xsendevent -file -
;;
*)
echo "$0: error: bad phase: $FZMENU_PHASE" >&2
diff --git a/pkgs/simple/fzmenu/bin/passmenu b/pkgs/simple/fzmenu/bin/passmenu
index 76153f5..a798925 100755
--- a/pkgs/simple/fzmenu/bin/passmenu
+++ b/pkgs/simple/fzmenu/bin/passmenu
@@ -35,9 +35,12 @@ case ${FZMENU_PHASE-0} in
fi
;;
2)
+ # Specify a font, so xvkbd doesn't use the potentially missing
+ # lucidatypewriter, causing a warning to be printed to stderr.
+ font='-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1'
pass=$(pass show "$FZMENU_RESULT")
printf %s "$pass" |
- xdotool type -f -
+ xvkbd -xrm "xvkbd*Font: $font" -xsendevent -file -
;;
*)
echo "$0: error: bad phase: $FZMENU_PHASE" >&2
diff --git a/pkgs/simple/fzmenu/default.nix b/pkgs/simple/fzmenu/default.nix
index 1a285ee..c4dccbf 100644
--- a/pkgs/simple/fzmenu/default.nix
+++ b/pkgs/simple/fzmenu/default.nix
@@ -28,7 +28,7 @@ pkgs.runCommand "fzmenu" {
ext.pass-otp
]))
pkgs.utillinux
- pkgs.xdotool
+ pkgs.xvkbd
terminal
]}
@@ -44,7 +44,7 @@ pkgs.runCommand "fzmenu" {
ext.pass-otp
]))
pkgs.utillinux
- pkgs.xdotool
+ pkgs.xvkbd
terminal
]}
''