From: Peter Stephenson <pws@ibmth.df.unipi.it>
To: zsh-workers@math.gatech.edu
Cc: johsu650@student.liu.se
Subject: Re: Manpage improvement
Date: Mon, 28 Sep 1998 16:00:28 +0200 [thread overview]
Message-ID: <9809281401.AA32041@ibmth.df.unipi.it> (raw)
In-Reply-To: "=?ISO-8859-1?Q?Johan_Sundstr=F6m?="'s message of "Sun, 27 Sep 1998 17:47:48 DFT." <Pine.GSO.4.02.9809271745400.19479-100000@astmatix.ida.liu.se>
> x11amp "${(@f)$(locate Argentina|grep .mp3)}"
>
> I hope this might qualify as an example to spice up future zsh
> manpages.
Here's a change to the manual source which should make this sort of
thing a little clearer. (You only need the (@) flag with array words, not
when splitting a single value into words.)
*** Doc/Zsh/expn.yo.par Thu Jul 9 12:09:43 1998
--- Doc/Zsh/expn.yo Mon Sep 28 15:53:57 1998
***************
*** 301,308 ****
If a tt(${)...tt(}) type parameter expression or a tt($LPAR())...tt(RPAR())
type command
substitution is used in place of var(name) above, it is substituted first
! and the result is used as it were the value of var(name).
If the opening brace is directly followed by an opening parenthesis,
the string up to the matching closing parenthesis will be taken as a
list of flags. Where arguments are valid, any character, or the
--- 301,313 ----
If a tt(${)...tt(}) type parameter expression or a tt($LPAR())...tt(RPAR())
type command
substitution is used in place of var(name) above, it is substituted first
! and the result is used as it were the value of var(name). Thus it is
! possible to perform nested operations: tt(${${foo#head}%tail})
! prints the variables tt($foo) after deleting both the head and tail from
! the value. The form with tt($LPAR())...tt(RPAR()) is often useful in
! combination with the flags described next; see the example below.
+ subsect(Flags)
If the opening brace is directly followed by an opening parenthesis,
the string up to the matching closing parenthesis will be taken as a
list of flags. Where arguments are valid, any character, or the
***************
*** 414,419 ****
--- 419,435 ----
Include the length of the match in the result.
)
enditem()
+ subsect(Example)
+ The flag tt(f) is useful to split a double-quoted substitution line by
+ line. For example,
+
+ nofill(var(cmd) tt("${)tt(LPAR()f)tt(RPAR()$)tt(LPAR()<)var(file)tt(RPAR()}"))
+
+ will substitue the contents of var(file) divided so that one line is
+ supplied per argument to var(cmd). Compare this with the effect of
+ tt($)tt(LPAR()<)var(file)tt(RPAR()) alone, which divides the file
+ up by words, or the same inside double quotes, where the entire
+ contents of the file are passed as a single argument.
texinode(Command Substitution)(Arithmetic Expansion)(Parameter Expansion)(Expansion)
sect(Command Substitution)
cindex(command substitution)
--
Peter Stephenson <pws@ibmth.df.unipi.it> Tel: +39 050 844536
WWW: http://www.ifh.de/~pws/
Gruppo Teorico, Dipartimento di Fisica
Piazza Torricelli 2, 56100 Pisa, Italy
next parent reply other threads:[~1998-09-28 14:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.GSO.4.02.9809271745400.19479-100000@astmatix.ida.liu.se>
1998-09-28 14:00 ` Peter Stephenson [this message]
1998-09-28 16:34 ` Bart Schaefer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9809281401.AA32041@ibmth.df.unipi.it \
--to=pws@ibmth.df.unipi.it \
--cc=johsu650@student.liu.se \
--cc=zsh-workers@math.gatech.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).