* [PATCH] _subversion: Don't cache an empty commands list when svn is not available at the first invocation of _svn.
@ 2017-07-25 14:11 Daniel Shahaf
0 siblings, 0 replies; only message in thread
From: Daniel Shahaf @ 2017-07-25 14:11 UTC (permalink / raw)
To: zsh-workers
---
This affects the following use-case:
% svn <TAB><prints "No matches">^C
% ${PACKAGEMANAGER} install subversion
% svn <TAB>
Before the patch it would cache the "No matches", with the patch it invokes svn
again.
Cheers,
Daniel
Completion/Unix/Command/_subversion | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/Completion/Unix/Command/_subversion b/Completion/Unix/Command/_subversion
index 640c88950..2f6b567ac 100644
--- a/Completion/Unix/Command/_subversion
+++ b/Completion/Unix/Command/_subversion
@@ -36,7 +36,12 @@ _svn () {
_svn_cmds=(
${=${(f)${${"$(_comp_locale; _call_program commands svn help)"#l#*Available subcommands:}%%Subversion is a tool*}}/(#s)[[:space:]]#(#b)([a-z]##)[[:space:]]#(\([a-z, ?]##\))#/$match[1] :$match[1]${match[2]:+:${${match[2]//[(),]}// /:}}:}
)
- _store_cache svn-cmds _svn_cmds
+ if (( $? == 0 )); then
+ _store_cache svn-cmds _svn_cmds
+ else
+ # Ensure we enter this block again on the next <TAB>.
+ unset _svn_cmds
+ fi
fi
fi
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-07-25 14:11 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-25 14:11 [PATCH] _subversion: Don't cache an empty commands list when svn is not available at the first invocation of _svn Daniel Shahaf
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).