Skip to content

Commit 6b7d2cf

Browse files
committed
Merge remote-tracking branch 'vim/master'
2 parents dff6380 + bbf9f34 commit 6b7d2cf

71 files changed

Lines changed: 1423 additions & 498 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/CODEOWNERS_vim

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ runtime/doc/pi_netrw.txt @cecamp
6363
runtime/doc/pi_tar.txt @cecamp
6464
runtime/doc/pi_vimball.txt @cecamp
6565
runtime/doc/pi_zip.txt @cecamp
66+
runtime/ftplugin/awk.vim @dkearns
6667
runtime/ftplugin/bst.vim @tpope
6768
runtime/ftplugin/css.vim @dkearns
6869
runtime/ftplugin/cucumber.vim @tpope
@@ -107,6 +108,9 @@ runtime/plugin/tarPlugin.vim @cecamp
107108
runtime/plugin/vimballPlugin.vim @cecamp
108109
runtime/plugin/zipPlugin.vim @cecamp
109110
runtime/syntax/amiga.vim @cecamp
111+
runtime/syntax/asm.vim @dkearns
112+
runtime/syntax/asmh8300.vim @dkearns
113+
runtime/syntax/awk.vim @dkearns
110114
runtime/syntax/bst.vim @tpope
111115
runtime/syntax/csh.vim @cecamp
112116
runtime/syntax/cucumber.vim @tpope

runtime/doc/change.txt

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*change.txt* For Vim version 8.2. Last change: 2020 Aug 15
1+
*change.txt* For Vim version 8.2. Last change: 2020 Nov 03
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1809,13 +1809,15 @@ found here: |sort()|, |uniq()|.
18091809

18101810
With [i] case is ignored.
18111811

1812-
With [l] sort uses the current locale. See
1813-
`language collate` to check or set the locale used
1814-
for ordering. For example, with "en_US.UTF8",
1815-
Ö will be ordered after O and before P,
1816-
whereas with the Swedish locale "sv_SE.UTF8",
1817-
it will be after Z.
1818-
Case is typically ignored by the locale.
1812+
With [l] sort uses the current collation locale.
1813+
Implementation details: strcoll() is used to compare
1814+
strings. See |:language| to check or set the collation
1815+
locale. Example: >
1816+
:language collate en_US.UTF-8
1817+
:%sort l
1818+
< |v:collate| can also used to check the current locale.
1819+
Sorting using the locale typically ignores case.
1820+
This does not work properly on Mac.
18191821

18201822
Options [n][f][x][o][b] are mutually exclusive.
18211823

runtime/doc/eval.txt

Lines changed: 54 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*eval.txt* For Vim version 8.2. Last change: 2020 Oct 23
1+
*eval.txt* For Vim version 8.2. Last change: 2020 Nov 04
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2681,8 +2681,9 @@ maparg({name} [, {mode} [, {abbr} [, {dict}]]])
26812681
rhs of mapping {name} in mode {mode}
26822682
mapcheck({name} [, {mode} [, {abbr}]])
26832683
String check for mappings matching {name}
2684-
mapset({mode}, {abbr}, {dict})
2685-
none restore mapping from |maparg()| result
2684+
mapnew({expr1}, {expr2}) List/Dict like |map()| but creates a new List
2685+
or Dictionary
2686+
mapset({mode}, {abbr}, {dict}) none restore mapping from |maparg()| result
26862687
match({expr}, {pat} [, {start} [, {count}]])
26872688
Number position where {pat} matches in {expr}
26882689
matchadd({group}, {pattern} [, {priority} [, {id} [, {dict}]]])
@@ -3810,7 +3811,7 @@ confirm({msg} [, {choices} [, {default} [, {type}]]])
38103811
not need to be the first letter: >
38113812
confirm("file has been modified", "&Save\nSave &All")
38123813
< For the console, the first letter of each choice is used as
3813-
the default shortcut key.
3814+
the default shortcut key. Case is ignored.
38143815

38153816
The optional {default} argument is the number of the choice
38163817
that is made if the user hits <CR>. Use 1 to make the first
@@ -4439,10 +4440,10 @@ extend({expr1}, {expr2} [, {expr3}]) *extend()*
44394440
|Dictionaries|.
44404441

44414442
If they are |Lists|: Append {expr2} to {expr1}.
4442-
If {expr3} is given insert the items of {expr2} before item
4443-
{expr3} in {expr1}. When {expr3} is zero insert before the
4444-
first item. When {expr3} is equal to len({expr1}) then
4445-
{expr2} is appended.
4443+
If {expr3} is given insert the items of {expr2} before the
4444+
item with index {expr3} in {expr1}. When {expr3} is zero
4445+
insert before the first item. When {expr3} is equal to
4446+
len({expr1}) then {expr2} is appended.
44464447
Examples: >
44474448
:echo sort(extend(mylist, [7, 5]))
44484449
:call extend(mylist, [2, 3], 1)
@@ -6999,9 +7000,14 @@ luaeval({expr} [, {expr}]) *luaeval()*
69997000
< {only available when compiled with the |+lua| feature}
70007001

70017002
map({expr1}, {expr2}) *map()*
7002-
{expr1} must be a |List| or a |Dictionary|.
7003+
{expr1} must be a |List|, |Blob| or |Dictionary|.
70037004
Replace each item in {expr1} with the result of evaluating
7004-
{expr2}. {expr2} must be a |string| or |Funcref|.
7005+
{expr2}. For a |Blob| each byte is replaced.
7006+
If the item type changes you may want to use |mapnew()| to
7007+
create a new List or Dictionary. This is required when using
7008+
Vim9 script.
7009+
7010+
{expr2} must be a |string| or |Funcref|.
70057011

70067012
If {expr2} is a |string|, inside {expr2} |v:val| has the value
70077013
of the current item. For a |Dictionary| |v:key| has the key
@@ -7036,11 +7042,11 @@ map({expr1}, {expr2}) *map()*
70367042
|Dictionary| to remain unmodified make a copy first: >
70377043
:let tlist = map(copy(mylist), ' v:val . "\t"')
70387044

7039-
< Returns {expr1}, the |List| or |Dictionary| that was filtered.
7040-
When an error is encountered while evaluating {expr2} no
7041-
further items in {expr1} are processed. When {expr2} is a
7042-
Funcref errors inside a function are ignored, unless it was
7043-
defined with the "abort" flag.
7045+
< Returns {expr1}, the |List|, |Blob| or |Dictionary| that was
7046+
filtered. When an error is encountered while evaluating
7047+
{expr2} no further items in {expr1} are processed. When
7048+
{expr2} is a Funcref errors inside a function are ignored,
7049+
unless it was defined with the "abort" flag.
70447050

70457051
Can also be used as a |method|: >
70467052
mylist->map(expr2)
@@ -7149,7 +7155,13 @@ mapcheck({name} [, {mode} [, {abbr}]]) *mapcheck()*
71497155
GetKey()->mapcheck('n')
71507156

71517157

7152-
mapset({mode}, {abbr}, {dict}) *mapset()*
7158+
mapnew({expr1}, {expr2}) *mapnew()*
7159+
Like |map()| but instead of replacing items in {expr1} a new
7160+
List or Dictionary is created and returned. {expr1} remains
7161+
unchanged.
7162+
7163+
7164+
mapset({mode}, {abbr}, {dict}) *mapset()*
71537165
Restore a mapping from a dictionary returned by |maparg()|.
71547166
{mode} and {abbr} should be the same as for the call to
71557167
|maparg()|. *E460*
@@ -8331,15 +8343,18 @@ reg_recording() *reg_recording()*
83318343
Returns an empty string when not recording. See |q|.
83328344

83338345
reltime([{start} [, {end}]]) *reltime()*
8334-
Return an item that represents a time value. The format of
8335-
the item depends on the system. It can be passed to
8336-
|reltimestr()| to convert it to a string or |reltimefloat()|
8337-
to convert to a Float.
8338-
Without an argument it returns the current time.
8346+
Return an item that represents a time value. The item is a
8347+
list with items that depend on the system. In Vim 9 script
8348+
list<any> can be used.
8349+
The item can be passed to |reltimestr()| to convert it to a
8350+
string or |reltimefloat()| to convert to a Float.
8351+
8352+
Without an argument reltime() returns the current time.
83398353
With one argument is returns the time passed since the time
83408354
specified in the argument.
83418355
With two arguments it returns the time passed between {start}
83428356
and {end}.
8357+
83438358
The {start} and {end} arguments must be values returned by
83448359
reltime().
83458360

@@ -9712,15 +9727,25 @@ sort({list} [, {func} [, {dict}]]) *sort()* *E702*
97129727
When {func} is given and it is '1' or 'i' then case is
97139728
ignored.
97149729

9715-
When {func} is given and it is 'l' then the current locale
9716-
is used for ordering. See `language collate` to check or set
9717-
the locale used for ordering. For example, with "en_US.UTF8",
9718-
Ö will be ordered after O and before P, whereas with the
9719-
Swedish locale "sv_SE.UTF8", it will be after Z.
9720-
Case is typically ignored by the locale.
9730+
When {func} is given and it is 'l' then the current collation
9731+
locale is used for ordering. Implementation details: strcoll()
9732+
is used to compare strings. See |:language| check or set the
9733+
collation locale. |v:collate| can also be used to check the
9734+
current locale. Sorting using the locale typically ignores
9735+
case. Example: >
9736+
" ö is sorted similarly to o with English locale.
9737+
:language collate en_US.UTF8
9738+
:echo sort(['n', 'o', 'O', 'ö', 'p', 'z'], 'l')
9739+
< ['n', 'o', 'O', 'ö', 'p', 'z'] ~
9740+
>
9741+
" ö is sorted after z with Swedish locale.
9742+
:language collate sv_SE.UTF8
9743+
:echo sort(['n', 'o', 'O', 'ö', 'p', 'z'], 'l')
9744+
< ['n', 'o', 'O', 'p', 'z', 'ö'] ~
9745+
This does not work properly on Mac.
97219746

97229747
When {func} is given and it is 'n' then all items will be
9723-
sorted numerical (Implementation detail: This uses the
9748+
sorted numerical (Implementation detail: this uses the
97249749
strtod() function to parse numbers, Strings, Lists, Dicts and
97259750
Funcrefs will be considered as being 0).
97269751

@@ -11607,7 +11632,7 @@ menu Compiled with support for |:menu|.
1160711632
mksession Compiled with support for |:mksession|.
1160811633
modify_fname Compiled with file name modifiers. |filename-modifiers|
1160911634
(always true)
11610-
mouse Compiled with support mouse.
11635+
mouse Compiled with support for mouse.
1161111636
mouse_dec Compiled with support for Dec terminal mouse.
1161211637
mouse_gpm Compiled with support for gpm (Linux console mouse)
1161311638
mouse_gpm_enabled GPM mouse is working

runtime/doc/netbeans.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*netbeans.txt* For Vim version 8.2. Last change: 2020 Aug 15
1+
*netbeans.txt* For Vim version 8.2. Last change: 2020 Nov 02
22

33

44
VIM REFERENCE MANUAL by Gordon Prieur et al.

runtime/doc/sign.txt

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*sign.txt* For Vim version 8.2. Last change: 2020 Aug 31
1+
*sign.txt* For Vim version 8.2. Last change: 2020 Oct 28
22

33

44
VIM REFERENCE MANUAL by Gordon Prieur
@@ -81,6 +81,10 @@ on the same line, the attributes of the sign with the highest priority is used
8181
independently of the sign group. The default priority for a sign is 10. The
8282
priority is assigned at the time of placing a sign.
8383

84+
When two signs with the same priority are present, and one has an icon or text
85+
in the signcolumn while the other has line highlighting, then both are
86+
displayed.
87+
8488
When the line on which the sign is placed is deleted, the sign is moved to the
8589
next line (or the last line of the buffer, if there is no next line). When
8690
the delete is undone the sign does not move back.
@@ -458,11 +462,11 @@ sign_getplaced([{expr} [, {dict}]]) *sign_getplaced()*
458462
entries
459463

460464
The dictionary for each sign contains the following entries:
461-
group sign group. Set to '' for the global group.
462-
id identifier of the sign
463-
lnum line number where the sign is placed
464-
name name of the defined sign
465-
priority sign priority
465+
group sign group. Set to '' for the global group.
466+
id identifier of the sign
467+
lnum line number where the sign is placed
468+
name name of the defined sign
469+
priority sign priority
466470

467471
The returned signs in a buffer are ordered by their line
468472
number and priority.

runtime/doc/todo.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*todo.txt* For Vim version 8.2. Last change: 2020 Oct 26
1+
*todo.txt* For Vim version 8.2. Last change: 2020 Nov 04
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -38,12 +38,13 @@ browser use: https://github.com/vim/vim/issues/1234
3838
*known-bugs*
3939
-------------------- Known bugs and current work -----------------------
4040

41-
Sign highlight in signcolumn disappears if there is line highlighting.
41+
test_vim9_func fails: type from default value not used.
42+
43+
Without extra sleeps netbeans test has valgrind errors.
44+
PR #7248 from Yegappan - test doesn't fail without code changes
4245

4346
Making everything work:
44-
- Test all command modifiers.
45-
- Check many more builtin function arguments at compile time.
46-
- Closure arguments should be more strict, like any function call?
47+
- Closure argument call should not always set varargs, like any function call?
4748
- Invoke user command in a :def function
4849
- Make map() give an error if the resulting type is wrong.
4950
Add mapnew() or mapcopy() to create a new List/Dict for the result, which
@@ -54,6 +55,7 @@ Making everything work:
5455
- In autocmd: use legacy syntax, not whatever the current script uses?
5556
- need to check type when a declaration specifies a type: #6507
5657
let nr: number = 'asdf'
58+
- Check many more builtin function arguments at compile time.
5759
- Make sure that in vim9script a function call without namespace only finds
5860
the script-local function, not a global one.
5961
- Make sure that where a callback is expected a function can be used (without
@@ -279,8 +281,6 @@ Was originally written by Felipe Morales.
279281

280282
Remove SPACE_IN_FILENAME ? It is only used for completion.
281283

282-
Patch to use collation based sorting. (Christian Brabandt, #6229)
283-
284284
Add 'termguiattr' option, use "gui=" attributes in the terminal? Would work
285285
with 'termguicolors'. #1740
286286

runtime/doc/usr_41.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -644,6 +644,7 @@ List manipulation: *list-functions*
644644
deepcopy() make a full copy of a List
645645
filter() remove selected items from a List
646646
map() change each List item
647+
mapnew() make a new List with changed items
647648
reduce() reduce a List to a value
648649
sort() sort a List
649650
reverse() reverse the order of a List
@@ -669,6 +670,7 @@ Dictionary manipulation: *dict-functions*
669670
extend() add entries from one Dictionary to another
670671
filter() remove selected entries from a Dictionary
671672
map() change each Dictionary entry
673+
mapnew() make a new Dictionary with changed items
672674
keys() get List of Dictionary keys
673675
values() get List of Dictionary values
674676
items() get List of Dictionary key-value pairs

runtime/doc/vim.1

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,6 +459,9 @@ Use {name} as the server name. Used for the current Vim, unless used with a
459459
\-\-socketid {id}
460460
GTK GUI only: Use the GtkPlug mechanism to run gvim in another window.
461461
.TP
462+
\-\-startuptime {file}
463+
During startup write timing messages to the file {fname}.
464+
.TP
462465
\-\-version
463466
Print version information and exit.
464467
.SH ON-LINE HELP

runtime/doc/vim.man

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,9 @@ OPTIONS
345345
GTK GUI only: Use the GtkPlug mechanism to run gvim in an‐
346346
other window.
347347

348+
--startuptime {file}
349+
During startup write timing messages to the file {fname}.
350+
348351
--version Print version information and exit.
349352

350353
ON-LINE HELP

runtime/doc/windows.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*windows.txt* For Vim version 8.2. Last change: 2020 Sep 02
1+
*windows.txt* For Vim version 8.2. Last change: 2020 Nov 07
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1119,6 +1119,11 @@ list of buffers. |unlisted-buffer|
11191119
line when the buffer is first entered. Note that other
11201120
commands after the + will be ignored.
11211121

1122+
*:balt*
1123+
:balt [+lnum] {fname}
1124+
Like `:badd` and also set the alternate file for the current
1125+
window to {fname}.
1126+
11221127
:[N]bd[elete][!] *:bd* *:bdel* *:bdelete* *E516*
11231128
:bd[elete][!] [N]
11241129
Unload buffer [N] (default: current buffer) and delete it from

0 commit comments

Comments
 (0)