From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 278 invoked from network); 17 May 2000 09:46:30 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 17 May 2000 09:46:30 -0000 Received: (qmail 17718 invoked by alias); 17 May 2000 09:46:22 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 11433 Received: (qmail 17710 invoked from network); 17 May 2000 09:46:18 -0000 From: "Bart Schaefer" Message-Id: <1000517094606.ZM11120@candle.brasslantern.com> Date: Wed, 17 May 2000 09:46:06 +0000 X-Mailer: Z-Mail (5.0.0 30July97) To: zsh-workers@sunsite.auc.dk Subject: Why does ^X? behave differently than TAB? MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii This situation is a little baroque; I'm not sure I can give a simple case that reproduces it. I have a script that uses a `select' loop, and I want completion at the prompt. So I did this inside the script: local curcontext=scriptname::: zstyle ':completion:scriptname:*' insert-tab no zstyle ':completion:scriptname:*' completer _script_completer _script_completer() { compcall -T -D } The reason for the compcall is that this is an old script that uses a trick with compctl -T to force 3.0.x to complete something other than commands at the select prompt: l=(list of things to complete) compctl -Tx 'p[1,-1]' -f - 'W[0,*]' -k l ${${ZSH_VERSION##3.0*}:+-tn} I.e., complete from $l in the first word, otherwise complete file names. This all works fine as long as I never press anything but TAB for completion; it even starts up menu-selection properly based on my other styles, etc. However, if at any point after the first TAB, I press ^X? (_complete_debug) instead, I get command completion (which usually means a menu-select with 2198 choices, but sometimes it just asks if I really want to see all 2198 possibilities). I would just write this off as a new/old completion incompatibility if not for the fact that it differs depending on the widget used to activate the completion. And if I replace the `compcall' with `compadd $l' then it works (except for not completing files) with any combination of TAB and ^X?. -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com