summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-06-24 00:58:07 +0200
committerBram Moolenaar <Bram@vim.org>2019-06-24 00:58:07 +0200
commite7eb92708ec2092a2fc11e78703b5dcf83844412 (patch)
treed00da20838b81404557c7b0ef17d2890f18175ac /runtime
parent0a1f56fcfe31be929e9cd8c3d81a984c960e4180 (diff)
downloadvim-git-e7eb92708ec2092a2fc11e78703b5dcf83844412.tar.gz
patch 8.1.1585: :let-heredoc does not trim enoughv8.1.1585
Problem: :let-heredoc does not trim enough. Solution: Trim indent from the contents based on the indent of the first line. Use let-heredoc in more tests.
Diffstat (limited to 'runtime')
-rw-r--r--runtime/doc/eval.txt25
1 files changed, 18 insertions, 7 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 47ee2612b..1154c4065 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -11565,13 +11565,24 @@ text...
If {marker} is not supplied, then "." is used as the
default marker.
- Any white space characters in the lines of text are
- preserved. If "trim" is specified before {marker},
- then all the leading indentation exactly matching the
- leading indentation before `let` is stripped from the
- input lines and the line containing {marker}. Note
- that the difference between space and tab matters
- here.
+ Without "trim" any white space characters in the lines
+ of text are preserved. If "trim" is specified before
+ {marker}, then indentation is stripped so you can do: >
+ let text =<< trim END
+ if ok
+ echo 'done'
+ endif
+ END
+< Results in: ["if ok", " echo 'done'", "endif"]
+ The marker must line up with "let" and the indentation
+ of the first line is removed from all the text lines.
+ Specifically: all the leading indentation exactly
+ matching the leading indentation of the first
+ non-empty text line is stripped from the input lines.
+ All leading indentation exactly matching the leading
+ indentation before `let` is stripped from the line
+ containing {marker}. Note that the difference between
+ space and tab matters here.
If {var-name} didn't exist yet, it is created.
Cannot be followed by another command, but can be