summaryrefslogtreecommitdiffstats
path: root/.local/bin/dmpass
diff options
context:
space:
mode:
Diffstat (limited to '.local/bin/dmpass')
-rwxr-xr-x.local/bin/dmpass20
1 files changed, 14 insertions, 6 deletions
diff --git a/.local/bin/dmpass b/.local/bin/dmpass
index d5b0494..475b96e 100755
--- a/.local/bin/dmpass
+++ b/.local/bin/dmpass
@@ -13,10 +13,10 @@ fi
if [ -n "$WAYLAND_DISPLAY" ]; then
- dmenu=dmenu-wl
- xdotool="ydotool type --file -"
+ dmenu="wmenu -i -l 15 -S $color"
+ xdotool="ydotool type --delay 15 --file -"
elif [ -n "$DISPLAY" ]; then
- dmenu=dmenu
+ dmenu="dmenu -i -l 15 -sb $color -shb $color"
xdotool="xdotool type --delay 15 --clearmodifiers --file -"
else
echo "Error: No Wayland or X11 display detected" >&2
@@ -26,7 +26,7 @@ fi
prefix=${PASSWORD_STORE_DIR-~/.local/share/pass}
rprefix=$(printf "%s" $prefix | sed 's/\//\\\//g')
password_files=$(ls "$prefix"/*.gpg "$prefix"/*/*.gpg | sed 's/^'${rprefix}'\///g' | sed 's/\.gpg//g')
-password=$(printf "%s\n" "${password_files}" | "$dmenu" -i -l 15 -sb "$color" -shb "$color")
+password=$(printf "%s\n" "${password_files}" | $dmenu)
[ -n "$password" ] || exit
@@ -35,9 +35,17 @@ p="$(pass show "$password")"
if [ $full -eq 1 ]; then
id=$(printf "%s" "$password" | sed 's/.*___//')
printf "%s\n" $id | { IFS= read -r pass; printf %s "$id"; } | $xdotool
- xdotool key Tab
+ if [ -n "$WAYLAND_DISPLAY" ]; then
+ ydotool key 15:1 15:0
+ else
+ xdotool key Tab
+ fi
printf "%s\n" "$p" | { IFS= read -r pass; printf %s "$pass"; } | $xdotool
- xdotool key Return
+ if [ -n "$WAYLAND_DISPLAY" ]; then
+ ydotool key 28:1 28:0
+ else
+ xdotool key Return
+ fi
exit
fi