diff runtime/doc/vim9.txt @ 19481:c27837cbe922 v8.2.0298

patch 8.2.0298: Vim9 script: cannot start command with a string constant Commit: https://github.com/vim/vim/commit/0c6ceaf90389b41545d803458c4813013811c756 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Feb 22 18:36:32 2020 +0100 patch 8.2.0298: Vim9 script: cannot start command with a string constant Problem: Vim9 script: cannot start command with a string constant. Solution: Recognize expression starting with '('.
author Bram Moolenaar <Bram@vim.org>
date Sat, 22 Feb 2020 18:45:04 +0100
parents b09afbebffee
children a7a24d06d7ce
line wrap: on
line diff
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -131,21 +131,23 @@ Functions can be called without `:call`:
 Using `:call` is still possible, but this is discouraged.
 
 A method call without `eval` is possible, so long as the start is an
-identifier or can't be an Ex command.  It does not work for string constants: >
+identifier or can't be an Ex command.  It does NOT work for string constants: >
 	myList->add(123)		" works
 	g:myList->add(123)		" works
 	[1, 2, 3]->Process()		" works
 	#{a: 1, b: 2}->Process()	" works
 	{'a': 1, 'b': 2}->Process()	" works
 	"foobar"->Process()		" does NOT work
-	eval "foobar"->Process()	" works
+	("foobar")->Process()		" works
+	'foobar'->Process()		" does NOT work
+	('foobar')->Process()		" works
 
 In case there is ambiguity between a function name and an Ex command, use ":"
 to make clear you want to use the Ex command.  For example, there is both the
 `:substitute` command and the `substitute()` function.  When the line starts
 with `substitute(` this will use the function, prepend a colon to use the
 command instead: >
-	:substitute(pattern(replacement(
+	:substitute(pattern (replacement (
 
 
 No curly braces expansion ~