aboutsummaryrefslogtreecommitdiff
path: root/src/nvim
Commit message (Collapse)AuthorAge
* fixup: use vim_snprintf, ASCII_ISALNUMAbdelhakeem2019-03-29
| | | | ASCII_ISALNUM is part of vim-patch:8.1.0540
* lintAbdelhakeem2019-03-29
|
* vim-patch:8.1.0544: setting 'filetype' in a modeline causes an errorAbdelhakeem2019-03-28
| | | | | | | | 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'. https://github.com/vim/vim/commit/916a818cea5ba05a5f2117407674461b8bee6832
* vim-patch:8.1.0540: may evaluate insecure value when appending to optionAbdelhakeem2019-03-28
| | | | | | | | 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. https://github.com/vim/vim/commit/247bb7e43b47eb8407a1111bed60b61aceda52ad
* vim-patch:8.1.0539: cannot build without the sandboxAbdelhakeem2019-03-28
| | | | | | | | 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) https://github.com/vim/vim/commit/82e8c92ebef5afcac0c0fdb706ff163f9b3366f7
* vim-patch:8.1.1061: when substitute string throws error, substitute happens ↵Jan Edmund Lazo2019-03-27
| | | | | | | | anyway Problem: When substitute string throws error, substitute happens anyway. Solution: Skip substitution when aborting. (closes vim/vim#4161) https://github.com/vim/vim/commit/0e97b9487571cf725a9cb28fe4dcefc800415f69
* vim-patch:8.1.0887: the 'l' flag in :subsitute is stickyJan Edmund Lazo2019-03-27
| | | | | | Problem: The 'l' flag in :subsitute is sticky. Solution: Reset the flag. (Dominique Pelle, closes vim/vim#3925) https://github.com/vim/vim/commit/9474716d39764ac5642e55b5548580cf53bd9bed
* vim-patch:8.1.0528: various typos in commentsJan Edmund Lazo2019-03-26
| | | | | | Problem: Various typos in comments. Solution: Fix the typos. https://github.com/vim/vim/commit/c4568ab37edc01e01f258d64bceddcd01633a268
* vim-patch:8.0.1528: dead code foundJan Edmund Lazo2019-03-26
| | | | | | Problem: Dead code found. Solution: Remove the useless lines. (CodeAi, closes vim/vim#2656) https://github.com/vim/vim/commit/81226e03102dd00b7cdce0e00775e1e30462f9a6
* doc, lintJustin M. Keyes2019-03-26
|
* doc [ci skip]Justin M. Keyes2019-03-26
| | | | closes #9719
* mac: do not use libintl_setlocale() (#9789)Marco Hinz2019-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | gettext contains libintl.h. That header file defines a macro that replaces `setlocale` by `libintl_setlocale`. That function eventually calls the original `setlocale()` from Apple's libc, but is known to make it fail. Mac users with gettext from Homebrew can easily reproduce this: #include <stdio.h> #include <locale.h> #include <libintl.h> int main(void) { setlocale(LC_ALL, ""); printf("locale: %s\n", setlocale(LC_CTYPE, NULL)); } Compile and run it: cc -I/usr/local/opt/gettext/include -L/usr/local/opt/gettext/lib -lintl -o test test.c && ./test When $LC_CTYPE is set to a valid value like UTF-8, it should output: locale: UTF-8 But it does not. It returns C anyway. Remove libintl.h and recompile and you get the expected UTF-8. Fixes https://github.com/neovim/neovim/issues/9787
* 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.