aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* shada/context: fully remove jumplist duplicates #10898Abdelhakeem Osama2019-09-03
| | | | | | | | | | | | | | | | - Always load files when cleaning up jumplist. - For Shada: avoids writing duplicate entries, which happens when you read from a shada file with duplicate entries (merging the jumplist while writing sometimes produces duplicate entries, bug?) and then write right away (i.e.: without any `:jumps`, `getjumplist()`, or any jump movement, that is: nothing that calls `cleanup_jumplist` with `loadfiles == true`). - For Context: avoids non-idempotent behavior for the same reason (i.e.: first call to `shada_encode_jumps` does not remove duplicate entries). - Do not set pcmark when dumping jumplist for Context. - Retrieving current Context shouldn't add an entry to the jumplist (which will be removed by a subsequent `cleanup_jumplist` anyway, i.e.: tail entry matching current position), just act like `getjumplist` for instance.
* f_jobwait: cleanupJustin M. Keyes2019-09-03
|
* jobwait(): fix race if job exits before waiting on itJustin M. Keyes2019-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: If a job exits while waiting on another job, the on_exit handler is queued but f_jobwait() skips it. Solution: Always do process_wait(), so that handlers are run during f_jobwait(). fix #8302 Test case: $ BUSTED_ARGS="--repeat=2000 --no-keep-going" TEST_FILE=test/functional/core/job_spec.lua TEST_FILTER=waiting make functionaltest Failure example (macOS CI): FAILED test/functional/core/job_spec.lua: jobs jobwait will run callbacks while waiting test/functional/core/job_spec.lua:606: Expected objects to be the same. Passed in: (table: 0x1be77c80) { [1] = 'notification' [2] = 'wait' *[3] = { *[1] = 3 } } Expected: (table: 0x1be77d10) { [1] = 'notification' [2] = 'wait' *[3] = { *[1] = 4 } } stack traceback: test/functional/core/job_spec.lua:606: in function <test/functional/core/job_spec.lua:583
* vim-patch:8.1.1063: insufficient testing for wildmenu completionJan Edmund Lazo2019-09-03
| | | | | | Problem: Insufficient testing for wildmenu completion. Solution: Extend the test case. (Dominique Pelle, closes vim/vim#4182) https://github.com/vim/vim/commit/37db642083398da7d04ed45767cc46daf40bf72b
* vim-patch:8.1.0046: loading a session file fails if 'winheight' is bigJan Edmund Lazo2019-09-02
| | | | | | | | | Problem: Loading a session file fails if 'winheight' is a big number. Solution: Set 'minwinheight' to zero at first. Don't give an error when setting 'minwinheight' while 'winheight' is a big number. Fix using vertical splits. Fix setting 'minwinwidth'. (closes vim/vim#2970) https://github.com/vim/vim/commit/1c3c10492a291270fa89b3c8df11828792f927d3
* vim-patch:8.0.1806: InsertCharPre causes problems for autocompleteJan Edmund Lazo2019-09-02
| | | | | | | Problem: InsertCharPre causes problems for autocomplete. (Lifepillar) Solution: Check for InsertCharPre before calling vpeekc(). (Christian Brabandt, closes vim/vim#2876) https://github.com/vim/vim/commit/39de95257714b76ccd845d081cff57830a79b488
* vim-patch:8.0.1768: SET_NO_HLSEARCH() used in a wrong wayJan Edmund Lazo2019-09-02
| | | | | | | Problem: SET_NO_HLSEARCH() used in a wrong way. Solution: Make it a function. (suggested by Dominique Pelle, closes vim/vim#2850) https://github.com/vim/vim/commit/451fc7b954906069f1830a8092ad85616049a828
* Merge pull request #10920 from bfredl/asyncfailBjörn Linse2019-09-02
|\ | | | | api: make try_end clean-up after an exception properly.
| * api: make try_end clean-up after an exception properly. Fixes #10809Björn Linse2019-09-02
| | | | | | | | | | | | Otherwise `force_abort` will cause an emsg() higher on the stack to be converted to an exception, even though it is outside any try/catch.
* | vim-patch:8.0.1729: no comma after last enum itemJan Edmund Lazo2019-09-02
| | | | | | | | | | | | | | Problem: No comma after last enum item. Solution: Add a few commas to check if this works for all compilers. Also add a few // comments. https://github.com/vim/vim/commit/ea3ece405ab55f44018257bd2f5021231af8e87f
* | vim-patch:8.0.1697: various tests are still a bit flakyJan Edmund Lazo2019-09-02
| | | | | | | | | | | | Problem: Various tests are still a bit flaky. Solution: Increase the default wait time to five seconds. https://github.com/vim/vim/commit/769e9d21ac3e8dff43b9ef5e46cdc4523833b51e
* | screen: initialize screen properly with early `set display-=msgsep`Björn Linse2019-09-02
|/ | | | | | | | | | | | | Currently `nvim -u NORC --cmd "set display-=msgsep"` will still allocate the message grid and remove it just afterwards. While inefficient, we must make sure update_screen() re-validates the default_grid completely when this happens. Fix some invalid logic: don't reallocate msg_grid on resize when the grid is not used. Elide a too early ui_flush() on startup, which caused an invalid cursor position to be used.
* vim-patch:8.0.0858: check if job terminal is running #10908Jan Edmund Lazo2019-09-01
| | | | | Problem: Can exit while a terminal is still running a job. Solution: Consider a buffer with a running job like a changed file. https://github.com/vim/vim/commit/eb44a68b42eda207a5bc4def9ea8fc4d38acb650
* API: nvim_buf_set_lines: handle 'nomodifiable' #10910Justin M. Keyes2019-09-01
|
* vim-patch:8.0.1653: screen dump is made too soon (#10911)Jan Edmund Lazo2019-09-02
| | | | | Problem: Screen dump is made too soon. Solution: Wait until the ruler is displayed. (Ozaki Kiichi, closes vim/vim#2755) https://github.com/vim/vim/commit/1834d37396e046ccbc4aa2678ba16a38197da6b4
* PVS/V547: Expression is always falseJustin M. Keyes2019-09-02
| | | | ll_get_or_alloc_list() never fails because OOM is an abort condition.
* API: make nvim_win_set_option() set window-global, not buffer-local #9110Björn Linse2019-09-01
| | | | | | NB: the `!(flags & SOPT_GLOBAL)` exception is for 'statusline'. Because `:set statusline=...` sets the global value for _all_ windows, `:setlocal` is the best we can do there. This is a one-of-a-kind option that doesn't work like any other option.
* Merge #10896 'paste: one undo-block'Justin M. Keyes2019-09-01
|\
| * paste: redraw at endJustin M. Keyes2019-09-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Attempt to fix test failure since 976c6667e140 removed per-chunk redraw: ERROR test/functional/terminal/tui_spec.lua: TUI paste: cmdline-mode inserts 1 line test/functional/terminal/tui_spec.lua:367: in function <test/functional/terminal/tui_spec.lua:360 Expected: |*foo | |* | |{4:~ }| |{4:~ }| |{5:[No Name] [+] }| |:"line 1{1:"} | |{3:-- TERMINAL --} | Actual: |* | |*{4:~ }| |{4:~ }| |{4:~ }| |{5:[No Name] [+] }| |:"line 1{1:"} | |{3:-- TERMINAL --} |
| * paste: one undo-block per streamJustin M. Keyes2019-09-02
| | | | | | | | | | | | - All "chunks" in a paste-stream should form a single undo-block. Side effect of 7a8579288424 was to create an undo-block for each chunk. - Also: remove old :redraw force logic, irrelevant after 7a8579288424.
* | vim-patch:8.0.1534: C syntax test fails in gvim #10909Jan Edmund Lazo2019-09-01
|/ | | | | | Problem: C syntax test fails when using gvim Solution: Force running in a terminal. Check that 'background' is correct even when $COLORFGBG is set. https://github.com/vim/vim/commit/b7ea7cb8e430ea096b4c452cdc9c3299819e6d6b
* fixup! eval: add wait() testAbdelhakeem2019-09-01
|
* eval: add wait()Abdelhakeem2019-09-01
| | | | closes #10362
* Merge pull request #10400 from bfredl/msg_gridBjörn Linse2019-09-01
|\ | | | | Dedicated message grid.
| * screen: add some documentation of internals of msg_grid implementationBjörn Linse2019-09-01
| |
| * screen: use dedicated message gridBjörn Linse2019-09-01
| | | | | | | | | | | | | | | | add proper msg_set_pos event, delet win_scroll_over_* make compositor click through unfocusable grids add MsgArea attribute for the message/cmdline area, and add docs and tests
| * batch draw :lsBjörn Linse2019-09-01
| |
* | Merge #10906 from janlazo/vim-8.0.1241Justin M. Keyes2019-09-01
|\ \ | | | | | | vim-patch:8.0.{1241,1246,1260}
| * | vim-patch:8.0.1260: using global variables for WaitFor()Jan Edmund Lazo2019-09-01
| | | | | | | | | | | | | | | | | | | | | Problem: Using global variables for WaitFor(). Solution: Use a lambda function instead. Don't check a condition if WaitFor() already checked it. https://github.com/vim/vim/commit/ab8b1c14a31e36ae87cc7e13c4a75318d513fc7b
| * | vim-patch:8.0.1246: popup test has an arbitrary delayJan Edmund Lazo2019-09-01
| | | | | | | | | | | | | | | | | | Problem: Popup test has an arbitrary delay. Solution: Wait for the ruler to show. (James McCoy) https://github.com/vim/vim/commit/b315876efa7865486b9cc160d43f0ead47e58d6c
| * | vim-patch:8.0.1241: popup test is flakyJan Edmund Lazo2019-09-01
| |/ | | | | | | | | | | Problem: Popup test is flaky. (James McCoy) Solution: Increase the wait time. (Dominique Pelle) https://github.com/vim/vim/commit/89c394faca40d2f5d57705432a433173b295bf73
* | vim-patch:8.1.0141: :cexpr no longer jumps to the first error #10901Marco Hinz2019-09-01
| | | | | | | | | | | | Problem: :cepxr no longer jumps to the first error. Solution: Use the quickfix list identifier. (Yegappan Lakshmanan) Fixes https://github.com/neovim/neovim/issues/10895
* | vim-patch:8.0.1217: remote eval to inspect vars in :debug #10903Jan Edmund Lazo2019-09-01
|/ | | | | Problem: Can't use remote eval to inspect vars in debug mode. Solution: Don't discard the call stack in debug mode. (closes vim/vim#2237, vim/vim#2247) https://github.com/vim/vim/commit/d99388ba8535a6fecf7d0bf7b982832c0b816062
* vim-patch:8.1.1950: using NULL pointer after an out-of-memory (#10902)Jan Edmund Lazo2019-08-31
| | | | | Problem: Using NULL pointer after an out-of-memory. Solution: Check for NULL pointer. (Dominique Pelle, closes vim/vim#4881) https://github.com/vim/vim/commit/4bbfb0f3cc67c00c8cee4e47283e8d760025219d
* tui/input: remove "cancel paste" logic which should be redundantBjörn Linse2019-08-31
|
* api: make nvim_put support "\022{NUM}" regtype as returned by getregtype()Björn Linse2019-08-31
|
* events: loop_schedule() is unclear, rename it loop_schedule_fast()Björn Linse2019-08-31
|
* tui/input: defer nvim_paste properly.Björn Linse2019-08-31
| | | | | | | | | Otherwise cursor and redraw code for normal and insert mode will not run. The "tickle" workaround was used for this instead, and can now be removed. The builtin vim.lua got the name [string "-- Nvim-Lua stdlib: thevimmodule (:help l..."] in error messages. Fix it to something reasonable.
* vim-patch:8.1.1947: when executing one test the report doesn't show it #10893Daniel Hahler2019-08-30
| | | | | Problem: When executing one test the report doesn't show it. Solution: Adjust the regexp. (Daniel Hahler, closes vim/vim#4879) https://github.com/vim/vim/commit/60b1bcfe92da1d7b8f894c91192f3a76e8aec391
* vim-patch:8.1.1941: getftype() test fails on Mac #10894Daniel Hahler2019-08-30
| | | | | Problem: getftype() test fails on Mac. Solution: Skip /dev/fd/. https://github.com/vim/vim/commit/ad5db44c0165b6254199e7af5962b42caf8b857c
* vim-patch:cb00f0393 (#10892)Daniel Hahler2019-08-30
| | | | Add missing test file. https://github.com/vim/vim/commit/cb00f039332d3188931035e9d07144546fdea78a
* vim-patch:8.0.0930: terminal buffers are stored in the viminfo file (#10889)Jaskaran Singh2019-08-30
| | | | | | Problem: Terminal buffers are stored in the viminfo file while they can't be useful. Solution: Skip terminal buffers for file marks and buffer list https://github.com/vim/vim/commit/e62780543f403186b27b210dd087dd8ba74159fc
* vim-patch:8.1.0950: using :python sets 'pyxversion' even when not executed ↵Daniel Hahler2019-08-30
| | | | | | | (#10891) Problem: Using :python sets 'pyxversion' even when not executed. Solution: Check the "skip" flag. (Shane Harper, closes vim/vim#3995) https://github.com/vim/vim/commit/14816ad6e58336773443f5ee2e4aa9e384af65d2
* vim-patch:8.1.0212: preferred cursor column not set in interfaces (#10890)Daniel Hahler2019-08-30
| | | | | | 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
* API: nvim_paste: add `crlf` parameterJustin M. Keyes2019-08-30
|
* Merge pull request #10855 from blueyed/out_data_decide_throttleDaniel Hahler2019-08-30
|\ | | | | Revisit out_data_decide_throttle
| * Revisit out_data_decide_throttleDaniel Hahler2019-08-30
| | | | | | | | | | | | Pulse every 0.1s only. This makes `!yes` look much better (less busy).
* | Merge #10886 from janlazo/vim-8.1.1938Justin M. Keyes2019-08-30
|\ \ | |/ |/| vim-patch:8.1.{233,1938}
| * vim-patch:8.1.0233: "safe" argument of call_vim_function() is always FALSEJan Edmund Lazo2019-08-30
| | | | | | | | | | | | Problem: "safe" argument of call_vim_function() is always FALSE. Solution: Remove the argument. https://github.com/vim/vim/commit/ded27a1febda3db7447958b60a7d791af514d124
| * vim-patch:8.1.1938: may crash when out of memoryJan Edmund Lazo2019-08-29
| | | | | | | | | | | | Problem: May crash when out of memory. Solution: Initialize v_type to VAR_UNKNOWN. (Dominique Pelle, closes vim/vim#4871) https://github.com/vim/vim/commit/c507a2d164cfa3dcf31a7ba9dad6663a17243bb4