From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28468 invoked from network); 14 Sep 2000 04:38:32 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 14 Sep 2000 04:38:32 -0000 Received: (qmail 3204 invoked by alias); 14 Sep 2000 04:37:52 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 12800 Received: (qmail 3197 invoked from network); 14 Sep 2000 04:37:51 -0000 Date: Thu, 14 Sep 2000 00:37:51 -0400 Message-Id: <200009140437.AAA02999@soup.ql.org> X-Authentication-Warning: soup.ql.org: ejb set sender to ejb@ql.org using -f From: "E. Jay Berkenbilt" To: zsh-workers@sunsite.auc.dk Subject: zsh 3.1.9-dev-6: trace output filename problem with patch Mime-Version: 1.0 (generated by tm-edit 7.106) Content-Type: text/plain; charset=US-ASCII When inserting the command to look at the trace output from ^X? in an editor, zsh forgets to quote the filename. zsh% \ls^X? Trace output left in /tmp/zsh1708\ls1 (up-history to view) ... ^P emacsclient /tmp/zsh1708\ls1 ;: '\ls' The problem: the \ in the filename needs to be quoted here but isn't. The same things happens if there are other characters that require quoting (such as *) in the first word. When inserting the editor command into the history in _complete_debug, can't zsh quote $tmp? Here is my suggested fix, made from the installed 3.1.9-dev-6/functions directory: --- _complete_debug.safe Wed Sep 13 11:05:24 2000 +++ _complete_debug Thu Sep 14 00:29:57 2000 @@ -18,7 +18,7 @@ unsetopt xtrace [[ -t 3 ]] && { - print -sR "${VISUAL:-${EDITOR:-${PAGER:-more}}} $tmp ;: $w" + print -sR "${VISUAL:-${EDITOR:-${PAGER:-more}}} ${(q)tmp} ;: $w" _message -r "Trace output left in $tmp (up-history to view)" [[ $compstate[nmatches] -le 1 && $compstate[list] != *force* ]] && compstate[list]='list force messages'