Commit Graph

371 Commits

Author SHA1 Message Date
VVKot
6752ac4968 vim-patch:8.1.0105: all tab stops are the same
Problem:    All tab stops are the same.
Solution:   Add the variable tabstop feature. (Christian Brabandt,
            closes vim/vim#2711)
04958cbaf2
2021-03-28 08:37:01 +01:00
Jan Edmund Lazo
e87c30a196 vim-patch:8.2.0064: diffmode completion doesn't use per-window setting
Problem:    Diffmode completion doesn't use per-window setting.
Solution:   Check if a window is in diff mode. (Dominique Pell, closes vim/vim#5419)
efcc329020
2021-02-13 18:22:04 -05:00
Jan Edmund Lazo
54cd7298f8 vim-patch:8.2.0054: :diffget and :diffput don't have good completion
Problem:    :diffget and :diffput don't have good completion.
Solution:   Add proper completion. (Dominique Pelle, closes vim/vim#5409)
ae7dba8969
2021-02-13 18:17:25 -05:00
Jan Edmund Lazo
cdace43b6c vim-patch:8.2.1904: still using default option values after using ":badd +1"
Problem:    Still using default option values after using ":badd +1".
Solution:   Find a window where options were set.  Don't set the window when
            using ":badd".
89b693e562
2021-02-13 14:27:17 -05:00
Björn Linse
94622ca66b buffer updates: add on_reload callback and handle it in treesitter parser 2021-02-10 18:58:46 +01:00
Jan Edmund Lazo
7484c7de9a eval: use char* for set_internal_string_var()
"name" param was cast to (const char *).
All calls to set_internal_string_var() cast from (char *) to (char_u *).
Remove these useless casts.
2021-02-07 17:27:59 -05:00
Jan Edmund Lazo
f1fdeaf667 option: use char* for set_string_option_direct()
"name" param was cast to (const char *).
All calls to set_string_option_direct() cast 1st arg
from (char *) to (char_u *).
Remove these useless casts.
2021-02-07 17:27:59 -05:00
erw7
957ac9442c Merge pull request #13702 from erw7/fix-build_stl_str_hl
buffer.c: fix problem of memory allocation
2021-02-06 12:56:20 +09:00
James McCoy
27a7a4d384 Use abort() instead of assert(false) for things that should never happen
assert() is compiled out for release builds, but we don't want to
continue running in these impossible situations.

This also resolves the "implicit fallthrough" warnings for the asserts
in switch cases.
2021-01-31 11:28:52 -05:00
erw7
cb457f5f7f buffer.c: remove useless 'for' loops. 2021-01-09 15:36:14 +09:00
erw7
eaab8e494d buffer.c: fix problem of memory allocation 2021-01-05 15:09:43 +09:00
Jan Edmund Lazo
ffc3df51f1 vim-patch:8.1.1667: flags for Ex commands may clash with other symbols
Problem:    Flags for Ex commands may clash with other symbols.
Solution:   Prepend with EX_.
8071cb2c64

N/A patches for version.c:

vim-patch:8.1.1672: "make cmdidxs" doesn't work

Problem:    "make cmdidxs" doesn't work.
Solution:   Update macro names. (Naruhiko Nishino, closes vim/vim#4660)
d94ac0caca

Error message for src/nvim/ex_cmds.lua
which omits the "EX_" prefix for the flags.
2021-01-02 12:20:35 -05:00
Jan Edmund Lazo
cff4cad25a vim-patch:8.2.2231: when "--remote file" is used "file" is not reloaded
Problem:    When "--remote file" is used "file" is not reloaded.
Solution:   When a :drop command is used for a file that is already displayed
            in a window and it has not been changed, check if it needs to be
            reloaded. (closes vim/vim#7560)
e4862a0fe6

Remove unused "focus" parameter from "buf_check_timestamp()".
It was meant for removed GUI code.
2020-12-27 14:37:19 -05:00
Lukas Reineke
88ae03bcdb feat(sign):Allow signs to be 0 width (#13290)
Adds support for signs to be 0 cells wide. If all signs of the same
group have no width, the signcolumn will not be rendered for that group.
2020-12-24 17:33:52 +01:00
Jan Edmund Lazo
afa5a11363 vim-patch:8.2.0116: BufEnter autocmd not triggered on ":tab drop"
Problem:    BufEnter autocmd not triggered on ":tab drop". (Andy Stewart)
Solution:   Decrement autocmd_no_enter for the last file. (closes vim/vim#1660,
            closes vim/vim#5473)
c10b521628

N/A patches for version.c:

vim-patch:8.1.1805: au_did_filetype is declared twice

Problem:    Au_did_filetype is declared twice.
Solution:   Remove it from autocmd.c. (closes vim/vim#4767)
6cd57d4466
2020-12-23 02:21:46 -05:00
Jan Edmund Lazo
7390cc8b29 vim-patch:8.1.0470: pointer ownership around fname_expand() is unclear
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.
3d6014f033
2020-12-19 22:52:30 -05:00
Jan Edmund Lazo
56f5e3bd6b vim-patch:8.0.1525: using :wqa exits even if a job runs in a terminal window
Problem:    Using :wqa exits even if a job runs in a terminal window. (Jason
            Felice)
Solution:   Check if a terminal has a running job. (closes vim/vim#2654)
7a76092a51
2020-12-01 08:52:33 -05:00
Jan Edmund Lazo
11249ad021 vim-patch:8.0.0953: get "no write since last change" error in terminal window
Problem:    Get "no write since last change" error in terminal window.
Solution:   Use another message when closing a terminal window. Make ":quit!"
            also end the job.
f5be7cd016
2020-12-01 01:13:49 -05:00
Matthieu Coudron
4f1fc0f6d5 refactor: pass window to was_set_insecurely
working on get_foldtext and wanted to get rid of the curwin backup/restore.
Turns out it's not possible else f_foldtext is run on the same window.
Kept the cleanup anyway.
2020-11-23 21:06:56 +01:00
Jan Edmund Lazo
5d6ecfa3c7 vim-patch:8.1.0805: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate FEAT_MBYTE, part 1.
135059724f
2020-11-12 21:22:06 -05:00
Jan Edmund Lazo
0522962f15 vim-patch:8.2.1959: crash when terminal buffer name is made empty
Problem:    Crash when terminal buffer name is made empty. (Dhiraj Mishra)
Solution:   Fall back to "[No Name]". (closes vim/vim#7262)
00806bceb6

N/A patches for version.c:

vim-patch:8.1.2422: "make depend" does not work correctly for libvterm

Problem:    "make depend" does not work correctly for libvterm.
Solution:   Fix build dependencies. And a few minor improvements.
9810cfbe55

vim-patch:8.2.1962: netbeans may access freed memory

Problem:    Netbeans may access freed memory.
Solution:   Check the buffer pointer is still valid.  Add a test. (Yegappan
            Lakshmanan, closes vim/vim#7248)
32e5ec0b01

vim-patch:8.2.1963: crash when using a popup window with "latin1" encoding

Problem:    Crash when using a popup window with "latin1" encoding.
Solution:   Don't use ScreenLinesUC when enc_utf8 is false. (closes vim/vim#7241)
927495b1fe
2020-11-06 20:03:00 -05:00
tamago324
40a742725c vim-patch:8.1.0268: file type checking has too many #ifdef (#13182)
Problem:    File type checking has too many #ifdef.
Solution:   Always define the S_IF macros. (Ken Takata, closes vim/vim#3306)
d569bb0299
2020-11-06 17:59:28 -05:00
Björn Linse
d1091bc658 Merge pull request #12870 from bfredl/themepark
Color themes (per window/line) and lua theme providers
2020-11-01 21:54:51 +01:00
Björn Linse
c146eddc8b api: add API for themes
co-author: hlpr98 <hlpr98@gmail.com> (dict2hlattrs function)

orange is sus??

NOVEMBER DAWN

erase the lie that is redraw_later()
2020-11-01 19:14:56 +01:00
Rom Grk
10bf69a43e vim-patch:8.2.1909: number of status line items is limited to 80
Problem:    Number of status line items is limited to 80.
Solution:   Dynamically allocate the arrays. (Rom Grk, closes vim/vim#7181)
8133cc6bf4

The members of stl_item_T have not been prefixed with stl_ contrary to
the vim patch because the amount of stl_ prefixes on single lines of
code in that region was hurtful to readability.
2020-10-31 19:54:06 -04:00
Jan Edmund Lazo
dff3a0d449 Revert "vim-patch:8.1.0877: new buffer used every time the quickfix window is opened"
This reverts commit e82b8ddef1.

Fix https://github.com/neovim/neovim/issues/13104
2020-10-20 22:07:45 -04:00
Jan Edmund Lazo
e82b8ddef1 vim-patch:8.1.0877: new buffer used every time the quickfix window is opened
Problem:    New buffer used every time the quickfix window is opened.
Solution:   Reuse the buffer. (Yegappan Lakshmanan, closes vim/vim#3902)
ee8188fc74
2020-10-10 20:20:56 -04:00
Matthieu Coudron
12fdb114d1 folds: pass column on fold creation
useful if we want to have inline folds later and/or let users create
folds that remember their start/end columns.
2020-09-28 23:53:10 +02:00
Thomas Vigouroux
a08959bc7a vim-patch:8.2.0953: spell checking doesn't work for CamelCased words
Problem:    Spell checking doesn't work for CamelCased words.
Solution:   Add the "camel" value in the new option 'spelloptions'.
            (closes vim/vim#1235)
362b44bd4a
2020-09-24 07:13:39 +02:00
Jan Edmund Lazo
8d6c1edc6e vim-patch:8.1.2267: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable. (Tony Mechelynck)
Solution:   Rearrange the code.
3b991527e8
2020-08-18 23:34:13 -04:00
Jan Edmund Lazo
9443d39941 vim-patch:8.2.1259: empty group in 'tabline' may cause using an invalid pointer
Problem:    Empty group in 'tabline' may cause using an invalid pointer.
Solution:   Set the group start position. (closes vim/vim#6505)
f56c95fdad
2020-08-02 12:00:00 -04:00
Jan Edmund Lazo
edaff441de vim-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 vim/vim#4406, closes vim/vim#3299)
1c6fd1e100
2020-07-04 10:05:34 -04:00
Jan Edmund Lazo
3c9ec83395 vim-patch:8.2.0966: 'shortmess' flag "n" not used in two places
Problem:    'shortmess' flag "n" not used in two places.
Solution:   Make use of the "n" flag consistent. (Nick Jensen, closes vim/vim#6245,
            closes vim/vim#6244)
722e505d1a
2020-06-18 18:01:43 -04:00
Jan Edmund Lazo
310a56d0a0 vim-patch:8.1.1895: using NULL pointer when out of memory
Problem:    Using NULL pointer when out of memory.
Solution:   Bail out or skip the code using the pointer. (Zu-Ming Jiang,
            closes vim/vim#4805, closes vim/vim#4843, closes vim/vim#4939, closes vim/vim#4844)
6f10c70b59
2020-06-04 20:52:52 -04:00
Rob Pilling
978a6bcaf2 vim-patch:8.1.2225: the "last used" info of a buffer is under used
Problem:    The "last used" info of a buffer is under used.
Solution:   Add "lastused" to getbufinfo(). List buffers sorted by last-used
            field. (Andi Massimino, closes vim/vim#4722)
52410575be
2020-04-21 21:40:22 +01:00
Rob Pilling
9d59f066cb vim-patch:8.0.1651: cannot filter :ls output for terminal buffers
Problem:    Cannot filter :ls output for terminal buffers.
Solution:   Add flags for terminal buffers. (Marcin Szamotulski, closes vim/vim#2751)
0751f51a5b
2020-04-19 20:18:41 +01:00
Rob Pilling
ec2d45a851 vim-patch:7.4.1988
Problem:    When updating viminfo with file marks there is no time order.
Solution:   Remember the time when a buffer was last used, store marks for
            the most recently used buffers.
ab9c89b68d

As this is a viminfo fix, most of this is irrelevant - the patch has
just been brought across for the creation and updating of buffer's
`b_last_used` properties.
2020-04-19 20:18:41 +01:00
Jan Edmund Lazo
b8ddca6554 vim-patch:8.2.0464: typos and other small problems
Problem:    Typos and other small problems.
Solution:   Fix the typos.  Add missing file to distribution.
2d9d409ad4
2020-04-13 12:00:33 -04:00
Jan Edmund Lazo
0f5bb9faf1 vim-patch:8.1.0786: ml_get error when updating the status line
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 vim/vim#3830)
10772307c4
2020-02-16 07:49:43 -05:00
erw7
fe395ae210 vim-patch:8.1.0069: cannot handle pressing CTRL-C in a prompt buffer
Problem:    Cannot handle pressing CTRL-C in a prompt buffer.
Solution:   Add prompt_setinterrupt().
0e5979a6d4
2020-02-12 15:30:06 +09:00
erw7
783aecd501 vim-patch:8.1.0036: not restoring Insert mode if leaving prompt buffer with mouse
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.
891e1fd894
2020-02-12 15:16:32 +09:00
erw7
4813ad48cd vim-patch:8.1.0027: difficult to make a plugin that feeds a line to a job
Problem:    Difficult to make a plugin that feeds a line to a job.
Solution:   Add the nitial code for the "prompt" buftype.
f273245f64
2020-02-12 15:16:32 +09:00
Björn Linse
70c212e480 vim-patch:8.2.0235: draw error when an empty group is removed from 'statusline'
Problem:    Draw error when an empty group is removed from 'statusline'.
Solution:   Do not use highlighting from a removed group.
dbe5d361fe
2020-02-09 09:42:26 +01:00
Billy SU
e53e860759 vim-patch:8.1.0061: fix resetting, setting 'title' #11733
Problem:    Window title is wrong after resetting and setting 'title'.
Solution:   Move resetting the title into maketitle(). (Jason Franklin)
84a9308511
2020-01-21 23:47:32 -08:00
Björn Linse
48a869dc6d shed biking: it's always extmarks, never marks extended 2020-01-20 19:36:35 +01:00
Björn Linse
ca1a00edd6 extmarks/bufhl: reimplement using new marktree data structure
Add new "splice" interface for tracking buffer changes at the byte
level. This will later be reused for byte-resolution buffer updates.
(Implementation has been started, but using undocumented "_on_bytes"
option now as interface hasn't been finalized).

Use this interface to improve many edge cases of extmark adjustment.
Changed tests indicate previously incorrect behavior. Adding tests for
more edge cases will be follow-up work (overlaps on_bytes tests)

Don't consider creation/deletion of marks an undoable event by itself.
This behavior was never documented, and imposes  complexity for little gain.

Add nvim__buf_add_decoration temporary API for direct access to the new
implementation. This should be refactored into a proper API for
decorations, probably involving a huge dict.

fixes #11598
2020-01-16 12:36:10 +01:00
Jan Edmund Lazo
5b60023a8c vim-patch:8.1.2363: ml_get error when accessing Visual area in 'statusline'
Problem:    ml_get error when accessing Visual area in 'statusline'.
Solution:   Disable Visual mode when using another window. (closes vim/vim#5278)
dee50a5180
2019-11-30 16:21:33 -05:00
Ashkan Kiani
edb194f330 Improve terminal close error message formatting (#11434) 2019-11-24 20:18:40 -08:00
Jan Edmund Lazo
8819b5c06e vim-patch:8.1.0461: quickfix: change comment style #11453
Problem:    Quickfix code uses too many /* */ comments.
Solution:   Change to // comments. (Yegappan Lakshmanan)
00bf8cd211
2019-11-24 20:10:25 -08:00
Jan Edmund Lazo
222637c341 vim-patch:8.1.1334: respect shortmess=F when buffer is hidden #11443
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.
eda652215a

test_getvalue() is not implemented.
It is only used for checking "need_fileinfo" internal variable.
2019-11-23 21:56:58 -08:00