Mercurial > vim
changeset 20965:59f93c2d2551
Update runtime files
Commit: https://github.com/vim/vim/commit/73fef33014dbf21fc59e7e47fb091117868d82fb
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jun 21 22:12:03 2020 +0200
Update runtime files
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 21 Jun 2020 22:15:04 +0200 |
parents | be672fa6d129 |
children | 0ee7de260208 |
files | runtime/doc/eval.txt runtime/doc/mlang.txt runtime/doc/tags runtime/doc/testing.txt runtime/doc/todo.txt runtime/doc/usr_11.txt runtime/doc/usr_46.txt runtime/doc/usr_toc.txt runtime/doc/vim9.txt runtime/filetype.vim runtime/ftplugin/vim.vim runtime/indent/html.vim runtime/indent/testdir/html.in runtime/indent/testdir/html.ok runtime/plugin/matchparen.vim |
diffstat | 15 files changed, 105 insertions(+), 59 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 8.2. Last change: 2020 Jun 14 +*eval.txt* For Vim version 8.2. Last change: 2020 Jun 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3667,7 +3667,7 @@ complete_info([{what}]) "function" User defined completion |i_CTRL-X_CTRL-U| "omni" Omni completion |i_CTRL-X_CTRL-O| "spell" Spelling suggestions |i_CTRL-X_s| - "eval" |complete()| completion + "eval" |complete()| completion "unknown" Other internal modes If the optional {what} list argument is supplied, then only @@ -4536,7 +4536,7 @@ flatten({list} [, {maxdepth}]) *flat a very large number. The {list} is changed in place, make a copy first if you do not want that. - *E900* + *E900* {maxdepth} means how deep in nested lists changes are made. {list} is not modified when {maxdepth} is 0. {maxdepth} must be positive number. @@ -5163,7 +5163,7 @@ getcompletion({pat}, {type} [, {filtered highlight highlight groups history :history suboptions locale locale names (as output of locale -a) - mapclear buffer argument + mapclear buffer argument mapping mapping name menu menus messages |:messages| suboptions @@ -5189,7 +5189,7 @@ getcompletion({pat}, {type} [, {filtered If {type} is "cmdline", then the |cmdline-completion| result is returned. For example, to complete the possible values after a ":call" command: > - echo getcompletion('call ', 'cmdline') + echo getcompletion('call ', 'cmdline') < If there are no matches, an empty list is returned. An invalid value for {type} produces an error. @@ -5770,8 +5770,8 @@ getwininfo([{winid}]) *getwininfo()* Returns information about windows as a List with Dictionaries. If {winid} is given Information about the window with that ID - is returned. If the window does not exist the result is an - empty list. + is returned, as a List with one item. If the window does not + exist the result is an empty list. Without {winid} information about all the windows in all the tab pages is returned. @@ -8606,14 +8606,14 @@ searchcount([{options}]) *searchcoun if result.total > result.maxcount && \ result.current > result.maxcount return printf(' /%s [>%d/>%d]', @/, - \ result.current, result.total) + \ result.current, result.total) elseif result.total > result.maxcount return printf(' /%s [%d/>%d]', @/, - \ result.current, result.total) + \ result.current, result.total) endif endif return printf(' /%s [%d/%d]', @/, - \ result.current, result.total) + \ result.current, result.total) endfunction let &statusline .= '%{LastSearchCount()}' @@ -9386,7 +9386,9 @@ simplify({filename}) *simplify()* Unix) are not resolved. If the first path component in {filename} designates the current directory, this will be valid for the result as well. A trailing path separator is - not removed either. + not removed either. On Unix "//path" is unchanged, but + "///path" is simplified to "/path" (this follows the Posix + standard). Example: > simplify("./dir/.././/file/") == "./file/" < Note: The combination "dir/.." is only removed if "dir" is @@ -9696,7 +9698,7 @@ state([{what}]) *state()* m halfway a mapping, :normal command, feedkeys() or stuffed command o operator pending or waiting for a command argument, - e.g. after |f| + e.g. after |f| a Insert mode autocomplete active x executing an autocommand w blocked on waiting, e.g. ch_evalexpr(), ch_read() and @@ -10450,9 +10452,9 @@ terminalprops() *terminalprops()* If the |+termresponse| feature is missing then the result is an empty dictionary. - If "cursor_style" is 'y' then |t_RS| will be send to request the + If "cursor_style" is 'y' then |t_RS| will be sent to request the current cursor style. - If "cursor_blink_mode" is 'y' then |t_RC| will be send to + If "cursor_blink_mode" is 'y' then |t_RC| will be sent to request the cursor blink status. "cursor_style" and "cursor_blink_mode" are also set if |t_u7| is not empty, Vim will detect the working of sending |t_RS| @@ -10916,7 +10918,7 @@ win_screenpos({nr}) *win_screenpos() GetWinid()->win_screenpos() < win_splitmove({nr}, {target} [, {options}]) *win_splitmove()* - Move the window {nr} to a new split of the window {target}. + Move the window {nr} to a new split of the window {target}. This is similar to moving to {target}, creating a new window using |:split| but having the same contents as window {nr}, and then closing {nr}.
--- a/runtime/doc/mlang.txt +++ b/runtime/doc/mlang.txt @@ -1,4 +1,4 @@ -*mlang.txt* For Vim version 8.2. Last change: 2019 May 05 +*mlang.txt* For Vim version 8.2. Last change: 2020 Jun 16 VIM REFERENCE MANUAL by Bram Moolenaar
--- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -3897,6 +3897,7 @@ E105 mbyte.txt /*E105* E107 eval.txt /*E107* E108 eval.txt /*E108* E109 eval.txt /*E109* +E1094 vim9.txt /*E1094* E11 cmdline.txt /*E11* E110 eval.txt /*E110* E111 eval.txt /*E111* @@ -5798,6 +5799,7 @@ coding-style develop.txt /*coding-style* col() eval.txt /*col()* coldfusion.vim syntax.txt /*coldfusion.vim* collapse tips.txt /*collapse* +collate-variable eval.txt /*collate-variable* color-xterm syntax.txt /*color-xterm* coloring syntax.txt /*coloring* colortest.vim syntax.txt /*colortest.vim* @@ -9723,6 +9725,7 @@ v:charconvert_from eval.txt /*v:charconv v:charconvert_to eval.txt /*v:charconvert_to* v:cmdarg eval.txt /*v:cmdarg* v:cmdbang eval.txt /*v:cmdbang* +v:collate eval.txt /*v:collate* v:completed_item eval.txt /*v:completed_item* v:count eval.txt /*v:count* v:count1 eval.txt /*v:count1*
--- a/runtime/doc/testing.txt +++ b/runtime/doc/testing.txt @@ -1,4 +1,4 @@ -*testing.txt* For Vim version 8.2. Last change: 2020 Jun 13 +*testing.txt* For Vim version 8.2. Last change: 2020 Jun 15 VIM REFERENCE MANUAL by Bram Moolenaar
--- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 8.2. Last change: 2020 Jun 14 +*todo.txt* For Vim version 8.2. Last change: 2020 Jun 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -40,16 +40,16 @@ browser use: https://github.com/vim/vim/ Include src/po/vim.pot ? +See if resizing a terminal can be fixed. + Vim9 script: Making everything work: -- assignment to script var should check type -- Compile: let [var, var] = expr - share code for :let between compiled and uncompiled? -- do not allow "let g:var = value", must drop "let" +- Error for "g:var: string = 'value'" +- Make func()->append('$') work - value is last argument, not first. #6305 - possible memory leak in test_vim9_func through compile_nested_function. - memory leaks in test_vim9_expr - memory leaks in test_vim9_script -- Test that a script-local function in Vim9 script cannot be deleted. +- more return types depending on the first argument, like sort(). - Check that when sourcing a Vim9 script, only the global items can be used. - Make "true" and "false" work in vim9script - Test that a function defined inside a :def function is local to that @@ -240,10 +240,12 @@ Terminal emulator window: conversions. Error numbers available: -E489, E610, E611, E653, E856, E857, E861 +E489, E610, E611, E653, E856 Remove SPACE_IN_FILENAME ? It is only used for completion. +Patch to use collaction based sorting. (Christian Brabandt, #6229) + Can we detect true color support? https://gist.github.com/XVilka/8346728 Try setting a color then request the current color, like using t_u7. @@ -272,6 +274,8 @@ The buffer list and windows are locked, How about removing Atari MiNT support? src/Make_mint.mak, src/os_mint.h, matches with __MINT__ +Patch to make :q work with local arglist. (Christian Brabandt, #6286) + Patch to fix drawing error with DirectX. (James Grant, #5688) Causes flicker on resizing. Workaround from Ken Takata. How about only setting the attribute when part of the Vim window is offscreen? @@ -285,6 +289,8 @@ Motif: Build on Ubuntu can't enter any t Running test_gui and test_gui_init with Motif sometimes kills the window manager. Problem with Motif? +Patch to add :argdedupe. (Nir Lichtman, #6235) + :map output does not clear the reset of the command line. (#5623, also see #5962) @@ -1402,9 +1408,6 @@ the system encoding (usually utf-8). MS-Windows: use WS_HIDE instead of SW_SHOWMINNOACTIVE in os_win32.c? Otherwise task flickers in taskbar. -Should make ":@r" handle line continuation. (Cesar Romani, 2016 Jun 26) -Also for ":@.". - Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925) Have a way to get the call stack, in a function and from an exception.
--- a/runtime/doc/usr_11.txt +++ b/runtime/doc/usr_11.txt @@ -211,7 +211,7 @@ will automatically delete it: - The flag that the file was modified is not set. - The process is not running. -You can programatically deal with this situation with the |FileChangedShell| +You can programmatically deal with this situation with the |FileChangedShell| autocommand event.
--- a/runtime/doc/usr_46.txt +++ b/runtime/doc/usr_46.txt @@ -112,7 +112,7 @@ Although it's shorter to do: > Legacy Vim script does have type checking, but this happens at runtime, when the code is executed. And it's permissive, often a computation gives an -unexpected value instead of reporting an error . Thus you can define a +unexpected value instead of reporting an error. Thus you can define a function and think it's fine, but see a problem only later when it is called: > let s:collected = '' func ExtendAndReturn(add) @@ -142,7 +142,7 @@ you did wrong: > Vim9 script is strict, it uses the "+" operator only for numbers and floats. For string concatenation ".." must be used. This avoids mistakes and avoids -the automatic conversion that gave a suprising result above. So you change +the automatic conversion that gave a surprising result above. So you change the first line of the function to: > s:collected ..= add And now it works.
--- a/runtime/doc/usr_toc.txt +++ b/runtime/doc/usr_toc.txt @@ -1,4 +1,4 @@ -*usr_toc.txt* For Vim version 8.2. Last change: 2020 Jun 11 +*usr_toc.txt* For Vim version 8.2. Last change: 2020 Jun 15 VIM USER MANUAL - by Bram Moolenaar @@ -340,6 +340,12 @@ Make Vim work as you like it. |45.4| Editing files with a different encoding |45.5| Entering language text +|usr_46.txt| Write plugins using Vim9 script + |46.1| Introduction + |46.2| Variable declarations + |46.3| Functions and types + |46.?| Using a Vim9 script from legacy script + ============================================================================== Making Vim Run ~
--- a/runtime/doc/vim9.txt +++ b/runtime/doc/vim9.txt @@ -1,4 +1,4 @@ -*vim9.txt* For Vim version 8.2. Last change: 2020 Jun 14 +*vim9.txt* For Vim version 8.2. Last change: 2020 Jun 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,7 +30,7 @@ THIS IS STILL UNDER DEVELOPMENT - ANYTHI Vim script has been growing over time, while preserving backwards compatibility. That means bad choices from the past often can't be changed -and compability with Vi restricts possible solutions. Execution is quite +and compatibility with Vi restricts possible solutions. Execution is quite slow, each line is parsed every time it is executed. The main goal of Vim9 script is to drastically improve performance. This is @@ -68,7 +68,7 @@ In Vim script comments normally start wi start of a string, thus in many places it cannot be used. In Vim9 script a comment can also start with #. In Vi this is a command to list text with numbers, but you can also use `:number` for that. > - let count = 0 # number of occurences + let count = 0 # number of occurrences To improve readability there must be a space between the command and the # that starts a comment. Note that #{ is the start of a dictionary, therefore @@ -269,6 +269,13 @@ possible AFTER the operators. For examp PosFunc(arg) : NegFunc(arg) +A special case is "->" for function call chains, it can appear in the next +line: > + let result = GetBuilder() + ->BuilderSetWidth(333) + ->BuilderSetHeight(777) + ->BuilderBuild() + Note that "enddef" cannot be used at the start of a continuation line, it ends the current function. @@ -566,7 +573,7 @@ defined (otherwise script-local) items: Import ~ - *:import* *:imp* + *:import* *:imp* *E1094* The exported items can be imported individually in another Vim9 script: > import EXPORTED_CONST from "thatscript.vim" import MyClass from "myclass.vim" @@ -692,7 +699,7 @@ A, B and C, where A calls B, B calls C, to reorder the functions to avoid forward references. An alternative would be to first scan through the file to locate items and -figure out their type, so that forward refeferences are found, and only then +figure out their type, so that forward references are found, and only then execute the script and compile the functions. This means the script has to be parsed twice, which is slower, and some conditions at the script level, such as checking if a feature is supported, are hard to use. An attempt was made
--- 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: 2020 Jun 07 +" Last Change: 2020 Jun 15 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -237,7 +237,7 @@ au BufNewFile,BufRead */etc/blkid.tab,*/ au BufNewFile,BufRead *bsd,*.bsdl setf bsdl " Bazel (http://bazel.io) -autocmd BufRead,BufNewFile *.bzl,WORKSPACE,BUILD.bazel setf bzl +autocmd BufRead,BufNewFile *.bzl,WORKSPACE,BUILD.bazel setf bzl if has("fname_case") " There is another check for BUILD further below. autocmd BufRead,BufNewFile BUILD setf bzl @@ -625,8 +625,8 @@ au BufNewFile,BufRead *.mo,*.gdmo setf au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom " Git -au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit -au BufNewFile,BufRead *.git/config,.gitconfig,/etc/gitconfig setf gitconfig +au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit +au BufNewFile,BufRead *.git/config,.gitconfig,/etc/gitconfig setf gitconfig au BufNewFile,BufRead */.config/git/config setf gitconfig au BufNewFile,BufRead .gitmodules,*.git/modules/*/config setf gitconfig if !empty($XDG_CONFIG_HOME) @@ -770,11 +770,11 @@ au BufNewFile,BufRead *.inf,*.INF setf au BufNewFile,BufRead */etc/initng/*/*.i,*.ii setf initng " Innovation Data Processing -au BufRead,BufNewFile upstream.dat\c,upstream.*.dat\c,*.upstream.dat\c setf upstreamdat -au BufRead,BufNewFile fdrupstream.log,upstream.log\c,upstream.*.log\c,*.upstream.log\c,UPSTREAM-*.log\c setf upstreamlog +au BufRead,BufNewFile upstream.dat\c,upstream.*.dat\c,*.upstream.dat\c setf upstreamdat +au BufRead,BufNewFile fdrupstream.log,upstream.log\c,upstream.*.log\c,*.upstream.log\c,UPSTREAM-*.log\c setf upstreamlog au BufRead,BufNewFile upstreaminstall.log\c,upstreaminstall.*.log\c,*.upstreaminstall.log\c setf upstreaminstalllog -au BufRead,BufNewFile usserver.log\c,usserver.*.log\c,*.usserver.log\c setf usserverlog -au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c setf usw2kagtlog +au BufRead,BufNewFile usserver.log\c,usserver.*.log\c,*.usserver.log\c setf usserverlog +au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c setf usw2kagtlog " Ipfilter au BufNewFile,BufRead ipf.conf,ipf6.conf,ipf.rules setf ipfilter @@ -1073,7 +1073,7 @@ au BufNewFile,BufRead Mutt{ng,}rc setf au BufRead,BufNewfile *.n1ql,*.nql setf n1ql " Nano -au BufNewFile,BufRead */etc/nanorc,*.nanorc setf nanorc +au BufNewFile,BufRead */etc/nanorc,*.nanorc setf nanorc " Nastran input/DMAP "au BufNewFile,BufRead *.dat setf nastran @@ -1156,7 +1156,7 @@ au BufNewFile,BufRead *.dpr setf pasca au BufNewFile,BufRead *.pdf setf pdf " PCMK - HAE - crm configure edit -au BufNewFile,BufRead *.pcmk setf pcmk +au BufNewFile,BufRead *.pcmk setf pcmk " Perl if has("fname_case") @@ -1646,10 +1646,10 @@ au BufNewFile,BufRead *.cm setf voscm " Swift au BufNewFile,BufRead *.swift setf swift -au BufNewFile,BufRead *.swift.gyb setf swiftgyb +au BufNewFile,BufRead *.swift.gyb setf swiftgyb " Swift Intermediate Language -au BufNewFile,BufRead *.sil setf sil +au BufNewFile,BufRead *.sil setf sil " Sysctl au BufNewFile,BufRead */etc/sysctl.conf,*/etc/sysctl.d/*.conf setf sysctl @@ -2066,7 +2066,7 @@ au BufNewFile,BufRead *fvwm2rc* au BufNewFile,BufRead */tmp/lltmp* call s:StarSetf('gedcom') " Git -au BufNewFile,BufRead */.gitconfig.d/*,/etc/gitconfig.d/* call s:StarSetf('gitconfig') +au BufNewFile,BufRead */.gitconfig.d/*,/etc/gitconfig.d/* call s:StarSetf('gitconfig') " Gitolite au BufNewFile,BufRead */gitolite-admin/conf/* call s:StarSetf('gitolite')
--- a/runtime/ftplugin/vim.vim +++ b/runtime/ftplugin/vim.vim @@ -1,7 +1,7 @@ " Vim filetype plugin " Language: Vim " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2020 May 17 +" Last Change: 2020 Jun 16 " Only do this when not done yet for this buffer if exists("b:did_ftplugin") @@ -83,8 +83,7 @@ endif if exists("loaded_matchit") let b:match_ignorecase = 0 let b:match_words = - \ '\<fu\%[nction]\>:\<retu\%[rn]\>:\<endf\%[unction]\>,' . - \ '\<def\>:\<retu\%[rn]\>:\<enddef\>,' . + \ '\<\%(fu\%[nction]\|def\)\>:\<retu\%[rn]\>:\<\%(endf\%[unction]\|enddef\)\>,' . \ '\<\(wh\%[ile]\|for\)\>:\<brea\%[k]\>:\<con\%[tinue]\>:\<end\(w\%[hile]\|fo\%[r]\)\>,' . \ '\<if\>:\<el\%[seif]\>:\<en\%[dif]\>,' . \ '{:},' .
--- a/runtime/indent/html.vim +++ b/runtime/indent/html.vim @@ -2,7 +2,7 @@ " Header: "{{{ " Maintainer: Bram Moolenaar " Original Author: Andy Wokula <anwoku@yahoo.de> -" Last Change: 2019 Mar 20 +" Last Change: 2020 Jun 18 " Version: 1.0 " Description: HTML indent script with cached state for faster indenting on a " range of lines. @@ -223,7 +223,7 @@ endfunc "}}} call s:AddITags(s:indent_tags, [ \ 'a', 'abbr', 'acronym', 'address', 'b', 'bdo', 'big', \ 'blockquote', 'body', 'button', 'caption', 'center', 'cite', 'code', - \ 'colgroup', 'del', 'dfn', 'dir', 'div', 'dl', 'em', 'fieldset', 'font', + \ 'colgroup', 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', 'em', 'fieldset', 'font', \ 'form', 'frameset', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'html', \ 'i', 'iframe', 'ins', 'kbd', 'label', 'legend', 'li', \ 'map', 'menu', 'noframes', 'noscript', 'object', 'ol',
--- a/runtime/indent/testdir/html.in +++ b/runtime/indent/testdir/html.in @@ -23,4 +23,14 @@ bar"> text </div> +<dl> +<dd> +dd text +</dd> +<dt> +dt text +</dt> +</dl> + + " END_INDENT
--- a/runtime/indent/testdir/html.ok +++ b/runtime/indent/testdir/html.ok @@ -23,4 +23,14 @@ text </div> +<dl> + <dd> + dd text + </dd> + <dt> + dt text + </dt> +</dl> + + " END_INDENT
--- a/runtime/plugin/matchparen.vim +++ b/runtime/plugin/matchparen.vim @@ -1,6 +1,6 @@ " Vim plugin for showing matching parens " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2019 Oct 28 +" Last Change: 2020 Jun 18 " Exit quickly when: " - this plugin was already loaded (or disabled) @@ -21,6 +21,7 @@ endif augroup matchparen " Replace all matchparen autocommands autocmd! CursorMoved,CursorMovedI,WinEnter * call s:Highlight_Matching_Pair() + autocmd! WinLeave * call s:Remove_Matches() if exists('##TextChanged') autocmd! TextChanged,TextChangedI * call s:Highlight_Matching_Pair() endif @@ -38,10 +39,7 @@ set cpo-=C " for any matching paren. func s:Highlight_Matching_Pair() " Remove any previous match. - if exists('w:paren_hl_on') && w:paren_hl_on - silent! call matchdelete(3) - let w:paren_hl_on = 0 - endif + call s:Remove_Matches() " Avoid that we remove the popup menu. " Return when there are no colors (looks like the cursor jumps). @@ -195,6 +193,14 @@ func s:Highlight_Matching_Pair() endif endfunction +func s:Remove_Matches() + if exists('w:paren_hl_on') && w:paren_hl_on + silent! call matchdelete(3) + let w:paren_hl_on = 0 + endif +endfunc + + " Define commands that will disable and enable the plugin. command DoMatchParen call s:DoMatchParen() command NoMatchParen call s:NoMatchParen()