| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Syntax coloring and highlighting is in one big file.
Solution: Move the highlighting to a separate file. (Yegappan Lakshmanan,
closes vim/vim#4674)
https://github.com/vim/vim/commit/f9cc9f209ede9f15959e4c2351e970477c139614
Name the new file highlight_group.c instead.
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
|\ \
| | |
| | | |
feat(statusline): add global statusline
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Ref: #9342
Adds the option to have a single global statusline for the current window at the bottom of the screen instead of a statusline at the bottom of every window. Enabled by setting `laststatus = 3`.
Due to the fact that statuslines at the bottom of windows are removed when global statusline is enabled, horizontal separators are used instead to separate horizontal splits. The horizontal separator character is configurable through the`horiz` item in `'fillchars'`. Separator connector characters are also used to connect the horizontal and vertical separators together, which are also configurable through the `horizup`, `horizdown`, `vertleft`, `vertright` and `verthoriz` items in `fillchars`.
The window separators are highlighted using the `WinSeparator` highlight group, which supersedes `VertSplit` and is linked to `VertSplit` by default in order to maintain backwards compatibility.
|
| |/
|/|
| |
| |
| |
| | |
Problem: New buffer used every time the quickfix window is opened.
Solution: Reuse the buffer. (Yegappan Lakshmanan, closes vim/vim#3902)
https://github.com/vim/vim/commit/ee8188fc74a7cf9ee7acb634b2bb7a032d0cb24c
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously b_signcols was invalidated whenever a sign was added/removed
or when a buffer line was added/removed.
This change introduces a sentinel linenr_T into the buffer state which
is a line number used to determine the signcolumn. With this
information, we can invalidate the signcolumn less often. Now the
signcolumn is only invalidated when a sign or line at the sentinel line
number is removed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add the following options to extmarks:
- sign_text
- sign_hl_group
- number_hl_group
- line_hl_group
- cursorline_hl_group
Note: ranges are unsupported and decorations are only applied to
start_row
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
50250542 failed to consider that the maximum passed to buf_signcols
is window scoped whereas the signcols value is buffer scoped. This can
lead to a bug where the signcolumn becomes incorrect if:
- global signcolumn is set to auto:N
- signcolumn in a window is changed locally to auto:M where M > N
- the buffer has a line with M or greater signs.
|
|\ \
| | |
| | | |
vim-patch:8.1.{1846,1955},8.2.0156
|
| |/
| |
| |
| |
| |
| | |
Problem: Various typos in source files and tests.
Solution: Fix the typos. (Emir Sari, closes vim/vim#5532)
https://github.com/vim/vim/commit/4b96df5a017a04141c4e901b1fc5704a3ca48099
|
|/
|
|
|
|
|
| |
Problem: Illegal memory access when using exactly 20 highlights.
Solution: Add one more item in the array. (Brandon Richardson,
closes vim/vim#9800)
https://github.com/vim/vim/commit/a493b6506b67887a1cc2d1c00a896598c3b2d445
|
|
|
|
|
| |
When iterating signs to calculate the sign column, stop iterating when
we reach the maximum configured from 'signcolumn'.
|
|
|
|
|
|
|
| |
Problem: When editing a buffer 'colorcolumn' may not work.
Solution: Set the buffer before copying option values. Call
check_colorcolumn() after copying window options.
https://github.com/vim/vim/commit/010ee9657acf1a9f799079d718998c94e50ccadc
|
| |
|
|
|
|
|
| |
This only touches functions that do not return a pointer.
Also add a note about the differences between mb_head_off() and utf_head_off().
|
|\
| |
| | |
feat(statusline): support multibyte fillchar
|
| |
| |
| |
| |
| |
| |
| |
| | |
This includes a partial port of Vim patch 8.2.2569 and some changes to
nvim_eval_statusline() to allow a multibyte fillchar. Literally every
line of C code touched by that patch has been refactored in Nvim, and
that patch contains some irrelevant foldcolumn tests I'm not sure how to
port (as Nvim's foldcolumn behavior has diverged from Vim's).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: ":retab 0" may cause illegal memory access.
Solution: Limit the value of 'tabstop' to 10000.
https://github.com/vim/vim/commit/652dee448618589de5528a9e9a36995803f5557a
ex_retab change is N/A (+vartabs always available).
Nvim's set_num_option validation logic was refactored, hence why it looks
different from Vim's.
Also use XFREE_CLEAR in other places.
|
|\ \
| | |
| | | |
vim-patch:8.2.4166: undo synced when switching buffer in another window
|
| |/
| |
| |
| |
| |
| | |
Problem: Undo synced when switching buffer in another window.
Solution: Do not sync undo when not needed. (closes vim/vim#9575)
https://github.com/vim/vim/commit/e615db06046312e74886fa1ef98feb5a9db2a7c3
|
|\ \
| | |
| | | |
vim-patch:8.2.4091: virtcol is recomputed for statusline unnecessarily
|
| |/
| |
| |
| |
| |
| | |
Problem: Virtcol is recomputed for statusline unnecessarily.
Solution: Just use "w_virtcol". (closes vim/vim#9523)
https://github.com/vim/vim/commit/0f112052acaeffd75b7eb001eeb8a246ad12a276
|
|/ |
|
|
|
|
|
|
|
|
|
| |
* vim-patch:8.2.3914: various spelling mistakes in comments
Problem: Various spelling mistakes in comments.
Solution: Fix the mistakes. (Dominique Pellé, closes vim/vim#9416)
https://github.com/vim/vim/commit/af4a61a85d6e8cacc35324f266934bc463a21673
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
|
|
|
|
| |
Possibly dialog code is messages.c could be moved here as well.
misc1.c is now empty, so delete it.
|
|
|
|
| |
Also make some function names more descriptive/regular.
|
|\
| |
| | |
vim-patch:8.2.{3468,3617,3618,3622}: some other CWD related patches
|
| |
| |
| |
| | |
Vim has a solution to #9892 with fewer side-effects in patch 8.2.3618
|
| |
| |
| |
| |
| |
| | |
Problem: ":verbose pwd" does not mention 'autochdir' was applied.
Solution: Remember the last chdir was done by 'autochdir'. (issue vim/vim#9142)
https://github.com/vim/vim/commit/0526815c15170a5926e1008600ec29d42d8b64c2
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sp_enum_after_assign = force
* sp_brace_typedef = force
* nl_do_brace = remove
* sp_do_brace_open = force
* sp_brace_close_while = force
* sp_before_semi = remove
* sp_before_semi_for = remove
* sp_before_semi_for_empty = remove
* sp_between_semi_for_empty = remove
* sp_after_semi_for_empty = remove
* sp_before_square = remove
* sp_before_squares = remove
* sp_inside_square = remove
* sp_inside_fparens = remove
* sp_inside_fparen = remove
* sp_inside_tparen = remove
* sp_after_tparen_close = remove
* sp_return_paren = force
* pos_bool = lead
* sp_pp_concat = remove
* sp_pp_stringify = remove
* fixup: disable formatting for the INIT section
|
|
|
| |
* refactor: reduce number of explicit char casts
|
|\
| |
| | |
vim-patch:8.2.3520: cannot define a function for thesaurus completion
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Option variable name does not match option name. (Christ van
Willigen)
Solution: Rename the variable.
https://github.com/vim/vim/commit/d4c4bfa0078a959ff90ef30288fd31d9d38f23d7
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Cannot define a function for thesaurus completion.
Solution: Add 'thesaurusfunc'. (Yegappan Lakshmanan, closes vim/vim#8987,
closes 8950)
https://github.com/vim/vim/commit/160e994d768d03a3c826b58115cde94df8fce607
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Problem: Argument for message functions is inconsistent.
Solution: Make first argument to msg() "char *".
https://github.com/vim/vim/commit/32526b3c1846025f0e655f41efd4e5428da16b6c
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
vim/vim#3302) Also make emsg() accept a "char *" argument. Get rid of
an enormous number of type casts.
https://github.com/vim/vim/commit/f9e3e09fdc93be9f0d47afbc6c7df1188c2a5a0d
|
| |
| |
| |
| |
| |
| | |
Problem: Plural messages are not translated properly.
Solution: Add more usage of NGETTEXT(). (Sergey Alyoshin)
https://github.com/vim/vim/commit/da6e8919e75fa8f961d1b805e877c8a92e76dafb
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* refactor: general good option changes
sp_deref = remove
sp_not = remove
sp_inv = remove
sp_inside_paren_cast = remove
mod_remove_duplicate_include = true
sp_after_semi = add
sp_after_semi_for = force
sp_sizeof_paren = remove
nl_return_expr = remove
nl_else_brace = remove
nl_else_if = remove
* refactor: mod_remove_extra_semicolon = true
* refactor: nl_max = 3
* refactor: sp_bool = force
* refactor: sp_compare = force
* refactor: sp_inside_paren = remove
* refactor: sp_paren_paren = remove
* refactor: sp_inside_sparen = remove
* refactor: sp_before_sparen = force
* refactor: sp_sign = remove
* refactor: sp_addr = remove
* refactor: sp_member = remove
* refactor: nl_struct_brace = remove
* refactor: nl_before_if_closing_paren = remove
* refactor: nl_fdef_brace = force
* refactor: sp_paren_comma = force
* refactor: mod_full_brace_do = add
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
(#16108)
Problem: Opening the quickfix window triggers BufWinEnter twice. (Yorick
Peterse)
Solution: Only trigger BufWinEnter with "quickfix". (closes vim/vim#9022)
https://github.com/vim/vim/commit/1d30fde3c989a962e0e1af4cbcf90e1ea483f1f4
|
| |
| |
| |
| |
| | |
Problem: Too many comments are old style.
Solution: Change comments to // style. (closes vim/vim#9021)
https://github.com/vim/vim/commit/c5935a859ee31d56a565878d7a231fc59b7ddc01
|
|\ \
| | |
| | | |
vim-patch:8.1.2368,8.1.2378,8.1.2379,8.1.2380,8.1.2387,8.1.2388,8.1.2392,8.1.2394,8.1.2395,8.1.2396
|
| |/
| |
| |
| |
| |
| | |
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
https://github.com/vim/vim/commit/c667da5185ce5dce914d2006d62da2be0cedb384
|
|/ |
|
|\
| |
| | |
vim-patch:8.0.{1459,1460,1461,1463},8.1.{0602,0604,1291},8.2.{0189,0876,0909,1411}: chdir and DirChanged related patches
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Cannot handle change of directory.
Solution: Add the DirChanged autocommand event. (Andy Massimino,
closes vim/vim#888) Avoid changing directory for 'autochdir' too often.
https://github.com/vim/vim/commit/b7407d3fc9496f9048fb65ab17b5ba3444965c0e
Only add "auto" pattern. "window" and "global" are already implemented.
Skip `Test_dirchanged_auto` using `CheckFunction test_autochdir`.
Part of PR #15952. More information can be found there.
N/A patches for version.c:
vim-patch:8.0.1460: missing file in patch
Problem: Missing file in patch.
Solution: Add changes to missing file.
https://github.com/vim/vim/commit/b5cb65ba2bcc6bbc6d2798a2dea18b95f0b38f5e
vim-patch:8.0.1461: missing another file in patch
Problem: Missing another file in patch.
Solution: Add changes to missing file.
https://github.com/vim/vim/commit/15833239a4131279935a4bd574b74fe3a2b0f49f
|
|\ \
| |/
|/| |
vim-patch:8.1.2396,8.1.2395,8.1.2394,8.1.2392,8.1.2368,8.1.2388,8.1.2379
|
| |
| |
| |
| |
| |
| | |
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
https://github.com/vim/vim/commit/c667da5185ce5dce914d2006d62da2be0cedb384
|