[PATCH 1/3] fish-completion: deduplicate completion definition
Johannes Altmanninger
aclopte at gmail.com
Fri Apr 17 14:39:50 UTC 2026
The completions for -c/--clip and for password names are defined
repeatedly, for different conditions:
1. for a command line like "pass show "
2. for a command line like "pass "
3. for a command line like "pass -c "
Fold the definitions into one, which paves the way for further
simplification.
No behavior change intended.
---
src/completion/pass.fish-completion | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/src/completion/pass.fish-completion b/src/completion/pass.fish-completion
index 0f57dd2..e035f2c 100644
--- a/src/completion/pass.fish-completion
+++ b/src/completion/pass.fish-completion
@@ -96,13 +96,9 @@ complete -c $PROG -f -n '__fish_pass_needs_command' -a edit -d 'Command: edit pa
complete -c $PROG -f -n '__fish_pass_uses_command edit' -a "(__fish_pass_print_entries)"
complete -c $PROG -f -n '__fish_pass_needs_command' -a show -d 'Command: show existing password'
-complete -c $PROG -f -n '__fish_pass_uses_command show' -s c -l clip -d 'Put password in clipboard'
-complete -c $PROG -f -n '__fish_pass_uses_command show' -a "(__fish_pass_print_entries)"
# When no command is given, `show` is defaulted.
-complete -c $PROG -f -n '__fish_pass_needs_command' -s c -l clip -d 'Put password in clipboard'
-complete -c $PROG -f -n '__fish_pass_needs_command' -a "(__fish_pass_print_entries)"
-complete -c $PROG -f -n '__fish_pass_uses_command -c' -a "(__fish_pass_print_entries)"
-complete -c $PROG -f -n '__fish_pass_uses_command --clip' -a "(__fish_pass_print_entries)"
+complete -c $PROG -f -n '__fish_pass_uses_command show || __fish_pass_needs_command' -s c -l clip -d 'Put password in clipboard'
+complete -c $PROG -f -n '__fish_pass_uses_command show || __fish_pass_needs_command || __fish_pass_uses_command -c || __fish_pass_uses_command --clip' -a "(__fish_pass_print_entries)"
complete -c $PROG -f -n '__fish_pass_needs_command' -a git -d 'Command: execute a git command'
complete -c $PROG -f -n '__fish_pass_uses_command git' -a '(__fish_pass_git_complete)'
--
2.54.0.rc2.1.gf65aba1e87
More information about the Password-Store
mailing list