From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17390 invoked by alias); 27 May 2011 15:06:59 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 29400 Received: (qmail 13671 invoked from network); 27 May 2011 15:06:57 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received-SPF: none (ns1.primenet.com.au: domain at closedmail.com does not designate permitted sender hosts) From: Bart Schaefer Message-id: <110527080643.ZM6124@torch.brasslantern.com> Date: Fri, 27 May 2011 08:06:43 -0700 In-reply-to: Comments: In reply to Mikael Magnusson "Re: Problem with fake-files style and cd" (May 27, 4:24pm) References: <237967ef0902140622s7389d2c8h5a0c786dcf207422@mail.gmail.com> <200902141801.n1EI1E2l003603@pws-pc.ntlworld.com> <237967ef0902141019t30118690m30116c9413015d96@mail.gmail.com> <090214111316.ZM15188@torch.brasslantern.com> <237967ef0902141141y609b61d3i154546f6f6886c65@mail.gmail.com> <090214133904.ZM15383@torch.brasslantern.com> <20090216094632.30502fe9@news01> <237967ef0902160155m583e714fqe9bbd344420f1ce0@mail.gmail.com> <110526214110.ZM518@torch.brasslantern.com> <110526223650.ZM804@torch.brasslantern.com> X-Mailer: OpenZMail Classic (0.9.2 24April2005) To: zsh-workers Subject: Re: Problem with fake-files style and cd MIME-version: 1.0 Content-type: text/plain; charset=us-ascii On May 27, 4:24pm, Mikael Magnusson wrote: } Subject: Re: Problem with fake-files style and cd } } Or is this better? } } item(tt(directories))( } for names of directories DASH()- tt(local-directories) is used instead } when completing arguments of tt(cd) and related builtin commands when } the tt(cdpath) array is set I like that one, but either is fine. } I think it's enough that the entry for local-directories refers the } reader to path-directories. It's heavily implied that path-directories } does nothing when cdpath is empty too. What is the motivation though? zsh-workers/8869 (twelve years ago): This makes _cd use the tags local-directories and path-directories to decide if those in the cwd and/or those in $cdpath should be completed. I.e. you can put in your _sort_tags: *::cd:*) comptry local-directories comptry path-directories ;; to first complete only the directories in $PWD and the ones in $cdpath only if that fails. Obviously this predates a whole lot of mechansim that now exists; e.g., _sort_tags is now the tag-order style. There's a follow-up from me in workers/8878 and then Sven in 8880 (not properly linked in the archive). } Why not just always have just 'directories' and then also look up } path-directories when cdpath is set, otherwise not? Does someone } actually want local directories to complete differently depending on } $cdpath? If you have two directories with the same name, one local and one in a directory in cdpath, you may want that name to appear twice so you know which one you're actually cd'ing into. Otherwise the duplicate would be suppressed when generating the completion listing. Of course (as discussed in 8878 and 8880) it would be silly to use the tags to order the completions differently than the way cdpath is used by cd et al. Hmm, there might be a way with the tags to cause completion to explicitly expand paths (force "$PWD/" in front of the local-directories, for example) to eliminate the ambiguity, but I'm not going to try to figure that out.