1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-08 12:01:21 +02:00

user/19006: document position of RC_EXPAND_PARAM in parameter subst

This commit is contained in:
Peter Stephenson 2014-08-03 20:31:21 +01:00
parent b79ef8caaf
commit ebc27890da
2 changed files with 14 additions and 4 deletions

View file

@ -1,3 +1,8 @@
2014-08-03 Peter Stephenson <p.w.stephenson@ntlworld.com>
* users/19006: Doc/Zsh/expn.yo: document position of
RC_EXPAND_PARAM handling during parameter substitution.
2014-08-01 Peter Stephenson <p.stephenson@samsung.com> 2014-08-01 Peter Stephenson <p.stephenson@samsung.com>
* 32932: Src/glob.c, Src/utils.c: add hmkarray() and * 32932: Src/glob.c, Src/utils.c: add hmkarray() and

View file

@ -1407,16 +1407,21 @@ item(tt(19.) em(Ordering))(
If the result is still an array and one of the `tt((o))' or `tt((O))' flags If the result is still an array and one of the `tt((o))' or `tt((O))' flags
was present, the array is reordered. was present, the array is reordered.
) )
item(tt(20.) em(Re-evaluation))( item(tt(20.) tt(RC_EXPAND_PARAM))(
At this point the decision is made whether any resulting array elements
are to be combined element by element with surrounding text, as given
by either the tt(RC_EXPAND_PARAM) option or the `tt(^)' flag.
)
item(tt(21.) em(Re-evaluation))(
Any `tt((e))' flag is applied to the value, forcing it to be re-examined Any `tt((e))' flag is applied to the value, forcing it to be re-examined
for new parameter substitutions, but also for command and arithmetic for new parameter substitutions, but also for command and arithmetic
substitutions. substitutions.
) )
item(tt(21.) em(Padding))( item(tt(22.) em(Padding))(
Any padding of the value by the `tt(LPAR()l.)var(fill)tt(.RPAR())' or Any padding of the value by the `tt(LPAR()l.)var(fill)tt(.RPAR())' or
`tt(LPAR()r.)var(fill)tt(.RPAR())' flags is applied. `tt(LPAR()r.)var(fill)tt(.RPAR())' flags is applied.
) )
item(tt(22.) em(Semantic joining))( item(tt(23.) em(Semantic joining))(
In contexts where expansion semantics requires a single word to In contexts where expansion semantics requires a single word to
result, all words are rejoined with the first character of tt(IFS) result, all words are rejoined with the first character of tt(IFS)
between. So in `tt(${LPAR()P)tt(RPAR()${LPAR()f)tt(RPAR()lines}})' between. So in `tt(${LPAR()P)tt(RPAR()${LPAR()f)tt(RPAR()lines}})'
@ -1425,7 +1430,7 @@ joined again before the tt(P) flag can be applied.
If a single word is not required, this rule is skipped. If a single word is not required, this rule is skipped.
) )
item(tt(23.) em(Empty argument removal))( item(tt(24.) em(Empty argument removal))(
If the substitution does not appear in double quotes, any resulting If the substitution does not appear in double quotes, any resulting
zero-length argument, whether from a scalar or an element of an array, zero-length argument, whether from a scalar or an element of an array,
is elided from the list of arguments inserted into the command line. is elided from the list of arguments inserted into the command line.