summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--runtime/doc/builtin.txt57
-rw-r--r--runtime/doc/editing.txt8
-rw-r--r--runtime/doc/eval.txt12
-rw-r--r--runtime/doc/options.txt10
-rw-r--r--runtime/doc/os_win32.txt10
-rw-r--r--runtime/doc/remote.txt6
-rw-r--r--runtime/doc/tags6
-rw-r--r--runtime/doc/todo.txt9
-rw-r--r--runtime/doc/usr_41.txt2
-rw-r--r--runtime/doc/vim-ja.UTF-8.12
-rw-r--r--runtime/doc/vim9.txt67
-rw-r--r--runtime/filetype.vim2
-rw-r--r--runtime/lang/menu_ja_jp.euc-jp.vim12
-rw-r--r--runtime/lang/menu_ja_jp.utf-8.vim12
-rw-r--r--runtime/lang/menu_japanese_japan.932.vim12
-rw-r--r--runtime/syntax/structurizr.vim9
-rw-r--r--src/po/de.po2
-rw-r--r--src/po/en_GB.po3
-rw-r--r--src/po/es.po2
-rw-r--r--src/po/fi.po2
-rw-r--r--src/po/it.po1
-rw-r--r--src/po/ja.euc-jp.po130
-rw-r--r--src/po/ja.po130
-rw-r--r--src/po/ja.sjis.po130
-rw-r--r--src/po/sk.cp1250.po24
-rw-r--r--src/po/sk.po24
-rw-r--r--src/po/sr.po2
-rw-r--r--src/po/zh_CN.po20
28 files changed, 379 insertions, 327 deletions
diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt
index 299bcba634..e7707ca0d5 100644
--- a/runtime/doc/builtin.txt
+++ b/runtime/doc/builtin.txt
@@ -1,4 +1,4 @@
-*builtin.txt* For Vim version 8.2. Last change: 2022 Feb 08
+*builtin.txt* For Vim version 8.2. Last change: 2022 Feb 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2082,9 +2082,12 @@ exists({expr}) The result is a Number, which is |TRUE| if {expr} is defined,
dict.key |internal-variables|). Also works
list[i] for |curly-braces-names|, |Dictionary|
import.Func entries, |List| items, imported
- items,etc.
+ items, etc.
Does not work for local variables in a
compiled `:def` function.
+ Also works for a function in |Vim9|
+ script, since it can be used as a
+ function reference.
Beware that evaluating an index may
cause an error message for an invalid
expression. E.g.: >
@@ -2137,7 +2140,8 @@ exists({expr}) The result is a Number, which is |TRUE| if {expr} is defined,
exists("&shortname")
exists("$HOSTNAME")
exists("*strftime")
- exists("*s:MyFunc")
+ exists("*s:MyFunc") " only for legacy script
+ exists("*MyFunc")
exists("bufcount")
exists(":Make")
exists("#CursorHold")
@@ -4999,12 +5003,12 @@ listener_add({callback} [, {buf}]) *listener_add()*
Returns a unique ID that can be passed to |listener_remove()|.
The {callback} is invoked with five arguments:
- a:bufnr the buffer that was changed
- a:start first changed line number
- a:end first line number below the change
- a:added number of lines added, negative if lines were
+ bufnr the buffer that was changed
+ start first changed line number
+ end first line number below the change
+ added number of lines added, negative if lines were
deleted
- a:changes a List of items with details about the changes
+ changes a List of items with details about the changes
Example: >
func Listener(bufnr, start, end, added, changes)
@@ -5012,7 +5016,7 @@ listener_add({callback} [, {buf}]) *listener_add()*
endfunc
call listener_add('Listener', bufnr)
-< The List cannot be changed. Each item in a:changes is a
+< The List cannot be changed. Each item in "changes" is a
dictionary with these entries:
lnum the first line number of the change
end the first line below the change
@@ -5139,7 +5143,7 @@ luaeval({expr} [, {expr}]) *luaeval()*
map({expr1}, {expr2}) *map()*
{expr1} must be a |List|, |String|, |Blob| or |Dictionary|.
- When {expr1} is a |List|| or |Dictionary|, replace each
+ When {expr1} is a |List| or |Dictionary|, replace each
item in {expr1} with the result of evaluating {expr2}.
For a |Blob| each byte is replaced.
For a |String|, each character, including composing
@@ -6617,16 +6621,22 @@ reltimestr({time}) *reltimestr()*
*remote_expr()* *E449*
remote_expr({server}, {string} [, {idvar} [, {timeout}]])
- Send the {string} to {server}. The string is sent as an
- expression and the result is returned after evaluation.
- The result must be a String or a |List|. A |List| is turned
- into a String by joining the items with a line break in
- between (not at the end), like with join(expr, "\n").
+ Send the {string} to {server}. The {server} argument is a
+ string, also see |{server}|.
+
+ The string is sent as an expression and the result is returned
+ after evaluation. The result must be a String or a |List|. A
+ |List| is turned into a String by joining the items with a
+ line break in between (not at the end), like with join(expr,
+ "\n").
+
If {idvar} is present and not empty, it is taken as the name
of a variable and a {serverid} for later use with
|remote_read()| is stored there.
+
If {timeout} is given the read times out after this many
seconds. Otherwise a timeout of 600 seconds is used.
+
See also |clientserver| |RemoteReply|.
This function is not available in the |sandbox|.
{only available when compiled with the |+clientserver| feature}
@@ -6647,7 +6657,7 @@ remote_expr({server}, {string} [, {idvar} [, {timeout}]])
remote_foreground({server}) *remote_foreground()*
Move the Vim server with the name {server} to the foreground.
- The {server} argument is a string.
+ The {server} argument is a string, also see |{server}|.
This works like: >
remote_expr({server}, "foreground()")
< Except that on Win32 systems the client does the work, to work
@@ -6696,12 +6706,17 @@ remote_read({serverid}, [{timeout}]) *remote_read()*
<
*remote_send()* *E241*
remote_send({server}, {string} [, {idvar}])
- Send the {string} to {server}. The string is sent as input
- keys and the function returns immediately. At the Vim server
- the keys are not mapped |:map|.
+ Send the {string} to {server}. The {server} argument is a
+ string, also see |{server}|.
+
+ The string is sent as input keys and the function returns
+ immediately. At the Vim server the keys are not mapped
+ |:map|.
+
If {idvar} is present, it is taken as the name of a variable
and a {serverid} for later use with remote_read() is stored
there.
+
See also |clientserver| |RemoteReply|.
This function is not available in the |sandbox|.
{only available when compiled with the |+clientserver| feature}
@@ -6916,6 +6931,8 @@ screenpos({winid}, {lnum}, {col}) *screenpos()*
as if 'conceallevel' is zero. You can set the cursor to the
right position and use |screencol()| to get the value with
|conceal| taken into account.
+ If the position is in a closed fold the screen position of the
+ first character is returned, {col} is not used.
Can also be used as a |method|: >
GetWinid()->screenpos(lnum, col)
@@ -7897,7 +7914,7 @@ sha256({string}) *sha256()*
shellescape({string} [, {special}]) *shellescape()*
Escape {string} for use as a shell command argument.
When the 'shell' contains powershell (MS-Windows) or pwsh
- (MS-Windows, Linux, and MacOS) then it will enclose {string}
+ (MS-Windows, Linux, and macOS) then it will enclose {string}
in single quotes and will double up all internal single
quotes.
On MS-Windows, when 'shellslash' is not set, it will enclose
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index 5c4b61a3ef..0d11facca4 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt* For Vim version 8.2. Last change: 2022 Feb 04
+*editing.txt* For Vim version 8.2. Last change: 2022 Feb 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -222,7 +222,7 @@ If you want to keep the changed buffer without saving it, switch on the
Edit {file} always. Discard any changes to the
current buffer.
Also see |++opt| and |+cmd|.
-
+ *:edit_#* *:e#*
:e[dit] [++opt] [+cmd] #[count]
Edit the [count]th buffer (as shown by |:files|).
This command does the same as [count] CTRL-^. But ":e
@@ -389,7 +389,7 @@ as a wildcard when "[" is in the 'isfname' option. A simple way to avoid this
is to use "path\[[]abc]", this matches the file "path\[abc]".
*starstar-wildcard*
-Expanding "**" is possible on Unix, Win32, Mac OS/X and a few other systems.
+Expanding "**" is possible on Unix, Win32, macOS and a few other systems.
This allows searching a directory tree. This goes up to 100 directories deep.
Note there are some commands where this works slightly differently, see
|file-searching|.
@@ -1695,7 +1695,7 @@ which version of the file you want to keep.
The accuracy of the time check depends on the filesystem. On Unix it is
usually sub-second. With old file sytems and on MS-Windows it is normally one
-second. Use has('nanotime') check if sub-second time stamp checks are
+second. Use `has('nanotime')` to check if sub-second time stamp checks are
available.
There is one situation where you get the message while there is nothing wrong:
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index f016c4ab89..f349dd2781 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 8.2. Last change: 2022 Feb 04
+*eval.txt* For Vim version 8.2. Last change: 2022 Feb 20
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1371,7 +1371,7 @@ And NOT: >
-(1.234->string())
What comes after "->" can be a name, a simple expression (not containing any
-parenthesis), or any expression in parenthesis: >
+parenthesis), or any expression in parentheses: >
base->name(args)
base->some.name(args)
base->alist[idx](args)
@@ -2182,7 +2182,8 @@ v:lnum Line number for the 'foldexpr' |fold-expr|, 'formatexpr' and
*v:maxcol* *maxcol-variable*
v:maxcol Maximum line length. Depending on where it is used it can be
- screen columns, characters or bytes.
+ screen columns, characters or bytes. The value currently is
+ 2147483647 on all systems.
*v:mouse_win* *mouse_win-variable*
v:mouse_win Window number for a mouse click obtained with |getchar()|.
@@ -3001,8 +3002,9 @@ Also note that if you have two script files, and one calls a function in the
other and vice versa, before the used function is defined, it won't work.
Avoid using the autoload functionality at the toplevel.
-In |Vim9| script you will get error *E1263* if you use a function name with a
-"#" character when not in an autoload script.
+In |Vim9| script you will get error *E1263* if you define a function with
+a "#" character in the name. You should use a name without "#" and use
+`:export`.
Hint: If you distribute a bunch of scripts you can pack them together with the
|vimball| utility. Also read the user manual |distribute-script|.
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 8fcbc99c40..3f77562032 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 8.2. Last change: 2022 Feb 08
+*options.txt* For Vim version 8.2. Last change: 2022 Feb 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -4038,7 +4038,7 @@ A jump table for the options with a short description can be found at |Q_op|.
'guitablabel' 'gtl' string (default empty)
global
{only available when compiled with GUI enabled}
- When nonempty describes the text to use in a label of the GUI tab
+ When non-empty describes the text to use in a label of the GUI tab
pages line. When empty and when the result is empty Vim will use a
default label. See |setting-guitablabel| for more info.
@@ -4056,7 +4056,7 @@ A jump table for the options with a short description can be found at |Q_op|.
'guitabtooltip' 'gtt' string (default empty)
global
{only available when compiled with GUI enabled}
- When nonempty describes the text to use in a tooltip for the GUI tab
+ When non-empty describes the text to use in a tooltip for the GUI tab
pages line. When empty Vim will use a default tooltip.
This option is otherwise just like 'guitablabel' above.
You can include a line break. Simplest method is to use |:let|: >
@@ -7459,7 +7459,7 @@ A jump table for the options with a short description can be found at |Q_op|.
global or local to window |global-local|
{not available when compiled without the |+statusline|
feature}
- When nonempty, this option determines the content of the status line.
+ When non-empty, this option determines the content of the status line.
Also see |status-line|.
The option consists of printf style '%' items interspersed with
@@ -7767,7 +7767,7 @@ A jump table for the options with a short description can be found at |Q_op|.
*'tabline'* *'tal'*
'tabline' 'tal' string (default empty)
global
- When nonempty, this option determines the content of the tab pages
+ When non-empty, this option determines the content of the tab pages
line at the top of the Vim window. When empty Vim will use a default
tab pages line. See |setting-tabline| for more info.
diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt
index 1799fafffc..6fe56c09ef 100644
--- a/runtime/doc/os_win32.txt
+++ b/runtime/doc/os_win32.txt
@@ -1,4 +1,4 @@
-*os_win32.txt* For Vim version 8.2. Last change: 2021 Apr 05
+*os_win32.txt* For Vim version 8.2. Last change: 2022 Feb 14
VIM REFERENCE MANUAL by George Reilly
@@ -294,7 +294,7 @@ A. When using :! to run an external command, you can run it with "start". For
/b no console window will be opened
You can use only one of these flags at a time. A second one will be
treated as the start of the command.
-
+ *windows-asynchronously*
Q. How do I avoid getting a window for programs that I run asynchronously?
A. You have two possible solutions depending on what you want:
1) You may use the /min flag in order to run program in a minimized state
@@ -308,17 +308,17 @@ A. You have two possible solutions depending on what you want:
Example for a console application, run Exuberant ctags: >
:!start /min ctags -R .
-< When it has finished you should see file named "tags" in your current
+< When it has finished you should see file named "tags" in your current
directory. You should notice the window title blinking on your taskbar.
This is more noticeable for commands that take longer.
Now delete the "tags" file and run this command: >
:!start /b ctags -R .
-< You should have the same "tags" file, but this time there will be no
+< You should have the same "tags" file, but this time there will be no
blinking on the taskbar.
Example for a GUI application: >
:!start /min notepad
:!start /b notepad
-< The first command runs notepad minimized and the second one runs it
+< The first command runs notepad minimized and the second one runs it
normally.
*windows-icon*
diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt
index 83fc193d1f..92e759f297 100644
--- a/runtime/doc/remote.txt
+++ b/runtime/doc/remote.txt
@@ -1,4 +1,4 @@
-*remote.txt* For Vim version 8.2. Last change: 2021 Dec 27
+*remote.txt* For Vim version 8.2. Last change: 2022 Feb 17
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -120,6 +120,10 @@ when sending command to it.
The --serverlist argument will cause Vim to print a list of registered command
servers on the standard output (stdout) and exit.
+ *{server}*
+The {server} argument is used by several functions. When this is an empty
+string then on Unix the default server name is used, which is "GVIM". On
+MS-Windows an empty string does not work.
Win32 Note: Making the Vim server go to the foreground doesn't always work,
because MS-Windows doesn't allow it. The client will move the server to the
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 4d80e60774..04c059ce93 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2415,6 +2415,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
:dsp tagsrch.txt /*:dsp*
:dsplit tagsrch.txt /*:dsplit*
:e editing.txt /*:e*
+:e# editing.txt /*:e#*
:ea undo.txt /*:ea*
:earlier undo.txt /*:earlier*
:ec eval.txt /*:ec*
@@ -2432,6 +2433,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
:edit editing.txt /*:edit*
:edit! editing.txt /*:edit!*
:edit!_f editing.txt /*:edit!_f*
+:edit_# editing.txt /*:edit_#*
:edit_f editing.txt /*:edit_f*
:el eval.txt /*:el*
:else eval.txt /*:else*
@@ -4032,6 +4034,7 @@ E1075 vim9.txt /*E1075*
E1076 eval.txt /*E1076*
E1077 vim9.txt /*E1077*
E108 eval.txt /*E108*
+E1080 vim9.txt /*E1080*
E1081 eval.txt /*E1081*
E1083 editing.txt /*E1083*
E1084 eval.txt /*E1084*
@@ -10529,6 +10532,7 @@ vim9-namespace vim9.txt /*vim9-namespace*
vim9-no-dict-function vim9.txt /*vim9-no-dict-function*
vim9-rationale vim9.txt /*vim9-rationale*
vim9-reload vim9.txt /*vim9-reload*
+vim9-s-namespace vim9.txt /*vim9-s-namespace*
vim9-scopes vim9.txt /*vim9-scopes*
vim9-script-intro usr_46.txt /*vim9-script-intro*
vim9-types vim9.txt /*vim9-types*
@@ -10686,6 +10690,7 @@ windowid windows.txt /*windowid*
windowid-variable eval.txt /*windowid-variable*
windows windows.txt /*windows*
windows-3.1 os_win32.txt /*windows-3.1*
+windows-asynchronously os_win32.txt /*windows-asynchronously*
windows-icon os_win32.txt /*windows-icon*
windows-intro windows.txt /*windows-intro*
windows-starting windows.txt /*windows-starting*
@@ -10859,6 +10864,7 @@ zz scroll.txt /*zz*
{offset} pattern.txt /*{offset}*
{register} change.txt /*{register}*
{rhs} map.txt /*{rhs}*
+{server} remote.txt /*{server}*
{subject} helphelp.txt /*{subject}*
{} intro.txt /*{}*
} motion.txt /*}*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index bd0c07ccee..29c64af3d6 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 8.2. Last change: 2022 Feb 11
+*todo.txt* For Vim version 8.2. Last change: 2022 Feb 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -38,13 +38,9 @@ browser use: https://github.com/vim/vim/issues/1234
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Disallow using "s:" in Vim9 script at the script level.
-Disallow a legacy function creating an s: variable in Vim9 script.
-
Once Vim9 is stable:
- Use Vim9 for runtime files.
- Check code coverage, add more tests if needed.
- vim9compile.c
vim9execute.c
vim9expr.c
vim9instr.c
@@ -421,9 +417,6 @@ When editing a file with ":edit" the output of :swapname is relative, while
editing it with "vim file" it is absolute. (#355)
Which one should it be?
-:map output does not clear the reset of the command line.
-(#5623, also see #5962)
-
Problem with auto-formatting - inserting space and putting cursor before added
character. (#6154)
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 435002bfc3..eb269e16cb 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -162,7 +162,7 @@ and avoid errors. Such as thinking that the "-0o36" above makes the number
negative, while it is actually seen as a subtraction.
To actually have the minus sign be used for negation, you can put the second
-expression in parenthesis: >
+expression in parentheses: >
echo -0x7f (-0o36)
diff --git a/runtime/doc/vim-ja.UTF-8.1 b/runtime/doc/vim-ja.UTF-8.1
index 8751391677..e18211eae7 100644
--- a/runtime/doc/vim-ja.UTF-8.1
+++ b/runtime/doc/vim-ja.UTF-8.1
@@ -1,4 +1,4 @@
-.TH VIM 1 "2006 Apr 11"
+.TH VIM 1 "2021 Jun 13"
.SH 名前
vim \- Vi IMproved, プログラマのテキストエディタ
.SH 書式
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt
index edd61d9689..987495a326 100644
--- a/runtime/doc/vim9.txt
+++ b/runtime/doc/vim9.txt
@@ -1,4 +1,4 @@
-*vim9.txt* For Vim version 8.2. Last change: 2022 Feb 11
+*vim9.txt* For Vim version 8.2. Last change: 2022 Feb 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -282,13 +282,14 @@ If you do want to keep items, use: >
vim9script noclear
You want to use this in scripts that use a `finish` command to bail out at
-some point when loaded again. E.g. when a buffer local option is set: >
+some point when loaded again. E.g. when a buffer local option is set to a
+function, the function does not need to be defined more than once: >
vim9script noclear
setlocal completefunc=SomeFunc
- if exists('*g:SomeFunc')
+ if exists('*SomeFunc')
finish
endif
- def g:SomeFunc()
+ def SomeFunc()
....
@@ -422,7 +423,7 @@ similar to how a function argument can be ignored: >
[a, _, c] = theList
To ignore any remaining items: >
[a, b; _] = longList
-< *E1163*
+< *E1163* *E1080*
Declaring more than one variable at a time, using the unpack notation, is
possible. Each variable can have a type or infer it from the value: >
var [v1: number, v2] = GetValues()
@@ -837,6 +838,7 @@ Instead of `:k` you can use `:mark`.
Comparators ~
The 'ignorecase' option is not used for comparators that use strings.
+Thus "=~" works like "=~#".
Abort after error ~
@@ -1430,32 +1432,61 @@ In legacy Vim script, where a number was expected, a string would be
automatically converted to a number. This was convenient for an actual number
such as "123", but leads to unexpected problems (and no error message) if the
string doesn't start with a number. Quite often this leads to hard-to-find
-bugs.
+bugs. e.g.: >
+ echo 123 == '123'
+< 1 ~
+With an accidental space: >
+ echo 123 == ' 123'
+< 0 ~
*E1206* *E1210* *E1212*
In Vim9 script this has been made stricter. In most places it works just as
-before, if the value used matches the expected type. There will sometimes be
+before if the value used matches the expected type. There will sometimes be
an error, thus breaking backwards compatibility. For example:
- Using a number other than 0 or 1 where a boolean is expected. *E1023*
- Using a string value when setting a number option.
- Using a number where a string is expected. *E1024* *E1105*
One consequence is that the item type of a list or dict given to |map()| must
-not change. This will give an error in Vim9 script: >
- echo map([1, 2, 3], (i, v) => 'item ' .. i)
- E1012: Type mismatch; expected number but got string
-Instead use |mapnew()|: >
- echo mapnew([1, 2, 3], (i, v) => 'item ' .. i)
- ['item 0', 'item 1', 'item 2']
-
-If the item type was determined to be "any" it can change to a more specific
-type. E.g. when a list of mixed types gets changed to a list of strings: >
+not change, if the type was declared. This will give an error in Vim9
+script: >
+ var mylist: list<number> = [1, 2, 3]
+ echo map(mylist, (i, v) => 'item ' .. i)
+< E1012: Type mismatch; expected number but got string in map() ~
+
+Instead use |mapnew()|, it creates a new list: >
+ var mylist: list<number> = [1, 2, 3]
+ echo mapnew(mylist, (i, v) => 'item ' .. i)
+< ['item 0', 'item 1', 'item 2'] ~
+
+If the item type was not declared or determined to be "any" it can change to a
+more specific type. E.g. when a list of mixed types gets changed to a list of
+strings: >
var mylist = [1, 2.0, '3']
# typename(mylist) == "list<any>"
map(mylist, (i, v) => 'item ' .. i)
# typename(mylist) == "list<string>", no error
-< *E1158*
+
+There is a subtle difference between using a list constant directly and
+through a variable declaraiton. Because of type inference, when using a list
+constant to initialize a variable, this also sets the declared type: >
+ var mylist = [1, 2, 3]
+ # typename(mylist) == "list<number>"
+ echo map(mylist, (i, v) => 'item ' .. i) # Error!
+
+When using the list constant directly, the type is not declared and is allowed
+to change: >
+ echo map([1, 2, 3], (i, v) => 'item ' .. i) # OK
+
+The reasoning behind this is that when a type is declared and the list is
+passed around and changed, the declaration must always hold. So that you can
+rely on the type to match the declared type. For a constant this is not
+needed.
+
+ *E1158*
Same for |extend()|, use |extendnew()| instead, and for |flatten()|, use
-|flattennew()| instead.
+|flattennew()| instead. Since |flatten()| is intended to always change the
+type, it can not be used in Vim9 script.
+
*E1211* *E1217* *E1218* *E1219* *E1220* *E1221*
*E1222* *E1223* *E1224* *E1225* *E1226* *E1227*
*E1228* *E1238* *E1250* *E1251* *E1252* *E1253*
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index df076d1695..3b7f92dfff 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2022 Jan 31
+" Last Change: 2022 Feb 13
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
diff --git a/runtime/lang/menu_ja_jp.euc-jp.vim b/runtime/lang/menu_ja_jp.euc-jp.vim
index 3df1b2567d..21138f142e 100644
--- a/runtime/lang/menu_ja_jp.euc-jp.vim
+++ b/runtime/lang/menu_ja_jp.euc-jp.vim
@@ -2,13 +2,14 @@
"
" Menu Translations: Japanese (EUC-JP)
" Last Translator: MURAOKA Taro <koron.kaoriya@gmail.com>
-" Last Change: 18-Jul-2018.
-" Generated from menu_ja_jp.utf-8.vim, DO NOT EDIT
+" Last Change: 20-Feb-2022.
"
-" Copyright (C) 2001-2018 MURAOKA Taro <koron.kaoriya@gmail.com>,
+" Copyright (C) 2001-2022 MURAOKA Taro <koron.kaoriya@gmail.com>,
" vim-jp <http://vim-jp.org/>
"
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
+"
+" Generated from menu_ja_jp.utf-8.vim, DO NOT EDIT
" Quit when menu translations have already been done.
if exists("did_menu_trans")
@@ -24,7 +25,7 @@ scriptencoding euc-jp
menutrans &Help إ(&H)
menutrans &Overview<Tab><F1> ά(&O)<Tab><F1>
menutrans &User\ Manual 桼ޥ˥奢(&U)
-menutrans &How-to\ links &How-to
+menutrans &How-To\ links &How-to
menutrans &Credits 쥸å(&C)
menutrans Co&pying (&P)
menutrans &Sponsor/Register ݥ󥵡/Ͽ(&S)
@@ -271,10 +272,9 @@ if has("toolbar")
tmenu ToolBar.Cut åץܡɤڤ
tmenu ToolBar.Copy åץܡɤإԡ
tmenu ToolBar.Paste åץܡɤŽդ
- tmenu ToolBar.Find ...
+ tmenu ToolBar.Replace / ִ...
tmenu ToolBar.FindNext 򸡺
tmenu ToolBar.FindPrev 򸡺
- tmenu ToolBar.Replace ִ...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New ɥ
tmenu ToolBar.WinSplit ɥʬ
diff --git a/runtime/lang/menu_ja_jp.utf-8.vim b/runtime/lang/menu_ja_jp.utf-8.vim
index 1f3c429a1b..b3a8d645ea 100644
--- a/runtime/lang/menu_ja_jp.utf-8.vim
+++ b/runtime/lang/menu_ja_jp.utf-8.vim
@@ -2,13 +2,14 @@
"
" Menu Translations: Japanese (UTF-8)
" Last Translator: MURAOKA Taro <koron.kaoriya@gmail.com>
-" Last Change: 18-Jul-2018.
-" Original translations
+" Last Change: 20-Feb-2022.
"
-" Copyright (C) 2001-2018 MURAOKA Taro <koron.kaoriya@gmail.com>,
+" Copyright (C) 2001-2022 MURAOKA Taro <koron.kaoriya@gmail.com>,
" vim-jp <http://vim-jp.org/>
"
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
+"
+" Original translations
" Quit when menu translations have already been done.
if exists("did_menu_trans")
@@ -24,7 +25,7 @@ scriptencoding utf-8
menutrans &Help ヘルプ(&H)
menutrans &Overview<Tab><F1> 概略(&O)<Tab><F1>
menutrans &User\ Manual ユーザーマニュアル(&U)
-menutrans &How-to\ links &How-toリンク
+menutrans &How-To\ links &How-toリンク
menutrans &Credits クレジット(&C)
menutrans Co&pying 著作権情報(&P)
menutrans &Sponsor/Register スポンサー/登録(&S)
@@ -271,10 +272,9 @@ if has("toolbar")
tmenu ToolBar.Cut クリップボードへ切り取り
tmenu ToolBar.Copy クリップボードへコピー
tmenu ToolBar.Paste クリップボードから貼り付け
- tmenu ToolBar.Find 検索...
+ tmenu ToolBar.Replace 検索 / 置換...
tmenu ToolBar.FindNext 次を検索
tmenu ToolBar.FindPrev 前を検索
- tmenu ToolBar.Replace 置換...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New 新規ウィンドウ作成
tmenu ToolBar.WinSplit ウィンドウ分割
diff --git a/runtime/lang/menu_japanese_japan.932.vim b/runtime/lang/menu_japanese_japan.932.vim
index b5b9ffa146..530131b5bf 100644
--- a/runtime/lang/menu_japanese_japan.932.vim
+++ b/runtime/lang/menu_japanese_japan.932.vim
@@ -2,13 +2,14 @@
"
" Menu Translations: Japanese (CP932)
" Last Translator: MURAOKA Taro <koron.kaoriya@gmail.com>
-" Last Change: 18-Jul-2018.
-" Generated from menu_ja_jp.utf-8.vim, DO NOT EDIT
+" Last Change: 20-Feb-2022.
"
-" Copyright (C) 2001-2018 MURAOKA Taro <koron.kaoriya@gmail.com>,
+" Copyright (C) 2001-2022 MURAOKA Taro <koron.kaoriya@gmail.com>,
" vim-jp <http://vim-jp.org/>
"
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
+"
+" Generated from menu_ja_jp.utf-8.vim, DO NOT EDIT
" Quit when menu translations have already been done.
if exists("did_menu_trans")
@@ -24,7 +25,7 @@ scriptencoding cp932
menutrans &Help wv(&H)
menutrans &Overview<Tab><F1> T(&O)<Tab><F1>
menutrans &User\ Manual [U[}jA(&U)
-menutrans &How-to\ links &How-toN
+menutrans &How-To\ links &How-toN
menutrans &Credits NWbg(&C)
menutrans Co&pying 쌠(&P)
menutrans &Sponsor/Register X|T[/o^(&S)
@@ -271,10 +272,9 @@ if has("toolbar")
tmenu ToolBar.Cut Nbv{[h֐؂
tmenu ToolBar.Copy Nbv{[hփRs[
tmenu ToolBar.Paste Nbv{[h\t
- tmenu ToolBar.Find ...
+ tmenu ToolBar.Replace / u...
tmenu ToolBar.FindNext
tmenu ToolBar.FindPrev O
- tmenu ToolBar.Replace u...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New VKEBhE쐬
tmenu ToolBar.WinSplit EBhE
diff --git a/runtime/syntax/structurizr.vim b/runtime/syntax/structurizr.vim
index 73629b1495..ab9e4ee609 100644
--- a/runtime/syntax/structurizr.vim
+++ b/runtime/syntax/structurizr.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Structurizr DSL
" Maintainer: Bastian Venthur <venthur@debian.org>
-" Last Change: 2021-08-16
+" Last Change: 2022-02-15
" Remark: For a language reference, see
" https://github.com/structurizr/dsl
@@ -30,6 +30,7 @@ syn keyword skeyword deployment
syn keyword skeyword deploymentenvironment
syn keyword skeyword deploymentgroup
syn keyword skeyword deploymentnode
+syn keyword skeyword description
syn keyword skeyword dynamic
syn keyword skeyword element
syn keyword skeyword enterprise
@@ -37,7 +38,6 @@ syn keyword skeyword exclude
syn keyword skeyword filtered
syn keyword skeyword group
syn keyword skeyword healthcheck
-syn keyword skeyword impliedrelationships
syn keyword skeyword include
syn keyword skeyword infrastructurenode
syn keyword skeyword model
@@ -51,6 +51,7 @@ syn keyword skeyword styles
syn keyword skeyword systemcontext
syn keyword skeyword systemlandscape
syn keyword skeyword tags
+syn keyword skeyword technolog