Package: zsh
Version: 4.3.2-25
Severity: normal

Here is an example of the problem. I am trying to append something to
every element of an array.

$ A=(b c)

Prepending is straightforward, I do a substitution matching the "#"
pattern for matching the start of a string:

$ echo ${A//#/x}                                                        
xb xc
$ echo ${A/#/x} 
xb xc
$ echo ${(S)A/#/x}
xb xc

However, when I use "%" to match the end of a string, it only works
for appending text in the third kind of substitution ("substitute
shortest match").

$ echo ${A//%/x} # BAD
b c
$ echo ${A/%/x} # BAD
b c
$ echo ${(S)A/%/x} # OK
bx cx

This seems to contradict the documentation.

Thank you.

-- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 
'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16-2-686
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages zsh depends on:
ii  debconf [debconf-2.0]       1.5.11       Debian configuration management sy
ii  libc6                       2.3.6.ds1-10 GNU C Library: Shared libraries
ii  libncurses5                 5.5-5        Shared libraries for terminal hand

Versions of packages zsh recommends:
ii  libcap1                       1:1.10-14  support for getting/setting POSIX.
ii  libpcre3                      6.7-1      Perl 5 Compatible Regular Expressi

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to