[Bug 687461] Re: DIR/*<tab> expansion doesn't work with directories with apostrophe in the name

Axel Beckert abe at debian.org
Sat Jan 18 10:23:10 UTC 2014


This only happens with the built-in (and limited) expand-word expansion.
You need to load the compinit completion system and another expansion
module to make it work:

→ zsh -f
kiva6% ls -l a\'b
total 0
-rw-r--r-- 1 abe abe 0 Jan 18 01:44 1
-rw-r--r-- 1 abe abe 0 Jan 18 01:44 2
-rw-r--r-- 1 abe abe 0 Jan 18 01:44 3
kiva6% autoload -Uz compinit
kiva6% compinit
kiva6% zstyle ':completion:*' completer _expand _complete _ignored
kiva6% ls a\'b/*<Tab>
a\'b/1        a\'b/2        a\'b/3
a\'b/*                a\'b/1 a\'b/2 a\'b/3

See also http://www.zsh.org/cgi-bin/mla/redirect?WORKERNUMBER=32278 and
following mails, especially http://www.zsh.org/cgi-
bin/mla/redirect?WORKERNUMBER=32281

Works at least with zsh 5.0.5-1 from Debian Testing.

** Changed in: zsh (Ubuntu)
       Status: Confirmed => Invalid

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to zsh in Ubuntu.
https://bugs.launchpad.net/bugs/687461

Title:
  DIR/*<tab> expansion doesn't work with directories with apostrophe in
  the name

Status in Z Shell - user shell and command interpreter:
  New
Status in “zsh” package in Ubuntu:
  Invalid

Bug description:
  Binary package hint: zsh

  When the directory contains a single quote (apostrophe) in its name,
  pressing the tab key to expand dir/* into a list of files no longer
  works. What happens instead is that the tab key doesn't do anything
  while cursor is inside the dir/* word.

  This worked as expected in previous versions of zsh. In zsh 4.3.10
  (specifically 4.3.10-14ubuntu1, Ubuntu maverick) it works for
  directories without apostrophes in the name. I discovered it while
  trying to choose mp3s to queue in a music player, with the mp3s
  residing in a directory with apostrophe in the name.

  Here is a recipe to repeat the bug:

  $ zsh -f
  mulj% mkdir "a'b"
  mulj% touch "a'b"/{1,2,3}
  mulj% ls a\'b/*                    # press TAB with cursor immediately after the *, nothing happens
  # pressing enter correctly executes the (expanded) command:
  a'b/1  a'b/2  a'b/3
  mulj% mv a\'b ab
  mulj% ls ab/*                      # now pressing TAB with cursor immediately after the * correctly
                                            # expands ab/* to ab/1 ab/2 ab/3
  mulj% ls ab/1 ab/2 ab/3

To manage notifications about this bug go to:
https://bugs.launchpad.net/zsh/+bug/687461/+subscriptions



More information about the foundations-bugs mailing list