From 54fe61ab32435081d9f08510e3fa4375f55fbe81 Mon Sep 17 00:00:00 2001 From: "Barton E. Schaefer" Date: Sat, 25 Apr 2015 11:05:52 -0700 Subject: 34961: unquote history words when command line has a quote --- Completion/Base/Completer/_history | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'Completion') diff --git a/Completion/Base/Completer/_history b/Completion/Base/Completer/_history index 63878ac1c..cd69ca17b 100644 --- a/Completion/Base/Completer/_history +++ b/Completion/Base/Completer/_history @@ -51,9 +51,14 @@ ISUFFIX= # We skip the first element of historywords so the current word doesn't # interfere with the completion +local -a hslice while [[ $compstate[nmatches] -eq 0 && beg -lt max ]]; do + if [[ -n $compstate[quote] ]] + then hslice=( ${(Q)historywords[beg,beg+slice]} ) + else hslice=( ${historywords[beg,beg+slice]} ) + fi _wanted "$opt" history-words expl 'history word' \ - compadd -Q -a 'historywords[beg,beg+slice]' + compadd -Q -a hslice (( beg+=slice )) done -- cgit 1.4.1