aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* | tui/input.c: rename functionsJustin M. Keyes2019-03-25
| | | | | | | | | | | | | | | | - Rename the module prefix to "tinput_" instead of "term_input". - Some of the private functions were confusing, for example enqueue_input() calls input_enqueue() in another module. - It is helpful for discussion, documentation, and stacktraces if functions (even private) are globally unique.
* | signs: support multiple columns #9295Dan Aloni2019-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #990 closes #9295 - Support for multiple auto-adjusted sign columns. With this change, having more than one sign on a line, and with the 'auto' setting on 'signcolumn', extra columns will shown automatically to accomodate all the existing signs. For example, suppose we have this view: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } 5152 return 0; 5153 } 5154 We have GitGutter installed, so it tells us about modified lines that are not commmited. So let's change line 5152: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } ~ 5152 return 0; 5153 } 5154 Now we add a mark over line 5152 using 'ma' in normal mode: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } a ~ 5152 return 0; 5153 } 5154 Previously, Vim/Nvim would have picked only one of the signs, because there was no support for having multiple signs in a line. - Remove signs from deleted lines. Suppose we have highlights on a group of lines and we delete them: + 6 use std::ops::Deref; --+ 7 use std::borrow::Cow; --+ 8 use std::io::{Cursor}; 9 use proc_macro2::TokenStream; 10 use syn::export::ToTokens; --+ 11 use std::io::Write; >> 12 use std::ops::Deref; Without this change, these signs will momentarily accumulate in the sign column until the plugins wake up to refresh them. + --+ --+ --+ >> 6 Discussion: It may be better to extend the API a bit and allow this to happen for only certain types of signs. For example, VIM marks and vim-gitgutter removal signs may want to be presreved, unlike line additions and linter highlights. - 'signcolumn': support 'auto:NUM' and 'yes:NUM' settings - sort signs according to id, from lowest to highest. If you have git-gutter, vim-signature, and ALE, it would appear in this order: git-gutter - vim-signature - ALE. - recalculate size before screen update - If no space for all signs, prefer the higher ids (while keeping the rendering order from low to high). - Prevent duplicate signs. Duplicate signs were invisible to the user, before using our extended non-standard signcolumn settings. - multi signcols: fix bug related to wrapped lines. In wrapped lines, the wrapped parts of a line did not include the extra columns if they existed. The result was a misdrawing of the wrapped parts. Fix the issue by: 1. initializing the signcol counter to 0 when we are on a wrap boundary 2. allowing for the draw of spaces in that case.
* | Merge #9776 from janlazo/vim-8.1.0177Justin M. Keyes2019-03-24
|\ \
| * | vim-patch:8.1.1045: E315 ml_get error when using Python and hidden bufferJan Edmund Lazo2019-03-23
| | | | | | | | | | | | | | | | | | | | | Problem: E315 ml_get error when using Python and hidden buffer. Solution: Make sure the cursor position is valid. (Ben Jackson, closes vim/vim#4153, closes vim/vim#4154) https://github.com/vim/vim/commit/63dbfd33c1d47400c62775842b5b750ee69e2383
| * | vim-patch:8.1.0538: evaluating a modeline might invoke using a shell commandJan Edmund Lazo2019-03-23
| | | | | | | | | | | | | | | | | | | | | Problem: Evaluating a modeline might invoke using a shell command. (Paul Huber) Solution: Set the sandbox flag when setting options from a modeline. https://github.com/vim/vim/commit/5958f95a40a4a44bd9e7f3b7ec6554a6ef3e42ca
| * | vim-patch:8.1.0189: function defined in sandbox not testedJan Edmund Lazo2019-03-23
| | | | | | | | | | | | | | | | | | Problem: Function defined in sandbox not tested. Solution: Add a text. https://github.com/vim/vim/commit/d90a144eda047816acffc7a8f297b43a7120710e
| * | vim-patch:8.1.0177: defining function in sandbox is inconsistentJan Edmund Lazo2019-03-23
| | | | | | | | | | | | | | | | | | | | | | | | 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 vim/vim#3182) https://github.com/vim/vim/commit/93343725b5fa1cf580a24302455980faacae8ee2
* | | Update to restore layout only for non-floating windowsJit Yao Yap2019-03-23
| | |
* | | floating-window.c: fix crash when using inccommandJit Yao Yap2019-03-23
| | |
* | | window: don't crash when closing two floats in a rowBjörn Linse2019-03-23
|/ / | | | | | | | | prevwin can be set to the current window. Then we can't jump to it after closing a float.
* | help: ignore snapshotted window if invalid (#9774)Marco Hinz2019-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nvim doesn't expect a window-changing command on an created-window event. autocmd WinNew * wincmd p help help - A snapshot for window 1000 is created. - The window is split and the cursor changes to the new window 1001. - The autocmd kicks in and switches back to 1000. - The help buffer is opened. - On closing the help window 1000, it tries to go back to the snapshotted window which is... 1000. - wp1000->w_buffer == NULL - w_buffer is used by check_cursor() - 🧨 -> 💥 Fixes https://github.com/neovim/neovim/issues/9773
* | api: ignore floating windows for laststatus=1 (#9771)Marco Hinz2019-03-22
| | | | | | | | | | ONE_WINDOW considers all windows whereas one_window() ignores floating windows. Fixes https://github.com/neovim/neovim/issues/9768
* | vim-patch:8.1.1026: unused conditionJan Edmund Lazo2019-03-21
| | | | | | | | | | | | Problem: Unused condition. (Coverity) Solution: Remove the condition. Also remove unused #define. https://github.com/vim/vim/commit/d00e024d9f2b631226c1dba83cb203739b0d02a3
* | vim-patch:8.1.1025: checking NULL pointer after additionJan Edmund Lazo2019-03-21
| | | | | | | | | | | | Problem: Checking NULL pointer after addition. (Coverity) Solution: First check for NULL, then add the column. https://github.com/vim/vim/commit/64c8ed366de995a01ca1a072a6943ede0d7bb932
* | :mksession : restore tab-local working directories #9754Chris LaRose2019-03-21
| |
* | doc #9751Aman2019-03-20
| | | | | | closes #9750
* | vim-patch:8.1.0384: sign ordering #9758Jan Edmund Lazo2019-03-19
| | | | | | | | | | | | Problem: Sign ordering depends on +netbeans feature. Solution: Also order signs without +netbeans. (Christian Brabandt, closes vim/vim#3224) https://github.com/vim/vim/commit/8aeb504fc68e3fea9da5567d2d9a31a132fbf90f
* | vim-patch:8.1.{0849,1001}: 'cursorline' highlight #9757Justin M. Keyes2019-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Lua test correctly fails when 8.1.0849 is reverted. - 8.1.1001 bug does not manifest in Neovim. vim-patch:8.1.0849: cursorline highlight is not always updated Problem: Cursorline highlight is not always updated. Solution: Set w_last_cursorline when redrawing. Fix resetting cursor flags when using the popup menu. https://github.com/vim/vim/commit/c07ff5c60ad35982e9cdaa9dd72d3d1669935e87 vim-patch:8.1.1001: Visual area not correct when using 'cursorline' Problem: Visual area not correct when using 'cursorline'. Solution: Update w_last_cursorline also in Visual mode. (Hirohito Higashi, closes vim/vim#4086) https://github.com/vim/vim/commit/8156ed37558231a8167a1a61a147713d84c9af59
* | Merge #9747 from janlazo/vim-8.1.0858Justin M. Keyes2019-03-17
|\ \
| * | oldtests: use LoadAdjust() on timer testJan Edmund Lazo2019-03-17
| | |
| * | vim-patch:8.1.0858: 'indentkeys' and 'cinkeys' defaults are differentJan Edmund Lazo2019-03-17
| | | | | | | | | | | | | | | | | | Problem: 'indentkeys' and 'cinkeys' defaults are different. Solution: Make them the same, update docs. (close vim/vim#3882) https://github.com/vim/vim/commit/ce655743ba5c56c00769e57e6a6608c0088211ab
* | | vim-patch:8.1.0048: vim_str2nr() on numbers close to max #9744Jan Edmund Lazo2019-03-17
| | | | | | | | | | | | | | | Problem: vim_str2nr() does not handle numbers close to the maximum. Solution: Check for overflow more precisely. (Ken Takata, closes vim/vim#2746) https://github.com/vim/vim/commit/07ccf7ce7fb948fd4d080b817e9fbaea9e721dab
* | | cmdline: revert <down> and <up> mappings for wildoptions=pumBjörn Linse2019-03-17
|/ / | | | | | | | | These confict with navigation mappings. Better leave them to the user to reverse them for now for users that want it.
* | Merge pull request #9726 from mhinz/nvim_win_get_configMarco Hinz2019-03-17
|\ \ | | | | | | Closes #9723
| * | api: refactor FloatRelative usageMarco Hinz2019-03-16
| | |
| * | api: numerous small fixesMarco Hinz2019-03-16
| | |
| * | api: update docMarco Hinz2019-03-16
| | |
| * | api: add width/height to FloatConfigMarco Hinz2019-03-16
| | |
| * | api: nvim_win_config() -> nvim_win_set_config()Marco Hinz2019-03-16
| | |
| * | api: refactor FloatAnchor usageMarco Hinz2019-03-16
| | |
| * | api: add nvim_win_get_config()Marco Hinz2019-03-16
| | |
* | | aucmd_prepbuf: also restore `prevwin` #9741Justin M. Keyes2019-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bisected to f5d5da391715 Other test steps: nvim -u NORC :terminal tree / " Produces lots of output :edit somefile.txt :vsplit :vsplit <c-w>l <c-w>l <c-w>h <c-w>p
* | | vim-patch:8.1.1011: indent from autoindent not removed #9742Jan Edmund Lazo2019-03-17
| | | | | | | | | | | | | | | Problem: Indent from autoindent not removed from blank line. (Daniel Hahler) Solution: Do not reset did_ai when text follows. (closes vim/vim#4119) https://github.com/vim/vim/commit/2ba4238818ca5ea52334de3037ef3729584cebf5
* | | Merge pull request #9607 from bfredl/wildpumBjörn Linse2019-03-16
|\ \ \ | | | | | | | | UI: deprecate redundant ext_wildmenu events and allow TUI popupmenu for cmdline
| * | | Allow using internal popupmenu or ext_popupmenu for wildmenuBjörn Linse2019-03-16
| |/ / | | | | | | | | | | | | Deprecate ext_wildmenu. ext_popupmenu already contains more state (anchor position), and will allow further expansion (info about items).
* | | Merge #9686 'win/Lua: monkey-patch os.getenv()'Justin M. Keyes2019-03-16
|\ \ \ | | | | | | | | | | | | fixes #9681
| * | | Fix os.getenv of lua on Windowserw72019-03-07
| | | | | | | | | | | | | | | | | | | | Change to use os_getenv instead of getenv because environment variable set by uv_os_setenv can not be get with getenv.
| * | | Fix environment variable on Windowserw72019-03-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since uv_os_setenv uses SetEnvironmentVariableW, _wenviron is no updated. As a result, inconsistency occurs in completion of environment variable names. Change to use GetEnvironmentStaringsW instead of _wenviron to solve it.
* | | | Merge #9736 from janlazo/vim-8.1.0019Justin M. Keyes2019-03-16
|\ \ \ \ | |_|/ / |/| | |
| * | | oldtests: wait 200ms on mac for timer testJan Edmund Lazo2019-03-16
| | | |
| * | | vim-patch:8.1.0019: error when defining a Lambda with index of a function resultJan Edmund Lazo2019-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. https://github.com/vim/vim/commit/b4518563c73460150344a57879bf5b22cb8b1c77
* | | | Merge pull request #9616 from chemzqm/completechangeBjörn Linse2019-03-16
|\ \ \ \ | |/ / / |/| | | add MenuPopupChanged autocmd
| * | | autocmd: add MenuPopupChanged autocmdchemzqm2019-03-15
| | | | | | | | | | | | | | | | | | | | | | | | Update src/nvim/auevents.lua Co-Authored-By: chemzqm <chemzqm@gmail.com>
* | | | Merge #9728 from justinmk/autocmd-onceJustin M. Keyes2019-03-15
|\ \ \ \
| * | | | autocmd: do not show empty section after ++once handlers expireJustin M. Keyes2019-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: If autocmd pattern only contained `++once` handlers, and all of them completed, then there would be an empty group displayed by `:autocmd Foo`. Solution: Delete the pattern if all of its commands were deleted.
| * | | | autocmd: rename: "++nested", "++once"Justin M. Keyes2019-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | Based on feedback from upstream: https://github.com/vim/vim/pull/4100
* | | | | vim-patch:8.1.0728: avoid breaking after single space #9733Jan Edmund Lazo2019-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot avoid breaking after a single space. Solution: Add the 'p' flag to 'formatoptions'. (Tom Ryder) https://github.com/vim/vim/commit/c3c3158756ae074052b0db2a3e3a7ba192df5330
* | | | | Merge pull request #9730 from bfredl/pumfloatBjörn Linse2019-03-14
|\ \ \ \ \ | |/ / / / |/| | | | compositor: fix rendering issues with floats opened after popupmenu
| * | | | compositor: fix rendering issues with floats opened after popupmenuBjörn Linse2019-03-14
| | | | |
* | | | | vim-patch:8.1.0671: cursor in wrong column after auto-format #9729Jan Edmund Lazo2019-03-14
|/ / / / | | | | | | | | | | | | | | | | Problem: Cursor in the wrong column after auto-formatting. Solution: Check for deleting more spaces than adding. (closes vim/vim#3748) https://github.com/vim/vim/commit/e1e714ef0d1f4bb8b1712795e9106e3b4ff4c7bd