summaryrefslogtreecommitdiffstats
path: root/Test
diff options
context:
space:
mode:
authorPeter Stephenson <pws@zsh.org>2018-02-12 10:06:45 +0000
committerPeter Stephenson <pws@zsh.org>2018-02-12 10:06:45 +0000
commit47aa60950c488a49dc245659c126e3078bf499d0 (patch)
tree6429d9a55a7e17584fce5186de8a592f9729166b /Test
parent42324: _git: handle mutually exclusive options (diff)
downloadzsh-47aa60950c488a49dc245659c126e3078bf499d0.tar
zsh-47aa60950c488a49dc245659c126e3078bf499d0.tar.gz
zsh-47aa60950c488a49dc245659c126e3078bf499d0.tar.bz2
zsh-47aa60950c488a49dc245659c126e3078bf499d0.tar.lz
zsh-47aa60950c488a49dc245659c126e3078bf499d0.tar.xz
zsh-47aa60950c488a49dc245659c126e3078bf499d0.tar.zst
zsh-47aa60950c488a49dc245659c126e3078bf499d0.zip
42355: Fix use of backslashes on here doc input.
Handling of white space in particular was confusing and inconsistent with other shells.
Diffstat (limited to 'Test')
-rw-r--r--Test/A04redirect.ztst46
1 files changed, 42 insertions, 4 deletions
diff --git a/Test/A04redirect.ztst b/Test/A04redirect.ztst
index b8105cf6d..ef7ddb25a 100644
--- a/Test/A04redirect.ztst
+++ b/Test/A04redirect.ztst
@@ -114,7 +114,7 @@
heretest() {
print First line
cat <<' HERE'
- $foo$foo met celeste 'but with extra' "stuff to test quoting"
+ $foo$foo met celeste 'but with extra' "stuff to test quoting"\
HERE
print Last line
}
@@ -125,19 +125,57 @@
heretest
0:Re-evaluation of function output with here document, quoted
>First line
-> $foo$foo met celeste 'but with extra' "stuff to test quoting"
+> $foo$foo met celeste 'but with extra' "stuff to test quoting"\
>Last line
>First line
-> $foo$foo met celeste 'but with extra' "stuff to test quoting"
+> $foo$foo met celeste 'but with extra' "stuff to test quoting"\
>Last line
>First line
-> $foo$foo met celeste 'but with extra' "stuff to test quoting"
+> $foo$foo met celeste 'but with extra' "stuff to test quoting"\
>Last line
read -r line <<' HERE'
HERE
1:No input, not even newline, from empty here document.
+ heretest() {
+ print First line
+ cat <<-HERE
+ $foo\
+ $foo
+ some\
+ stuff
+ to\
+ test
+ tab\stripping
+ HERE
+ print Last line
+ }
+ heretest
+ eval "$(functions heretest)"
+ heretest
+ eval "$(functions heretest)"
+ heretest
+0:Line continuation in here-document with unquoted delimiter
+>First line
+>bar bar
+>some stuff
+>to test
+>tab\stripping
+>Last line
+>First line
+>bar bar
+>some stuff
+>to test
+>tab\stripping
+>Last line
+>First line
+>bar bar
+>some stuff
+>to test
+>tab\stripping
+>Last line
+
#
# exec tests: perform these in subshells so if they fail the
# shell won't exit.