diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-05-26 21:33:31 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-05-26 21:33:31 +0200 |
commit | 68e6560b84f196c82e27a72669684d5506a3a837 (patch) | |
tree | a0652888fa60c92d0d6d8335880961437c76b9f3 /runtime | |
parent | 20c023aee0ceafac9431fb8ab8d169747b5140dd (diff) | |
download | vim-git-68e6560b84f196c82e27a72669684d5506a3a837.tar.gz |
Update runtime files.
Diffstat (limited to 'runtime')
34 files changed, 8922 insertions, 224 deletions
diff --git a/runtime/colors/tools/check_colors.vim b/runtime/colors/tools/check_colors.vim index b1aefa112..57b71b19d 100644 --- a/runtime/colors/tools/check_colors.vim +++ b/runtime/colors/tools/check_colors.vim @@ -1,11 +1,12 @@ -" This script tests a color scheme for some errors. Load the scheme and source -" this script. e.g. :e colors/desert.vim | :so check_colors.vim -" Will output possible errors. +" This script tests a color scheme for some errors and lists potential errors. +" Load the scheme and source this script, like this: +" :edit colors/desert.vim | :so colors/tools/check_colors.vim let s:save_cpo= &cpo set cpo&vim func! Test_check_colors() + let l:savedview = winsaveview() call cursor(1,1) let err={} @@ -17,11 +18,69 @@ func! Test_check_colors() endif " 2) Check for some well-defined highlighting groups - " Some items, check several groups, e.g. Diff, Spell - let hi_groups = ['ColorColumn', 'Diff', 'ErrorMsg', 'Folded', - \ 'FoldColumn', 'IncSearch', 'LineNr', 'ModeMsg', 'MoreMsg', 'NonText', - \ 'Normal', 'Pmenu', 'Todo', 'Search', 'Spell', 'StatusLine', 'TabLine', - \ 'Title', 'Visual', 'WarningMsg', 'WildMenu'] + let hi_groups = [ + \ 'ColorColumn', + \ 'Comment', + \ 'Conceal', + \ 'Constant', + \ 'Cursor', + \ 'CursorColumn', + \ 'CursorLine', + \ 'CursorLineNr', + \ 'DiffAdd', + \ 'DiffChange', + \ 'DiffDelete', + \ 'DiffText', + \ 'Directory', + \ 'EndOfBuffer', + \ 'Error', + \ 'ErrorMsg', + \ 'FoldColumn', + \ 'Folded', + \ 'Identifier', + \ 'Ignore', + \ 'IncSearch', + \ 'LineNr', + \ 'MatchParen', + \ 'ModeMsg', + \ 'MoreMsg', + \ 'NonText', + \ 'Normal', + \ 'Pmenu', + \ 'PmenuSbar', + \ 'PmenuSel', + \ 'PmenuThumb', + \ 'PreProc', + \ 'Question', + \ 'QuickFixLine', + \ 'Search', + \ 'SignColumn', + \ 'Special', + \ 'SpecialKey', + \ 'SpellBad', + \ 'SpellCap', + \ 'SpellLocal', + \ 'SpellRare', + \ 'Statement', + \ 'StatusLine', + \ 'StatusLineNC', + \ 'StatusLineTerm', + \ 'StatusLineTermNC', + \ 'TabLine', + \ 'TabLineFill', + \ 'TabLineSel', + \ 'Title', + \ 'Todo', + \ 'ToolbarButton', + \ 'ToolbarLine', + \ 'Type', + \ 'Underlined', + \ 'VertSplit', + \ 'Visual', + \ 'VisualNOS', + \ 'WarningMsg', + \ 'WildMenu', + \ ] let groups={} for group in hi_groups if search('\c@suppress\s\+'.group, 'cnW') @@ -30,6 +89,9 @@ func! Test_check_colors() let groups[group] = 'Ignoring '.group continue endif + if search('hi\%[ghlight]!\= \+link \+'.group, 'cnW') " Linked group + continue + endif if !search('hi\%[ghlight] \+'.group, 'cnW') let groups[group] = 'No highlight definition for '.group continue @@ -43,12 +105,15 @@ func! Test_check_colors() let groups[group] = 'Missing bg terminal color for '.group continue endif - call search('hi\%[ghlight] \+'.group, 'cW') - " only check in the current line - if !search('guifg', 'cnW', line('.')) || !search('ctermfg', 'cnW', line('.')) - " do not check for background colors, they could be intentionally left out - let groups[group] = 'Missing fg definition for '.group + if !search('hi\%[ghlight] \+'.group. '.*guifg=', 'cnW') + let groups[group] = 'Missing guifg definition for '.group + continue endif + if !search('hi\%[ghlight] \+'.group. '.*ctermfg=', 'cnW') + let groups[group] = 'Missing ctermfg definition for '.group + continue + endif + " do not check for background colors, they could be intentionally left out call cursor(1,1) endfor let err['highlight'] = groups @@ -91,15 +156,43 @@ func! Test_check_colors() endif " 7) Does not define filetype specific groups like vimCommand, htmlTag, - let hi_groups = ['vim', 'html', 'python', 'sh', 'ruby'] + let hi_groups = filter(getcompletion('', 'filetype'), { _,v -> v !~# '\%[no]syn\%(color\|load\|tax\)' }) + let ft_groups = [] + " let group = '\%('.join(hi_groups, '\|').'\)' " More efficient than a for loop, but less informative for group in hi_groups - let pat='\Chi\%[ghlight]\s*\zs'.group.'\w\+\>' + let pat='\Chi\%[ghlight]!\= *\%[link] \+\zs'.group.'\w\+\>\ze \+.' " Skips `hi clear` + if search(pat, 'cW') + call add(ft_groups, matchstr(getline('.'), pat)) + endif + call cursor(1,1) + endfor + if !empty(ft_groups) + let err['filetype'] = get(err, 'filetype', 'Should not define: ') . join(uniq(sort(ft_groups))) + endif + + " 8) Were debugPC and debugBreakpoint defined? + for group in ['debugPC', 'debugBreakpoint'] + let pat='\Chi\%[ghlight]!\= *\%[link] \+\zs'.group.'\>' if search(pat, 'cnW') let line = search(pat, 'cW') let err['filetype'] = get(err, 'filetype', 'Should not define: ') . matchstr(getline('.'), pat). ' ' endif call cursor(1,1) endfor + + " 9) Normal should be defined first, not use reverse, fg or bg + call cursor(1,1) + let pat = 'hi\%[light] \+\%(link\|clear\)\@!\w\+\>' + call search(pat, 'cW') " Look for the first hi def, skipping `hi link` and `hi clear` + if getline('.') !~# '\m\<Normal\>' + let err['highlight']['Normal'] = 'Should be defined first' + elseif getline('.') =~# '\m\%(=\%(fg\|bg\)\)' + let err['highlight']['Normal'] = "Should not use 'fg' or 'bg'" + elseif getline('.') =~# '\m=\%(inv\|rev\)erse' + let err['highlight']['Normal'] = 'Should not use reverse mode' + endif + + call winrestview(l:savedview) let g:err = err " print Result @@ -107,11 +200,11 @@ func! Test_check_colors() endfu fu! Result(err) - let do_roups = 0 + let do_groups = 0 echohl Title|echomsg "---------------"|echohl Normal for key in sort(keys(a:err)) if key is# 'highlight' - let do_groups = 1 + let do_groups = !empty(a:err[key]) continue else if a:err[key] !~ 'OK' diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt index ea0274f40..632628a87 100644 --- a/runtime/doc/channel.txt +++ b/runtime/doc/channel.txt @@ -1,4 +1,4 @@ -*channel.txt* For Vim version 8.1. Last change: 2019 May 05 +*channel.txt* For Vim version 8.1. Last change: 2019 May 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -155,7 +155,10 @@ Use |ch_status()| to see if the channel could be opened. func MyCloseHandler(channel) < Vim will invoke callbacks that handle data before invoking close_cb, thus when this function is called no more data will - be passed to the callbacks. + be passed to the callbacks. However, if a callback causes Vim + to check for messages, the close_cb may be invoked while still + in the callback. The plugin must handle this somehow, it can + be useful to know that no more data is coming. *channel-drop* "drop" Specifies when to drop messages: "auto" When there is no callback to handle a message. diff --git a/runtime/doc/debugger.txt b/runtime/doc/debugger.txt index cbf2009a5..772aac0c3 100644 --- a/runtime/doc/debugger.txt +++ b/runtime/doc/debugger.txt @@ -1,4 +1,4 @@ -*debugger.txt* For Vim version 8.1. Last change: 2019 May 05 +*debugger.txt* For Vim version 8.1. Last change: 2019 May 12 VIM REFERENCE MANUAL by Gordon Prieur @@ -87,7 +87,8 @@ This feature allows a debugger, or other external tool, to display dynamic information based on where the mouse is pointing. The purpose of this feature was to allow Sun's Visual WorkShop debugger to display expression evaluations. However, the feature was implemented in as general a manner as possible and -could be used for displaying other information as well. +could be used for displaying other information as well. The functionality is +limited though, for advanced popups see |popup-window|. The Balloon Evaluation has some settable parameters too. For Motif the font list and colors can be set via X resources (XmNballoonEvalFontList, diff --git a/runtime/doc/doctags.c b/runtime/doc/doctags.c index 53bf33c1d..f0dea2c87 100644 --- a/runtime/doc/doctags.c +++ b/runtime/doc/doctags.c @@ -1,7 +1,8 @@ /* vim:set ts=4 sw=4: - * this program makes a tags file for vim_ref.txt * - * Usage: doctags vim_ref.txt vim_win.txt ... >tags + * This program makes a tags file for help text. + * + * Usage: doctags *.txt ... >tags * * A tag in this context is an identifier between stars, e.g. *c_files* */ diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index e82cf3235..15ffed343 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 8.1. Last change: 2019 May 09 +*eval.txt* For Vim version 8.1. Last change: 2019 May 25 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1190,8 +1190,9 @@ There must not be white space before or after the dot. Examples: > :let dict = {"one": 1, 2: "two"} - :echo dict.one - :echo dict .2 + :echo dict.one " shows "1" + :echo dict.2 " shows "two" + :echo dict .2 " error because of space before the dot Note that the dot is also used for String concatenation. To avoid confusion always put spaces around the dot for String concatenation. @@ -3507,7 +3508,7 @@ chdir({dir}) *chdir()* Example: > let save_dir = chdir(newdir) - if save_dir + if save_dir != "" " ... do some work call chdir(save_dir) endif @@ -5126,7 +5127,7 @@ getloclist({nr} [, {what}]) *getloclist()* In addition to the items supported by |getqflist()| in {what}, the following item is supported by |getloclist()|: - filewinid id of the window used to display files + filewinid id of the window used to display files from the location list. This field is applicable only when called from a location list window. See @@ -6349,7 +6350,7 @@ listener_add({callback} [, {buf}]) *listener_add()* was affected; this is a byte index, first character has a value of one. When lines are inserted the values are: - lnum line below which the new line is added + lnum line above which the new line is added end equal to "lnum" added number of lines inserted col 1 @@ -7336,6 +7337,8 @@ prop_remove({props} [, {lnum} [, {lnum-end}]]) all when TRUE remove all matching text properties, not just the first one A property matches when either "id" or "type" matches. + If buffer "bufnr" does not exist you get an error message. + If buffer 'bufnr" is not loaded then nothing happens. Returns the number of properties that were removed. @@ -10074,6 +10077,7 @@ timer_start({time}, {callback} [, {options}]) < This will invoke MyHandler() three times at 500 msec intervals. + Not available in the |sandbox|. {only available when compiled with the |+timers| feature} timer_stop({timer}) *timer_stop()* @@ -11019,7 +11023,7 @@ It is allowed to define another function inside a function body. You can provide default values for positional named arguments. This makes them optional for function calls. When a positional argument is not specified at a call, the default expression is used to initialize it. -This only works for functions declared with |function|, not for lambda +This only works for functions declared with `:function`, not for lambda expressions |expr-lambda|. Example: > @@ -11031,7 +11035,7 @@ Example: > The argument default expressions are evaluated at the time of the function call, not definition. Thus it is possible to use an expression which is -invalid the moment the function is defined. The expressions are are also only +invalid the moment the function is defined. The expressions are also only evaluated when arguments are not specified during a call. You can pass |v:none| to use the default expression. Note that this means you @@ -11098,7 +11102,7 @@ This function can then be called with: > *:cal* *:call* *E107* *E117* :[range]cal[l] {name}([arguments]) Call a function. The name of the function and its arguments - are as specified with |:function|. Up to 20 arguments can be + are as specified with `:function`. Up to 20 arguments can be used. The returned value is discarded. Without a range and for functions that accept a range, the function is called once. When a range is given the cursor is @@ -11152,9 +11156,9 @@ Using an autocommand ~ This is introduced in the user manual, section |41.14|. The autocommand is useful if you have a plugin that is a long Vim script file. -You can define the autocommand and quickly quit the script with |:finish|. +You can define the autocommand and quickly quit the script with `:finish`. That makes Vim startup faster. The autocommand should then load the same file -again, setting a variable to skip the |:finish| command. +again, setting a variable to skip the `:finish` command. Use the FuncUndefined autocommand event with a pattern that matches the function(s) to be defined. Example: > @@ -13001,7 +13005,7 @@ instead of failing in mysterious ways. > has('vimscript-1') :scriptversion 2 -< String concatenation with "." is not supported, use ".." instead. +< String concatenation with "." is not supported, use ".." instead. This avoids the ambiguity using "." for Dict member access and floating point numbers. Now ".5" means the number 0.5. > diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt index c24d67273..d83954bc4 100644 --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -1,4 +1,4 @@ -*gui.txt* For Vim version 8.1. Last change: 2019 May 05 +*gui.txt* For Vim version 8.1. Last change: 2019 May 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1046,7 +1046,7 @@ GUIFONT *gui-font* 'guifont' is the option that tells Vim what font to use. In its simplest form the value is just one font name. It can also be a list of font names separated with commas. The first valid font is used. When no valid font can -be found you will get an error message. +be found you will get an error message. On systems where 'guifontset' is supported (X11) and 'guifontset' is not empty, then 'guifont' is not used. See |xfontset|. @@ -1112,10 +1112,9 @@ For the Win32 GUI *E244* *E245* cXX - character set XX. Valid charsets are: ANSI, ARABIC, BALTIC, CHINESEBIG5, DEFAULT, EASTEUROPE, GB2312, GREEK, HANGEUL, HEBREW, JOHAB, MAC, OEM, RUSSIAN, SHIFTJIS, SYMBOL, THAI, - TURKISH, VIETNAMESE ANSI and BALTIC. Normally you would use - "cDEFAULT". + TURKISH and VIETNAMESE. Normally you would use "cDEFAULT". qXX - quality XX. Valid quality names are: PROOF, DRAFT, ANTIALIASED, - NONANTIALIASED, CLEARTYPE, DEFAULT. Normally you would use + NONANTIALIASED, CLEARTYPE and DEFAULT. Normally you would use "qDEFAULT". Some quality values are not supported in legacy OSs. - A '_' can be used in the place of a space, so you don't need to use @@ -1139,30 +1138,28 @@ substitution. GUIFONTWIDE *gui-fontwide* When not empty, 'guifontwide' specifies a comma-separated list of fonts to be -used for double-width characters. The first font that can be loaded is -used. +used for double-width characters. The first font that can be loaded is used. Note: The size of these fonts must be exactly twice as wide as the one -specified with 'guifont' and the same height. If there is a mismatch then -the text will not be drawn correctly. +specified with 'guifont' and the same height. If there is a mismatch then the +text will not be drawn correctly. All GUI versions but GTK+: -'guifontwide' is only used when 'encoding' is set to "utf-8" and -'guifontset' is empty or invalid. -When 'guifont' is set and a valid font is found in it and -'guifontwide' is empty Vim will attempt to find a matching -double-width font and set 'guifontwide' to it. +'guifontwide' is only used when 'encoding' is set to "utf-8" and 'guifontset' +is empty or invalid. +When 'guifont' is set and a valid font is found in it and 'guifontwide' is +empty Vim will attempt to find a matching double-width font and set +'guifontwide' to it. GTK+ GUI only: *guifontwide_gtk* -If set and valid, 'guifontwide' is always used for double width -characters, even if 'encoding' is not set to "utf-8". +If set and valid, 'guifontwide' is always used for double width characters, +even if 'encoding' is not set to "utf-8". Vim does not attempt to find an appropriate value for 'guifontwide' -automatically. If 'guifontwide' is empty Pango/Xft will choose the -font for characters not available in 'guifont'. Thus you do not need -to set 'guifontwide' at all unless you want to override the choice -made by Pango/Xft. +automatically. If 'guifontwide' is empty Pango/Xft will choose the font for +characters not available in 'guifont'. Thus you do not need to set +'guifontwide' at all unless you want to override the choice made by Pango/Xft. Windows +multibyte only: *guifontwide_win_mbyte* @@ -1181,7 +1178,8 @@ This section describes other features which are related to the GUI. get "<Modifiers-Key>". - In the GUI, the modifiers SHIFT, CTRL, and ALT (or META) may be used within - mappings of special keys and mouse events. E.g.: :map <M-LeftDrag> <LeftDrag> + mappings of special keys and mouse events. + E.g.: :map <M-LeftDrag> <LeftDrag> - In the GUI, several normal keys may have modifiers in mappings etc, these are <Space>, <Tab>, <NL>, <CR>, <Esc>. @@ -1218,8 +1216,8 @@ http://www.lexikan.com/mincho.htm For the X11 GUI the external commands are executed inside the gvim window. See |gui-pty|. -WARNING: Executing an external command from the X11 GUI will not always -work. "normal" commands like "ls", "grep" and "make" mostly work fine. +WARNING: Executing an external command from the X11 GUI will not always work. +"normal" commands like "ls", "grep" and "make" mostly work fine. Commands that require an intelligent terminal like "less" and "ispell" won't work. Some may even hang and need to be killed from another terminal. So be careful! diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt index c2c9c1c88..ef5394d70 100644 --- a/runtime/doc/help.txt +++ b/runtime/doc/help.txt @@ -1,4 +1,4 @@ -*help.txt* For Vim version 8.1. Last change: 2019 Jan 17 +*help.txt* For Vim version 8.1. Last change: 2019 May 12 VIM - main help file k diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 6ae5fccea..5aab7174d 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 8.1. Last change: 2019 May 09 +*index.txt* For Vim version 8.1. Last change: 2019 May 25 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1484,6 +1484,7 @@ tag command action ~ |:perldo| :perld[o] execute Perl command for each line |:pop| :po[p] jump to older entry in tag stack |:popup| :popu[p] popup a menu by name +|:popupclear| :popupc[lear] remove all popup windows |:ppop| :pp[op] ":pop" in preview window |:preserve| :pre[serve] write all text to swap file |:previous| :prev[ious] go to previous file in argument list diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt index 5e47df1b0..13422650e 100644 --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 8.1. Last change: 2019 May 07 +*message.txt* For Vim version 8.1. Last change: 2019 May 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -247,6 +247,9 @@ format of the file. The file will not be marked unmodified. If you care about the loss of information, set the 'fileencoding' option to another value that can handle the characters in the buffer and write again. If you don't care, you can abandon the buffer or reset the 'modified' option. +If there is a backup file, when 'writebackup' or 'backup' is set, it will not +be deleted, so you can move it back into place if you want to discard the +changes. *E302* > Could not rename swap file diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt index 64b1fbfc2..97a0fae56 100644 --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -53,6 +53,7 @@ or change text. The following operators are available: |!| ! filter through an external program |=| = filter through 'equalprg' or C-indenting if empty |gq| gq text formatting + |gw| gw text formatting with no cursor movement |g?| g? ROT13 encoding |>| > shift right |<| < shift left diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index fd2ae6a6e..949d82f9c 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 8.1. Last change: 2019 May 23 +*options.txt* For Vim version 8.1. Last change: 2019 May 25 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index 8babf0b23..f9d5d51fe 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -61,11 +61,11 @@ explanations are in chapter 27 |usr_27.txt|. n Repeat the latest "/" or "?" [count] times. If the cursor doesn't move the search is repeated with count + 1. - |last-pattern| {Vi: no count} + |last-pattern| *N* N Repeat the latest "/" or "?" [count] times in - opposite direction. |last-pattern| {Vi: no count} + opposite direction. |last-pattern| *star* *E348* *E349* * Search forward for the [count]'th occurrence of the diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt index cc9b7d179..3b17f7795 100644 --- a/runtime/doc/popup.txt +++ b/runtime/doc/popup.txt @@ -1,4 +1,4 @@ -*popup.txt* For Vim version 8.1. Last change: 2019 May 21 +*popup.txt* For Vim version 8.1. Last change: 2019 May 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -25,7 +25,7 @@ windows and is under control of a plugin. You cannot edit the text in the popup window like with regular windows. A popup window can be used for such things as: -- briefly show a message without changing the command line +- briefly show a message without overwriting the command line - prompt the user with a dialog - display contextual information while typing - give extra information for auto-completion @@ -42,11 +42,14 @@ The default color used is "Pmenu". If you prefer something else use the A popup window has a window-ID like other windows, but behaves differently. The size can be up to the whole Vim window and it overlaps other windows. -It contains a buffer, and that buffer is always associated with the popup -window. The window cannot be used in Normal, Visual or Insert mode, it does -not get keyboard focus. You can use functions like `setbufline()` to change -the text in the buffer. There are more differences from how this window and -buffer behave compared to regular windows and buffers, see |popup-buffer|. +Popup windows can also overlap each other. + +The popup window contains a buffer, and that buffer is always associated with +the popup window. The window cannot be used in Normal, Visual or Insert mode, +it does not get keyboard focus. You can use functions like `setbufline()` to +change the text in the buffer. There are more differences from how this +window and buffer behave compared to regular windows and buffers, see +|popup-buffer|. If this is not what you are looking for, check out other popup functionality: - popup menu, see |popup-menu| @@ -55,9 +58,9 @@ If this is not what you are looking for, check out other popup functionality: WINDOW POSITION AND SIZE *popup-position* -The height of the window is normally equal to the number of lines in the -buffer. It can be limited with the "maxheight" property. You can use empty -lines to increase the height. +The height of the window is normally equal to the number of, possibly +wrapping, lines in the buffer. It can be limited with the "maxheight" +property. You can use empty lines to increase the height. The width of the window is normally equal to the longest line in the buffer. It can be limited with the "maxwidth" property. You can use spaces to @@ -81,11 +84,13 @@ Probably 2. is the best choice. IMPLEMENTATION: - Code is in popupwin.c -- handle screen resize in screenalloc(). -- Support tab-local popup windows, use tp_first_popupwin and - first_tab_popupwin. Swap like with firstwin/curwin. +- Implement list of lines with text properties +- Implement popup_hide() and popup_show() +- Implement filter. +- Handle screen resize in screenalloc(). - Make redrawing more efficient and avoid flicker. -- implement all the unimplemented features. +- Properly figure out the size and position. +- Implement all the unimplemented options and features. ============================================================================== @@ -93,9 +98,7 @@ IMPLEMENTATION: THIS IS UNDER DESIGN - ANYTHING MAY STILL CHANGE -Proposal and discussion on issue #4063: https://github.com/vim/vim/issues/4063 - -[functions to be moved to eval.txt later, keep list of functions here] +[functions to be moved to eval.txt later, keep overview of functions here] popup_create({text}, {options}) *popup_create()* Open a popup window showing {text}, which is either: @@ -257,6 +260,9 @@ manipulation is restricted: - 'undolevels' is -1: no undo at all TODO: more +It is possible to change these options, but anything might break then, so +better leave them alone. + The window does have a cursor position, but the cursor is not displayed. Options can be set on the window with `setwinvar()`, e.g.: > diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index 2718f5c30..c2241992c 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 8.1. Last change: 2019 Apr 28 +*quickref.txt* For Vim version 8.1. Last change: 2019 May 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -798,6 +798,7 @@ Short explanation of each option: *option-list* 'menuitems' 'mis' maximum number of items in a menu 'mkspellmem' 'msm' memory used before |:mkspell| compresses the tree 'modeline' 'ml' recognize modelines at start or end of file +'modelineexpr' 'mle' allow setting expression options from a modeline 'modelines' 'mls' number of lines checked for modelines 'modifiable' 'ma' changes to the text are not possible 'modified' 'mod' buffer has been modified diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt index 9c701ff13..cc2cb7d95 100644 --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -1,4 +1,4 @@ -*repeat.txt* For Vim version 8.1. Last change: 2019 May 07 +*repeat.txt* For Vim version 8.1. Last change: 2019 May 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -178,7 +178,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|. :so[urce] {file} Read Ex commands from {file}. These are commands that start with a ":". Triggers the |SourcePre| autocommand. - + *:source!* :so[urce]! {file} Read Vim commands from {file}. These are commands that are executed from Normal mode, like you type them. @@ -186,6 +186,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|. |:bufdo|, in a loop or when another command follows the display won't be updated while executing the commands. + Cannot be used in the |sandbox|. *:ru* *:runtime* :ru[ntime][!] [where] {file} .. diff --git a/runtime/doc/scroll.txt b/runtime/doc/scroll.txt index 86c471b4a..a19959d3e 100644 --- a/runtime/doc/scroll.txt +++ b/runtime/doc/scroll.txt @@ -1,4 +1,4 @@ -*scroll.txt* For Vim version 8.1. Last change: 2019 May 05 +*scroll.txt* For Vim version 8.1. Last change: 2019 May 13 VIM REFERENCE MANUAL by Bram Moolenaar @@ -82,9 +82,6 @@ CTRL-U Scroll window Upwards in the buffer. The number of may be a difference). When the cursor is on the first line of the buffer nothing happens and a beep is produced. See also 'startofline' option. - {difference from vi: Vim scrolls 'scroll' screen - lines, instead of file lines; makes a difference when - lines wrap} <S-Up> or *<S-Up>* *<kPageUp>* <PageUp> or *<PageUp>* *CTRL-B* diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 1eca1c5da..6dcb37195 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 8.1. Last change: 2019 Mar 29 +*syntax.txt* For Vim version 8.1. Last change: 2019 May 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -4827,8 +4827,9 @@ cterm={attr-list} *highlight-cterm* The "cterm" argument is likely to be different from "term", when colors are used. For example, in a normal terminal comments could be underlined, in a color terminal they can be made Blue. - Note: Many terminals (e.g., DOS console) can't mix these attributes - with coloring. Use only one of "cterm=" OR "ctermfg=" OR "ctermbg=". + Note: Some terminals (e.g., DOS console) can't mix these attributes + with coloring. To be portable, use only one of "cterm=" OR "ctermfg=" + OR "ctermbg=". ctermfg={color-nr} *highlight-ctermfg* *E421* ctermbg={color-nr} *highlight-ctermbg* diff --git a/runtime/doc/tags b/runtime/doc/tags index 50ca425d7..185fcb743 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -455,6 +455,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* 'mis' options.txt /*'mis'* 'mkspellmem' options.txt /*'mkspellmem'* 'ml' options.txt /*'ml'* +'mle' options.txt /*'mle'* 'mls' options.txt /*'mls'* 'mm' options.txt /*'mm'* 'mmd' options.txt /*'mmd'* @@ -462,6 +463,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* 'mmt' options.txt /*'mmt'* 'mod' options.txt /*'mod'* 'modeline' options.txt /*'modeline'* +'modelineexpr' options.txt /*'modelineexpr'* 'modelines' options.txt /*'modelines'* 'modifiable' options.txt /*'modifiable'* 'modified' options.txt /*'modified'* @@ -617,8 +619,10 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* 'nomagic' options.txt /*'nomagic'* 'nomh' options.txt /*'nomh'* 'noml' options.txt /*'noml'* +'nomle' options.txt /*'nomle'* 'nomod' options.txt /*'nomod'* 'nomodeline' options.txt /*'nomodeline'* +'nomodelineexpr' options.txt /*'nomodelineexpr'* 'nomodifiable' options.txt /*'nomodifiable'* 'nomodified' options.txt /*'nomodified'* 'nomore' options.txt /*'nomore'* @@ -1181,6 +1185,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* 'wb' options.txt /*'wb'* 'wc' options.txt /*'wc'* 'wcm' options.txt /*'wcm'* +'wcr' options.txt /*'wcr'* 'wd' options.txt /*'wd'* 'weirdinvert' options.txt /*'weirdinvert'* 'wfh' options.txt /*'wfh'* @@ -1199,6 +1204,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* 'wildoptions' options.txt /*'wildoptions'* 'wim' options.txt /*'wim'* 'winaltkeys' options.txt /*'winaltkeys'* +'wincolor' options.txt /*'wincolor'* 'window' options.txt /*'window'* 'winfixheight' options.txt /*'winfixheight'* 'winfixwidth' options.txt /*'winfixwidth'* @@ -2546,12 +2552,14 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* :let-= eval.txt /*:let-=* :let-@ eval.txt /*:let-@* :let-environment eval.txt /*:let-environment* +:let-heredoc eval.txt /*:let-heredoc* :let-option eval.txt /*:let-option* :let-register eval.txt /*:let-register* :let-unpack eval.txt /*:let-unpack* :let..= eval.txt /*:let..=* :let.= eval.txt /*:let.=* :let/= eval.txt /*:let\/=* +:let=<< eval.txt /*:let=<<* :letstar= eval.txt /*:letstar=* :lex quickfix.txt /*:lex* :lexpr quickfix.txt /*:lexpr* @@ -2787,6 +2795,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* :pop tagsrch.txt /*:pop* :popu gui.txt /*:popu* :popup gui.txt /*:popup* +:popupc popup.txt /*:popupc* +:popupclear popup.txt /*:popupclear* :pp windows.txt /*:pp* :ppop windows.txt /*:ppop* :pr various.txt /*:pr* @@ -3043,6 +3053,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX* :sor change.txt /*:sor* :sort change.txt /*:sort* :source repeat.txt /*:source* +:source! repeat.txt /*:source!* :source_crnl repeat.txt /*:source_crnl* :sp windows.txt /*:sp* :spe spell.txt /*:spe* @@ -4726,7 +4737,11 @@ E985 eval.txt /*E985* E986 tagsrch.txt /*E986* E987 tagsrch.txt /*E987* E988 gui_w32.txt /*E988* +E989 eval.txt /*E989* E99 diff.txt /*E99* +E990 eval.txt /*E990* +E991 eval.txt /*E991* +E992 options.txt /*E992* E999 repeat.txt /*E999* EX intro.txt /*EX* EXINIT starting.txt /*EXINIT* @@ -6477,6 +6492,7 @@ g:Netrw_UserMaps pi_netrw.txt /*g:Netrw_UserMaps* g:Netrw_corehandler pi_netrw.txt /*g:Netrw_corehandler* g:Netrw_funcref pi_netrw.txt /*g:Netrw_funcref* g:actual_curbuf options.txt /*g:actual_curbuf* +g:actual_curwin options.txt /*g:actual_curwin* g:ada#Comment ft_ada.txt /*g:ada#Comment* g:ada#Ctags_Kinds ft_ada.txt /*g:ada#Ctags_Kinds* g:ada#DotWordRegex ft_ada.txt /*g:ada#DotWordRegex* @@ -6667,6 +6683,7 @@ g:rustfmt_autosave ft_rust.txt /*g:rustfmt_autosave* g:rustfmt_command ft_rust.txt /*g:rustfmt_command* g:rustfmt_fail_silently ft_rust.txt /*g:rustfmt_fail_silently* g:rustfmt_options ft_rust.txt /*g:rustfmt_options* +g:statusline_winid options.txt /*g:statusline_winid* g:syntax_on syntax.txt /*g:syntax_on* g:tar_browseoptions pi_tar.txt /*g:tar_browseoptions* g:tar_cmd pi_tar.txt /*g:tar_cmd* @@ -7412,6 +7429,9 @@ list-index eval.txt /*list-index* list-modification eval.txt /*list-modification* list-repeat windows.txt /*list-repeat* list2str() eval.txt /*list2str()* +listener_add() eval.txt /*listener_add()* +listener_flush() eval.txt /*listener_flush()* +listener_remove() eval.txt /*listener_remove()* lite.vim syntax.txt /*lite.vim* literal-string eval.txt /*literal-string* lnum-variable eval.txt /*lnum-variable* @@ -8049,6 +8069,7 @@ option-summary options.txt /*option-summary* option-window options.txt /*option-window* option_restore() todo.txt /*option_restore()* option_save() todo.txt /*option_save()* +optional-function-argument eval.txt /*optional-function-argument* options options.txt /*options* options-changed version5.txt /*options-changed* options-in-terminal terminal.txt /*options-in-terminal* @@ -8095,6 +8116,7 @@ paragraph motion.txt /*paragraph* pascal.vim syntax.txt /*pascal.vim* patches-8 version8.txt /*patches-8* patches-8.1 version8.txt /*patches-8.1* +patches-8.2 version8.txt /*patches-8.2* pathshorten() eval.txt /*pathshorten()* pattern pattern.txt /*pattern* pattern-atoms pattern.txt /*pattern-atoms* @@ -8164,8 +8186,34 @@ plugin-special usr_41.txt /*plugin-special* pmbcs-option print.txt /*pmbcs-option* pmbfn-option print.txt /*pmbfn-option* popt-option print.txt /*popt-option* +popup popup.txt /*popup* +popup-buffer popup.txt /*popup-buffer* +popup-callback popup.txt /*popup-callback* +popup-examples popup.txt /*popup-examples* +popup-filter popup.txt /*popup-filter* +popup-functions popup.txt /*popup-functions* +popup-intro popup.txt /*popup-intro* popup-menu gui.txt /*popup-menu* popup-menu-added version5.txt /*popup-menu-added* +popup-position popup.txt /*popup-position* +popup-props popup.txt /*popup-props* +popup-window popup.txt /*popup-window* +popup.txt popup.txt /*popup.txt* +popup_atcursor() popup.txt /*popup_atcursor()* +popup_close() popup.txt /*popup_close()* +popup_create() popup.txt /*popup_create()* +popup_create-usage popup.txt /*popup_create-usage* +popup_dialog() popup.txt /*popup_dialog()* +popup_filter_menu() popup.txt /*popup_filter_menu()* +popup_filter_yesno() popup.txt /*popup_filter_yesno()* +popup_getoptions() popup.txt /*popup_getoptions()* +popup_getposition() popup.txt /*popup_getposition()* +popup_hide() popup.txt /*popup_hide()* +popup_menu() popup.txt /*popup_menu()* +popup_move() popup.txt /*popup_move()* +popup_notification() popup.txt /*popup_notification()* +popup_setoptions() popup.txt /*popup_setoptions()* +popup_show() popup.txt /*popup_show()* popupmenu-completion insert.txt /*popupmenu-completion* popupmenu-keys insert.txt /*popupmenu-keys* ports-5.2 version5.txt /*ports-5.2* @@ -9249,6 +9297,7 @@ test_alloc_fail() eval.txt /*test_alloc_fail()* test_autochdir() eval.txt /*test_autochdir()* test_feedinput() eval.txt /*test_feedinput()* test_garbagecollect_now() eval.txt /*test_garbagecollect_now()* +test_getvalue() eval.txt /*test_getvalue()* test_ignore_error() eval.txt /*test_ignore_error()* test_null_blob() eval.txt /*test_null_blob()* test_null_channel() eval.txt /*test_null_channel()* diff --git a/runtime/doc/terminal.txt b/runtime/doc/terminal.txt index d01959bac..cca711a53 100644 --- a/runtime/doc/terminal.txt +++ b/runtime/doc/terminal.txt @@ -1,4 +1,4 @@ -*terminal.txt* For Vim version 8.1. Last change: 2019 May 05 +*terminal.txt* For Vim version 8.1. Last change: 2019 May 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -495,7 +495,8 @@ Currently supported commands: directory, thus it's best to use the full path. [options] is only used when opening a new window. If present, - it must be a Dict. Similarly to |++opt|, These entries are recognized: + it must be a Dict. Similarly to |++opt|, These entries are + recognized: "ff" file format: "dos", "mac" or "unix" "fileformat" idem "enc" overrides 'fileencoding' diff --git a/runtime/doc/textprop.txt b/runtime/doc/textprop.txt index c24e47a91..bda523038 100644 --- a/runtime/doc/textprop.txt +++ b/runtime/doc/textprop.txt @@ -1,4 +1,4 @@ -*textprop.txt* For Vim version 8.1. Last change: 2019 May 06 +*textprop.txt* For Vim version 8.1. Last change: 2019 May 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -12,7 +12,6 @@ What is not working yet: - Adjusting column/length when inserting text - Text properties spanning more than one line - prop_find() -- callbacks when text properties are outdated 1. Introduction |text-prop-intro| @@ -131,6 +130,12 @@ unless the whole line is deleted. When using replace mode, the text properties stay on the same character positions, even though the characters themselves change. +To update text properties after the text was changed, install a callback with +`listener_add()`. E.g, if your plugin does spell checking, you can have the +callback update spelling mistakes in the changed text. Vim will move the +properties below the changed text, so that they still highlight the same text, +thus you don't need to update these. + Text property columns are not updated: ~ diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index c69a9490d..bc4e5e8ff 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 8.1. Last change: 2019 May 09 +*todo.txt* For Vim version 8.1. Last change: 2019 May 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -38,6 +38,20 @@ browser use: https://github.com/vim/vim/issues/1234 *known-bugs* -------------------- Known bugs and current work ----------------------- +Ongoing work on text properties, see src/textprop.c + +Popup windows are being implemented, see |popup-window|. + +Patch to beautify the output of a test run. (Christian Brabandt, #4391) +can be improved. + +Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May +20) +Also put :argadd commands at the start for all buffers, so that their order +remains equal? Then %argdel to clean it up. Do try this with 'hidden' set. + +Patch for Chinese translations for nsis. (#4407) Comments handled? + 'incsearch' with :s: (#3321) - Get E20 when using command history to get "'<,'>s/a/b" and no Visual area was set. (#3837) @@ -104,15 +118,14 @@ Terminal emulator window: - When 'encoding' is not utf-8, or the job is using another encoding, setup conversions. -Support for popup widows: -- Use text properties to define highlighting. -- Proposal on issue #4063 +Patch to use forward slash for completion even when 'shellslash' is set. +Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612) -Notifications for text changes, could be used for LSP. -- New event, similar to TextChanged, but guaranteed to provide sequential - information of all text changes. - Possibly build on undo info (but undo itself is also a change). - How to deal with ":%s/this/that" ? +Completion mixes results from the current buffer with tags and other files. +Happens when typing CTRL-N while still search for results. E.g., type "b_" in +terminal.c and then CTRL-N twice. +Should do current file first and not split it up when more results are found. +(Also #1890) Adding "10" to 'spellsuggest' causes spell suggestions to become very slow. (#4087) @@ -131,15 +144,12 @@ Improve fallback for menu translations, to avoid having to create lots of files that source the actual file. E.g. menu_da_de -> menu_da Include part of #3242? +Add typescript syntax, but as one file: +- https://github.com/HerringtonDarkholme/yats.vim + When a terminal exit_cb closes the window, a following typed key is lost, if it's in a mapping. (2018 Oct 6, #2302, #3522) -Completion mixes results from the current buffer with tags and other files. -Happens when typing CTRL-N while still search for results. E.g., type "b_" in -terminal.c and then CTRL-N twice. -Should do current file first and not split it up when more results are found. -(Also #1890) - Internal diff doesn't handle binary file like external diff does. (Mike Williams, 2018 Oct 30) @@ -152,9 +162,18 @@ Bug: script written with "-W scriptout" contains Key codes, while the script read with "-s scriptin" expects escape codes. Probably "scriptout" needs to be adjusted. (Daniel Steinberg, 2019 Feb 24, #4041) +Patch for ambiguous width characters in libvterm on MS-Windows 10. +(Nobuhiro Takasaki, #4411) + +Problem with colors in terminal window. (Jason Franklin, 2019 May 12) + Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019 Mar 5) +Patch to add getreginfo() and setreg() with an option to set the unnamed +register "", So that registers can be saved and fully restored. +(Andy Massimino, 2018 Aug 24, #3370) + Add a way to create an empty, hidden buffer. Like doing ":new|hide". ":let buf = bufcreate('name') @@ -243,6 +262,11 @@ punctuation is repeated. (Smylers, 2018 Nov 17, #3621) ml_get error: (Israel Chauca Fuentes, 2018 Oct 17, #3550). +Patch to add more info to OptionSet. Should mention what triggered the change +":set", ":setlocal", ":setglobal", "modeline"; and the old global value. +#4118. Proposed implementation: 2019 Mar 27. +Updated 2019 May 25. + Using single wide base character with double wide composing character gives drawing errors. Fill up the base character? (Dominique, #4328) @@ -269,35 +293,9 @@ Make ":interactive !cmd" stop termcap mode, also when used in an autocommand. Add buffer argument to undotree(). (#4001) -Patch to fix that Normal is not defined when not compiled with GUI. -(Christian Brabandt, 2019 May 7, on issue #4072) - -Patch to add optional arguments with default values. -(Andy Massimino, #3952) Needs to be reviewed. - -Patch to add more info to OptionSet. Should mention what triggered the change -":set", ":setlocal", ":setglobal", "modeline"; and the old global value. -#4118. Proposed implementation: 2019 Mar 27. -Updated 2019 Apr 9: ASAN fails. - -Problem with Visual yank when 'linebreak' and 'showbreak' are set. -Patch with tests, but it's not clear how it is supposed to work. (tommm, 2018 -Nov 17) Asked about this, Dec 22. Christian will have a look. - -Patch for larger icons in installer. (#978) Still not good. - -Patch to add commands to jump to quickfix entry above/below the cursor. -(Yegappan Lakshmanan, #4316) Also do :cbefore and :cafter. - -Patch to fix that using "5gj" starting inside a closed fold does not work on -screen lines but on text lines. (Julius Hulsmann, #4095) Lacks a test. - -Patch to implement 'diffref' option. (#3535) - Easier to use a 'diffmaster' option, is the extra complexity needed? - Not ready to include. - -Memory leaks in test_channel? (or is it because of fork()) +Using uninitialized value in test_gn Using uninitialized value in test_crypt. +memory leak in test_paste Memory leak in test_terminal: ==23530== by 0x2640D7: alloc (misc2.c:874) ==23530== by 0x2646D6: vim_strsave (misc2.c:1315) @@ -308,26 +306,22 @@ Memory leak in test_terminal: ==23530== by 0x35C923: term_start (terminal.c:421) ==23530== by 0x2AFF30: mch_call_shell_terminal (os_unix.c:4377) ==23530== by 0x2B16BE: mch_call_shell (os_unix.c:5383) +TODO: be able to run all parts of test_alot with valgrind separately Memory leak in test_alot with pyeval() (allocating partial) +Memory leak in test_alot with expand() +Memory leaks in test_channel? (or is it because of fork()) gethostbyname() is old, use getaddrinfo() if available. (#3227) matchaddpos() gets slow with many matches. Proposal by Rick Howe, 2018 Jul 19. -Patch to specify color for cterm=underline and cterm=undercurl, like "guisp". -Does #2405 do this? - -Patch to add an interrupt() function: sets got_int. Useful in an autocommand -such as BufWritePre that checks the file name or contents. - -More patches to check: -- #4098 improve Travis config - Should make 'listchars' global-local. Local to window or to buffer? Probably window. Add something like 'fillchars' local to window, but allow for specifying a highlight name. Esp. for the statusline. +And "extends" and "precedes" are also useful without 'list' set. Also in +'fillchars' or another option? Sourceforge Vim pages still have content, redirect from empty page. Check for PHP errors. (Wayne Davison, 2018 Oct 26) @@ -336,6 +330,22 @@ Patch to support ":tag <tagkind> <tagname>". (emmrk, 2018 May 7, #2871) Use something like ":tag {kind}/{tagname}". Not ready to include. +Problem with Visual yank when 'linebreak' and 'showbreak' are set. +Patch with tests, but it's not clear how it is supposed to work. (tommm, 2018 +Nov 17) Asked about this, Dec 22. Christian will have a look. + +Patch for larger icons in installer. (#978) Still not good. + +Patch to fix that using "5gj" starting inside a closed fold does not work on +screen lines but on text lines. (Julius Hulsmann, #4095) Lacks a test. + +Patch to implement 'diffref' option. (#3535) + Easier to use a 'diffmaster' option, is the extra complexity needed? + Not ready to include. + +Patch to specify color for cterm=underline and cterm=undercurl, like "guisp". +Patch #2405 does something like this, but in the wrong way. + :pedit resets the 'buflisted' option unexpectedly. (Wang Shidong, 2018 Oct 12, #3536) @@ -355,9 +365,6 @@ Feedback from someone who uses this? ml_get error. (Dominique Pelle, 2018 Sep 14, #3434) -Patch to use forward slash for completion even when 'shellslash' is set. -Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612) - Only output t_Cs when t_Ce is also set. do not use Cs and Ce termcap entries. (Daniel Hahler, 2018 Sep 25) Add t_cS and t_cR for cursor color select and reset. Use Cs and Cr terminfo values. @@ -383,10 +390,6 @@ includes the first screen line. (2018 Aug 23, #3368) Refactored HTML indent file. (Michael Lee, #1821) Ask to write a test first. -Patch to add getregpoint() and setreg() with an option to set "". -(Andy Massimino, 2018 Aug 24, #3370) -Better name? - MS-Windows: .lnk file not resolved properly when 'encoding' is set. (lkintact, 2018 Sep 22, #3473) diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt index 10623fda8..fb1674288 100644 --- a/runtime/doc/usr_05.txt +++ b/runtime/doc/usr_05.txt @@ -1,4 +1,4 @@ -*usr_05.txt* For Vim version 8.1. Last change: 2019 Feb 27 +*usr_05.txt* For Vim version 8.1. Last change: 2019 May 23 VIM USER MANUAL - by Bram Moolenaar @@ -234,7 +234,7 @@ remote connection, increase the number. See 'ttimeout'. set display=truncate Show @@@ in the last line if it is truncated, instead of hiding the whole -like. See 'display'. +line. See 'display'. > set incsearch diff --git a/runtime/doc/usr_22.txt b/runtime/doc/usr_22.txt index b3da19cc6..3fcdf31e6 100644 --- a/runtime/doc/usr_22.txt +++ b/runtime/doc/usr_22.txt @@ -220,7 +220,7 @@ a tab page share this directory except for windows with a window-local directory. Any new windows opened in this tab page will use this directory as the current working directory. Using a `:cd` command in a tab page will not change the working directory of tab pages which have a tab local directory. -When the global working directory is changed using the ":cd" command in a tab +When the global working directory is changed using the `:cd` command in a tab page, it will also change the current tab page working directory. diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt index 866664c4d..a9596c682 100644 --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 8.1. Last change: 2019 May 09 +*usr_41.txt* For Vim version 8.1. Last change: 2019 May 16 VIM USER MANUAL - by Bram Moolenaar @@ -813,6 +813,7 @@ Buffers, windows and the argument list: appendbufline() append a list of lines in the specified buffer deletebufline() delete lines from a specified buffer listener_add() add a callback to listen to changes + listener_flush() invoke listener callbacks listener_remove() remove a listener callback win_findbuf() find windows containing a buffer win_getid() get window ID of a window @@ -953,6 +954,7 @@ Testing: *test-functions* test_autochdir() enable 'autochdir' during startup test_override() test with Vim internal overrides test_garbagecollect_now() free memory right now + test_getvalue() get value of an internal variable test_ignore_error() ignore a specific error message test_null_blob() return a null Blob test_null_channel() return a null Channel diff --git a/runtime/doc/usr_toc.txt b/runtime/doc/usr_toc.txt index 9247ba03a..5b09d9624 100644 --- a/runtime/doc/usr_toc.txt +++ b/runtime/doc/usr_toc.txt @@ -1,4 +1,4 @@ -*usr_toc.txt* For Vim version 8.1. Last change: 2016 Mar 25 +*usr_toc.txt* For Vim version 8.1. Last change: 2019 May 24 VIM USER MANUAL - by Bram Moolenaar @@ -103,12 +103,13 @@ Read this from start to end to learn the essential commands. |usr_05.txt| Set your settings |05.1| The vimrc file |05.2| The example vimrc file explained - |05.3| Simple mappings - |05.4| Adding a package - |05.5| Adding a plugin - |05.6| Adding a help file - |05.7| The option window - |05.8| Often used options + |05.3| The defaults.vim file explained + |05.4| Simple mappings + |05.5| Adding a package + |05.6| Adding a plugin + |05.7| Adding a help file + |05.8| The option window + |05.9| Often used options |usr_06.txt| Using syntax highlighting |06.1| Switching it on diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index 5e9f5cccc..784a08e46 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -708,7 +708,7 @@ K Run a program to lookup the keyword under the :xr[estore] [display] Reinitializes the connection to the X11 server. Useful after the X server restarts, e.g. when running Vim for long time inside screen/tmux and connecting from - different machines). + different machines. [display] should be in the format of the $DISPLAY environment variable (e.g. "localhost:10.0") If [display] is omitted, then it reinitializes the diff --git a/runtime/doc/version8.txt b/runtime/doc/version8.txt index 3590db5a5..a00ba181a 100644 --- a/runtime/doc/version8.txt +++ b/runtime/doc/version8.txt @@ -1,4 +1,4 @@ -*version8.txt* For Vim version 8.1. Last change: 2018 May 17 +*version8.txt* For Vim version 8.1. Last change: 2019 May 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -25792,4 +25792,8522 @@ Solution: Move the todo items to the help file. Files: src/terminal.c +Patches *patches-8.2* +------- + +These patches were applied after the 8.1 release and will eventually lead up +to the 8.2 release. + +Patch 8.1.0001 +Problem: The netrw plugin does not work. +Solution: Make it accept version 8.x. +Files: runtime/autoload/netrw.vim + +Patch 8.1.0002 +Problem: :stopinsert changes the message position. +Solution: Save and restore msg_col and msg_row in clearmode(). (Jason + Franklin) +Files: src/screen.c, src/testdir/test_messages.vim + +Patch 8.1.0003 +Problem: The :compiler command is not tested. +Solution: Add a test. (Dominique Pelle, closes #2930) +Files: src/Makefile, src/testdir/test_alot.vim, + src/testdir/test_compiler.vim + +Patch 8.1.0004 +Problem: Test for :compiler command sometimes fails. +Solution: Be less strict about the error message. (Dominique Pelle) +Files: src/testdir/test_compiler.vim + +Patch 8.1.0005 +Problem: Test for :compiler command fails on MS-Windows. +Solution: Ignore difference in path. +Files: src/testdir/test_compiler.vim + +Patch 8.1.0006 +Problem: syn_id2cterm_bg() may be undefined. (Axel Bender) +Solution: Adjust #ifdef. +Files: src/syntax.c + +Patch 8.1.0007 +Problem: No test for "o" and "O" in Visual block mode. +Solution: Add a test. (Dominique Pelle, closes #2932) +Files: src/testdir/test_visual.vim + +Patch 8.1.0008 +Problem: No test for strwidth(). +Solution: Add a test. (Dominique Pelle, closes #2931) +Files: src/testdir/test_functions.vim + +Patch 8.1.0009 +Problem: Tabpages insufficiently tested. +Solution: Add more test coverage. (Dominique Pelle, closes #2934) +Files: src/testdir/test_tabpage.vim + +Patch 8.1.0010 +Problem: efm_to_regpat() is too long. +Solution: Split off three functions. (Yegappan Lakshmanan, closes #2924) +Files: src/quickfix.c + +Patch 8.1.0011 +Problem: maparg() and mapcheck() confuse empty and non-existing. +Solution: Return <Nop> for an existing non-empty mapping. (closes #2940) +Files: src/evalfunc.c, src/testdir/test_maparg.vim + +Patch 8.1.0012 +Problem: Misplaced #endif. +Solution: Move the #endif to after the expression. (David Binderman) +Files: src/fileio.c + +Patch 8.1.0013 +Problem: Using freed memory when changing terminal cursor color. +Solution: Make a copy of the color. (Dominique Pelle, closes #2938, + closes #2941) +Files: src/terminal.c + +Patch 8.1.0014 +Problem: qf_init_ext() is too long. +Solution: Split it into multiple functions. (Yegappan Lakshmanan, + closes #2939) +Files: src/quickfix.c + +Patch 8.1.0015 +Problem: Cursor color wrong when closing a terminal window, ending up in + another terminal window. (Dominique Pelle) +Solution: Bail out of terminal_loop() when the buffer changes. + (closes #2942) +Files: src/terminal.c + +Patch 8.1.0016 +Problem: Possible crash in term_wait(). (Dominique Pelle) +Solution: Check for a valid buffer after ui_delay(). (closes #2944) +Files: src/terminal.c + +Patch 8.1.0017 +Problem: Shell command completion has duplicates. (Yegappan Lakshmanan) +Solution: Use a hash table to avoid duplicates. (Ozaki Kiichi, closes #539, + closes #2733) +Files: src/ex_getln.c, src/testdir/test_cmdline.vim + +Patch 8.1.0018 +Problem: Using "gn" may select wrong text when wrapping. +Solution: Avoid wrapping when searching forward. (Christian Brabandt) +Files: src/search.c, src/testdir/test_gn.vim + +Patch 8.1.0019 +Problem: Error when defining a Lambda with index of a function result. +Solution: When not evaluating an expression and skipping a function call, + set the return value to VAR_UNKNOWN. +Files: src/userfunc.c, src/testdir/test_lambda.vim + +Patch 8.1.0020 +Problem: Cannot tell whether a register is being used for executing or + recording. +Solution: Add reg_executing() and reg_recording(). (Hirohito Higashi, + closes #2745) Rename the global variables for consistency. Store + the register name in reg_executing. +Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c, + src/testdir/test_functions.vim, src/getchar.c, src/normal.c, + src/ops.c, src/globals.h, src/edit.c, src/fileio.c, src/message.c, + src/screen.c + +Patch 8.1.0021 +Problem: Clang warns for undefined behavior. +Solution: Move #ifdef outside of sprintf() call.(suggestion by Michael + Jarvis, closes #2946) +Files: src/term.c + +Patch 8.1.0022 +Problem: Repeating put from expression register fails. +Solution: Re-evaluate the expression register. (Andy Massimino, + closes #2945) +Files: src/getchar.c, src/testdir/test_put.vim + +Patch 8.1.0023 +Problem: gcc 8.1 warns for use of strncpy(). (John Marriott) +Solution: Use mch_memmove() instead of STRNCPY(). +Files: src/memline.c + +Patch 8.1.0024 +Problem: % command not testded on #ifdef and comment. +Solution: Add tests. (Dominique Pelle, closes #2956) +Files: src/testdir/test_goto.vim + +Patch 8.1.0025 +Problem: No test for the undofile() function. +Solution: Add test. (Dominique Pelle, closes #2958) +Files: src/testdir/test_undo.vim + +Patch 8.1.0026 +Problem: Terminal test fails with very tall terminal. (Tom) +Solution: Fix the terminal window size in the test. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0027 +Problem: Difficult to make a plugin that feeds a line to a job. +Solution: Add the nitial code for the "prompt" buftype. +Files: runtime/doc/channel.txt, runtime/doc/eval.txt, + runtime/doc/options.txt, runtime/doc/tags, runtime/doc/todo.txt, + src/Makefile, src/buffer.c, src/channel.c, src/diff.c, src/edit.c, + src/evalfunc.c, src/normal.c, src/ops.c, src/option.c, + src/proto/buffer.pro, src/proto/channel.pro, src/proto/edit.pro, + src/proto/ops.pro, src/structs.h, src/testdir/Make_all.mak, + src/testdir/screendump.vim, src/testdir/test_prompt_buffer.vim + +Patch 8.1.0028 (after 8.1.0027) +Problem: Prompt buffer test fails on MS-Windows. +Solution: Disable the test for now. Remove stray assert. +Files: src/testdir/test_prompt_buffer.vim + +Patch 8.1.0029 +Problem: Terminal test fails on MS-Windows when "wc" exists. +Solution: Skip test with redirection on MS-Windows. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0030 +Problem: Stoping Vim running in a terminal may not work. +Solution: Instead of sending <Esc> send CTRL-O. +Files: src/testdir/screendump.vim, src/testdir/test_prompt_buffer.vim + +Patch 8.1.0031 +Problem: Terminal test aucmd_on_close is flaky. +Solution: Wait a bit longer. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0032 +Problem: BS in prompt buffer starts new line. +Solution: Do not allows BS over the prompt. Make term_sendkeys() handle + special keys. Add a test. +Files: src/option.c, src/terminal.c, src/testdir/test_prompt_buffer.vim + +Patch 8.1.0033 +Problem: Keys to stop Vim in terminal are wrong. (Marius Gedminas) +Solution: Move ":" to before CTRL-U. +Files: src/testdir/screendump.vim + +Patch 8.1.0034 +Problem: Cursor not restored with ":edit #". +Solution: Don't assume autocommands moved the cursor when it was moved to + the first non-blank. +Files: src/ex_cmds.c, src/testdir/test_edit.vim + +Patch 8.1.0035 +Problem: Not easy to switch between prompt buffer and other windows. +Solution: Accept CTRL-W commands in Insert mode. Start and stop Insert mode + as one would expect. +Files: src/edit.c, src/ex_docmd.c, src/structs.h, src/window.c + +Patch 8.1.0036 +Problem: Not restoring Insert mode if leaving a prompt buffer by using a + mouse click. +Solution: Set b_prompt_insert appropriately. Also correct cursor position + when moving cursor to last line. +Files: src/buffer.c, src/edit.c, src/window.c + +Patch 8.1.0037 +Problem: Cannot easily append lines to another buffer. +Solution: Add appendbufline(). +Files: runtime/doc/eval.txt, src/evalfunc.c, + src/testdir/test_bufline.vim, src/testdir/test_edit.vim + +Patch 8.1.0038 +Problem: Popup test causes Vim to exit. +Solution: Disable the broken part of the test for now. +Files: src/testdir/test_popup.vim + +Patch 8.1.0039 +Problem: Cannot easily delete lines in another buffer. +Solution: Add deletebufline(). +Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_bufline.vim + +Patch 8.1.0040 +Problem: Warnings from 64-bit compiler. +Solution: Add type casts. (Mike Williams) +Files: src/edit.c + +Patch 8.1.0041 +Problem: Attribute "width" missing from python window attribute list. +Solution: Add the item. (Ken Takata) Order the list like the items are used + in the WindowAttr() function. +Files: src/if_py_both.h, src/testdir/test86.ok, src/testdir/test87.ok + +Patch 8.1.0042 +Problem: If omni completion opens a window Insert mode is stopped. + (Hirohito Higashi) +Solution: Only set stop_insert_mode in a prompt buffer window. +Files: src/window.c + +Patch 8.1.0043 +Problem: ++bad argument of :edit does not work properly. +Solution: Return FAIL from get_bad_opt() only when there is no valid + argument. (Dominique Pelle, Christian Brabandt, closes #2966, + closes #2947) +Files: src/ex_docmd.c, src/testdir/test_plus_arg_edit.vim + +Patch 8.1.0044 +Problem: If a test function exists Vim this may go unnoticed. +Solution: Check for a test funtion quitting Vim. Fix tests that did exit + Vim. +Files: src/testdir/runtest.vim, src/testdir/test_assert.vim + +Patch 8.1.0045 (after 8.1.0038) +Problem: Popup test isn't run completely. +Solution: Remove "finish". Clean up function definitions. +Files: src/testdir/test_popup.vim + +Patch 8.1.0046 +Problem: Loading a session file fails if 'winheight' is a big number. +Solution: Set 'minwinheight' to zero at first. Don't give an error when + setting 'minwinheight' while 'winheight' is a big number. + Fix using vertical splits. Fix setting 'minwinwidth'. + (closes #2970) +Files: src/testdir/test_mksession.vim, src/option.c, src/window.c, + src/proto/window.pro + +Patch 8.1.0047 +Problem: No completion for :unlet $VAR. +Solution: Add completion. (Jason Franklin) +Files: src/ex_docmd.c, src/testdir/test_unlet.vim + +Patch 8.1.0048 +Problem: vim_str2nr() does not handle numbers close to the maximum. +Solution: Check for overflow more precisely. (Ken Takata, closes #2746) +Files: src/charset.c + +Patch 8.1.0049 +Problem: Shell cannot tell running in a terminal window. +Solution: Add the VIM_TERMINAL environment variable. (Christian Brabandt) +Files: runtime/doc/terminal.txt, src/os_unix.c, src/os_win32.c, + src/testdir/test_terminal.vim + +Patch 8.1.0050 (after 8.1.0049) +Problem: $VIM_TERMINAL is also set when not in a terminal window. +Solution: Pass a flag to indicate whether the job runs in a terminal. +Files: src/channel.c, src/proto/channel.pro, src/evalfunc.c, + src/terminal.c, src/os_unix.c, src/proto/os_unix.pro, + src/os_win32.c + +Patch 8.1.0051 (after 8.1.0050) +Problem: MS-Windows: missing #endif. +Solution: Add the #endif. +Files: src/os_win32.c + +Patch 8.1.0052 +Problem: When a mapping to <Nop> times out the next mapping is skipped. +Solution: Reset "timedout" when waiting for a character. (Christian + Brabandt, closes #2921) +Files: src/getchar.c + +Patch 8.1.0053 +Problem: The first argument given to 'completefunc' can be Number or + String, depending on the value. +Solution: Avoid guessing the type of an argument, use typval_T in the + callers of call_vim_function(). (Ozaki Kiichi, closes #2993) +Files: src/edit.c, src/eval.c, src/ex_getln.c, src/mbyte.c, src/normal.c, + src/proto/eval.pro, src/testdir/test_ins_complete.vim + +Patch 8.1.0054 +Problem: Compiler warning for using %ld for "long long". +Solution: Add a type cast. (closes #3002) +Files: src/os_unix.c + +Patch 8.1.0055 (after 8.1.0053) +Problem: Complete test has wrong order of arguments. Wrong type for + sentinel variable. +Solution: Swap arguments, use VAR_UNKNOWN. (Ozaki Kiichi) +Files: src/mbyte.c, src/testdir/test_ins_complete.vim + +Patch 8.1.0056 +Problem: Crash when using :hardcopy with illegal byte. +Solution: Check for string_convert() returning NULL. (Dominique Pelle) +Files: src/hardcopy.c, src/testdir/test_hardcopy.vim + +Patch 8.1.0057 +Problem: Popup menu displayed wrong when using autocmd. +Solution: Use aucmd_prepbuf(). Force updating status line if the popup menu + is going to be redrawn anyway. (Christian Brabandt, closes #3009) +Files: src/edit.c, src/screen.c, src/proto/screen.pro + +Patch 8.1.0058 +Problem: Display problem with margins and scrolling. +Solution: Place the cursor in the right column. (Kouichi Iwamoto, + closes #3016) +Files: src/screen.c + +Patch 8.1.0059 +Problem: Displayed digraph for "ga" wrong with 'encoding' "cp1251". +Solution: Convert from 'encoding' to "utf-8" if needed. (closes #3015) +Files: src/digraph.c, src/testdir/test_digraph.vim + +Patch 8.1.0060 +Problem: Crash when autocommands delete the current buffer. (Dominique + Pelle) +Solution: Check that autocommands don't change the buffer. +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0061 +Problem: Window title is wrong after resetting and setting 'title'. +Solution: Move resetting the title into maketitle(). (Jason Franklin) +Files: src/option.c, src/buffer.c + +Patch 8.1.0062 +Problem: Popup menu broken if a callback changes the window layout. (Qiming + Zhao) +Solution: Recompute the popup menu position if needed. Redraw the ruler + even when the popup menu is displayed. +Files: src/popupmnu.c, src/proto/popupmnu.pro, src/screen.c + +Patch 8.1.0063 +Problem: Mac: NSStringPboardType is deprecated. +Solution: Use NSPasteboardTypeString. (Akshay Hegde, closes #3022) +Files: src/os_macosx.m + +Patch 8.1.0064 +Problem: Typing CTRL-W in a prompt buffer shows mode "-- --". +Solution: Set restart_edit to 'A' and check for it. +Files: src/edit.c, src/window.c, src/screen.c + +Patch 8.1.0065 (after 8.1.0062) +Problem: Balloon displayed at the wrong position. +Solution: Do not reposition the popup menu at the cursor position. +Files: src/popupmnu.c + +Patch 8.1.0066 +Problem: Nasty autocommand causes using freed memory. (Dominique Pelle) +Solution: Do not force executing autocommands if the value of 'syntax' or + 'filetype' did not change. +Files: src/option.c + +Patch 8.1.0067 +Problem: Syntax highlighting not working when re-entering a buffer. +Solution: Do force executing autocommands when not called recursively. +Files: src/option.c + +Patch 8.1.0068 +Problem: Nasty autocommands can still cause using freed memory. +Solution: Disallow using setloclist() and setqflist() recursively. +Files: src/evalfunc.c + +Patch 8.1.0069 +Problem: Cannot handle pressing CTRL-C in a prompt buffer. +Solution: Add prompt_setinterrupt(). +Files: runtime/doc/eval.txt, src/edit.c, src/evalfunc.c, src/channel.c, + src/proto/channel.pro + +Patch 8.1.0070 +Problem: Missing part of the changes for prompt_setinterrupt(). +Solution: Add the missing changes. +Files: src/structs.h + +Patch 8.1.0071 +Problem: Terminal debugger only works with the terminal feature. +Solution: Make it also work with a prompt buffer. Makes it possible to use + on MS-Windows. Various other improvements. (closes #3012) +Files: runtime/doc/terminal.txt, + runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0072 +Problem: Use of 'termwinkey' is inconsistent. +Solution: Change the documentation and the behavior. (Ken Takata) +Files: src/terminal.c, runtime/doc/terminal.txt + +Patch 8.1.0073 +Problem: Crash when autocommands call setloclist(). (Dominique Pelle) +Solution: If the quickfix list changes then don't jump to the error. +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0074 (after 8.1.0073) +Problem: Crash when running quickfix tests. +Solution: Do not alloc a new location list when checking for the reference + to be still valid. +Files: src/quickfix.c + +Patch 8.1.0075 +Problem: No Vim logo in README file. +Solution: Add one. (Árni Dagur, closes #3024) +Files: README.md + +Patch 8.1.0076 +Problem: Command getting cleared with CTRL-W : in a terminal window. (Jason + Franklin) +Solution: Call redraw_after_callback() when editing the command line. +Files: src/terminal.c + +Patch 8.1.0077 +Problem: Header of README file is not nice. +Solution: Move text to the bottom. +Files: README.md + +Patch 8.1.0078 +Problem: "..." used inconsistently in messages. +Solution: Drop the space before " ...". +Files: src/spellfile.c, src/regexp_nfa.c + +Patch 8.1.0079 +Problem: Superfluous space in messages. +Solution: Remove the spaces. (closes #3030) +Files: src/gui_w32.c + +Patch 8.1.0080 +Problem: Can't see the breakpoint number in the terminal debugger. +Solution: Use the breakpoint number for the sign. (Christian Brabandt) +Files: runtime/doc/terminal.txt, + runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0081 +Problem: The terminal debugger doesn't adjust to changed 'background'. +Solution: Add an OptionSet autocommand. (Christian Brabandt) +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0082 +Problem: In terminal window, typing : at more prompt, inserts ':' instead + of starting another Ex command. +Solution: Add skip_term_loop and set it when putting ':' in the typeahead + buffer. +Files: src/globals.h, src/main.c, src/message.c + +Patch 8.1.0083 +Problem: "is" and "as" have trouble with quoted punctuation. +Solution: Check for punctuation before a quote. (Jason Franklin) +Files: src/search.c, src/testdir/test_textobjects.vim + +Patch 8.1.0084 +Problem: User name completion does not work on MS-Windows. +Solution: Use NetUserEnum() to get user names. (Yasuhiro Matsumoto) +Files: src/Make_ivc.mak, src/Make_cyg_ming.mak, src/Make_mvc.mak, + src/misc1.c + +Patch 8.1.0085 +Problem: No test for completing user name and language. +Solution: Add tests. (Dominique Pelle, closes #2978) +Files: src/testdir/test_cmdline.vim + +Patch 8.1.0086 +Problem: No tests for libcall() and libcallnr(). +Solution: Add tests. (Dominique Pelle, closes #2982) +Files: src/testdir/test_functions.vim + +Patch 8.1.0087 +Problem: v:shell_error is always zero when using terminal for "!cmd". +Solution: Use "exitval" of terminal-job. (Ozaki Kiichi, closes #2994) +Files: src/os_unix.c, src/os_win32.c, src/proto/terminal.pro, + src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0088 +Problem: Terminal test for stdout and stderr is a bit flaky. +Solution: Wait for both stdout and stderr to have been processed. (Ozaki + Kiichi, closes #2991) +Files: src/testdir/test_terminal.vim + +Patch 8.1.0089 +Problem: error when ending the terminal debugger +Solution: Fix deleting defined signs for breakpoints. Make the debugger + work better on MS-Windows. +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0090 +Problem: "..." used inconsistently in a message. +Solution: Define the message with " ..." once. (hint by Ken Takata) +Files: src/regexp_nfa.c + +Patch 8.1.0091 +Problem: MS-Windows: Cannot interrupt gdb when program is running. +Solution: Add debugbreak() and use it in the terminal debugger. + Respect 'modified' in a prompt buffer. +Files: src/evalfunc.c, runtime/doc/eval.txt, src/undo.c, + runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0092 (after 8.1.0091) +Problem: Prompt buffer test fails. +Solution: Set 'nomodified' before closing the window. (Ozaki Kiichi, + closes #3051 +Files: src/testdir/test_prompt_buffer.vim + +Patch 8.1.0093 +Problem: non-MS-Windows: Cannot interrupt gdb when program is running. +Solution: Only use debugbreak() on MS-Windows. +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0094 +Problem: Help text "usage:" is not capatalized. +Solution: Make it "Usage:". (closes #3044) +Files: src/main.c + +Patch 8.1.0095 +Problem: Dialog for ":browse tabnew" says "new window". +Solution: Use "new tab page". (closes #3053) +Files: src/ex_docmd.c + +Patch 8.1.0096 +Problem: Inconsistent use of the word autocommands. +Solution: Don't use auto-commands or "auto commands". +Files: src/fileio.c + +Patch 8.1.0097 +Problem: Superfluous space before exclamation mark. +Solution: Remove the space. Don't translate debug message. +Files: src/regexp_nfa.c + +Patch 8.1.0098 +Problem: Segfault when pattern with \z() is very slow. +Solution: Check for NULL regprog. Add "nfa_fail" to test_override() to be + able to test this. Fix that 'searchhl' resets called_emsg. +Files: src/syntax.c, runtime/doc/eval.txt, src/evalfunc.c, src/vim.h, + src/testdir/test_syntax.vim, src/globals.h, src/screen.c, + src/regexp.c, src/regexp_nfa.c + +Patch 8.1.0099 +Problem: Exclamation mark in error message not needed. +Solution: Remove the exclamation mark. +Files: src/regexp_nfa.c + +Patch 8.1.0100 +Problem: Terminal debugger: error when setting a watch point. +Solution: Don't try defining a sign for a watch point. +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0101 +Problem: No test for getcmdwintype(). +Solution: Add a test. (Dominique Pelle, closes #3068) +Files: src/testdir/test_cmdline.vim + +Patch 8.1.0102 +Problem: Cannot build without syntax highlighting. +Solution: Add #ifdef around using reg_do_extmatch. +Files: src/regexp.c + +Patch 8.1.0103 +Problem: Long version string cannot be translated. +Solution: Build the string in init_longVersion(). +Files: src/globals.h, src/version.h, src/version.c, + src/proto/version.pro, src/main.c + +Patch 8.1.0104 +Problem: Can't build without the +eval feature. +Solution: Add #ifdef. +Files: src/regexp_nfa.c + +Patch 8.1.0105 +Problem: All tab stops are the same. +Solution: Add the variable tabstop feature. (Christian Brabandt, + closes #2711) +Files: runtime/doc/change.txt, runtime/doc/options.txt, + runtime/doc/various.txt, runtime/optwin.vim, src/beval.c, + src/beval.h, src/buffer.c, src/charset.c, src/edit.c, + src/evalfunc.c, src/ex_cmds.c, src/feature.h, src/gui_beval.c, + src/gui_w32.c, src/hardcopy.c, src/message.c, src/misc1.c, + src/ops.c, src/option.c, src/option.h, src/proto/misc1.pro, + src/proto/option.pro, src/screen.c, src/structs.h, + src/testdir/Make_all.mak, src/testdir/gen_opt_test.vim, + src/testdir/test_breakindent.vim, src/testdir/test_vartabs.vim, + src/version.c, src/workshop.c, src/Makefile + +Patch 8.1.0106 (after 8.1.0103) +Problem: Build fails when HAVE_DATE_TIME is undefined. +Solution: Always define init_longVersion(). (Christian Brabandt, + closes #3075) +Files: src/version.c + +Patch 8.1.0107 +Problem: Python: getting buffer option clears message. (Jacob Niehus) +Solution: Don't use aucmd_prepbuf(). (closes #3079) +Files: src/option.c + +Patch 8.1.0108 +Problem: No Danish translations. +Solution: Add Danish message translations. (closes #3073) Move list of + languages to a common makefile. +Files: src/po/Makefile, src/po/Make_cyg.mak, src/po/Make_mvc.mak, + src/po/Make_ming.mak, src/po/Make_all.mak, src/po/da.po + +Patch 8.1.0109 +Problem: New po makefile missing from distribution. +Solution: Add it to the file list. +Files: Filelist + +Patch 8.1.0110 +Problem: File name not displayed with ":file" when 'F' is in 'shortmess'. +Solution: Always display the file name when there is no argument (Christian + Brabandt, closes #3070) +Files: src/ex_cmds.c, src/testdir/test_options.vim + +Patch 8.1.0111 +Problem: .po files do not use recommended names. +Solution: Give a warning if the recommended name is not used. Accept the + recommended name for conversion. (Christian Brabandt, Ken Takata) +Files: src/po/Makefile, src/po/sjiscorr.c, src/po/check.vim + +Patch 8.1.0112 +Problem: No error when using bad arguments with searchpair(). +Solution: Add error messages. +Files: src/evalfunc.c, src/testdir/test_search.vim + +Patch 8.1.0113 +Problem: Compiler warning for unused variable. (Yegappan Lakshmanan) +Solution: Add UNUSED. (Christian Brabandt) +Files: src/screen.c + +Patch 8.1.0114 +Problem: Confusing variable name. +Solution: Rename new_ts to new_vts_array. Change zero to NULL. +Files: src/ex_cmds.c, src/option.c + +Patch 8.1.0115 +Problem: The matchparen plugin may throw an error. +Solution: Change the skip argument from zero to "0". +Files: runtime/plugin/matchparen.vim + +Patch 8.1.0116 +Problem: Display problem with 'vartabstop' and 'linebreak'. (Chauca + Fuentes) +Solution: Call tabstop_padding(). (Christian Brabandt, closes #3076) +Files: src/screen.c, src/testdir/test_vartabs.vim + +Patch 8.1.0117 +Problem: URL in install program still points to SourceForge. +Solution: Change it to www.vim.org. (closes #3100) +Files: src/dosinst.c + +Patch 8.1.0118 +Problem: Duplicate error message for put command. +Solution: Check return value of u_save(). (Jason Franklin) +Files: src/ops.c, src/testdir/test_messages.vim src/testdir/test_put.vim + +Patch 8.1.0119 +Problem: Failing test goes unnoticed because testdir/messages is not + written. +Solution: Set 'nomodifiable' only local to the buffer. +Files: src/testdir/test_put.vim + +Patch 8.1.0120 +Problem: Buffer 'modified' set even when :sort has no changes. +Solution: Only set 'modified' when lines are moved. (Jason Franklin) +Files: src/ex_cmds.c, src/testdir/test_sort.vim + +Patch 8.1.0121 +Problem: Crash when using ballooneval related to 'vartabstop'. +Solution: Initialize balloonEval->vts to NULL. (Markus Braun) +Files: src/ex_cmds2.c, src/gui_beval.c, src/gui_w32.c, src/gui.c + +Patch 8.1.0122 +Problem: Translators don't always understand the maintainer message. +Solution: Add a comment that ends up in the generated po file. (Christian + Brabandt, closes #3037) +Files: src/message.c + +Patch 8.1.0123 +Problem: MS-Windows: colors are wrong after setting 'notgc'. +Solution: Only call control_console_color_rgb() for the win32 terminal. + (Nobuhiro Takasaki, closes #3107) +Files: src/option.c + +Patch 8.1.0124 +Problem: has('vcon') returns true even for non-win32 terminal. +Solution: Check the terminal type. (Nobuhiro Takasaki, closes #3106) +Files: src/evalfunc.c + +Patch 8.1.0125 +Problem: Virtual edit replace with multi-byte fails at end of line. (Lukas + Werling) +Solution: use ins_char() to add the character. (Christian Brabandt, + closes #3114) Rename PCHAR() to PBYTE() to avoid mistakes like + this. +Files: src/ops.c, src/testdir/test_virtualedit.vim, src/macros.h + +Patch 8.1.0126 +Problem: Various problems with 'vartabstop'. +Solution: Fix memory leak. Fix crash. Add a few more tests. (Christian + Brabandt, closes #3076) +Files: src/ex_cmds.c, src/option.c, src/screen.c, + src/testdir/test_vartabs.vim + +Patch 8.1.0127 +Problem: Build failure when disabling the session feature. (Pawel Slowik) +Solution: Adjust #ifdef for vim_chdirfile(). +Files: src/misc2.c + +Patch 8.1.0128 +Problem: Building with MinGW does not work out-of-the-box. +Solution: Add instructions for MSYS2. Set default WINVER. Add batch files + to set $PATH for MSYS2. +Files: src/Make_cyg_ming.mak, src/INSTALLpc.txt, src/msys32.bat, + src/msys64.bat, Filelist + +Patch 8.1.0129 +Problem: Still some xterm-like terminals get a stray "p" on startup. +Solution: Consider all terminals that reply with a version smaller than 95 + as not an xterm. (James McCoy) +Files: src/term.c + +Patch 8.1.0130 +Problem: ":profdel func" does not work if func was called already. + (Dominique Pelle) +Solution: Reset uf_profiling and add a flag to indicate initialization was + done. +Files: src/structs.h, src/userfunc.c + +Patch 8.1.0131 +Problem: :profdel is not tested. +Solution: Add a test. (Dominique Pelle, closes #3123) +Files: src/testdir/test_profile.vim + +Patch 8.1.0132 +Problem: Lua tests are old style. +Solution: Convert to new style tests. Improve coverage. (Dominique Pelle, + closes #3091) +Files: src/Makefile, src/testdir/Make_all.mak, + src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms, + src/testdir/test85.in, src/testdir/test_lua.vim + +Patch 8.1.0133 +Problem: tagfiles() can have duplicate entries. +Solution: Simplify the filename to make checking for duplicates work better. + Add a test. (Dominique Pelle, closes #2979) +Files: src/tag.c, src/testdir/test_taglist.vim + +Patch 8.1.0134 +Problem: Lua interface does not support funcref. +Solution: Add funcref support. (Luis Carvalho) +Files: src/if_lua.c, src/testdir/test_lua.vim + +Patch 8.1.0135 +Problem: Undo message delays screen update for CTRL-O u. +Solution: Add smsg_attr_keep(). (closes #3125) +Files: src/message.c, src/proto.h, src/undo.c + +Patch 8.1.0136 +Problem: Lua tests don't cover new features. +Solution: Add more tests. (Dominique Pelle, closes #3130) +Files: runtime/doc/if_lua.txt, src/testdir/test_lua.vim + +Patch 8.1.0137 +Problem: CI does not run with TCL. +Solution: Add TCL to the travis config. (Dominique Pelle, closes #3133) +Files: .travis.yml + +Patch 8.1.0138 +Problem: Negative value of 'softtabstop' not used correctly. +Solution: Use get_sts_value(). (Tom Ryder) +Files: src/edit.c, src/option.c, src/Makefile, src/testdir/test_tab.vim + +Patch 8.1.0139 +Problem: Lua tests fail on some platforms. +Solution: Accept a hex number with and without "0x". (Ken Takata, + closes #3137) +Files: src/testdir/test_lua.vim + +Patch 8.1.0140 +Problem: Recording into a register has focus events. (Michael Naumann) +Solution: Don't record K_FOCUSGAINED and K_FOCUSLOST. (closes #3143) +Files: src/getchar.c + +Patch 8.1.0141 +Problem: :cexpr no longer jumps to the first error. +Solution: Use the quickfix list identifier. (Yegappan Lakshmanan, + closes #3092) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0142 +Problem: Xterm and vt320 builtin termcap missing keypad keys. +Solution: Add the escape sequences. (Kouichi Iwamoto, closes #2973) +Files: src/term.c + +Patch 8.1.0143 +Problem: Matchit and matchparen don't handle E363. +Solution: Catch the E363 error. (Christian Brabandt) +Files: runtime/pack/dist/opt/matchit/plugin/matchit.vim, + runtime/plugin/matchparen.vim + +Patch 8.1.0144 +Problem: The :cd command does not have good test coverage. +Solution: Add more tests. (Dominique Pelle, closes #2972) +Files: src/testdir/test_cd.vim + +Patch 8.1.0145 +Problem: Test with grep is failing on MS-Windows. +Solution: Skip the test. +Files: src/testdir/test_quickfix.vim + +Patch 8.1.0146 +Problem: When $LANG is set the compiler test may fail. +Solution: Unset $LANG. +Files: src/testdir/test_compiler.vim + +Patch 8.1.0147 +Problem: Compiler warning when building with Python 3.7. +Solution: #undef PySlice_GetIndicesEx before redefining it. (Ozaki Kiichi, + closes #3153) +Files: src/if_python3.c + +Patch 8.1.0148 +Problem: Memory leak when using :tcl expr command. +Solution: Free the result of expression evaluation. (Dominique Pelle, + closes #3150) +Files: src/if_tcl.c + +Patch 8.1.0149 +Problem: The generated sessions file does not restore tabs properly if :lcd + was used in one of them. +Solution: Create the tab pages before setting the directory. (Yee Cheng + Chin, closes #3152) +Files: src/ex_docmd.c, src/testdir/test_mksession.vim + +Patch 8.1.0150 +Problem: Insufficient test coverage for Tcl. +Solution: Add more tests. (Dominique Pelle, closes #3140) +Files: src/testdir/test_tcl.vim + +Patch 8.1.0151 +Problem: Mksession test fails on MS-Windows. +Solution: Always use an argument for :lcd. +Files: src/testdir/test_mksession.vim + +Patch 8.1.0152 +Problem: Cannot easily run individual tests on MS-Windows. +Solution: Move the list of tests to a separate file. Add a build rule in + the MSVC makefile. +Files: Filelist, src/Makefile, src/Make_all.mak, src/Make_mvc.mak + +Patch 8.1.0153 (after 8.1.0152) +Problem: Build with SHADOWDIR fails. (Elimar Riesebieter) +Solution: Create a link for Make_all.mak. (Tony Mechelynck) +Files: src/Makefile + +Patch 8.1.0154 +Problem: Crash with "set smarttab shiftwidth=0 softtabstop=-1". +Solution: Fall back to using 'tabstop'. (closes #3155) +Files: src/edit.c, src/testdir/test_tab.vim + +Patch 8.1.0155 +Problem: Evim.man missing from the distribution. +Solution: Add it to the list. +Files: Filelist + +Patch 8.1.0156 +Problem: MS-Windows compiler warning. +Solution: Add a type cast. (Mike Williams) +Files: src/version.c + +Patch 8.1.0157 +Problem: Old iTerm2 is not recognized, resulting in stray output. +Solution: Recognize the termresponse. +Files: src/term.c + +Patch 8.1.0158 +Problem: GUI: input() fails if CTRL-C was pressed before. (Michael Naumann) +Solution: call vpeekc() to drop the CTRL-C from the input stream. +Files: src/ex_docmd.c + +Patch 8.1.0159 +Problem: Completion for user names does not work if a prefix is also a full + matching name. (Nazri Ramliy) +Solution: Accept both full and partial matches. (Dominique Pelle) +Files: src/misc1.c, src/ex_docmd.c + +Patch 8.1.0160 +Problem: No Danish manual translations. +Solution: Add the Danish manual translations to the file list. +Files: Filelist + +Patch 8.1.0161 +Problem: Buffer not updated with 'autoread' set if file was deleted. + (Michael Naumann) +Solution: Don't set the timestamp to zero. (closes #3165) +Files: src/fileio.c, src/testdir/test_stat.vim + +Patch 8.1.0162 +Problem: Danish and German man pages are not installed. (Tony Mechelynck) +Solution: Adjust the makefile +Files: src/Makefile + +Patch 8.1.0163 +Problem: Insufficient testing for Tcl. +Solution: Add a few more tests. (Dominique Pelle, closes #3166) +Files: src/testdir/test_tcl.vim + +Patch 8.1.0164 +Problem: luaeval('vim.buffer().name') returns an error. +Solution: Return an empty string. (Dominique Pelle, closes #3167) +Files: src/if_lua.c, src/testdir/test_lua.vim + +Patch 8.1.0165 +Problem: :clist output can be very long. +Solution: Support filtering :clist entries. (Yegappan Lakshmanan) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0166 +Problem: Using dict_add_nr_str() is clumsy. +Solution: Split into two functions. (Ozaki Kiichi, closes #3154) +Files: src/channel.c, src/dict.c, src/edit.c, src/evalfunc.c, + src/ex_cmds2.c, src/ops.c, src/option.c, src/proto/dict.pro, + src/quickfix.c, src/tag.c, src/terminal.c, src/undo.c + +Patch 8.1.0167 +Problem: Lock flag in new dictitem is reset in many places. +Solution: Always reset the lock flag. +Files: src/dict.c, src/channel.c, src/ex_cmds2.c, src/userfunc.c, + src/if_perl.xs, src/if_py_both.h + +Patch 8.1.0168 +Problem: Output of :marks is too short with multi-byte chars. (Tony + Mechelynck) +Solution: Get more bytes from the text line. +Files: src/mark.c, src/testdir/test_marks.vim + +Patch 8.1.0169 (after 8.1.0165) +Problem: Calling message_filtered() a bit too often. +Solution: Only call message_filtered() when filtering is already false. +Files: src/quickfix.c, runtime/doc/quickfix.txt + +Patch 8.1.0170 +Problem: Invalid memory use with complicated pattern. (Andy Massimino) +Solution: Reallocate the list of listids when needed. (closes #3175) + Remove unnecessary function prototypes. +Files: src/regexp_nfa.c + +Patch 8.1.0171 +Problem: Typing CTRL-W n in a terminal window causes ml_get error. +Solution: When resizing the terminal outside of terminal_loop() make sure + the snapshot is complete. +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0172 +Problem: 'viminfofile' option does not behave like a file name. +Solution: Add the P_EXPAND flag. (closes #3178) +Files: src/option.c + +Patch 8.1.0173 +Problem: Compiler warning on MS-Windows. +Solution: Add type cast. (Mike Williams) +Files: src/libvterm/src/state.c + +Patch 8.1.0174 +Problem: After paging up and down fold line is wrong. +Solution: Correct the computation of w_topline and w_botline. (Hirohito + Higashi) +Files: src/move.c, src/testdir/test_fold.vim + +Patch 8.1.0175 +Problem: Marks test fails in very wide window. (Vladimir Lomov) +Solution: Extend the text to match 'columns'. (closes #3180, closes #3181) +Files: src/testdir/test_marks.vim + +Patch 8.1.0176 +Problem: Overlapping string argument for strcpy(). (Coverity) +Solution: Use STRMOVE() instead of STRCPY(). (Dominique Pelle, closes #3187) +Files: src/term.c + +Patch 8.1.0177 +Problem: Defining function in sandbox is inconsistent, cannot use :function + but can define a lambda. +Solution: Allow defining a function in the sandbox, but also use the sandbox + when executing it. (closes #3182) +Files: src/userfunc.c, src/ex_cmds.h + +Patch 8.1.0178 +Problem: Warning for passing pointer to non-pointer argument. +Solution: Use zero instead of NULL. +Files: src/if_ole.cpp + +Patch 8.1.0179 +Problem: Redundant condition for boundary check. +Solution: Remove the condition. (Dominique Pelle). Change FALSE to FAIL. +Files: src/undo.c + +Patch 8.1.0180 +Problem: Static analysis errors in Lua interface. (Coverity) +Solution: Check for NULL pointers. +Files: src/if_lua.c + +Patch 8.1.0181 +Problem: Memory leak with trailing characters in skip expression. +Solution: Free the return value. +Files: src/eval.c, src/testdir/test_search.vim + +Patch 8.1.0182 +Problem: Unicode standard was updated. +Solution: Include the changes. (Christian Brabandt) +Files: src/mbyte.c + +Patch 8.1.0183 +Problem: Lua API changed, breaking the build. +Solution: Adjust prototype of lua_rawgeti(). (Ken Takata, + closes #3157, closes #3144) +Files: src/if_lua.c + +Patch 8.1.0184 +Problem: Not easy to figure out the window layout. +Solution: Add "wincol" and "winrow" to what getwininfo() returns. +Files: src/evalfunc.c, src/testdir/test_bufwintabinfo.vim, + runtime/doc/eval.txt + +Patch 8.1.0185 +Problem: Running tests writes lua.vim even though it is not used. +Solution: Stop writing lua.vim. +Files: src/testdir/test1.in, src/testdir/Make_dos.mak, + src/testdir/Make_ming.mak, src/testdir/Make_vms.mms, + src/testdir/Makefile + +Patch 8.1.0186 +Problem: Test for getwininfo() fails in GUI. +Solution: Account for missing tabline. +Files: src/testdir/test_bufwintabinfo.vim + +Patch 8.1.0187 (after 8.1.0184) +Problem: getwininfo() and win_screenpos() return different numbers. +Solution: Add one to "wincol" and "winrow" from getwininfo(). +Files: src/evalfunc.c, src/testdir/test_bufwintabinfo.vim, + runtime/doc/eval.txt + +Patch 8.1.0188 +Problem: No test for ":cscope add". +Solution: Add a test. (Dominique Pelle, closes #3212) +Files: src/testdir/test_cscope.vim + +Patch 8.1.0189 +Problem: Function defined in sandbox not tested. +Solution: Add a text. +Files: src/testdir/test_functions.vim + +Patch 8.1.0190 +Problem: Perl refcounts are wrong. +Solution: Improve refcounting. Add a test. (Damien) +Files: src/if_perl.xs, src/testdir/test_perl.vim + +Patch 8.1.0191 (after 8.1.0190) +Problem: Perl test fails in 24 line terminal. +Solution: Create fewer windows. +Files: src/testdir/test_perl.vim + +Patch 8.1.0192 +Problem: Executing regexp recursively fails with a crash. +Solution: Move global variables into "rex". +Files: src/regexp.c, src/regexp.h, src/regexp_nfa.c + +Patch 8.1.0193 +Problem: Terminal debugger buttons don't always work. (Dominique Pelle) +Solution: Set 'cpo' to its default value. +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0194 +Problem: Possibly use of NULL pointer. (Coverity) +Solution: Reset the re_in_use flag earlier. +Files: src/regexp.c + +Patch 8.1.0195 +Problem: Terminal debugger commands don't always work. (Dominique Pelle) +Solution: Set 'cpo' to its default value when defining commands. (Christian + Brabandt) +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0196 +Problem: Terminal debugger error with .gdbinit file. +Solution: Check two lines for the "new ui" response. (hint from Hirohito + Higashi) +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0197 +Problem: Windows GUI: title for search/replace is wrong. +Solution: Remove remark about doubling backslash. (closes #3230) +Files: src/gui_win32.c + +Patch 8.1.0198 +Problem: There is no hint that syntax is disabled for 'redrawtime'. +Solution: Add a message. +Files: src/syntax.c + +Patch 8.1.0199 +Problem: spellbadword() does not check for caps error. (Dominique Pelle) +Solution: Adjust capcol when advancing. +Files: src/userfunc.c + +Patch 8.1.0200 +Problem: spellbadword() not tested. +Solution: Add a test. (Dominique Pelle, closes #3235) +Files: src/testdir/test_spell.vim + +Patch 8.1.0201 +Problem: Newer Python uses "importlib" instead of "imp". +Solution: Use "importlib" for newer Python versions. (closes #3163) +Files: src/if_py_both.h, src/testdir/test87.in + +Patch 8.1.0202 +Problem: :version always shows +packages. (Takuya Fujiwara) +Solution: Add #ifdef (closes #3198) Also for has(). +Files: src/version.c, src/evalfunc.c + +Patch 8.1.0203 +Problem: Building with Perl 5.28 fails on Windows. +Solution: Define Perl_mg_get. (closes #3196) +Files: src/if_perl.xs + +Patch 8.1.0204 +Problem: inputlist() is not tested. +Solution: Add a test. (Dominique Pelle, closes #3240) +Files: src/testdir/test_functions.vim + +Patch 8.1.0205 +Problem: Invalid memory access with invalid modeline. +Solution: Pass pointer limit. Add a test. (closes #3241) +Files: src/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_modeline.vim, src/option.c + +Patch 8.1.0206 (after 8.1.0205) +Problem: Duplicate test function name. +Solution: Rename both functions. +Files: src/testdir/test_modeline.vim, src/testdir/test_glob2regpat.vim + +Patch 8.1.0207 +Problem: Need many menu translation files to cover regions. +Solution: When there is no region match, try without. (Christian Brabandt) +Files: runtime/menu.vim + +Patch 8.1.0208 (after 8.1.0205) +Problem: File left behind after running individual test. +Solution: Delete the file. +Files: src/testdir/test_modeline.vim + +Patch 8.1.0209 +Problem: Stderr output from Ruby messes up display. +Solution: Turn the stderr output into a Vim message. (Masataka Pocke + Kuwabara, closes #3238) +Files: src/if_ruby.c + +Patch 8.1.0210 +Problem: Still a few K&R function declarations. +Solution: Use ANSI function declarations (Hirohito Higashi) +Files: src/eval.c, src/evalfunc.c, src/list.c + +Patch 8.1.0211 +Problem: Expanding a file name "~" results in $HOME. (Aidan Shafran) +Solution: Change "~" to "./~" before expanding. (closes #3072) +Files: src/testdir/test_expand.vim, src/ex_docmd.c, src/eval.c, + src/proto/eval.pro, src/evalfunc.c, src/if_cscope.c, src/misc1.c + +Patch 8.1.0212 +Problem: Preferred cursor column not set in interfaces. +Solution: Set w_set_curswant when setting the cursor. (David Hotham, + closes #3060) +Files: src/if_lua.c, src/if_mzsch.c, src/if_perl.xs, src/if_py_both.h, + src/if_ruby.c, src/if_tcl.c, src/testdir/test_lua.vim, + src/testdir/test_perl.vim, src/testdir/test_python2.vim, + src/testdir/test_python3.vim, src/testdir/test_ruby.vim, + src/testdir/test_tcl.vim + +Patch 8.1.0213 +Problem: CTRL-W CR does not work properly in a quickfix window. +Solution: Split the window if needed. (Jason Franklin) +Files: src/normal.c, src/proto/quickfix.pro, src/quickfix.c, + src/testdir/test_quickfix.vim, src/window.c + +Patch 8.1.0214 +Problem: +autochdir feature not reported by has() or :version. +Solution: Add the feature in the list. +Files: src/evalfunc.c, src/version.c + +Patch 8.1.0215 +Problem: No error if configure --with-x cannot configure X. +Solution: Check that when --with-x is used X can be configured. +Files: src/configure.ac, src/auto/configure + +Patch 8.1.0216 +Problem: Part of file not indented properly. +Solution: Adjust the indent. (Ken Takata) +Files: src/getchar.c + +Patch 8.1.0217 +Problem: Compiler warning for variable set but not used. +Solution: Move tilde_file inside #ifdef. (Hirohito Higashi, closes #3255) +Files: src/ex_docmd.c + +Patch 8.1.0218 +Problem: Cannot add matches to another window. (Qiming Zhao) +Solution: Add the "window" argument to matchadd() and matchaddpos(). + (closes #3260) +Files: src/evalfunc.c, runtime/doc/eval.txt, src/testdir/test_match.vim + +Patch 8.1.0219 +Problem: Expanding ## fails to escape backtick. +Solution: Escape a backtick in a file name. (closes #3257) +Files: src/ex_docmd.c, src/testdir/test_edit.vim + +Patch 8.1.0220 +Problem: Ruby converts v:true and v:false to a number. +Solution: Use Qtrue and Qfalse instead. (Masataka Pocke Kuwabara, + closes #3259) +Files: src/if_ruby.c, src/testdir/test_ruby.vim + +Patch 8.1.0221 +Problem: Not enough testing for the Ruby interface. +Solution: Add more tests. (Dominique Pelle, closes #3252) +Files: runtime/doc/if_ruby.txt, src/testdir/test_ruby.vim + +Patch 8.1.0222 +Problem: Errors are reported for "make install". +Solution: Skip missing language files. (Christian Brabandt, closes #3254) +Files: src/installman.sh + +Patch 8.1.0223 +Problem: Completing shell command finds sub-directories in $PATH. +Solution: Remove EW_DIR when completing an item in $PATH. (Jason Franklin) +Files: src/ex_getln.c, src/testdir/test_cmdline.vim + +Patch 8.1.0224 +Problem: Hang in bracketed paste mode when t_PE not encountered. +Solution: Break out of the loop when got_int is set. (suggested by Christian + Brabandt, closes #3146) +Files: src/edit.c + +Patch 8.1.0225 +Problem: Mode() does not indicate using CTRL-O from Insert mode. +Solution: Add "niI", "niR" and "niV" to mode() result. (closes #3000) +Files: runtime/doc/eval.txt, src/evalfunc.c, + src/testdir/test_functions.vim + +Patch 8.1.0226 +Problem: Too many #ifdefs. +Solution: Graduate the +vreplace feature, it's not much code and quite a few + #ifdefs. +Files: runtime/doc/change.txt, runtime/doc/various.txt, src/edit.c, + src/evalfunc.c, src/gui.c, src/misc1.c, src/misc2.c, src/normal.c, + src/ops.c, src/screen.c, src/version.c, src/feature.h, + src/globals.h, src/macros.h, src/vim.h + +Patch 8.1.0227 +Problem: Spaces instead of tabs in makefile. +Solution: Use tabs and fix sorting. (Ken Takata) +Files: src/po/Make_all.mak + +Patch 8.1.0228 +Problem: Dropping files is ignored while Vim is busy. +Solution: Postpone the effect of dropping files until it's safe. +Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/gui.c, src/gui.h, + src/screen.c, src/main.c, src/gui_mac.c + +Patch 8.1.0229 +Problem: Crash when dumping profiling data. +Solution: Reset flag indicating that initialization was done. +Files: src/userfunc.c + +Patch 8.1.0230 +Problem: Directly checking 'buftype' value. +Solution: Add the bt_normal() function. (Yegappan Lakshmanan) +Files: src/buffer.c, src/ex_docmd.c, src/fileio.c, src/proto/buffer.pro, + src/quickfix.c + +Patch 8.1.0231 +Problem: :help -? goes to help for -+. +Solution: Add -? to list of special cases. (Hirohito Higashi) +Files: src/ex_cmds.c, src/testdir/test_help_tagjump.vim + +Patch 8.1.0232 +Problem: Ruby error does not include backtrace. +Solution: Add an error backtrace. (Masataka Pocke Kuwabara, closes #3267) +Files: src/if_ruby.c + +Patch 8.1.0233 +Problem: "safe" argument of call_vim_function() is always FALSE. +Solution: Remove the argument. +Files: src/eval.c, src/proto/eval.pro, src/edit.c, src/mbyte.c, + src/normal.c, src/ex_getln.c + +Patch 8.1.0234 +Problem: Incorrect reference counting in Perl interface. +Solution: Call SvREFCNT_inc more often, add a test. (Damien) +Files: src/if_perl.xs, src/testdir/test_perl.vim + +Patch 8.1.0235 (after 8.1.0231) +Problem: More help tags that jump to the wrong location. +Solution: Add more exceptions and a table for "expr-" tags. (Hirohito + Higashi) +Files: src/ex_cmds.c, src/testdir/test_help_tagjump.vim + +Patch 8.1.0236 (after 8.1.0232) +Problem: Ruby build fails when ruby_intern is missing. +Solution: Do not use ruby_intern2. (Ken Takata) +Files: src/if_ruby.c + +Patch 8.1.0237 +Problem: Ruby on Cygwin doesn't always work. +Solution: Use LIBRUBY_SO if LIBRUBY_ALIASES isn't set. (Ken Takata) +Files: src/configure.ac, src/auto/configure + +Patch 8.1.0238 +Problem: 'buftype' is cleared when using ":term ++hidden cat". (Marcin + Szamotulski) +Solution: Set the "options initialized" flag earlier. (closes #3278) +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0239 (after 8.1.0236) +Problem: Now Ruby build fails on other systems. +Solution: Always define rb_intern. (Ken Takata, closes #3275) +Files: src/if_ruby.c + +Patch 8.1.0240 +Problem: g:actual_curbuf set in wrong scope. (Daniel Hahler) +Solution: Prepend the "g:" name space. (closes #3279) +Files: src/buffer.c + +Patch 8.1.0241 +Problem: Effect of ":tabmove N" is not clear. +Solution: Add a test that shows the behavior. (Christian Brabandt, + closes #3288) +Files: src/testdir/test_tabpage.vim + +Patch 8.1.0242 +Problem: Insert mode completion may use an invalid buffer pointer. +Solution: Check for ins_buf to be valid. (closes #3290) +Files: src/edit.c + +Patch 8.1.0243 +Problem: Using :term ++close ++hidden closes a window. (Marcin Szamotulski) +Solution: Don't close the window if only using it temporarily for unloading + the terminal buffer. (closes #3287) +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0244 +Problem: No redraw when using a STOP signal on Vim and then a CONT signal. +Solution: Catch the CONT signal and force a redraw. (closes #3285) +Files: src/os_unix.c, src/term.c, src/proto/term.pro + +Patch 8.1.0245 +Problem: Calling setline() in TextChangedI autocmd breaks undo. (Jason + Felice) +Solution: Don't save lines for undo when already saved. (closes #3291) +Files: src/edit.c, src/testdir/test_autocmd.vim + +Patch 8.1.0246 (after 8.1.0245) +Problem: Build failure without the +eval feature. +Solution: Add #ifdef +Files: src/edit.c + +Patch 8.1.0247 +Problem: Python: error message for failing import is incorrect. +Solution: Adjust how modules are loaded. (Ozaki Kiichi, closes #3162) +Files: src/if_py_both.h, src/testdir/test86.ok, src/testdir/test87.ok + +Patch 8.1.0248 +Problem: duplicated quickfix code. +Solution: Move the code to a function. +Files: src/quickfix.c + +Patch 8.1.0249 +Problem: GTK: when screen DPI changes Vim does not handle it. +Solution: Handle the gtk-xft-dpi signal. (Roel van de Kraats, + closes #2357) +Files: src/gui_gtk_x11.c + +Patch 8.1.0250 +Problem: MS-Windows using VTP: windows size change incorrect. +Solution: Call SetConsoleScreenBufferSize() first. (Nobuhiro Takasaki, + closes #3164) +Files: src/os_win32.c + +Patch 8.1.0251 +Problem: Using a full path is supported for 'directory' but not for + 'backupdir'. (Mikolaj Machowski) +Solution: Support 'backupdir' as well. (Christian Brabandt, closes #179) +Files: runtime/doc/options.txt, src/fileio.c, src/memline.c, + src/proto/memline.pro, src/testdir/test_alot.vim, + src/testdir/test_backup.vim, src/Make_all.mak + +Patch 8.1.0252 +Problem: Quickfix functions are too long. +Solution: Refactor. (Yegappan Lakshmanan, closes #2950) +Files: src/quickfix.c + +Patch 8.1.0253 +Problem: Saving and restoring window title does not always work. +Solution: Use the stack push and pop commands. (Kouichi Iwamoto, + closes #3059) +Files: runtime/doc/term.txt, src/main.c, src/option.c, src/os_unix.c, + src/proto/term.pro, src/term.c, src/term.h, src/vim.h, + src/buffer.c, src/ex_docmd.c, src/option.c, src/os_amiga.c, + src/os_mswin.c, src/os_win32.c + +Patch 8.1.0254 (after 8.1.0253) +Problem: Cannot build on MS-Windows; Unused macro HAVE_HANDLE_DROP. +Solution: Adjust #ifdef. Delete the macro. +Files: src/main.c, src/vim.h + +Patch 8.1.0255 (after 8.1.0251) +Problem: Backup test fails when using shadow directory. +Solution: Remove check for "src". +Files: src/testdir/test_backup.vim + +Patch 8.1.0256 (after 8.1.0245) +Problem: Using setline() in TextChangedI splits undo. +Solution: Use another solution for undo not working properly. +Files: src/edit.c, src/testdir/test_autocmd.vim + +Patch 8.1.0257 +Problem: No test for pathshorten(). +Solution: Add a test. (Dominique Pelle, closes #3295) +Files: src/testdir/test_functions.vim + +Patch 8.1.0258 +Problem: Not enough testing for the CompleteDone event. +Solution: Add a test. (closes #3297) +Files: src/testdir/test_ins_complete.vim + +Patch 8.1.0259 +Problem: No test for fixed quickfix issue. +Solution: Add a test. Clean up the code a bit. (Yegappan Lakshmanan) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0260 +Problem: No LGTM logo in README file. +Solution: Add one. (Bas van Schaik, closes #3305) +Files: README.md + +Patch 8.1.0261 +Problem: Coverity complains about a negative array index. +Solution: When qf_id2nr() cannot find the list then don't set qf_curlist. +Files: src/quickfix.c + +Patch 8.1.0262 +Problem: Not enough testing for getftype(). +Solution: Add a test. (Dominique Pelle, closes #3300) +Files: src/evalfunc.c, src/testdir/test_stat.vim + +Patch 8.1.0263 +Problem: Channel log doesn't show part of channel. +Solution: Add "sock", "out", "err" or "in". (Ozaki Kiichi, closes #3303) +Files: src/channel.c + +Patch 8.1.0264 +Problem: Backup tests fail when CWD is in /tmp. +Solution: Make 'backupskip' empty. (Christian Brabandt, closes #3301) +Files: src/testdir/test_backup.vim + +Patch 8.1.0265 +Problem: The getcmdline() function is way too big. +Solution: Factor out the incremental search highlighting. +Files: src/ex_getln.c + +Patch 8.1.0266 +Problem: Parsing Ex address range is not a separate function. +Solution: Refactor do_one_cmd() to separate address parsing. +Files: src/ex_docmd.c, src/proto/ex_docmd.pro + +Patch 8.1.0267 +Problem: No good check if restoring quickfix list worked. +Solution: Let qf_restore_list() return OK/FAIL. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0268 +Problem: File type checking has too many #ifdef. +Solution: Always define the S_IF macros. (Ken Takata, closes #3306) +Files: src/buffer.c, src/evalfunc.c, src/fileio.c, src/if_cscope.c, + src/os_unix.c, src/os_unix.h, src/vim.h + +Patch 8.1.0269 +Problem: Ruby Kernel.#p method always returns nil. +Solution: Copy p method implementation from Ruby code. (Masataka Pocke + Kuwabara, closes #3315) +Files: src/if_ruby.c, src/testdir/test_ruby.vim + +Patch 8.1.0270 +Problem: Checking for a Tab in a line could be faster. +Solution: Use strchr() instead of strrchr(). (closes #3312) +Files: src/ex_cmds.c + +Patch 8.1.0271 +Problem: 'incsearch' doesn't work for :s, :g or :v. +Solution: Also use 'incsearch' for other commands that use a pattern. +Files: src/ex_getln.c, src/globals.h, src/screen.c, + src/testdir/test_search.vim + +Patch 8.1.0272 +Problem: Options test fails if temp var ends in slash. (Tom Briden) +Solution: Check for optional slash. (closes #3308) +Files: src/testdir/test_options.vim + +Patch 8.1.0273 +Problem: Invalid memory access when using 'incsearch'. +Solution: Reset "patlen" when using previous search pattern. +Files: src/ex_getln.c + +Patch 8.1.0274 +Problem: 'incsearch' triggers on ":source". +Solution: Check for the whole command name. +Files: src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.0275 +Problem: 'incsearch' with :s doesn't start at cursor line. +Solution: Set cursor before parsing address. (closes #3318) + Also accept a match at the start of the first line. +Files: src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.0276 +Problem: No test for 'incsearch' highlighting with :s. +Solution: Add a screendump test. +Files: src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_01.dump + +Patch 8.1.0277 +Problem: 'incsearch' highlighting wrong in a few cases. +Solution: Fix using last search pattern. Restore highlighting when changing + command. (issue #3321) +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_02.dump, + src/testdir/dumps/Test_incsearch_substitute_03.dump + +Patch 8.1.0278 +Problem: 'incsearch' highlighting does not accept reverse range. +Solution: Swap the range when needed. (issue #3321) +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_04.dump + +Patch 8.1.0279 +Problem: 'incsearch' highlighting does not skip white space. +Solution: Skip white space after the command. (issue #3321) +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_05.dump + +Patch 8.1.0280 +Problem: 'incsearch' highlighting does not work for ":g!/". +Solution: Skip the exclamation mark. (Hirohito Higashi) +Files: src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.0281 +Problem: Parsing command modifiers is not separated. +Solution: Move command modifier parsing to a separate function. +Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/ex_cmds.h, + src/globals.h, src/feature.h + +Patch 8.1.0282 +Problem: 'incsearch' does not work with command modifiers. +Solution: Skip command modifiers. +Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/ex_getln.c, + src/testdir/test_search.vim + +Patch 8.1.0283 (after 8.1.0282) +Problem: Missing test dump. +Solution: Add the dump file +Files: src/testdir/dumps/Test_incsearch_substitute_06.dump + +Patch 8.1.0284 +Problem: 'cursorline' highlighting wrong with 'incsearch'. +Solution: Move the cursor back if the match is outside the range. +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_07.dump + src/testdir/dumps/Test_incsearch_substitute_08.dump + +Patch 8.1.0285 +Problem: Compiler warning for conversion. +Solution: Add a type cast. (Mike Williams) +Files: src/ex_getln.c + +Patch 8.1.0286 +Problem: 'incsearch' does not apply to :smagic and :snomagic. +Solution: Add support. (Hirohito Higashi) +Files: src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.0287 +Problem: MAX is not defined everywhere. +Solution: Define MAX where needed. +Files: src/ex_getln.c + +Patch 8.1.0288 +Problem: Quickfix code uses cmdidx too often. +Solution: Add is_loclist_cmd(). (Yegappan Lakshmanan) +Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/quickfix.c + +Patch 8.1.0289 +Problem: Cursor moves to wrong column after quickfix jump. +Solution: Set the curswant flag. (Andy Massimino, closes #3331) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0290 +Problem: "cit" on an empty HTML tag changes the whole tag. +Solution: Only adjust the area in Visual mode. (Andy Massimino, + closes #3332) +Files: src/search.c, src/testdir/test_textobjects.vim + +Patch 8.1.0291 +Problem: 'incsearch' highlighting not used for :sort. +Solution: Handle pattern in :sort command. +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_sort_01.dump + +Patch 8.1.0292 +Problem: MS-Windows: the text "self-installing" confuses some users. +Solution: Remove the text from the uninstall entry. (closes #3337) +Files: src/dosinst.c + +Patch 8.1.0293 +Problem: Checks for type of stack is cryptic. +Solution: Define IS_QF_STACK() and IS_LL_STACK(). (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0294 +Problem: MS-Windows: sometimes uses short directory name. +Solution: Expand to long file name with correct caps. (Nobuhiro Takasaki, + closes #3334) +Files: src/os_win32.c + +Patch 8.1.0295 +Problem: No 'incsearch' highlighting for :vimgrep and similar commands. +Solution: Parse the :vimgrep command and similar ones to locate the search + pattern. (Hirohito Higashi, closes #3344) +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_vimgrep_01.dump, + src/testdir/dumps/Test_incsearch_vimgrep_02.dump, + src/testdir/dumps/Test_incsearch_vimgrep_03.dump, + src/testdir/dumps/Test_incsearch_vimgrep_04.dump, + src/testdir/dumps/Test_incsearch_vimgrep_05.dump + +Patch 8.1.0296 +Problem: Command parsing for 'incsearch' is a bit ugly. +Solution: Return when there is no pattern. Put common checks together. +Files: src/ex_getln.c + +Patch 8.1.0297 (after 8.1.0294) +Problem: MS-Windows: tests fail, Vim crashes. +Solution: Fix long file name handling. +Files: src/os_win32.c + +Patch 8.1.0298 +Problem: Window resize test sometimes fails on Mac. +Solution: Add Test_popup_and_window_resize() to flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0299 (after 8.1.0298) +Problem: misplaced comment +Solution: Remove comment +Files: src/testdir/runtest.vim + +Patch 8.1.0300 +Problem: The old window title might be freed twice. (Dominique Pelle) +Solution: Do not free "oldtitle" in a signal handler but set a flag to have + it freed later. +Files: src/os_unix.c + +Patch 8.1.0301 +Problem: GTK: Input method popup displayed on wrong screen. +Solution: Add the screen position offset. (Ken Takata, closes #3268) +Files: src/gui_beval.c, src/gui_gtk_x11.c, src/mbyte.c, + src/proto/gui_gtk_x11.pro + +Patch 8.1.0302 +Problem: Crash when using :suspend and "fg". +Solution: Undo patch 8.1.0244. +Files: src/os_unix.c, src/term.c, src/proto/term.pro + +Patch 8.1.0303 +Problem: line2byte() is wrong for last line with 'noeol' and 'nofixeol'. +Solution: Fix off-by-one error. (Shane Harper, closes #3351) +Files: src/memline.c, src/testdir/test_functions.vim + +Patch 8.1.0304 +Problem: No redraw when using a STOP signal on Vim and then a CONT signal. +Solution: Catch the CONT signal and set the terminal to raw mode. This is + like 8.1.0244 but without the screen redraw and a fix for + multi-threading suggested by Dominique Pelle. +Files: src/os_unix.c, src/term.c, src/proto/term.pro + +Patch 8.1.0305 +Problem: Missing support for Lua 5.4 32 bits on Unix. +Solution: Define lua_newuserdatauv. (Kazunobu Kuriyama) +Files: src/if_lua.c + +Patch 8.1.0306 +Problem: Plural messages are not translated properly. +Solution: Add more usage of NGETTEXT(). (Sergey Alyoshin) +Files: src/vim.h, src/buffer.c, src/ex_cmds.c, src/ex_docmd.c, + src/fileio.c, src/misc1.c, src/ops.c + +Patch 8.1.0307 +Problem: There is no good way to get the window layout. +Solution: Add the winlayout() function. (Yegappan Lakshmanan) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/proto/window.pro, + src/window.c, src/testdir/test_window_id.vim + +Patch 8.1.0308 +Problem: A quick undo shows "1 seconds ago". (Tony Mechelynck) +Solution: Add singular/plural message. +Files: src/undo.c + +Patch 8.1.0309 +Problem: Profiling does not show a count for condition lines. (Daniel + Hahler) +Solution: Count lines when not skipping. (Ozaki Kiichi, closes #2499) +Files: src/ex_docmd.c, src/testdir/test_profile.vim + +Patch 8.1.0310 +Problem: File info message not always suppressed with 'F' in 'shortmess'. + (Asheq Imran) +Solution: Save and restore msg_silent. (Christian Brabandt, closes #3221) +Files: src/buffer.c, src/memline.c, src/testdir/test_options.vim + +Patch 8.1.0311 +Problem: Filtering entries in a quickfix list is not easy. +Solution: Add the cfilter plugin. (Yegappan Lakshmanan) +Files: runtime/pack/dist/opt/cfilter/plugin/cfilter.vim, + runtime/doc/quickfix.txt + +Patch 8.1.0312 +Problem: Wrong type for flags used in signal handlers. +Solution: Use sig_atomic_t. (Dominique Pelle, closes #3356) +Files: src/globals.h, src/os_unix.c, src/os_win32.h + +Patch 8.1.0313 +Problem: Information about a swap file is unavailable. +Solution: Add swapinfo(). (Enzo Ferber) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/memline.c, + src/proto/memline.pro, src/testdir/test_swap.vim + +Patch 8.1.0314 (after 8.1.0313) +Problem: Build failure without the +eval feature. (Brenton Horne) +Solution: Add #ifdef. Also add the "dirty" item. +Files: src/memline.c, runtime/doc/eval.txt, src/testdir/test_swap.vim + +Patch 8.1.0315 +Problem: Helpgrep with language doesn't work properly. (Takuya Fujiwara) +Solution: Check for the language earlier. (Hirohito Higashi) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0316 +Problem: swapinfo() test fails on Travis. +Solution: Handle a long host name. (Ozaki Kiichi, closes #3361) + Also make the version check flexible. (James McCoy) +Files: src/testdir/test_swap.vim + +Patch 8.1.0317 +Problem: Cscope test fails when using shadow directory. +Solution: Resolve symlink in Vim. (James McCoy, closes #3364) +Files: src/testdir/test_cscope.vim + +Patch 8.1.0318 +Problem: The getftype() test may fail for char devices if the file + disappeared in between the listing and the getftype() call. +Solution: Ignore empty result. (Ozaki Kiichi, closes #3360) +Files: src/testdir/test_stat.vim + +Patch 8.1.0319 +Problem: bzero() function prototype doesn't work for Android. +Solution: Add an #ifdef. (Elliott Hughes, closes #3365) +Files: src/osdef1.h.in + +Patch 8.1.0320 +Problem: Too much 'incsearch' highlight for pattern matching everything. +Solution: Add the skiplen to the command and remove the line range. + (Christian Brabandt) Check for empty pattern earlier. +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_09.dump + +Patch 8.1.0321 (after 8.1.0320) +Problem: 'incsearch' regression: /\v highlights everything. +Solution: Put back the empty_pattern() check. +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_search_01.dump, + src/testdir/dumps/Test_incsearch_search_02.dump + +Patch 8.1.0322 +Problem: Test_copy_winopt() does not restore 'hidden'. +Solution: Restore the option, fix indent. (Ozaki Kiichi, closes #3367) +Files: src/testdir/test_options.vim + +Patch 8.1.0323 +Problem: Reverse order of VTP calls only needed the first time. +Solution: Add a flag to remember the state. (Nobuhiro Takasaki, closes #3366) +Files: src/os_win32.c + +Patch 8.1.0324 +Problem: Off-by-one error in cmdidx check. (Coverity) +Solution: Use ">=" instead of ">". +Files: src/ex_docmd.c + +Patch 8.1.0325 +Problem: Strings in swap file may not be NUL terminated. (Coverity) +Solution: Limit the length of the used string. +Files: src/memline.c + +Patch 8.1.0326 +Problem: Screen dump does not consider NUL and space equal. +Solution: Use temp variables instead of character from cell. +Files: src/terminal.c, src/testdir/dumps/Test_syntax_c_01.dump + +Patch 8.1.0327 +Problem: The "g CTRL-G" command isn't tested much. +Solution: Add more tests. (Dominique Pelle, closes #3369) +Files: src/testdir/test_normal.c + +Patch 8.1.0328 +Problem: inputlist() doesn't work with a timer. (Dominique Pelle) +Solution: Don't redraw when cmdline_row is zero. (Hirohito Higashi, + closes #3239) +Files: src/misc1.c, src/screen.c + +Patch 8.1.0329 +Problem: Using inputlist() during startup results in garbage. (Dominique + Pelle) +Solution: Make sure the xterm tracing is stopped when disabling the mouse. +Files: src/os_unix.c + +Patch 8.1.0330 +Problem: The qf_add_entries() function is too long. +Solution: Split in two parts. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0331 +Problem: Insufficient test coverage for :mkview and :loadview. +Solution: Add tests. (Dominique Pelle, closes #3385) +Files: src/testdir/test_mksession.vim + +Patch 8.1.0332 +Problem: Get Gdk-Critical error on first balloon show. +Solution: Get screen geometry using the draw area widget. (Davit Samvelyan, + closes #3386) +Files: src/gui_beval.c + +Patch 8.1.0333 +Problem: :mkview does not restore cursor properly after "$". (Dominique + Pelle) +Solution: Position the cursor with "normal! $". +Files: src/ex_docmd.c, src/testdir/test_mksession.vim + +Patch 8.1.0334 +Problem: 'autowrite' takes effect when buffer is not to be written. +Solution: Don't write buffers that are not supposed to be written. (Even Q + Jones, closes #3391) Add tests for 'autowrite'. +Files: src/ex_cmds2.c, src/testdir/test_writefile.vim + +Patch 8.1.0335 +Problem: mkview test fails on CI. +Solution: Attempt to force recomputing curswant after folding. +Files: src/testdir/test_mksession.vim + +Patch 8.1.0336 +Problem: mkview test still fails on CI. +Solution: Ignore curswant, don't see another solution. +Files: src/testdir/test_mksession.vim + +Patch 8.1.0337 +Problem: :file fails in quickfix command. +Solution: Allow :file without argument when curbuf_lock is set. (Jason + Franklin) +Files: src/ex_docmd.c, src/testdir/test_quickfix.vim + +Patch 8.1.0338 +Problem: MS-Windows: VTP doesn't work properly with Powershell. +Solution: Adjust the color index. (Nobuhiro Takasaki, closes #3347) +Files: src/os_win32.c + +Patch 8.1.0339 +Problem: Wrong highlight when 'incsearch' set and cancelling :s. +Solution: Reset search line range. (Hirohito Higashi, Masamichi Abe) +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_10.dump + +Patch 8.1.0340 +Problem: No test for :spellinfo. +Solution: Add a test. (Dominique Pelle, closes #3394) +Files: src/testdir/test_spell.vim + +Patch 8.1.0341 +Problem: :argadd in empty buffer changes the buffer name. (Pavol Juhas) +Solution: Don't re-use the current buffer when not going to edit the file. + (closes #3397) Do re-use the current buffer for :next. +Files: src/ex_cmds2.c, src/testdir/test_arglist.vim, + src/testdir/test_command_count.vim + +Patch 8.1.0342 +Problem: Crash when a callback deletes a window that is being used. +Solution: Do not unload a buffer that is being displayed while redrawing the + screen. Also avoid invoking callbacks while redrawing. + (closes #2107) +Files: src/buffer.c, src/misc2.c + +Patch 8.1.0343 +Problem: 'shellslash' is not used for getcwd() with local directory. + (Daniel Hahler) +Solution: Call slash_adjust() later. (closes #3399) +Files: src/evalfunc.c + +Patch 8.1.0344 +Problem: 'hlsearch' highlighting has a gap after /$. +Solution: Remove suspicious code. (Ricky Zhou, closes #3400) +Files: src/screen.c, src/testdir/test_hlsearch.vim + +Patch 8.1.0345 +Problem: Cannot get the window id associated with the location list. +Solution: Add the "filewinid" argument to getloclist(). (Yegappan + Lakshmanan, closes #3202) +Files: runtime/doc/eval.txt, src/quickfix.c, + src/testdir/test_quickfix.vim + +Patch 8.1.0346 +Problem: Building with Aap is outdated and unused. +Solution: Remove the Aap build files. +Files: Filelist, src/main.aap, src/testdir/main.aap, src/config.aap.in, + runtime/macros/maze/main.aap + +Patch 8.1.0347 +Problem: Some tests fail on Solaris. +Solution: Skip writefile test. Fix path to libc.so. Improve test for Turkish + case change. (Libor Bukata, Bjorn Linse, closes #3403) +Files: src/testdir/test_functions.vim, src/testdir/test_normal.vim, + src/testdir/test_writefile.vim + +Patch 8.1.0348 +Problem: On Travis the slowest build is run last. (Dominique Pelle) +Solution: Reorder the build entries. +Files: .travis.yml + +Patch 8.1.0349 +Problem: Crash when wiping buffer in a callback. +Solution: Do not handle messages when only peeking for a character. + (closes #2107) Add "redraw_flag" to test_override(). +Files: src/os_unix.c, src/os_win32.c, src/screen.c, src/evalfunc.c, + src/globals.h, runtime/doc/eval.txt + +Patch 8.1.0350 +Problem: Vim may block on ch_sendraw() when the job is sending data back to + Vim, which isn't read yet. (Nate Bosch) +Solution: Add the "noblock" option to job_start(). (closes #2548) +Files: src/channel.c, src/structs.h, src/testdir/test_channel.vim, + runtime/doc/channel.txt + +Patch 8.1.0351 +Problem: 'incsearch' for :/foo/s//<Esc> changes last search pattern. +Solution: Save the last search pattern earlier. +Files: src/ex_docmd.c, src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.0352 +Problem: Browsing compressed tar files does not always work. +Solution: Use the "file" command to get the compression type. +Files: runtime/autoload/tar.vim + +Patch 8.1.0353 +Problem: An "after" directory of a package is appended to 'rtp', which + will be after the user's "after" directory. () +Solution: Insert the package "after" directory before any other "after" + directory in 'rtp'. (closes #3409) +Files: src/ex_cmds2.c, src/testdir/test_packadd.vim + +Patch 8.1.0354 (after 8.1.0353) +Problem: Packadd test fails on MS-Windows. +Solution: Ignore difference between forward and backward slashes. +Files: src/testdir/test_packadd.vim + +Patch 8.1.0355 +Problem: Incorrect adjusting the popup menu for the preview window. +Solution: Compute position and height properl. (Ronan Pigott) Also show at + least ten items. (closes #3414) +Files: src/popupmnu.c + +Patch 8.1.0356 +Problem: Using :s with 'incsearch' prevents CTRL-R CTRL-W. (Boris Staletic) +Solution: When past the pattern put cursor back in the start position. + (closes #3413) +Files: src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.0357 +Problem: Instructions for tests are outdated. (Jason Franklin) +Solution: Update the text. +Files: src/testdir/README.txt + +Patch 8.1.0358 +Problem: Crash when using term_dumpwrite() after the job finished. +Solution: Check for a finished job and give an error message. +Files: src/terminal.c + +Patch 8.1.0359 +Problem: No clue what test failed when using a screendump twice. +Solution: Add an extra argument to VerifyScreenDump(). +Files: src/testdir/screendump.vim + +Patch 8.1.0360 +Problem: Using an external diff program is slow and inflexible. +Solution: Include the xdiff library. (Christian Brabandt, closes #2732) + Use it by default. +Files: Filelist, runtime/doc/diff.txt, runtime/doc/options.txt, + src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile, src/diff.c, + src/structs.h, src/testdir/dumps/Test_diff_01.dump, + src/testdir/dumps/Test_diff_02.dump, + src/testdir/dumps/Test_diff_03.dump, + src/testdir/dumps/Test_diff_04.dump, + src/testdir/dumps/Test_diff_05.dump, + src/testdir/dumps/Test_diff_06.dump, + src/testdir/dumps/Test_diff_07.dump, + src/testdir/dumps/Test_diff_08.dump, + src/testdir/dumps/Test_diff_09.dump, + src/testdir/dumps/Test_diff_10.dump, + src/testdir/dumps/Test_diff_11.dump, + src/testdir/dumps/Test_diff_12.dump, + src/testdir/dumps/Test_diff_13.dump, + src/testdir/dumps/Test_diff_14.dump, + src/testdir/dumps/Test_diff_15.dump, + src/testdir/dumps/Test_diff_16.dump, + src/testdir/test_diffmode.vim, src/xdiff/COPYING, + src/xdiff/xdiff.h, src/xdiff/xdiffi.c, src/xdiff/xdiffi.h, + src/xdiff/xemit.c, src/xdiff/xemit.h, src/xdiff/xhistogram.c, + src/xdiff/xinclude.h, src/xdiff/xmacros.h, src/xdiff/xpatience.c, + src/xdiff/xprepare.c, src/xdiff/xprepare.h, src/xdiff/xtypes.h, + src/xdiff/xutils.c, src/xdiff/xutils.h, src/xdiff/README.txt + +Patch 8.1.0361 +Problem: Remote user not used for completion. (Stucki) +Solution: Use $USER too. (Dominique Pelle, closes #3407) +Files: src/misc1.c + +Patch 8.1.0362 +Problem: Cannot get the script line number when executing a function. +Solution: Store the line number besides the script ID. (Ozaki Kiichi, + closes #3362) Also display the line number with ":verbose set". +Files: runtime/doc/cmdline.txt, runtime/doc/eval.txt, src/Make_all.mak, + src/buffer.c, src/eval.c, src/evalfunc.c, src/ex_cmds2.c, + src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/getchar.c, + src/globals.h, src/main.c, src/menu.c, src/option.c, + src/proto/eval.pro, src/structs.h, src/syntax.c, + src/testdir/test_alot.vim, src/testdir/test_expand_func.vim, + src/testdir/test_maparg.vim, src/term.c src/userfunc.c + +Patch 8.1.0363 +Problem: Internal diff isn't used by default as advertised. +Solution: Add "internal" to the default value of 'diffopt'. + Also add couple of files missing from the distribution. +Files: src/option.c, runtime/doc/options.txt, Filelist + +Patch 8.1.0364 +Problem: Compiler warning in xdiff code. (Yegappan Lakshmanan) +Solution: Initialize directly. +Files: src/xdiff/xemit.c, src/xdiff/README.txt + +Patch 8.1.0365 +Problem: Function profile doesn't specify where it was defined. +Solution: Show the script name and line number. +Files: src/userfunc.c, src/testdir/test_profile.vim + +Patch 8.1.0366 +Problem: Pieces of the xdiff code are not used. +Solution: Add "#if 0" to omit unused code. +Files: src/xdiff/xemit.c + +Patch 8.1.0367 +Problem: getchar(1) no longer processes pending messages. (Yasuhiro + Matsumoto) +Solution: Call parse_queued_messages(). +Files: src/evalfunc.c + +Patch 8.1.0368 +Problem: GTK code has too many #ifdefs and building fails with GTK 2.10. +Solution: Always use gtk_widget_get_window() and define it for older GTK + versions. (Ken Takata, closes #3421) +Files: src/gui_beval.c, src/gui_gtk.c, src/gui_gtk_f.c, + src/gui_gtk_x11.c, src/mbyte.c, src/vim.h + +Patch 8.1.0369 +Problem: Continuation lines cannot contain comments. +Solution: Support using "\ . +Files: src/ex_cmds2.c, src/testdir/test_eval_stuff.vim, + runtime/indent/vim.vim, runtime/doc/repeat.txt + +Patch 8.1.0370 +Problem: Not using internal diff if 'diffopt' is not changed. +Solution: Correct initialization of diff_flags. (Christian Brabandt) +Files: src/diff.c + +Patch 8.1.0371 +Problem: Argument types for select() may be wrong. +Solution: Use a configure macro. (Tobias Ulmer) +Files: src/config.h.in, src/configure.ac, src/auto/configure, + src/os_unix.c + +Patch 8.1.0372 +Problem: Screen updating slow when 'cursorline' is set. +Solution: Only redraw the old and new cursor line, not all lines. +Files: src/edit.c, src/move.c, src/screen.c, src/proto/screen.pro + +Patch 8.1.0373 (after 8.1.0372) +Problem: Screen updating still slow when 'cursorline' is set. +Solution: Fix setting last_cursorline. +Files: src/move.c + +Patch 8.1.0374 +Problem: Moving the cursor is slow when 'relativenumber' is set. +Solution: Only redraw the number column, not all lines. +Files: src/screen.c, src/move.c + +Patch 8.1.0375 +Problem: Cannot use diff mode with Cygwin diff.exe. (Igor Forca) +Solution: Skip over unrecognized lines in the diff output. +Files: src/diff.c, src/testdir/test_diffmode.vim + +Patch 8.1.0376 +Problem: Compiler warning for uninitialized variable. (Tony Mechelynck) +Solution: Initialize the variable. +Files: src/screen.c + +Patch 8.1.0377 +Problem: Xdiff doesn't use the Vim memory allocation functions. +Solution: Change the xdl_ defines. Check for out-of-memory. Rename + "ignored" to "vim_ignored". +Files: src/xdiff/xdiff.h, src/xdiff/xpatience.c, src/xdiff/xdiffi.c, + src/channel.c, src/diff.c, src/evalfunc.c, src/ex_cmds.c, + src/fileio.c, src/main.c, src/mbyte.c, src/netbeans.c, + src/os_unix.c, src/os_win32.c, src/ui.c, src/window.c, + src/globals.h, src/term.c + +Patch 8.1.0378 +Problem: CI build failure. +Solution: Include vim.h as ../vim.h. Fix compiler warning. +Files: src/xdiff/xdiff.h, src/xdiff/xpatience.c + +Patch 8.1.0379 +Problem: Build dependencies are incomplete. +Solution: Update the build dependencies, mainly for xdiff. Adjust object + directory for libvterm and xdiff. +Files: src/Makefile, src/configure.ac, src/auto/configure, + src/libvterm/src/screen.c, src/libvterm/src/termscreen.c, + src/Make_cyg_ming.mak, src/Make_mvc.mak + +Patch 8.1.0380 +Problem: "make proto" doesn't work well. +Solution: Define a few more types for cproto. Update proto files. Fix that + workshop didn't build. +Files: src/vim.h, src/protodef.h, src/if_ruby.c, src/workshop.c, + src/proto/digraph.pro, src/hardcopy.pro, src/proto/option.pro, + src/proto/window.pro + +Patch 8.1.0381 +Problem: Variable declaration not at start of block. +Solution: Fix line ordering. +Files: src/xdiff/xpatience.c + +Patch 8.1.0382 +Problem: Some make programs can't handle dependency on "xdiff/../". +Solution: Strip it out. +Files: src/Makefile + +Patch 8.1.0383 +Problem: Missing source file rename. +Solution: Update the dependency. +Files: src/Make_mvc.mak + +Patch 8.1.0384 +Problem: Sign ordering depends on +netbeans feature. +Solution: Also order signs without +netbeans. (Christian Brabandt, + closes #3224) +Files: src/structs.h, src/buffer.c + +Patch 8.1.0385 +Problem: Coveralls badge doesn't update. +Solution: Update the URL +Files: README.md + +Patch 8.1.0386 +Problem: Cannot test with non-default option value. +Solution: Add test_option_not_set(). +Files: runtime/doc/eval.txt, src/option.c, src/proto/option.pro, + src/evalfunc.c + +Patch 8.1.0387 +Problem: No test for 'ambiwidth' detection. +Solution: Add a test. +Files: src/testdir/test_startup_utf8.vim + +Patch 8.1.0388 +Problem: Coverity complains about possible NULL pointer use. +Solution: Use get_tv_string() instead of get_tv_string_chk(). +Files: src/evalfunc.c + +Patch 8.1.0389 +Problem: :behave command is not tested. +Solution: Add a test. (Dominique Pelle, closes #3429) +Files: src/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_behave.vim + +Patch 8.1.0390 +Problem: Scrollbars are not tested. +Solution: Add test_scrollbar() and a test. +Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_gui.vim + +Patch 8.1.0391 +Problem: Building in a shadow directory fails. +Solution: Don't link the xdiff directory but what's in it. (closes #3428) +Files: src/Makefile + +Patch 8.1.0392 +Problem: Error while typing :/foo/s// with 'incsearch' enabled. +Solution: Do not give search errors when highlighting matches. +Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/ex_getln.c, + src/testdir/test_search.vim + +Patch 8.1.0393 +Problem: Not all white space difference options available. +Solution: Add "iblank", "iwhiteall" and "iwhiteeol" to 'diffopt'. +Files: src/diff.c, src/testdir/test_diffmode.vim, + src/testdir/dumps/Test_diff_17.dump, + src/testdir/dumps/Test_diff_18.dump, + src/testdir/dumps/Test_diff_19.dump, + src/testdir/dumps/Test_diff_20.dump + +Patch 8.1.0394 +Problem: Diffs are not always updated correctly. +Solution: When using internal diff update for any changes properly. +Files: src/structs.h, src/diff.c, src/proto/diff.pro, src/misc1.c, + src/main.c + +Patch 8.1.0395 +Problem: Compiler warning on 64-bit MS-Windows. +Solution: Add type cast. (Mike Williams) +Files: src/diff.c + +Patch 8.1.0396 +Problem: Another compiler warning on 64-bit MS-Windows. +Solution: Add type cast. (Mike Williams) +Files: src/xdiff/xutils.c + +Patch 8.1.0397 +Problem: No event triggered after updating diffs. +Solution: Add the DiffUpdated event. +Files: src/vim.h, src/diff.c, src/fileio.c, + src/testdir/test_diffmode.vim, runtime/doc/autocmd.txt + +Patch 8.1.0398 +Problem: No test for -o and -O command line arguments. +Solution: Add a test. (Dominique Pelle, closes #3438) +Files: src/testdir/test_startup.vim + +Patch 8.1.0399 +Problem: 'hlsearch' highlight remains in other window after cancelling + command. +Solution: Redraw all windows. Also remove unnecessary delays. (closes #3437) +Files: src/ex_getln.c, src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_substitute_11.dump, + src/testdir/dumps/Test_incsearch_substitute_12.dump, + src/testdir/dumps/Test_incsearch_substitute_13.dump + +Patch 8.1.0400 +Problem: Using freed memory with :diffget. +Solution: Skip ex_diffupdate() while updating diffs. (closes #3442) +Files: src/diff.c + +Patch 8.1.0401 +Problem: Can't get swap name of another buffer. +Solution: Add swapname(). (Ozaki Kiichi, closes #3441) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_swap.vim + +Patch 8.1.0402 +Problem: The DiffUpdate event isn't triggered for :diffput. +Solution: Also trigger DiffUpdate for :diffget and :diffput. +Files: src/diff.c + +Patch 8.1.0403 +Problem: Header file missing from distribution. +Solution: Add src/protodef.h. +Files: Filelist + +Patch 8.1.0404 +Problem: Accessing invalid memory with long argument name. +Solution: Use item_count instead of checking for a terminating NULL. + (Dominique Pelle, closes #3444) +Files: src/testdir/test_arglist.vim, src/version.c + +Patch 8.1.0405 +Problem: Too many #ifdefs for GTK. +Solution: Define macros instead of using #ifdef. (Ken Takata, closes #3436) +Files: src/gui_beval.c, src/gui_gtk.c, src/gui_gtk_f.c, + src/gui_gtk_x11.c, src/vim.h + +Patch 8.1.0406 +Problem: Several command line arguments are not tested. +Solution: Add tests for -A, -F, -H, -p and -V. (Dominique Pelle, + closes #3446) +Files: src/testdir/test_startup.vim + +Patch 8.1.0407 +Problem: Quickfix code mixes using the stack and a list pointer. +Solution: Use a list pointer in more places. (Yegappan Lakshmanan, + closes #3443) +Files: src/quickfix.c + +Patch 8.1.0408 +Problem: MSVC: cannot use the "x64" native compiler option. +Solution: Ignore case for %Platform%. Improve documentation. (Ken Takata) +Files: src/INSTALLpc.txt, src/msvc2015.bat + +Patch 8.1.0409 (after 8.1.0406) +Problem: Startup test fails on MS-Windows. +Solution: Do the Arabic test in silent Ex mode. Loosen the check for -V2. +Files: src/testdir/test_startup.vim + +Patch 8.1.0410 +Problem: The ex_copen() function is too long. +Solution: Refactor to split off two functions. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0411 +Problem: Renamed file missing from distribution. +Solution: Rename screen.c to termscreen.c (Zdenek Dohnal, closes #3449) +Files: Filelist + +Patch 8.1.0412 +Problem: Cannot build with GTK 2.4. +Solution: Add back a few #ifdefs. (Ken Takata, closes #3447) + Also support older GTK. (Tom Christensen) +Files: src/gui_gtk_x11.c + +Patch 8.1.0413 +Problem: Test output is duplicated or missing. +Solution: Adjust the MS-Windows and Unix test makefiles. (Ken Takata, + closes #3452) +Files: src/testdir/Make_dos.mak, src/testdir/Makefile + +Patch 8.1.0414 +Problem: v:option_old and v:option_new are cleared when using :set in + OptionSet autocmd. (Gary Johnson) +Solution: Don't trigger OptionSet recursively. +Files: src/option.c + +Patch 8.1.0415 +Problem: Not actually using 16 colors with vtp. +Solution: Always use 256 colors when vtp is used. (Nobuhiro Takasaki, + closes #3432) +Files: src/option.c, src/term.c + +Patch 8.1.0416 +Problem: Sort doesn't report deleted lines. +Solution: Call msgmore(). (Christian Brabandt, closes #3454) +Files: src/ex_cmds.c, src/testdir/test_sort.vim + +Patch 8.1.0417 +Problem: Several command line arguments are not tested. +Solution: Add tests for -m, -M, -R and -Vfile. (Dominique Pelle, + closes #3458) +Files: src/testdir/test_startup.vim + +Patch 8.1.0418 +Problem: MS-Windows: cannot separate Lua include and library directories. +Solution: Add LUA_LIBDIR and LUA_INCDIR. (Ken Takata, closes #3464) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0419 +Problem: Cygwin: running cproto fails with -O2. +Solution: Strip -O2 for cproto. (Ken Takata, closes #3465) +Files: src/Makefile + +Patch 8.1.0420 +Problem: Generating vim.lib when using ActivePerl 5.20.3 or later. +Solution: Redefine XS_EXTERNAL(). (Ken Takata, closes #3462) +Files: src/if_perl.xs + +Patch 8.1.0421 +Problem: MS-Windows: Ruby path is wrong for Ruby 1.9 and later. +Solution: Let -I argument depend on Ruby version. (Ken Takata, closes #3461) +Files: src/Make_cyg_ming.mak, src/Make_mvc.mak + +Patch 8.1.0422 +Problem: Cannot create map file with MinGW. +Solution: Add support for $MAP. (Ken Takata, closes #3460) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0423 +Problem: MS-Windows: using dup-close for flushing a file. +Solution: Use _commit(). (Ken Takata, closes #3463) +Files: src/memfile.c, src/os_mac.h, src/os_win32.h + +Patch 8.1.0424 +Problem: Test output is very verbose, loading CI log is slow. +Solution: Redirect output to /dev/null. (Ken Takata, closes #3456) +Files: src/testdir/Makefile + +Patch 8.1.0425 +Problem: ml_get error and crash with appendbufline(). (Masashi Iizuka) +Solution: Set per-window buffer info. (Hirohito Higashi, closes #3455) +Files: src/buffer.c, src/testdir/test_bufline.vim + +Patch 8.1.0426 +Problem: Accessing invalid memory in SmcOpenConnection(). +Solution: Reduce size of errorstring by one. (Dominique Pelle, closes #3469) +Files: src/os_unix.c, src/testdir/test_startup.vim + +Patch 8.1.0427 +Problem: MS-Windows GUI: using invalid encoded file name. +Solution: Drop the file name and return NULL. (Ken Takata, closes #3467) +Files: src/gui_w32.c + +Patch 8.1.0428 +Problem: The :suspend command is not tested. +Solution: Add a test. (Dominique Pelle, closes #3472) +Files: src/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_suspend.vim + +Patch 8.1.0429 (after 8.1.0343) +Problem: No test for :lcd with 'shellslash'. +Solution: Add a test. (Daniel Hahler, closes #3475) +Files: src/testdir/test_getcwd.vim + +Patch 8.1.0430 +Problem: Xargadd file left behind after running test. +Solution: Delete the file. (Dominique Pelle) +Files: src/testdir/test_arglist.vim + +Patch 8.1.0431 +Problem: The qf_jump() function is too long. +Solution: Refactor to split it into several functions. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0432 +Problem: Compiler warning for signed/unsigned. +Solution: Add type cast. (Mike Williams) +Files: src/xdiff/xemit.c + +Patch 8.1.0433 +Problem: Mapping can obtain text from inputsecret(). (Tommy Allen) +Solution: Disallow CTRL-R = and CTRL-\ e when using inputsecret(). +Files: src/ex_getln.c + +Patch 8.1.0434 +Problem: copy_loclist() is too long. +Solution: Split in multiple functions. (Yegappan Lakshmanan) +Files: src/proto/quickfix.pro, src/quickfix.c, src/window.c + +Patch 8.1.0435 +Problem: Cursorline highlight not removed in some situation. (Vitaly + Yashin) +Solution: Reset last_cursorline when resetting 'cursorline'. (Christian + Brabandt, closes #3481) +Files: src/move.c, src/proto/move.pro, src/option.c + +Patch 8.1.0436 +Problem: Can get the text of inputsecret() with getcmdline(). (Tommy Allen) +Solution: Don't return the text. +Files: src/ex_getln.c + +Patch 8.1.0437 +Problem: May access freed memory when syntax HL times out. (Philipp Gesang) +Solution: Clear b_sst_first when clearing b_sst_array. +Files: src/syntax.c + +Patch 8.1.0438 +Problem: The ex_make() function is too long. +Solution: Split it into several functions. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0439 +Problem: Recursive use of getcmdline() still not protected. +Solution: Instead of saving the command buffer when making a call which may + cause recursiveness, save the buffer when actually being called + recursively. +Files: src/ex_getln.c, src/proto/ex_getln.pro, src/getchar.c, src/main.c + +Patch 8.1.0440 +Problem: remove() with a range not sufficiently tested. +Solution: Add a test. (Dominique Pelle, closes #3497) +Files: src/testdir/test_listdict.vim + +Patch 8.1.0441 +Problem: Build failure without command line history. +Solution: Move cmdline_init() outside of #ifdef. +Files: src/ex_getln.c + +Patch 8.1.0442 +Problem: GUI: Cursor not drawn after ":redraw | sleep". +Solution: Flush the output. (closes #3496) +Files: src/ex_docmd.c + +Patch 8.1.0443 +Problem: Unnecessary static function prototypes. +Solution: Remove unnecessary prototypes. +Files: src/arabic.c, src/blowfish.c, src/buffer.c, src/charset.c, + src/crypt_zip.c, src/digraph.c, src/edit.c, src/eval.c, + src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, + src/ex_eval.c, src/ex_getln.c, src/fileio.c, src/getchar.c, + src/gui.c, src/gui_at_fs.c, src/gui_athena.c, src/gui_gtk_x11.c, + src/gui_mac.c, src/gui_motif.c, src/gui_photon.c, src/gui_w32.c, + src/gui_x11.c, src/hangulin.c, src/hardcopy.c, src/if_cscope.c, + src/if_mzsch.c, src/if_python3.c, src/if_xcmdsrv.c, + src/integration.c, src/json.c, src/main.c, src/mbyte.c, + src/memline.c, src/message.c, src/misc1.c, src/misc2.c, + src/move.c, src/netbeans.c, src/normal.c, src/ops.c, src/option.c, + src/os_unix.c, src/os_win32.c, src/pty.c, src/regexp.c, + src/screen.c, src/search.c, src/sha256.c, src/spell.c, + src/spellfile.c, src/syntax.c, src/tag.c, src/term.c, src/ui.c, + src/undo.c, src/version.c, src/window.c, src/workshop.c + +Patch 8.1.0444 +Problem: Unnecessary check for NULL pointer. +Solution: Remove check and call vim_free() directly. +Files: src/beval.c + +Patch 8.1.0445 +Problem: Setting 'term' does not store location for termcap options. +Solution: Set the script context for termcap options that are changed when + 'term' is set. +Files: src/option.c, src/proto/option.pro, src/term.c, + src/testdir/test_options.vim + +Patch 8.1.0446 +Problem: Options test fails in the GUI. +Solution: Don't try changing 'term' in the GUI. +Files: src/testdir/test_options.vim + +Patch 8.1.0447 +Problem: GUI scrollbar test fails with Athena and Motif. +Solution: When not using on-the-fly scrolling call normal_cmd(). +Files: src/evalfunc.c, src/ex_docmd.c, src/proto/ex_docmd.pro + +Patch 8.1.0448 +Problem: Cursorline not removed when using 'cursorbind'. (Justin Keyes) +Solution: Store the last cursor line per window. (closes #3488) +Files: src/testdir/test_diffmode.vim, + src/testdir/dumps/Test_diff_with_cursorline_01.dump, + src/testdir/dumps/Test_diff_with_cursorline_02.dump, + src/testdir/dumps/Test_diff_with_cursorline_03.dump, + src/structs.h, src/move.c + +Patch 8.1.0449 +Problem: When 'rnu' is set folded lines are not displayed correctly. + (Vitaly Yashin) +Solution: When only redrawing line numbers do draw folded lines. + (closes #3484) +Files: src/screen.c, src/testdir/test_fold.vim, + src/testdir/dumps/Test_folds_with_rnu_01.dump, + src/testdir/dumps/Test_folds_with_rnu_02.dump + +Patch 8.1.0450 (after patch 8.1.0449) +Problem: Build failure without the +fold feature. +Solution: Add #ifdef. +Files: src/screen.c + +Patch 8.1.0451 +Problem: Win32 console: keypad keys don't work. +Solution: Use numbers instead of characters to avoid the value becoming + negative. (Mike Williams) +Files: src/os_win32.c + +Patch 8.1.0452 +Problem: MS-Windows: not finding intl.dll. +Solution: Also find intl.dll next to libintl.dll. (Ken Takata) +Files: src/os_win32.c, runtime/doc/mlang.txt + +Patch 8.1.0453 +Problem: MS-Windows: executable() is not reliable. +Solution: Use $PATHEXT properly. (Yasuhiro Matsumoto, closes #3412) +Files: src/os_win32.c, src/testdir/test_functions.vim + +Patch 8.1.0454 +Problem: resolve() was not tested with a symlink cycle. +Solution: Add a test. (Dominique Pelle, closes #3513) +Files: src/testdir/test_functions.vim + +Patch 8.1.0455 +Problem: Checking for empty quickfix stack is not consistent. +Solution: Use qf_stack_empty(). (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0456 +Problem: Running test hangs when the input file is being edited. +Solution: Use a SwapExists autocommand to ignore editing the test script. +Files: src/testdir/Makefile, src/testdir/runtest.vim + +Patch 8.1.0457 (after 8.1.0451) +Problem: Win32 console: key mappings don't work. +Solution: Use another solution for the keypad keys that doesn't break + mappings. Some values will be negative. (Mike Williams) +Files: src/os_win32.c + +Patch 8.1.0458 +Problem: Ml_get error and crash when using "do". +Solution: Adjust cursor position also when diffupdate is not needed. + (Hirohito Higashi) +Files: src/diff.c, src/testdir/test_diffmode.vim + +Patch 8.1.0459 +Problem: Test_executable fails when there is a dog in the system. +Solution: Rename the dog. (Hirohito Higashi) +Files: src/testdir/test_functions.vim + +Patch 8.1.0460 +Problem: assert_fails() does not take a message argument +Solution: Add the argument. +Files: src/evalfunc.c, src/eval.c, src/testdir/test_assert.vim + +Patch 8.1.0461 +Problem: Quickfix code uses too many /* */ comments. +Solution: Change to // comments. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0462 +Problem: When using ConPTY Vim can be a child process. +Solution: To find a Vim window use both EnumWindows() and + EnumChildWindows(). (Nobuhiro Takasaki, closes #3521) +Files: src/os_mswin.c + +Patch 8.1.0463 +Problem: "simalt ~x" in .vimrc blocks swap file prompt. +Solution: Flush buffers before prompting. (Yasuhiro Matsumoto, + closes #3518, closes #2192) +Files: src/memline.c + +Patch 8.1.0464 +Problem: MS-Windows: job_info() has cmd without backslashes. (Daniel + Hahler) +Solution: Use rem_backslash(). (closes #3517, closes #3404) +Files: src/misc2.c, src/testdir/test_channel.vim + +Patch 8.1.0465 (after 8.1.0452) +Problem: Client-server test fails. +Solution: Change logic in EnumWindows(). +Files: src/os_mswin.c + +Patch 8.1.0466 (after 8.1.0463) +Problem: Autocmd test fails. +Solution: Do call inchar() when flushing typeahead. +Files: src/vim.h, src/getchar.c, src/proto/getchar.pro, src/memline.c, + src/message.c, src/misc1.c + +Patch 8.1.0467 (after 8.1.0063) +Problem: Cannot build with Mac OS X 10.5. +Solution: Change #ifdef into #if. (Akshay Hegde, closes #3022) +Files: src/os_macosx.m + +Patch 8.1.0468 +Problem: MS-Windows: Filter command with pipe character fails. (Johannes + Riecken) +Solution: Find the pipe character outside of quotes. (Yasuhiro Matsumoto, + closes #1743, closes #3523) +Files: src/ex_cmds.c, src/testdir/test_filter_cmd.vim + +Patch 8.1.0469 +Problem: Too often indexing in qf_lists[]. +Solution: Use a qf_list_T pointer. (Yegappan Lakshmanan) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0470 +Problem: Pointer ownership around fname_expand() is unclear. +Solution: Allow b_ffname and b_sfname to point to the same allocated memory, + only free one. Update comments. +Files: src/buffer.c, src/structs.h, src/fileio.c, src/ex_cmds.c + +Patch 8.1.0471 +Problem: Some tests are flaky or fail on some systems. +Solution: Increase waiting time for port number. Use "cmd /c" to execute + "echo" on win32. (Ken Takata, closes #3534) +Files: src/testdir/shared.vim, src/testdir/test_channel.vim + +Patch 8.1.0472 +Problem: Dosinst command has a few flaws. +Solution: Register DisplayIcon, DisplayVersion and Publisher for the + uninstaller. (closes #3485) Don't set 'diffexpr' if internal diff + is supported. Allow for using Vi compatible from the command line. + Remove needless sleeps. Add comments in the generated _vimrc. + (Ken Takata, closes #3525) +Files: src/dosinst.c + +Patch 8.1.0473 +Problem: User doesn't notice file does not exist when swap file does. +Solution: Add a note that the file cannot be found. Make the "still + running" notice stand out. +Files: src/memline.c + +Patch 8.1.0474 +Problem: Directory where if_perl.c is written is inconsistent. +Solution: use auto/if_perl.c for MS-Windows. (Ken Takata, closes #3540) +Files: src/Make_bc5.mak, src/Make_cyg_ming.mak, src/Make_mvc.mak + +Patch 8.1.0475 +Problem: Memory not freed on exit when quit in autocmd. +Solution: Remember funccal stack when executing autocmd. +Files: src/structs.h, src/userfunc.c, src/proto/userfunc.pro, + src/fileio.c, src/eval.c, src/ex_cmds2.c, src/main.c + +Patch 8.1.0476 +Problem: Memory leaks in test_escaped_glob. +Solution: Avoid failure when running the shell, use the sandbox. +Files: src/testdir/test_escaped_glob.vim + +Patch 8.1.0477 (after 8.1.0475) +Problem: Tiny build fails. +Solution: Add a dummy declaration for funccal_entry_T. +Files: src/structs.h + +Patch 8.1.0478 +Problem: Cannot build with perl using MinGW. +Solution: Add -I. (Ken Takata, Cesar Romani) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0479 +Problem: Failure when setting 'varsofttabstop' to end in a comma. (Ralf + Schandl) +Solution: Reject value with trailing command. Add test for invalid values + (closes #3544) +Files: src/testdir/test_vartabs.vim, src/option.c + +Patch 8.1.0480 +Problem: MinGW build file uses different -I flags than MVC. +Solution: Add -I to $CFLAGS. (Ken Takata) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0481 +Problem: When "Terminal" highlight is reverted cursor doesn't show. +Solution: Get the colors of the "Terminal" group. (closes #3546) +Files: src/terminal.c + +Patch 8.1.0482 +Problem: MinGW "make clean" deletes all .exe files. +Solution: Only delete .exe files that it builds. (Ken Takata) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0483 +Problem: MinGW does not build tee.exe. +Solution: Add build instructions. (Yasuhiro Matsumoto, closes #3548) +Files: src/Make_cyg_ming.mak, src/tee/Makefile + +Patch 8.1.0484 +Problem: Some file types are not recognized. +Solution: Update the file type detection. +Files: runtime/filetype.vim, src/testdir/test_filetype.vim + +Patch 8.1.0485 +Problem: term_start() does not check if directory is accessible. +Solution: Add mch_access() call. (Jason Franklin) +Files: src/channel.c, src/testdir/test_terminal.vim + +Patch 8.1.0486 (after 8.1.0485) +Problem: Can't build in MS-Windows. +Solution: Put mch_access() call inside #ifdef +Files: src/channel.c + +Patch 8.1.0487 +Problem: No menus specifically for the terminal window. +Solution: Add :tlmenu. (Yee Cheng Chin, closes #3439) Add a menu test. +Files: runtime/delmenu.vim, runtime/doc/autocmd.txt, runtime/doc/gui.txt, + runtime/doc/index.txt, runtime/doc/terminal.txt, + runtime/doc/usr_42.txt, runtime/menu.vim, src/ex_cmdidxs.h, + src/ex_cmds.h, src/ex_docmd.c, src/menu.c, src/proto/menu.pro, + src/popupmnu.c, src/structs.h, src/testdir/test_menu.vim + +Patch 8.1.0488 +Problem: Using freed memory in quickfix code. (Dominique Pelle) +Solution: Add the quickfix_busy() flag to postpone deleting quickfix lists + until it is safe. (Yegappan Lakshmanan, closes #3538) +Files: src/quickfix.c, src/proto/quickfix.pro, src/misc2.c, + src/testdir/test_quickfix.vim + +Patch 8.1.0489 +Problem: Crash when autocmd clears vimpgrep location list. +Solution: Return from qf_jump_edit_buffer() early. (Yegappan Lakshmanan) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0490 +Problem: MS-Windows: doesn't handle missing glibwinpthread-1.dll. +Solution: Adjust Cygwin/MinGW build file. (Ken Takata, closes #2827) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0491 +Problem: If a terminal dump has CR it is considered corrupt. +Solution: Ignore CR characters. (Nobuhiro Takasaki, closes #3558) +Files: src/terminal.c + +Patch 8.1.0492 +Problem: "Edit with existing Vim" list can get long. +Solution: Move the list to a submenu. (Ken Takata, closes #3561) +Files: src/GvimExt/gvimext.cpp + +Patch 8.1.0493 +Problem: argv() and argc() only work on the current argument list. +Solution: Add a window ID argument. (Yegappan Lakshmanan, closes #832) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_arglist.vim, + src/eval.c, src/proto/eval.pro + +Patch 8.1.0494 +Problem: Functions do not check for a window ID in other tabs. +Solution: Also find the window ID in other than the current tab. +Files: src/evalfunc.c + +Patch 8.1.0495 +Problem: :filter only supports some commands. +Solution: Add :filter support for more commands. (Marcin Szamotulski, + closes #2856) +Files: runtime/doc/various.txt, src/eval.c, src/mark.c, src/option.c, + src/syntax.c, src/testdir/test_filter_cmd.vim, src/userfunc.c + +Patch 8.1.0496 +Problem: No tests for indent files. +Solution: Add a mechanism for running indent file tests. Add a first test + for Vim indenting. +Files: runtime/indent/Makefile, runtime/indent/testdir/runtest.vim, + runtime/indent/testdir/cleantest.vim, runtime/indent/README.txt, + runtime/indent/testdir/README.txt, runtime/indent/testdir/vim.in, + runtime/indent/testdir/vim.ok, Filelist + +Patch 8.1.0497 +Problem: :%diffput changes order of lines. (Markus Braun) +Solution: Do adjust marks when using internal diff. +Files: src/diff.c, src/testdir/test_diffmode.vim + +Patch 8.1.0498 +Problem: /etc/gitconfig not recognized at a gitconfig file. +Solution: Add pattern to filetype detection. (closes #3568) +Files: runtime/filetype.vim, src/testdir/test_filetype.vim + +Patch 8.1.0499 +Problem: :2vimgrep causes an ml_get error +Solution: Pass tomatch pointer instead of value. (Yegappan Lakshmanan) +Files: src/ex_getln.c, src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0500 +Problem: Cleaning up in src/tee may not always work. +Solution: Use "rm" when appropriate. (Michael Soyka, closes #3571) +Files: src/tee/Makefile + +Patch 8.1.0501 +Problem: Cppcheck warns for using array index before bounds check. +Solution: Swap the conditions. (Dominique Pelle) +Files: src/memline.c + +Patch 8.1.0502 +Problem: Internal diff fails when diffing a context diff. (Hirohito Higashi) +Solution: Only use callback calls with one line. (closes #3581) +Files: src/diff.c, src/testdir/dumps/test_diff_of_diff_01.dump + +Patch 8.1.0503 +Problem: Missing change to diff test. (Hirohito Higashi) +Solution: Add the missing test function. +Files: src/testdir/test_diffmode.vim + +Patch 8.1.0504 +Problem: When CTRL-C is mapped it triggers InsertLeave. +Solution: Make CTRL-C behave the same way when typed or used in a mapping. +Files: src/edit.c, src/testdir/test_edit.vim + +Patch 8.1.0505 +Problem: Filter command test may fail if helplang is not set. +Solution: Set 'helplang' for the test. (James McCoy, closes #3591) +Files: src/testdir/test_filter_cmd.vim + +Patch 8.1.0506 +Problem: Modeline test fails when run by root. +Solution: Set 'modeline' for the test. (James McCoy, closes #3592) +Files: src/testdir/test_modeline.vim + +Patch 8.1.0507 +Problem: .raml files not properly detected. +Solution: Recognize .raml as raml instead of yaml. (closes #3594) +Files: runtime/filetype.vim, src/testdir/test_filetype.vim + +Patch 8.1.0508 +Problem: Suspend test fails when run by root. +Solution: Accept both '$' and '#' for the prompt. (James McCoy, closes #3590) +Files: src/testdir/test_suspend.vim + +Patch 8.1.0509 +Problem: Checking cwd not accessible fails for root. (James McCoy) +Solution: Skip this part of the test for root. (closes #3595) +Files: src/testdir/test_terminal.vim + +Patch 8.1.0510 +Problem: Filter test fails when $LANG is C.UTF-8. +Solution: Set 'helplang' to "en" for any C language. (Christian Brabandt, + closes #3577) +Files: src/option.c + +Patch 8.1.0511 +Problem: ml_get error when calling a function with a range. +Solution: Don't position the cursor after the last line. +Files: src/userfunc.c, src/testdir/test_functions.vim + +Patch 8.1.0512 +Problem: 'helplang' default is inconsistent for C and C.UTF-8. +Solution: Don't accept a value unless it starts with two letters. +Files: src/ex_cmds2.c + +Patch 8.1.0513 +Problem: No error for set diffopt+=algorithm:. +Solution: Check for missing argument. (Hirohito Higashi, closes #3598) +Files: src/diff.c, src/testdir/gen_opt_test.vim + +Patch 8.1.0514 +Problem: CTRL-W ^ does not work when alternate buffer has no name. +Solution: Use another method to split and edit the alternate buffer. (Jason + Franklin) +Files: src/testdir/test_normal.vim, src/testdir/test_window_cmd.vim, + src/normal.c, src/window.c, runtime/doc/windows.txt + +Patch 8.1.0515 +Problem: Reloading a script gives errors for existing functions. +Solution: Allow redefining a function once when reloading a script. +Files: src/testdir/test_functions.vim, src/userfunc.c, src/structs.h, + src/globals.h, src/buffer.c, src/ex_cmds2.c, src/main.c, + src/option.c, runtime/doc/eval.txt + +Patch 8.1.0516 +Problem: :move command marks buffer modified when nothing changed. +Solution: Do not set 'modified'. Add a test. (Jason Franklin) +Files: src/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_move.vim, src/ex_cmds.c + +Patch 8.1.0517 +Problem: Test_window_split_edit_alternate() fails on AppVeyor. +Solution: Disable the failing part for now. +Files: src/testdir/test_window_cmd.vim + +Patch 8.1.0518 +Problem: Test_window_split_edit_bufnr() fails on AppVeyor. +Solution: Disable the failing part for now. +Files: src/testdir/test_window_cmd.vim + +Patch 8.1.0519 +Problem: Cannot save and restore the tag stack. +Solution: Add gettagstack() and settagstack(). (Yegappan Lakshmanan, + closes #3604) +Files: runtime/doc/eval.txt, runtime/doc/tagsrch.txt, + runtime/doc/usr_41.txt, src/alloc.h, src/dict.c, src/evalfunc.c, + src/list.c, src/misc2.c, src/proto/dict.pro, src/proto/list.pro, + src/proto/misc2.pro, src/proto/tag.pro, src/tag.c, + src/testdir/test_tagjump.vim + +Patch 8.1.0520 +Problem: Screen diff test sometimes fails. +Solution: Add to list of flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0521 +Problem: Cannot build with +eval but without +quickfix. +Solution: Remove #ifdef for e_stringreq. (John Marriott) +Files: src/evalfunc.c + +Patch 8.1.0522 +Problem: :terminal does not show trailing empty lines. +Solution: Add empty lines. (Hirohito Higashi, closes #3605) +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0523 +Problem: Opening window from quickfix leaves empty buffer behind. +Solution: Add qf_jump_newwin(). (Yegappan Lakshmanan, closes #2574) +Files: src/proto/quickfix.pro, src/quickfix.c, + src/testdir/test_quickfix.vim + +Patch 8.1.0524 (after 8.1.0522) +Problem: Terminal test fails on Windows. +Solution: Skip Test_terminal_does_not_truncate_last_newlines() for now. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0525 (after 8.1.0524) +Problem: Terminal test skips part on Windows. +Solution: Fix Test_terminal_does_not_truncate_last_newlines(). (Hirohito + Higashi, closes #3606) +Files: src/Make_mvc.mak, src/testdir/test_terminal.vim + +Patch 8.1.0526 +Problem: Running out of signal stack in RealWaitForChar. (Vladimir Marek) +Solution: Make the fd_set variables static. +Files: src/os_unix.c + +Patch 8.1.0527 +Problem: Using 'shiftwidth' from wrong buffer for folding. +Solution: Use "buf" instead of "curbuf". (Christian Brabandt) +Files: src/fold.c + +Patch 8.1.0528 +Problem: Various typos in comments. +Solution: Fix the typos. +Files: src/fileio.c, src/gui.c, src/macros.h, src/screen.c, src/search.c, + src/spell.c, src/spellfile.c, src/vim.h, src/testdir/README.txt, + src/INSTALL, src/gui_athena.c, src/gui_gtk.c, src/gui_gtk_x11.c, + src/gui_motif.c, src/gui_xmebw.c, src/if_tcl.c, src/os_amiga.c, + src/gui_w32.c, src/os_win32.c, src/gui_mac.c, src/os_vms_fix.com + +Patch 8.1.0529 +Problem: Flaky test sometimes fails in different ways. +Solution: When the second run gives a different error, try running the test + again, up to five times. +Files: src/testdir/runtest.vim + +Patch 8.1.0530 +Problem: Channel and terminal tests that start a server can be flaky. +Solution: Add all channel and terminal tests that start a server to the list + of flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0531 +Problem: Flaky tests often fail with a common error message. +Solution: Add a pattern to match an error message indicating a flaky test. +Files: src/testdir/runtest.vim + +Patch 8.1.0532 +Problem: Cannot distinguish between quickfix and location list. +Solution: Add an explicit type variable. (Yegappan Lakshmanan) +Files: src/quickfix.c + +Patch 8.1.0533 +Problem: Screendump tests can be flaky. +Solution: Add VerifyScreenDump to the pattern of flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0534 +Problem: MS-Windows installer uses different $HOME than Vim. +Solution: Use the Vim logic also in the MS-Windows installer. (Ken Takata, + closes #3564) +Files: src/dosinst.c, src/misc1.c + +Patch 8.1.0535 +Problem: Increment/decrement might get interrupted by updating folds. +Solution: Disable fold updating for a moment. (Christian Brabandt, + closes #3599) +Files: src/ops.c + +Patch 8.1.0536 +Problem: File time test fails when using NFS. +Solution: Use three file times instead of localtim(). (James McCoy, + closes #3618) +Files: src/testdir/test_stat.vim + +Patch 8.1.0537 +Problem: ui_breakcheck() may be called recursively, which doesn't work. +Solution: When called recursively, just return. (James McCoy, closes #3617) +Files: src/ui.c + +Patch 8.1.0538 +Problem: Evaluating a modeline might invoke using a shell command. (Paul + Huber) +Solution: Set the sandbox flag when setting options from a modeline. +Files: src/buffer.c + +Patch 8.1.0539 +Problem: Cannot build without the sandbox. +Solution: Set the secure option instead of using the sandbox. Also restrict + the characters from 'spelllang' that are used for LANG.vim. + (suggested by Yasuhiro Matsumoto) +Files: runtime/doc/options.txt, src/buffer.c, src/option.c + +Patch 8.1.0540 +Problem: May evaluate insecure value when appending to option. +Solution: Set the secure flag when changing an option that was previously + set insecurely. Also allow numbers for the characters from + 'spelllang' that are used for LANG.vim. (closes #3623) +Files: src/option.c + +Patch 8.1.0541 +Problem: Help message in dosinst.c is outdated. +Solution: Update the comment. (Ken Takata, closes #3626) +Files: src/dosinst.c + +Patch 8.1.0542 +Problem: shiftwidth() does not take 'vartabstop' into account. +Solution: Use the cursor position or a position explicitly passed. + Also make >> and << work better with 'vartabstop'. (Christian + Brabandt) +Files: runtime/doc/change.txt, runtime/doc/eval.txt, src/edit.c, + src/evalfunc.c, src/normal.c, src/ops.c, src/option.c, + src/proto/edit.pro, src/proto/option.pro, + src/testdir/test_vartabs.vim + +Patch 8.1.0543 +Problem: Coverity warns for leaking memory and using wrong struct. +Solution: Free pointer when allocation fails. Change "boff" to "loff". + (closes #3634) +Files: src/ex_getln.c, src/move.c + +Patch 8.1.0544 (after 8.1.0540) +Problem: Setting 'filetype' in a modeline causes an error (Hirohito + Higashi). +Solution: Don't add the P_INSECURE flag when setting 'filetype' from a + modeline. Also for 'syntax'. +Files: src/option.c, src/testdir/test_modeline.vim + +Patch 8.1.0545 +Problem: When executing indent tests user preferences interfere. +Solution: Add "--clean". +Files: runtime/indent/Makefile, runtime/indent/testdir/runtest.vim + +Patch 8.1.0546 +Problem: Modeline test with keymap fails. +Solution: Check that the keymap feature is available. +Files: src/testdir/test_modeline.vim + +Patch 8.1.0547 +Problem: Modeline test with keymap still fails. +Solution: Check that the keymap feature is available for the failure assert. +Files: src/testdir/test_modeline.vim + +Patch 8.1.0548 +Problem: Crash when job callback unloads a buffer. (James McCoy) +Solution: Don't round up the wait time to 10 msec in ui_inchar(). +Files: src/ui.c + +Patch 8.1.0549 +Problem: Netbeans test depends on README.txt contents. +Solution: Use a generated file instead. +Files: src/testdir/test_netbeans.vim, src/testdir/test_netbeans.py + +Patch 8.1.0550 +Problem: Expression evaluation may repeat an error message. (Jason + Franklin) +Solution: Increment did_emsg and check for the value when giving an error + for the echo command. +Files: src/message.c, src/eval.c, src/testdir/test108.ok + +Patch 8.1.0551 (after 8.1.0550) +Problem: Expression evaluation may repeat an error message. (Jason + Franklin) +Solution: Check for the value of did_emsg when giving an error + for the :execute command. +Files: src/eval.c + +Patch 8.1.0552 +Problem: Saved last search pattern may not be restored. +Solution: Call restore_last_search_pattern(). Add a check for balancing + saving and restoring the last search pattern. +Files: src/ex_getln.c, src/search.c + +Patch 8.1.0553 +Problem: It is not easy to edit a script that was sourced. +Solution: Add a count to ":scriptnames", so that ":script 40" edits the + script with script ID 40. +Files: src/ex_cmds.h, src/ex_cmds2.c, src/testdir/test_scriptnames.vim, + src/Make_all.mak, src/testdir/Make_all.mak, runtime/doc/repeat.txt + +Patch 8.1.0554 +Problem: Popup menu overlaps with preview window. +Solution: Adjust the height computation. (Hirohito Higashi, closes #3414) +Files: src/popupmnu.c, src/testdir/test_popup.vim, + src/testdir/dumps/Test_popup_and_previewwindow_01.dump + +Patch 8.1.0555 +Problem: Crash when last search pat is set but not last substitute pat. +Solution: Do not mix up last search pattern and last subtitute pattern. + (closes #3647) +Files: src/search.c, src/testdir/test_search.vim + +Patch 8.1.0556 +Problem: Saving/restoring search patterns share saved last_idx. +Solution: Use a separate saved last_idx for saving search patterns for + functions and incremental search. +Files: src/search.c + +Patch 8.1.0557 +Problem: Termdebug: gdb may use X.Y for breakpoint number. +Solution: Handle X.Y breakpoint numbers. (Yasuhiro Matsumoto, close #3641) +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0558 +Problem: Some MS-Windows instructions are outdated. +Solution: Update the uninstall instructions and the NSIS README. (Ken + Takata, closes #3614) Also update remark about diff.exe. +Files: nsis/README.txt, uninstal.txt + +Patch 8.1.0559 +Problem: Command line completion not sufficiently tested. +Solution: Add more tests. (Dominique Pelle, closes #3622) +Files: src/testdir/test_arglist.vim, src/testdir/test_filetype.vim, + src/testdir/test_history.vim, src/testdir/test_messages.vim, + src/testdir/test_syntax.vim + +Patch 8.1.0560 +Problem: Cannot use address type "other" with with user command. +Solution: Add "other" to the list. (Daniel Hahler, closes #3655) Also + reject "%" for commands with "other". Add some more tests. +Files: src/ex_docmd.c, src/testdir/test_usercommands.vim + +Patch 8.1.0561 +Problem: MSCV error format has changed. +Solution: Make the space between the line number and colon optional. +Files: src/option.h + +Patch 8.1.0562 +Problem: Parsing of 'diffopt' is slightly wrong. +Solution: Fix the parsing and add a test. (Jason Franklin, Christian + Brabandt) +Files: src/diff.c, src/testdir/test_diffmode.vim, + src/testdir/dumps/Test_diff_09.dump, + src/testdir/dumps/Test_diff_11.dump, src/testdir/screendump.vim + +Patch 8.1.0563 +Problem: Setting v:errors to a string give confusing error. (Christian + Brabandt) +Solution: Change internal error into normal error message. +Files: src/eval.c + +Patch 8.1.0564 +Problem: Setting v:errors to wrong type still possible. +Solution: Return after giving an error message. (Christian Brabandt) +Files: src/eval.c, src/testdir/test_eval_stuff.vim + +Patch 8.1.0565 +Problem: Asan complains about reading before allocated block. +Solution: Workaround: Avoid offset from becoming negative. +Files: src/gui.c + +Patch 8.1.0566 +Problem: SGR not enabled for mintty because $TERM is "xterm". +Solution: Detect mintty by the termresponse. (Ken Takata, closes #3667) +Files: src/term.c + +Patch 8.1.0567 (after 8.1.0565) +Problem: Error for NUL byte in ScreenLines goes unnoticed. +Solution: Add an internal error message. +Files: src/gui.c + +Patch 8.1.0568 (after 8.1.0567) +Problem: Error message for NUL byte in ScreenLines breaks Travis CI. +Solution: Use a normal message fornow. +Files: src/gui.c + +Patch 8.1.0569 +Problem: Execute() always resets display column to zero. (Sha Liu) +Solution: Don't reset it to zero, restore the previous value. (closes #3669) +Files: src/evalfunc.c, src/testdir/test_execute_func.vim + +Patch 8.1.0570 +Problem: 'commentstring' not used when adding fold marker. (Maxim Kim) +Solution: Only use empty 'comments' middle when leader is empty. (Christian + Brabandt, closes #3670) +Files: src/misc1.c, src/testdir/test_fold.vim + +Patch 8.1.0571 (after 8.1.0569) +Problem: Non-silent execute() resets display column to zero. +Solution: Keep the display column as-is. +Files: src/evalfunc.c, src/testdir/test_execute_func.vim + +Patch 8.1.0572 +Problem: Stopping a job does not work properly on OpenBSD. +Solution: Do not use getpgid() to check the process group of the job + processs ID, always pass the negative process ID to kill(). + (George Koehler, closes #3656) +Files: src/os_unix.c + +Patch 8.1.0573 +Problem: Cannot redefine user command without ! in same script +Solution: Allow redefining user command without ! in same script, like with + functions. +Files: src/ex_docmd.c, src/testdir/test_usercommands.vim, + runtime/doc/map.txt + +Patch 8.1.0574 +Problem: 'commentstring' not used when adding fold marker in C. +Solution: Require white space before middle comment part. (mostly by + Hirohito Higashi) +Files: src/misc1.c, src/testdir/test_fold.vim + +Patch 8.1.0575 +Problem: Termdebug: clearing multi-breakpoint does not work. +Solution: Delete all X.Y breakpoints. Keep more information about placed + breakpoints. (Ozaki Kiichi, closes #3641) +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0576 +Problem: Indent script tests pick up installed scripts. +Solution: Use current runtime indent scripts. +Files: runtime/indent/Makefile + +Patch 8.1.0577 +Problem: Tabpage right-click menu never shows "Close tab". +Solution: Always create the "Close tab" item but ignore the event if there + is only one tab. +Files: src/gui_gtk_x11.c, src/gui_mac.c, src/gui_motif.c, src/gui.c + +Patch 8.1.0578 +Problem: Cannot disable arabic, rightleft and farsi in configure. +Solution: Add configur flags. (Diego Fernando Carrión, closes #1867) +Files: src/configure.ac, src/auto/configure, src/config.h.in, + src/feature.h, src/Makefile + +Patch 8.1.0579 +Problem: Cannot attach properties to text. +Solution: First part of adding text properties. +Files: Filelist, runtime/doc/Makefile, runtime/doc/eval.txt, + runtime/doc/textprop.txt, src/Make_all.mak, src/Make_cyg_ming.mak, + src/Make_mvc.mak, src/Makefile, src/buffer.c, src/edit.c, + src/evalfunc.c, src/feature.h, src/memline.c, src/misc1.c, + src/misc2.c, src/proto.h, src/proto/memline.pro, + src/proto/textprop.pro, src/screen.c, src/structs.h, + src/testdir/Make_all.mak, src/testdir/test_textprop.vim, + src/textprop.c, src/userfunc.c, src/version.c + +Patch 8.1.0580 +Problem: Invalid memory access when using text properties. +Solution: Disable text properties for now. +Files: src/feature.h + +Patch 8.1.0581 +Problem: Double free without the text properties feature. +Solution: Reset the dirty flag. +Files: src/memline.c + +Patch 8.1.0582 +Problem: Text properties are not enabled. +Solution: Fix sizeof argument and re-enable the text properties feature. + Fix memory leak. +Files: src/feature.h, src/textprop.c + +Patch 8.1.0583 +Problem: Using illogical name for get_dict_number()/get_dict_string(). +Solution: Rename to start with dict_. +Files: src/dict.c, src/proto/dict.pro, src/edit.c, src/eval.c, + src/evalfunc.c, src/quickfix.c, src/tag.c, src/terminal.c, + src/textprop.c + +Patch 8.1.0584 +Problem: With search CTRL-L does not pick up composing characters. +Solution: Check for composing characters. (Christian Brabandt, closes #3682) + [code change was accidentally included in 8.1.0579] +Files: src/testdir/test_search.vim + +Patch 8.1.0585 +Problem: Undo test may fail on MS-Windows. +Solution: Also handle lower case drive letters. +Files: src/testdir/test_undo.vim + +Patch 8.1.0586 +Problem: :digraph output is not easy to read. +Solution: Add highlighting for :digraphs. (Marcin Szamotulski, closes #3572) + Also add section headers for :digraphs!. +Files: src/ex_docmd.c, src/digraph.c, src/proto/digraph.pro, + src/ex_cmds.h, runtime/doc/digraph.txt + +Patch 8.1.0587 +Problem: GvimExt: realloc() failing is not handled properly. +Solution: Check for NULL return. (Jan-Jaap Korpershoek, closes #3689) +Files: src/GvimExt/gvimext.cpp + +Patch 8.1.0588 +Problem: Cannot define a sign with space in the text. +Solution: Allow for escaping characters. (Ben Jackson, closes #2967) +Files: src/ex_cmds.c, src/testdir/test_signs.vim + +Patch 8.1.0589 +Problem: Compilation error in gvimext.cpp. +Solution: Return a value. Also fix using uninitialized variable. +Files: src/GvimExt/gvimext.cpp, src/dosinst.c + +Patch 8.1.0590 +Problem: When a job ends the closed channels are not handled. +Solution: When a job is detected to have ended, check the channels again. + (closes #3530) +Files: src/channel.c, src/proto/channel.pro, src/misc2.c + +Patch 8.1.0591 +Problem: Channel sort test is flaky. +Solution: Do not check if the job is running, it may have be done very fast. +Files: src/testdir/test_channel.vim + +Patch 8.1.0592 +Problem: The libvterm tests are not run as part of Vim tests. +Solution: Add testing libvterm. +Files: src/Makefile, src/libvterm/Makefile + +Patch 8.1.0593 +Problem: Illegal memory access in libvterm test. +Solution: Fix off-by-one error. +Files: src/libvterm/src/vterm.c, src/libvterm/Makefile, + src/libvterm/t/run-test.pl + +Patch 8.1.0594 +Problem: Libvterm tests fail to run on Mac. +Solution: Only run libvterm tests on Linux. +Files: src/Makefile + +Patch 8.1.0595 +Problem: Libvterm tests are not run with coverage. +Solution: Adjust the Travis config. Show the actually run commands. +Files: .travis.yml, src/libvterm/Makefile + +Patch 8.1.0596 +Problem: Not all parts of printf() are tested. +Solution: Add a few more test cases. (Dominique Pelle, closes #3691) +Files: src/testdir/test_expr.vim + +Patch 8.1.0597 +Problem: Cannot run test_libvterm from the top directory. +Solution: Add test target in toplevel Makefile. +Files: Makefile + +Patch 8.1.0598 +Problem: Indent tests may use the wrong Vim binary. +Solution: Pass in the just built Vim binary. +Files: Makefile + +Patch 8.1.0599 +Problem: Without the +eval feature the indent tests don't work. +Solution: Skip the body of the tests. +Files: runtime/indent/testdir/cleantest.vim, + runtime/indent/testdir/runtest.vim + +Patch 8.1.0600 +Problem: Channel test is flaky. +Solution: Add test to list of flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0601 +Problem: A few compiler warnings. +Solution: Add type casts. (Mike Williams) +Files: src/GvimExt/gvimext.cpp, src/memline.c, src/textprop.c + +Patch 8.1.0602 +Problem: DirChanged is also triggered when the directory didn't change. + (Daniel Hahler) +Solution: Compare the current with the new directory. (closes #3697) +Files: src/ex_docmd.c, src/testdir/test_autocmd.vim, src/misc2.c, + src/testdir/test_autochdir.vim + +Patch 8.1.0603 +Problem: The :stop command is not tested. +Solution: Test :stop using a terminal window. +Files: src/testdir/test_terminal.vim, src/testdir/shared.vim + +Patch 8.1.0604 +Problem: Autocommand test fails on MS-Windows. +Solution: Use pathcmp() instead of strcmp() to check if a directory differs. +Files: src/ex_docmd.c, src/misc2.c + +Patch 8.1.0605 +Problem: Running make in the top directory echoes a comment. +Solution: Prefix with @. (closes #3698) +Files: Makefile + +Patch 8.1.0606 +Problem: 'cryptmethod' defaults to a very old method. +Solution: Default to "blowfish2", it is now widely available. +Files: src/option.c, runtime/doc/options.txt + +Patch 8.1.0607 +Problem: Proto files are not in sync with the source code. +Solution: Update the proto files. +Files: src/os_mswin.c, src/proto/buffer.pro, src/proto/ex_cmds.pro, + src/proto/ex_getln.pro, src/proto/misc2.pro, + src/proto/userfunc.pro + +Patch 8.1.0608 +Problem: Coverals is not updating. +Solution: Adjust path in Travis config. +Files: .travis.yml + +Patch 8.1.0609 +Problem: MS-Windows: unused variable, depending on the Ruby version. +Solution: Put ruby_sysinit and NtInitialize inside #ifdef and make them + consistent. (Ken Takata) +Files: src/if_ruby.c + +Patch 8.1.0610 +Problem: MS-Windows ctags file list differs from Unix. +Solution: Define TAGS_FILES in the common makefile. (partly by Ken Takata) +Files: src/Make_all.mak, src/Makefile, src/Make_mvc.mak, + src/Make_cyg_ming.mak + +Patch 8.1.0611 +Problem: Crash when using terminal with long composing characters. +Solution: Make space for all characters. (Yasuhiro Matsumoto, closes #3619, + closes #3703) +Files: src/terminal.c + +Patch 8.1.0612 +Problem: Cannot use two global runtime dirs with configure. +Solution: Support a comma in --with-global-runtime. (James McCoy, + closes #3704) +Files: src/config.h.in, src/configure.ac, src/feature.h, src/os_unix.h, + src/auto/configure, src/Makefile + +Patch 8.1.0613 +Problem: When executing an insecure function the secure flag is stuck. + (Gabriel Barta) +Solution: Restore "secure" instead of decrementing it. (closes #3705) +Files: src/testdir/test_autocmd.vim, src/option.c, src/buffer.c + +Patch 8.1.0614 +Problem: Placing signs can be complicated. +Solution: Add functions for defining and placing signs. Introduce a group + name to avoid different plugins using the same signs. (Yegappan + Lakshmanan, closes #3652) +Files: runtime/doc/eval.txt, runtime/doc/sign.txt, + runtime/doc/usr_41.txt, src/alloc.h, src/buffer.c, src/evalfunc.c, + src/ex_cmds.c, src/globals.h, src/list.c, src/misc2.c, + src/netbeans.c, src/proto/buffer.pro, src/proto/ex_cmds.pro, + src/proto/list.pro, src/proto/misc2.pro, src/structs.h, + src/testdir/test_signs.vim, src/workshop.c + +Patch 8.1.0615 +Problem: Get_tv function names are not consistent. +Solution: Rename to tv_get. +Files: src/eval.c, src/proto/eval.pro, src/channel.c, src/dict.c, + src/evalfunc.c, src/list.c, src/message.c, src/tag.c, + src/terminal.c, src/textprop.c, src/window.c, src/ex_cmds.c, + src/os_unix.c, src/os_win32.c, src/json.c, src/regexp.c, + src/edit.c, src/misc2.c, src/popupmnu.c + +Patch 8.1.0616 +Problem: NSIS installer is outdated. +Solution: Use modern syntax, MUI2 and make it work better. Add translations. + (Guopeng Wen, Ken Takata, closes #3501) +Files: Filelist, nsis/gvim.nsi, nsis/icons/header.svg, + nsis/icons/welcome.svg, nsis/icons/header.bmp, + nsis/icons/un_header.bmp, nsis/icons/uninstall.bmp, + nsis/icons/welcome.bmp, nsis/lang/danish.nsi, nsis/lang/dutch.nsi, + nsis/lang/english.nsi, nsis/lang/german.nsi, + nsis/lang/italian.nsi, nsis/lang/japanese.nsi, + nsis/lang/simpchinese.nsi, nsis/lang/tradchinese.nsi, + src/dosinst.c + +Patch 8.1.0617 (after 8.1.0616) +Problem: NSIS installer gets two files from the wrong directory. +Solution: Change ${VIMRT} to "..\". +Files: nsis/gvim.nsi + +Patch 8.1.0618 +Problem: term_getjob() does not return v:null as documented. +Solution: Do return v:null. (Damien) Add a test. +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0619 +Problem: :echomsg and :echoerr do not handle List and Dict like :echo does. + (Daniel Hahler) +Solution: Be more tolerant about the expression result type. +Files: src/eval.c, src/proto/eval.pro, src/evalfunc.c, + src/proto/evalfunc.pro, runtime/doc/eval.txt, + src/testdir/test_messages.vim, src/message.c + +Patch 8.1.0620 +Problem: Overuling CONF_ARGS from the environment no longer works. (Tony + Mechelynck) +Solution: Do not define any CONF_ARGS by default. +Files: src/Makefile + +Patch 8.1.0621 +Problem: Terminal debugger does not handle unexpected debugger exit. +Solution: Check for debugger job ended and close unused buffers. (Damien) +Files: runtime/pack/dist/opt/termdebug/plugin/termdebug.vim + +Patch 8.1.0622 +Problem: Adding quickfix items marks items as valid errors. (Daniel Hahler) +Solution: Check when items are valid. (Yegappan Lakshmanan, closes #3683, + closes #3633) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0623 +Problem: Iterating through window frames is repeated. +Solution: Define FOR_ALL_FRAMES. (Yegappan Lakshmanan) +Files: src/ex_docmd.c, src/globals.h, src/screen.c, src/window.c + +Patch 8.1.0624 (after 8.2.0620) +Problem: Overuling CONF_ARGS from the environment still does not work. (Tony + Mechelynck) +Solution: Add back CONF_ARGS next to the new numbered ones. +Files: src/Makefile + +Patch 8.1.0625 +Problem: MS-Windows: terminal test fails in white console. +Solution: Accept both white and black background colors. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0626 +Problem: MS-Windows: no resize to fit parent when using --windowid. +Solution: Pass FALSE for "mustset" in gui_set_shellsize(). (Agorgianitis + Loukas, closes #3616) +Files: src/gui.c + +Patch 8.1.0627 +Problem: Python cannot handle function name of script-local function. +Solution: Use <SNR> instead of the special byte code. (Ozaki Kiichi, closes + #3681) +Files: src/if_py_both.h, src/testdir/test_python2.vim, + src/testdir/test_python3.vim + +Patch 8.1.0628 +Problem: Compiler warning on MS-Windows. +Solution: Add type cast. (Mike Williams) +Files: src/if_py_both.h + +Patch 8.1.0629 +Problem: "gn" selects the wrong text with a multi-line match. +Solution: Get the end position from searchit() directly. (closes #3695) +Files: src/testdir/test_gn.vim, src/search.c, src/proto/search.pro, + src/edit.c, src/evalfunc.c, src/ex_docmd.c, ex_getln.c, + src/normal.c + +Patch 8.1.0630 +Problem: "wincmd p" does not work after using an autocmd window. +Solution: Store "prevwin" in aco_save_T. (Christian Brabandt, closes #3690) +Files: src/fileio.c, src/structs.h, src/testdir/test_window_cmd.vim + +Patch 8.1.0631 +Problem: Test for :stop fails on Arch. +Solution: Check five lines for the expected output. (closes #3714) +Files: src/testdir/test_terminal.vim + +Patch 8.1.0632 +Problem: Using sign group names is inefficient. +Solution: Store group names in a hash table and use a reference to them. + Also remove unnecessary use of ":exe" from the tests. (Yegappan + Lakshmanan, closes #3715) +Files: src/buffer.c, src/ex_cmds.c, src/structs.h, + src/testdir/test_signs.vim + +Patch 8.1.0633 +Problem: Crash when out of memory while opening a terminal window. +Solution: Handle out-of-memory more gracefully. +Files: src/terminal.c, src/libvterm/src/vterm.c, + src/libvterm/src/state.c, src/libvterm/src/termscreen.c + +Patch 8.1.0634 +Problem: Text properties cannot cross line boundaries. +Solution: Support multi-line text properties. +Files: src/textprop.c, src/testdir/test_textprop.vim, + runtime/doc/eval.txt + +Patch 8.1.0635 +Problem: Coverity complains about null pointer use. +Solution: Avoid using a null pointer. +Files: src/evalfunc.c + +Patch 8.1.0636 +Problem: line2byte() gives wrong values with text properties. (Bjorn Linse) +Solution: Compute byte offsets differently when text properties were added. + (closes #3718) +Files: src/structs.h, src/textprop.c, src/proto/textprop.pro, + src/memline.c, src/testdir/test_textprop.vim + +Patch 8.1.0637 +Problem: Nsis file no longer used. +Solution: Remove the file. (Ken Takata) +Files: nsis/vimrc.ini, Filelist + +Patch 8.1.0638 +Problem: Text property highlighting is off by one column. (Bjorn Linse) +Solution: Update text property highlighting earlier. Let it overrule syntax + highlighting. +Files: src/structs.h, src/screen.c + +Patch 8.1.0639 +Problem: text properties test fails on MS-Windows +Solution: Set fileformat to "unix". +Files: src/testdir/test_textprop.vim + +Patch 8.1.0640 +Problem: Get E14 while typing command :tab with 'incsearch' set. +Solution: Do not give an error when looking for the command. (Yasuhiro + Higashi) +Files: src/testdir/test_search.vim, src/ex_docmd.c + +Patch 8.1.0641 +Problem: No check for out-of-memory when converting regexp. +Solution: Bail out when lalloc() returns NULL. (John Marriott) +Files: src/regexp_nfa.c + +Patch 8.1.0642 +Problem: swapinfo() leaks memory. (Christian Brabandt) +Solution: Avoid allocating the strings twice. +Files: src/memline.c, src/dict.c, src/proto/dict.pro + +Patch 8.1.0643 +Problem: Computing byte offset wrong. (Bjorn Linse) +Solution: Use the right variable for array index. +Files: src/memline.c, src/testdir/test_textprop.vim + +Patch 8.1.0644 +Problem: Finding next sign ID is inefficient. +Solution: Add next_sign_id. (Yegappan Lakshmanan, closes #3717) +Files: runtime/doc/eval.txt, src/buffer.c, src/evalfunc.c, src/ex_cmds.c, + src/globals.h, src/main.c, src/proto/buffer.pro, src/structs.h, + src/testdir/test_signs.vim + +Patch 8.1.0645 +Problem: Coverity warns for possible use of NULL pointer. +Solution: Check return value of vterm_obtain_screen(). +Files: src/terminal.c + +Patch 8.1.0646 +Problem: Cannot build with Ruby 2.6.0. +Solution: Add rb_ary_detransient(). (Ozaki Kiichi, closes #3724) +Files: src/if_ruby.c + +Patch 8.1.0647 +Problem: MS-Windows: balloon_show() does not handle wide characters. +Solution: Use CreateWindowExW(). (Yasuhiro Matsumoto, closes #3708) +Files: src/gui_w32.c + +Patch 8.1.0648 +Problem: Custom operators can't act upon a forced motion. (Christian + Wellenbrock) +Solution: Add the forced motion to the mode() result. (Christian Brabandt, + closes #3490) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/globals.h, src/normal.c, + src/testdir/test_mapping.vim + +Patch 8.1.0649 +Problem: setjmp() variables defined globally are used in one file. +Solution: Move the declarations to that file. +Files: src/globals.h, src/os_unix.c + +Patch 8.1.0650 +Problem: Command line argument -q [errorfile] is not tested. +Solution: Add a test. (Dominique Pelle, closes #3730) +Files: src/testdir/test_startup.vim + +Patch 8.1.0651 +Problem: :args \"foo works like :args without argument. +Solution: Fix check for empty argument. (closes #3728) +Files: src/ex_cmds2.c, src/testdir/test_arglist.vim + +Patch 8.1.0652 +Problem: Freeing memory for balloon eval too early. +Solution: Store the pointer in BalloonEval and free it later. (Yasuhiro + Matsumoto, closes #3725) +Files: src/beval.h, src/gui_w32.c + +Patch 8.1.0653 (after 8.1.0651) +Problem: Arglist test fails on MS-windows. +Solution: Only use a file name with a double quote on Unix. +Files: src/testdir/test_arglist.vim + +Patch 8.1.0654 +Problem: When deleting a line text property flags are not adjusted. +Solution: Adjust text property flags in preceding and following lines. +Files: src/memline.c, src/misc2.c, src/proto/misc2.pro, + src/testdir/test_textprop.vim + +Patch 8.1.0655 +Problem: When appending a line text property flags are not added. +Solution: Add text properties to a newly added line. +Files: src/memline.c, src/testdir/test_textprop.vim, src/textprop.c + +Patch 8.1.0656 +Problem: Trying to reconnect to X server may cause problems. +Solution: Do no try reconnecting when exiting. (James McCoy) +Files: src/os_unix.c + +Patch 8.1.0657 (after 8.1.0656) +Problem: Get error for using regexp recursively. (Dominique Pelle) +Solution: Do no check if connection is desired. +Files: src/os_unix.c + +Patch 8.1.0658 +Problem: Deleting signs and completion for :sign is insufficient. +Solution: Add deleting signs in a specified or any group from the current + cursor location. Add group and priority to sign command + completion. Add tests for different sign unplace commands. Update + help text. Add tests for sign jump with group. Update help for + sign jump. (Yegappan Lakshmanan, closes #3731) +Files: runtime/doc/sign.txt, src/buffer.c, src/evalfunc.c, src/ex_cmds.c, + src/netbeans.c, src/proto/buffer.pro, src/proto/ex_cmds.pro, + src/testdir/test_signs.vim + +Patch 8.1.0659 (after 8.1.0658) +Problem: Build failure without the sign feature. +Solution: Put the sign struct declarations outside of the #ifdef. +Files: src/structs.h + +Patch 8.1.0660 +Problem: sign_unplace() may leak memory. +Solution: Free the group name before returning. Add a few more tests. + (Yegappan Lakshmanan) +Files: src/evalfunc.c, src/testdir/test_signs.vim + +Patch 8.1.0661 +Problem: Clipboard regexp might be used recursively. +Solution: Check for recursive use and bail out. +Files: src/regexp.c, src/proto/regexp.pro, src/os_unix.c + +Patch 8.1.0662 +Problem: Needlessly searching for tilde in string. +Solution: Only check the first character. (James McCoy, closes #3734) +Files: src/misc1.c + +Patch 8.1.0663 +Problem: Text property display wrong when 'number' is set. (Dominique + Pelle) +Solution: Compare with "vcol" instead of "col". +Files: src/screen.c + +Patch 8.1.0664 +Problem: Configure "fail-if-missing" does not apply to the enable-gui + argument. (Rhialto) +Solution: Make configure fail if a GUI was specifified and "fail-if-missing" + is enabled and the GUI test fails. +Files: src/configure.ac, src/auto/configure + +Patch 8.1.0665 +Problem: Text property display wrong when 'spell' is set. (Dominique Pelle) +Solution: Remove unnecessary assignment to char_attr. Combine attributes if + needed. Add a screenshot test. +Files: src/screen.c, src/testdir/test_textprop.vim, + src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.0666 (after 8.1.0665) +Problem: Text property test fails. +Solution: Update screenshot. +Files: src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.0667 (after 8.1.0665) +Problem: Textprop test leaves file behind. +Solution: Delete the file. (Dominique Pelle, closes #3743) +Files: src/testdir/test_textprop.vim + +Patch 8.1.0668 +Problem: No test for overstrike mode in the command line. +Solution: Add a test. (Dominique Pelle, closes #3742) +Files: src/testdir/test_cmdline.vim + +Patch 8.1.0669 +Problem: The ex_sign() function is too long. +Solution: Refactor the function. Add a bit more testing. (Yegappan + Lakshmanan, closes #3745) +Files: src/testdir/test_signs.vim, src/ex_cmds.c + +Patch 8.1.0670 +Problem: Macro for popup menu width is unused. +Solution: Remove it. (Hirohito Higashi) +Files: src/popupmnu.c + +Patch 8.1.0671 +Problem: Cursor in the wrong column after auto-formatting. +Solution: Check for deleting more spaces than adding. (closes #3748) +Files: src/ops.c, src/testdir/test_textformat.vim, src/mark.c, + src/proto/mark.pro, src/misc1.c + +Patch 8.1.0672 +Problem: The Lua interface doesn't know about v:null. +Solution: Add Lua support for v:null. (Uji, closes #3744) +Files: src/if_lua.c, src/testdir/test_lua.vim + +Patch 8.1.0673 +Problem: Functionality for signs is spread out over several files. +Solution: Move most of the sign functionality into sign.c. (Yegappan + Lakshmanan, closes #3751) +Files: Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/README.txt, src/buffer.c, + src/evalfunc.c, src/ex_cmds.c, src/proto.h, src/proto/buffer.pro, + src/proto/ex_cmds.pro, src/proto/sign.pro, src/sign.c + +Patch 8.1.0674 +Problem: Leaking memory when updating a single line. +Solution: Do not call start_search_hl() twice. +Files: src/screen.c + +Patch 8.1.0675 +Problem: Text property column is screen columns is not practical. +Solution: Use byte values for the column. +Files: src/structs.h, src/textprop.c, src/proto/textprop.pro, + runtime/doc/eval.txt, runtime/doc/textprop.txt, + src/testdir/test_textprop.vim, + src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.0676 +Problem: Textprop screendump test fails. +Solution: Add missing changes. +Files: src/screen.c + +Patch 8.1.0677 +Problem: Look-behind match may use the wrong line number. (Dominique Pelle) +Solution: Use the line number in regsave instead of the one in behind_pos, + we may be looking at the previous line. (closes #3749) +Files: src/regexp.c + +Patch 8.1.0678 +Problem: Text properties as not adjusted for inserted text. +Solution: Adjust text properties when inserting text. +Files: src/misc1.c, src/proto/misc1.pro, src/textprop.c, + src/testdir/test_textprop.vim, + src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.0679 +Problem: Sign functions do not take buffer argument as documented. +Solution: Use get_buf_tv(). (Yegappan Lakshmanan, closes #3755) +Files: src/evalfunc.c, src/testdir/test_signs.vim + +Patch 8.1.0680 +Problem: Not easy to see what features are unavailable. +Solution: Highlight disabled features in the :version output. (Nazri Ramliy, + closes #3756) +Files: src/version.c + +Patch 8.1.0681 +Problem: Text properties as not adjusted for deleted text. +Solution: Adjust text properties when backspacing to delete text. +Files: src/edit.c, src/misc1.c, src/testdir/test_textprop.vim, + src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.0682 +Problem: Text properties are not adjusted when backspacing replaced text. +Solution: Keep text properties on text restored in replace mode. +Files: src/edit.c, src/textprop.c, src/globals.h, + src/testdir/test_textprop.vim + +Patch 8.1.0683 +Problem: Spell highlighting does not always end. (Gary Johnson) +Solution: Also reset char_attr when spell errors are highlighted. +Files: src/screen.c + +Patch 8.1.0684 +Problem: Warnings from 64-bit compiler. +Solution: Add type casts. (Mike Williams) +Files: src/memline.c, src/textprop.c + +Patch 8.1.0685 +Problem: get_buf_tv() is named inconsistently. +Solution: Rename it to tv_get_buf(). (Yegappan Lakshmanan, closes #3759) +Files: src/evalfunc.c, src/proto/evalfunc.pro, src/terminal.c, + src/textprop.c + +Patch 8.1.0686 +Problem: When 'y' is in 'cpoptions' yanking for the clipboard changes redo. +Solution: Do not use the 'y' flag when "gui_yank" is TRUE. (Andy Massimino, + closes #3760) +Files: src/normal.c + +Patch 8.1.0687 +Problem: Sentence text object in Visual mode is not tested. +Solution: Add a test. (Dominique Pelle, closes #3758) +Files: src/testdir/test_visual.vim + +Patch 8.1.0688 +Problem: Text properties are not restored by undo. +Solution: Also save text properties for undo. +Files: src/structs.h, src/undo.c, src/memline.c, src/proto/memline.pro + +Patch 8.1.0689 (after 8.1.0688) +Problem: Undo with text properties not tested. +Solution: Add a test function. +Files: src/testdir/test_textprop.vim + +Patch 8.1.0690 +Problem: setline() and setbufline() do not clear text properties. +Solution: Clear text properties when setting the text. +Files: src/evalfunc.c, src/testdir/test_textprop.vim + +Patch 8.1.0691 +Problem: Text properties are not adjusted for :substitute. +Solution: Adjust text properties as well as possible. +Files: src/ex_cmds.c, src/textprop.c, src/proto/textprop.pro, + src/testdir/test_textprop.vim + +Patch 8.1.0692 +Problem: If a buffer was deleted a channel can't write to it. +Solution: When the buffer exists but was unloaded, prepare it for writing. + (closes #3764) +Files: src/channel.c, src/testdir/test_channel.vim + +Patch 8.1.0693 (after 8.1.0692) +Problem: Channel test fails sometimes. +Solution: Avoid race condition. +Files: src/testdir/test_channel.vim + +Patch 8.1.0694 +Problem: When using text props may free memory that is not allocated. + (Andy Massimino) +Solution: Allocate the line when adjusting text props. (closes #3766) +Files: src/textprop.c + +Patch 8.1.0695 +Problem: Internal error when using :popup. +Solution: When a menu only exists in Terminal mode give an error. (Naruhiko + Nishino, closes #3765) +Files: runtime/doc/gui.txt, src/globals.h, src/menu.c, src/popupmnu.c, + src/testdir/test_popup.vim + +Patch 8.1.0696 +Problem: When test_edit fails 'insertmode' may not be reset and the next + test may get stuck. (James McCoy) +Solution: Always reset 'insertmode' after executing a test. Avoid that an + InsertCharPre autocommand or a 'complete' function can change the + state. (closes #3768) +Files: src/testdir/runtest.vim, src/edit.c + +Patch 8.1.0697 +Problem: ":sign place" requires the buffer argument. +Solution: Make the argument optional. Also update the help and clean up the + sign test. (Yegappan Lakshmanan, closes #3767) +Files: runtime/doc/eval.txt, runtime/doc/sign.txt, src/sign.c, + src/testdir/test_signs.vim + +Patch 8.1.0698 +Problem: Clearing the window is used too often, causing the command line + to be cleared when opening a tab. (Miroslav Koškár) +Solution: Use NOT_VALID instead of CLEAR. (suggested by Jason Franklin, + closes #630) Also do this for a few other places where clearing + the screen isn't really needed. +Files: src/window.c + +Patch 8.1.0699 +Problem: Compiler warning for uninitialized variable. (Tony Mechelynck) +Solution: Add a dummy init. +Files: src/edit.c + +Patch 8.1.0700 (after 8.1.0698) +Problem: Using "gt" sometimes does not redraw a tab. (Jason Franklin) +Solution: Always set must_redraw in redraw_all_later(). +Files: src/screen.c + +Patch 8.1.0701 +Problem: Sign message not translated and inconsistent spacing. +Solution: Add _() for translation. Add a space. (Ken Takata) Also use + MSG_BUF_LEN instead of BUFSIZ. +Files: src/sign.c, src/testdir/test_signs.vim + +Patch 8.1.0702 +Problem: ":sign place" only uses the current buffer. +Solution: List signs for all buffers when there is no buffer argument. + Fix error message for invalid buffer name in sign_place(). + (Yegappan Lakshmanan, closes #3774) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/sign.c, + src/testdir/test_signs.vim + +Patch 8.1.0703 +Problem: Compiler warnings with 64-bit compiler. +Solution: Change types, add type casts. (Mike Williams) +Files: src/textprop.c, src/undo.c + +Patch 8.1.0704 +Problem: Building with Ruby 2.6 gives compiler warnings. +Solution: Define a stub for rb_ary_detransient. (Ozaki Kiichi, closes #3779) +Files: src/if_ruby.c + +Patch 8.1.0705 +Problem: :colorscheme isn't tested enough +Solution: Improve test coverage of :colorscheme. (Dominique Pelle, closes + #3777) Remove unnecessary sleep. +Files: src/testdir/test_gui.vim + +Patch 8.1.0706 +Problem: Tabline is not always redrawn when something that is used in + 'tabline' changes. +Solution: Add ":redrawtabline" so that a plugin can at least cause the + redraw when needed. +Files: runtime/doc/various.txt, runtime/doc/options.txt, src/ex_docmd.c, + src/ex_cmds.h, src/screen.c, src/proto/screen.pro, + src/ex_cmdidxs.h, src/testdir/test_tabline.vim + +Patch 8.1.0707 +Problem: Text property columns are not adjusted for changed indent. +Solution: Adjust text properties. +Files: src/misc1.c, src/testdir/test_textprop.vim + +Patch 8.1.0708 +Problem: Third argument for redrawWinline() is always FALSE. +Solution: Drop the argument. (neovim #9479) +Files: src/edit.c, src/move.c, src/screen.c, src/proto/screen.pro + +Patch 8.1.0709 +Problem: Windows are updated for every added/deleted sign. +Solution: Do not call update_debug_sign(). Only redraw when the line with + the sign is visible. (idea from neovim #9479) +Files: src/sign.c, src/screen.c, src/proto/screen.pro + +Patch 8.1.0710 +Problem: When using timers may wait for job exit quite long. +Solution: Return from ui_wait_for_chars_or_timer() when a job or channel + needs to be handled. (Ozaki Kiichi, closes #3783) +Files: src/ui.c, src/testdir/test_channel.vim + +Patch 8.1.0711 +Problem: Test files still use function!. +Solution: Remove the exclamation mark. Fix overwriting a function. +Files: src/testdir/test49.vim, src/testdir/test_autocmd.vim, + src/testdir/test_charsearch.vim, + src/testdir/test_charsearch_utf8.vim, + src/testdir/test_display.vim, src/testdir/test_edit.vim, + src/testdir/test_eval_func.vim, src/testdir/test_fnameescape.vim, + src/testdir/test_getcwd.vim, src/testdir/test_highlight.vim, + src/testdir/test_hlsearch.vim, src/testdir/test_ins_complete.vim, + src/testdir/test_lambda.vim, src/testdir/test_listdict.vim, + src/testdir/test_listlbr.vim, src/testdir/test_listlbr_utf8.vim, + src/testdir/test_marks.vim, src/testdir/test_matchadd_conceal.vim, + src/testdir/test_matchadd_conceal_utf8.vim, + src/testdir/test_messages.vim, src/testdir/test_number.vim, + src/testdir/test_options.vim, src/testdir/test_partial.vim, + src/testdir/test_smartindent.vim, src/testdir/test_substitute.vim, + src/testdir/test_system.vim, src/testdir/test_terminal.vim, + src/testdir/test_textobjects.vim, src/testdir/test_utf8.vim, + src/testdir/test_utf8_comparisons.vim, + src/testdir/test_vartabs.vim, src/testdir/test_vimscript.vim, + src/testdir/test_window_cmd.vim, src/testdir/test_xxd.vim + +Patch 8.1.0712 +Problem: MS-Windows build instructions are a bit outdated. +Solution: Update the instructions. (Ken Takata) +Files: src/INSTALLpc.txt + +Patch 8.1.0713 +Problem: Images for NSIS take up too much space. +Solution: Put the images in a zip file. +Files: nsis/icons.zip, nsis/icons/disabled.bmp, nsis/icons/enabled.bmp, + nsis/icons/header.bmp, nsis/icons/header.svg, + nsis/icons/un_header.bmp, nsis/icons/uninstall.bmp, + nsis/icons/vim_16c.ico, nsis/icons/vim_uninst_16c.ico, + nsis/icons/welcome.bmp, nsis/icons/welcome.svg, + nsis/README.txt, Filelist, Makefile + +Patch 8.1.0714 +Problem: Unessesary #if lines in GTK code. +Solution: Remove the #if. (Ken Takata, closes #3785) +Files: src/gui_beval.c, src/if_mzsch.c + +Patch 8.1.0715 +Problem: Superfluous call to redraw_win_later(). +Solution: Remove the call. +Files: src/move.c + +Patch 8.1.0716 +Problem: Get warning message when 'completefunc' returns nothing. +Solution: Allow for returning v:none to suppress the warning message. + (Yasuhiro Matsumoto, closes #3789) +Files: runtime/doc/insert.txt, src/edit.c, + src/testdir/test_ins_complete.vim + +Patch 8.1.0717 +Problem: There is no function for the ":sign jump" command. +Solution: Add the sign_jump() function. (Yegappan Lakshmanan, closes #3780) +Files: runtime/doc/eval.txt, runtime/doc/sign.txt, + runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/sign.pro, + src/sign.c, src/testdir/test_signs.vim + +Patch 8.1.0718 +Problem: A couple compiler warnings. +Solution: Rename shadowed variables. Add UNUSED. +Files: src/misc1.c + +Patch 8.1.0719 +Problem: Too many #ifdefs. +Solution: Always build with the +visualextra feature. +Files: src/evalfunc.c, src/version.c, src/normal.c, src/ops.c, + src/feature.h, runtime/doc/various.txt + +Patch 8.1.0720 +Problem: Cannot easily change the current quickfx list index. +Solution: Add the "idx" argument to setqflist(). (Yegappan Lakshmanan, + closes #3701) +Files: runtime/doc/eval.txt, runtime/doc/quickfix.txt, src/quickfix.c, + src/testdir/test_quickfix.vim + +Patch 8.1.0721 +Problem: Conceal mode is not sufficiently tested. +Solution: Add screendump tests. Check all 'concealcursor' values. +Files: src/testdir/test_conceal.vim, src/Make_all.mak, + src/testdir/Make_all.mak + src/testdir/dumps/Test_conceal_two_windows_01.dump, + src/testdir/dumps/Test_conceal_two_windows_02.dump, + src/testdir/dumps/Test_conceal_two_windows_03.dump, + src/testdir/dumps/Test_conceal_two_windows_04.dump, + src/testdir/dumps/Test_conceal_two_windows_05.dump, + src/testdir/dumps/Test_conceal_two_windows_06i.dump, + src/testdir/dumps/Test_conceal_two_windows_06v.dump, + src/testdir/dumps/Test_conceal_two_windows_06c.dump, + src/testdir/dumps/Test_conceal_two_windows_06n.dump, + src/testdir/dumps/Test_conceal_two_windows_07i.dump, + src/testdir/dumps/Test_conceal_two_windows_07v.dump, + src/testdir/dumps/Test_conceal_two_windows_07c.dump, + src/testdir/dumps/Test_conceal_two_windows_07n.dump, + src/testdir/dumps/Test_conceal_two_windows_08i.dump, + src/testdir/dumps/Test_conceal_two_windows_08v.dump, + src/testdir/dumps/Test_conceal_two_windows_08c.dump, + src/testdir/dumps/Test_conceal_two_windows_08n.dump, + src/testdir/dumps/Test_conceal_two_windows_09i.dump, + src/testdir/dumps/Test_conceal_two_windows_09v.dump, + src/testdir/dumps/Test_conceal_two_windows_09c.dump, + src/testdir/dumps/Test_conceal_two_windows_09n.dump + +Patch 8.1.0722 +Problem: Cannot build without the virtualedit feature. +Solution: Make getviscol2() always available. +Files: src/misc2.c, src/proto/misc2.pro, src/ops.c + +Patch 8.1.0723 +Problem: Cannot run specific test when in src/testdir the same was as in + the src directory. +Solution: Move build rule to src/testdir/Makefile. +Files: src/testdir/Make_all.mak, src/testdir/Make_amiga.mak, + src/testdir/Make_dos.mak, src/testdir/Make_ming.mak, + src/Makefile, src/Make_all.mak, src/testdir/Makefile, + src/testdir/README.txt, src/Make_mvc.mak + +Patch 8.1.0724 +Problem: Build for MinGW fails. +Solution: Avoid specifying dependencies in included makefile. +Files: src/testdir/Make_all.mak, src/testdir/Makefile, + src/testdir/Make_dos.mak, src/testdir/Make_ming.mak + +Patch 8.1.0725 +Problem: Conceal mode is not completely tested. +Solution: Add tests for moving the cursor in Insert mode. +Files: src/testdir/test_conceal.vim, + src/testdir/dumps/Test_conceal_two_windows_10.dump, + src/testdir/dumps/Test_conceal_two_windows_11.dump, + src/testdir/dumps/Test_conceal_two_windows_12.dump, + src/testdir/dumps/Test_conceal_two_windows_13.dump + +Patch 8.1.0726 +Problem: Redrawing specifically for conceal feature. +Solution: Use generic redrawing methods. +Files: src/edit.c, src/gui.c, src/main.c, src/normal.c, src/screen.c, + src/proto/screen.pro, src/window.c + +Patch 8.1.0727 +Problem: Compiler warning for sprintf() argument. +Solution: Add type cast. +Files: src/dosinst.c + +Patch 8.1.0728 +Problem: Cannot avoid breaking after a single space. +Solution: Add the 'p' flag to 'formatoptions'. (Tom Ryder) +Files: runtime/doc/change.txt, src/edit.c, src/option.h, + src/testdir/test_textformat.vim + +Patch 8.1.0729 +Problem: There is a SourcePre autocommand event but not a SourcePost. +Solution: Add the SourcePost autocommand event. (closes #3739) +Files: src/vim.h, src/fileio.c, src/ex_cmds2.c, runtime/doc/autocmd.txt, + src/testdir/test_source.vim, src/testdir/Make_all.mak + +Patch 8.1.0730 +Problem: Compiler warning for get_buf_arg() unused. +Solution: Add #ifdef. (John Marriott) +Files: src/evalfunc.c + +Patch 8.1.0731 +Problem: JS encoding does not handle negative infinity. +Solution: Add support for negative infinity for JS encoding. (Dominique + Pelle, closes #3792) +Files: runtime/doc/eval.txt, src/json.c, src/testdir/test_json.vim + +Patch 8.1.0732 +Problem: Cannot build without the eval feature. +Solution: Make a copy of the sourced file name. +Files: src/ex_cmds2.c + +Patch 8.1.0733 +Problem: Too many #ifdefs for the multi-byte feature. +Solution: Tentatively always enable the multi-byte feature. If you have a + problem with this, please discuss on the Vim maillist. +Files: src/configure.ac, src/auto/configure, src/feature.h, src/Makefile, + src/Make_bc5.mak, src/Make_cyg_ming.mak, src/Make_mvc.mak + +Patch 8.1.0734 +Problem: The hlsearch state is not stored in a session file. +Solution: Add "nohlsearch" if appropriate. (Jason Franklin) +Files: src/ex_docmd.c, src/testdir/test_mksession.vim + +Patch 8.1.0735 +Problem: Cannot handle binary data. +Solution: Add the Blob type. (Yasuhiro Matsumoto, closes #3638) +Files: runtime/doc/eval.txt, runtime/doc/if_perl.txt, + runtime/doc/if_ruby.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak, + src/Makefile, src/blob.c, src/channel.c, src/eval.c, + src/evalfunc.c, src/if_perl.xs, src/if_py_both.h, src/if_python.c, + src/if_python3.c, src/if_ruby.c, src/json.c, src/netbeans.c, + src/proto.h, src/proto/blob.pro, src/proto/channel.pro, + src/structs.h, src/testdir/Make_all.mak, src/vim.h, src/globals.h, + src/testdir/test_blob.vim, src/testdir/test_channel.vim + +Patch 8.1.0736 +Problem: Code for Blob not sufficiently tested. +Solution: Add more tests. Fix uncovered crash. Add test_null_blob(). +Files: src/testdir/test_blob.vim, src/testdir/test_assign.vim, src/eval.c, + src/testdir/test_eval_stuff.vim, src/testdir/test_lambda.vim, + runtime/doc/eval.txt, src/evalfunc.c, src/blob.c, + src/testdir/test49.vim + +Patch 8.1.0737 +Problem: Compiler warning for uninitialized variable. +Solution: Add initialization. (John Marriott) +Files: src/eval.c + +Patch 8.1.0738 +Problem: Using freed memory, for loop over blob leaks memory. +Solution: Clear pointer after freeing memory. Decrement reference count + after for loop over blob. +Files: src/eval.c + +Patch 8.1.0739 +Problem: Text objects in not sufficiently tested. +Solution: Add a few more test cases. (Dominique Pelle, closes #3795) +Files: src/testdir/test_visual.vim + +Patch 8.1.0740 +Problem: Tcl test fails. +Solution: When the argument is empty don't give an error, instead rely on + the error reporting higher up. +Files: src/eval.c + +Patch 8.1.0741 +Problem: Viminfo with Blob is not tested. +Solution: Extend the viminfo test. Fix reading a blob. Fixed storing a + special variable value. +Files: src/testdir/test_viminfo.vim, src/eval.c, src/blob.c, + src/proto/blob.pro + +Patch 8.1.0742 +Problem: Not all Blob operations are tested. +Solution: Add more testing for Blob. +Files: src/testdir/test_blob.vim, src/evalfunc.c, + src/testdir/test_eval_stuff.vim + +Patch 8.1.0743 +Problem: Giving error messages is not flexible. +Solution: Add semsg(). Change argument from "char_u *" to "char *", also + for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes + #3302) Also make emsg() accept a "char *" argument. Get rid of + an enormous number of type casts. +Files: src/blob.c, src/blowfish.c, src/buffer.c, src/channel.c, + src/crypt.c, src/dict.c, src/diff.c, src/digraph.c, src/edit.c, + src/eval.c, src/evalfunc.c, src/ex_cmds.c, src/ex_cmds.h, + src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, + src/farsi.h, src/fileio.c, src/fold.c, src/getchar.c, + src/globals.h, src/gui.c, src/gui_at_fs.c, src/gui_at_sb.c, + src/gui_beval.c, src/gui_gtk_x11.c, src/gui_mac.c, + src/gui_photon.c, src/gui_w32.c, src/gui_x11.c, src/hangulin.c, + src/hardcopy.c, src/hashtab.c, src/if_cscope.c, src/if_lua.c, + src/if_mzsch.c, src/if_perl.xs, src/if_py_both.h, src/if_python.c, + src/if_python3.c, src/if_ruby.c, src/if_tcl.c, src/if_xcmdsrv.c, + src/json.c, src/list.c, src/main.c, src/mark.c, src/mbyte.c, + src/memfile.c, src/memline.c, src/menu.c, src/message.c, + src/misc1.c, src/misc2.c, src/netbeans.c, src/normal.c, src/ops.c, + src/option.c, src/os_amiga.c, src/os_mswin.c, src/os_unix.c, + src/os_win32.c, src/popupmnu.c, src/proto.h, src/proto/buffer.pro, + src/proto/digraph.pro, src/proto/ex_docmd.pro, + src/proto/ex_eval.pro, src/proto/ex_getln.pro, + src/proto/hardcopy.pro, src/proto/mbyte.pro, + src/proto/message.pro, src/proto/misc2.pro, src/proto/option.pro, + src/proto/spell.pro, src/quickfix.c, src/regexp.c, + src/regexp_nfa.c, src/search.c, src/sign.c, src/spell.c, + src/spellfile.c, src/structs.h, src/syntax.c, src/tag.c, + src/term.c, src/terminal.c, src/textprop.c, src/ui.c, src/undo.c, + src/userfunc.c, src/version.c, src/vim.h, src/window.c, + +Patch 8.1.0744 (after 8.1.0743) +Problem: Compiler warnings for signed/unsigned strings. +Solution: A few more type cast fixes. +Files: src/option.c, src/if_perl.xs, src/if_py_both.h, src/integration.c + +Patch 8.1.0745 +Problem: Compiler warnings for signed/unsigned string. +Solution: Remove type casts. (John Marriott) +Files: src/ex_docmd.c, src/mbyte.c + +Patch 8.1.0746 +Problem: Highlighting not updated with conceal and 'cursorline'. (Jason + Franklin) +Solution: Do not use a zero line number. Check if 'conceallevel' is set for + the current window. +Files: src/main.c, src/testdir/test_conceal.vim, + src/testdir/dumps/Test_conceal_cul_01.dump, + src/testdir/dumps/Test_conceal_cul_02.dump, + src/testdir/dumps/Test_conceal_cul_03.dump + +Patch 8.1.0747 +Problem: map() with a bad expression doesn't give an error. (Ingo Karkat) +Solution: Check for giving an error message. (closes #3800) +Files: src/eval.c, src/testdir/test_filter_map.vim + +Patch 8.1.0748 +Problem: Using sprintf() instead of semsg(). +Solution: Use semsg(). Fix bug with E888. (Ozaki Kiichi, closes #3801) +Files: src/regexp.c + +Patch 8.1.0749 (after 8.1.0747) +Problem: Error message contains garbage. (Dominique Pelle) +Solution: Use correct pointer to failed expression. +Files: src/eval.c + +Patch 8.1.0750 +Problem: When the last sign is deleted the signcolumn may not be removed + even though 'signcolumn' is "auto". +Solution: When deleting the last sign redraw the buffer. (Dominique Pelle, + closes #3803, closes #3804) +Files: src/sign.c + +Patch 8.1.0751 +Problem: Some regexp errors are not tested. +Solution: Add a test function. +Files: src/testdir/test_regexp_latin.vim + +Patch 8.1.0752 +Problem: One more compiler warning for signed/unsigned string. (Tony + Mechelynck) +Solution: Remove type cast. +Files: src/ex_docmd.c + +Patch 8.1.0753 +Problem: printf format not checked for semsg(). +Solution: Add GNUC attribute and fix reported problems. (Dominique Pelle, + closes #3805) +Files: src/buffer.c, src/diff.c, src/eval.c, src/evalfunc.c, + src/ex_docmd.c, src/if_cscope.c, src/netbeans.c, src/proto.h, + src/proto/message.pro, src/quickfix.c, src/regexp_nfa.c, + src/sign.c, src/spellfile.c, src/window.c, src/gui_x11.c + +Patch 8.1.0754 +Problem: Preferred column is lost when setting 'cursorcolumn'. +Solution: Change option flag to P_RWINONLY. (Takayuki Kurosawa, + closes #3806) +Files: src/option.c, src/testdir/test_cursor_func.vim + +Patch 8.1.0755 +Problem: Error message for get() on a Blob with invalid index. +Solution: Return an empty Blob, like get() on a List does. +Files: src/evalfunc.c, src/testdir/test_blob.vim + +Patch 8.1.0756 +Problem: copy() does not make a copy of a Blob. +Solution: Make a copy. +Files: src/eval.c, src/testdir/test_blob.vim + +Patch 8.1.0757 +Problem: Not enough documentation for Blobs. +Solution: Add a section about Blobs. +Files: runtime/doc/eval.txt + +Patch 8.1.0758 +Problem: Font number is always one instead of the actual. +Solution: Use "%d" instead of "1". (Ken Takata) +Files: src/gui_x11.c + +Patch 8.1.0759 +Problem: Showing two characters for tab is limited. +Solution: Allow for a third character for "tab:" in 'listchars'. (Nathaniel + Braun, Ken Takata, closes #3810) +Files: runtime/doc/options.txt, src/globals.h, src/message.c, + src/option.c, src/screen.c, src/testdir/test_listchars.vim + +Patch 8.1.0760 +Problem: No proper test for using 'termencoding'. +Solution: Add a screendump test. Fix using double width characters in a + screendump. +Files: src/terminal.c, src/testdir/test_termencoding.vim, + src/testdir/Make_all.mak, + src/testdir/dumps/Test_tenc_euc_jp_01.dump + +Patch 8.1.0761 +Problem: Default value for brief_wait is wrong. +Solution: Make the default FALSE. (Ozaki Kiichi, closes #3812, closes #3799) +Files: src/ui.c + +Patch 8.1.0762 +Problem: Compiler warning. +Solution: Add type cast. (Mike Williams) +Files: src/channel.c + +Patch 8.1.0763 +Problem: Nobody is using the Sun Workshop support. +Solution: Remove the Workshop support. +Files: runtime/doc/workshop.txt, runtime/doc/help.txt, + runtime/doc/netbeans.txt, src/Makefile, src/auto/configure, + src/beval.c, src/buffer.c, src/config.h.in, src/config.mk.in, + src/configure.ac, src/evalfunc.c, src/ex_cmds.c, src/ex_cmds.h, + src/ex_docmd.c, src/feature.h, src/fileio.c, src/globals.h, + src/gui.c, src/gui_beval.c, src/gui_motif.c, src/gui_x11.c, + src/integration.c, src/integration.h, src/main.c, src/misc2.c, + src/nbdebug.c, src/netbeans.c, src/proto.h, + src/proto/workshop.pro, src/ui.c, src/version.c, src/vim.h, + src/workshop.c, src/workshop.h, src/wsdebug.c, src/wsdebug.h, + src/ex_cmdidxs.h + +Patch 8.1.0764 +Problem: List of distributed files is outdated. +Solution: Remove workshop files. Add blob files. +Files: Filelist + +Patch 8.1.0765 +Problem: String format of a Blob can't be parsed back. +Solution: Use 0z format. +Files: src/blob.c, src/eval.c, src/testdir/test_blob.vim + +Patch 8.1.0766 +Problem: Various problems when using Vim on VMS. +Solution: Various fixes. Define long_long_T. (Zoltan Arpadffy) +Files: src/eval.c, src/feature.h, src/fileio.c, src/gui_motif.c, + src/gui_x11.c, src/gui_xmebw.c, src/json.c, src/Make_vms.mms, + src/ops.c, src/os_vms_conf.h, src/vim.h, src/xdiff/xdiff.h, + src/xdiff/xinclude.h + +Patch 8.1.0767 +Problem: When deleting lines at the bottom signs are misplaced. +Solution: Properly update the line number of signs at the end of a buffer + after a delete/undo operation. (Yegappan Lakshmanan, closes #3798) +Files: src/sign.c, src/testdir/test_signs.vim + +Patch 8.1.0768 +Problem: Updating completions may cause the popup menu to flicker. +Solution: Avoid updating the text below the popup menu before drawing the + popup menu. +Files: src/popupmnu.c, src/proto/popupmnu.pro, src/edit.c, src/screen.c + +Patch 8.1.0769 +Problem: :stop is covered in two tests. +Solution: Remove Test_stop_in_terminal(). Make other test exit Vim cleanly. + (Ozaki Kiichi, closes #3814) +Files: src/testdir/test_terminal.vim, src/testdir/test_suspend.vim + +Patch 8.1.0770 +Problem: Inconsistent use of ELAPSED_FUNC. +Solution: Consistently use ELAPSED_FUNC. Also turn ELAPSED_TYPE into a + typedef. (Ozaki Kiichi, closes #3815) +Files: src/channel.c, src/gui.c, src/misc1.c, src/os_unix.c, src/vim.h + +Patch 8.1.0771 +Problem: Some shell filetype patterns end in a star. +Solution: Make sure that patterns not ending in a star are preferred. +Files: runtime/filetype.vim, runtime/autoload/dist/ft.vim + +Patch 8.1.0772 +Problem: The sign_define_by_name() function is too long. +Solution: Split it into smaller functions. (Yegappan Lakshmanan, + closes #3819) +Files: src/sign.c + +Patch 8.1.0773 +Problem: Not all crypt code is tested. +Solution: Disable unused crypt code. Add more test coverage. +Files: src/structs.h, src/crypt.c, src/testdir/test_crypt.vim, + src/proto/crypt.pro, src/fileio.c + +Patch 8.1.0774 +Problem: VMS build is missing the blob file. +Solution: Add the blob file to the build rules. (Zoltan Arpadffy) +Files: src/Make_vms.mms, runtime/doc/os_vms.txt + +Patch 8.1.0775 +Problem: Matching too many files as zsh. (Danek Duvall) +Solution: Be more specific with zsh filetype patterns. +Files: runtime/filetype.vim + +Patch 8.1.0776 +Problem: Travis does not build a version without GUI on Linux. +Solution: Add an environment for tiny features without GUI. +Files: .travis.yml + +Patch 8.1.0777 +Problem: Win32: using pipes for channel does not work well. +Solution: Use a larger buffer and handle overlaps. (Yasuhiro Matsumoto, + closes #3782) +Files: src/channel.c, src/os_win32.c + +Patch 8.1.0778 +Problem: Terminal test fails on MS-Windows. +Solution: Temporarily skip the test on MS-Windows. Do run it both in + terminal and GUI on other systems. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0779 +Problem: Argument for message functions is inconsistent. +Solution: Make first argument to msg() "char *". +Files: src/buffer.c, src/crypt.c, src/edit.c, src/ex_cmds.c, src/eval.c, + src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, src/farsi.c, + src/if_cscope.c, src/fileio.c, src/getchar.c, src/globals.h, + src/gui.c, src/if_perl.xs, src/netbeans.c, src/gui_w32.c, + src/hardcopy.c, src/if_mzsch.c, src/if_py_both.h, src/if_ruby.c, + src/if_tcl.c, src/mark.c, src/mbyte.c, src/menu.c, src/memline.c, + src/message.c, src/misc1.c, src/misc2.c, src/normal.c, src/ops.c, + src/option.c, src/os_amiga.c, src/os_unix.c, src/os_win32.c, + src/proto/message.pro, src/quickfix.c, src/sign.c, src/regexp.c, + src/ui.c, src/screen.c, src/search.c, src/spell.c, + src/spellfile.c, src/syntax.c, src/tag.c, src/term.c, src/undo.c, + src/userfunc.c, src/version.c, src/vim.h, src/window.c, + src/proto/eval.pro, src/evalfunc.c, src/ex_eval.c, src/farsi.h + +Patch 8.1.0780 +Problem: Terminal test fails on Mac. +Solution: Skip the test on Mac. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0781 +Problem: Build error when using if_xcmdsrv.c. +Solution: Add missing part of 8.1.0779. +Files: src/if_xcmdsrv.c + +Patch 8.1.0782 +Problem: Win32: cursor blinks when Vim is not active. +Solution: Remove call to setActiveWindow(). (Yasuhiro Matsumoto, + closes #3778) +Files: src/gui_w32.c, src/proto/gui_w32.pro, src/menu.c + +Patch 8.1.0783 +Problem: Compiler warning for signed/unsigned. +Solution: Add type cast. Change type of buffer. (Ozaki Kiichi, closes #3827) +Files: src/main.c, src/message.c + +Patch 8.1.0784 +Problem: Messy indent in if statement. +Solution: Improve structure of if statement. (Ozaki Kiichi, closes #3826) +Files: src/os_win32.c + +Patch 8.1.0785 +Problem: Depending on the configuration some functions are unused. +Solution: Add more #ifdefs, remove unused functions. (Dominique Pelle, + closes #3822) +Files: src/buffer.c, src/channel.c, src/ex_cmds2.c, src/ex_docmd.c, + src/fileio.c, src/getchar.c, src/gui_gtk_x11.c, src/hashtab.c, + src/json.c, src/mbyte.c, src/message.c, src/misc1.c, src/misc2.c, + src/ops.c, src/option.c, src/os_unix.c, src/proto/os_unix.pro, + src/proto/regexp.pro, src/proto/terminal.pro, src/regexp.c, + src/screen.c, src/search.c, src/syntax.c, src/term.c, + src/terminal.c, src/ui.c, src/userfunc.c + +Patch 8.1.0786 +Problem: ml_get error when updating the status line and a terminal had its + scrollback cleared. (Chris Patuzzo) +Solution: Check the cursor position when drawing the status line. + (closes #3830) +Files: src/buffer.c, src/testdir/test_terminal.vim + +Patch 8.1.0787 +Problem: Compiler warning for unused function. (Tony Mechelynck) +Solution: Tune #ifdef around setjmp functions. +Files: src/os_unix.c + +Patch 8.1.0788 +Problem: Cannot build with tiny features. +Solution: Adjust #ifdefs. +Files: src/os_unix.c + +Patch 8.1.0789 +Problem: Sourcing a session sets v:errmsg. +Solution: Use "%argdel" instead of "argdel *". (Jason Franklin) +Files: src/ex_docmd.c, src/testdir/test_mksession.vim + +Patch 8.1.0790 +Problem: Code for creating tabpages in session is too complex. +Solution: Simplify the code. (Jason Franklin) +Files: src/ex_docmd.c + +Patch 8.1.0791 +Problem: A few compiler warnings on VMS. +Solution: Remove type cast. Adjust #ifdef. (Zoltan Arpadffy) +Files: src/os_unix.c, src/proto.h + +Patch 8.1.0792 +Problem: Popup menu is displayed on top of the cmdline window if it is + opened from Insert completion. (Bjorn Linse) +Solution: Remove the popup menu. Restore the cursor position. + (closes #3838) +Files: src/edit.c, src/ex_getln.c + +Patch 8.1.0793 +Problem: Incorrect error messages for functions that now take a Blob + argument. +Solution: Adjust the error messages. (Dominique Pelle, closes #3846) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/globals.h, + src/testdir/test_blob.vim, src/testdir/test_listdict.vim + +Patch 8.1.0794 +Problem: White space before " -Ntabmove" causes problems. +Solution: Skip whitespace. (Ozaki Kiichi, closes #3841) +Files: src/ex_docmd.c, src/testdir/test_tabpage.vim + +Patch 8.1.0795 (after 8.1.0792) +Problem: Cannot build without popup menu. +Solution: Add #ifdef +Files: src/ex_getln.c + +Patch 8.1.0796 +Problem: MS-Windows 7: problem with named pipe on channel. +Solution: Put back the disconnect/connect calls. (Yasuhiro Matsumoto, + closes #3833) +Files: src/channel.c, src/testdir/test_terminal.vim + +Patch 8.1.0797 +Problem: Error E898 is used twice. +Solution: Rename the Blob error to E899. (closes #3853) +Files: src/evalfunc.c, runtime/doc/eval.txt, + src/testdir/test_listdict.vim + +Patch 8.1.0798 +Problem: Changing a blob while iterating over it works strangely. +Solution: Make a copy of the Blob before iterating. +Files: src/blob.c, src/proto/blob.pro, src/eval.c, + src/testdir/test_blob.vim + +Patch 8.1.0799 +Problem: Calling deleted function; test doesn't work on Mac. +Solution: Wait for the function to be called before deleting it. Use a job + to write to the pty, unless in the GUI. (Ozaki Kiichi, + closes #3854) +Files: src/testdir/test_channel.vim, src/testdir/test_terminal.vim + +Patch 8.1.0800 +Problem: May use a lot of memory when a function creates a cyclic + reference. +Solution: After saving a funccal many times, invoke the garbage collector. + (closes #3835) +Files: src/userfunc.c + +Patch 8.1.0801 +Problem: MinGW: no hint that tests fail because of small terminal. +Solution: Add a rule for test1 that checks for "wrongtermsize". + (msoyka-of-wharton) +Files: src/testdir/Make_ming.mak + +Patch 8.1.0802 +Problem: Negative index doesn't work for Blob. +Solution: Make it work, add a test. (closes #3856) +Files: src/blob.c, src/proto/blob.pro, src/eval.c, + src/testdir/test_blob.vim + +Patch 8.1.0803 +Problem: Session file has problem with single quote in file name. (Jon + Crowe) +Solution: Use a double quoted string. Add a test. +Files: src/ex_docmd.c, src/testdir/test_mksession.vim + +Patch 8.1.0804 +Problem: Crash when setting v:errmsg to empty list. (Jaon Franklin) +Solution: Separate getting value and assigning result. +Files: src/eval.c, src/testdir/test_eval_stuff.vim + +Patch 8.1.0805 +Problem: Too many #ifdefs. +Solution: Graduate FEAT_MBYTE, part 1. +Files: src/buffer.c, src/charset.c, src/diff.c, src/digraph.c, + src/edit.c, src/eval.c, src/evalfunc.c, src/ex_cmds.c, + src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, src/fileio.c, + src/fold.c, src/gui.c, src/gui_mac.c, src/gui_photon.c, + src/gui_w32.c + +Patch 8.1.0806 +Problem: Too many #ifdefs. +Solution: Graduate FEAT_MBYTE, part 2. +Files: src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, src/gui_w32.c, + src/gui_x11.c, src/hardcopy.c, src/if_xcmdsrv.c, src/json.c, + src/kword_test.c, src/main.c, src/mbyte.c, src/memline.c, + src/message.c, src/misc1.c, src/misc2.c, src/move.c, src/normal.c, + src/ops.c, src/option.c, src/charset.c + +Patch 8.1.0807 +Problem: Session test fails on MS-Windows. +Solution: Don't try creating file with illegal name. +Files: src/testdir/test_mksession.vim + +Patch 8.1.0808 +Problem: MS-Windows: build error with GUI. +Solution: Remove "static". +Files: src/gui_w32.c + +Patch 8.1.0809 +Problem: Too many #ifdefs. +Solution: Graduate FEAT_MBYTE, part 3. +Files: src/os_amiga.c, src/os_mswin.c, src/os_unix.c, src/os_w32exe.c, + src/os_win32.c, src/quickfix.c, src/regexp.c, src/regexp_nfa.c, + src/screen.c + +Patch 8.1.0810 +Problem: Too many #ifdefs. +Solution: Graduate FEAT_MBYTE, part 4. +Files: src/getchar.c, src/search.c, src/sign.c, src/spell.c, + src/spellfile.c, src/syntax.c, src/tag.c, src/term.c, src/ui.c, + src/version.c, src/winclip.c, src/window.c, src/glbl_ime.cpp, + src/ex_cmds.h, src/globals.h, src/gui.h, src/if_py_both.h, + src/macros.h, src/option.h, src/os_mac.h, src/os_win32.h, + src/proto.h, src/spell.h, src/structs.h, src/vim.h + +Patch 8.1.0811 +Problem: Too many #ifdefs. +Solution: Graduate FEAT_MBYTE, the final chapter. +Files: src/feature.h, src/vim.h, src/crypt_zip.c, src/fileio.c, + src/message.c, src/spell.h, src/structs.h, src/config.h.in, + src/configure.ac, src/auto/configure, src/testdir/runtest.vim, + src/testdir/test_alot_utf8.vim, src/testdir/test_arabic.vim, + src/testdir/test_charsearch_utf8.vim, + src/testdir/test_cmdline.vim, src/testdir/test_digraph.vim, + src/testdir/test_display.vim, src/testdir/test_edit.vim, + src/testdir/test_erasebackword.vim, + src/testdir/test_expr_utf8.vim, src/testdir/test_functions.vim, + src/testdir/test_ga.vim, src/testdir/test_iminsert.vim, + src/testdir/test_increment_dbcs.vim, src/testdir/test_json.vim, + src/testdir/test_makeencoding.vim, src/testdir/test_maparg.vim, + src/testdir/test_mapping.vim, src/testdir/test_marks.vim, + src/testdir/test_match.vim, + src/testdir/test_matchadd_conceal_utf8.vim, + src/testdir/test_mksession_utf8.vim, src/testdir/test_normal.vim, + src/testdir/test_plus_arg_edit.vim, src/testdir/test_profile.vim, + src/testdir/test_put.vim, src/testdir/test_regex_char_classes.vim, + src/testdir/test_regexp_utf8.vim, src/testdir/test_search.vim, + src/testdir/test_source_utf8.vim, src/testdir/test_spell.vim, + src/testdir/test_startup_utf8.vim, + src/testdir/test_termencoding.vim, src/testdir/test_terminal.vim, + src/testdir/test_utf8.vim, src/testdir/test_utf8_comparisons.vim, + src/testdir/test_viminfo.vim, src/testdir/test_virtualedit.vim, + src/testdir/test_visual.vim, src/testdir/test_wordcount.vim, + src/testdir/test_writefile.vim, src/appveyor.bat, src/os_macosx.m + +Patch 8.1.0812 +Problem: Unicode 16 feature is not useful and cannot be detected. +Solution: Remove UNICODE16. +Files: src/screen.c, src/vim.h, src/feature.h + +Patch 8.1.0813 +Problem: FileChangedShell not sufficiently tested. +Solution: Add a more comprehensive test case. +Files: src/testdir/test_autocmd.vim + +Patch 8.1.0814 +Problem: :mksession cannot handle a very long 'runtimepath'. (Timothy + Madden) +Solution: Expand each part separately, instead of the whole option at once. + (Christian Brabandt, closes #3466) +Files: src/option.c, src/testdir/test_mksession.vim + +Patch 8.1.0815 +Problem: Dialog for file changed outside of Vim not tested. +Solution: Add a test. Move FileChangedShell test. Add 'L' flag to + feedkeys(). +Files: src/testdir/test_autocmd.vim, src/testdir/test_filechanged.vim, + src/testdir/Make_all.mak, src/evalfunc.c, runtime/doc/eval.txt + +Patch 8.1.0816 +Problem: Test for 'runtimepath' in session fails on MS-Windows. +Solution: Skip the test for now. +Files: src/testdir/test_mksession.vim + +Patch 8.1.0817 +Problem: ":=" command is not tested. +Solution: Add a test. (Dominique Pelle, closes #3859) +Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_ex_equal.vim + +Patch 8.1.0818 +Problem: MS-Windows: cannot send large data with ch_sendraw(). +Solution: Split write into several WriteFile() calls. (Yasuhiro Matsumoto, + closes #3823) +Files: src/channel.c, src/os_win32.c, src/testdir/test_channel.vim, + src/testdir/test_channel_pipe.py, src/vim.h + +Patch 8.1.0819 +Problem: A failed assert with a long string is hard to read. +Solution: Shorten the assert message. +Files: src/eval.c, src/testdir/test_assert.vim + +Patch 8.1.0820 +Problem: Test for sending large data over channel sometimes fails. +Solution: Handle that the job may have finished early. Also fix that file + changed test doesn't work in the GUI and reduce flakyness. (Ozaki + Kiichi, closes #3861) +Files: src/testdir/test_channel.vim, src/testdir/test_filechanged.vim + +Patch 8.1.0821 +Problem: Xxd "usage" output and other arguments not tested. +Solution: Add a test to trigger the usage output in various ways. Fix + uncovered problem. +Files: src/testdir/test_xxd.vim, src/xxd/xxd.c + +Patch 8.1.0822 +Problem: Peeking and flushing output slows down execution. +Solution: Do not update the mode message when global_busy is set. Do not + flush when only peeking for a character. (Ken Takata) +Files: src/getchar.c, src/screen.c, src/proto/screen.pro, src/edit.c + +Patch 8.1.0823 +Problem: Not sufficient testing of xxd. +Solution: Add some more test coverage. +Files: src/testdir/test_xxd.vim + +Patch 8.1.0824 +Problem: SunOS/Solaris has a problem with ttys. +Solution: Add mch_isatty() with extra handling for SunOS. (Ozaki Kiichi, + closes #3865) +Files: src/auto/configure, src/channel.c, src/config.h.in, + src/configure.ac, src/os_unix.c, src/proto/pty.pro, src/pty.c, + src/terminal.c + +Patch 8.1.0825 +Problem: Code for autocommands is mixed with file I/O code. +Solution: Move autocommand code to a separate file. (Yegappan Lakshmanan, + closes #3863) +Files: Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/README.txt, src/autocmd.c, + src/fileio.c, src/globals.h, src/proto.h, src/proto/autocmd.pro, + src/proto/fileio.pro + +Patch 8.1.0826 +Problem: Too many #ifdefs. +Solution: Graduate FEAT_VIRTUALEDIT. Adds about 10Kbyte to the code. +Files: src/buffer.c, src/charset.c, src/edit.c, src/eval.c, + src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/feature.h, + src/globals.h, src/gui.c, src/if_py_both.h, src/macros.h, + src/mark.c, src/mbyte.c, src/memline.c, src/menu.c, src/misc1.c, + src/misc2.c, src/move.c, src/netbeans.c, src/normal.c, src/ops.c, + src/option.c, src/option.h, src/screen.c, src/search.c, + src/spell.c, src/structs.h, src/tag.c, src/ui.c, src/undo.c, + src/userfunc.c, src/version.c, src/vim.h, src/window.c + +Patch 8.1.0827 (after 8.1.0825) +Problem: Missing dependency in Makefile. +Solution: Add dependency from autocmd.o on auto/osdef.h +Files: src/Makefile + +Patch 8.1.0828 +Problem: Still using FEAT_VIRTUALEDIT. +Solution: Remove last use of FEAT_VIRTUALEDIT. +Files: src/quickfix.c + +Patch 8.1.0829 +Problem: When 'hidden' is set session creates extra buffers. +Solution: Move :badd commands to the end. (Jason Franklin) +Files: src/ex_docmd.c, src/testdir/test_mksession.vim + +Patch 8.1.0830 +Problem: Test leaves directory behind on MS-Windows. +Solution: Close buffer before deleting directory. +Files: src/testdir/test_swap.vim + +Patch 8.1.0831 +Problem: Xxd test fails if man page has dos fileformat. +Solution: Make a copy with unix fileformat. +Files: src/testdir/test_xxd.vim + +Patch 8.1.0832 +Problem: confirm() is not tested. +Solution: Add a test. (Dominique Pelle, closes #3868) +Files: src/testdir/test_functions.vim + +Patch 8.1.0833 +Problem: Memory leak when jumps output is filtered. +Solution: Free the filtered name. (Dominique Pelle, closes #3869) +Files: src/mark.c + +Patch 8.1.0834 +Problem: GUI may wait too long before dealing with messages. Returning + early may cause a mapping to time out. +Solution: Use the waiting loop from Unix also for the GUI. + (closes #3817, closes #3824) +Files: src/ui.c, src/proto/ui.pro, src/os_unix.c, src/gui.c, + src/testdir/screendump.vim + +Patch 8.1.0835 +Problem: GUI build fails on MS-Windows. +Solution: Adjust #ifdef. +Files: src/ui.c + +Patch 8.1.0836 +Problem: User completion test can fail on MS-Windows. +Solution: Allow for other names befor "Administrator". +Files: src/testdir/test_cmdline.vim + +Patch 8.1.0837 +Problem: Timer interrupting cursorhold and mapping not tested. +Solution: Add tests with timers. (Ozaki Kiichi, closes #3871) +Files: src/testdir/test_autocmd.vim, src/testdir/test_mapping.vim + +Patch 8.1.0838 +Problem: Compiler warning for type conversion. +Solution: Add a type cast. (Mike Williams) +Files: src/channel.c + +Patch 8.1.0839 +Problem: When using VTP wrong colors after a color scheme change. +Solution: When VTP is active always clear after a color scheme change. + (Nobuhiro Takasaki, closes #3872) +Files: src/ex_docmd.c + +Patch 8.1.0840 +Problem: getchar(0) never returns a character in the terminal. +Solution: Call wait_func() at least once. +Files: src/ui.c, src/testdir/test_timers.vim, src/gui_gtk_x11.c, + src/gui_w32.c, src/gui_photon.c, src/gui_x11.c + +Patch 8.1.0841 +Problem: Travis config to get Lua on MacOS is too complicated. +Solution: Use an addons entry. (Ozaki Kiichi, closes 3876) +Files: .travis.yml + +Patch 8.1.0842 +Problem: getchar_zero test fails on MS-Windows. +Solution: Disable the test for now. +Files: src/testdir/test_timers.vim + +Patch 8.1.0843 +Problem: Memory leak when running "make test_cd". +Solution: Free the stack element when failing. (Dominique Pelle, + closes #3877) +Files: src/misc2.c + +Patch 8.1.0844 +Problem: When timer fails test will hang forever. +Solution: Use reltime() to limit waiting time. (Ozaki Kiichi, closes #3878) +Files: src/testdir/test_timers.vim + +Patch 8.1.0845 +Problem: Having job_status() free the job causes problems. +Solution: Do not actually free the job or terminal yet, put it in a list and + free it a bit later. Do not use a terminal after checking the job + status. (closes #3873) +Files: src/channel.c, src/terminal.c, src/proto/terminal.pro, src/misc2.c + +Patch 8.1.0846 +Problem: Not easy to recognize the system Vim runs on. +Solution: Add more items to the features list. (Ozaki Kiichi, closes #3855) +Files: runtime/doc/eval.txt, src/evalfunc.c, + src/testdir/test_channel.vim, src/testdir/test_functions.vim, + src/testdir/test_terminal.vim, src/testdir/test_writefile.vim + +Patch 8.1.0847 +Problem: May use terminal after it was cleaned up. +Solution: Use the job pointer. +Files: src/terminal.c + +Patch 8.1.0848 +Problem: Cannot build with Ruby 1.8. (Tom G. Christensen) +Solution: Use rb-str_new2(). (Yasuhiro Matsumoto, closes #3883, + closes #3884) +Files: src/if_ruby.c + +Patch 8.1.0849 +Problem: Cursorline highlight is not always updated. +Solution: Set w_last_cursorline when redrawing. Fix resetting cursor flags + when using the popup menu. +Files: src/screen.c, src/popupmenu.c, src/testdir/test_highlight.vim, + src/testdir/dumps/Test_cursorline_yank_01.dump + +Patch 8.1.0850 +Problem: Test for 'backupskip' is not correct. +Solution: Split the option in parts and use expand(). (Michael Soyka) +Files: src/testdir/test_options.vim + +Patch 8.1.0851 +Problem: feedkeys() with "L" does not work properly. +Solution: Do not set typebuf_was_filled when using "L". (Ozaki Kiichi, + closes #3885) +Files: src/evalfunc.c, src/testdir/test_autocmd.vim, + src/testdir/test_mapping.vim, src/testdir/test_timers.vim + +Patch 8.1.0852 +Problem: findfile() and finddir() are not properly tested. +Solution: Extend the test and add more. (Dominique Pelle, closes #3880) +Files: src/testdir/test_findfile.vim + +Patch 8.1.0853 (after 8.1.0850) +Problem: Options test fails on Mac. +Solution: Remove a trailing slash from $TMPDIR. +Files: src/testdir/test_options.vim + +Patch 8.1.0854 +Problem: xxd does not work with more than 32 bit addresses. +Solution: Add support for 64 bit addresses. (Christer Jensen, closes #3791) +Files: src/xxd/xxd.c + +Patch 8.1.0855 +Problem: Cannot build xxd with MSVC 10. +Solution: Move declaration to start of block. +Files: src/xxd/xxd.c + +Patch 8.1.0856 +Problem: When scrolling a window other than the current one the cursorline + highlighting is not always updated. (Jason Franklin) +Solution: Call redraw_for_cursorline() after scrolling. Only set + w_last_cursorline when drawing the cursor line. Reset the lines + to be redrawn also when redrawing the whole window. +Files: src/move.c, src/proto/move.pro, src/normal.c + +Patch 8.1.0857 +Problem: Indent functionality is not separated. +Solution: Move indent functionality into a new file. (Yegappan Lakshmanan, + closes #3886) +Files: Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/edit.c, src/indent.c, + src/misc1.c, src/proto.h, src/proto/edit.pro, + src/proto/indent.pro, src/proto/misc1.pro + +Patch 8.1.0858 +Problem: 'indentkeys' and 'cinkeys' defaults are different. +Solution: Make them the same, update docs. (close #3882) +Files: src/option.c, runtime/doc/options.txt, runtime/doc/indent.txt + +Patch 8.1.0859 +Problem: "%v" in 'errorformat' does handle multi-byte characters. +Solution: Handle multi-byte characters. (Yegappan Lakshmanan, closes #3700) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0860 +Problem: Debug lines left in the code. +Solution: Delete the lines. +Files: src/edit.c + +Patch 8.1.0861 +Problem: Building with MinGW and static libc doesn't work. +Solution: Change the LIB argument. (Ken Takata) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0862 +Problem: No verbose version of character classes. +Solution: Add [:ident:], [:keyword:] and [:fname:]. (Ozaki Kiichi, + closes #1373) +Files: runtime/doc/pattern.txt, src/regexp.c, src/regexp_nfa.c, + src/testdir/test_regexp_utf8.vim + +Patch 8.1.0863 +Problem: Cannot see what signal caused a job to end. +Solution: Add "termsig" to job_info(). (Ozaki Kiichi, closes #3786) +Files: runtime/doc/eval.txt, src/channel.c, src/os_unix.c, src/structs.h, + src/testdir/test_channel.vim + +Patch 8.1.0864 +Problem: Cannot have a local value for 'scrolloff' and 'sidescrolloff'. + (Gary Holloway) +Solution: Make 'scrolloff' and 'sidescrolloff' global-local. (mostly by + Aron Widforss, closes #3539) +Files: runtime/doc/options.txt, src/edit.c, src/ex_cmds.c, + src/ex_docmd.c, src/gui.c, src/misc2.c, src/move.c, src/normal.c, + src/option.c, src/proto/option.pro, src/option.h, src/search.c, + src/structs.h, src/window.c, src/testdir/test_options.vim + +Patch 8.1.0865 +Problem: When 'listchars' only contains "nbsp:X" it does not work. +Solution: Set extra_check when lcs_nbsp is set. (Ralf Schandl, closes #3889) +Files: src/screen.c, src/testdir/test_listchars.vim + +Patch 8.1.0866 +Problem: Build file dependencies are outdated. (John Little) +Solution: Run "make proto" and "make depend". +Files: src/vim.h, src/Makefile, src/proto/sign.pro, src/proto/gui_w32.pro + +Patch 8.1.0867 +Problem: Cannot build Python interface with Python 2.4. (Tom G. Christensen) +Solution: Define PyBytes_FromStringAndSize. (Ken Takata, closes #3888) +Files: src/if_python.c + +Patch 8.1.0868 +Problem: Crash if triggering garbage collector after a function call. + (Michael Henry) +Solution: Don't call the garbage collector right away, do it later. + (closes #3894) +Files: src/userfunc.c + +Patch 8.1.0869 +Problem: Travis CI script is too complicated. +Solution: Add names to environments. Move appveyor script outside of src + directory. (Ozaki Kiichi, closes #3890) +Files: .travis.yml, appveyor.yml, ci/appveyor.bat, src/appveyor.bat, + Filelist + +Patch 8.1.0870 +Problem: Vim doesn't use the new ConPTY support in Windows 10. +Solution: Use ConPTY support, if available. (Nobuhiro Takasaki, closes #3794) +Files: runtime/doc/eval.txt, runtime/doc/options.txt, + runtime/doc/terminal.txt, src/channel.c, src/evalfunc.c, + src/globals.h, src/option.c, src/option.h, src/os_win32.c, + src/proto/terminal.pro, src/structs.h, src/terminal.c, + src/testdir/gen_opt_test.vim, src/testdir/test_autocmd.vim, + src/testdir/test_mksession.vim, src/testdir/test_terminal.vim + +Patch 8.1.0871 +Problem: Build error when building with Ruby 2.6.0. +Solution: Change argument of rb_int2big_stub(). (Android Baumann, + closes #3899) +Files: src/if_ruby.c + +Patch 8.1.0872 +Problem: Confusing condition. +Solution: Use "==" instead of "<=". +Files: src/gui_gtk_x11.c + +Patch 8.1.0873 +Problem: List if distributed files does not include the matchit autoload + directory. +Solution: Add the directory. +Files: src/Filelist + +Patch 8.1.0874 +Problem: Using old style comments in new file. +Solution: Convert to // comments in new file. (Yegappan Lakshmanan) +Files: src/indent.c + +Patch 8.1.0875 +Problem: Not all errors of marks and findfile()/finddir() are tested. +Solution: Add more test coverage. (Dominique Pelle) +Files: src/testdir/test_findfile.vim, src/testdir/test_marks.vim + +Patch 8.1.0876 +Problem: Completion match not displayed when popup menu is not shown. +Solution: Call update_screen() when not displaying the popup menu to show + the inserted match. (Ken Takata, Hirohito Higashi) +Files: src/edit.c + +Patch 8.1.0877 +Problem: New buffer used every time the quickfix window is opened. +Solution: Reuse the buffer. (Yegappan Lakshmanan, closes #3902) +Files: src/buffer.c, src/proto/quickfix.pro, src/quickfix.c, + src/testdir/test_quickfix.vim + +Patch 8.1.0878 +Problem: Test for has('bsd') fails on some BSD systems. +Solution: Adjust the uname match. (James McCoy, closes #3909) +Files: src/testdir/test_functions.vim + +Patch 8.1.0879 +Problem: MS-Windows: temp name encoding can be wrong. +Solution: Convert from active code page to 'encoding'. (Ken Takata, + closes #3520, closes #1698) +Files: src/fileio.c + +Patch 8.1.0880 +Problem: MS-Windows: inconsistent selection of winpty/conpty. +Solution: Name option 'termwintype', use ++type argument and "term_pty" for + term_start(). (Hirohito Higashi, closes #3915) +Files: runtime/doc/eval.txt, runtime/doc/options.txt, + runtime/doc/terminal.txt, src/channel.c, src/option.c, + src/option.h, src/structs.h, src/terminal.c, + src/testdir/gen_opt_test.vim, runtime/optwin.vim, + runtime/doc/quickref.txt + +Patch 8.1.0881 +Problem: Can execute shell commands in rvim through interfaces. +Solution: Disable using interfaces in restricted mode. Allow for writing + file with writefile(), histadd() and a few others. +Files: runtime/doc/starting.txt, src/if_perl.xs, src/if_cmds.h, + src/ex_cmds.c, src/ex_docmd.c, src/evalfunc.c, + src/testdir/test_restricted.vim, src/testdir/Make_all.mak + +Patch 8.1.0882 (after 8.1.0879) +Problem: Checking for FEAT_MBYTE which doesn't exist anymore. (Christ van + Willegen) +Solution: Remove it. +Files: src/fileio.c + +Patch 8.1.0883 +Problem: Missing some changes for Ex commands. +Solution: Add mising changes in header file. +Files: src/ex_cmds.h + +Patch 8.1.0884 +Problem: Double check for bsd systems. +Solution: Delete the old line. +Files: src/testdir/test_functions.vim + +Patch 8.1.0885 +Problem: Test for restricted hangs on MS-Windows GUI. +Solution: Skip the test. +Files: src/testdir/test_restricted.vim + +Patch 8.1.0886 +Problem: Compiler warning for adding to NULL pointer and a condition that + is always true. +Solution: Check for NULL pointer before adding. Remove useless "if". + (Friedirch, closes #3913) +Files: src/dosinst.c, src/search.c + +Patch 8.1.0887 +Problem: The 'l' flag in :subsitute is sticky. +Solution: Reset the flag. (Dominique Pelle, closes #3925) +Files: src/ex_cmds.c, src/testdir/test_substitute.vim + +Patch 8.1.0888 +Problem: The a: dict is not immutable as documented. +Solution: Make the a:dict immutable, add a test. (Ozaki Kiichi, Yasuhiro + Matsumoto, closes #3929) +Files: src/eval.c, src/userfunc.c, src/testdir/test_let.vim, + src/testdir/test_listdict.vim + +Patch 8.1.0889 +Problem: MS-Windows: a channel write may hang. +Solution: Check for WriteFile() not writing anything. (Yasuhiro Matsumoto, + closes #3920) +Files: src/channel.c, src/testdir/test_channel.vim, + src/testdir/test_channel_pipe.py + +Patch 8.1.0890 +Problem: Pty allocation wrong if using file for out channel and using null + for in channel and null for error channel. +Solution: Correct using use_file_for_out in condition. (Ozaki Kiichi, closes + #3917) +Files: src/os_unix.c, src/testdir/test_channel.vim + +Patch 8.1.0891 +Problem: Substitute command inssuficiently tested. +Solution: Add more test coverage. (Dominique Pelle) +Files: src/testdir/test_substitute.vim + +Patch 8.1.0892 +Problem: Failure when closing a window when location list is in use. +Solution: Handle the situation gracefully. Make sure memory for 'switchbuf' + is not freed at the wrong time. (Yegappan Lakshmanan, + closes #3928) +Files: src/eval.c, src/evalfunc.c, src/proto/window.pro, src/quickfix.c, + src/testdir/test_quickfix.vim, src/window.c + +Patch 8.1.0893 +Problem: Terminal test is a bit flaky. +Solution: Add test_terminal_no_cmd() to list of flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0894 +Problem: MS-Windows: resolve() does not return a reparse point. +Solution: Improve resolve(). (Yasuhiro Matsumoto, closes #3896) +Files: runtime/doc/eval.txt, src/buffer.c, src/evalfunc.c, + src/os_mswin.c, src/proto/os_mswin.pro, + src/testdir/test_functions.vim + +Patch 8.1.0895 (after 8.1.0879) +Problem: MS-Windows: dealing with temp name encoding not quite right. +Solution: Use more wide functions. (Ken Takata, closes #3921) +Files: src/fileio.c + +Patch 8.1.0896 +Problem: Tests for restricted mode not run for MS-Windows GUI. +Solution: Make tests also work in MS-Windows GUI. +Files: src/testdir/test_restricted.vim + +Patch 8.1.0897 +Problem: Can modify a:000 when using a reference. +Solution: Make check for locked variable stricter. (Ozaki Kiichi, + closes #3930) +Files: src/dict.c, src/eval.c, src/evalfunc.c, src/proto/eval.pro, + src/testdir/test_channel.vim, src/testdir/test_let.vim, + src/userfunc.c + +Patch 8.1.0898 +Problem: A messed up rgb.txt can crash Vim. (Pavel Cheremushkin) +Solution: Limit to 10000 entries. Also don't retry many times when the file + cannot be read. +Files: src/term.c + +Patch 8.1.0899 +Problem: No need to check restricted mode for setwinvar(). +Solution: Remove check_restricted(). +Files: src/eval.c + +Patch 8.1.0900 +Problem: ConPTY many crash with 32-bit build. +Solution: Fix function declarations. (Ken Takata, closes #3943) +Files: src/terminal.c + +Patch 8.1.0901 +Problem: Index in getjumplist() may be wrong. (Epheien) +Solution: Call cleanup_jumplist() earlier. (Yegappan Lakshmanan, + closes #3942) +Files: src/evalfunc.c, src/testdir/test_jumplist.vim + +Patch 8.1.0902 +Problem: Incomplete set of assignment operators. +Solution: Add /=, *= and %=. (Ozaki Kiichi, closes #3931) +Files: runtime/doc/eval.txt src/eval.c src/testdir/test_vimscript.vim + +Patch 8.1.0903 +Problem: Struct uses more bytes than needed. +Solution: Reorder members of regitem_S. (Dominique Pelle, closes #3936) +Files: src/regexp.c + +Patch 8.1.0904 +Problem: USE_LONG_FNAME never defined. +Solution: Remove using USE_LONG_FNAME. (Ken Takata, closes #3938) +Files: src/buffer.c, src/ex_cmds.c, src/fileio.c + +Patch 8.1.0905 +Problem: Complicated regexp causes a crash. (Kuang-che Wu) +Solution: Limit the recursiveness of addstate(). (closes #3941) +Files: src/regexp_nfa.c, src/testdir/test_regexp_latin.vim + +Patch 8.1.0906 +Problem: Using clumsy way to get console window handle. +Solution: Use GetConsoleWindow(). (Ken Takata, closes #3940) +Files: src/os_mswin.c + +Patch 8.1.0907 +Problem: CI tests on AppVeyor are failing. +Solution: Reduce the recursiveness limit for regexp. +Files: src/regexp_nfa.c + +Patch 8.1.0908 +Problem: Can't handle large value for %{nr}v in regexp. (Kuang-che Wu) +Solution: Give an error if the value is too large. (closes #3948) +Files: src/regexp_nfa.c + +Patch 8.1.0909 +Problem: MS-Windows: using ConPTY even though it is not stable. +Solution: When ConPTY version is unstable, prefer using winpty. (Ken Takata, + closes #3949) +Files: runtime/doc/options.txt, src/os_win32.c, src/proto/os_win32.pro, + src/terminal.c + +Patch 8.1.0910 +Problem: Crash with tricky search pattern. (Kuang-che Wu) +Solution: Check for runnning out of memory. (closes #3950) +Files: src/regexp_nfa.c, src/testdir/test_regexp_latin.vim + +Patch 8.1.0911 +Problem: Tag line with Ex command cannot have extra fields. +Solution: Recognize |;" as the end of the command. (closes #2402) +Files: runtime/doc/tagsrch.txt, src/tag.c, src/testdir/test_taglist.vim + +Patch 8.1.0912 +Problem: MS-Windows: warning for signed/unsigned. +Solution: Add type cast. (Nobuhiro Takasaki, closes #3945) +Files: src/terminal.c + +Patch 8.1.0913 +Problem: CI crashes when running out of memory. +Solution: Apply 'maxmempattern' also to new regexp engine. +Files: src/regexp_nfa.c + +Patch 8.1.0914 +Problem: Code related to findfile() is spread out. +Solution: Put findfile() related code into a new source file. (Yegappan + Lakshmanan, closes #3934) +Files: Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/README.txt, src/findfile.c, + src/misc1.c, src/misc2.c, src/proto.h, src/proto/findfile.pro, + src/proto/misc1.pro, src/proto/misc2.pro, src/proto/window.pro, + src/window.c + +Patch 8.1.0915 +Problem: fsync() may not work properly on Mac. +Solution: Use fcntl() with F_FULLFSYNC. (suggested by Justin M. Keyes) +Files: src/fileio.c, src/proto/fileio.pro, src/evalfunc.c, src/memfile.c + +Patch 8.1.0916 +Problem: With Python 3.7 "find_module" is not made available. +Solution: Also add "find_module" with Python 3.7. (Joel Frederico, + closes #3954) +Files: src/if_py_both.h + +Patch 8.1.0917 +Problem: Double free when running out of memory. +Solution: Remove one free. (Ken Takata, closes #3955) +Files: src/userfunc.c + +Patch 8.1.0918 +Problem: MS-Windows: startup messages are not converted. +Solution: Convert messages when the current codepage differs from + 'encoding'. (Yasuhiro Matsumoto, closes #3914) +Files: src/message.c, src/os_mswin.c, src/vim.h + +Patch 8.1.0919 +Problem: Compiler warnings. +Solution: Add type casts. (Mike Williams) +Files: src/message.c, src/regexp_nfa.c + +Patch 8.1.0920 +Problem: In Terminal-Normal mode job output messes up the window. +Solution: Postpone scrolling and updating the buffer when in Terminal-Normal + mode. +Files: src/terminal.c, src/testdir/test_terminal.vim, + src/testdir/dumps/Test_terminal_01.dump, + src/testdir/dumps/Test_terminal_02.dump, + src/testdir/dumps/Test_terminal_03.dump + +Patch 8.1.0921 +Problem: Terminal test sometimes fails; using memory after free. +Solution: Fee memory a bit later. Add test to cover this. Disable flaky + screenshot test. (closes #3956) +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0922 +Problem: Terminal scrollback test is flaky. +Solution: Wait a bit before running the tail command. +Files: src/testdir/test_terminal.vim, + src/testdir/dumps/Test_terminal_01.dump, + src/testdir/dumps/Test_terminal_02.dump, + src/testdir/dumps/Test_terminal_03.dump + +Patch 8.1.0923 +Problem: Terminal dump diff swap does not update file names. +Solution: Also swap the file name. Add a test. +Files: src/terminal.c, src/testdir/test_terminal.vim + +Patch 8.1.0924 +Problem: Terminal scrollback test still flaky. +Solution: Wait a bit longer before running the tail command. +Files: src/testdir/test_terminal.vim + +Patch 8.1.0925 +Problem: Terminal scrollback test still still flaky. +Solution: Explicitly set the shell. Disable ruler. (Ozaki Kiichi, + closes #3966) +Files: src/testdir/test_terminal.vim, + src/testdir/dumps/Test_terminal_01.dump, + src/testdir/dumps/Test_terminal_02.dump, + src/testdir/dumps/Test_terminal_03.dump + +Patch 8.1.0926 +Problem: No test for :wnext, :wNext and :wprevious. +Solution: Add a test. (Dominique Pelle, closes #3963) +Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_wnext.vim + +Patch 8.1.0927 +Problem: USE_CR is never defined. +Solution: Remove usage of USE_CR. (Ken Takata, closes #3958) +Files: runtime/doc/options.txt, src/diff.c, src/evalfunc.c, + src/ex_cmds2.c, src/fileio.c, src/message.c, src/ops.c, + src/option.h, src/proto/ex_cmds2.pro, src/proto/fileio.pro, + src/tag.c + +Patch 8.1.0928 (after 8.1.0927) +Problem: Stray log function call. +Solution: Remove the log function call. +Files: src/ex_cmds2.c + +Patch 8.1.0929 +Problem: No error when requesting ConPTY but it's not available. +Solution: Add an error message. (Hirohito Higashi, closes #3967) +Files: runtime/doc/terminal.txt, src/terminal.c + +Patch 8.1.0930 +Problem: Typo in Makefile. +Solution: Change ABORT_CLFAGS to ABORT_CFLAGS. (Kuang-che Wu, closes #3977) +Files: src/Makefile + +Patch 8.1.0931 +Problem: vtp_working included in GUI build but unused. +Solution: Adjust #ifdefs. (Ken Takata, closes #3971) +Files: src/os_win32.c + +Patch 8.1.0932 +Problem: Farsi support is outdated and unused. +Solution: Delete the Farsi support. +Files: Filelist, src/farsi.c, src/proto/farsi.pro, src/farsi.h, src/edit.c, + src/main.c, src/normal.c, src/option.c, src/getchar.c, + src/ex_cmds.c, src/search.c, src/ex_getln.c, src/charset.c, + src/evalfunc.c, src/screen.c, src/window.c, src/globals.h, + src/proto.h, farsi/README.txt, src/structs.h, + farsi/fonts/DOS/far-a01.com, farsi/fonts/SunOs/far-a01.fb, + farsi/fonts/UNIXs/far-a01.f16, farsi/fonts/UNIXs/far-a01.pcf.gz, + farsi/fonts/UNIXs/far-a01.pcf.Z, farsi/fonts/WINDOWS/far-a01.fon, + src/Makefile, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/configure.ac, src/auto/configure, + src/config.h.in, src/testdir/test_farsi.vim, src/version.c, + src/testdir/Make_all.mak, runtime/doc/options.txt, + runtime/doc/starting.txt, runtime/doc/quickref.txt, + runtime/doc/farsi.txt + +Patch 8.1.0933 +Problem: When using VTP scroll region isn't used properly. +Solution: Make better use of the scroll region. (Nobuhiro Takasaki, + closes #3974) +Files: src/os_win32.c, src/term.c + +Patch 8.1.0934 +Problem: Invalid memory access in search pattern. (Kuang-che Wu) +Solution: Check for incomplete equivalence class. (closes #3970) +Files: src/regexp.c, src/testdir/test_regexp_latin.vim + +Patch 8.1.0935 +Problem: Old regexp engine may use invalid buffer for 'iskeyword' or + uninitialized buffer pointer. (Kuang-che Wu) +Solution: Set rex.reg_buf when compiling the pattern. (closes #3972) +Files: src/regexp.c, src/testdir/test_regexp_latin.vim + +Patch 8.1.0936 +Problem: May leak memory when using 'vartabstop'. (Kuang-che Wu) +Solution: Fix handling allocated memory for 'vartabstop'. (closes #3976) +Files: src/option.c, src/buffer.c + +Patch 8.1.0937 +Problem: Invalid memory access in search pattern. (Kuang-che Wu) +Solution: Check for incomplete collation element. (Dominique Pelle, + closes #3985) +Files: src/regexp.c, src/testdir/test_regexp_latin.vim + +Patch 8.1.0938 +Problem: Background color is wrong in MS-Windows console when not using VTP. +Solution: Use g_attrCurrent. (Nobuhiro Takasaki, closes #3987) +Files: src/os_win32.c + +Patch 8.1.0939 +Problem: No completion for sign group names. +Solution: Add completion for sign group names and buffer names. (Yegappan + Lakshmanan, closes #3980) +Files: src/sign.c, src/testdir/test_signs.vim + +Patch 8.1.0940 +Problem: MS-Windows console resizing not handled properly. +Solution: Handle resizing the console better. (Nobuhiro Takasaki, Ken + Takata, closes #3968, closes #3611) +Files: src/ex_docmd.c, src/normal.c, src/os_win32.c, + src/proto/os_win32.pro + +Patch 8.1.0941 +Problem: Macros for MS-Windows are inconsistent, using "32", "3264 and + others. +Solution: Use MSWIN for all MS-Windows builds. Use FEAT_GUI_MSWIN for the + GUI build. (Hirohito Higashi, closes #3932) +Files: src/GvimExt/gvimext.h, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_ivc.mak, src/Make_mvc.mak, src/beval.h, src/blowfish.c, + src/channel.c, src/edit.c, src/eval.c, src/evalfunc.c, + src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, + src/feature.h, src/fileio.c, src/getchar.c, src/glbl_ime.cpp, + src/globals.h, src/gui.c, src/gui.h, src/gui_beval.c, + src/gui_gtk.c, src/gui_gtk_f.c, src/gui_gtk_x11.c, + src/if_cscope.c, src/if_cscope.h, src/if_lua.c, src/if_mzsch.c, + src/if_ole.cpp, src/if_perl.xs, src/if_python.c, src/if_python3.c, + src/if_ruby.c, src/if_tcl.c, src/macros.h, src/main.c, + src/mbyte.c, src/memfile.c, src/memline.c, src/menu.c, + src/message.c, src/misc1.c, src/misc2.c, src/nbdebug.c, + src/netbeans.c, src/normal.c, src/option.c, src/option.h, + src/os_mswin.c, src/os_unix.c, src/os_w32exe.c, src/os_win32.c, + src/os_win32.h, src/proto.h, src/screen.c, src/search.c, + src/structs.h, src/syntax.c, src/term.c, src/terminal.c, src/ui.c, + src/undo.c, src/version.c, src/vim.h, src/vim.rc, src/winclip.c + +Patch 8.1.0942 +Problem: Options window still checks for the multi_byte feature. +Solution: Remove the unnecessary check. (Dominique Pelle, closes #3990) +Files: runtime/optwin.vim + +Patch 8.1.0943 +Problem: Still a trace of Farsi support. +Solution: Remove defining macros. +Files: src/feature.h + +Patch 8.1.0944 +Problem: Format of nbdbg() arguments is not checked. +Solution: Add format attribute. Fix reported problems. (Dominique Pelle, + closes #3992) +Files: src/nbdebug.h, src/netbeans.c + +Patch 8.1.0945 +Problem: Internal error when using pattern with NL in the range. +Solution: Use an actual newline for the range. (closes #3989) Also fix + error message. (Dominique Pelle) +Files: src/regexp_nfa.c, src/testdir/test_regexp_latin.vim + +Patch 8.1.0946 +Problem: Coveralls is not very useful. +Solution: Remove Coveralls badge, add badge for packages. +Files: README.md + +Patch 8.1.0947 +Problem: Using MSWIN before it is defined. (Cesar Romani) +Solution: Move the block that uses MSWIN to below including vim.h. (Ken + Takata) +Files: src/if_ruby.c + +Patch 8.1.0948 +Problem: When built without +eval "Vim --clean" produces errors. (James + McCoy) +Solution: Do not enable filetype detection. +Files: runtime/defaults.vim + +Patch 8.1.0949 +Problem: MS-windows defines GUI macros different than other systems. +Solution: Swap FEAT_GUI and FEAT_GUI_MSWIN. (Hirohito Higashi, closes #3996) +Files: src/Make_bc5.mak, src/Make_cyg_ming.mak, src/Make_ivc.mak, + src/Make_mvc.mak, src/if_ole.cpp, src/vim.h, src/vim.rc + +Patch 8.1.0950 +Problem: Using :python sets 'pyxversion' even when not executed. +Solution: Check the "skip" flag. (Shane Harper, closes #3995) +Files: src/if_python.c, src/if_python3.c, src/testdir/test_python2.vim, + src/testdir/test_python3.vim + +Patch 8.1.0951 +Problem: Using WIN64 even though it is never defined. +Solution: Only use _WIN64. (Ken Takata, closes #3997) +Files: src/evalfunc.c + +Patch 8.1.0952 +Problem: Compilation warnings when building the MS-Windows installer. +Solution: Fix buffer sizes. (Yasuhiro Matsumoto, closes #3999) +Files: src/dosinst.c, src/dosinst.h, src/uninstal.c + +Patch 8.1.0953 +Problem: A very long file is truncated at 2^31 lines. +Solution: Use LONG_MAX for MAXLNUM. (Dominique Pelle, closes #4011) +Files: src/vim.h + +Patch 8.1.0954 +Problem: Arguments of semsg() and siemsg() are not checked. +Solution: Add function prototype with __attribute__. +Files: src/message.c, src/proto/message.pro, src/proto.h + +Patch 8.1.0955 +Problem: Matchit autoload directory not in installer. (Chris Morgan) +Solution: Adjust the NSIS script. (Christian Brabandt, closes #4006) +Files: nsis/gvim.nsi + +Patch 8.1.0956 +Problem: Using context:0 in 'diffopt' does not work well. +Solution: Make zero context do the same as one line context. (closes #4005) +Files: src/diff.c, src/testdir/test_diffmode.vim, + src/testdir/dumps/Test_diff_06.0.dump, + src/testdir/dumps/Test_diff_06.1.dump, + src/testdir/dumps/Test_diff_06.2.dump + +Patch 8.1.0957 (after 8.1.0915) +Problem: Mac: fsync fails on network share. +Solution: Check for ENOTSUP. (Yee Cheng Chin, closes #4016) +Files: src/fileio.c + +Patch 8.1.0958 +Problem: Compiling weird regexp pattern is very slow. +Solution: When reallocating post list increase size by 50%. (Kuang-che Wu, + closes #4012) Make assert_inrange() accept float values. +Files: src/regexp_nfa.c, src/eval.c, src/testdir/test_regexp_latin.vim, + src/testdir/test_assert.vim + +Patch 8.1.0959 +Problem: Sorting large numbers is not tested and does not work properly. +Solution: Add test. Fix comparing lines with and without a number. + (Dominique Pelle, closes #4017) +Files: src/ex_cmds.c, src/testdir/test_sort.vim + +Patch 8.1.0960 +Problem: When using ConPTY garbage collection has undefined behavior. +Solution: Free the channel in a better way. (Nobuhiro Takasaki, closes #4020) +Files: src/channel.c + +Patch 8.1.0961 (after 8.1.0957) +Problem: Mac: fsync may fail sometimes. +Solution: Do not check errno. (Yee Cheng Chin, closes #4025) +Files: src/fileio.c + +Patch 8.1.0962 +Problem: Building with MinGW and static libs doesn't work. (Salman Halim) +Solution: Add -lgcc. (Ken Takata) +Files: src/Make_cyg_ming.mak + +Patch 8.1.0963 +Problem: Illegal memory access when using 'incsearch'. +Solution: Reset highlight_match when changing text. (closes #4022) +Files: src/testdir/test_search.vim, src/misc1.c, + src/testdir/dumps/Test_incsearch_change_01.dump + +Patch 8.1.0964 +Problem: Cannot see in CI why a screenshot test failed. +Solution: Add info about the failure. +Files: src/testdir/screendump.vim + +Patch 8.1.0965 +Problem: Search test fails. +Solution: Wait a bit longer for the 'ambiwidth' redraw. +Files: src/testdir/test_search.vim, + src/testdir/dumps/Test_incsearch_change_01.dump + +Patch 8.1.0966 +Problem: One terminal test is flaky. +Solution: Add to list of flaky tests. +Files: src/testdir/runtest.vim + +Patch 8.1.0967 +Problem: Stray dependency in test Makefile. +Solution: Remove it. (Masato Nishihata, closes #4018) +Files: src/testdir/Makefile + +Patch 8.1.0968 +Problem: Crash when using search pattern \%Ufffffc23. +Solution: Limit character to INT_MAX. (closes #4009) +Files: src/regexp_nfa.c, src/testdir/test_search.vim + +Patch 8.1.0969 +Problem: Message written during startup is truncated. +Solution: Restore message after truncating. (closes 3969) +Files: src/message.c, src/testdir/test_startup.vim + +Patch 8.1.0970 +Problem: Text properties test fails when 'encoding' is not utf-8. +Solution: Compare with original value of 'encoding'. (Christian Brabandt, + closes #3986) +Files: src/testdir/runtest.vim, src/testdir/test_textprop.vim + +Patch 8.1.0971 +Problem: Failure for selecting quoted text object moves cursor. +Solution: Restore the Visual selection on failure. (Christian Brabandt, + closes #4024) +Files: src/search.c, src/testdir/test_textobjects.vim + +Patch 8.1.0972 +Problem: Cannot switch from terminal window to next tabpage. +Solution: Make CTRL-W gt move to next tabpage. +Files: src/window.c, src/testdir/test_terminal.vim, + runtime/doc/terminal.txt + +Patch 8.1.0973 +Problem: Pattern with syntax error gives threee error messages. (Kuang-che + Wu) +Solution: Remove outdated internal error. Don't fall back to other engine + after an error.(closes #4035) +Files: src/regexp_nfa.c, src/testdir/test_search.vim, src/regexp.c + +Patch 8.1.0974 +Problem: Cannot switch from terminal window to previous tabpage. +Solution: Make CTRL-W gT move to previous tabpage. +Files: src/window.c, src/testdir/test_terminal.vim, + runtime/doc/terminal.txt + +Patch 8.1.0975 +Problem: Using STRNCPY() wrongly. Warning for uninitialized variable. +Solution: Use mch_memmove(). Initialize variable. (Yasuhiro Matsumoto, + closes #3979) +Files: src/screen.c, src/textprop.c + +Patch 8.1.0976 +Problem: Dosinstall still has buffer overflow problems. +Solution: Adjust buffer sizes. (Yasuhiro Matsumoto, closes #4002) +Files: src/dosinst.c, src/dosinst.h, src/uninstal.c + +Patch 8.1.0977 +Problem: Blob not tested with Ruby. +Solution: Add more test coverage. Fixes a crash. (Dominique Pelle, + closes #4036) +Files: src/if_ruby.c, src/testdir/test_ruby.vim + +Patch 8.1.0978 +Problem: Blob not tested with Perl. +Solution: Add more test coverage. Fixes a crash. (Dominique Pelle, + closes #4037) +Files: src/if_perl.c, src/testdir/test_ruby.vim + +Patch 8.1.0979 +Problem: Compiler warning for unused functions. (Yasuhiro Matsumoto) +Solution: Adjust #ifdef. +Files: src/screen.c + +Patch 8.1.0980 +Problem: extend() insufficiently tested. +Solution: Add more tests. (Dominique Pelle, closes #4040) +Files: src/testdir/test_listdict.vim + +Patch 8.1.0981 +Problem: Pasting in terminal insufficiently tested. +Solution: Add more tests. (Dominique Pelle, closes #4040) +Files: src/testdir/test_terminal.vim + +Patch 8.1.0982 +Problem: update_cursor() called twice in :shell. +Solution: Remove one of the calls. (Yasuhiro Matsumoto, closes #4039) +Files: src/terminal.c + +Patch 8.1.0983 +Problem: Checking __CYGWIN32__ unnecessarily. +Solution: Remove the checks. (Ken Takata) +Files: src/evalfunc.c, src/os_unix.c, src/os_win32.c + +Patch 8.1.0984 +Problem: Unnecessary #ifdefs. +Solution: Remove the #ifdefs. (Ken Takata) +Files: src/winclip.c + +Patch 8.1.0985 +Problem: Crash with large number in regexp. (Kuang-che Wu) +Solution: Check for long becoming negative int. (closes #4042) +Files: src/regexp.c, src/testdir/test_search.vim + +Patch 8.1.0986 +Problem: rename() is not propertly tested. +Solution: Add tests. (Dominique Pelle, closes #4061) +Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_rename.vim + +Patch 8.1.0987 +Problem: Unnecessary condition in #ifdef. +Solution: Remove using CYGWIN32. (Ken Takata) +Files: src/os_unix.h, src/xxd/xxd.c + +Patch 8.1.0988 +Problem: Deleting a location list buffer breaks location list window + functionality. +Solution: (Yegappan Lakshmanan, closes #4056) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.0989 +Problem: Various small code ugliness. +Solution: Remove pointless NULL checks. Fix function calls. Fix typos. + (Dominique Pelle, closes #4060) +Files: src/buffer.c, src/crypt.c, src/evalfunc.c, src/ex_cmds2.c, + src/globals.h, src/gui_gtk_f.c, src/gui_gtk_x11.c, src/gui_mac.c, + src/ops.c, src/option.h, src/os_unix.c, src/os_win32.c, + src/popupmnu.c, src/regexp.c, src/ui.c, src/version.c + +Patch 8.1.0990 +Problem: Floating point exception with "%= 0" and "/= 0". +Solution: Avoid dividing by zero. (Dominique Pelle, closes #4058) +Files: src/eval.c, src/testdir/test_vimscript.vim + +Patch 8.1.0991 +Problem: Cannot build with FEAT_EVAL defined and FEAT_SEARCH_EXTRA + undefined, and with FEAT_DIFF defined and FEAT_EVAL undefined. +Solution: Add a couple of #ifdefs. (closes #4067) +Files: src/diff.c, src/search.c + +Patch 8.1.0992 +Problem: A :normal command while executing a register resets the + reg_executing() result. +Solution: Save and restore reg_executing. (closes #4066) +Files: src/ex_docmd.c, src/structs.h, src/testdir/test_functions.vim + +Patch 8.1.0993 +Problem: ch_read() may return garbage if terminating NL is missing. +Solution: Add terminating NUL. (Ozaki Kiichi, closes #4065) +Files: src/channel.c, src/testdir/test_channel.vim + +Patch 8.1.0994 +Problem: Relative cursor position is not calculated correctly. +Solution: Always set topline, also when window is one line only. + (Robert Webb) Add more info to getwininfo() for testing. +Files: src/window.c, src/evalfunc.c, runtime/doc/eval.txt, + src/testdir/test_window_cmd.vim + +Patch 8.1.0995 +Problem: A getchar() call while executing a register resets the + reg_executing() result. +Solution: Save and restore reg_executing. (closes #406 +Files: src/evalfunc.c, src/testdir/test_functions.vim + +Patch 8.1.0996 (after 8.1.0994) +Problem: A few screendump tests fail because of scrolling. +Solution: Update the screendumps. +Files: src/testdir/dumps/Test_incsearch_substitute_11.dump, + src/testdir/dumps/Test_incsearch_substitute_12.dump, + src/testdir/dumps/Test_incsearch_substitute_13.dump + +Patch 8.1.0997 +Problem: Using GUI colors in vim.exe when 'termguicolors' is off. +Solution: Add condition for 'termguicolors' set. (Ken Takata, closes #4078) +Files: src/os_win32.c + +Patch 8.1.0998 +Problem: getcurpos() unexpectedly changes "curswant". +Solution: Save and restore "curswant". (closes #4069) +Files: src/evalfunc.c, src/testdir/test_visual.vim + +Patch 8.1.0999 +Problem: Use register one too often and not properly tested. +Solution: Do not always use register one when specifying a register. + (closes #4085) Add more tests. +Files: src/ops.c, src/testdir/test_registers.vim + +Patch 8.1.1000 +Problem: Indenting is off. +Solution: Make indenting consistent and update comments. (Ozaki Kiichi, + closes #4079) +Files: src/getchar.c, src/ops.c + +Patch 8.1.1001 +Problem: Visual area not correct when using 'cursorline'. +Solution: Update w_last_cursorline also in Visual mode. (Hirohito Higashi, + closes #4086) +Files: src/screen.c, src/testdir/test_highlight.vim, + src/testdir/dumps/Test_cursorline_with_visualmode_01.dump + +Patch 8.1.1002 +Problem: "gf" does not always work when URL has a port number. (Jakob + Schöttl) +Solution: When a URL is recognized also accept ":". (closes #4082) +Files: src/findfile.c, src/testdir/test_gf.vim + +Patch 8.1.1003 +Problem: Playing back recorded key sequence mistakes key code. +Solution: Insert a <Nop> after the <Esc>. (closes #4068) +Files: src/getchar.c, src/testdir/test_registers.vim + +Patch 8.1.1004 +Problem: Function "luaV_setref()" not covered with tests. +Solution: Add a test. (Dominique Pelle, closes #4089) +Files: src/testdir/test_lua.vim + +Patch 8.1.1005 (after 8.1.1003) +Problem: Test fails because t_F2 is not set. +Solution: Add try-catch. +Files: src/testdir/test_registers.vim + +Patch 8.1.1006 +Problem: Repeated code in quickfix support. +Solution: Move code to functions. (Yegappan Lakshmanan, closes #4091) +Files: src/quickfix.c + +Patch 8.1.1007 +Problem: Using closure may consume a lot of memory. +Solution: unreference items that are no longer needed. Add a test. (Ozaki + Kiichi, closes #3961) +Files: src/testdir/Make_all.mak, src/testdir/test_memory_usage.vim, + src/userfunc.c + +Patch 8.1.1008 +Problem: MS-Windows: HAVE_STDINT_H only defined for non-debug version. +Solution: Move definition of HAVE_STDINT_H up. (Taro Muraoka, closes #4109) +Files: src/Make_mvc.mak + +Patch 8.1.1009 +Problem: MS-Windows: some text is not baseline aligned. +Solution: Use bottom alignment. (Taro Muraoka, closes #4116, closes #1520) +Files: src/gui_dwrite.cpp + +Patch 8.1.1010 +Problem: Lua interface leaks memory. +Solution: Clear typeval after copying it. +Files: src/if_lua.c + +Patch 8.1.1011 +Problem: Indent from autoindent not removed from blank line. (Daniel Hahler) +Solution: Do not reset did_ai when text follows. (closes #4119) +Files: src/misc1.c, src/testdir/test_edit.vim + +Patch 8.1.1012 +Problem: Memory leak with E461. +Solution: Clear the typeval. (Dominique Pelle, closes #4111) +Files: src/eval.c + +Patch 8.1.1013 +Problem: MS-Windows: Scrolling fails when dividing the screen. +Solution: Position the cursor before calling ScrollConsoleScreenBuffer(). + (Nobuhiro Takasaki, closes #4115) +Files: src/os_win32.c + +Patch 8.1.1014 +Problem: MS-Windows: /analyze only defined for non-debug version. +Solution: Move adding of /analyze up. (Taro Muraoka, closes #4114) +Files: src/Make_mvc.mak + +Patch 8.1.1015 +Problem: Quickfix buffer shows up in list, can't get buffer number. +Solution: Make the quickfix buffer unlisted when the quickfix window is + closed. get the quickfix buffer number with getqflist(). + (Yegappan Lakshmanan, closes #4113) +Files: runtime/doc/eval.txt, runtime/doc/quickfix.txt, src/quickfix.c, + src/testdir/test_quickfix.vim, src/window.c + +Patch 8.1.1016 +Problem: MS-Windows: No color in shell when using "!" in 'guioptions. +Solution: Don't stop termcap when using a terminal window for the shell. + (vim-jp, closes #4117) +Files: src/ex_cmds.c + +Patch 8.1.1017 +Problem: Off-by-one error in filetype detection. +Solution: Also check the last line of the file. +Files: runtime/autoload/dist/ft.vim + +Patch 8.1.1018 +Problem: Window cleared when entering Terminal-Normal twice. (Epheien) +Solution: Don't cleanup scrollback when there is no postponed scrollback. + (Christian Brabandt, closes #4126) +Files: src/terminal.c + +Patch 8.1.1019 +Problem: Lua: may garbage collect function reference in use. +Solution: Keep the function name instead of the typeval. Make luaV_setref() + handle funcref objects. (Ozaki Kiichi, closes #4127) +Files: src/if_lua.c, src/testdir/test_lua.vim + +Patch 8.1.1020 +Problem: Compiler warning for Python3 interface. +Solution: Add type cast. (Ozaki Kiichi, closes #4128, closes #4103) +Files: src/if_python3.c + +Patch 8.1.1021 +Problem: pyeval() and py3eval() leak memory. +Solution: Do not increase the reference count twice. (Ozaki Kiichi, + closes #4129) +Files: src/if_python.c, src/if_python3.c + +Patch 8.1.1022 +Problem: May use NULL pointer when out of memory. (Coverity) +Solution: Check for blob_alloc() returning NULL. +Files: src/blob.c + +Patch 8.1.1023 +Problem: May use NULL pointer when indexing a blob. (Coverity) +Solution: Break out of loop after using index on blob +Files: src/eval.c + +Patch 8.1.1024 +Problem: Stray log calls in terminal code. (Christian Brabandt) +Solution: Remove the calls. +Files: src/terminal.c + +Patch 8.1.1025 +Problem: Checking NULL pointer after addition. (Coverity) +Solution: First check for NULL, then add the column. +Files: src/regexp.c + +Patch 8.1.1026 +Problem: Unused condition. (Coverity) +Solution: Remove the condition. Also remove unused #define. +Files: src/move.c + +Patch 8.1.1027 +Problem: Memory usage test sometimes fails. +Solution: Use 80% of before.last as the lower limit. (Christian Brabandt) +Files: src/testdir/test_memory_usage.vim + +Patch 8.1.1028 +Problem: MS-Windows: memory leak when creating terminal fails. +Solution: Free the command. (Ken Takata, closes #4138) +Files: src/os_win32.c + +Patch 8.1.1029 +Problem: DirectWrite doesn't take 'linespace' into account. +Solution: Include 'linespace' in the position. (Ken Takata, closes #4137) +Files: src/gui_dwrite.cpp, src/gui_w32.c + +Patch 8.1.1030 +Problem: Quickfix function arguments are inconsistent. +Solution: Pass a list pointer instead of info and index. (Yegappan + Lakshmanan, closes #4135) +Files: src/quickfix.c + +Patch 8.1.1031 +Problem: Memory usage test may still fail. +Solution: Drop the unused min value. (Christian Brabandt) +Files: src/testdir/test_memory_usage.vim + +Patch 8.1.1032 +Problem: Warnings from clang static analyzer. (Yegappan Lakshmanan) +Solution: Fix relevant warnings. +Files: src/arabic.c, src/edit.c, src/eval.c, src/fileio.c, src/normal.c, + src/option.c, src/os_unix.c, src/regexp.c, src/screen.c, + src/channel.c, src/charset.c, src/message.c + +Patch 8.1.1033 +Problem: Memory usage test may still fail on some systems. (Elimar + Riesebieter) +Solution: Increase tolerance from 1% to 3%. +Files: src/testdir/test_memory_usage.vim + +Patch 8.1.1034 +Problem: Too many #ifdefs. +Solution: Merge FEAT_MOUSE_SGR into FEAT_MOUSE_XTERM / FEAT_MOUSE_TTY. +Files: src/evalfunc.c, src/misc2.c, src/os_unix.c, src/term.c, + src/version.c, src/feature.h + +Patch 8.1.1035 +Problem: prop_remove() second argument is not optional. +Solution: Fix argument count. Use "buf" instead of "curbuf". (closes #4147) +Files: src/evalfunc.c, src/testdir/test_textprop.vim, src/textprop.c + +Patch 8.1.1036 +Problem: Quickfix function arguments are inconsistent. +Solution: Pass a list pointer to more functions. (Yegappan Lakshmanan, + closes #4149) +Files: src/quickfix.c + +Patch 8.1.1037 +Problem: Memory usage test may still fail on some systems. +Solution: Increase tolerance from 3% to 20%. +Files: src/testdir/test_memory_usage.vim + +Patch 8.1.1038 +Problem: Arabic support excludes Farsi. +Solution: Add Farsi support to the Arabic support. (Ali Gholami Rudi, + Ameretat Reith) +Files: Filelist, src/arabic.c, src/arabic.h, src/globals.h, src/macros.h, + src/mbyte.c, src/proto/arabic.pro, src/proto/mbyte.pro, + src/Makefile, src/testdir/test_arabic.vim + +Patch 8.1.1039 +Problem: MS-Windows build fails. +Solution: Remove dependency on arabic.h +Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms + +Patch 8.1.1040 +Problem: FEAT_TAG_ANYWHITE is not enabled in any build. +Solution: Remove the feature. +Files: src/feature.h, src/tag.c, src/evalfunc.c, src/version.c, + src/Make_vms.mms + +Patch 8.1.1041 +Problem: Test for Arabic no longer needed. +Solution: Remove the test for something that was intentionally left out. +Files: src/testdir/test_arabic.vim + +Patch 8.1.1042 +Problem: The paste test doesn't work properly in the Windows console. +Solution: Disable the test. +Files: src/testdir/test_paste.vim + +Patch 8.1.1043 +Problem: Lua interface does not support Blob. +Solution: Add support to Blob. (Ozaki Kiichi, closes #4151) +Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim + +Patch 8.1.1044 +Problem: No way to check the reference count of objects. +Solution: Add test_refcount(). (Ozaki Kiichi, closes #4124) +Files: runtime/doc/eval.txt, src/evalfunc.c, + src/testdir/test_vimscript.vim + +Patch 8.1.1045 +Problem: E315 ml_get error when using Python and hidden buffer. +Solution: Make sure the cursor position is valid. (Ben Jackson, + closes #4153, closes #4154) +Files: src/if_py_both.h, src/testdir/test_python2.vim, + src/testdir/test_python3.vim + +Patch 8.1.1046 +Problem: the "secure" variable is used inconsistently. (Justin M. Keyes) +Solution: Set it to one instead of incrementing. +Files: src/buffer.c, src/option.c + +Patch 8.1.1047 +Problem: WINCH signal is not tested. +Solution: Add a test. (Dominique Pelle, closes #4158) +Files: src/testdir/Make_all.mak, src/testdir/test_signals.vim + +Patch 8.1.1048 +Problem: Minor issues with tests. +Solution: Delete unused test OK file. Add missing entries in list of tests. + Fix readme file. (Masato Nishihata, closes #4160) +Files: src/testdir/test85.ok, src/testdir/Make_all.mak, + src/testdir/README.txt + +Patch 8.1.1049 +Problem: When user tries to exit with CTRL-C message is confusing. +Solution: Only mention ":qa!" when there is a changed buffer. (closes #4163) +Files: src/undo.c, src/proto/undo.pro, src/normal.c, + src/testdir/test_normal.vim + +Patch 8.1.1050 +Problem: Blank srceen when DirectWrite failed. +Solution: Call redraw_later_clear() after recreating the Direct2D render + target. (Ken Takata, closes #4172) +Files: src/gui_dwrite.cpp + +Patch 8.1.1051 +Problem: Not all ways to switch terminal mode are tested. +Solution: Add more test cases. +Files: src/testdir/test_terminal.vim + +Patch 8.1.1052 +Problem: test for CTRL-C message sometimes fails +Solution: Make sure there are no changed buffers. +Files: src/testdir/test_normal.vim + +Patch 8.1.1053 +Problem: Warning for missing return statement. (Dominique Pelle) +Solution: Add return statement. +Files: src/undo.c + +Patch 8.1.1054 +Problem: Not checking return value of ga_grow(). (Coverity) +Solution: Only append when ga_grow() returns OK. +Files: src/if_lua.c + +Patch 8.1.1055 +Problem: CTRL-G U in Insert mode doesn't work to avoid splitting the undo + sequence for shift-left and shift-right. +Solution: Also check dont_sync_undo for shifted cursor keys. (Christian + Brabandt) +Files: src/edit.c, src/testdir/test_mapping.vim + +Patch 8.1.1056 +Problem: No eval function for Ruby. +Solution: Add rubyeval(). (Ozaki Kiichi, closes #4152) +Files: runtime/doc/eval.txt, runtime/doc/if_ruby.txt, src/evalfunc.c, + src/if_ruby.c, src/proto/if_ruby.pro, src/testdir/test_ruby.vim + +Patch 8.1.1057 +Problem: Nsis config is too complicated. +Solution: Use "File /r" for the macros and pack directories. (Ken Takata, + closes #4169) +Files: nsis/gvim.nsi + +Patch 8.1.1058 +Problem: Memory usage test may still fail on some systems. +Solution: Use 98% of the lower limit. (Christian Brabandt) +Files: src/testdir/test_memory_usage.vim + +Patch 8.1.1059 +Problem: MS-Windows: PlatformId() is called unnecessarily. +Solution: Remove calls to PlatformId(). (Ken Takata, closes #4170) +Files: src/os_win32.c + +Patch 8.1.1060 +Problem: MS-Windows: get_cmd_args() is no longer needed, get_cmd_argsW() is + always used. +Solution: Remove get_cmd_args(). (Ken Takata, closes #4171) +Files: src/gui_w32.c, src/os_w32exe.c + +Patch 8.1.1061 +Problem: When substitute string throws error, substitute happens anyway. +Solution: Skip substitution when aborting. (closes #4161) +Files: src/ex_cmds.c, src/testdir/test_substitute.vim + +Patch 8.1.1062 +Problem: Quickfix code is repeated. +Solution: Define FOR_ALL_QFL_ITEMS(). Move some code to separate functions. + (Yegappan Lakshmanan, closes #4166) +Files: src/quickfix.c + +Patch 8.1.1063 +Problem: Insufficient testing for wildmenu completion. +Solution: Extend the test case. (Dominique Pelle, closes #4182) +Files: src/testdir/test_cmdline.vim + +Patch 8.1.1064 +Problem: No test for output conversion in the GTK GUI. +Solution: Add a simplistic test. +Files: src/testdir/test_gui.vim + +Patch 8.1.1065 +Problem: No test for using and deleting menu in the GUI. +Solution: Add a test. +Files: src/testdir/test_gui.vim + +Patch 8.1.1066 +Problem: VIMDLL isn't actually used. +Solution: Remove VIMDLL support. +Files: src/gui_w32.c, src/main.c, src/os_w32exe.c, src/Make_bc5.mak, + src/os_w32dll.c + +Patch 8.1.1067 +Problem: Issues added on github are unstructured. +Solution: Add a bug and feature request template. (Ken Takata, closes #4183) +Files: .github/ISSUE_TEMPLATE/feature_request.md, + .github/ISSUE_TEMPLATE/bug_report.md + +Patch 8.1.1068 +Problem: Cannot get all the information about current completion. +Solution: Add complete_info(). (Shougo, Hirohito Higashi, closes #4106) +Files: runtime/doc/eval.txt, runtime/doc/insert.txt, + runtime/doc/usr_41.txt, src/edit.c, src/evalfunc.c, + src/proto/edit.pro, src/testdir/test_popup.vim + +Patch 8.1.1069 +Problem: Source README file doesn't look nice on github. +Solution: Turn it into markdown, still readable as plain text. + (WenxuanHuang, closes #4141) +Files: src/README.txt, src/README.md, Filelist + +Patch 8.1.1070 +Problem: Issue templates are not good enough. +Solution: Rephrase to anticipate unexperienced users. +Files: .github/ISSUE_TEMPLATE/feature_request.md, + .github/ISSUE_TEMPLATE/bug_report.md + +Patch 8.1.1071 +Problem: Cannot get composing characters from the screen. +Solution: Add screenchars() and screenstring(). (partly by Ozaki Kiichi, + closes #4059) +Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c, + src/testdir/test_utf8.vim, src/testdir/view_util.vim + +Patch 8.1.1072 +Problem: Extending sign and foldcolumn below the text is confusing. +Solution: Let the sign and foldcolumn stop at the last text line, just like + the line number column. Also stop the command line window leader. + (Christian Brabandt, closes #3964) +Files: src/screen.c, src/testdir/test_diffmode.vim, + src/testdir/dumps/Test_diff_of_diff_01.dump, + src/testdir/dumps/Test_diff_01.dump, + src/testdir/dumps/Test_diff_02.dump, + src/testdir/dumps/Test_diff_03.dump, + src/testdir/dumps/Test_diff_04.dump, + src/testdir/dumps/Test_diff_05.dump, + src/testdir/dumps/Test_diff_06.dump, + src/testdir/dumps/Test_diff_06.0.dump, + src/testdir/dumps/Test_diff_06.1.dump, + src/testdir/dumps/Test_diff_06.2.dump, + src/testdir/dumps/Test_diff_10.dump, + src/testdir/dumps/Test_diff_11.dump, + src/testdir/dumps/Test_diff_12.dump, + src/testdir/dumps/Test_diff_13.dump, + src/testdir/dumps/Test_diff_14.dump, + src/testdir/dumps/Test_diff_15.dump, + src/testdir/dumps/Test_diff_16.dump, + src/testdir/dumps/Test_diff_17.dump, + src/testdir/dumps/Test_diff_18.dump, + src/testdir/dumps/Test_diff_19.dump, + src/testdir/dumps/Test_diff_20.dump, + src/testdir/dumps/Test_diff_with_cursorline_01.dump, + src/testdir/dumps/Test_diff_with_cursorline_02.dump, + src/testdir/dumps/Test_diff_with_cursorline_03.dump, + src/testdir/dumps/Test_folds_with_rnu_01.dump, + src/testdir/dumps/Test_folds_with_rnu_02.dump + +Patch 8.1.1073 +Problem: Space in number column is on wrong side with 'rightleft' set. +Solution: Move the space to the text side. Add a test. +Files: src/screen.c, src/testdir/test_diffmode.vim, + src/testdir/dumps/Test_diff_of_diff_02.dump + +Patch 8.1.1074 +Problem: Python test doesn't wipe out hidden buffer. +Solution: Wipe out the buffer. (Ben Jackson, closes #4189) +Files: src/testdir/test_python2.vim, src/testdir/test_python3.vim + +Patch 8.1.1075 +Problem: Function reference count wrong in Python code. +Solution: Use "O" instead of "N" for the arguments. (Ben Jackson, + closes #4188) +Files: src/if_py_both.h + +Patch 8.1.1076 +Problem: File for Insert mode is much too big. +Solution: Split off the code for Insert completion. (Yegappan Lakshmanan, + closes #4044) +Files: Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/edit.c, src/evalfunc.c, + src/globals.h, src/insexpand.c, src/misc2.c, src/proto.h, + src/proto/edit.pro, src/proto/insexpand.pro, src/search.c, + src/spell.c, src/structs.h, src/tag.c, src/vim.h + +Patch 8.1.1077 +Problem: reg_executing() is reset by calling input(). +Solution: Implement a more generic way to save and restore reg_executing. + (Ozaki Kiichi, closes #4192) +Files: src/evalfunc.c, src/ex_docmd.c, src/testdir/test_functions.vim + +Patch 8.1.1078 +Problem: When 'listchars' is set a composing char on a space is wrong. +Solution: Separate handling a non-breaking space and a space. (Yasuhiro + Matsumoto, closes #4046) +Files: src/screen.c, src/testdir/test_listchars.vim + +Patch 8.1.1079 +Problem: No need for a separate ScreenLinesUtf8() test function. +Solution: Get the composing characters with ScreenLines(). +Files: src/testdir/view_util.vim, src/testdir/test_listchars.vim, + src/testdir/test_utf8.vim + +Patch 8.1.1080 +Problem: When a screendump test fails, moving the file is a hassle. +Solution: Instead of appending ".failed" to the file name, keep the same + file name but put the screendump in the "failed" directory. + Then the file name only needs to be typed once when moving a + screendump. +Files: src/testdir/screendump.vim + +Patch 8.1.1081 +Problem: MS-Windows: cannot use fonts whose name cannot be represented in + the current code page. +Solution: Use wide font functions. (Ken Takata, closes #4000) +Files: src/gui_w32.c, src/os_mswin.c, src/proto/gui_w32.pro, + src/proto/os_mswin.pro + +Patch 8.1.1082 +Problem: "Conceal" match is mixed up with 'hlsearch' match. +Solution: Check that a match is found, not a 'hlsearch' item. (Andy + Massimino, closes #4073) +Files: src/screen.c + +Patch 8.1.1083 +Problem: MS-Windows: hang when opening a file on network share. +Solution: Avoid using FindFirstFile(), use GetLongPathNameW(). (Ken Takata, + closes #3923) +Files: src/os_win32.c + +Patch 8.1.1084 +Problem: Cannot delete a match from another window. (Paul Jolly) +Solution: Add window ID argument to matchdelete(), clearmatches(), + getmatches() and setmatches(). (Andy Massimino, closes #4178) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_match.vim + +Patch 8.1.1085 +Problem: Compiler warning for possibly uninitialized variable. (Tony + Mechelynck) +Solution: Make conditions more logical. +Files: src/arabic.c + +Patch 8.1.1086 +Problem: Too many curly braces. +Solution: Remove curly braces where they are not needed. (Hirohito Higashi, + closes #3982) +Files: src/autocmd.c, src/buffer.c, src/crypt_zip.c, src/dosinst.c, + src/edit.c, src/insexpand.c, src/evalfunc.c, src/ex_cmds.c, + src/ex_docmd.c, src/ex_getln.c, src/getchar.c, src/gui.c, + src/gui_gtk.c, src/gui_mac.c, src/gui_motif.c, src/gui_photon.c, + src/gui_w32.c, src/gui_x11.c, src/if_mzsch.c, src/if_python3.c, + src/if_ruby.c, src/if_tcl.c, src/indent.c, src/libvterm/src/pen.c, + src/macros.h, src/memline.c, src/menu.c, src/misc1.c, src/move.c, + src/netbeans.c, src/normal.c, src/ops.c, src/option.c, + src/os_mswin.c, src/os_qnx.c, src/os_unix.c, src/os_win32.c, + src/regexp_nfa.c, src/screen.c, src/spell.c, src/terminal.c + +Patch 8.1.1087 +Problem: tag stack is incorrect after CTRL-T and then :tag +Solution: Handle DT_TAG differently. (test by Andy Massimino, closes #3944, + closes #4177) +Files: src/tag.c, src/testdir/test_tagjump.vim + +Patch 8.1.1088 +Problem: Height of quickfix window not retained with vertical split. +Solution: Use frame_fixed_height() and frame_fixed_width(). (Hongbo Liu, + closes #4013, closes #2998) +Files: src/testdir/test_winbuf_close.vim, src/window.c + +Patch 8.1.1089 +Problem: Tutor does not check $LC_MESSAGES. +Solution: Let $LC_MESSAGES overrule $LANG. (Miklos Vajna, closes #4112) +Files: runtime/tutor/tutor.vim + +Patch 8.1.1090 +Problem: MS-Windows: modify_fname() has problems with some 'encoding'. +Solution: Use GetLongPathNameW() instead of GetLongPathName(). (Ken Takata, + closes #4007) +Files: src/eval.c + +Patch 8.1.1091 +Problem: MS-Windows: cannot use multi-byte chars in environment var. +Solution: Use the wide API. (Ken Takata, closes #4008) +Files: src/misc1.c, src/testdir/test_let.vim + +Patch 8.1.1092 +Problem: Setting 'guifont' when maximized resizes the Vim window. When + 'guioptions' contains "k" gvim may open with a tiny window. +Solution: Avoid un-maximizing when setting 'guifont'. (Yee Cheng Chin, + closes #3808) +Files: src/gui.c + +Patch 8.1.1093 +Problem: Support for outdated tags format slows down tag parsing. +Solution: Remove FEAT_TAG_OLDSTATIC. +Files: runtime/doc/tagsrch.txt, src/feature.h, src/tag.c, src/version.c + +Patch 8.1.1094 +Problem: Long line in tags file causes error. +Solution: Check for overlong line earlier. (Andy Massimino, closes #4051, + closes #4084) +Files: src/tag.c, src/testdir/test_tagjump.vim + +Patch 8.1.1095 +Problem: MS-Windows: executable() fails on very long filename. +Solution: Use much bigger buffer. (Ken Takata, closes #4015) +Files: src/os_win32.c, src/testdir/test_functions.vim + +Patch 8.1.1096 +Problem: MS-Windows: cannot distinguish BS and CTRL-H. +Solution: Add code for VK_BACK. (Linwei, closes #1833) +Files: src/term.c, src/os_win32.c + +Patch 8.1.1097 (after 8.1.1092) +Problem: Motif build fails. (Paul Jolly) +Solution: Only use gui_mch_maximized() for MS-Windows. (closes #4194) +Files: src/gui.c + +Patch 8.1.1098 +Problem: Quickfix code duplication. +Solution: Refactor the qf_init_ext() function. (Yegappan Lakshmanan, + closes #4193) +Files: src/README.md, src/quickfix.c + +Patch 8.1.1099 +Problem: The do_tag() function is too long. +Solution: Factor parts out to separate functions. Move simplify_filename() + to a file where it fits better. (Andy Massimino, closes #4195) +Files: src/tag.c, src/proto/tag.pro, src/findfile.c, + src/proto/findfile.pro + +Patch 8.1.1100 +Problem: Tag file without trailing newline no longer works. (Marco Hinz) +Solution: Don't expect a newline at the end of the file. (closes #4200) +Files: src/tag.c, src/testdir/test_taglist.vim + +Patch 8.1.1101 +Problem: Signals test may fail in the GUI. +Solution: Skip the test for the GUI. (Yee Checng Chin, closes #4202) +Files: src/testdir/test_signals.vim + +Patch 8.1.1102 +Problem: Win32 exe file contains unused code. +Solution: Remove unused #ifdefs and code. (Ken Takata, closes #4198) +Files: src/os_w32exe.c + +Patch 8.1.1103 +Problem: MS-Windows: old API calls are no longer needed. +Solution: Always use the wide functions. (Ken Takata, closes #4199) +Files: src/glbl_ime.cpp, src/globals.h, src/gui_w32.c, src/misc1.c, + src/os_mswin.c, src/os_win32.c, src/vim.h, + +Patch 8.1.1104 +Problem: MS-Windows: not all environment variables can be used. +Solution: Use the wide version of WinMain() and main(). (Ken Takata, + closes #4206) +Files: src/Make_cyg.mak, src/Make_cyg_ming.mak, src/Make_mvc.mak, + src/main.c, src/os_w32exe.c + +Patch 8.1.1105 +Problem: Long escape sequences may be split up. +Solution: Assume esccape sequences can be up to 80 bytes long. (Nobuhiro + Takasaki, closes #4196) +Files: src/term.c + +Patch 8.1.1106 +Problem: No test for 'writedelay'. +Solution: Add a test. +Files: src/testdir/test_options.vim + +Patch 8.1.1107 +Problem: No test for 'visualbell'. +Solution: Add a test. +Files: src/testdir/test_options.vim + +Patch 8.1.1108 +Problem: Test for 'visualbell' doesn't work. +Solution: Make 'belloff' empty. +Files: src/testdir/test_options.vim + +Patch 8.1.1109 +Problem: Deleted file still in list of distributed files. +Solution: Remove the src/os_w32dll.c entry. +Files: Filelist + +Patch 8.1.1110 +Problem: Composing chars on space wrong when 'listchars' is set. +Solution: Do not use "space" and "nbsp" entries of 'listchars' when there is + a composing character. (Yee Cheng Chin, closes #4197) +Files: src/screen.c, src/testdir/test_listchars.vim + +Patch 8.1.1111 +Problem: It is not easy to check for infinity. +Solution: Add isinf(). (Ozaki Kiichi, closes #3787) +Files: runtime/doc/eval.txt, src/evalfunc.c, + src/testdir/test_float_func.vim + +Patch 8.1.1112 +Problem: Duplicate code in quickfix file. +Solution: Move code into functions. (Yegappan Lakshmanan, closes #4207) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.1113 +Problem: Making an autocommand trigger once is not so easy. +Solution: Add the ++once argument. Also add ++nested as an alias for + "nested". (Justin M. Keyes, closes #4100) +Files: runtime/doc/autocmd.txt, src/autocmd.c, + src/testdir/test_autocmd.vim, src/globals.h + +Patch 8.1.1114 +Problem: Confusing overloaded operator "." for string concatenation. +Solution: Add ".." for string concatenation. Also "let a ..= b". +Files: src/eval.c, src/testdir/test_eval_stuff.vim, runtime/doc/eval.txt + +Patch 8.1.1115 +Problem: Cannot build with older C compiler. +Solution: Move variable declaration to start of block. +Files: src/autocmd.c + +Patch 8.1.1116 +Problem: Cannot enforce a Vim script style. +Solution: Add the :scriptversion command. (closes #3857) +Files: runtime/doc/repeat.txt, runtime/doc/eval.txt, src/eval.c, + src/ex_cmds.h, src/evalfunc.c, src/ex_cmds2.c, + src/proto/ex_cmds2.pro, src/structs.h, src/buffer.c, src/main.c, + src/option.c, src/ex_cmdidxs.h, src/testdir/test_eval_stuff.vim + +Patch 8.1.1117 +Problem: Build failure without the +eval feature. +Solution: Add #ifdef. +Files: src/ex_cmds2.c + +Patch 8.1.1118 +Problem: A couple of conditions are hard to understand. +Solution: Split the conditions into pieces. (Ozaki Kiichi, closes #3879) +Files: src/getchar.c, src/os_unix.c + +Patch 8.1.1119 +Problem: No support for Windows on ARM64. +Solution: Add ARM64 support (Leendert van Doorn) +Files: src/GvimExt/Makefile, src/Make_mvc.mak, src/dosinst.c, + src/xpm/arm64/lib-vc14/libXpm.lib, Filelist, src/INSTALLpc.txt + +Patch 8.1.1120 +Problem: Cannot easily get directory entry matches. +Solution: Add the readdir() function. (Yasuhiro Matsumoto, closes #2439) +Files: runtime/doc/eval.txt, src/eval.c, src/evalfunc.c, src/misc1.c, + src/proto/eval.pro, src/testdir/test_functions.vim + +Patch 8.1.1121 +Problem: Test for term_gettitle() was disabled. +Solution: Enable the test and bail out only when it doesn't work. (Dominique + Pelle, closes #3776) +Files: src/testdir/test_terminal.vim + +Patch 8.1.1122 +Problem: char2nr() does not handle composing characters. +Solution: Add str2list() and list2str(). (Ozaki Kiichi, closes #4190) +Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c, + src/testdir/test_utf8.vim + +Patch 8.1.1123 +Problem: No way to avoid filtering for autocomplete function, causing + flickering of the popup menu. +Solution: Add the "equal" field to complete items. (closes #3887) +Files: runtime/doc/insert.txt, src/insexpand.c, + src/testdir/test_popup.vim + +Patch 8.1.1124 +Problem: Insert completion flags are mixed up. +Solution: Clean up flags use of ins_compl_add() and cp_flags. +Files: src/insexpand.c, src/proto/insexpand.pro, src/search.c, src/spell.c + +Patch 8.1.1125 +Problem: Libvterm does not handle the window position report. +Solution: Let libvterm call the fallback CSI handler when not handling CSI + sequence. Handle the window position report in Vim. +Files: src/libvterm/src/state.c, src/terminal.c, src/ui.c, + src/proto/ui.pro, src/evalfunc.c, src/testdir/test_terminal.vim + +Patch 8.1.1126 +Problem: Build failure with +terminal but without tgetent. +Solution: Adjust #ifdef. +Files: src/ui.c + +Patch 8.1.1127 +Problem: getwinpos() doesn't work in terminal on MS-Windows console. +Solution: Adjust #ifdefs. Disable test for MS-Windows console. +Files: src/ui.c, src/term.c, src/terminal.c, + src/testdir/test_terminal.vim + +Patch 8.1.1128 +Problem: getwinpos() test does not work on MS-Windows. +Solution: Skip the test. +Files: src/testdir/test_terminal.vim + +Patch 8.1.1129 +Problem: When making a new screendump test have to create the file. +Solution: Continue creating the failed screendump, so it can be moved once + it is correct. +Files: src/testdir/screendump.vim + +Patch 8.1.1130 +Problem: MS-Windows: warning for unused variable. +Solution: Remove the variable. +Files: src/evalfunc.c + +Patch 8.1.1131 +Problem: getwinpos() does not work in the MS-Windows console. +Solution: Implement getwinpos(). +Files: src/ui.c, src/evalfunc.c, src/terminal.c, + src/testdir/test_terminal.vim + +Patch 8.1.1132 +Problem: getwinpos() test fails on MS-Windows. +Solution: Don't try running this test. +Files: src/testdir/test_terminal.vim + +Patch 8.1.1133 +Problem: Compiler warning for uninitialized struct member. (Yegappan + Lakshmanan) +Solution: Add initializer field. +Files: src/globals.h + +Patch 8.1.1134 +Problem: Buffer for quickfix window is reused for another file. +Solution: Don't reuse the quickfx buffer. (Yegappan Lakshmanan) +Files: src/buffer.c, src/testdir/test_quickfix.vim + +Patch 8.1.1135 (after 8.1.1134) +Problem: Build failure for small version. (Tony Mechelynck) +Solution: Add #ifdef. +Files: src/buffer.c + +Patch 8.1.1136 +Problem: Decoding of mouse click escape sequence is not tested. +Solution: Add a test for xterm and SGR using low-level input. Make + low-level input execution with feedkeys() work. +Files: src/testdir/test_termcodes.vim, src/testdir/Make_all.mak, + src/evalfunc.c, src/ex_docmd.c + +Patch 8.1.1137 +Problem: Xterm mouse wheel escape sequence is not tested. +Solution: Add a test using low-level input. (Dominique Pelle, closes #4221) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1138 +Problem: Plugins don't get notified when the popup menu changes. +Solution: Add the CompleteChanged event. (Andy Massimino. closes #4176) +Files: runtime/doc/autocmd.txt, src/autocmd.c, src/dict.c, + src/insexpand.c, src/popupmnu.c, src/proto/autocmd.pro, + src/proto/dict.pro, src/proto/popupmnu.pro, + src/testdir/test_popup.vim, src/vim.h + +Patch 8.1.1139 +Problem: No test for what is fixed in patch 8.1.0716. +Solution: Add a test. (Yasuhiro Matsumoto, closes #3797) +Files: src/testdir/test_ins_complete.vim + +Patch 8.1.1140 +Problem: Not easy to find out what neighbors a window has. +Solution: Add more arguments to winnr(). (Yegappan Lakshmanan, closes #3993) +Files: runtime/doc/eval.txt, src/evalfunc.c, src/proto/window.pro, + src/testdir/test_window_cmd.vim, src/window.c + +Patch 8.1.1141 +Problem: Terminal winpos test fails with very large terminal. (Dominique + Pelle) +Solution: Compute the expected size more accurately. (closes #4228) +Files: src/testdir/test_terminal.vim + +Patch 8.1.1142 +Problem: No test for dragging the window separators with the mouse. +Solution: Add a test. (Dominique Pelle, closes #4226) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1143 +Problem: May pass weird strings to file name expansion. +Solution: Check for matching characters. Disallow control characters. +Files: src/misc1.c, src/testdir/test_spell.vim, src/option.c, + src/proto/option.pro, src/spell.c, + src/testdir/test_escaped_glob.vim + +Patch 8.1.1144 (after 8.1.1143) +Problem: Too strict checking of the 'spellfile' option. +Solution: Allow for a path. +Files: src/option.c, src/testdir/test_spell.vim + +Patch 8.1.1145 +Problem: Compiler warning for unused function. (Tony Mechelynck) +Solution: Add #ifdef. +Files: src/option.c + +Patch 8.1.1146 +Problem: In MS-Windows console colors in a terminal window are wrong. +Solution: Use the ansi index also for 16 colors. (Ken Takata) +Files: src/terminal.c + +Patch 8.1.1147 +Problem: Desktop file translations are requiring manual updates. +Solution: Use the .po files for desktop file translations. (Christian + Brabandt) +Files: src/po/Makefile, src/po/gvim.desktop.in, src/po/vim.desktop.in, + CONTRIBUTING.md, Filelist, runtime/vim.desktop, + runtime/gvim.desktop + +Patch 8.1.1148 +Problem: CTRL-L with 'incsearch' does not pick up char under cursor. + (Smylers) +Solution: Do not compare the position with the cursor position. (Hirohito + Higashi, closes #3620) +Files: src/ex_getln.c, src/testdir/test_search.vim + +Patch 8.1.1149 +Problem: Building desktop files fails with older msgfmt. +Solution: Add autoconf check. Avoid always building the desktop files. +Files: src/configure.ac, src/auto/configure, src/po/Makefile, + src/po/Make_all.mak, src/config.mk.in + +Patch 8.1.1150 +Problem: Generating desktop files not tested on Travis. +Solution: Install a newer msgfmt package. (Christian Brabandt) +Files: .travis.yml + +Patch 8.1.1151 +Problem: Build fails when using shadow directory. +Solution: Link the desktop.in files. +Files: src/Makefile + +Patch 8.1.1152 +Problem: Compiler warning with VS2019. +Solution: Specify different offset for "AMD64". (closes #4235) +Files: src/GvimExt/Makefile + +Patch 8.1.1153 +Problem: Msgfmt complains about missing LINGUAS file. (Tony Mechelynck) +Solution: Add command to generate LINGUAS. +Files: src/po/Makefile + +Patch 8.1.1154 +Problem: Getting a newer msgfmt on Travis is too complicated. +Solution: Use a "sourcline" entry. (Ozaki Kiichi, closes #4236) +Files: .travis.yml + +Patch 8.1.1155 +Problem: Termcodes tests can be improved. +Solution: Add helper functions to simplify tests. Dragging statusline for + xterm and sgr. (Dominique Pelle, closes #4237) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1156 +Problem: Unicode emoji and other image characters not recognized. +Solution: Add ranges for musical notation, game pieces, etc. (Martin + Tournoij, closes #4238) +Files: src/mbyte.c + +Patch 8.1.1157 +Problem: Unicode tables are out of date. +Solution: Update to Unicode 12. (Christian Brabandt, closes #4240) +Files: src/mbyte.c + +Patch 8.1.1158 +Problem: Json encoded string is sometimes missing the final NUL. +Solution: Add the NUL. Also for log messages. +Files: src/json.c, src/channel.c, src/testdir/test_json.vim + +Patch 8.1.1159 +Problem: MS-Windows: with a silent (un)install $VIM/_vimrc is removed. +Solution: Don't delete _vimrc in silent mode. (Ken Takata, closes #4242) +Files: nsis/gvim.nsi + +Patch 8.1.1160 +Problem: Termcodes test would fail in a very big terminal. +Solution: Bail out when the row is larger than what will work. (Dominique + Pelle, closes #4246) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1161 +Problem: Unreachable code. +Solution: Remove condition that will never be true. Add tests for all ANSI + colors. +Files: src/terminal.c, src/testdir/test_terminal.vim, + src/testdir/dumps/Test_terminal_all_ansi_colors.dump + +Patch 8.1.1162 +Problem: Incorrect coverage information; typo in color name. +Solution: Fix the typo. Set environment variables to have a nested Vim + write the coverage info in another directory. +Files: src/testdir/test_terminal.vim, src/testdir/screendump.vim, + src/testdir/dumps/Test_terminal_all_ansi_colors.dump + +Patch 8.1.1163 +Problem: Codecov does not report all the coverage information. +Solution: Make a second run with the nested execution output, expect that + Codecov will merge the results. +Files: .travis.yml + +Patch 8.1.1164 +Problem: Gettitle test is failing when server name differs. (Kenta Sato) +Solution: Accept "VIM1" when 'autoservername' is used. (Dominique Pelle, + closes #4250, closes #4249) +Files: src/testdir/test_terminal.vim + +Patch 8.1.1165 +Problem: No test for mouse clicks in the terminal tabpage line. +Solution: Add a test. (Dominique Pelle, closes #4247). Also init + TabPageIdxs[], in case it's used before a redraw. +Files: src/screen.c, src/testdir/test_termcodes.vim + +Patch 8.1.1166 (after 8.1.1164) +Problem: Gettitle test can still fail when another Vim is running. +Solution: Accept any server name number. (Dominique Pelle, closes #4252) +Files: src/testdir/test_terminal.vim + +Patch 8.1.1167 +Problem: No test for closing tab by click in tabline. +Solution: Add a test. Also fix that dragging window separator could fail in + a large terminal. (Dominique Pelle, closes #4253) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1168 +Problem: Not all screen update code of the terminal window is executed in + tests. +Solution: Redraw before taking a screenshot. +Files: src/testdir/screendump.vim + +Patch 8.1.1169 +Problem: Writing coverage info in a separate dir is not needed. +Solution: Revert the changes to use a separate directory. +Files: .travis.yml, src/testdir/screendump.vim + +Patch 8.1.1170 +Problem: Terminal ANSI color test does not cover all colors. +Solution: Use the color number, the name is not always resulting in an ANSI + color when t_Co is 256. +Files: src/testdir/test_terminal.vim, + src/testdir/dumps/Test_terminal_all_ansi_colors.dump + +Patch 8.1.1171 +Problem: Statusline test could fail in large terminal. +Solution: Make the test work on a huge terminal. (Dominique Pelle, + closes #4255) +Files: src/testdir/test_statusline.vim + +Patch 8.1.1172 +Problem: Cursor properties were not fully tested. +Solution: Add a test. (Dominique Pelle, closes #4256) +Files: src/testdir/test_terminal.vim + +Patch 8.1.1173 +Problem: Suspend test has duplicated lines. +Solution: Use a function. +Files: src/testdir/test_suspend.vim + +Patch 8.1.1174 +Problem: Cannot build with Ruby 1.8. (Tom G. Christensen) +Solution: Include ruby/st.h. (Ozaki Kiichi, closes #4257) +Files: src/if_ruby.c + +Patch 8.1.1175 +Problem: No test for dragging a tab with the mouse and for creating a new + tab by double clicking in the tabline. +Solution: Add two tests. (Dominique Pelle, closes #4258) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1176 (after 8.1.1175) +Problem: Test for dragging a tab is flaky. +Solution: Add a brief sleep. +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1177 +Problem: .ts files are recognized as xml, while typescript is more common. +Solution: Recognize .ts files as typescript. (closes #4264) +Files: runtime/filetype.vim src/testdir/test_filetype.vim + +Patch 8.1.1178 +Problem: When mouse click tests fails value of 'ttymouse' is unknown. +Solution: Add a message to the assert. +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1179 +Problem: No test for mouse clicks in the fold column. +Solution: Add a test. (Dominique Pelle, closes #4261) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1180 +Problem: Vim script debugger tests are old style. +Solution: Turn into new style tests. (Yegappan Lakshmanan, closes #4259) +Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, + src/testdir/test108.in, src/testdir/test108.ok, + src/testdir/test_debugger.vim + +Patch 8.1.1181 +Problem: Tests for mouse clicks are a bit flaky when run in an interactive + terminal. +Solution: Use "xterm2" instead of "xterm" for 'ttymouse' to avoid spurious + drag events. +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1182 +Problem: Some function prototypes are outdated. +Solution: Update function prototypes. (Ken Takata, closes #4267) +Files: src/os_mswin.c, src/proto/ex_getln.pro, src/proto/gui_w32.pro, + src/terminal.c, src/proto/terminal.pro, src/proto/window.pro, + src/window.c + +Patch 8.1.1183 +Problem: Typos in VisVim comments. +Solution: Correct the typos. (Christ van Willegen) +Files: src/VisVim/Commands.cpp, src/VisVim/OleAut.cpp, + src/VisVim/README_VisVim.txt + +Patch 8.1.1184 +Problem: Undo file left behind after running test. +Solution: Delete the undo file. (Dominique Pelle, closes #4279) +Files: src/testdir/test_filechanged.vim + +Patch 8.1.1185 +Problem: Mapping for CTRL-X is inconsistent. +Solution: Map CTRL-X to "*d also for the MS-Windows console. (Ken Takata, + closes #4265) +Files: src/getchar.c + +Patch 8.1.1186 +Problem: readdir() allocates list twice. +Solution: Remove second allocation. Also check for zero length. +Files: src/evalfunc.c + +Patch 8.1.1187 +Problem: Cannot recognize Pipfile. +Solution: Use existing filetypes. (Charles Ross, closes #4280) +Files: runtime/filetype.vim, src/testdir/test_filetype.vim + +Patch 8.1.1188 +Problem: Not all Vim variables require the v: prefix. +Solution: When scriptversion is 3 all Vim variables can only be used with + the v: prefix. (Ken Takata, closes #4274) +Files: src/eval.c, src/ex_cmds2.c, src/testdir/test_eval_stuff.vim, + runtime/doc/eval.txt + +Patch 8.1.1189 +Problem: Mode is not cleared when leaving Insert mode. +Solution: Clear the mode when got_int is set. (Ozaki Kiichi, closes #4270) +Files: src/edit.c, src/testdir/test_bufline.vim, + src/testdir/test_messages.vim + +Patch 8.1.1190 +Problem: has('vimscript-3') does not work. +Solution: Add "vimscript-3" to the list of features. +Files: src/evalfunc.c, src/testdir/test_eval_stuff.vim + +Patch 8.1.1191 +Problem: Not all debug commands are covered by a test. +Solution: Add more tests. (Yegappan Lakshmanan, closes #4282) +Files: src/testdir/test_debugger.vim + +Patch 8.1.1192 +Problem: Mode is not cleared when leaving Insert mode with mapped Esc. +Solution: Clear the mode when redraw_cmdline is set. (closes #4269) +Files: src/globals.h, src/screen.c, src/testdir/test_messages.vim + +Patch 8.1.1193 +Problem: Typos and small problems in test files. +Solution: Small improvements. +Files: src/testdir/test_gn.vim, src/testdir/test_quotestar.vim, + src/testdir/test_registers.vim, src/testdir/test_syntax.vim, + src/testdir/test_tabpage.vim, src/testdir/test_vartabs.vim + +Patch 8.1.1194 +Problem: Typos and small problems in source files. +Solution: Small fixes. +Files: src/channel.c, src/crypt.c, src/edit.c, src/regexp.h, src/tag.c, + src/term.c, src/terminal.c, src/userfunc.c, src/installman.sh + +Patch 8.1.1195 +Problem: Vim script debugger functionality needs cleanup. +Solution: Move debugger code to a separate file. Add more tests. (Yegappan + Lakshmanan, closes #4285) +Files: Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak, + src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/debugger.c, src/ex_cmds2.c, + src/proto.h, src/proto/debugger.pro, src/proto/ex_cmds2.pro + +Patch 8.1.1196 +Problem: Parallel build may fail. +Solution: Update dependencies. +Files: src/Makefile + +Patch 8.1.1197 +Problem: When starting with multiple tabs file messages is confusing. +Solution: Set 'shortmess' when loading the other tabs. (Christian Brabandt) +Files: src/main.c, src/testdir/test_startup.vim, + src/testdir/dumps/Test_start_with_tabs.dump + +Patch 8.1.1198 +Problem: Bracketed paste may remain active after Vim exists, because the + terminal emulater restores the setting. +Solution: Set/reset bracketed paste mode before setting the terminal mode. + (closes #3579) +Files: src/term.c + + +Patch 8.1.1199 +Problem: No test for :abclear. +Solution: Add a test. (Dominique Pelle, closes #4292) +Files: src/testdir/test_mapping.vim + +Patch 8.1.1200 +Problem: Old style comments in debugger source. +Solution: Use new style comments. (Yegappan Lakshmanan, closes #4286) +Files: src/README.md, src/debugger.c + +Patch 8.1.1201 +Problem: Output of :command is hard to read. +Solution: Make some columns wider, some narrower. Truncate the command when + listing all. +Files: src/ex_docmd.c, src/message.c, src/proto/message.pro, + src/getchar.c, src/menu.c + +Patch 8.1.1202 +Problem: Always get regexp debugging logs when building with -DDEBUG. +Solution: By default do not create regexp debugging logs. (Ken Takata) +Files: src/regexp.c + +Patch 8.1.1203 +Problem: Some autocmd tests are old style. +Solution: Turn the tests into new style. (Yegappan Lakshmanan, closes #4295) +Files: src/Makefile, src/testdir/Make_all.mak, + src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms, + src/testdir/test11.in, src/testdir/test11.ok, + src/testdir/test_autocmd.vim + +Patch 8.1.1204 +Problem: Output of :command with address completion is not nice. +Solution: Shorten the address completion names. +Files: src/ex_docmd.c, runtime/doc/map.txt + +Patch 8.1.1205 +Problem: A BufReadPre autocommand may cause the cursor to move. +Solution: Restore the cursor position after executing the autocommand, + unless the autocommand moved it. (Christian Brabandt, + closes #4302, closes #4294) +Files: src/autocmd.c, src/proto/window.pro, src/structs.h, + src/testdir/test_autocmd.vim, src/window.c + +Patch 8.1.1206 +Problem: User command parsing and listing not properly tested. +Solution: Add more tests. (Dominique Pelle, closes #4296) +Files: src/testdir/test_usercommands.vim + +Patch 8.1.1207 +Problem: Some compilers give warning messages. +Solution: Initialize variables, change printf() argument. (Christian + Brabandt, closes #4305) +Files: src/eval.c, src/screen.c, src/undo.c, src/window.c + +Patch 8.1.1208 +Problem: Links to repository use wrong file name. +Solution: Swap the file names. (Nahuel Ourthe, closes #4304) +Files: src/README.md + +Patch 8.1.1209 +Problem: Clever compiler warns for buffer being too small. +Solution: Make the buffer bigger (even though it's not really needed). +Files: src/evalfunc.c, src/syntax.c + +Patch 8.1.1210 +Problem: Support for user commands is spread out. No good reason to make + user commands optional. +Solution: Move user command support to usercmd.c. Always enable the + user_commands feature. +Files: src/usercmd.c, src/proto/usercmd.pro, Filelist, src/Make_bc5.mak, + src/Make_cyg_ming.mak, src/Make_dice.mak, src/Make_ivc.mak, + src/Make_manx.mak, src/Make_morph.mak, src/Make_mvc.mak, + src/Make_sas.mak, src/Make_vms.mms, src/Makefile, src/README.md, + src/buffer.c, src/eval.c, src/evalfunc.c, src/ex_cmds.h, + src/ex_docmd.c, src/proto/ex_docmd.pro, src/ex_getln.c, + src/feature.h, src/macros.h, src/misc2.c, src/proto.h, + src/structs.h, src/version.c, runtime/doc/eval.txt, + runtime/doc/various.txt + +Patch 8.1.1211 +Problem: Not all user command code is tested. +Solution: Add more tests. +Files: src/testdir/test_usercommands.vim + +Patch 8.1.1212 +Problem: Signal PWR is not tested. +Solution: Test that PWR updates the swap file. (Dominique Pelle, + closes #4312) +Files: src/testdir/test_signals.vim + +Patch 8.1.1213 +Problem: "make clean" in top dir does not cleanup indent test output. +Solution: Clean the indent test output. Do not rely on the vim executable + for that. (closes #4307) +Files: Makefile, runtime/indent/Makefile, + runtime/indent/testdir/cleantest.vim + +Patch 8.1.1214 +Problem: Old style tests. +Solution: Move tests from test14 to new style test files. (Yegappan + Lakshmanan, closes #4308) +Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, + src/testdir/test14.in, src/testdir/test14.ok, + src/testdir/test_edit.vim, src/testdir/test_normal.vim, + src/testdir/test_search.vim, src/testdir/test_substitute.vim, + src/testdir/test_visual.vim + +Patch 8.1.1215 +Problem: "make clean" does not remove generated src/po files. +Solution: Remove the files for "make clean". (Christian Brabandt) +Files: src/po/Makefile + +Patch 8.1.1216 +Problem: Mouse middle click is not tested. +Solution: Add a test. (Dominique Pelle, closes #4310) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1217 +Problem: MS-Windows: no space reserved for font quality name. +Solution: Add quality_name length if present. (Ken Takata, closes #4311) +Files: src/gui_w32.c + +Patch 8.1.1218 +Problem: Cannot set a directory for a tab page. +Solution: Add the tab-local directory. (Yegappan Lakshmanan, closes #4212) +Files: runtime/doc/autocmd.txt, runtime/doc/editing.txt, + runtime/doc/eval.txt, runtime/doc/index.txt, + runtime/doc/options.txt, runtime/doc/usr_22.txt, + runtime/doc/usr_41.txt, src/eval.c, src/evalfunc.c, + src/ex_cmdidxs.h, src/ex_cmds.h, src/ex_docmd.c, src/if_py_both.h, + src/proto/eval.pro, src/proto/ex_docmd.pro, src/structs.h, + src/testdir/test_getcwd.vim, src/testdir/test_mksession.vim, + src/window.c + +Patch 8.1.1219 +Problem: Not checking for NULL return from alloc(). +Solution: Add checks. (Martin Kunev, closes #4303, closes #4174) +Files: src/beval.c, src/blowfish.c, src/crypt.c, src/crypt_zip.c, + src/ops.c, src/option.c, src/popupmnu.c, src/proto/blowfish.pro, + src/proto/crypt_zip.pro, src/gui_gtk_f.c, src/gui_gtk_x11.c, + src/libvterm/src/state.c, src/libvterm/src/termscreen.c + +Patch 8.1.1220 (after 8.1.1219) +Problem: Build fails on MS-Windows. +Solution: Move declaration to start of block. +Files: src/libvterm/src/state.c + +Patch 8.1.1221 +Problem: Filtering does not work when listing marks. +Solution: Implement filtering marks. (Marcin Szamotulski, closes #3895) +Files: runtime/doc/various.txt, src/mark.c, + src/testdir/test_filter_cmd.vim + +Patch 8.1.1222 (after 8.1.1219) +Problem: Build still fails on MS-Windows. +Solution: Move another declaration to start of block. +Files: src/libvterm/src/state.c + +Patch 8.1.1223 +Problem: Middle mouse click test fails without a clipboard. +Solution: Check if the clipboard can be used. (Dominique Pelle, Christian + Brabandt) Also use WorkingClipboard() instead of checking for the + "clipboard" feature. +Files: src/testdir/test_termcodes.vim, src/testdir/test_quotestar.vim + +Patch 8.1.1224 +Problem: MS-Windows: cannot specify font weight. +Solution: Add the "W" option to 'guifont'. (closes #4309) Move GUI font + explanation out of options.txt. +Files: runtime/doc/options.txt, runtime/doc/gui.txt, + runtime/doc/mbyte.txt, src/gui_w32.c, src/os_mswin.c + +Patch 8.1.1225 +Problem: Cannot create a pty to use with :terminal on FreeBSD. +Solution: Add support for posix_openpt(). (Ozaki Kiichi, closes #4306, + closes #4289) +Files: src/configure.ac, src/config.h.in, src/auto/configure, src/pty.c + +Patch 8.1.1226 +Problem: {not in Vi} remarks get in the way of useful help text. +Solution: Make a list of all Vi options, instead of mentioning what Vi does + not have. Update the help text for options. +Files: runtime/doc/vi_diff.txt, runtime/doc/options.txt + +Patch 8.1.1227 +Problem: Duplicate entries in the generated .desktop files. (Ralf Schandl) +Solution: Remove translated entries from the .in files. (closes #4313) +Files: src/po/gvim.desktop.in, src/po/vim.desktop.in + +Patch 8.1.1228 +Problem: Not possible to process tags with a function. +Solution: Add tagfunc() (Christian Brabandt, Andy Massimino, closes #4010) +Files: runtime/doc/options.txt, runtime/doc/tagsrch.txt, + runtime/optwin.vim, src/buffer.c, src/dict.c, src/ex_cmds.c, + src/globals.h, src/insexpand.c, src/normal.c, src/option.c, + src/option.h, src/proto/dict.pro, src/structs.h, src/tag.c, + src/testdir/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_tagfunc.vim, src/vim.h, src/window.c + +Patch 8.1.1229 +Problem: Warning for posix_openpt() not declared. (Tony Mechelynck) +Solution: Add declaration. +Files: src/pty.c + +Patch 8.1.1230 +Problem: A lot of code is shared between vim.exe and gvim.exe. +Solution: Optionally put the shared code in vim.dll. (Ken Takata, + closes #4287) +Files: Filelist, nsis/gvim.nsi, runtime/doc/gui_w32.txt, + src/Make_cyg_ming.mak, src/Make_mvc.mak, src/channel.c, + src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/feature.h, + src/fileio.c, src/getchar.c, src/globals.h, src/gui.c, src/gui.h, + src/gui_gtk_x11.c, src/gui_w32.c, src/if_mzsch.c, src/main.c, + src/mbyte.c, src/memline.c, src/message.c, src/misc2.c, + src/normal.c, src/option.c, src/os_mswin.c, src/os_w32dll.c, + src/os_w32exe.c, src/os_win32.c, src/os_win32.h, + src/proto/gui.pro, src/proto/gui_w32.pro, src/proto/misc2.pro, + src/proto/os_mswin.pro, src/proto/os_win32.pro, src/syntax.c, + src/term.c, src/terminal.c, src/ui.c, src/version.c, src/vim.rc + +Patch 8.1.1231 +Problem: Asking about existing swap file unnecessarily. +Solution: When it is safe, delete the swap file. Remove + HAS_SWAP_EXISTS_ACTION, it is always defined. (closes #1237) +Files: src/memline.c, src/globals.h, src/buffer.c, src/ex_cmds.c, + src/fileio.c, src/main.c, src/testdir/test_swap.vim, + runtime/doc/usr_11.txt, src/os_win32.c, src/proto/os_win32.pro, + src/os_unix.c, src/proto/os_unix.pro + +Patch 8.1.1232 +Problem: Can't build on MS-Windows. +Solution: Define process_still_running. +Files: src/memline.c, src/os_win32.c, src/proto/os_win32.pro, + src/os_unix.c, src/proto/os_unix.pro + +Patch 8.1.1233 +Problem: Cannot build tiny version. +Solution: Remove #ifdef for verb_msg(). +Files: src/message.c + +Patch 8.1.1234 +Problem: Swap file test fails on MS-Windows. +Solution: Only compare the tail of the file names. +Files: src/testdir/test_swap.vim + +Patch 8.1.1235 +Problem: Compiler warnings for using STRLEN() value. +Solution: Cast to int. (Christian Brabandt, Mike Williams) +Files: src/tag.c + +Patch 8.1.1236 +Problem: sjiscorr.c not found in shadow directory. (Tony Mechelynck) +Solution: Link po/*.c files with "make shadow". +Files: src/Makefile + +Patch 8.1.1237 +Problem: Error for using "compl", reserved word in C++. +Solution: Rename to "complp". (suggestion by Ken Takata) +Files: src/usercmd.c, src/proto/usercmd.pro + +Patch 8.1.1238 +Problem: MS-Windows: compiler warning for sprintf() format. +Solution: Change %d to %ld. (Ken Takata) +Files: src/gui_w32.c + +Patch 8.1.1239 +Problem: Key with byte sequence containing CSI does not work. +Solution: Do not recognize CSI as special unless the GUI is active. (Ken + Takata, closes #4318) +Files: src/getchar.c + +Patch 8.1.1240 +Problem: Runtime desktop files are overwritten by build. (Tony Mechelynck) +Solution: Instead of copying the files find them with "make install". +Files: src/Makefile, src/po/Makefile + +Patch 8.1.1241 +Problem: Ex command info contains confusing information. +Solution: When using the NOTADR flag use ADDR_OTHER for the address type. + Cleanup code using NOTADR. Check for errors in + create_cmdidxs.vim. Adjust Makefile to see the errors. +Files: src/ex_cmds.h, src/ex_docmd.c, src/Makefile, + src/create_cmdidxs.vim, src/usercmd.c, src/ex_cmds.c, + src/window.c, src/testdir/test_usercommands.vim + +Patch 8.1.1242 +Problem: No cmdline redraw when tabpages have different 'cmdheight'. +Solution: redraw the command line when 'cmdheight' changes when switching + tabpages. (closes #4321) +Files: src/testdir/test_tabpage.vim, src/window.c, + src/testdir/dumps/Test_tabpage_cmdheight.dump, + src/testdir/screendump.vim + +Patch 8.1.1243 (after 8.1.1241) +Problem: Compiler warnings for incomplete switch statement. (Tony + Mechelynck) +Solution: Add ADDR_QUICKFIX to the list. +Files: src/ex_docmd.c + +Patch 8.1.1244 +Problem: No tests for CTRL-mouse-click. +Solution: Add a few tests. (Dominique Pelle, closes #4323) +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1245 +Problem: ":copen 10" sets height in full-height window. (Daniel Hahler) +Solution: Don't set the height if the quickfix window is full height. + (closes #4325) +Files: src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.1246 +Problem: Cannot handle negative mouse coordinate from urxvt. +Solution: Accept '-' where a digit is expected. (Vincent Vinel, + closes #4326) +Files: src/term.c + +Patch 8.1.1247 +Problem: Urxvt mouse codes are not tested. +Solution: Also set 'ttymouse' to "urxvt" in the termcodes test. +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1248 +Problem: No test for dec mouse. +Solution: Add some tests for dec mouse. Add "no_query_mouse". +Files: src/evalfunc.c, src/globals.h, src/os_unix.c, + src/testdir/test_termcodes.vim, runtime/doc/eval.txt + +Patch 8.1.1249 +Problem: Compiler warning for uninitialized variable. +Solution: Initialize it. (Christian Brabandt) +Files: src/regexp_nfa.c + +Patch 8.1.1250 +Problem: No test for netterm mouse. +Solution: Add some tests for netterm mouse. +Files: src/testdir/test_termcodes.vim + +Patch 8.1.1251 +Problem: No test for completion of mapping keys. +Solution: Add a test. Also clean up the code. +Files: src/getchar.c, src/term.c, src/proto/term.pro, + src/testdir/test_cmdline.vim + +Patch 8.1.1252 +Problem: Not all mapping completion is tested. +Solution: Add a few more mapping completion tests. +Files: src/testdir/test_cmdline.vim + +Patch 8.1.1253 (after 8.1.1252) +Problem: Mapping completion test fails. +Solution: Fix expected output. +Files: src/testdir/test_cmdline.vim + +Patch 8.1.1254 +Problem: Mapping completion contains dead code. +Solution: Remove the code. +Files: src/term.c, src/testdir/test_cmdline.vim + +Patch 8.1.1255 +Problem: Building desktop files fails on FreeBSD. (Adam Weinberger) +Solution: Avoid using non-portable construct in Makefile. (closes #4332) +Files: src/po/Makefile + +Patch 8.1.1256 +Problem: Cannot navigate through errors relative to the cursor. +Solution: Add :cabove, :cbelow, :labove and :lbelow. (Yegappan Lakshmanan, + closes #4316) +Files: runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmdidxs.h, + src/ex_cmds.h, src/ex_docmd.c, src/proto/quickfix.pro, + src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.1257 +Problem: MSVC: name of object directory not always right. +Solution: Adjust comment. Don't use different directory for DIRECTX. Do + use different directory for USE_MSVCRT. (Ken Takata, closes #4333) +Files: src/Make_mvc.mak + +Patch 8.1.1258 +Problem: The "N files to edit" message can not be surpressed. +Solution: Surpress the message with --not-a-term. (closes #4320) +Files: src/main.c + +Patch 8.1.1259 +Problem: Crash when exiting early. (Ralf Schandl) +Solution: Only pop/push the title when it was set. (closes #4334) +Files: src/os_unix.c, src/misc2.c, src/usercmd.c, src/tag.c + +Patch 8.1.1260 +Problem: Comparing with pointer instead of value. +Solution: Add a "*". (Ken Takata, closes #4336) +Files: src/usercmd.c + +Patch 8.1.1261 +Problem: No error for quickfix commands with negative range. +Solution: Add ADDR_UNSIGNED and use it for quickfix commands. Make + assert_fails() show the command if the error doesn't match. +Files: src/ex_cmds.h, src/ex_docmd.c, src/testdir/test_quickfix.vim, + runtime/doc/quickfix.txt, src/eval.c, src/quickfix.c, + src/proto/quickfix.pro, src/ex_cmds2.c + +Patch 8.1.1262 +Problem: Cannot simulate a mouse click in a test. +Solution: Add test_setmouse(). +Files: src/evalfunc.c, runtime/doc/eval.txt, runtime/doc/usr_41.txt + +Patch 8.1.1263 +Problem: Mouse clicks in WinBar not tested. +Solution: Add a test for clicking on the WinBar entries. +Files: src/testdir/test_winbar.vim + +Patch 8.1.1264 +Problem: Crash when closing window from WinBar click. (Ben Jackson) +Solution: Check that window pointer is still valid. (closes #4337) +Files: src/menu.c + +Patch 8.1.1265 +Problem: When GPM mouse support is enabled double clicks in xterm do not + work. +Solution: Use KS_GPM_MOUSE for GPM mouse events. +Files: src/term.c, src/os_unix.c, src/keymap.h + +Patch 8.1.1266 +Problem: Winbar test doesn't test enough. +Solution: Check that the WinBar actually shows up. Correct check for clicks + with no effect. (Ben Jackson, closes #4338) +Files: src/testdir/test_winbar.vim + +Patch 8.1.1267 +Problem: Cannot check if GPM mouse support is working. +Solution: Add the "mouse_gpm_enable" feature. +Files: src/evalfunc.c, src/os_unix.c, src/proto/os_unix.pro, + runtime/doc/eval.txt + +Patch 8.1.1268 +Problem: Map completion test fails in GUI. +Solution: Skip the test that fails. +Files: src/testdir/test_cmdline.vim + +Patch 8.1.1269 +Problem: MS-Windows GUI: multibyte chars with a 0x80 byte do not work when + compiled with VIMDLL. +Solution: Adjust the condition for fixing the input buffer. (Ken Takata, + closes #4330) +Files: src/getchar.c + +Patch 8.1.1270 +Problem: Cannot see current match position. +Solution: Show "3/44" when using the "n" command and "S" is not in + 'shortmess'. (Christian Brabandt, closes #4317) +Files: runtime/doc/options.txt, runtime/doc/pattern.txt, src/option.c, + src/option.h, src/search.c, src/testdir/Make_all.mak, + src/testdir/test_search_stat.vim + +Patch 8.1.1271 (after 8.1.1270) +Problem: Compiler warnings for use of STRNCPY(). (John Marriott) +Solution: Use mch_memmove() instead of STRNCPY(). +Files: src/search.c + +Patch 8.1.1272 +Problem: Click on WinBar of other window not tested. +Solution: Add a test case. +Files: src/testdir/test_winbar.vim + +Patch 8.1.1273 +Problem: Compiler warning in direct write code. +Solution: Add a type cast. +Files: src/gui_dwrite.cpp + +Patch 8.1.1274 +Problem: After :unmenu can still execute the menu with :emenu. +Solution: Do not execute a menu that was disabled for the specified mode. +Files: src/menu.c, src/testdir/test_menu.vim + +Patch 8.1.1275 +Problem: Cannot navigate to errors before/after the cursor. +Solution: Add the :cbefore and :cafter commands. (Yegappan Lakshmanan, + closes #4340) +Files: runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmdidxs.h, + src/ex_cmds.h, src/quickfix.c, src/testdir/test_quickfix.vim + +Patch 8.1.1276 +Problem: Cannot combine text properties with syntax highlighting. +Solution: Add the "combine" field to prop_type_add(). (closes #4343) +Files: runtime/doc/eval.txt, runtime/doc/textprop.txt, src/screen.c, + src/testprop.c, src/structs.h, src/testdir/test_textprop.vim + +Patch 8.1.1277 (after 8.1.1276) +Problem: Missing screenshot update. +Solution: Update the screenshot. +Files: src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.1278 (after 8.1.1276) +Problem: Missing change for "combine" field. +Solution: Also change the textprop implementation. +Files: src/textprop.c + +Patch 8.1.1279 +Problem: Cannot set 'spellang' to "sr@latin". (Bojan Stipic) +Solution: Allow using '@' in 'spellang'. (closes #4342) +Files: src/option.c, src/testdir/gen_opt_test.vim + +Patch 8.1.1280 +Problem: Remarks about functionality not in Vi clutters the help. +Solution: Move all info about what is new in Vim or already existed in Vi to + vi_diff.txt. Remove {not in Vi} remarks. (closes #4268) Add + "noet" to the help files modeline. Also include many other help + file improvements. +Files: runtime/doc/vi_diff.txt, runtime/doc/arabic.txt, + runtime/doc/autocmd.txt, runtime/doc/change.txt, + runtime/doc/channel.txt, runtime/doc/cmdline.txt, + runtime/doc/debugger.txt, runtime/doc/debug.txt, + runtime/doc/develop.txt, runtime/doc/diff.txt, + runtime/doc/digraph.txt, runtime/doc/editing.txt, + runtime/doc/eval.txt, runtime/doc/farsi.txt, + runtime/doc/filetype.txt, runtime/doc/fold.txt, + runtime/doc/ft_ada.txt, runtime/doc/ft_rust.txt, + runtime/doc/ft_sql.txt, runtime/doc/gui.txt, + runtime/doc/gui_w32.txt, runtime/doc/gui_x11.txt, + runtime/doc/hangulin.txt, runtime/doc/hebrew.txt, + runtime/doc/helphelp.txt, runtime/doc/help.txt, + runtime/doc/howto.txt, runtime/doc/if_cscop.txt, + runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt, + runtime/doc/if_ole.txt, runtime/doc/if_perl.txt, + runtime/doc/if_pyth.txt, runtime/doc/if_ruby.txt, + runtime/doc/if_sniff.txt, runtime/doc/if_tcl.txt, + runtime/doc/indent.txt, runtime/doc/index.txt, + runtime/doc/insert.txt, runtime/doc/intro.txt, + runtime/doc/map.txt, runtime/doc/mbyte.txt, + runtime/doc/message.txt, runtime/doc/mlang.txt, + runtime/doc/motion.txt, runtime/doc/netbeans.txt, + runtime/doc/options.txt, runtime/doc/os_390.txt, + runtime/doc/os_amiga.txt, runtime/doc/os_beos.txt, + runtime/doc/os_dos.txt, runtime/doc/os_mac.txt, + runtime/doc/os_mint.txt, runtime/doc/os_msdos.txt, + runtime/doc/os_os2.txt, runtime/doc/os_qnx.txt, + runtime/doc/os_risc.txt, runtime/doc/os_unix.txt, + runtime/doc/os_vms.txt, runtime/doc/os_win32.txt, + runtime/doc/pattern.txt, runtime/doc/pi_getscript.txt, + runtime/doc/pi_gzip.txt, runtime/doc/pi_logipat.txt, + runtime/doc/pi_netrw.txt, runtime/doc/pi_paren.txt, + runtime/doc/pi_spec.txt, runtime/doc/pi_tar.txt, + runtime/doc/pi_vimball.txt, runtime/doc/pi_zip.txt, + runtime/doc/print.txt, runtime/doc/quickfix.txt, + runtime/doc/quickref.txt, runtime/doc/quotes.txt, + runtime/doc/recover.txt, runtime/doc/remote.txt, + runtime/doc/repeat.txt, runtime/doc/rileft.txt, + runtime/doc/russian.txt, runtime/doc/scroll.txt, + runtime/doc/sign.txt, runtime/doc/spell.txt, + runtime/doc/sponsor.txt, runtime/doc/starting.txt, + runtime/doc/syntax.txt, runtime/doc/tabpage.txt, + runtime/doc/tagsrch.txt, runtime/doc/terminal.txt, + runtime/doc/term.txt, runtime/doc/textprop.txt, + runtime/doc/tips.txt, runtime/doc/todo.txt, + runtime/doc/uganda.txt, runtime/doc/undo.txt, + runtime/doc/usr_01.txt, runtime/doc/usr_02.txt, + runtime/doc/usr_03.txt, runtime/doc/usr_04.txt, + runtime/doc/usr_05.txt, runtime/doc/usr_06.txt, + runtime/doc/usr_07.txt, runtime/doc/usr_08.txt, + runtime/doc/usr_09.txt, runtime/doc/usr_10.txt, + runtime/doc/usr_11.txt, runtime/doc/usr_12.txt, + runtime/doc/usr_20.txt, runtime/doc/usr_21.txt, + runtime/doc/usr_22.txt, runtime/doc/usr_23.txt, + runtime/doc/usr_24.txt, runtime/doc/usr_25.txt, + runtime/doc/usr_26.txt, runtime/doc/usr_27.txt, + runtime/doc/usr_28.txt, runtime/doc/usr_29.txt, + runtime/doc/usr_30.txt, runtime/doc/usr_31.txt, + runtime/doc/usr_32.txt, runtime/doc/usr_40.txt, + runtime/doc/usr_41.txt, runtime/doc/usr_43.txt, + runtime/doc/usr_44.txt, runtime/doc/usr_45.txt, + runtime/doc/usr_90.txt, runtime/doc/usr_toc.txt, + runtime/doc/various.txt, runtime/doc/version4.txt, + runtime/doc/version5.txt, runtime/doc/version6.txt, + runtime/doc/version7.txt, runtime/doc/version8.txt, + runtime/doc/visual.txt, runtime/doc/windows.txt, runtime/doc/tags + +Patch 8.1.1281 +Problem: Cannot specify a count with :chistory. +Solution: Add a count to :chistory and :lhistory. (Yegappan Lakshmanan, + closes #4344) +Files: runtime/doc/quickfix.txt, src/ex_cmds.h, src/quickfix.c, + src/testdir/test_quickfix.vim + +Patch 8.1.1282 +Problem: Running make in src/po leaves LINGUAS file behind. (Ken Takata) +Solution: Delete LINGUAS after running msgfmt. +Files: src/po/Makefile + +Patch 8.1.1283 +Problem: Delaying half a second after the top-bot message. +Solution: Instead of the delay add "W" to the search count. +Files: src/search.c, src/testdir/test_search_stat.vim + +Patch 8.1.1284 +Problem: Detecting *.tmpl as htmlcheetah is outdated. +Solution: Use the generic name "template". (closes #4348) +Files: runtime/filetype.vim, src/testdir/test_filetype.vim + +Patch 8.1.1285 +Problem: Test17 is old style. +Solution: Turn into new style test. (Yegappan Lakshmanan, closes #4347) +Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, + src/testdir/test17.in, src/testdir/test17.ok, + src/testdir/test17a.in, src/testdir/test_checkpath.vim, + src/testdir/test_gf.vim + +Patch 8.1.1286 +Problem: Running tests leaves XTest_tabpage_cmdheight file behind. +Solution: Delete the right file. (closes #4350) +Files: src/testdir/test_tabpage.vim + +Patch 8.1.1287 +Problem: Cannot build with +eval but without +mouse. +Solution: Add #ifdefs around f_test_setmouse(). (John Marriott) +Files: src/evalfunc.c + +Patch 8.1.1288 +Problem: Search stats don't show for mapped command. +Solution: Remove SEARCH_PEEK from searchit flags. Add a test. (Christian + Brabandt) +Files: src/search.c, src/testdir/test_search_stat.vim + +Patch 8.1.1289 +Problem: May not have enough space to add "W" to search stats. +Solution: Reserve a bit more space. (Christian Brabandt) +Files: src/search.c + +Patch 8.1.1290 +Problem: .hgignore and .gitignore are either distributed or in git, not + both. +Solution: Add .gitignore to the distribution and .hgignore to git. Update + the entries. (Christian Brabandt, Ken Takata) +Files: .gitignore, .hgignore, Filelist + +Patch 8.1.1291 +Problem: Not easy to change directory and restore. +Solution: Add the chdir() function. (Yegappan Lakshmanan, closes #4358) +Files: runtime/doc/eval.txt, runtime/doc/todo.txt, + runtime/doc/usr_41.txt, src/evalfunc.c, src/ex_docmd.c, + src/if_py_both.h, src/proto/ex_docmd.pro, src/structs.h, + src/testdir/test_cd.vim + +Patch 8.1.1292 +Problem: Invalid command line arguments not tested. +Solution: Add a test. (Dominique Pelle, closes #4346) +Files: src/testdir/test_startup.vim + +Patch 8.1.1293 +Problem: MSVC files are no longer useful for debugging. Newer Visual + Studio versions cannot read them. +Solution: Delete the files. (Ken Takata, closes #4357) +Files: Filelist, src/Make_dvc.mak, src/Make_ivc.mak, + runtime/doc/debug.txt, src/INSTALLpc.txt, src/Make_mvc.mak + +Patch 8.1.1294 +Problem: MS-Windows: Some fonts return wrong average char width. +Solution: Compute the average ourselves. (Ken Takata, closes #4356) +Files: src/gui_w32.c + +Patch 8.1.1295 +Problem: When vimrun.exe does not exist external command may fail. +Solution: Use "cmd /c" twice to get the same behavior. (Ken Takata, + closes #4355) +Files: src/os_win32.c + +Patch 8.1.1296 +Problem: Crash when using invalid command line argument. +Solution: Check for options not being initialized. +Files: src/term.c, src/testdir/test_startup.vim + +Patch 8.1.1297 +Problem: Invalid argument test fails without GTK. +Solution: Test -display and --display separately. +Files: src/testdir/test_startup.vim + +Patch 8.1.1298 +Problem: Invalid argument test fails without X clipboard. +Solution: Test -display only with the +xterm_clipboard feature. +Files: src/testdir/test_startup.vim + +Patch 8.1.1299 +Problem: "extends" from 'listchars' is used when 'list' is off. (Hiroyuki + Yoshinaga) +Solution: Only use the "extends" character when 'list' is on. (Hirohito + Higashi, closes #4360) +Files: src/screen.c, src/testdir/test_listchars.vim + +Patch 8.1.1300 +Problem: In a terminal 'ballooneval' does not work right away. +Solution: Flush output after drawing the balloon. Add the <Ignore> key + code. Add a test. +Files: src/ex_cmds2.c, src/testdir/test_balloon.vim, src/misc2.c, + src/testdir/Make_all.mak, + src/testdir/dumps/Test_balloon_eval_term_01.dump + +Patch 8.1.1301 +Problem: When compiled with VIMDLL some messages are not shown. +Solution: Set/reset gui.in_use and gui.starting as needed. (Ken Takata, + closes #4361) +Files: src/gui_w32.c, src/main.c, src/message.c + +Patch 8.1.1302 +Problem: v:beval_text is not tested in Visual mode. +Solution: Add a screenshot of the balloon in Visual mode. +Files: src/testdir/test_balloon.vim, src/normal.c, + src/testdir/dumps/Test_balloon_eval_term_01.dump, + src/testdir/dumps/Test_balloon_eval_term_02.dump + +Patch 8.1.1303 +Problem: Not possible to hide a balloon. +Solution: Hide the balloon when balloon_show() is called with an empty + string or list. Add balloon_gettext(). +Files: src/evalfunc.c, src/popupmnu.c, src/gui_beval.c, src/gui_w32.c, + src/beval.h, src/testdir/test_balloon.vim, runtime/doc/eval.txt + +Patch 8.1.1304 +Problem: MS-Windows: compiler warning for unused value. +Solution: Adjust #ifdefs. (Ken Takata, closes #4363) +Files: src/gui.c + +Patch 8.1.1305 +Problem: There is no easy way to manipulate environment variables. +Solution: Add environ(), getenv() and setenv(). (Yasuhiro Matsumoto, + closes #2875) +Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c, + src/testdir/Make_all.mak, src/testdir/test_environ.vim + +Patch 8.1.1306 +Problem: Borland support is outdated and doesn't work. +Solution: Remove Borland support, there are other (free) compilers + available. (Thomas Dziedzic, Ken Takata, closes #4364) +Files: .gitignore, .hgignore, Filelist, runtime/doc/debug.txt, + runtime/doc/develop.txt, runtime/doc/usr_90.txt, + src/GvimExt/Make_bc5.mak, src/GvimExt/gvimext.cpp, + src/GvimExt/gvimext.rc, src/INSTALLpc.txt, src/Make_bc5.mak, + src/dosinst.c, src/dosinst.h, src/evalfunc.c, src/ex_cmds.c, + src/ex_getln.c, src/gui_w32.c, src/if_ole.cpp, src/if_py_both.h, + src/main.c, src/mark.c, src/message.c, src/misc1.c, src/misc2.c, + src/normal.c, src/option.c, src/os_mswin.c, src/os_w32exe.c, + src/os_win32.c, src/os_win32.h, src/proto.h, src/screen.c, + src/spell.c, src/spellfile.c, src/syntax.c, src/userfunc.c, + src/vim.h, src/vim.rc, src/vimrun.c, src/xxd/Make_bc5.mak, + src/xxd/xxd.c + +Patch 8.1.1307 +Problem: Cannot reconnect to the X server after it restarted. +Solution: Add the :xrestore command. (Adrian Kocis, closes #844) +Files: runtime/doc/index.txt, runtime/doc/various.txt, src/os_unix.c, + src/proto/os_unix.pro, src/globals.h, src/ex_cmds.h, + src/ex_cmdidxs.h, src/ex_docmd.c, src/testdir/test_paste.vim + +Patch 8.1.1308 +Problem: The Normal highlight is not defined when compiled with GUI. +Solution: Always define Normal. (Christian Brabandt, closes #4072) +Files: runtime/doc/syntax.txt, src/syntax.c, + src/testdir/test_highlight.vim + +Patch 8.1.1309 (after 8.1.1308) +Problem: Test for Normal highlight fails on MS-Windows GUI. +Solution: Skip the test for MS-Windows GUI. +Files: src/testdir/test_highlight.vim + +Patch 8.1.1310 +Problem: Named function arguments are never optional. +Solution: Support optional function arguments with a default value. (Andy + Massimino, closes #3952) +Files: runtime/doc/eval.txt, src/structs.h, + src/testdir/test_user_func.vim, src/userfunc.c + +Patch 8.1.1311 +Problem: Aborting an autocmd with an exception is not tested. +Solution: Add a test. Also shows how to abort a command by throwing an + exception. +Files: src/testdir/test_autocmd.vim + +Patch 8.1.1312 +Problem: Coverity warning for using uninitialized variable. +Solution: Clear exarg_T. +Files: src/quickfix.c, src/channel.c, src/ex_cmds2.c + +Patch 8.1.1313 +Problem: Warnings for using localtime() and ctime(). +Solution: Use localtime_r() if available. Avoid using ctime(). +Files: src/configure.ac, src/auto/configure, src/config.h.in, + src/evalfunc.c, src/nbdebug.c, src/undo.c, src/memline.c, + src/proto/memline.pro, src/hardcopy.c + +Patch 8.1.1314 +Problem: MSVC makefile is not nicely indented. +Solution: Addjust spaces in preprocessor directives. (Ken Takata) +Files: src/Make_mvc.mak + +Patch 8.1.1315 +Problem: There is always a delay if a termrequest is never answered. +Solution: When the response is not received within two seconds consider the + request to have failed. +Files: src/term.c + +Patch 8.1.1316 +Problem: Duplicated localtime() call. +Solution: Delete one. +Files: src/undo.c + +Patch 8.1.1317 +Problem: Output from Travis can be improved. +Solution: Add section headers. Handle errors better. (closes #4098) +Files: .travis.yml, configure + +Patch 8.1.1318 +Problem: Code for text changes is in a "misc" file. +Solution: Move the code to change.c. +Files: src/misc1.c, src/proto/misc1.pro, src/change.c, + src/proto/change.pro, src/proto.h, src/memline.c, Filelist, + src/Make_cyg_ming.mak, src/Make_dice.mak, src/Make_manx.mak, + src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak, + src/Make_vms.mms, src/Makefile, src/README.md + +Patch 8.1.1319 +Problem: Computing function length name in many places. +Solution: compute name length in call_func(). +Files: src/eval.c, src/userfunc.c, src/channel.c, src/evalfunc.c, + src/ex_cmds2.c, src/regexp.c, src/terminal.c + +Patch 8.1.1320 +Problem: It is not possible to track changes to a buffer. +Solution: Add listener_add() and listener_remove(). No docs or tests yet. +Files: src/structs.h, src/change.c, src/proto/change.pro + +Patch 8.1.1321 +Problem: No docs or tests for listener functions. +Solution: Add help and tests for listener_add() and listener_remove(). + Invoke the callbacks before redrawing. +Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, + src/testdir/test_listener.vim, src/testdir/Make_all.mak, + src/change.c, src/screen.c, src/evalfunc.c, src/proto/evalfunc.pro + +Patch 8.1.1322 +Problem: Cygwin makefile is not nicely indented. +Solution: Addjust spaces in preprocessor directives. (Ken Takata) +Files: src/Make_cyg_ming.mak + +Patch 8.1.1323 +Problem: 'mouse' option is reset when using GPM mouse. +Solution: Add flag for GPM mouse. +Files: src/term.c + +Patch 8.1.1324 +Problem: Stray comma in VMS makefile. +Solution: Remove the comma. (Naruhiko Nishino, closes #4368) +Files: src/Make_vms.mms + +Patch 8.1.1325 +Problem: Cannot build with +eval but without +channel and +timers. (John + Marriott) +Solution: Adjust #ifdef for get_callback(). +Files: src/evalfunc.c, src/testdir/test_autocmd.vim + +Patch 8.1.1326 +Problem: No test for listener with partial. +Solution: Add a test. Add example to help. +Files: src/testdir/test_listener.vim, runtime/doc/eval.txt + +Patch 8.1.1327 +Problem: Unnecessary scroll after horizontal split. +Solution: Don't adjust to fraction if all the text fits in the window. + (Martin Kunev, closes #4367) +Files: src/testdir/test_window_cmd.vim, src/window.c + +Patch 8.1.1328 +Problem: No test for listener with undo operation. +Solution: Add a test. +Files: src/testdir/test_listener.vim + +Patch 8.1.1329 +Problem: Plans for popup window support are spread out. +Solution: Add a first version of the popup window help. +Files: runtime/doc/popup.txt, runtime/doc/Makefile, runtime/doc/help.txt + +Patch 8.1.1330 +Problem: Using bold attribute in terminal changes the color. (Jason + Franklin) +Solution: Don't set the "bold-highbright" flag in vterm unless the terminal + supports less than 16 colors. +Files: src/terminal.c, src/testdir/test_terminal.vim, + src/testdir/dumps/Test_terminal_all_ansi_colors.dump + +Patch 8.1.1331 +Problem: Test 29 is old style. +Solution: Turn it into a new style test. (Yegappan Lakshmanan, closes #4370) +Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, + src/testdir/test29.in, src/testdir/test29.ok, + src/testdir/test_backspace_opt.vim, src/testdir/test_join.vim + +Patch 8.1.1332 +Problem: Cannot flush change listeners without also redrawing. The line + numbers in the list of changes may become invalid. +Solution: Add listener_flush(). Invoke listeners before adding a change + that makes line numbers invalid. +Files: src/evalfunc.c, src/change.c, src/proto/change.pro, + src/screen.c, runtime/doc/eval.txt, src/testdir/test_listener.vim + +Patch 8.1.1333 +Problem: Text properties don't always move after changes. +Solution: Update properties before reporting changes to listeners. Move text + property when splitting a line. +Files: src/change.c, src/ex_cmds.c, src/textprop.c, + src/proto/textprop.pro, src/testdir/test_textprop.vim + +Patch 8.1.1334 +Problem: When buffer is hidden "F" in 'shortmess' is not used. +Solution: Check the "F" flag in 'shortmess' when the buffer is already + loaded. (Jason Franklin) Add test_getvalue() to be able to test + this. +Files: src/buffer.c, src/evalfunc.c, src/testdir/test_options.vim, + runtime/doc/eval.txt + +Patch 8.1.1335 +Problem: Listener callback is called after inserting text. +Solution: Flush the changes before inserting or deleting a line. Store + changes per buffer. +Files: src/change.c, src/proto/change.pro, src/memline.c, + src/structs.h, src/testdir/test_listener.vim + +Patch 8.1.1336 +Problem: Some eval functionality is not covered by tests. +Solution: Add a few more test cases. (Masato Nishihata, closes #4374) +Files: src/testdir/test_bufline.vim, src/testdir/test_cindent.vim, + src/testdir/test_cursor_func.vim, src/testdir/test_delete.vim, + src/testdir/test_expand_func.vim, src/testdir/test_float_func.vim, + src/testdir/test_fnamemodify.vim, src/testdir/test_functions.vim + +Patch 8.1.1337 +Problem: Get empty text prop when splitting line just after text prop. +Solution: Do not create an empty text prop at the start of the line. +Files: src/textprop.c, src/testdir/test_textprop.vim + +Patch 8.1.1338 +Problem: Hang when concealing the '>' shown for a wide char that doesn't + fit in the last cell. +Solution: Put back the pointer when the '>' is not going to be displayed. + (closes #4377) +Files: src/screen.c + +Patch 8.1.1339 +Problem: Installer needs to product name et al. +Solution: Add a few lines to the NSIS installer script. (Ken Takata) +Files: nsis/gvim.nsi + +Patch 8.1.1340 +Problem: Attributes from 'cursorline' overwrite textprop. +Solution: Combine the attributes. (closes #3912) +Files: src/screen.c, src/textprop.c, src/testdir/test_textprop.vim, + src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.1341 +Problem: Text properties are lost when joining lines. +Solution: Move the text properties to the joined line. +Files: src/ops.c, src/textprop.c, src/proto/textprop.pro, + src/testdir/test_textprop.vim, + src/testdir/dumps/Test_textprop_01.dump + +Patch 8.1.1342 +Problem: Using freed memory when joining line with text property. +Solution: Use already computed length. +Files: src/ops.c + +Patch 8.1.1343 +Problem: Text properties not adjusted for Visual block mode delete. +Solution: Call adjust_prop_columns(). (closes #4384) +Files: src/ops.c, src/textprop.c, src/testdir/test_textprop.vim, + src/misc1.c, src/testdir/dumps/Test_textprop_vis_01.dump, + src/testdir/dumps/Test_textprop_vis_02.dump + +Patch 8.1.1344 +Problem: Coverity complains about possibly using a NULL pointer and copying + a string into a fixed size buffer. +Solution: Check for NULL, even though it should not happen. Use + vim_strncpy() instead of strcpy(). +Files: src/change.c, src/memline.c + +Patch 8.1.1345 +Problem: Stuck in sandbox with ":s/../\=Function/gn". +Solution: Don't skip over code to restore sandbox. (Christian Brabandt) +Files: src/ex_cmds.c, src/testdir/test_substitute.vim + +Patch 8.1.1346 +Problem: Error for Python exception does not show useful info. +Solution: Show the last line instead of the first one. (Ben Jackson, + closes #4381) +Files: src/if_py_both.h, src/testdir/test86.ok, src/testdir/test87.ok, + src/testdir/test_python2.vim, src/testdir/test_python3.vim, + src/testdir/test_pyx2.vim, src/testdir/test_pyx3.vim + +Patch 8.1.1347 (after 8.1.1327) +Problem: Fractional scroll position not restored after closing window. +Solution: Do restore fraction if topline is not one. +Files: src/window.c, src/testdir/test_window_cmd.vim + +Patch 8.1.1348 +Problem: Running tests may cause the window to move. +Solution: Correct the reported window position for the offset with the + position after ":winpos". Works around an xterm bug. +Files: src/testdir/test_edit.vim + +Patch 8.1.1349 +Problem: If writing runs into a conversion error the backup file is + deleted. (Arseny Nasokin) +Solution: Don't delete the backup file is the file was overwritten and a + conversion error occurred. (Christian Brabandt, closes #4387) +Files: src/fileio.c, src/testdir/test_writefile.vim + +Patch 8.1.1350 +Problem: "W" for wrapping not shown when more than 99 matches. +Solution: Adjust check for length. (Masato Nishihata, closes #4388) +Files: src/search.c, src/testdir/test_search_stat.vim + +Patch 8.1.1351 +Problem: Text property wrong after :substitute. +Solution: Save for undo before changing any text properties. +Files: src/testdir/test_textprop.vim, src/ex_cmds.c, src/textprop.c, + src/proto/textprop.pro, src/change.c, src/edit.c, src/misc1.c, + src/ops.c + +Patch 8.1.1352 +Problem: Undofile() reports wrong name. (Francisco Giordano) +Solution: Clean up the name before changing path separators. (closes #4392, + closes #4394) +Files: src/evalfunc.c, src/testdir/test_undo.vim + +Patch 8.1.1353 (after 8.1.1352) +Problem: Undo test fails on Mac. +Solution: Expect "private" on the Mac. +Files: src/testdir/test_undo.vim + +Patch 8.1.1354 +Problem: Getting a list of text lines is clumsy. +Solution: Add the =<< assignment. (Yegappan Lakshmanan, closes #4386) +Files: runtime/doc/eval.txt, src/eval.c, src/testdir/test_let.vim + +Patch 8.1.1355 +Problem: Obvious mistakes are accepted as valid expressions. +Solution: Be more strict about parsing numbers. (Yasuhiro Matsumoto, + closes #3981) +Files: src/charset.c, src/eval.c, src/evalfunc.c, src/ex_cmds.c, + src/ex_getln.c, src/json.c, src/misc2.c, src/ops.c, src/option.c, + src/proto/charset.pro, src/testdir/test_expr.vim, + src/testdir/test_json.vim + +Patch 8.1.1356 +Problem: Some text in heredoc assignment ends the text. (Ozaki Kiichi) +Solution: Recognize "let v =<<" and skip until the end. +Files: src/userfunc.c, src/testdir/test_let.vim + +Patch 8.1.1357 +Problem: Test 37 is old style. +Solution: Turn it into a new style test. (Yegappan Lakshmanan, closes #4398) +Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, + src/testdir/test37.in, src/testdir/test37.ok, + src/testdir/test_scrollbind.vim + +Patch 8.1.1358 +Problem: Cannot enter character with a CSI byte. +Solution: Only check "gui.in_use" when VIMDLL is defined. (Ken Takata, + closes #4396) +Files: src/getchar.c + +Patch 8.1.1359 +Problem: Text property wrong after :substitute with backslash. +Solution: Adjust text property columns when removing backslashes. + (closes #4397) +Files: src/ex_cmds.c, src/testdir/test_textprop.vim, src/vim.h, + src/textprop.c, src/proto/textprop.pro, src/change.c, src/edit.c, + src/misc1.c, src/ops.c + +Patch 8.1.1360 (after Patch 8.1.1345) +Problem: Buffer left 'nomodifiable' after :substitute. (Ingo Karkat) +Solution: Save the value of 'modifiable' earlier' (Christian Brabandt, + closes #4403) +Files: src/ex_cmds.c, src/testdir/test_substitute.vim + +Patch 8.1.1361 +Problem: Python setuptools don't work with Python 3. +Solution: Add dummy implementation for find_module. (Joel Frederico, + closes #4402, closes #3984 +Files: src/if_py_both.h + +Patch 8.1.1362 +Problem: Code and data in tests can be hard to read. +Solution: Use the new heredoc style. (Yegappan Lakshmanan, closes #4400) +Files: src/testdir/test_autocmd.vim, src/testdir/test_balloon.vim, + src/testdir/test_bufline.vim, src/testdir/test_cindent.vim, + src/testdir/test_conceal.vim, src/testdir/test_exit.vim, + src/testdir/test_fold.vim, src/testdir/test_goto.vim, + src/testdir/test_join.vim, src/testdir/test_mksession_utf8.vim, + src/testdir/test_normal.vim, src/testdir/test_profile.vim, + src/testdir/test_quickfix.vim, src/testdir/test_startup.vim, + src/testdir/test_terminal.vim, src/testdir/test_xxd.vim + +Patch 8.1.1363 +Problem: ":vert options" does not make a vertical split. +Solution: Pass the right modifiers in $OPTWIN_CMD. (Ken Takata, + closes #4401) +Files: src/ex_cmds2.c, src/testdir/test_options.vim + +Patch 8.1.1364 +Problem: Design for popup window support needs more details. +Solution: Add details about using a window and buffer. Rename popup_show() + to popup_create() and add popup_show() and popup_hide(). +Files: runtime/doc/popup.txt + +Patch 8.1.1365 +Problem: Source command doesn't check for the sandbox. (Armin Razmjou) +Solution: Check for the sandbox when sourcing a file. +Files: src/getchar.c, src/testdir/test_source.vim + +Patch 8.1.1366 +Problem: Using expressions in a modeline is unsafe. +Solution: Disallow using expressions in a modeline, unless the + 'modelineexpr' option is set. Update help, add more tests. +Files: runtime/doc/options.txt, src/option.c, src/option.h, + src/testdir/test_modeline.vim, src/testdir/test49.in + +Patch 8.1.1367 (after 8.1.1366) +Problem: can set 'modelineexpr' in modeline. +Solution: Add P_SECURE flag. +Files: src/option.c, src/testdir/test_modeline.vim + +Patch 8.1.1368 (after 8.1.1366) +Problem: Modeline test fails with python but without pythonhome. +Solution: Correct test argument. +Files: src/testdir/test_modeline.vim + +Patch 8.1.1369 +Problem: Get E484 when using system() during GUI startup. +Solution: Check "gui.starting". (Ken Takata) +Files: src/os_win32.c + +Patch 8.1.1370 +Problem: Not using the new github feature for donations. +Solution: Add a Sponsor button. (closes #4417) +Files: .github/FUNDING.yml + +Patch 8.1.1371 +Problem: Cannot recover from a swap file. +Solution: Do not expand environment variables in the swap file name. + Do not check the extension when we already know a file is a swap + file. (Ken Takata, closes 4415, closes #4369) +Files: src/buffer.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, + src/gui.c, src/if_cscope.c, src/main.c, src/memline.c, + src/misc1.c, src/proto/memline.pro, src/proto/misc1.pro, + src/search.c, src/spell.c, src/spellfile.c, src/tag.c, + src/testdir/test_swap.vim, src/vim.h + +Patch 8.1.1372 +Problem: When evaluating 'statusline' the current window is unknown. + (Daniel Hahler) +Solution: Set "g:actual_curwin" for %{} items. Set "g:statusline_winid" + when evaluationg %!. (closes #4406, closes #3299) +Files: src/buffer.c, runtime/doc/options.txt, + src/testdir/test_statusline.vim + +Patch 8.1.1373 +Problem: "[p" in Visual mode puts in wrong line. +Solution: Call nv_put() instead of duplicating the functionality. + (closes #4408) +Files: src/normal.c, src/testdir/test_put.vim + +Patch 8.1.1374 +Problem: Check for file changed triggers too often. +Solution: Don't use "b_p_ar" when it is negative. +Files: src/fileio.c + +Patch 8.1.1375 +Problem: Without "TS" in 'shortmess' get a hit-enter prompt often. +Solution: Always truncate the search message. Also avoid putting it in the + message history. (closes #4413) +Files: src/search.c, src/main.c, src/testdir/test_search_stat.vim + +Patch 8.1.1376 +Problem: Warnings for size_t/int mixups. +Solution: Change types, add type casts. (Mike Williams) +Files: src/search.c, src/textprop.c + +Patch 8.1.1377 +Problem: MS-Windows GUI uses wrong shell command for bash. (Robert Bogomip) +Solution: Check that 'shellcmdflag' is "/c". (Ken Takata, closes #4418) +Files: src/os_win32.c + +Patch 8.1.1378 +Problem: Delete() can not handle a file name that looks like a pattern. +Solution: Use readdir() instead of appending "/*" and expanding wildcards. + (Ken Takata, closes #4424, closes #696) +Files: src/testdir/test_functions.vim, src/evalfunc.c, src/fileio.c, + src/proto/fileio.pro + +Patch 8.1.1379 (after 8.1.1374) +Problem: Filechanged test hangs. +Solution: Do not check 'autoread'. +Files: src/fileio.c, src/testdir/test_filechanged.vim + +Patch 8.1.1380 +Problem: MS-Windows building VIMDLL with MSVC: SUBSYSTEM is not set. +Solution: Invert condition. (closes #4422) +Files: src/Make_mvc.mak + +Patch 8.1.1381 +Problem: MS-Windows: missing build dependency. +Solution: Make gui_dwrite.cpp depend on gui_dwrite.h. (Ken Takata, + closes #4423 +Files: src/Make_cyg_ming.mak, src/Make_mvc.mak + +Patch 8.1.1382 +Problem: Error when editing test file. +Solution: Remove part of modeline. +Files: src/testdir/test_vimscript.vim, src/testdir/test49.vim, + src/testdir/test49.in + +Patch 8.1.1383 +Problem: Warning for size_t/int mixup. +Solution: Change type. (Mike Williams) +Files: src/search.c + +Patch 8.1.1384 +Problem: Using "int" for alloc() often results in compiler warnings. +Solution: Use "size_t" and remove type casts. Remove alloc_check(), Vim + only works with 32 bit ints anyway. +Files: src/misc2.c, src/proto/misc2.pro, src/change.c, src/ex_cmds.c, + src/netbeans.c, src/autocmd.c, src/buffer.c, src/change.c, + src/channel.c, src/charset.c, src/debugger.c, src/dict.c, + src/diff.c, src/digraph.c, src/edit.c, src/eval.c, src/evalfunc.c, + src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c, + src/ex_getln.c, src/fileio.c, src/findfile.c, src/fold.c, + src/getchar.c, src/gui.c, src/gui_at_fs.c, src/gui_gtk.c, + src/gui_gtk_x11.c, src/gui_motif.c, src/gui_w32.c, src/hashtab.c, + src/if_cscope.c, src/if_perlsfio.c, src/if_python3.c, + src/if_xcmdsrv.c, src/indent.c, src/insexpand.c, src/main.c, + src/mbyte.c, src/memfile.c, src/memline.c, src/menu.c, + src/message.c, src/misc1.c, src/misc2.c, src/netbeans.c, + src/ops.c, src/option.c, src/os_amiga.c, src/os_mswin.c, + src/os_unix.c, src/os_vms.c, src/os_win32.c, src/quickfix.c, + src/regexp.c, src/screen.c, src/spell.c, src/spellfile.c, + src/syntax.c, src/term.c, src/undo.c, src/usercmd.c, + src/userfunc.c, src/version.c, src/winclip.c + +Patch 8.1.1385 +Problem: Signed/unsigned compiler warning. +Solution: Use STRLEN() instead of strlen(). +Files: src/fileio.c + +Patch 8.1.1386 +Problem: Unessesary type casts for lalloc(). +Solution: Remove type casts. Change lalloc(size, TRUE) to alloc(size). +Files: src/buffer.c, src/change.c, src/channel.c, src/diff.c, src/edit.c, + src/eval.c, src/ex_cmds.c, src/ex_getln.c, src/fileio.c, + src/getchar.c, src/gui_mac.c, src/insexpand.c, src/gui_w32.c, + src/gui_x11.c, src/menu.c, src/netbeans.c, src/ops.c, + src/os_mswin.c, src/os_amiga.c, src/os_qnx.c, src/os_unix.c, + src/os_win32.c, src/popupmnu.c, src/quickfix.c, src/regexp.c, + src/regexp_nfa.c, src/screen.c, src/search.c, src/sign.c, + src/spell.c, src/spellfile.c, src/syntax.c, src/tag.c, + src/terminal.c, src/textprop.c, src/ui.c, src/undo.c, + src/userfunc.c, src/winclip.c, src/window.c + +Patch 8.1.1387 +Problem: Calling prop_add() in an empty buffer doesn't work. (Dominique + Pelle) +Solution: Open the memline before adding a text property. (closes #4412) +Files: src/textprop.c, src/testdir/test_textprop.vim + +Patch 8.1.1388 +Problem: Errors when calling prop_remove() for an unloaded buffer. +Solution: Bail out when the buffer is not loaded. Add a few more tests for + failing when the buffer number is invalid. +Files: src/textprop.c, src/testdir/test_textprop.vim + +Patch 8.1.1389 +Problem: Changes are not flushed when end and start overlap. (Paul Jolly) +Solution: When end of a previous changes overlaps with start of a new + change, first flush listeners. +Files: src/change.c, src/testdir/test_listener.vim + +Patch 8.1.1390 +Problem: Search stats are off when using count or offset. +Solution: Recompute the stats when needed. (Masato Nishihata, closes #4410) +Files: src/testdir/test_search_stat.vim, src/search.c + +Patch 8.1.1391 +Problem: No popup window support. +Solution: Add initial code for popup windows. Add the 'wincolor' option. +Files: Filelist, runtime/doc/popup.txt, runtime/doc/options.txt, + src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms, + src/Makefile, src/autocmd.c, src/buffer.c, src/ex_cmds.h, + src/ex_cmdidxs.h, src/proto/buffer.pro, src/eval.c src/evalfunc.c + src/feature.h, src/globals.h, src/option.c, src/option.h, + src/popupwin.c, src/proto.h, src/proto/popupwin.pro, + src/proto/window.pro, src/screen.c, src/structs.h, src/terminal.c, + src/testdir/Make_all.mak, src/testdir/dumps/Test_popupwin_01.dump, + src/testdir/test_popupwin.vim, src/vim.h, src/window.c + +Patch 8.1.1392 (after 8.1.1391) +Problem: Build failure in tiny version. +Solution: Define ex_popupclear to ex_ni if not implemented. Add UNUSED. +Files: src/ex_docmd.c, src/window.c + +Patch 8.1.1393 +Problem: Unnecessary type casts. +Solution: Remove type casts from alloc() and lalloc() calls. (Mike Williams) +Files: src/channel.c, src/crypt.c, src/dict.c, src/dosinst.c, + src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, + src/ex_getln.c, src/fileio.c, src/findfile.c, src/if_ole.cpp, + src/if_py_both.h, src/list.c, src/message.c, src/misc1.c, + src/misc2.c, src/ops.c, src/os_vms.c, src/os_win32.c, + src/quickfix.c, src/regexp_nfa.c, src/screen.c, src/search.c, + src/sign.c, src/syntax.c, src/tag.c, src/term.c, src/terminal.c, + src/textprop.c + +Patch 8.1.1394 +Problem: Not restoring t_F2 in registers test. +Solution: Assign to &t_F2 instead of t_F2. (Andy Massimino, closes #4434) +Files: src/testdir/test_registers.vim + +Patch 8.1.1395 +Problem: Saving for undo may access invalid memory. (Dominique Pelle) +Solution: Set ml_line_len also when returning a constant string. +Files: src/memline.c, src/testdir/test_textprop.vim + +Patch 8.1.1396 +Problem: 'wincolor' does not apply to lines below the buffer. +Solution: Also apply 'wincolor' to the "~" lines and the number column. +Files: src/screen.c, src/testdir/test_highlight.vim, + src/testdir/dumps/Test_wincolor_01.dump + +Patch 8.1.1397 +Problem: Build fails in tiny version. +Solution: Always define hl_combine_attr(). +Files: src/syntax.c + +Patch 8.1.1398 +Problem: Duplicate line in MSVC build file. +Solution: Remove the line. (Ken Takata, closes #4436) +Files: src/Make_mvc.mak + +Patch 8.1.1399 +Problem: Popup windows not adjusted when switching tabs. +Solution: Save and restore first_tab_popupwin. Fix closing a tabpage. +Files: src/window.c, src/popupwin.c, src/proto/popupwin.pro, + src/testdir/test_popupwin.vim, + src/testdir/dumps/Test_popupwin_02.dump, + src/testdir/dumps/Test_popupwin_03.dump, + src/testdir/dumps/Test_popupwin_04.dump + +Patch 8.1.1400 +Problem: Using global pointer for tab-local popups is clumsy. +Solution: Use the pointer in tabpage_T. +Files: src/popupwin.c, src/globals.h, src/eval.c, src/screen.c, + src/window.c + + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt index 715021e6b..cb3b241e2 100644 --- a/runtime/doc/vi_diff.txt +++ b/runtime/doc/vi_diff.txt @@ -1,4 +1,4 @@ -*vi_diff.txt* For Vim version 8.1. Last change: 2019 May 07 +*vi_diff.txt* For Vim version 8.1. Last change: 2019 May 13 VIM REFERENCE MANUAL by Bram Moolenaar @@ -199,7 +199,7 @@ Syntax highlighting. |:syntax| Text properties |textprop.txt| Vim supports highlighting text by a plugin. Property types can be - specificed with |prop_type_add()| and properties can be placed with + specified with |prop_type_add()| and properties can be placed with |prop_add()|. Spell checking. |spell| @@ -866,7 +866,7 @@ The following Ex commands are supported by Vi: ~ `:set all&`, `:set option+=value`, `:set option^=value` `:set option-=value` `:set option<` `:shell` escape to a shell -`:source` read Vim or Ex commands from a file +`:source` read Vi or Ex commands from a file `:stop` suspend the editor or escape to a shell `:substitute` find and replace text; Vi: no '&', 'i', 's', 'r' or 'I' flag, confirm prompt only supports 'y' and 'n', no highlighting @@ -901,6 +901,9 @@ Common for these commands is that Vi doesn't support the ++opt argument on The following Normal mode commands are supported by Vi: ~ +note: See the beginning of |normal-index| for the meaning of WORD, N, Nmove +and etc in the description text. + |CTRL-B| scroll N screens Backwards |CTRL-C| interrupt current (search) command |CTRL-D| scroll Down N lines (default: half a screen); Vim scrolls @@ -920,7 +923,9 @@ The following Normal mode commands are supported by Vi: ~ |CTRL-P| same as "k" |CTRL-R| in some Vi versions: same as CTRL-L |CTRL-T| jump to N older Tag in tag list -|CTRL-U| N lines Upwards (default: half a screen) +|CTRL-U| N lines Upwards (default: half a screen) {Vi used file lines + while Vim scrolls 'scroll' screen lines; makes a difference + when lines wrap} |CTRL-Y| scroll N lines downwards |CTRL-Z| suspend program (or start new shell) |CTRL-]| :ta to ident under cursor {Vi: identifier after the cursor} @@ -1055,7 +1060,7 @@ CTRL-T insert one shiftwidth of indent in current line {Vi: only when in indent} CTRL-V {char} insert next non-digit literally {Vi: no decimal byte entry} CTRL-W delete word before the cursor -CTRL-Z when 'insertmode' set: suspend Vim +CTRL-Z when 'insertmode' set: suspend Vi <Esc> end insert mode (unless 'insertmode' set) CTRL-[ same as <Esc> 0 CTRL-D delete all indent in the current line diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index 9a682e59e..187d00e4d 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1,4 +1,4 @@ -*windows.txt* For Vim version 8.1. Last change: 2019 May 05 +*windows.txt* For Vim version 8.1. Last change: 2019 May 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1192,7 +1192,6 @@ list of buffers. |unlisted-buffer| the way when you're browsing code/text buffers. The next three commands also work like this. - *:sbn* *:sbnext* :[N]sbn[ext] [+cmd] [N] Split window and go to [N]th next buffer in buffer list. diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 4ba1ab1ea..e605126fd 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2019 Feb 08 +" Last Change: 2019 May 25 " If there already is an option window, jump to that one. let buf = bufnr('option-window') @@ -415,6 +415,9 @@ call append("$", "highlight\twhich highlighting to use for various occasions") call <SID>OptionG("hl", &hl) call append("$", "hlsearch\thighlight all matches for the last used search pattern") call <SID>BinOptionG("hls", &hls) +call append("$", "wincolor\thighlight group to use for the window") +call append("$", "\t(local to window)") +call <SID>OptionL("wcr") if has("termguicolors") call append("$", "termguicolors\tuse GUI colors for the terminal") call <SID>BinOptionG("tgc", &tgc) @@ -988,6 +991,8 @@ call <SID>Header("reading and writing files") call append("$", "modeline\tenable using settings from modelines when reading a file") call append("$", "\t(local to buffer)") call <SID>BinOptionL("ml") +call append("$", "modelineexpr\tallow setting expression options from a modeline") +call <SID>BinOptionG("mle", &mle) call append("$", "modelines\tnumber of lines to check for modelines") call append("$", " \tset mls=" . &mls) call append("$", "binary\tbinary file editing") diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index 846897004..8c4395c88 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -117,10 +117,14 @@ func s:StartDebug_internal(dict) let s:startsigncolumn = &signcolumn let s:save_columns = 0 + let s:allleft = 0 if exists('g:termdebug_wide') if &columns < g:termdebug_wide let s:save_columns = &columns let &columns = g:termdebug_wide + " If we make the Vim window wider, use the whole left halve for the debug + " windows. + let s:allleft = 1 endif let s:vertical = 1 else @@ -165,6 +169,10 @@ func s:StartDebug_term(dict) " Assuming the source code window will get a signcolumn, use two more " columns for that, thus one less for the terminal window. exe (&columns / 2 - 1) . "wincmd |" + if s:allleft + " use the whole left column + wincmd H + endif endif " Create a hidden terminal window to communicate with gdb diff --git a/runtime/syntax/help.vim b/runtime/syntax/help.vim index 693a11373..673a54f98 100644 --- a/runtime/syntax/help.vim +++ b/runtime/syntax/help.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Vim help file " Maintainer: Bram Moolenaar (Bram@vim.org) -" Last Change: 2017 Oct 19 +" Last Change: 2019 May 12 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") @@ -11,7 +11,7 @@ endif let s:cpo_save = &cpo set cpo&vim -syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()]*[ \t]\+\*"me=e-1 +syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()_]*[ \t]\+\*"me=e-1 syn match helpSectionDelim "^===.*===$" syn match helpSectionDelim "^---.*--$" if has("conceal") diff --git a/runtime/syntax/tmux.vim b/runtime/syntax/tmux.vim index 62c0ce521..d32016e56 100644 --- a/runtime/syntax/tmux.vim +++ b/runtime/syntax/tmux.vim @@ -1,5 +1,5 @@ " Language: tmux(1) configuration file -" Version: 2.7 (git-e4e060f2) +" Version: 2.9a (git-0d64531f) " URL: https://github.com/ericpruitt/tmux.vim/ " Maintainer: Eric Pruitt <eric.pruitt@gmail.com> " License: 2-Clause BSD (http://opensource.org/licenses/BSD-2-Clause) @@ -64,60 +64,51 @@ endfor syn keyword tmuxOptions \ buffer-limit command-alias default-terminal escape-time exit-empty \ activity-action assume-paste-time base-index bell-action default-command -\ default-shell destroy-unattached detach-on-destroy +\ default-shell default-size destroy-unattached detach-on-destroy \ display-panes-active-colour display-panes-colour display-panes-time \ display-time exit-unattached focus-events history-file history-limit -\ key-table lock-after-time lock-command message-attr message-bg -\ message-command-attr message-command-bg message-command-fg -\ message-command-style message-fg message-limit message-style mouse -\ aggressive-resize allow-rename alternate-screen automatic-rename -\ automatic-rename-format clock-mode-colour clock-mode-style force-height -\ force-width main-pane-height main-pane-width mode-attr mode-bg mode-fg -\ mode-keys mode-style monitor-activity monitor-bell monitor-silence -\ other-pane-height other-pane-width pane-active-border-bg -\ pane-active-border-fg pane-active-border-style pane-base-index -\ pane-border-bg pane-border-fg pane-border-format pane-border-status -\ pane-border-style prefix prefix2 remain-on-exit renumber-windows -\ repeat-time set-clipboard set-titles set-titles-string silence-action -\ status status-attr status-bg status-fg status-interval status-justify -\ status-keys status-left status-left-attr status-left-bg status-left-fg -\ status-left-length status-left-style status-position status-right -\ status-right-attr status-right-bg status-right-fg status-right-length +\ key-table lock-after-time lock-command message-command-style message-limit +\ message-style mouse aggressive-resize allow-rename alternate-screen +\ automatic-rename automatic-rename-format clock-mode-colour +\ clock-mode-style main-pane-height main-pane-width mode-keys mode-style +\ monitor-activity monitor-bell monitor-silence other-pane-height +\ other-pane-width pane-active-border-style pane-base-index +\ pane-border-format pane-border-status pane-border-style prefix prefix2 +\ remain-on-exit renumber-windows repeat-time set-clipboard set-titles +\ set-titles-string silence-action status status-bg status-fg status-format +\ status-interval status-justify status-keys status-left status-left-length +\ status-left-style status-position status-right status-right-length \ status-right-style status-style synchronize-panes terminal-overrides \ update-environment user-keys visual-activity visual-bell visual-silence -\ window-active-style window-status-activity-attr window-status-activity-bg -\ window-status-activity-fg window-status-activity-style window-status-attr -\ window-status-bell-attr window-status-bell-bg window-status-bell-fg -\ window-status-bell-style window-status-bg window-status-current-attr -\ window-status-current-bg window-status-current-fg -\ window-status-current-format window-status-current-style window-status-fg -\ window-status-format window-status-last-attr window-status-last-bg -\ window-status-last-fg window-status-last-style window-status-separator -\ window-status-style window-style word-separators wrap-search xterm-keys +\ window-active-style window-size window-status-activity-style +\ window-status-bell-style window-status-current-format +\ window-status-current-style window-status-format window-status-last-style +\ window-status-separator window-status-style window-style word-separators +\ wrap-search xterm-keys syn keyword tmuxCommands \ attach attach-session bind bind-key break-pane breakp capture-pane \ capturep choose-buffer choose-client choose-tree clear-history clearhist \ clock-mode command-prompt confirm confirm-before copy-mode detach -\ detach-client display display-message display-panes displayp find-window -\ findw if if-shell join-pane joinp kill-pane kill-server kill-session -\ kill-window killp has-session has killw link-window linkw list-buffers -\ list-clients list-commands list-keys list-panes list-sessions list-windows -\ load-buffer loadb lock lock-client lock-server lock-session last-pane -\ lastp lockc locks last-window last ls lsb delete-buffer deleteb lsc lscm -\ lsk lsp lsw move-pane move-window movep movew new new-session new-window -\ neww next next-layout next-window nextl paste-buffer pasteb pipe-pane -\ pipep prev previous-layout previous-window prevl refresh refresh-client -\ rename rename-session rename-window renamew resize-pane resizep -\ respawn-pane respawn-window respawnp respawnw rotate-window rotatew run -\ run-shell save-buffer saveb select-layout select-pane select-window -\ selectl selectp selectw send send-keys send-prefix set set-buffer -\ set-environment set-hook set-option set-window-option setb setenv setw -\ show show-buffer show-environment show-hooks show-messages show-options -\ show-window-options showb showenv showmsgs showw source source-file -\ split-window splitw start start-server suspend-client suspendc swap-pane -\ swap-window swapp swapw switch-client switchc unbind unbind-key -\ unlink-window unlinkw wait wait-for +\ detach-client display display-menu display-message display-panes displayp +\ find-window findw if if-shell join-pane joinp kill-pane kill-server +\ kill-session kill-window killp has-session has killw link-window linkw +\ list-buffers list-clients list-commands list-keys list-panes list-sessions +\ list-windows load-buffer loadb lock lock-client lock-server lock-session +\ lockc last-pane lastp locks ls last-window last lsb lsc delete-buffer +\ deleteb lscm lsk lsp lsw menu move-pane move-window movep movew new +\ new-session new-window neww next next-layout next-window nextl +\ paste-buffer pasteb pipe-pane pipep prev previous-layout previous-window +\ prevl refresh refresh-client rename rename-session rename-window renamew +\ resize-pane resize-window resizep resizew respawn-pane respawn-window +\ respawnp respawnw rotate-window rotatew run run-shell save-buffer saveb +\ select-layout select-pane select-window selectl selectp selectw send +\ send-keys send-prefix set set-buffer set-environment set-hook set-option +\ set-window-option setb setenv setw show show-buffer show-environment +\ show-hooks show-messages show-options show-window-options showb showenv +\ showmsgs showw source source-file split-window splitw start start-server +\ suspend-client suspendc swap-pane swap-window swapp swapw switch-client +\ switchc unbind unbind-key unlink-window unlinkw wait wait-for let &cpo = s:original_cpo unlet! s:original_cpo s:bg s:i diff --git a/runtime/tutor/tutor.ko.utf-8 b/runtime/tutor/tutor.ko.utf-8 index f19ce7539..22ab4134c 100644 --- a/runtime/tutor/tutor.ko.utf-8 +++ b/runtime/tutor/tutor.ko.utf-8 @@ -391,7 +391,7 @@ cw 는 단어를 치환하는 것 뿐만 아니라, 내용을 삽입할 수 있 ** CTRL-g 를 누르면 파일 내에서의 현재 위치와 파일의 상태를 볼 수 있습니다. - SHIFT-G 를 누르면 파일 내의 줄로 이동합니다. ** + SHIFT-G 를 누르면 파일 내의 마지막 줄로 이동합니다. ** 주의: 아래의 단계를 따라하기 전에, 이 Lesson 전체를 먼저 읽으십시오. |