summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile4
-rw-r--r--bash-completion/pass-bash-completion (renamed from bash-completion/pass-bash-completion.sh)0
-rw-r--r--bash-completion/pass-zsh-completion72
3 files changed, 75 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 62f2ca0..e0485a8 100644
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,9 @@ install:
@mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1 $(DESTDIR)$(SYSCONFDIR)/bash_completion.d
@install -m 0755 -v src/password-store.sh $(DESTDIR)$(BINDIR)/pass
@install -m 0644 -v man/pass.1 $(DESTDIR)$(MANDIR)/man1/pass.1
- @install -m 0644 -v bash-completion/pass-bash-completion.sh $(DESTDIR)$(SYSCONFDIR)/bash_completion.d/password-store
+ @install -m 0644 -v bash-completion/pass-bash-completion $(DESTDIR)$(SYSCONFDIR)/bash_completion.d/password-store
+# Uncomment to install the zsh completion file too.
+# @install -m 0644 -v bash-completion/pass-zsh/completion $(DESTDIR)$(PREFIX)/share/zsh/site-functions/_pass
uninstall:
@rm -vf $(DESTDIR)$(BINDIR)/pass $(DESTDIR)$(MANDIR)/man1/pass.1 $(DESTDIR)$(SYSCONFDIR)/bash_completion.d/password-store
diff --git a/bash-completion/pass-bash-completion.sh b/bash-completion/pass-bash-completion
index 8ddc377..8ddc377 100644
--- a/bash-completion/pass-bash-completion.sh
+++ b/bash-completion/pass-bash-completion
diff --git a/bash-completion/pass-zsh-completion b/bash-completion/pass-zsh-completion
new file mode 100644
index 0000000..bc23356
--- /dev/null
+++ b/bash-completion/pass-zsh-completion
@@ -0,0 +1,72 @@
+#compdef pass
+
+# This file is under the GPLv2+ license.
+# Heavily based on http://zsh.sf.net/Guide/zshguide06.html#l177
+# And Frédéric Perrin article http://tar-jx.bz/notes/zsh-completion.html
+# Johan Venant, September 2012
+
+
+_pass () {
+ local cmd
+ if (( CURRENT > 2)); then
+ cmd=${words[2]}
+ # Set the context for the subcommand.
+ curcontext="${curcontext%:*:*}:pass-$cmd"
+ # Narrow the range of words we are looking at to exclude `pass'
+ (( CURRENT-- ))
+ shift words
+ # Run the completion for the subcommand
+ (( $+functions[_pass_cmd_$cmd] )) && _pass_cmd_$cmd
+
+ else
+ _values : \
+ "init[Initialize new password storage]" \
+ "ls[subfolder List names of passwords]" \
+ "show[Decrypt and print a password]" \
+ "insert[Insert a new password]" \
+ "generate[Generate a new password using pwgen]" \
+ "rm[Remove the password]" \
+ "push[push the latest changes using git-push(1)]" \
+ "pull[pull the latest changes using git-pull(1)]" \
+ "git[Call git]" \
+ "help[Help]"
+ fi
+}
+
+_pass_cmd_init () {
+}
+
+_pass_cmd_ls () {
+ _arguments : \
+ '::ls:_get_stored_pwd'
+}
+
+_pass_cmd_show () {
+ _arguments : \
+ "-c[put it on the clipboard]" \
+ '*::show:_get_stored_pwd'
+ #'::pass id:_files -W ~/.password-store -g "*.gpg(|.*)(-.)"'
+}
+
+_pass_cmd_insert () {
+ _arguments : \
+ "-n[no console output]" \
+ "-m[multiline]" \
+ '::show:_get_stored_pwd'
+}
+
+_pass_cmd_generate () {
+ _arguments : \
+ "-n[no symbols]" \
+ "-c[put password on the clipboard]" \
+ '::show:_get_stored_pwd'
+}
+
+_pass_cmd_rm () {
+ _arguments : \
+ '::ls:_get_stored_pwd'
+}
+
+_get_stored_pwd () {
+ compadd `find ~/.password-store \( -name .git -o -name .gpg-id \) -prune -o -print | sed 's#.*/.password-store/\?##' | sed 's#\.gpg##' | sort`
+}
s='insertions'>+3 2020-05-10Switch to our own html2text fork for the time beingRené 'Necoro' Neumann3-5/+5 2020-05-10Text part in emailsRené 'Necoro' Neumann7-33/+115 2020-05-10Allow options on group level.René 'Necoro' Neumann3-5/+11 2020-05-10Renamed feed template to html templateRené 'Necoro' Neumann2-2/+2 2020-05-10Release v0.2.0v0.2.0René 'Necoro' Neumann2-2/+6 2020-05-10Fix building cacheRené 'Necoro' Neumann1-1/+3 2020-05-10Update READMERené 'Necoro' Neumann1-5/+44 2020-05-10Ignore 'dist' folder and build productsRené 'Necoro' Neumann1-0/+2 2020-05-08Print item hashes in debug modeRené 'Necoro' Neumann1-1/+7 2020-05-07Improve html renderingRené 'Necoro' Neumann2-53/+32 2020-05-07Do not assume items to be new when their published date is newer than the las...René 'Necoro' Neumann2-7/+1 2020-05-07Updating some depsRené 'Necoro' Neumann2-2/+7 2020-05-07Better detection if a text starts with html or notRené 'Necoro' Neumann2-4/+13 2020-05-07go fmtRené 'Necoro' Neumann1-3/+2 2020-05-07Add header X-Feed2Imap-GUIDRené 'Necoro' Neumann3-1/+7 2020-05-07update changelogRené 'Necoro' Neumann1-0/+1 2020-05-07FixRené 'Necoro' Neumann1-1/+1 2020-05-07Unified publishedDate and updatedDate into one (just as the old feed2imap...)René 'Necoro' Neumann5-21/+32 2020-05-06Print version during startupRené 'Necoro' Neumann1-1/+1 2020-05-06Improve templateRené 'Necoro' Neumann3-20/+28 2020-05-05Fix pipelineRené 'Necoro' Neumann1-2/+5 2020-05-05Make changelog a part of the release pipeline (untested)René 'Necoro' Neumann2-0/+12