about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Functions/Misc/zcalc4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 339086f37..b96038cb4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2008-06-13  Peter Stephenson  <pws@csr.com>
 
+	* unposted: Completion/Zsh/Context/_zcalc_line,
+	Functions/Misc/zcalc: handle completion idiosyncracies when
+	completing in the same word as ":!".
+
 	* 25152: Completion/Zsh/Context/{.distfiles,_zcalc_line}
 	(moved from Type because this is where it should be),
 	Doc/Zsh/contrib.yo, Functions/Misc/zcalc: improved zcalc
diff --git a/Functions/Misc/zcalc b/Functions/Misc/zcalc
index 2ec67a67d..40c829900 100644
--- a/Functions/Misc/zcalc
+++ b/Functions/Misc/zcalc
@@ -179,8 +179,8 @@ while vared -cehp "${(%)ZCALCPROMPT}" line; do
   line="${${line##[[:blank:]]#}%%[[:blank:]]#}"
   case "$line" in
     # Escapes begin with a colon
-    (:!*)
-    # shell escape
+    (:(\\|)!*)
+    # shell escape: handle completion's habit of quoting the !
     eval ${line##:\![[:blank:]]#}
     line=
     continue