patch 8.1.1705: using ~{} for a literal dict is not nice
Problem: Using ~{} for a literal dict is not nice.
Solution: Use #{} instead.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index b100682..8c70b52 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -60,7 +60,7 @@
value. |Dictionary|
Examples:
{'blue': "#0000ff", 'red': "#ff0000"}
- ~{blue: "#0000ff", red: "#ff0000"}
+ #{blue: "#0000ff", red: "#ff0000"}
Funcref A reference to a function |Funcref|.
Example: function("strlen")
@@ -482,11 +482,11 @@
Number will be converted to the String '4'. The empty string can also be used
as a key.
*literal-Dict*
-To avoid having to put quotes around every key the ~{} form can be used. This
+To avoid having to put quotes around every key the #{} form can be used. This
does require the key to consist only of ASCII letters, digits, '-' and '_'.
Example: >
- let mydict = ~{zero: 0, one_key: 1, two-key: 2, 333: 3}
-Note that 333 here is the string "333". Empty keys are not possible here.
+ let mydict = #{zero: 0, one_key: 1, two-key: 2, 333: 3}
+Note that 333 here is the string "333". Empty keys are not possible with #{}.
A value can be any expression. Using a Dictionary for a value creates a
nested Dictionary: >
diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt
index 564bcbe..cbe8310 100644
--- a/runtime/doc/popup.txt
+++ b/runtime/doc/popup.txt
@@ -178,7 +178,7 @@
popup_atcursor({what}, {options}) *popup_atcursor()*
Show the {what} above the cursor, and close it when the cursor
moves. This works like: >
- call popup_create({what}, ~{
+ call popup_create({what}, #{
\ pos: 'botleft',
\ line: 'cursor-1',
\ col: 'cursor',
@@ -191,7 +191,7 @@
Show the {what} above the position from 'ballooneval' and
close it when the mouse moves. This works like: >
let pos = screenpos(v:beval_winnr, v:beval_lnum, v:beval_col)
- call popup_create({what}, ~{
+ call popup_create({what}, #{
\ pos: 'botleft',
\ line: pos.row - 1,
\ col: pos.col,
@@ -240,7 +240,7 @@
popup_dialog({what}, {options}) *popup_dialog()*
Just like |popup_create()| but with these default options: >
- call popup_create({what}, ~{
+ call popup_create({what}, #{
\ pos: 'center',
\ zindex: 200,
\ drag: 1,
@@ -249,7 +249,7 @@
\})
< Use {options} to change the properties. E.g. add a 'filter'
option with value 'popup_filter_yesno'. Example: >
- call popup_create('do you want to quit (Yes/no)?', ~{
+ call popup_create('do you want to quit (Yes/no)?', #{
\ filter: 'popup_filter_yesno',
\ callback: 'QuitCallback',
\ })
@@ -356,7 +356,7 @@
items with cursorkeys, and close it an item is selected with
Space or Enter. {what} should have multiple lines to make this
useful. This works like: >
- call popup_create({what}, ~{
+ call popup_create({what}, #{
\ pos: 'center',
\ zindex: 200,
\ drag: 1,
@@ -391,7 +391,7 @@
popup_notification({what}, {options}) *popup_notification()*
Show the {what} for 3 seconds at the top of the Vim window.
This works like: >
- call popup_create({what}, ~{
+ call popup_create({what}, #{
\ line: 1,
\ col: 10,
\ minwidth: 20,
@@ -732,7 +732,7 @@
endif
endfunc
- call popup_dialog('Continue? y/n', ~{
+ call popup_dialog('Continue? y/n', #{
\ filter: 'popup_filter_yesno',
\ callback: 'MyDialogHandler',
\ })
@@ -740,7 +740,7 @@
*popup_menu-shortcut-example*
Extend popup_filter_menu() with shortcut keys: >
- call popup_menu(['Save', 'Cancel', 'Discard'], ~{
+ call popup_menu(['Save', 'Cancel', 'Discard'], #{
\ filter: 'MyMenuFilter',
\ callback: 'MyMenuHandler',
\ })
@@ -781,7 +781,7 @@
endif
call popup_close(s:winid)
endif
- let s:winid = popup_beval(v:beval_text, ~{mousemoved: 'word'})
+ let s:winid = popup_beval(v:beval_text, #{mousemoved: 'word'})
let s:last_text = v:beval_text
return ''
endfunc
@@ -812,7 +812,7 @@
endfunc
func ShowPopup(id)
- let s:winid = popup_beval(s:balloonText, ~{mousemoved: 'word'})
+ let s:winid = popup_beval(s:balloonText, #{mousemoved: 'word'})
endfunc
<