aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| | | * Revert "win/os_env_exists(): workaround libuv bug #10734"Daniel Hahler2019-09-25
| | | | | | | | | | | | | | | | This reverts commit 278c5d452c2cbc436a9cc317407ae6021a226c3a.
| | * | paste: fix handling of "<" in cmdline (#11094)Daniel Hahler2019-09-25
| | |/ | | | | | | Fixes https://github.com/neovim/neovim/issues/11088.
| | * tui: flush ui buffer in tui_terminal_after_startup (#11083)Daniel Hahler2019-09-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids having a dummy event to tickle the main loop. Confirmed using `nvim -u NONE -c 'au FocusGained * q'` in tmux (with `:set -g focus-events on`): without the flushing it would only exit after pressing a key. Moves the flushing done recently in 3626d2107. `nvim -u NONE -cq` is still working (i.e. consuming the response for the terminal background query itself), and the flickering mentioned in 3626d2107 is reduced again. Reverts part of bfb21f3e0 (#7729).
| | * vim-patch:8.0.1754: ex_helpgrep() is too long #11084Jan Edmund Lazo2019-09-23
| | | | | | | | | | | | | | | Problem: ex_helpgrep() is too long. Solution: Refactor the function. (Yegappan Lakshmanan, closes vim/vim#2766) https://github.com/vim/vim/commit/2225ebb48644f3924311b8df02a1319ab7675d42
| | * vim-patch:8.0.1812: refactor qf_jump_to_usable_window() #11078Jan Edmund Lazo2019-09-22
| | | | | | | | | | | | | | | Problem: The qf_jump_to_usable_window() function is too long. Solution: Split it in parts. (Yegappan Lakshmanan, closes vim/vim#2891) https://github.com/vim/vim/commit/7a2b0e55e9460493c4a949bda8be70950dbb8f85
| | * terminfo_start: flush buffer #11074Daniel Hahler2019-09-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This aligns with `terminfo_stop`, which also flushes the buffer after disabling things. This ensures Neovim gets the response to the terminal background query before exiting (`nvim -u NONE -cq` with e.g. urxvt or kitty). Caveats: * With kitty this causes some "flickering", likely since the alternate screen is being setup with `nvim -u NONE -cq`, whereas it would not be processed otherwise before quitting (as with the background query). * tmux after this patch may print ^[[I (CSI I / FocusGained) after `nvim -u NONE -cq`. Fixes https://github.com/neovim/neovim/issues/11062
| | * vim-patch:8.1.2059: fix for "x" deleting a fold has side effectsDaniel Hahler2019-09-22
| | | | | | | | | | | | | | | | | | Problem: Fix for "x" deleting a fold has side effects. Solution: Fix it where the fold is included. https://github.com/vim/vim/commit/56ebbabea1d8409ba67127b9674f6c714739c8e0
| | * vim-patch:8.1.2052: using "x" before a closed fold may delete that foldDaniel Hahler2019-09-22
| | | | | | | | | | | | | | | | | | Problem: Using "x" before a closed fold may delete that fold. Solution: Do not translate 'x' do "dl". (Christian Brabandt, closes vim/vim#4927) https://github.com/vim/vim/commit/7a9bd7c1e0ce1baf5a02daf36eeae3638aa315c7
| | * screen: missing redraw/highlight for ruler in message areaBjörn Linse2019-09-22
| | |
| | * env: use putenv_s for LC_ALL, LANG, etc. #11050erw72019-09-22
| | | | | | | | | | | | | | | | | | | | | | | | Problem: ":lang messages en_US.UTF-8" no longer overrides the language detected from the environment (at startup). Solution: In os_setenv, special-case "LC_ALL", "LANG", et al. to use putenv_s instead of uv_os_setenv. fixes #11045
| | * vim-patch:8.1.2060: "precedes" in 'listchars' not used properlyJustin M. Keyes2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | (Credit: Zach Wegner, https://github.com/neovim/neovim/pull/11034) Problem: "precedes" in 'listchars' not used properly. Solution: Correctly handle the "precedes" char in list mode for long lines. https://github.com/vim/vim/commit/bffba7f7042f6082e75b42484b15f66087b01941
| | * Fix "precedes" listchar behavior in wrap modeZach Wegner2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the "precedes" character would be rendered on every row when w_skipcol > 0 (i.e., when viewing a single line longer than the entire screen), instead of just on the first row. Make sure to only render it on the first row in this case. Add a test for this behavior. Fix documentation for the "precedes" character, which erroneously stated that it was only active when wrap mode was off.
| | * vim-patch:8.1.2055: profile: adjust line format #11058Daniel Hahler2019-09-21
| | | | | | | | | | | | | | | | | | Problem: Not easy to jump to function line from profile. Solution: Use "file:99" instead of "file line 99" so that "gf" works. (Daniel Hahler, closes vim/vim#4951) https://github.com/vim/vim/commit/181d4f58cc421f2e6d3b16333d4cb70d35ad1342
| | * Merge #11060 from janlazo/vim-8.1.1783Justin M. Keyes2019-09-21
| | |\ | | | | | | | | vim-patch:8.0.{1109,1529,1539,1621,1733,1771,1776},8.1.{1783,2054,2058}
| | | * vim-patch:8.0.1621: using invalid default value for highlight attributeJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Using invalid default value for highlight attribute. Solution: Use zero instead of -1. https://github.com/vim/vim/commit/6185903e3d07eb53326fc1403fc2de97ca31b775
| | | * vim-patch:8.0.1529: assert_equalfile() does not close file descriptorsJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Assert_equalfile() does not close file descriptors. (Coverity) Solution: Close the file descriptors. https://github.com/vim/vim/commit/3049418f3dbc571463a04d068069f6c5b7a8ccf1
| | | * vim-patch:8.0.1776: in tests, when WaitFor() fails it doesn't say whyJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: In tests, when WaitFor() fails it doesn't say why. Solution: Turn a few more WaitFor() into WaitForAssert(). https://github.com/vim/vim/commit/0e9d1ae3216a5940b36bb56d155fb300b2e55b00
| | | * vim-patch:8.0.1771: in tests, when WaitFor() fails it doesn't say whyJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: In tests, when WaitFor() fails it doesn't say why. (James McCoy) Solution: Add WaitForAssert(), which produces an assert error when it fails. https://github.com/vim/vim/commit/50182fa84e20a0547f3e2bd6683ef799fcd27855
| | | * vim-patch:8.0.1733: incomplete testing for completion fixJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Incomplete testing for completion fix. (Lifepillar) Solution: Add a test with CTRL-P. https://github.com/vim/vim/commit/bad0ce7b26be5eed8524347018f4c835b212f8d1
| | | * vim-patch:8.0.1539: no test for the popup menu positioningJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for the popup menu positioning. Solution: Add a screendump test for the popup menu. https://github.com/vim/vim/commit/6bb2cdfe604e51eec216cbe23bb6e8fb47810347
| | | * vim-patch:8.0.1109: timer causes error on exit from Ex modeJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Timer causes error on exit from Ex mode. (xtal8) Solution: save and restore the ex_pressedreturn flag. (Christian Brabandt, closes vim/vim#2079) https://github.com/vim/vim/commit/f5291f301e9322545f0621b2157e93050d1d4fb3
| | | * vim-patch:8.1.2058: function for ex command is named inconsistentlyJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Function for ex command is named inconsistently. Solution: Rename do_marks() to ex_marks(). https://github.com/vim/vim/commit/4bd782339e370bde82c2a8976df9f335cc12eba9
| | | * vim-patch:8.1.2054: compiler test for Perl may failJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Compiler test for Perl may fail. Solution: Accept any error line number. (James McCoy, closes vim/vim#4944) https://github.com/vim/vim/commit/cebfcffa40c058119bc2f92f0db02dffd3f6affe
| | | * vim-patch:8.1.1783: MS-Windows: compiler test may fail when using %:SJan Edmund Lazo2019-09-21
| | | | | | | | | | | | | | | | | | | | | | | | Problem: MS-Windows: compiler test may fail when using %:S. Solution: Reset 'shellslash'. https://github.com/vim/vim/commit/dff2adc8ddcb6c8f3390a82c321362f8d6756fb8
| | * | vim-patch:8.1.0460: assert_fails() message argument #11051Jan Edmund Lazo2019-09-21
| | |/ | | | | | | | | | | | | Problem: assert_fails() does not take a message argument Solution: Add the argument. https://github.com/vim/vim/commit/1307d1c003b01b4f67524c95feb07c3d91c7c428
| | * screen: fix vcol counting with virtual text. Fixes #9941Björn Linse2019-09-21
| | |
| | * win_update: fix redraw regression (#11027)Daniel Hahler2019-09-18
| | | | | | | | | | | | | | | | | | | | | Before 6e9ea5adc `win_ins_lines` would return `FAIL` for `i/line_count == 0`. Handle this by checking it in the outer `if`. Ref: https://github.com/neovim/neovim/commit/6e9ea5ad#commitcomment-35084669
| | * vim-patch:8.0.1770: assert functions don't return anythingJan Edmund Lazo2019-09-16
| | | | | | | | | | | | | | | | | | Problem: Assert functions don't return anything. Solution: Return non-zero when the assertion fails. https://github.com/vim/vim/commit/65a5464985f980d2bbbf4e14d39d416dce065ec7
| | * vim-patch:8.0.1523: cannot write and read terminal screendumpsJan Edmund Lazo2019-09-16
| | | | | | | | | | | | | | | | | | | | | Problem: Cannot write and read terminal screendumps. Solution: Add term_dumpwrite(), term_dumpread() and term_dumpdiff(). Also add assert_equalfile(). https://github.com/vim/vim/commit/d96ff165113ce5fe62107add590997660e3d4802
* | | fs: Ensure FileInfo struct is initializedJames McCoy2020-07-31
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Zero out the caller's FileInfo in all the functions which populate the struct. The contents are considered private, so we need to ensure it's initialized. If the stat call fails, the buffer we get back from libuv may not have any valid data in it, so don't copy it into the caller's FileInfo. This was happening, expectedly, in functional/ex_cmds/write_spec.lua's "write errors out correctly", which caused it to fail in certain environments: test/functional/ex_cmds/write_spec.lua:130: Expected objects to be the same. Passed in: (string) 'Vim(write):E212: Can't open file for writing: not a directory' Expected: (string) 'Vim(write):E166: Can't open linked file for writing'
* / libcallnr: Use int, not int64_t, as the return type for Vim compatJames McCoy2019-12-15
|/ | | | | | | | | | Vim's documentation simply states that libcallnr() should be used "for a function that returns an int". Based on the tests, code, and common syscall interfaces, this should likely be taken literally instead of trying to apply some well-defined type lipstick. Notably, this change fixes Test_libcall_libcallnr on hppa (a 32-bit big-endian system).
* Merge pull request #11025 from bfredl/doublescrollBjörn Linse2019-09-15
|\ | | | | compositor: avoid transmitting invalid lines on double scroll
| * compositor: avoid transmitting invalid lines on double scrollBjörn Linse2019-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This happens in an operation which both increases topline and also inserts new lines somewhere in the remaining are. So before drawing any line, win_update() is performing two grid_scroll operations. === A B C D E^ F === Consider that new line will be inserted after line E and screen also scrolled up to line C. First the topline will be adjusted (x is the scrolling region, ! invalid/empty space created by the scroll): === C x D x E^ x F x ! x ! x === and then space is inserted for the new line === C D E^ ! x F x ! x === The problem is that we are now assuming that any invalid area ! created by a scroll is filled with actual contents (by win_line etc) before it is scrolled again. But in this case the last invalid line ! gets scrolled. Ideally we should make win_update smarter and just scroll valid lines for the later scroll (it is just wasteful to scroll the larger area anyway), but for the 0.4 releasejust make the compositor ignore such an invalid line (as it will get overdrawn anyway later).
* | test/old: detect user modules for python,rubyJan Edmund Lazo2019-09-15
| | | | | | | | | | | | | | | | | | Set the environment variables before changing $HOME so that python,ruby can find user modules not in $HOME. Reference: - https://github.com/neovim/neovim/commit/7be7ec98a22451ec75ce5eb9284fa1722b53c697 - https://github.com/neovim/neovim/issues/10270#issuecomment-531516948
* | vim-patch:8.1.0220: Ruby converts v:true and v:false to a numberJan Edmund Lazo2019-09-15
|/ | | | | | | | | Problem: Ruby converts v:true and v:false to a number. Solution: Use Qtrue and Qfalse instead. (Masataka Pocke Kuwabara, closes vim/vim#3259) https://github.com/vim/vim/commit/d84b26a03b13cd816d80ff32b61e8de740d499ce nvim does not support v:none.
* Context: rename "buflist" => "bufs"Justin M. Keyes2019-09-14
| | | | | Given the other type names "jumps", "vars", etc., the name "buflist" is somewhat unintuitive.
* API: nvim_get_context: "opts" paramJustin M. Keyes2019-09-14
| | | | | Since the parameter is already non-primitive, make it an `opts` map instead of just a list, in case we want to extend it later.
* Merge #11020 from janlazo/vim-8.1.0289Justin M. Keyes2019-09-14
|\ | | | | | | vim-patch:8.0.{1134,1148},8.1.{212,289,2028} fix #10270
| * test/old: skip python-bindeval testsJan Edmund Lazo2019-09-14
| |
| * vim-patch:8.1.0212: preferred cursor column not set in interfacesJan Edmund Lazo2019-09-14
| | | | | | | | | | | | | | | | | | | | Problem: Preferred cursor column not set in interfaces. Solution: Set w_set_curswant when setting the cursor. (David Hotham, closes vim/vim#3060) https://github.com/vim/vim/commit/53901442f37a59e5495165f91db5574c0b43ab04 This contains test_ruby changes only. test_python changes were ported before.
| * test/old: skip failing ruby testsJan Edmund Lazo2019-09-14
| | | | | | | | These tests didn't pass in https://github.com/neovim/neovim/pull/9245
| * vim-patch:8.0.1448: segfault with exception inside :rubyfile commandJan Edmund Lazo2019-09-14
| | | | | | | | | | | | | | | | Problem: Segmentation fault when Ruby throws an exception inside :rubyfile command. Solution: Use rb_protect() instead of rb_load_protect(). (ujihisa, closes vim/vim#2147, greywolf, closes vim/vim#2512, vim/vim#2511) https://github.com/vim/vim/commit/37badc898b8d167e11553b6d05908ffd35928a6e
| * vim-patch:8.0.1134: superfluous call to syn_get_final_id()Jan Edmund Lazo2019-09-14
| | | | | | | | | | | | Problem: Superfluous call to syn_get_final_id(). Solution: Remove it. (Ken Takata) https://github.com/vim/vim/commit/76301956f0c079d893cfd927b11456328bed4f9b
| * vim-patch:8.1.2028: options test script does not workJan Edmund Lazo2019-09-14
| | | | | | | | | | | | Problem: Options test script does not work. Solution: Use optiondefs.h for input. https://github.com/vim/vim/commit/d9b0d83b13d2691e4544709abd87eac004715175
| * vim-patch:8.1.0289: cursor moves to wrong column after quickfix jumpJan Edmund Lazo2019-09-14
| | | | | | | | | | | | Problem: Cursor moves to wrong column after quickfix jump. Solution: Set the curswant flag. (Andy Massimino, closes vim/vim#3331) https://github.com/vim/vim/commit/2dfcef4c08a3371e2126504bea00b274f937a840
* | autocmds: TermEnter, TermLeave #8550Usama Hameed2019-09-14
|/ | | fix #8428
* vim-patch:8.1.2023: no test for synIDattr() returning "strikethrough" (#11018)Daniel Hahler2019-09-14
| | | | | Problem: No test for synIDattr() returning "strikethrough". Solution: Extend the synIDattr() test. (Jaskaran Singh, closes vim/vim#4929) https://github.com/vim/vim/commit/dcb2b9cb085288d2a2e4cc31abc591ade04e782e
* lintJustin M. Keyes2019-09-13
|
* getdigits: introduce `strict`, `def` parametersJustin M. Keyes2019-09-13
| | | | | | | | | | | | Problem: During a refactor long ago, we changed the `getdigits_*` familiy of functions to abort on overflow. But this is often wrong, because many of these codepaths are handling user input. Solution: Decide at each call-site whether to use "strict" mode. fix #5555
* rename: getdigits_safe => try_getdigitsJustin M. Keyes2019-09-13
|