dotfiles/sway/scripts/fzf-pass

45 lines
927 B
Plaintext
Raw Normal View History

#!/usr/bin/env bash
# Credit goes to https://git.reekynet.com/ReekyMarko/fzf-pass for this.
cd "$HOME/.password-store" || exit 1
PASSFILE=$(tree -Ffi \
| grep '.gpg' \
| sed 's/.gpg$//g' \
| sed 's/^..//' \
| fzf --reverse --no-info --prompt='pass::' --pointer='➜' --no-multi )
if [ -z "$PASSFILE" ]; then
exit 0
fi
RESP=$(cat <<EOF | fzf
Autotype
Username
Password
Page
EOF
);
case "$RESP" in
Autotype)
swaymsg exec "source ~/.profile \
&& ydotool type \"\$(pass get_user $PASSFILE)\" \
&& ydotool key TAB \
&& ydotool type \"\$(pass get_pass $PASSFILE)\""
;;
Username)
swaymsg exec "source ~/.profile \
&& ydotool type \"\$(pass get_user $PASSFILE)\""
;;
Password)
swaymsg exec "source ~/.profile \
&& ydotool type \"\$(pass get_pass $PASSFILE)\""
;;
Page)
pass "$PASSFILE" | LESS=R less
;;
*)
exit 1
esac