Bram Moolenaar [Fri, 24 May 2019 19:39:27 +0000 (21:39 +0200)]
patch 8.1.1389: changes are not flushed when end and start overlap
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.
Bram Moolenaar [Fri, 24 May 2019 19:22:29 +0000 (21:22 +0200)]
patch 8.1.1388: errors when calling prop_remove() for an unloaded buffer
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.
Bram Moolenaar [Fri, 24 May 2019 18:41:55 +0000 (20:41 +0200)]
patch 8.1.1387: calling prop_add() in an empty buffer doesn't work
Problem: Calling prop_add() in an empty buffer doesn't work. (Dominique
Pelle)
Solution: Open the memline before adding a text property. (closes #4412)
Bram Moolenaar [Fri, 24 May 2019 16:54:09 +0000 (18:54 +0200)]
patch 8.1.1384: using "int" for alloc() often results in compiler warnings
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.
Bram Moolenaar [Fri, 24 May 2019 12:14:14 +0000 (14:14 +0200)]
patch 8.1.1378: delete() can not handle a file name that looks like a pattern
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)
Bram Moolenaar [Fri, 24 May 2019 11:11:47 +0000 (13:11 +0200)]
patch 8.1.1375: without "TS" in 'shortmess' get a hit-enter prompt often
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)
Bram Moolenaar [Thu, 23 May 2019 20:11:59 +0000 (22:11 +0200)]
patch 8.1.1372: when evaluating 'statusline' the current window is unknown
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)
Bram Moolenaar [Thu, 23 May 2019 19:35:48 +0000 (21:35 +0200)]
patch 8.1.1371: cannot recover from a swap file
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)
Bram Moolenaar [Thu, 23 May 2019 13:38:06 +0000 (15:38 +0200)]
patch 8.1.1366: using expressions in a modeline is unsafe
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.
Bram Moolenaar [Tue, 21 May 2019 21:09:01 +0000 (23:09 +0200)]
patch 8.1.1364: design for popup window support needs more details
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().
Bram Moolenaar [Mon, 20 May 2019 18:34:51 +0000 (20:34 +0200)]
patch 8.1.1360: buffer left 'nomodifiable' after :substitute
Problem: Buffer left 'nomodifiable' after :substitute. (Ingo Karkat)
Solution: Save the value of 'modifiable' earlier' (Christian Brabandt,
closes #4403)
Bram Moolenaar [Sat, 18 May 2019 16:52:04 +0000 (18:52 +0200)]
patch 8.1.1349: if writing runs into conversion error backup file is deleted
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)
Bram Moolenaar [Sat, 18 May 2019 15:22:54 +0000 (17:22 +0200)]
patch 8.1.1348: running tests may cause the window to move
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.
Bram Moolenaar [Sat, 18 May 2019 11:05:18 +0000 (13:05 +0200)]
patch 8.1.1344: Coverity complains about possibly using a NULL pointer
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().
Bram Moolenaar [Fri, 17 May 2019 10:31:44 +0000 (12:31 +0200)]
patch 8.1.1338: hang when concealing the '>' shown for half of wide char
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)
Bram Moolenaar [Thu, 16 May 2019 18:29:44 +0000 (20:29 +0200)]
patch 8.1.1334: when buffer is hidden "F" in 'shortmess' is not used
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.
Bram Moolenaar [Wed, 15 May 2019 20:45:37 +0000 (22:45 +0200)]
patch 8.1.1333: text properties don't always move after changes
Problem: Text properties don't always move after changes.
Solution: Update properties before reporting changes to listeners. Move text
property when splitting a line.
Bram Moolenaar [Tue, 14 May 2019 19:20:36 +0000 (21:20 +0200)]
patch 8.1.1332: cannot flush listeners without redrawing, mix of changes
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.
Bram Moolenaar [Mon, 13 May 2019 18:27:23 +0000 (20:27 +0200)]
patch 8.1.1330: using bold attribute in terminal changes the color
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.
Bram Moolenaar [Sun, 12 May 2019 12:25:30 +0000 (14:25 +0200)]
patch 8.1.1327: unnecessary scroll after horizontal split
Problem: Unnecessary scroll after horizontal split.
Solution: Don't adjust to fraction if all the text fits in the window.
(Martin Kunev, closes #4367)
Bram Moolenaar [Sat, 11 May 2019 19:14:24 +0000 (21:14 +0200)]
patch 8.1.1321: no docs or tests for listener functions
Problem: No docs or tests for listener functions.
Solution: Add help and tests for listener_add() and listener_remove().
Invoke the callbacks before redrawing.