From bfc44a91acdfb968cb3d0d21effc4ea9cbcd09e1 Mon Sep 17 00:00:00 2001 From: erw7 Date: Wed, 29 May 2019 12:06:39 +0900 Subject: vim-patch:8.1.1114: confusing overloaded operator "." for string concatenation Problem: Confusing overloaded operator "." for string concatenation. Solution: Add ".." for string concatenation. Also "let a ..= b". https://github.com/vim/vim/commit/0f248b006c2574abc00c9aa7886d8f33620eb822 --- runtime/doc/eval.txt | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'runtime') diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index f035c754c0..cc97117ffd 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -610,10 +610,10 @@ Expression syntax summary, from least to most significant: expr2 ? expr1 : expr1 if-then-else |expr2| expr3 - expr3 || expr3 .. logical OR + expr3 || expr3 ... logical OR |expr3| expr4 - expr4 && expr4 .. logical AND + expr4 && expr4 ... logical AND |expr4| expr5 expr5 == expr5 equal @@ -634,9 +634,10 @@ Expression syntax summary, from least to most significant: expr5 isnot expr5 different |List| instance |expr5| expr6 - expr6 + expr6 .. number addition or list concatenation - expr6 - expr6 .. number subtraction - expr6 . expr6 .. string concatenation + expr6 + expr6 .. number addition or list concatenation + expr6 - expr6 .. number subtraction + expr6 . expr6 .. string concatenation + expr6 .. expr6 .. string concatenation |expr6| expr7 expr7 * expr7 .. number multiplication @@ -670,7 +671,7 @@ Expression syntax summary, from least to most significant: {args -> expr1} lambda expression -".." indicates that the operations in this level can be concatenated. +"..." indicates that the operations in this level can be concatenated. Example: > &nu || &list && &shell == "csh" @@ -850,10 +851,14 @@ expr5 and expr6 *expr5* *expr6* expr6 + expr6 .. Number addition or |List| concatenation *expr-+* expr6 - expr6 .. Number subtraction *expr--* expr6 . expr6 .. String concatenation *expr-.* +expr6 .. expr6 .. String concatenation *expr-..* For |Lists| only "+" is possible and then both expr6 must be a list. The result is a new list with the two lists Concatenated. +For String concatenation ".." is preferred, since "." is ambiguous, it is also +used for |Dict| member access and floating point numbers. + expr7 * expr7 .. Number multiplication *expr-star* expr7 / expr7 .. Number division *expr-/* expr7 % expr7 .. Number modulo *expr-%* -- cgit