Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Parameter exansion, correction and small patch
- X-seq: zsh-workers 6622
- From: Peter Stephenson <pws@xxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxxxxxx
- Subject: Re: Parameter exansion, correction and small patch
- Date: Mon, 14 Jun 1999 16:46:22 +0200
- In-reply-to: ""Kiddle, Oliver""'s message of "Mon, 14 Jun 1999 13:52:47 DFT." <4FBF540FF16FD1119D9600A0C94B2B51F29E83@xxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
"Kiddle, Oliver" wrote:
> Two questions:
>
> First, how do I take the output of a command in $(...) and use the parameter
> expansion flags to split the output into an array for each line. I'm sure
> I've done this before but can't get it to work anymore. I've tried most
> things I can think of without success. For example:
> echo ${${(f)$(ps)}% *}
> I would expect this to apply the '% *' substitution for each line of the
> output of ps but it does it for all the lines combined.
The key problem is with quoting. We just introduced a tweak so that you
can now do
echo ${${(f)"$(ps)"}% *}
since an unquoted $(ps) does word-splitting on all spaces. The traditional
way of doing this was
echo "${(@)${(@f)$(ps)}% *}"
but that's more cumbersome.
> Second, correction seems to be applied when I declare a function which can
> be annoying. e.g.
> zsh -f
> setopt correct
> les() {
> zsh: correct 'les' to 'els' [nyae]? n
> function>
>
> You might consider this to be a bug but if not, is there any way of
> preventing it?
`correct' isn't all that flexible at the moment. There ought to be a way
of fixing it internally.
--
Peter Stephenson <pws@xxxxxxxxxxxxxxxxx> Tel: +39 050 844536
WWW: http://www.ifh.de/~pws/
Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy
Messages sorted by:
Reverse Date,
Date,
Thread,
Author