qute-pass (899B)
1 #!/usr/bin/env bash 2 3 shopt -s nullglob globstar 4 5 prefix=${PASSWORD_STORE_DIR-~/.password-store} 6 password_files=("$prefix"/**/*.gpg) 7 password_files=("${password_files[@]#"$prefix"/}") 8 password_files=("${password_files[@]%.gpg}") 9 password=$(printf '%s\n' "${password_files[@]}" | dmenu) 10 [[ -n $password ]] || exit 11 12 command=$1 13 case $1 in 14 "-o") 15 keys=$(pass otp "$password") 16 echo fake-key \""$keys"\" >>$QUTE_FIFO 17 ;; 18 "-p") 19 keys=$(pass show "$password" | { 20 IFS= read -r pass 21 printf %s "$pass" 22 }) 23 echo fake-key \""$keys"\" >>$QUTE_FIFO 24 ;; 25 "-u") 26 keys=$(basename "$password") 27 echo fake-key \""$keys"\" >>$QUTE_FIFO 28 ;; 29 "-a") 30 keys=$(basename "$password") 31 echo fake-key \""$keys"\" >>$QUTE_FIFO 32 echo fake-key "<TAB>" >>$QUTE_FIFO 33 keys=$(pass show "$password" | { 34 IFS= read -r pass 35 printf %s "$pass" 36 }) 37 echo fake-key \""$keys"\" >>$QUTE_FIFO 38 ;; 39 esac 40 41 echo mode-enter insert >>$QUTE_FIFO