about summary refs log tree commit diff
path: root/Completion/Base
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
parent02710fd70499b9918b5f5a2b0e53e51565ce0a50 (diff)
downloadzsh-1d025a2bb97b24afee8421f475355b6219667858.tar.gz
zsh-1d025a2bb97b24afee8421f475355b6219667858.tar.xz
zsh-1d025a2bb97b24afee8421f475355b6219667858.zip
26746: tweak history modifier completion
Diffstat (limited to 'Completion/Base')
-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//\\!/!}