From a95f2c607113b3edd411499ff25ce79fba8a79de Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Thu, 21 May 2015 10:43:32 +0100 Subject: 35250: Fix case documentation (SH_GLOB) --- Doc/Zsh/grammar.yo | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'Doc/Zsh/grammar.yo') diff --git a/Doc/Zsh/grammar.yo b/Doc/Zsh/grammar.yo index a3f492769..4476fc392 100644 --- a/Doc/Zsh/grammar.yo +++ b/Doc/Zsh/grammar.yo @@ -239,11 +239,17 @@ item(tt(case) var(word) tt(in) [ [tt(LPAR())] var(pattern) [ tt(|) var(pattern) Execute the var(list) associated with the first var(pattern) that matches var(word), if any. The form of the patterns is the same as that used for filename generation. See -noderef(Filename Generation). Note further that the whole -pattern with alternatives is treated by the shell as equivalent -to a group of patterns within parentheses, even though in -the tt(case) syntax whitespace may appear about the parentheses and the -vertical bar. +noderef(Filename Generation). + +Note further that, unless the tt(SH_GLOB) option is set, the whole +pattern with alternatives is treated by the shell as equivalent to a +group of patterns within parentheses, although white space may appear +about the parentheses and the vertical bar and will be stripped from the +pattern at those points. White space may appear elsewhere in the +pattern; this is not stripped. If the tt(SH_GLOB) option is set, so +that an opening parenthesis can be unambiguously treated as part of the +case syntax, the expression is parsed into separate words and these are +treated as strict alternatives (as in other shells). If the var(list) that is executed is terminated with tt(;&) rather than tt(;;), the following list is also executed. The rule for -- cgit 1.4.1