diff options
author | Bart Schaefer <schaefer@zsh.org> | 2023-07-26 20:15:21 -0700 |
---|---|---|
committer | Bart Schaefer <schaefer@zsh.org> | 2023-07-26 20:15:21 -0700 |
commit | baa19d2a85758d6b6bcbcd8b78f065a3be262fb3 (patch) | |
tree | c761737950b1b241b52345e6267dc25faad2bebf /Doc/Zsh/expn.yo | |
parent | 5ff23c2c6db430398b0421c61fea11e8202c281a (diff) | |
download | zsh-baa19d2a85758d6b6bcbcd8b78f065a3be262fb3.tar.gz zsh-baa19d2a85758d6b6bcbcd8b78f065a3be262fb3.tar.xz zsh-baa19d2a85758d6b6bcbcd8b78f065a3be262fb3.zip |
51945: assorted documentation improvements, bug fixes, and new test
1) Document the behavior of "typeset -n existing_var" (via Jun T. comment) 2) Prohibit "typeset -nm pattern" because, well, it's insane. Add test. 3) Improve doc for ${(!)ref} including ${{t!)ref} (Jun T.) 4) Fix doc for how-to unset of a named ref (Jun T.) 5) Allow "typeset +r -n ref" and "typeset +r +n ref" (Jun T.) 6) Fix "typeset -r -n ref=param" to create readonly references 7) Avoid accidental removal of PM_UNSET flag (Jun T.) and update test 8) Fix "typeset -gn ref=value" and add a test for it 9) Add tests for read-only reference behavior 10) Fix infinite recursion when resolving scope of an unset local named reference, add test.
Diffstat (limited to 'Doc/Zsh/expn.yo')
-rw-r--r-- | Doc/Zsh/expn.yo | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Doc/Zsh/expn.yo b/Doc/Zsh/expn.yo index 7bc736470..f87832e75 100644 --- a/Doc/Zsh/expn.yo +++ b/Doc/Zsh/expn.yo @@ -987,6 +987,11 @@ means the same thing as the more readable `(tt(%%qqq))'. The following flags are supported: startitem() +item(tt(!))( +When the parameter being expanded is a named reference, the reference +itself is examined and thus is em(not) resolved to its referent. In +ksh emulation, the parens around this flag are optional. +) item(tt(#))( Evaluate the resulting words as numeric expressions and interpret these as character codes. Output the corresponding characters. Note @@ -1245,7 +1250,8 @@ item(tt(hideval))( for parameters with the `hideval' flag (tt(-H)) ) item(tt(nameref))( -for named references having an empty value (tt(-n)) +for named references (tt(typeset -n)) either having an empty value or +when combined with `tt(!)' as in `tt(${LPAR()!t)tt(RPAR()var(rname)})' ) item(tt(special))( for special parameters defined by the shell |