diff options
40 files changed, 653 insertions, 223 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index b33c37bff5..e840ac2d07 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -171,6 +171,7 @@ runtime/ftplugin/pbtxt.vim @lakshayg runtime/ftplugin/pdf.vim @tpope runtime/ftplugin/perl.vim @petdance @dkearns runtime/ftplugin/pod.vim @petdance @dkearns +runtime/ftplugin/poefilter.vim @ObserverOfTime runtime/ftplugin/postscr.vim @mrdubya runtime/ftplugin/ps1.vim @heaths runtime/ftplugin/ps1xml.vim @heaths @@ -192,6 +193,7 @@ runtime/ftplugin/sdoc.vim @gpanders runtime/ftplugin/sh.vim @dkearns runtime/ftplugin/solution.vim @dkearns runtime/ftplugin/spec.vim @ignatenkobrain +runtime/ftplugin/ssa.vim @ObserverOfTime runtime/ftplugin/swayconfig.vim @jamespeapen runtime/ftplugin/systemverilog.vim @Kocha runtime/ftplugin/tap.vim @petdance @@ -397,6 +399,7 @@ runtime/syntax/perl.vim @petdance runtime/syntax/php.vim @TysonAndre runtime/syntax/plsql.vim @lee-lindley runtime/syntax/pod.vim @petdance +runtime/syntax/poefilter.vim @ObserverOfTime runtime/syntax/postscr.vim @mrdubya runtime/syntax/privoxy.vim @dkearns runtime/syntax/prolog.vim @XVilka @@ -424,12 +427,14 @@ runtime/syntax/sass.vim @tpope runtime/syntax/scala.vim @derekwyatt runtime/syntax/scss.vim @tpope runtime/syntax/sdoc.vim @gpanders +runtime/syntax/sed.vim @dkearns runtime/syntax/sh.vim @cecamp runtime/syntax/sm.vim @cecamp runtime/syntax/spec.vim @ignatenkobrain -runtime/syntax/srt.vim @ObserverOfTime runtime/syntax/sqloracle.vim @chrisbra runtime/syntax/squirrel.vim @zenmatic +runtime/syntax/srt.vim @ObserverOfTime +runtime/syntax/ssa.vim @ObserverOfTime runtime/syntax/sshconfig.vim @Jakuje runtime/syntax/sshdconfig.vim @Jakuje runtime/syntax/sudoers.vim @e-kwsm diff --git a/runtime/autoload/dist/vimindent.vim b/runtime/autoload/dist/vimindent.vim index 00977dc3d8..24e2c93964 100644 --- a/runtime/autoload/dist/vimindent.vim +++ b/runtime/autoload/dist/vimindent.vim @@ -2,7 +2,7 @@ vim9script # Language: Vim script # Maintainer: github user lacygoill -# Last Change: 2022 Sep 24 +# Last Change: 2022 Oct 15 # NOTE: Whenever you change the code, make sure the tests are still passing: # @@ -156,7 +156,7 @@ const ASSIGNS_HEREDOC: string = $'^\%({COMMENT}\)\@!.*\%({HEREDOC_OPERATOR}\)\s\ # CD_COMMAND {{{3 -const CD_COMMAND: string = $'[lt]\=cd!\=\s\+-{END_OF_COMMAND}' +const CD_COMMAND: string = $'\<[lt]\=cd!\=\s\+-{END_OF_COMMAND}' # HIGHER_ORDER_COMMAND {{{3 @@ -178,7 +178,7 @@ const HIGHER_ORDER_COMMAND: string = $'\%(^\|{BAR_SEPARATION}\)\s*\<\%(' .. patt # MAPPING_COMMAND {{{3 -const MAPPING_COMMAND: string = '\%(\<sil\%[ent]!\=\s\+\)\=[nvxsoilct]\=\%(nore\|un\)map!\=\s' +const MAPPING_COMMAND: string = '\%(\<sil\%[ent]!\=\s\+\)\=\<[nvxsoilct]\=\%(nore\|un\)map!\=\s' # NORMAL_COMMAND {{{3 @@ -222,7 +222,7 @@ END const ENDS_BLOCK_OR_CLAUSE: string = '^\s*\%(' .. patterns->join('\|') .. $'\){END_OF_COMMAND}' .. $'\|^\s*cat\%[ch]\%(\s\+\({PATTERN_DELIMITER}\).*\1\)\={END_OF_COMMAND}' - .. $'\|^\s*elseif\=\s\+\%({OPERATOR}\)\@!' + .. $'\|^\s*elseif\=\>\%({OPERATOR}\)\@!' # STARTS_CURLY_BLOCK {{{3 @@ -354,7 +354,7 @@ const LINE_CONTINUATION_AT_SOL: string = '^\s*\%(' const RANGE_AT_SOL: string = '^\s*:\S' # }}}1 # Interface {{{1 -export def Expr(lnum: number): number # {{{2 +export def Expr(lnum = v:lnum): number # {{{2 # line which is indented var line_A: dict<any> = {text: getline(lnum), lnum: lnum} # line above, on which we'll base the indent of line A @@ -409,6 +409,7 @@ export def Expr(lnum: number): number # {{{2 line_A->CacheBracketBlock() endif if line_A.lnum->IsInside('BracketBlock') + var is_in_curly_block: bool = IsInCurlyBlock() for block: dict<any> in b:vimindent.block_stack if line_A.lnum <= block.startlnum continue @@ -416,8 +417,7 @@ export def Expr(lnum: number): number # {{{2 if !block->has_key('startindent') block.startindent = Indent(block.startlnum) endif - if !block.is_curly_block - && !b:vimindent.block_stack[0].is_curly_block + if !is_in_curly_block return BracketBlockIndent(line_A, block) endif endfor @@ -520,7 +520,7 @@ enddef def g:GetVimIndent(): number # {{{2 # for backward compatibility - return Expr(v:lnum) + return Expr() enddef # }}}1 # Core {{{1 @@ -997,6 +997,11 @@ def IsRightBelow(lnum: number, syntax: string): bool # {{{3 && lnum > b:vimindent.endlnum enddef +def IsInCurlyBlock(): bool # {{{3 + return b:vimindent.block_stack + ->indexof((_, block: dict<any>): bool => block.is_curly_block) >= 0 +enddef + def IsInThisBlock(line_A: dict<any>, lnum: number): bool # {{{3 var pos: list<number> = getcurpos() cursor(lnum, [lnum, '$']->col()) diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim index 7d1a35c1a1..29310aabd4 100644 --- a/runtime/autoload/netrw.vim +++ b/runtime/autoload/netrw.vim @@ -1791,8 +1791,10 @@ fun! s:NetrwOptionsRestore(vt) " call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>")) if !exists("{a:vt}netrw_optionsave") " call Decho("case ".a:vt."netrw_optionsave : doesn't exist",'~'.expand("<slnum>")) -" call Decho("..doing filetype detect anyway") - filetype detect + if !isdirectory(expand('%')) +" call Decho("..doing filetype detect anyway") + filetype detect + endif " call Decho("..settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>")) " call Decho("..ro=".&l:ro." ma=".&l:ma." mod=".&l:mod." wrap=".&l:wrap." (filename<".expand("%")."> win#".winnr()." ft<".&ft.">)",'~'.expand("<slnum>")) " call Dret("s:NetrwOptionsRestore : ".a:vt."netrw_optionsave doesn't exist") @@ -1904,9 +1906,11 @@ fun! s:NetrwOptionsRestore(vt) " were having their filetype detect-generated settings overwritten by " NetrwOptionRestore. if &ft != "netrw" -" call Decho("before: filetype detect (ft=".&ft.")",'~'.expand("<slnum>")) - filetype detect -" call Decho("after : filetype detect (ft=".&ft.")",'~'.expand("<slnum>")) + if !isdirectory(expand('%')) +" call Decho("before: filetype detect (ft=".&ft.")",'~'.expand("<slnum>")) + filetype detect +" call Decho("after : filetype detect (ft=".&ft.")",'~'.expand("<slnum>")) + endif endif " call Decho("(s:NetrwOptionsRestore) lines=".&lines) " call Decho("settings buf#".bufnr("%")."<".bufname("%").">: ".((&l:ma == 0)? "no" : "")."ma ".((&l:mod == 0)? "no" : "")."mod ".((&l:bl == 0)? "no" : "")."bl ".((&l:ro == 0)? "no" : "")."ro fo=".&l:fo." a:vt=".a:vt,'~'.expand("<slnum>")) diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt index c2283358b8..d1d18c5c78 100644 --- a/runtime/doc/builtin.txt +++ b/runtime/doc/builtin.txt @@ -1,4 +1,4 @@ -*builtin.txt* For Vim version 9.0. Last change: 2022 Oct 10 +*builtin.txt* For Vim version 9.0. Last change: 2022 Oct 14 VIM REFERENCE MANUAL by Bram Moolenaar @@ -5404,7 +5404,8 @@ listener_add({callback} [, {buf}]) *listener_add()* the change; one if unknown or the whole line was affected; this is a byte index, first character has a value of one. - When lines are inserted the values are: + When lines are inserted (not when a line is split, e.g. by + typing CR in Insert mode) the values are: lnum line above which the new line is added end equal to "lnum" added number of lines inserted diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt index 38c173bce2..8cae93ab83 100644 --- a/runtime/doc/indent.txt +++ b/runtime/doc/indent.txt @@ -1,4 +1,4 @@ -*indent.txt* For Vim version 9.0. Last change: 2022 May 21 +*indent.txt* For Vim version 9.0. Last change: 2022 Oct 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -982,9 +982,12 @@ indentation: > PYTHON *ft-python-indent* -The amount of indent can be set for the following situations. The examples -given are the defaults. Note that the dictionary values are set to an -expression, so that you can change the value of 'shiftwidth' later. +The amount of indent can be set with the `g:python_indent` |Dictionary|, which +needs to be created before adding the items: > + let g:python_indent = {} +The examples given are the defaults. Note that the dictionary values are set +to an expression, so that you can change the value of 'shiftwidth' later +without having to update these values. Indent after an open paren: > let g:python_indent.open_paren = 'shiftwidth() * 2' diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 4c0d653c75..9de498b373 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 9.0. Last change: 2022 Jun 11 +*index.txt* For Vim version 9.0. Last change: 2022 Oct 15 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt index 7813177c26..5cbaf6733f 100644 --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -1,4 +1,4 @@ -*intro.txt* For Vim version 9.0. Last change: 2022 Sep 12 +*intro.txt* For Vim version 9.0. Last change: 2022 Oct 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -122,10 +122,10 @@ http://www.vim.org/maillist.php Bug reports: *bugs* *bug-reports* *bugreport.vim* There are three ways to report bugs: -1. Open an issue on GitHub: https://github.com/vim/vim/issues - The text will be forwarded to the vim-dev maillist. -2. For issues with runtime files, look in the header for an email address or +1. For issues with runtime files, look in the header for an email address or any other way to report it to the maintainer. +2. Open an issue on GitHub: https://github.com/vim/vim/issues + The text will be forwarded to the vim-dev maillist. 3. Send bug reports to: Vim Developers <vim-dev@vim.org> This is a maillist, you need to become a member first and many people will see the message. If you don't want that, e.g. because it is a security diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 9ecb64e59a..5beb6a2834 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 9.0. Last change: 2022 Oct 03 +*options.txt* For Vim version 9.0. Last change: 2022 Oct 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -7534,7 +7534,7 @@ A jump table for the options with a short description can be found at |Q_op|. When on, splitting a window will put the new window below the current one. |:split| - *'splitkeep'* *'spk' + *'splitkeep'* *'spk'* 'splitkeep' 'spk' string (default "cursor") global The value of this option determines the scroll behavior when opening, @@ -7548,7 +7548,7 @@ A jump table for the options with a short description can be found at |Q_op|. For the "screen" and "topline" values, the cursor position will be changed when necessary. In this case, the jumplist will be populated with the previous cursor position. For "screen", the text cannot always - be kept on the same screen line when 'wrap' is enabled. + be kept on the same screen line when 'wrap' is enabled. *'splitright'* *'spr'* *'nosplitright'* *'nospr'* 'splitright' 'spr' boolean (default off) diff --git a/runtime/doc/os_haiku.txt b/runtime/doc/os_haiku.txt index be08b4a319..1a808625f4 100644 --- a/runtime/doc/os_haiku.txt +++ b/runtime/doc/os_haiku.txt @@ -47,7 +47,7 @@ features you can enable/disable. Haiku uses "ncurses6" as its terminal library, therefore you need to have "ncurses6_devel" package installed from HaikuDepot in order to configure -the Haiku build. Just append "--with-tlib=ncurses6" to ./configure command +the Haiku build. Just append "--with-tlib=ncurses" to ./configure command. Now you should use "make" to compile Vim, then "make install" to install it. For seamless integration into Haiku, the GUI-less vim binary should be @@ -56,12 +56,14 @@ additionally installed over the GUI version. Typical build commands are: ./configure --prefix=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY` \ --datarootdir=`finddir B_SYSTEM_NONPACKAGED_DATA_DIRECTORY` \ --mandir=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY`/documentation/man \ + --with-tlib=ncurses \ make clean make install ./configure --prefix=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY` \ --datarootdir=`finddir B_SYSTEM_NONPACKAGED_DATA_DIRECTORY` \ --mandir=`finddir B_SYSTEM_NONPACKAGED_DIRECTORY`/documentation/man \ + --with-tlib=ncurses \ --disable-gui make clean make install diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt index 59896ecfcf..f611fd977b 100644 --- a/runtime/doc/popup.txt +++ b/runtime/doc/popup.txt @@ -1,4 +1,4 @@ -*popup.txt* For Vim version 9.0. Last change: 2022 Jun 16 +*popup.txt* For Vim version 9.0. Last change: 2022 Oct 07 VIM REFERENCE MANUAL by Bram Moolenaar @@ -366,7 +366,6 @@ popup_findpreview() *popup_findpreview()* Get the |window-ID| for the popup preview window. Return zero if there is none. - popup_getoptions({id}) *popup_getoptions()* Return the {options} for popup {id} in a Dict. A zero value means the option was not set. For "zindex" the diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index fab98302fd..370e1f2fae 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 9.0. Last change: 2022 Oct 02 +*quickref.txt* For Vim version 9.0. Last change: 2022 Oct 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -785,6 +785,7 @@ Short explanation of each option: *option-list* 'lines' number of lines in the display 'linespace' 'lsp' number of pixel lines to use between characters 'lisp' automatic indenting for Lisp +'lispoptions' 'lop' changes how Lisp indenting is done 'lispwords' 'lw' words that change how lisp indenting works 'list' show <Tab> and <EOL> 'listchars' 'lcs' characters for displaying in list mode diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt index 059c6393d2..0f79afdf4b 100644 --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -628,6 +628,11 @@ When Vim starts up, after processing your .vimrc, it scans all directories in directories are added to 'runtimepath'. Then all the plugins are loaded. See |packload-two-steps| for how these two steps can be useful. +To allow for calling into package functionality while parsing your .vimrc, +|:colorscheme| and |autoload| will both automatically search under 'packpath' +as well in addition to 'runtimepath'. See the documentation for each for +details. + In the example Vim will find "pack/foo/start/foobar/plugin/foo.vim" and adds "~/.vim/pack/foo/start/foobar" to 'runtimepath'. diff --git a/runtime/doc/rileft.txt b/runtime/doc/rileft.txt index 31a382b6c5..623ac387b4 100644 --- a/runtime/doc/rileft.txt +++ b/runtime/doc/rileft.txt @@ -1,4 +1,4 @@ -*rileft.txt* For Vim version 9.0. Last change: 2022 Apr 03 +*rileft.txt* For Vim version 9.0. Last change: 2022 Oct 12 VIM REFERENCE MANUAL by Avner Lottem diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 1775af73b3..89ac893fe1 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 9.0. Last change: 2022 Oct 03 +*syntax.txt* For Vim version 9.0. Last change: 2022 Oct 14 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3021,16 +3021,25 @@ satisfied with it for my own projects. SED *sed.vim* *ft-sed-syntax* To make tabs stand out from regular blanks (accomplished by using Todo -highlighting on the tabs), define "highlight_sedtabs" by putting > - - :let highlight_sedtabs = 1 +highlighting on the tabs), define "g:sed_highlight_tabs" by putting > + :let g:sed_highlight_tabs = 1 +< in the vimrc file. (This special highlighting only applies for tabs inside search patterns, replacement texts, addresses or text included by an Append/Change/Insert command.) If you enable this option, it is also a good idea to set the tab width to one character; by doing that, you can easily count the number of tabs in a string. +GNU sed allows comments after text on the same line. BSD sed only allows +comments where "#" is the first character of the line. To enforce BSD-style +comments, i.e. mark end-of-line comments as errors, use: > + + :let g:sed_dialect = "bsd" +< +Note that there are other differences between GNU sed and BSD sed which are +not (yet) affected by this setting. + Bugs: The transform command (y) is treated exactly like the substitute diff --git a/runtime/doc/tags b/runtime/doc/tags index 639938f6f0..7c25a9aa23 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -451,6 +451,7 @@ $quote eval.txt /*$quote* 'lines' options.txt /*'lines'* 'linespace' options.txt /*'linespace'* 'lisp' options.txt /*'lisp'* +'lispoptions' options.txt /*'lispoptions'* 'lispwords' options.txt /*'lispwords'* 'list' options.txt /*'list'* 'listchars' options.txt /*'listchars'* @@ -458,6 +459,7 @@ $quote eval.txt /*$quote* 'lmap' options.txt /*'lmap'* 'lnr' options.txt /*'lnr'* 'loadplugins' options.txt /*'loadplugins'* +'lop' options.txt /*'lop'* 'lpl' options.txt /*'lpl'* 'lrm' options.txt /*'lrm'* 'ls' options.txt /*'ls'* @@ -954,6 +956,7 @@ $quote eval.txt /*$quote* 'spelloptions' options.txt /*'spelloptions'* 'spellsuggest' options.txt /*'spellsuggest'* 'spf' options.txt /*'spf'* +'spk' options.txt /*'spk'* 'spl' options.txt /*'spl'* 'splitbelow' options.txt /*'splitbelow'* 'splitkeep' options.txt /*'splitkeep'* @@ -5547,6 +5550,7 @@ TerminalWinOpen autocmd.txt /*TerminalWinOpen* TextChanged autocmd.txt /*TextChanged* TextChangedI autocmd.txt /*TextChangedI* TextChangedP autocmd.txt /*TextChangedP* +TextChangedT autocmd.txt /*TextChangedT* TextYankPost autocmd.txt /*TextYankPost* Transact-SQL ft_sql.txt /*Transact-SQL* U undo.txt /*U* @@ -5574,7 +5578,6 @@ VimResume autocmd.txt /*VimResume* VimSuspend autocmd.txt /*VimSuspend* Vimball-copyright pi_vimball.txt /*Vimball-copyright* Virtual-Replace-mode insert.txt /*Virtual-Replace-mode* -VisVim if_ole.txt /*VisVim* Visual visual.txt /*Visual* Visual-mode visual.txt /*Visual-mode* W motion.txt /*W* @@ -9034,6 +9037,7 @@ popup_dialog() popup.txt /*popup_dialog()* popup_dialog-example popup.txt /*popup_dialog-example* popup_filter_menu() popup.txt /*popup_filter_menu()* popup_filter_yesno() popup.txt /*popup_filter_yesno()* +popup_findecho() popup.txt /*popup_findecho()* popup_findinfo() popup.txt /*popup_findinfo()* popup_findpreview() popup.txt /*popup_findpreview()* popup_getoptions() popup.txt /*popup_getoptions()* diff --git a/runtime/doc/terminal.txt b/runtime/doc/terminal.txt index 4d02558e48..3acc51382d 100644 --- a/runtime/doc/terminal.txt +++ b/runtime/doc/terminal.txt @@ -1,4 +1,4 @@ -*terminal.txt* For Vim version 9.0. Last change: 2022 Jun 09 +*terminal.txt* For Vim version 9.0. Last change: 2022 Oct 10 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/textprop.txt b/runtime/doc/textprop.txt index 4aa00acaee..2ecf4af2e9 100644 --- a/runtime/doc/textprop.txt +++ b/runtime/doc/textprop.txt @@ -1,4 +1,4 @@ -*textprop.txt* For Vim version 9.0. Last change: 2022 Sep 21 +*textprop.txt* For Vim version 9.0. Last change: 2022 Oct 13 VIM REFERENCE MANUAL by Bram Moolenaar @@ -172,6 +172,9 @@ prop_add({lnum}, {col}, {props}) wrap wrap the text to the next line truncate truncate the text to make it fit When omitted "truncate" is used. + Note that this applies to the individual text + property, the 'wrap' option sets the overall + behavior All fields except "type" are optional. It is an error when both "length" and "end_lnum" or "end_col" diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 0e125204c6..d6562d5a9c 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 9.0. Last change: 2022 Oct 03 +*todo.txt* For Vim version 9.0. Last change: 2022 Oct 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -39,22 +39,12 @@ browser use: https://github.com/vim/vim/issues/1234 -------------------- Known bugs and current work ----------------------- 'smoothscroll': +- CTRL-E and gj in long line with 'scrolloff' 5 not working well yet. - computing 'scrolloff' position row use w_skipcol -Add a string to the 'display' option ("smoothscroll" ?) to make CTRL-E and -CTRL-Y scroll one screen line, also if this means the first line doesn't start -with the first character (like what happens with a last line that doesn't -fit). Display "<<<" at the start of the first visible line (like "@@@" is -displayed in the last line). (Arseny Nasokin, #5154) -Neovim PR: https://github.com/neovim/neovim/pull/11014 +Check textprop right/above/below with 'number' set and "n" in 'cpo'. -Use :defer command: - - Use "D" flag of writefile() and mkdir() in tests. - (testdir/test_p*.vim done) - -Fix for powershell: #11257 - -Change boolean 'splitscroll' into string 'splitkeep'. #11258 +Don't do anything for ":!". #11372 Further Vim9 improvements, possibly after launch: @@ -70,7 +60,8 @@ Further Vim9 improvements, possibly after launch: Popup windows: - 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) - #10210 Probably need to update all popup windows (they may overlap) + #10210 Example that shows the need on the issue. + Probably need to update all popup windows (they may overlap) If the display is scrolled need to redraw everything later. - Add a flag to make a popup window focusable? CTRL-W P cycle over any preview window or focusable popup, end up back in @@ -174,7 +165,10 @@ Terminal emulator window: conversions. Autoconf: must use autoconf 2.69, later version generates lots of warnings -- try using autoconf 2.71 and fix all "obsolete" warnings +- try using autoconf 2.71 and fix all "obsolete" warnings #11322 + +Problem with Visual highlight when 'linebreak' and 'showbreak' are set. +#11272 Can deref_func_name() and deref_function_name() be merged? @@ -196,10 +190,17 @@ feature is supported or not. Replaces the xterm mechanism to request each entry separately. #6609 Multiplexers (screen, tmux) can request it to the underlying terminal, and pass it on with modifications. +How to get all the text quickly (also over ssh)? Can we use a side channel? Using "A" and "o" in manually created fold (in empty buffer) does not behave consistenly (James McCoy, #10698) +In a timer callback, when using ":echo" and then input() the message is +overwritten. Could use ":echowin" and call redraw_cmd() in get_user_input(). +#11299 + +Syntax include problem: #11277. Related to Patch 8.2.2761 + To avoid flicker: add an option that when a screen clear is requested, instead of clearing it draws everything and uses "clear to end of line" for every line. Resetting 't_ut' already causes this? @@ -233,11 +234,10 @@ MS-Windows: did path modifier :p:8 stop working? #8600 Version of getchar() that does not move the cursor - #10603 Use a separate argument for the new flag. -Add "lastline" entry to 'fillchars' to specify a character instead of '@'. -#10963 - test_arglist func Test_all_not_allowed_from_cmdwin() hangs on MS-Windows. +Can we add highlighting to ":echowindow"? + Information for a specific terminal (e.g. gnome, tmux, konsole, alacritty) is spread out. Make a section with copy/paste examples of script and pointers to more information. @@ -450,8 +450,6 @@ find them. (Max Kukartsev, #6218) Enable 'termbidi' if $VTE_VERSION >= 5703 ? -Sound: support on Mac? Or does libcanberra work there? - Python 3.8 doesn't work. (Antonios Hadjigeorgalis, #5509) "--cleanFOO" does not result in an error. (#5537) @@ -601,6 +599,11 @@ negative. (see #4326) tab page. (Ingo Karkat, #4324) :call settabwinvar(1, 1, '&cmdheight', 2) also doesn't work well. +When opening a file, allow for specifying the initial column position: + vim +12:5 file.txt line 12 column 5 + :edit +12:5 file.txt +Should probably use the column as the character index. + This modeline throws unexpected errors: (#4165) vim: syn=nosyntax @@ -3074,9 +3077,6 @@ Macintosh: line is too short. Add a word in 'scrollopt' to allow moving the cursor to longer line that is visible. A similar thing is done for the GUI when using the horizontal scrollbar. -7 VisVim can only open one file. Hard to solve: each opened file is passed - with a separate invocation, would need to use timestamps to know the - invocations belong together. 8 When giving a ":bwipeout" command a file-changed dialog may popup for this buffer, which is pointless. (Mike Williams) 8 On MS-Windows ":make" doesn't show output while it is working. Use the diff --git a/runtime/doc/userfunc.txt b/runtime/doc/userfunc.txt index 806d8f76b8..46bd0c8554 100644 --- a/runtime/doc/userfunc.txt +++ b/runtime/doc/userfunc.txt @@ -482,6 +482,10 @@ then define the function like this: > echo "Done!" endfunction +If the file doesn't exist, Vim will also search in 'packpath' (under "start") +to allow calling packages' functions from your .vimrc when the packages have +not been added to 'runtimepath' yet (see |packages|). + The file name and the name used before the # in the function must match exactly, and the defined function must have the name exactly as it will be called. In Vim9 script the "g:" prefix must be used: > diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt index 97e1d5ce91..1d5c7e58aa 100644 --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 9.0. Last change: 2022 Jun 23 +*usr_41.txt* For Vim version 9.0. Last change: 2022 Oct 07 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_52.txt b/runtime/doc/usr_52.txt index 46f01089dc..787dd91e6a 100644 --- a/runtime/doc/usr_52.txt +++ b/ |