summaryrefslogtreecommitdiffstats
path: root/Completion/Base/Core
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2009-03-17 10:03:23 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2009-03-17 10:03:23 +0000
commit1d025a2bb97b24afee8421f475355b6219667858 (patch)
treef73521855ea2c9dbbfd70ba9ab16d676e974d273 /Completion/Base/Core
parentA few more .gitignore improvements. (diff)
downloadzsh-1d025a2bb97b24afee8421f475355b6219667858.tar
zsh-1d025a2bb97b24afee8421f475355b6219667858.tar.gz
zsh-1d025a2bb97b24afee8421f475355b6219667858.tar.bz2
zsh-1d025a2bb97b24afee8421f475355b6219667858.tar.lz
zsh-1d025a2bb97b24afee8421f475355b6219667858.tar.xz
zsh-1d025a2bb97b24afee8421f475355b6219667858.tar.zst
zsh-1d025a2bb97b24afee8421f475355b6219667858.zip
26746: tweak history modifier completion
Diffstat (limited to 'Completion/Base/Core')
-rw-r--r--Completion/Base/Core/_normal4
1 files changed, 3 insertions, 1 deletions
diff --git a/Completion/Base/Core/_normal b/Completion/Base/Core/_normal
index 6bdb8f09b..539b3781f 100644
--- a/Completion/Base/Core/_normal
+++ b/Completion/Base/Core/_normal
@@ -13,7 +13,9 @@ fi
# $PREFIX has a quoted form of the !, so we can't test that
# (it might the start of a real argument), but words has the
# raw McCoy.
-if [[ -o BANG_HIST && $words[CURRENT] = \!*: && -z $compstate[quote] ]]; then
+if [[ -o BANG_HIST &&
+ ( ( $words[CURRENT] = \!*: && -z $compstate[quote] ) ||
+ ( $words[CURRENT] = \"\!*: && $compstate[all_quotes] = \" ) ) ]]; then
# This looks like a real history expansion; in that case
# we'd better put the !'s back the way pfalstad intended.
PREFIX=${PREFIX//\\!/!}