diff options
48 files changed, 204 insertions, 115 deletions
diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt index 35a5548f2c..669657aa02 100644 --- a/runtime/doc/channel.txt +++ b/runtime/doc/channel.txt @@ -1,4 +1,4 @@ -*channel.txt* For Vim version 8.2. Last change: 2022 Jun 04 +*channel.txt* For Vim version 8.2. Last change: 2022 Jun 23 VIM REFERENCE MANUAL by Bram Moolenaar @@ -464,8 +464,10 @@ a close callback to the channel. To read all normal output from a RAW channel that is available: > let output = ch_readraw(channel) -To read the error output: > +To read all error output from a RAW channel that is available:: > let output = ch_readraw(channel, {"part": "err"}) +Note that if the channel is in NL mode, ch_readraw() will only return one line +for each call. ch_read() and ch_readraw() use the channel timeout. When there is nothing to read within that time an empty string is returned. To specify a different diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 0b5022fcad..8d2d17aea8 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 8.2. Last change: 2022 Jun 21 +*options.txt* For Vim version 8.2. Last change: 2022 Jun 23 VIM REFERENCE MANUAL by Bram Moolenaar @@ -4955,8 +4955,8 @@ A jump table for the options with a short description can be found at |Q_op|. executing macros, registers and other commands that have not been typed. Also, updating the window title is postponed. To force an update use |:redraw|. - This may ocasionally cause display errors. It is only meant to be set - termporarily when performaing an operation where redrawing may cause + This may occasionally cause display errors. It is only meant to be set + temporarily when performing an operation where redrawing may cause flickering or cause a slow down. *'linebreak'* *'lbr'* *'nolinebreak'* *'nolbr'* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 048e3a2f6e..40f9bc038c 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -40,7 +40,6 @@ browser use: https://github.com/vim/vim/issues/1234 Prepare for the Vim 9.0 release: - Update version9.txt -- Adjust intro message to say "help version9". Further Vim9 improvements, possibly after launch: - Use Vim9 for more runtime files. @@ -203,6 +202,8 @@ Terminal emulator window: Patches considered for including: - use ngettext() in a few more places #10606 +- move f_hasmapto() to map.c #10611 +- allow for nesting of timeout, sketch in #10595 - Add "-n" option to xxd. #10599 - Support %e and %k in 'errorformat'. #9624 - Add support for "underdouble", "underdot" and "underdash". #9553 diff --git a/runtime/doc/usr_40.txt b/runtime/doc/usr_40.txt index af5c5d048c..f963e2079a 100644 --- a/runtime/doc/usr_40.txt +++ b/runtime/doc/usr_40.txt @@ -1,4 +1,4 @@ -*usr_40.txt* For Vim version 8.2. Last change: 2022 Jun 20 +*usr_40.txt* For Vim version 8.2. Last change: 2022 Jun 23 VIM USER MANUAL - by Bram Moolenaar @@ -464,7 +464,7 @@ The optional [++nested] flag allows for nesting of autocommands (see below), and finally, {command} is the command to be executed. When adding an autocommand the already existing ones remain. To avoid adding -the autocommand several time you should use this form: > +the autocommand several times you should use this form: > :augroup updateDate : autocmd! diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt index d53754a3fd..4438394757 100644 --- a/runtime/doc/version9.txt +++ b/runtime/doc/version9.txt @@ -248,15 +248,18 @@ Fuzzy match support for |:vimgrep|. Haiku support. |Haiku| Support for "lsp" channel mode to simplify LSP server RPC communication -|language-server-protocol|. +|language-server-protocol|. Support for using a Unix domain socket with a +|channel|. IPv6 support in channels |channel-address|. Support for sourcing lines from the current buffer. |:source-range| +Support for opening a terminal in a popup window. |popup-terminal| + Support for stopping profiling a Vim script: `:profile stop` and dumping the report to a file: `:profile dump` . |:profile| -Argument completion support for the |:scriptnames|, |:profile|, |:profdel|, -|:breakadd| and |:breakdel| commands. +Argument completion support for the |:breakadd|, |:breakdel|, |:diffget|, +|:diffput|, |:profile|, |:profdel| and |:scriptnames| commands. Support for setting the 'foldtext', 'completefunc', 'omnifunc', 'operatorfunc', 'thesaurusfunc', 'quickfixtextfunc', 'tagfunc', @@ -287,17 +290,9 @@ suggestions. Support for executing Ex commands in a map without changing the current mode |<Cmd>| and |<ScriptCmd>|. -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. - Add optional error code to |:cquit|. -Support for using a Unix domain socket with a |channel|. - -IPv6 support in channels |channel-address|. - -Call Vim functions from Lua (vim.call('func', 'arg')). +Support for calling Vim functions from Lua (vim.call() and vim.fn()). Recognize numbers as unsigned when "unsigned" is set in 'nrformats'. @@ -305,7 +300,8 @@ Allow setting underline color in terminal. Expand script ID using expand('<SID>'). |expand()| -Jump to the last accessed tab page using |g<Tab>|. +Jump to the last accessed tab page using |g<Tab>| and support using the +last accessed tab page in |:tabnext| et al. Locale aware sorting using |:sort| and |sort()|. @@ -343,15 +339,22 @@ 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. - -Add support for parsing the end line number (%e) and end column number -(%k) using 'errorformat'. +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. +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) +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|. @@ -367,6 +370,74 @@ 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 +|getbufinfo()|. + +Support |filter()| and |map()| for blob and string types. + +Support for using a multi-byte character for the tag kind. |tags-file-format| + +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 +t_fd and t_fe termcap codes for detecting focus events. + +Support for indenting C pragmas like normal code. (|cino-P|) + +Add support for defining the syntax fold level (|:syn-foldlevel|) + +Add support for using \<*xxx> in a string to prepend a modifier to a +character. (|expr-quote|). + +Add support trimming characters at the beginning or end of a string using +|trim()|. + +Make ":verbose pwd" show the scope of the directory. |:pwd-verbose| + +Add the "0o" notation for specifying octal numbers |scriptversion-4| + +Support for changing to the previous tab-local and window-local directories +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. + +Support mouse left-right scrolling in a terminal window. + +Updated colorschemes from https://github.com/vim/colorschemes is included. + +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. + +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 ============================================================================== @@ -383,9 +454,9 @@ The following features are now enabled in all the builds: The following features have been removed. They are either obsolete or didn't work properly: - - Athena GUI support (use Motif instead) + - Athena and neXTaw GUI support (use Motif instead) - EBCDIC support - - Atari MiNT + - Atari MiNT and BeOS - Mac Carbon GUI (use MacVim instead) The rgb.txt file is no longer included, use colors/lists/default.vim instead. @@ -393,6 +464,8 @@ 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. +Support for building Vim with Mingw64 clang compiler on MS-Windows. + ============================================================================== PATCHES *patches-9* *bug-fixes-9* *patches-after-8.2* diff --git a/runtime/indent/testdir/vim.in b/runtime/indent/testdir/vim.in index 699e4c243d..873045bc2c 100644 --- a/runtime/indent/testdir/vim.in +++ b/runtime/indent/testdir/vim.in @@ -30,6 +30,12 @@ for x in [ eval 0 endfor +let t = [ +\ { +\ 'k': 'val', +\ }, +\ ] + " END_INDENT " START_INDENT diff --git a/runtime/indent/testdir/vim.ok b/runtime/indent/testdir/vim.ok index f597d97e80..8e70abe619 100644 --- a/runtime/indent/testdir/vim.ok +++ b/runtime/indent/testdir/vim.ok @@ -30,6 +30,12 @@ for x in [ eval 0 endfor +let t = [ + \ { + \ 'k': 'val', + \ }, + \ ] + " END_INDENT " START_INDENT diff --git a/runtime/indent/vim.vim b/runtime/indent/vim.vim index 8579b3fb9f..8a2502a275 100644 --- a/runtime/indent/vim.vim +++ b/runtime/indent/vim.vim @@ -1,7 +1,7 @@ " Vim indent file " Language: Vim script " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2022 Mar 01 +" Last Change: 2022 Jun 24 " Only load this indent file when no other was loaded. if exists("b:did_indent") @@ -36,6 +36,14 @@ endfunc let s:lineContPat = '^\s*\(\\\|"\\ \)' function GetVimIndentIntern() + " If the current line has line continuation and the previous one too, use + " the same indent. This does not skip empty lines. + let cur_text = getline(v:lnum) + let cur_has_linecont = cur_text =~ s:lineContPat + if cur_has_linecont && v:lnum > 1 && getline(v:lnum - 1) =~ s:lineContPat + return indent(v:lnum - 1) + endif + " Find a non-blank line above the current line. let lnum = prevnonblank(v:lnum - 1) @@ -44,8 +52,7 @@ function GetVimIndentIntern() " If the current line doesn't start with '\' or '"\ ' and below a line that " starts with '\' or '"\ ', use the indent of the line above it. - let cur_text = getline(v:lnum) - if cur_text !~ s:lineContPat + if !cur_has_linecont while lnum > 0 && getline(lnum) =~ s:lineContPat let lnum = lnum - 1 endwhile diff --git a/runtime/spell/main.aap b/runtime/spell/main.aap index c6050a4ee5..9f051e28e1 100644 --- a/runtime/spell/main.aap +++ b/runtime/spell/main.aap @@ -16,12 +16,6 @@ LANG = af am bg br ca cs cy da de el en eo es fr fo ga gd gl he hr id it diff: $*LANG/diff :print Done. -# Use "aap publish" to upload the .spl files. -SPL_files = eu.utf-8.spl - -UPDIR = rsync://bram@ftp1.nluug.nl//var/ftp/pub/vim/runtime/spell -:attr {publish = $UPDIR/%file%} $SPL_files - @for l in string.split(_no.LANG): :child $l/main.aap diff --git a/src/po/af.po b/src/po/af.po index b2cf877fcc..76b7ece939 100644 --- a/src/po/af.po +++ b/src/po/af.po @@ -2342,8 +2342,8 @@ msgstr "tik :q<Enter> om program verlaat " msgid "type :help<Enter> or <F1> for on-line help" msgstr "tik :help<Enter> of <F1> vir aanlyn hulp " -msgid "type :help version8<Enter> for version info" -msgstr "tik :help version8<Enter> vir weergawe-inligting" +msgid "type :help version9<Enter> for version info" +msgstr "tik :help version9<Enter> vir weergawe-inligting" msgid "Running in Vi compatible mode" msgstr "Voer tans uit in Vi-versoenbare modus" diff --git a/src/po/ca.po b/src/po/ca.po index 34a89e2c2c..08d4e611dc 100644 --- a/src/po/ca.po +++ b/src/po/ca.po @@ -3710,8 +3710,8 @@ msgid "type :help<Enter> or <F1> for on-line help" msgstr "feu :help<Entrar> o <F1> per a obtenir ajuda " # amplada 53 carcters -msgid "type :help version8<Enter> for version info" -msgstr "feu :help version8<Entrar> per a info de la versi " +msgid "type :help version9<Enter> for version info" +msgstr "feu :help version9<Entrar> per a info de la versi " msgid "Running in Vi compatible mode" msgstr "Funcionant en mode compatible amb Vi" diff --git a/src/po/cs.cp1250.po b/src/po/cs.cp1250.po index 86743a4e2d..218680932f 100644 --- a/src/po/cs.cp1250.po +++ b/src/po/cs.cp1250.po @@ -4360,8 +4360,8 @@ msgstr "zadejte :q<Enter> pro ukonen programu" msgid "type :help<Enter> or <F1> for on-line help" msgstr "zadejte :help<Enter> i <F1> pro npovdu" -msgid "type :help version8<Enter> for version info" -msgstr "zadejte :help version8<Enter> pro informace o verzi 8" +msgid "type :help version9<Enter> for version info" +msgstr "zadejte :help version9<Enter> pro informace o verzi 8" msgid "Running in Vi compatible mode" msgstr "Bm v reimu kompatibility s Vi" diff --git a/src/po/cs.po b/src/po/cs.po index b372d086f6..a319088f57 100644 --- a/src/po/cs.po +++ b/src/po/cs.po @@ -4360,8 +4360,8 @@ msgstr "zadejte :q<Enter> pro ukonen programu" msgid "type :help<Enter> or <F1> for on-line help" msgstr "zadejte :help<Enter> i <F1> pro npovdu" -msgid "type :help version8<Enter> for version info" -msgstr "zadejte :help version8<Enter> pro informace o verzi 8" +msgid "type :help version9<Enter> for version info" +msgstr "zadejte :help version9<Enter> pro informace o verzi 9" msgid "Running in Vi compatible mode" msgstr "Bm v reimu kompatibility s Vi" diff --git a/src/po/da.po b/src/po/da.po index 04b8960118..70f462ec54 100644 --- a/src/po/da.po +++ b/src/po/da.po @@ -6372,8 +6372,8 @@ msgstr "skriv :q<Enter> for at afslutte " msgid "type :help<Enter> or <F1> for on-line help" msgstr "skriv :help<Enter> eller <F1> for onlinehjælp " -msgid "type :help version8<Enter> for version info" -msgstr "skriv :help version8<Enter> for versionsinfo" +msgid "type :help version9<Enter> for version info" +msgstr "skriv :help version9<Enter> for versionsinfo" msgid "Running in Vi compatible mode" msgstr "Kører i Vi-kompatibel tilstand" diff --git a/src/po/de.po b/src/po/de.po index 29143e58a6..bd24b63e98 100644 --- a/src/po/de.po +++ b/src/po/de.po @@ -3650,8 +3650,8 @@ msgstr "Tippe :q<Enter> zum Beenden " msgid "type :help<Enter> or <F1> for on-line help" msgstr "Tippe :help<Enter> oder <F1> fr Online Hilfe " -msgid "type :help version8<Enter> for version info" -msgstr "Tippe :help version8<Enter> fr Versions-Informationen" +msgid "type :help version9<Enter> for version info" +msgstr "Tippe :help version9<Enter> fr Versions-Informationen" msgid "Running in Vi compatible mode" msgstr "Vi kompatible Einstellung" diff --git a/src/po/eo.po b/src/po/eo.po index 2d1e061faf..ba25baa5da 100644 --- a/src/po/eo.po +++ b/src/po/eo.po @@ -6432,8 +6432,8 @@ msgid "type :help<Enter> or <F1> for on-line help" msgstr "tajpu :help<Enenklavo> aŭ <F1> por aliri la helpon " # DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon -msgid "type :help version8<Enter> for version info" -msgstr "tajpu :help version8<Enenklavo> por informo de versio" +msgid "type :help version9<Enter> for version info" +msgstr "tajpu :help version9<Enenklavo> por informo de versio" msgid "Running in Vi compatible mode" msgstr "Ruliĝas en reĝimo kongrua kun Vi" diff --git a/src/po/es.po b/src/po/es.po index c4b1455d33..47f07da1d1 100644 --- a/src/po/es.po +++ b/src/po/es.po @@ -3694,8 +3694,8 @@ msgstr "escriba :q<Intro> para salir " msgid "type :help<Enter> or <F1> for on-line help" msgstr "escriba :help<Intro> o <F1> para obtener ayuda " -msgid "type :help version8<Enter> for version info" -msgstr "escriba :help version8<Intro> para obtener información de la versión" +msgid "type :help version9<Enter> for version info" +msgstr "escriba :help version9<Intro> para obtener información de la versión" msgid "Running in Vi compatible mode" msgstr "Ejecutando en modo compatible con Vi" diff --git a/src/po/fi.po b/src/po/fi.po index 17ae24e8b2..6ce80e6f7a 100644 --- a/src/po/fi.po +++ b/src/po/fi.po @@ -3657,8 +3657,8 @@ msgstr "kirjoita :q<Enter> lopettaaksesi " msgid "type :help<Enter> or <F1> for on-line help" msgstr "kirjoita :help<Enter> tai <F1> ohjetta varten " -msgid "type :help version8<Enter> for version info" -msgstr "kirjoita :help version8<Enter> versiotietoja varten " +msgid "type :help version9<Enter> for version info" +msgstr "kirjoita :help version9<Enter> versiotietoja varten " msgid "Running in Vi compatible mode" msgstr "Suoritetaan Vi-yhteensopivuustilaa" diff --git a/src/po/fr.po b/src/po/fr.po index 02ecb51d03..91d5d240de 100644 --- a/src/po/fr.po +++ b/src/po/fr.po @@ -6692,8 +6692,8 @@ msgstr "tapez :q<Entre> pour sortir du programme " msgid "type :help<Enter> or <F1> for on-line help" msgstr "tapez :help<Entre> ou <F1> pour accder l'aide en ligne " -msgid "type :help version8<Enter> for version info" -msgstr "tapez :help version8<Entre> pour lire les notes de mise jour" +msgid "type :help version9<Enter> for version info" +msgstr "tapez :help version9<Entre> pour lire les notes de mise jour" # DB - Pour les trois messages qui suivent : # :set cp diff --git a/src/po/ga.po b/src/po/ga.po index 8b37be8068..860fe1eed7 100644 --- a/src/po/ga.po +++ b/src/po/ga.po @@ -3736,8 +3736,8 @@ msgstr "clscrobh :q<Enter> chun scor " msgid "type :help<Enter> or <F1> for on-line help" msgstr "clscrobh :help<Enter> n <F1> le haghaidh cabhrach ar lne" -msgid "type :help version8<Enter> for version info" -msgstr "clscrobh :help version8<Enter> le haghaidh eolais faoin leagan" +msgid "type :help version9<Enter> for version info" +msgstr "clscrobh :help version9<Enter> le haghaidh eolais faoin leagan" msgid "Running in Vi compatible mode" msgstr "I md comhoirinachta Vi" diff --git a/src/po/it.po b/src/po/it.po index 4f1847d698..6f53f47ae2 100644 --- a/src/po/it.po +++ b/src/po/it.po @@ -3371,8 +3371,8 @@ msgstr "batti :q<Invio> per uscire " msgid "type :help<Enter> or <F1> for on-line help" msgstr "batti :help<Invio> o <F1> per aiuto online " -msgid "type :help version8<Enter> for version info" -msgstr "batti :help version8<Invio> per informazioni su versione" +msgid "type :help version9<Enter> for version info" +msgstr "batti :help version9<Invio> per informazioni su versione" msgid "Running in Vi compatible mode" msgstr "Eseguo in modalità compatibile Vi" diff --git a/src/po/ja.euc-jp.po b/src/po/ja.euc-jp.po index 1334aac33c..a26af74964 100644 --- a/src/po/ja.euc-jp.po +++ b/src/po/ja.euc-jp.po @@ -3584,8 +3584,8 @@ msgstr "λˤ :q<Enter> " msgid "type :help<Enter> or <F1> for on-line help" msgstr "饤إפ :help<Enter> <F1> " -msgid "type :help version8<Enter> for version info" -msgstr "С :help version8<Enter> " +msgid "type :help version9<Enter> for version info" +msgstr "С :help version9<Enter> " msgid "Running in Vi compatible mode" msgstr "Viߴ⡼ɤư" diff --git a/src/po/ja.po b/src/po/ja.po index 931e00b793..d7ee9d10a6 100644 --- a/src/po/ja.po +++ b/src/po/ja.po @@ -3584,8 +3584,8 @@ msgstr "終了するには :q<Enter> " msgid "type :help<Enter> or <F1> for on-line help" msgstr "オンラインヘルプは :help<Enter> か <F1> " -msgid "type :help version8<Enter> for version info" -msgstr "バージョン情報は :help version8<Enter> " +msgid "type :help version9<Enter> for version info" +msgstr "バージョン情報は :help version9<Enter> " msgid "Running in Vi compatible mode" msgstr "Vi互換モードで動作中" diff --git a/src/po/ja.sjis.po b/src/po/ja.sjis.po index 48f3af047c..72eec3757d 100644 --- a/src/po/ja.sjis.po +++ b/src/po/ja.sjis.po @@ -3584,8 +3584,8 @@ msgstr "Iɂ :q<Enter> " msgid "type :help<Enter> or <F1> for on-line help" msgstr "ICwv :help<Enter> <F1> " -msgid "type :help version8<Enter> for version info" -msgstr "o[W :help version8<Enter> " +msgid "type :help version9<Enter> for version info" +msgstr "o[W :help version9<Enter> " msgid "Running in Vi compatible mode" msgstr "Vi݊[hœ쒆" diff --git a/src/po/ko.UTF-8.po b/src/po/ko.UTF-8.po index dda05d8ae7..1fd97a1f57 100644 --- a/src/po/ko.UTF-8.po +++ b/src/po/ko.UTF-8.po @@ -6288,8 +6288,8 @@ msgstr "끝내려면 :q<엔터> 입력" msgid "type :help<Enter> or <F1> for on-line help" msgstr "온라인 도움말을 보려면 :help<엔터> 또는 <F1> 입력" -msgid "type :help version8<Enter> for version info" -msgstr "판 정보를 보려면 :help version8<엔터> 입력" +msgid "type :help version9<Enter> for version info" +msgstr "판 정보를 보려면 :help version9<엔터> 입력" msgid "Running in Vi compatible mode" msgstr "Vi 호환 상태로 실행중입니다" diff --git a/src/po/ko.po b/src/po/ko.po index 9bab29df65..a031a97c9c 100644 --- a/src/po/ko.po +++ b/src/po/ko.po @@ -6288,8 +6288,8 @@ msgstr " :q<> Է" msgid "type :help<Enter> or <F1> for on-line help" msgstr "¶ :help<> Ǵ <F1> Է" -msgid "type :help version8<Enter> for version info" |