summaryrefslogtreecommitdiff
path: root/bash-completion
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2012-09-03 04:43:01 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2012-09-03 05:25:35 +0200
commit8769aa6370cd6b4ebd7393c32519a04772f5bd29 (patch)
treef91f3de7355094b6900451c8eddeb8b0a972e057 /bash-completion
parent564e87519bf366892bb33b1553f5fa00a57ed66f (diff)
downloadpass-8769aa6370cd6b4ebd7393c32519a04772f5bd29.tar.gz
pass-8769aa6370cd6b4ebd7393c32519a04772f5bd29.tar.bz2
pass-8769aa6370cd6b4ebd7393c32519a04772f5bd29.zip
Make into a real project.
Diffstat (limited to 'bash-completion')
-rw-r--r--bash-completion/pass-bash-completion.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/bash-completion/pass-bash-completion.sh b/bash-completion/pass-bash-completion.sh
new file mode 100644
index 0000000..f3d285a
--- /dev/null
+++ b/bash-completion/pass-bash-completion.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+_pass()
+{
+ local cur prev prefix suffix gen
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+ prefix="$HOME/.password-store/"
+ suffix=".gpg"
+
+ if [[ $prev == --* ]]; then
+ return 0
+ fi
+
+ for item in $(compgen -f $prefix$cur); do
+ if [[ $item == $prefix.* ]]; then
+ continue
+ fi
+ if [[ -d $item ]]; then
+ item="$item/"
+ fi
+ item="${item%$suffix}"
+ gen="$gen ${item#$prefix}"
+ done
+
+ COMPREPLY=( $gen )
+}
+complete -o filenames -o nospace -F _pass pass