summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-06-25 18:01:32 +0100
committerBram Moolenaar <Bram@vim.org>2022-06-25 18:01:32 +0100
commite1dc76fbf333243ecfdfc3c0a81ea9984913b4f5 (patch)
tree66ad575accaa871ea4b2919cafd0a7bec5066d9b /runtime
parent7bb6d56cfc8ac82dea323f6799a773d7fa3286a8 (diff)
Update runtime files
Diffstat (limited to 'runtime')
-rw-r--r--runtime/doc/builtin.txt12
-rw-r--r--runtime/doc/tags2
-rw-r--r--runtime/doc/todo.txt16
-rw-r--r--runtime/doc/various.txt7
-rw-r--r--runtime/doc/version7.txt2
-rw-r--r--runtime/doc/version8.txt2
-rw-r--r--runtime/doc/version9.txt434
-rw-r--r--runtime/gvim.desktop5
-rw-r--r--runtime/pack/dist/opt/termdebug/plugin/termdebug.vim3
-rw-r--r--runtime/vim.desktop5
10 files changed, 348 insertions, 140 deletions
diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt
index c26a8574ea..ad7c5fd1a2 100644
--- a/runtime/doc/builtin.txt
+++ b/runtime/doc/builtin.txt
@@ -10421,7 +10421,7 @@ bsd Compiled on an OS in the BSD family (excluding macOS).
builtin_terms Compiled with some builtin terminals.
byte_offset Compiled with support for 'o' in 'statusline'
channel Compiled with support for |channel| and |job|
-cindent Compiled with 'cindent' support.
+cindent Compiled with 'cindent' support. (always true)
clientserver Compiled with remote invocation support |clientserver|.
clipboard Compiled with 'clipboard' support.
clipboard_working Compiled with 'clipboard' support and it can be used.
@@ -10483,7 +10483,7 @@ insert_expand Compiled with support for CTRL-X expansion commands in
Insert mode. (always true)
job Compiled with support for |channel| and |job|
ipv6 Compiled with support for IPv6 networking in |channel|.
-jumplist Compiled with |jumplist| support.
+jumplist Compiled with |jumplist| support. (always true)
keymap Compiled with 'keymap' support.
lambda Compiled with |lambda| support.
langmap Compiled with 'langmap' support.
@@ -10492,6 +10492,7 @@ linebreak Compiled with 'linebreak', 'breakat', 'showbreak' and
'breakindent' support.
linux Linux version of Vim.
lispindent Compiled with support for lisp indenting.
+ (always true)
listcmds Compiled with commands for the buffer list |:files|
and the argument list |arglist|.
localmap Compiled with local mappings and abbr. |:map-local|
@@ -10521,7 +10522,7 @@ mzscheme Compiled with MzScheme interface |mzscheme|.
nanotime Compiled with sub-second time stamp checks.
netbeans_enabled Compiled with support for |netbeans| and connected.
netbeans_intg Compiled with support for |netbeans|.
-num64 Compiled with 64-bit |Number| support.
+num64 Compiled with 64-bit |Number| support. (always true)
ole Compiled with OLE automation support for Win32.
osx Compiled for macOS cf. mac
osxdarwin Compiled for macOS, with |mac-darwin-feature|
@@ -10547,7 +10548,7 @@ ruby Compiled with Ruby interface |ruby|.
scrollbind Compiled with 'scrollbind' support. (always true)
showcmd Compiled with 'showcmd' support.
signs Compiled with |:sign| support.
-smartindent Compiled with 'smartindent' support.
+smartindent Compiled with 'smartindent' support. (always true)
sodium Compiled with libsodium for better crypt support
sound Compiled with sound support, e.g. `sound_playevent()`
spell Compiled with spell checking support |spell|.
@@ -10561,7 +10562,7 @@ syntax_items There are active syntax highlighting items for the
current buffer.
system Compiled to use system() instead of fork()/exec().
tag_binary Compiled with binary searching in tags files
- |tag-binary-search|.
+ |tag-binary-search|. (always true)
tag_old_static Support for old static tags was removed, see
|tag-old-static|.
tcl Compiled with Tcl interface.
@@ -10575,6 +10576,7 @@ tgetent Compiled with tgetent support, able to use a termcap
or terminfo file.
timers Compiled with |timer_start()| support.
title Compiled with window title support |'title'|.
+ (always true)
toolbar Compiled with support for |gui-toolbar|.
ttyin input is a terminal (tty)
ttyout output is a terminal (tty)
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 7481605b15..cc002ecd05 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -8621,6 +8621,7 @@ new-argument-list version6.txt /*new-argument-list*
new-buftype version6.txt /*new-buftype*
new-cmdwin version6.txt /*new-cmdwin*
new-color-schemes version6.txt /*new-color-schemes*
+new-colorschemes-9 version9.txt /*new-colorschemes-9*
new-commands version5.txt /*new-commands*
new-commands-5.4 version5.txt /*new-commands-5.4*
new-conceal version7.txt /*new-conceal*
@@ -8670,6 +8671,7 @@ new-other-8.2 version8.txt /*new-other-8.2*
new-perl-python version5.txt /*new-perl-python*
new-persistent-undo version7.txt /*new-persistent-undo*
new-plugins version6.txt /*new-plugins*
+new-popup-compl version9.txt /*new-popup-compl*
new-popup-window version8.txt /*new-popup-window*
new-posix version7.txt /*new-posix*
new-print-multibyte version7.txt /*new-print-multibyte*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 40f9bc038c..50661efc4b 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 Jun 23
+*todo.txt* For Vim version 8.2. Last change: 2022 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -39,7 +39,7 @@ browser use: https://github.com/vim/vim/issues/1234
-------------------- Known bugs and current work -----------------------
Prepare for the Vim 9.0 release:
-- Update version9.txt
+- Update version number in help
Further Vim9 improvements, possibly after launch:
- Use Vim9 for more runtime files.
@@ -79,7 +79,7 @@ Update list of features to vote on:
Popup windows:
- Preview popup not properly updated when it overlaps with completion menu.
(Yegappan Lakshmanan, 2021 May 22)
-- Srollbar thumb sometimes not visible #10492
+- Scrollbar thumb sometimes not visible #10492
- Add a function to redraw a specific popup window. Esp. to be used when
editing the command line, when screen updating doesn't happen. (Shougo)
- Add a flag to make a popup window focusable?
@@ -201,6 +201,7 @@ Terminal emulator window:
conversions.
Patches considered for including:
+- make functions static if possible, add a few tests. #10612
- use ngettext() in a few more places #10606
- move f_hasmapto() to map.c #10611
- allow for nesting of timeout, sketch in #10595
@@ -211,6 +212,8 @@ Patches considered for including:
Was originally written by Felipe Morales.
- Patch to make fillchars global-local. (#5206)
- Version of getchar() that does not move the cursor - #10603
+ Use a separate argument for the new flag.
+- Improved VB filetype detection. (Doug Kearns, June 25)
Autoconf: must use autoconf 2.69, later version generates lots of warnings
- try using autoconf 2.71 and fix all "obsolete" warnings
@@ -304,6 +307,11 @@ changes.
Add ??= operator, "a ??= b" works like "a = a ?? b". #10343
+When ":redir" is used while already active, the previous one is ended. But
+when redirecting to a local variable (function or script) storing the value
+won't work. At least give an error. Is there a way to make it work?
+#10616
+
Add an option to start_timer() to return from the input loop with K_IGNORE.
This is useful e.g. when a popup was created that disables mappings, we need
to return from vgetc() to make this happen. #7011
@@ -380,7 +388,7 @@ Lua: updating wrong buffer when using newly created, unloaded buffer.
File marks merging has duplicates since 7.4.1925. (Ingo Karkat, #5733)
A syntax plugin cannot use autocommands, it could be sourced from setting
-'syntax' in a modeline. Add a function that indicates whethere "secure"
+'syntax' in a modeline. Add a function that indicates whether "secure"
and/or "sandbox" are set.
Problem with auto-formatting - inserting space and putting cursor before added
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index d09dac48f9..1414561c62 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt* For Vim version 8.2. Last change: 2022 May 21
+*various.txt* For Vim version 8.2. Last change: 2022 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -558,7 +558,10 @@ N *+X11* Unix only: can restore window title |X11|
initialized to an empty string. After the redirection
starts, if the variable is removed or locked or the
variable type is changed, then further command output
- messages will cause errors.
+ messages will cause errors. When using a local
+ variable (l:var in a function or s:var in a script)
+ and another `:redir` causes the current one to end,
+ the scope might be different and the assignment fails.
In Vim9 script: the variable must have been declared
as a string.
The variable will remain empty until redirection ends.
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 0256f4b014..775b9dcdb5 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -12849,7 +12849,7 @@ Files: src/getchar.c, src/normal.c, src/proto/getchar.pro
Patch 7.3.430
Problem: When a custom filetype detection uses "augroup END" the conf
- fileytpe detection does not have the filetypedetect group.
+ filetype detection does not have the filetypedetect group.
Solution: Always end the group and include filetypedetect in the conf
autocommand. (Lech Lorens)
Files: runtime/filetype.vim
diff --git a/runtime/doc/version8.txt b/runtime/doc/version8.txt
index b7185e866e..670208fdef 100644
--- a/runtime/doc/version8.txt
+++ b/runtime/doc/version8.txt
@@ -18427,7 +18427,7 @@ Problem: When 'wrapscan' is off "gn" does not select the whole pattern when
Solution: Check if the search fails. (Christian Brabandt, closes #1683)
Files: src/search.c, src/testdir/test_gn.vim
-Patch 8.0.0628 (after 8.0.0626
+Patch 8.0.0628 (after 8.0.0626)
Problem: Cursor disappears after silent mapping. (Ramel Eshed)
Solution: Do restore the cursor when it was changed, but don't change it in
the first place for a silent mapping.
diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt
index 4438394757..37054001a4 100644
--- a/runtime/doc/version9.txt
+++ b/runtime/doc/version9.txt
@@ -1,4 +1,4 @@
-*version9.txt* For Vim version 8.2. Last change: 2022 Jun 20
+*version9.txt* For Vim version 8.2. Last change: 2022 Jun 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -7,25 +7,27 @@
*vim-9.0* *vim-9* *version-9.0* *version9.0*
Welcome to Vim 9! Several years have passed since the previous release.
A large number of bugs have been fixed, many nice features have been added
-and Vim9 script syntax has been introduced. This file mentions all the new
-things and changes to existing features since Vim 8.2.0. The patches up to Vim
-8.2 can be found here: |vim-8.2|.
+and the Vim9 script syntax is here! This file mentions all the new things and
+changes to existing features since Vim 8.2.0. The patches up to Vim 8.2 can be
+found here: |vim-8.2|.
Use this command to see the full version and features information of the Vim
program you are using: >
:version
-NEW FEATURES |new-9|
- Vim script enhancements |new-vim-script-9|
- Various new items |new-items-9|
+NEW FEATURES |new-9|
+ Vim script enhancements |new-vim-script-9|
+ Command line completion in a popup menu |new-popup-compl|
+ Updated colorschemes |new-colorschemes-9|
+ Various new items |new-items-9|
-INCOMPATIBLE CHANGES |incompatible-9|
+INCOMPATIBLE CHANGES |incompatible-9|
-IMPROVEMENTS |improvements-9|
+IMPROVEMENTS |improvements-9|
-COMPILE TIME CHANGES |compile-changes-9|
+COMPILE TIME CHANGES |compile-changes-9|
-PATCHES |patches-9|
+PATCHES |patches-9|
See |vi_diff.txt| for an overview of differences between Vi and Vim 9.0.
@@ -51,26 +53,41 @@ is below.
Vim9 script ~
*new-vim-script-9*
The Vim script language has been changed step by step over many years,
-preserving backwards compatibility. Several choices made in early days got in
-the way of making it work better. At the same time, Vim script is being used
-much more often, since there are so many plugins being used.
+preserving backwards compatibility. Several choices made in the early days
+got in the way of making it work better. At the same time, Vim script is
+being used much more often, since there are so many plugins being used.
Vim9 script provides a syntax that is much more similar to other languages.
In other words: "less weird". Compiled functions are introduced which allow
for a large speed improvement. You can expect around ten times faster
-execution. The price to pay is that Vim9 script is not backwards compatible.
-But don't worry, you can still use your old scripts, the new script language
-is added, it does not replace the legacy script.
+execution, or even more. The price to pay is that Vim9 script is not
+backwards compatible. But don't worry, you can still use your old scripts,
+the new script language is added, it does not replace the legacy script.
-All the information about Vim9 script can be found in the |Vim9| help file.
+Information about Vim9 script can be found in the |Vim9| help file.
-Various new items *new-items-9*
------------------
+Command line completion in a popup menu ~
+ *new-popup-compl*
+Before there was the 'wildmenu' option, which uses the space of one line above
+the statusline to show matches. Only a few matches fit there.
-TODO: Visual/Insert/Cmdline mode commands?
+Now a popup menu can be used by setting "wildoptions' to "pum". This allows
+for showing many more matches. This requires redrawing more of the display,
+but since computers are fast enough that is not a problem.
+Updated colorschemes ~
+ *new-colorschemes-9*
+Colorschemes from https://github.com/vim/colorschemes have been included.
+They were made to work consistently across many types of terminals. Although
+generally an improvement, a lot of personal preference is involved. You can
+always get the old version if you prefer it, look here:
+https://github.com/vim/colorschemes/blob/master/legacy_colors/
+
+
+Various new items ~
+ *new-items-9*
Options: ~
'autoshelldir' change directory to the shell's current directory
@@ -86,25 +103,26 @@ Options: ~
Ex commands: ~
-|:abstract|
+|:abstract| (reserved for future use)
|:argdedupe| remove duplicates from the argument list
|:balt| like ":badd" but also set the alternate file
-|:class| reserved for future use
+|:class| (reserved for future use)
|:def| define a Vim9 user function
|:defcompile| compile Vim9 user functions in current script
|:disassemble| disassemble Vim9 user function
|:echoconsole| like :echomsg but write to stdout
-|:endinterface| reserved for future use
-|:endclass| reserved for future use
+|:endinterface| (reserved for future use)
+|:endclass| (reserved for future use)
|:enddef| end of a user function started with :def
-|:endenum| reserved for future use
-|:enum| reserved for future use
+|:endenum| (reserved for future use)
+|:enum| (reserved for future use)
+|:eval| evaluate an expression and discard the result
|:export| Vim9: export an item from a script
|:final| declare an immutable variable in Vim9
|:import| Vim9: import an item from another script
-|:interface| reserved for future use
-|:static| reserved for future use
-|:type| reserved for future use
+|:interface| (reserved for future use)
+|:static| (reserved for future use)
+|:type| (reserved for future use)
|:var| variable declaration in Vim9
|:vim9script| indicates Vim9 script file
@@ -138,6 +156,7 @@ New and extended functions: ~
|getcharpos()| get character position of cursor, mark, etc.
|getcharstr()| get a character from the user as a string
|getcmdcompltype()| return current cmdline completion type
+|getcmdscreenpos()| return the current cursor position in the cmdline
|getcursorcharpos()| get character position of the cursor
|getmarklist()| list of global/local marks
|getreginfo()| get information about a register
@@ -195,10 +214,9 @@ New Vim variables: ~
New autocommand events: ~
-|CompleteDonePre| after Insert mode completion is done, before clearing
- info
+|CompleteDonePre| after Insert mode completion done, before clearing info
|DirChangedPre| before the working directory will change
-|InsertLeavePre| just before leaving Insert mode
+|InsertLeavePre| just before leaving Insert mode
|ModeChanged| after changing the mode
|SigUSR1| after the SIGUSR1 signal has been detected
|WinClosed| after closing a window
@@ -207,7 +225,7 @@ New autocommand events: ~
|VimResume| when Vim is resumed after being suspended
-New operator: ~
+New operators: ~
|>>| bitwise right shift
|<<| bitwise left shift
@@ -220,16 +238,18 @@ Too many to list here.
==============================================================================
INCOMPATIBLE CHANGES *incompatible-9*
-These changes are incompatible with previous releases. Check this list if you
-run into a problem when upgrading from Vim 8.2 to 9.0.
+There is only one change that is incompatible with previous releases:
+
+- Lua arrays are now one-based, they used to be zero-based.
-TODO
+Note that when using |Vim9| script several things work differently, see
+|vim9-differences|.
==============================================================================
IMPROVEMENTS *improvements-9*
-Various small and useful improvements have been made since Vim 8.2. Here is a
-collection of changes that are worth mentioning.
+Various small and useful improvements have been made since Vim 8.2, here is a
+summary.
Many memory leaks, invalid memory accesses and crashes have been fixed.
See the list of patches below: |bug-fixes-9|.
@@ -237,15 +257,12 @@ See the list of patches below: |bug-fixes-9|.
Support for Vim expression evaluation in a string. |interp-string|
Support for evaluating Vim expressions in a heredoc. |:let-heredoc|
-Display the command line completion matches in a popup menu. 'wildoptions'
-
-Support for fuzzy matching a string in a List of strings. |fuzzy-matching|
-
-Fuzzy completion support for command line completion using 'wildoptions'.
+Support for fuzzy matching:
+- a string in a List of strings. |fuzzy-matching|
+- completion support for command line completion using 'wildoptions'
+- for |:vimgrep|.
-Fuzzy match support for |:vimgrep|.
-
-Haiku support. |Haiku|
+Added support for the |Haiku| OS.
Support for "lsp" channel mode to simplify LSP server RPC communication
|language-server-protocol|. Support for using a Unix domain socket with a
@@ -253,13 +270,24 @@ Support for "lsp" channel mode to simplify LSP server RPC communication
Support for sourcing lines from the current buffer. |:source-range|
-Support for opening a terminal in a popup window. |popup-terminal|
+Terminal window improvements:
+- Support for opening a terminal in a popup window. |popup-terminal|
+- Allow setting underline color in terminal.
+- Detect focus events in terminal (|FocusGained| and |FocusLost|).
+- Add bell support for the terminal window. ('belloff')
+- Support mouse left-right scrolling in a terminal window.
Support for stopping profiling a Vim script: `:profile stop` and dumping the
report to a file: `:profile dump` . |:profile|
-Argument completion support for the |:breakadd|, |:breakdel|, |:diffget|,
-|:diffput|, |:profile|, |:profdel| and |:scriptnames| commands.
+Completion improvements:
+- Argument completion support for the |:breakadd|, |:breakdel|, |:diffget|,
+ |:diffput|, |:profile|, |:profdel| and |:scriptnames| commands.
+- Support using any Vim type for user_data with the completion functions
+ (|complete-items|).
+- Stop insert mode completion without changing text (|i_CTRL-X_CTRL-Z|).
+- Add the "cmdline" option to |getcompletion()| to return the command line
+ arguments.
Support for setting the 'foldtext', 'completefunc', 'omnifunc',
'operatorfunc', 'thesaurusfunc', 'quickfixtextfunc', 'tagfunc',
@@ -270,35 +298,33 @@ Support directly setting the 'balloonexpr', 'charconvert' 'foldexpr',
'formatexpr', 'includeexpr', 'printexpr', 'patchexpr', 'indentexpr',
'modelineexpr', 'diffexpr' and 'printexpr' options to a script-local function.
-Support for configuring the character used to mark the beginning of a fold,
-show a closed fold and show a fold separator using "foldopen", "foldclose" and
-"foldsep" respectively in 'fillchars'.
-
-Support for configuring the character displayed in non existing lines using
-"eob" in 'fillchars'.
-
-Support for using multibyte items with the "stl", "stlnc", "foldopen",
-"foldclose" and "foldsep" items in the 'fillchars' option.
+Improvements in 'fillchars':
+- Support for configuring the character used to mark the beginning of a fold,
+ show a closed fold and show a fold separator using "foldopen", "foldclose"
+ and "foldsep" respectively in 'fillchars'.
+- Support for configuring the character displayed in non existing lines using
+ "eob" in 'fillchars'.
+- Support for using multibyte items with the "stl", "stlnc", "foldopen",
+ "foldclose" and "foldsep" items in the 'fillchars' option.
Support for the XChaCha20 encryption method. 'cryptmethod'
-Spell check current word with |z=| even when 'spell' is off.
-
-Add "timeout" to 'spellsuggest' to limit the searching time for spell
-suggestions.
+Spell checking:
+- Spell check current word with |z=| even when 'spell' is off.
+- Add "timeout" to 'spellsuggest' to limit the searching time for spell
+ suggestions.
+- Add support for spell checking CamelCased words by adding "camel" to
+ 'spelloptions'.
Support for executing Ex commands in a map without changing the current mode
|<Cmd>| and |<ScriptCmd>|.
Add optional error code to |:cquit|.
-Support for calling Vim functions from Lua (vim.call() and vim.fn()).
-
Recognize numbers as unsigned when "unsigned" is set in 'nrformats'.
-Allow setting underline color in terminal.
-
-Expand script ID using expand('<SID>'). |expand()|
+Expand script ID using expand('<SID>') and script name using
+expand('<script>'). |expand()|
Jump to the last accessed tab page using |g<Tab>| and support using the
last accessed tab page in |:tabnext| et al.
@@ -307,25 +333,27 @@ Locale aware sorting using |:sort| and |sort()|.
Hide cursor when sleeping using |:sleep!|.
-Detect focus events in terminal (|FocusGained| and |FocusLost|).
-
Add "multispace" to 'listchars' to show two or more spaces no matter where
they appear. Add "leadmultispace" to 'listchars' to show two or more leading
spaces. Add "lead" to 'listchars' to set the character used to show leading
-spaces.
+spaces. Support specifying a character using the hexdecimal notation in
+'listchars' (\x, \u and \U).
Make 'listchars', 'virtualedit' and 'thesaurusfunc' global-local options.
-Support for looping over a string using |:for|.
+Support for looping over a string using `:for`.
Don't reset 'wrap' for diff windows when "followwrap" is set in 'diffopt'.
Support for re-evaluating the 'statusline' expression as a statusline format
-string (%{expr})
+string (%{% expr %})
Add |zp| and |zP| to paste in block mode without adding trailing white space.
Add |zy| to yank without trailing white space in block mode.
+Add the 'P' command in visual mode to paste text in Visual mode without
+yanking the deleted text to the unnamed register. |put-Visual-mode|
+
Add \%.l, \%<.l and \%>.l atoms to match the line the cursor is currently on.
See |/\%l| for more information.
@@ -338,14 +366,8 @@ adjust sign highlighting for 'cursorline'.
Add the |hl-CurSearch| default highlight group for the current search match.
-Add the 'P' command in visual mode to paste text in visual mode without
-yanking the deleted text to the unnamed register. |put-Visual-mode|
-
Add support for logging on Vim startup (|--log|).
-Add "/" in 'formatoptions' to stop inserting // when using "o" on a line with
-inline comment. |fo-/|
-
Add support for customizing the quickfix buffer contents using
'quickfixtextfunc'. Support for the "note" error type (%t) in |errorformat|.
Add support for parsing the end line number (%e) and end column number (%k)
@@ -353,24 +375,17 @@ using 'errorformat'.
Support truncating the tag stack using |settagstack()|.
-Support using any Vim type for user_data with the completion functions
-(|complete-items|).
-
Display every option in a separate line when "!" is used with |:set|.
Add "nostop" to 'backspace' to allow backspacing over the start of insert for
|CTRL-W| and |CTRL-U| also.
-Add bell support for the terminal window. ('belloff')
-
Sync the undo file if 'fsync' is set.
Support excluding the 'runtimepath' and 'packpath' options from a session file
using "skiprtp" in 'sessionoptions'.
-Stop insert mode completion without changing text (|i_CTRL-X_CTRL-Z|).
-
-Support for getting the number of lines (linecount) in a buffer using
+Support for getting the number of lines (line count) in a buffer using
|getbufinfo()|.
Support |filter()| and |map()| for blob and string types.
@@ -381,8 +396,6 @@ Add support for checking whether a function name is valid using |exists()|.
Update xdiff to version 2.33. Update libvterm to revision 789.
-Added support for the |Haiku| OS.
-
Support 'trim' for Python/Lua/Perl/Tcl/Ruby/MzScheme interface heredoc.
Add the |t_AU| and |t_8u| termap codes for underline and undercurl. Add the
@@ -407,38 +420,53 @@ using the "tcd -" and "lcd -" commands. (|:tcd-| and |:lcd-|)
Add support for skipping an expression using |search()|.
-Add the "cmdline" option to |getcompletion()| to return the command line
-arguments.
-
-Add support for spell checking CamelCased words by adding "camel" to
-'spelloptions'.
-
-Add support for importing Vim scripts using |:import| from a Vimscript.
-
Add support for sorting the directory contents returned by the |readdir()|
and |readdirex()| functions by case.
Add support for executing (|:@|) a register containing line continuation.
-Convert a Lua function and a closure to a Vim funcref so that it can be
-accessed in a Vimscript. (|lua-funcref|) Make Lua arrays one based.
-Add table.insert() and table.remove() functions.
+Lua support:
+- Call Vim functions from Lua (vim.call() and vim.fn()).
+- Convert a Lua function and a closure to a Vim funcref so that it can be
+ accessed in a Vimscript (|lua-funcref|).
+- Not backwards compatible: Make Lua arrays one based.
+- Add support for using table.insert() and table.remove() functions with Vim
+ lists.
+- Support for running multiple Ex-mode commands using vim.command().
+- Add vim.lua_version to get the Lua version.
+- Add support for accessing Vim namespace dictionaries from Lua
+ (|lua-vim-variables|).
+
+Support for new UTF-8 characters from Unicode release 13.
+
+Support for using a command block (|:command-repl|) when defining a |:command|
+or an |:autocmd|.
+
+Support for using |:z!| to use the Vim display height instead of the current
+window height.
-Support mouse left-right scrolling in a terminal window.
+Support for deleting a buffer-local command using ":delcommand -buffer {cmd}".
-Updated colorschemes from https://github.com/vim/colorschemes is included.
+When formatting a // comment after a statement, find the start of the line
+comment, insert the comment leader and indent the comment properly (|fo-/|).
+
+Add the "numhl" argument to `:sign define` to use a separate highlight group
+for the line number on a line where a sign is placed. |:sign-define|
+
+When $SHELL ends in "nologin" or "false", start Vim in restricted mode.
TermDebug enhancements:
-Support for showing the disassembled code in a separate window. Support for
-the GDB until command. Use a separate group for the signs.
+- Support for showing the disassembled code in a separate window.
+- Support for the GDB until command.
+- Use a separate group for the signs.
+
+xxd: Support for showing offset as a decimal number (-d).
A large number of tests have been added to verify the Vim functionality. Most
of the old style tests have been converted to new style tests using the new
style assert_* functions.
-Many Coverity static analysis warnings are fixed.
-
-TODO: more
+Many Coverity static analysis warnings have been fixed.
==============================================================================
COMPILE TIME CHANGES *compile-changes-9*
@@ -461,11 +489,15 @@ work properly:
The rgb.txt file is no longer included, use colors/lists/default.vim instead.
-Several source files were split, mainly to make it easier to inspect code
-coverage information.
+Several large source files were split, mainly to make it easier to inspect
+code coverage information. Source files have also been refactored for
+maintainability.
Support for building Vim with Mingw64 clang compiler on MS-Windows.
+Support for building Vim with Python 3.10, Lua 5.4.4, Perl 5.34 and
+Ruby 3.1.0.
+
==============================================================================
PATCHES *patches-9* *bug-fixes-9*
*patches-after-8.2*
@@ -12812,7 +12844,7 @@ Files: src/bufwrite.c, src/testdir/test_viminfo.vim
Patch 8.2.2040
Problem: Terminal buffer disappears even when 'bufhidden' is "hide".
(Sergey Vlasov)
-Solution: Check 'bufhiddden' when a terminal buffer becomes hidden.
+Solution: Check 'bufhidden' when a terminal buffer becomes hidden.
(closes #7358)
Files: src/buffer.c, src/testdir/test_terminal.vim
@@ -25903,7 +25935,7 @@ Solution: Only delete the tail from the record buffer if the character was
Files: src/normal.c, src/testdir/test_registers.vim
Patch 8.2.4238
-Problem: *.tf file could be fileytpe "tf" or "terraform".
+Problem: *.tf file could be filetype "tf" or "terraform".
Solution: Detect the type from the file contents. (closes #9642)
Files: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
src/testdir/test_filetype.vim
@@ -27440,7 +27472,7 @@ Solution: Temporary fix: put back regexp. (closes #9852, closes #9851)
Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.4479
-Problem: No fuzzy completieon for maps and abbreviations.
+Problem: No fuzzy completion for maps and abbreviations.
Solution: Fuzzy complete maps and abbreviations. (Yegappan Lakshmanan,
closes #9856)
Files: src/cmdexpand.c, src/map.c, src/proto/map.pro, src/search.c,
@@ -27662,7 +27694,7 @@ Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4515
-Problem: Old subsitute syntax is still supported.
+Problem: Old substitute syntax is still supported.
Solution: Disallow using backslash after ":s" in Vim9 script.
Files: src/ex_cmds.c, src/errors.h, src/testdir/test_substitute.vim
@@ -27715,7 +27747,7 @@ Files: src/term.c
Patch 8.2.4524
Problem: MS-Windows: cannot build with some sodium libraries.
-Solution: Make the DLL name configuragle. Add build instructions.
+Solution: Make the DLL name configurable. Add build instructions.
(Ken Takata, closes #9905)
Files: src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
src/crypt.c
@@ -28312,7 +28344,7 @@ Files: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.4623
Problem: Coverity warns for using uninitialized field.
-Solution: Initialize he field to zero.
+Solution: Initialize the field to zero.
Files: src/ex_docmd.c
Patch 8.2.4624
@@ -28759,7 +28791,7 @@ Files: src/getchar.c
Patch 8.2.4692
Problem: No test for what 8.2.4691 fixes.
-Solution: Add a test. Use a more generic sotlution. (closes #10090)
+Solution: Add a test. Use a more generic solution. (closes #10090)
Files: src/getchar.c, src/mouse.c, src/testdir/test_mapping.vim
Patch 8.2.4693 (after 8.2.4688)
@@ -28907,7 +28939,7 @@ Files: src/alloc.c, src/alloc.h, src/proto/alloc.pro, src/userfunc.c,
Patch 8.2.4717
Problem: For TextYankPost v:event does not contain information about the
operation being inclusive or not.
-Solution: Add "inclusive" to v:event. (Justn M. Keyes, Yegappan Lakshmanan,
+Solution: Add "inclusive" to v:event. (Justin M. Keyes, Yegappan Lakshmanan,
closes #10125)
Files: runtime/doc/autocmd.txt, src/register.c,
src/testdir/test_autocmd.vim
@@ -29092,7 +29124,7 @@ Files: src/terminal.c, src/misc1.c
Patch 8.2.4746
Problem: Supercollider filetype not recognized.
-Solution: Match file extentions and check file contents to detect
+Solution: Match file extensions and check file contents to detect
supercollider. (closes #10142)
Files: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
src/testdir/test_filetype.vim
@@ -29625,7 +29657,7 @@ Solution: Remove dead code. Add disassemble tests.
Files: src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_disassemble.vim
-Patch 8.2.4837 (after patch 8.2.0919
+Patch 8.2.4837 (after patch 8.2.0919)
Problem: Modifiers not simplified when timed out or using feedkeys() with
'n" flag.
Solution: Adjust how mapped flag and timeout are used. (closes #10305)
@@ -29714,7 +29746,7 @@ Files: src/session.c
Patch 8.2.4852
Problem: ANSI color index to RGB value not correct.
Solution: Convert the cterm index to ANSI index. (closes #10321,
- closes #9836))
+ closes #9836)
Files: src/term.c
Patch 8.2.4853
@@ -29950,7 +29982,7 @@ Files: Filelist, runtime/import/dist/vimhelp.vim
Patch 8.2.4892
Problem: Test failures because of changed error messages.
-Solution: Adjust the exptected error messages.
+Solution: Adjust the expected error messages.
Files: src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim,
@@ -29986,7 +30018,7 @@ Files: src/eval.c, src/testdir/test_lambda.vim
Patch 8.2.4898
Problem: Coverity complains about pointer usage.
-Solution: Move code for increment/decerment.
+Solution: Move code for increment/decrement.
Files: src/vim9compile.c
Patch 8.2.4899
@@ -30183,7 +30215,7 @@ Files: src/bufwrite.c, src/channel.c, src/cindent.c, src/crypt.c,
src/os_vms.c, src/os_vms_conf.h
Patch 8.2.4929
-Problem: Off-by-one error in in statusline item.
+Problem: Off-by-one error in statusline item.
Solution: Subtrace one less. (closes #10394, closes #5599)
Files: src/buffer.c, src/testdir/test_statusline.vim,
src/testdir/dumps/Test_statusline_hl.dump
@@ -30327,7 +30359,7 @@ Solution: Check the cursor is in indent. (closes #10420)
Files: src/indent.c, src/testdir/test_smartindent.vim
Patch 8.2.4954
-Problem: Inserting line breaks text property spanning more then one line.
+Problem: Inserting line breaks text property spanning more than one line.
Solution: Check TP_FLAG_CONT_PREV and TP_FLAG_CONT_NEXT. (closes #10423)
Files: src/textprop.c, src/testdir/test_textprop.vim
@@ -31394,6 +31426,160 @@ Solution: Avoid setting timeout_flag twice. Adjust the pointer when
stopping the regexp timeout. Adjust variable name.
Files: src/os_unix.c, src/os_win32.c, src/regexp.c
+Patch 8.2.5130
+Problem: Edit test for mode message fails when using valgrind.
+Solution: Use WaitForAssert(). Run beep test later.
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.5131
+Problem: Timeout implementation is not optimal.
+Solution: Further improvements for timeouts. Add a test for searchpair()
+ timeout. (partly by Paul Ollis)
+Files: src/configure.ac, src/auto/configure,
+ src/testdir/test_hlsearch.vim, src/testdir/test_search.vim
+
+Patch 8.2.5132
+Problem: :mkview test doesn't test much.
+Solution: Save the view with the folds closed. (James McCoy, closes #10596)
+Files: src/testdir/test_mksession.vim
+
+Patch 8.2.5133
+Problem: MacOS: build fails.
+Solution: Remove "#if 0" from timer_delete().
+Files: src/os_macosx.m
+
+Patch 8.2.5134
+Problem: Function has confusing name.
+Solution: Rename tgetent_error() to invoke_tgetent().