aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* fix(tui): end streamed paste correctly when key buffer is emptyzeertzjq2021-12-10
|
* Merge pull request #16597 from bfredl/nomisc1Björn Linse2021-12-10
|\ | | | | refactor: move out some long-hanging fruit from misc1.c
| * refactor(misc1): move preserve_exit() to related functions in main.cBjörn Linse2021-12-09
| |
| * refactor(misc1): move out misc functions which obviously belong elsewhereBjörn Linse2021-12-09
| | | | | | | | Also make some function names more descriptive/regular.
| * refactor(misc1): move out autocmd related functionsBjörn Linse2021-12-09
| |
| * refactor(misc1): move line_breakcheck family of functions to os/input.cBjörn Linse2021-12-09
| |
* | Merge pull request #16541 from jamessan/vim-8.2.3664James McCoy2021-12-09
|\ \ | | | | | | vim-patch:8.2.3664,8.2.3743,8.2.3747,8.2.3748,8.2.3757
| * | vim-patch:8.2.3757: an overlong highlight group name is silently truncatedJames McCoy2021-12-08
| | | | | | | | | | | | | | | | | | Problem: An overlong highlight group name is silently truncated. Solution: Give an error if the name is too long. (closes vim/vim#9289) https://github.com/vim/vim/commit/f7f7aaf8aaad34a38d3f159e031c5bcf3394f8f1
| * | vim-patch:8.2.3748: giving an error for an empty sign argument breaks a pluginJames McCoy2021-12-08
| | | | | | | | | | | | | | | | | | Problem: Giving an error for an empty sign argument breaks a plugin. Solution: Do not give an error. https://github.com/vim/vim/commit/e5710a02cb78c2a0a868ea55740835c78ddecbb4
| * | vim-patch:8.2.3747: cannot remove highlight from an existing signJames McCoy2021-12-08
| | | | | | | | | | | | | | | | | | Problem: Cannot remove highlight from an existing sign. (James McCoy) Solution: Only reject empty argument for a new sign. https://github.com/vim/vim/commit/0bac5fc5e125b7aa0f3b596c9b7f4381279e6688
| * | vim-patch:8.2.3743: ":sign" can add a highlight group without a nameJames McCoy2021-12-08
| | | | | | | | | | | | | | | | | | Problem: ":sign" can add a highlight group without a name. Solution: Give an error if the group name is missing. (closes vim/vim#9280) https://github.com/vim/vim/commit/5e18ccc60bdddc4aa39ab039f1a7c918f29e67ce
| * | vim-patch:8.2.3664: cannot adjust sign highlighting for 'cursorline'James McCoy2021-12-08
| |/ | | | | | | | | | | | | Problem: Cannot adjust sign highlighting for 'cursorline'. Solution: Add CursorLineSign and CursorLineFold highlight groups. (Gregory Anders, closes vim/vim#9201) https://github.com/vim/vim/commit/e413ea04b716effb28eb49dbc98ad3f9f761545a
* | Merge pull request #16414 from zeertzjq/terminal-no-invalid-rowsJames McCoy2021-12-09
|\ \ | | | | | | fix(terminal): return early if there are no invalid rows
| * | fix(terminal): return early if there are no invalid rowszeertzjq2021-12-08
| | | | | | | | | | | | Prevent on_lines emitting out-of-bounds line indexes.
* | | Merge pull request #16547 from pekdon/sunosJames McCoy2021-12-09
|\ \ \ | | | | | | | | Portability improvements, first steps at getting neovim on x86_64 SunOS
| * | | fix: don't use cfsetspeed, use i and o variantsClaes Nästén2021-12-07
| | | | | | | | | | | | | | | | | | | | cfsetspeed is not available on SunOS, use cfsetispeed and cfsetospeed instead.
| * | | fix: don't include pty.h on SunOSClaes Nästén2021-12-07
| | | |
| * | | fix: add STRNLEN compatability macroClaes Nästén2021-12-06
| | | | | | | | | | | | | | | | | | | | Older SunOS systems come without strnlen, add STRNLEN macro in line with the other str* compat macros.
| * | | fix: define NAME_MAX from _XOPEN_NAME_MAXClaes Nästén2021-12-06
| | | | | | | | | | | | | | | | | | | | On SunOS NAME_MAX is not defined, _XOPEN_NAME_MAX is so fall back to defining NAME_MAX from _XOPEN_NAME_MAX.
| * | | fix: skip libutil on SunOSClaes Nästén2021-12-06
| | | | | | | | | | | | | | | | | | | | libutil is not available on Solaris variants, even on Solaris 11 where forkpty is available.
* | | | vim-patch:8.2.3769: zig files are not recognized (#16598)Christian Clason2021-12-09
| |_|/ |/| | | | | | | | | | | Problem: Zig files are not recognized. Solution: Add *.zig. (Gregory Anders, closes vim/vim#9313) https://github.com/vim/vim/commit/4c8c634365bc6d4d462635aed5e0f7ad2262d590
* | | Merge pull request #16418 from zeertzjq/terminal-coladvanceJames McCoy2021-12-08
|\ \ \ | | | | | | | | fix(terminal): use coladvance() to calculate buffer cursor position
| * | | fix(terminal): use coladvance() to calculate buffer cursor positionzeertzjq2021-12-08
| | |/ | |/|
* | | fix: check for interrupt in nvim_echo, write_msg and nlua_print (#16537)ii142021-12-08
| | | | | | | | | | | | | | | Fixes `q` in more pager, where `:highlight` can be quit out of with a single `q` keystroke, while in `:lua print(vim.inspect(vim))` it just scrolls down a page.
* | | fix(api): allow nvim_buf_set_extmark to accept end_row key (#16548)Gregory Anders2021-12-08
| | | | | | | | | | | | | | | | | | | | | nvim_buf_get_extmark uses "end_row" rather than "end_line" in its 'details' dict, which means callers must modify the key names if they want to re-use the information. Change the parameter name in nvim_buf_set_extmark to "end_row" and use "end_line" as an alias to make this more consistent.
* | | Merge pull request #16421 from seandewar/vim-8.1.0035Jan Edmund Lazo2021-12-07
|\ \ \ | |/ / |/| | vim-patch:8.1.{35,42,64},8.2.{1781,1783,1976,2014,3671}
| * | vim-patch:8.2.3671: restarting Insert mode in prompt buffer too oftenSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Restarting Insert mode in prompt buffer too often when a callback switches windows and comes back. (Sean Dewar) Solution: Do not set "restart_edit" when already in Insert mode. https://github.com/vim/vim/commit/34c20ff85b87be587ea5d0398812441b502ee6a5 As Test_prompt_switch_windows is skipped, implement it in prompt_buffer_spec. Replace the 50ms term_wait calls with poke_eventloop (test seems to work anyway without them, so maybe they're not required?) The new test does include a duplicate screen test that may generate a "screen test succeeded immediately" warning, but this is done to match the Vim test.
| * | vim-patch:8.2.2014: using CTRL-O in a prompt buffer moves cursor to startSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Using CTRL-O in a prompt buffer moves cursor to start of the line. Solution: Do not move the cursor when restarting edit. (closes vim/vim#7330) https://github.com/vim/vim/commit/ee8b787bcd15f63a938243770065e704c9b5c85f Test_prompt_editing is skipped, so edit the Lua test in prompt_buffer_spec.
| * | vim-patch:8.2.1976: cannot backspace in prompt buffer after using cursor-leftSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot backspace in prompt buffer after using cursor-left. (Maxim Kim) Solution: Ignore "arrow_used" in a prompt buffer. (closes vim/vim#7281) https://github.com/vim/vim/commit/6f6244855fbce5aaa718cd5001a29aac3c5c15d6 cmdchar_todo wasn't adapted properly for Nvim's state system, which caused it to be a dead store and such was removed in #11900. Re-introduce cmdchar_todo properly.
| * | vim-patch:8.2.1783: try-catch test failsSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Try-catch test fails. Solution: Don't call win_enter(), only call enterering_window(). https://github.com/vim/vim/commit/bdf931c25b4fe78877106ca529baee7899d0f6a4 v8.2.1781 caused Test_reload_in_try_catch() from v8.2.0004 to fail in Vim, but it has not been ported yet.
| * | vim-patch:8.2.1781: writing to prompt buffer interferes with insert modeSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Writing to prompt buffer interferes with insert mode. Solution: Use win_enter() instead of just setting "curwin". (Ben Jackson, closes vim/vim#7035) https://github.com/vim/vim/commit/4537bcc88956f86267c25edf8008e0dbde598652 Vim test will be skipped, so add a Lua test. The problem boils down to the use of aucmd_restbuf in a callback, so just test that (via nvim_buf_set_lines).
| * | vim-patch:8.1.0064: typing CTRL-W in a prompt buffer shows mode "-- --"Sean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Typing CTRL-W in a prompt buffer shows mode "-- --". Solution: Set restart_edit to 'A' and check for it. https://github.com/vim/vim/commit/942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa Nvim already checked for 'i' in showmode(), so this bug was fixed with <C-W> (though this patch now changes <C-W> to use 'A'). However, the missing changes I ported for v8.1.0036 use 'A' when a callback leaves the window in insert mode and edit gets restarted, so this bug was possible there. Modify showmode() restart_edit condition to match v8.2.1978: https://github.com/vim/vim/commit/957cf67d50516ba98716f59c9e1cb6412ec1535d
| * | vim-patch:8.1.0042: if omni completion opens a window Insert mode is stoppedSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: If omni completion opens a window Insert mode is stopped. (Hirohito Higashi) Solution: Only set stop_insert_mode in a prompt buffer window. https://github.com/vim/vim/commit/f98b845dd185dfadfa7a622a42452bfa6809d4e0 popupmenu_spec.lua fails without this.
| * | fix(prompt): add missing changes from v8.1.0036Sean Dewar2021-12-07
| | | | | | | | | | | | v8.1.0036 is already marked as ported, but missed out changes that depended on v8.1.0035.
| * | vim-patch:8.1.0035: not easy to switch between prompt buffer and other windowsSean Dewar2021-12-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Not easy to switch between prompt buffer and other windows. Solution: Accept CTRL-W commands in Insert mode. Start and stop Insert mode as one would expect. https://github.com/vim/vim/commit/6d41c78e353b630bc1a72cbff9160311d2a81e8c Cherry-pick channel.txt change from: https://github.com/vim/vim/commit/d2f3a8b8787333abf2300d38836b196955f10c00 b_prompt_insert was already ported.
* | | Merge pull request #16556 from zeertzjq/hl-change-updateBjörn Linse2021-12-07
|\ \ \ | | | | | | | | fix(highlight): always update window highlight if highlight changed
| * | | fix(highlight): always update window highlight if highlight changedzeertzjq2021-12-07
| |/ /
* / / fix(screen): do not draw filler lines post eof if already at last rowzeertzjq2021-12-07
|/ /
* | Merge pull request #16194 from seandewar/vim-8.1.1925Jan Edmund Lazo2021-12-07
|\ \ | | | | | | vim-patch:7.4.1777,8.1.{1925,1995,2011,2012,2013,2166},8.2.{0532,0871,1168,1241,3576}
| * | test(oldtest): uncomment method call syntax usesSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | We should now be equal with Vim in regards to method call support of already ported built-ins. Enable all relevant commented-out uses of the syntax in tests that I could grep.
| * | fix(eval/method): add missing method support for existing built-insSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These functions were ported with the vim-patch token, but didn't actually port the method call support that was in their patches (method call syntax wasn't ported yet). Add the missing method call support and latest docs for: - assert_nobeep: https://github.com/vim/vim/commit/5b8cabfef7c3707f3e53e13844d90e5a217e1e84 - buffer_name, buffer_number: (obsolete) https://github.com/vim/vim/commit/a8eee21e75324d199acb1663cb5009e03014a13a - charidx: https://github.com/vim/vim/commit/17793ef23aae0bc94539390ccfe5e63b0ad39ff2 - flatten: https://github.com/vim/vim/commit/077a1e670ad69ef4cefc22103ca6635bd269e764 - prompt_getprompt: https://github.com/vim/vim/commit/077cc7aa0e0c431e97795612374fe17fe7c88803 - searchcount: https://github.com/vim/vim/commit/e8f5ec0d30b629d7166f0ad03434065d8bc822df - strptime: https://github.com/vim/vim/commit/10455d43fef041309ce0613fa792c635dd71e3a8 - win_gettype: https://github.com/vim/vim/commit/00f3b4e007af07870168bf044cecc9d544483953 - win_splitmove: https://github.com/vim/vim/commit/d20dcb3d011da6111153109f6e46fbd5c7fe9fb6 Also fix assert_beeps, assert_nobeep and getenv to accept exactly one argument. Previously, they could erroneously accept one or more.
| * | vim-patch:8.2.1241: cannot use getbufinfo() as a methodSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | Problem: Cannot use getbufinfo() as a method. Solution: Support using getbufinfo() as a method. (closes vim/vim#6458) https://github.com/vim/vim/commit/6434fc574dfbde11461e70e5a62712370edf38e6
| * | vim-patch:8.2.1168: wrong method argument for appendbufline()Sean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Wrong method argument for appendbufline(). Solution: Use FEARG_3. https://github.com/vim/vim/commit/92053ce59ecf93838f4d6e3019eef1bc47be4184 Cherry-pick base change for append (and appendbufline) from v8.2.1167. These changes have no visible impact, but helps us sync with Vim. Like Vim, BASE_LAST is now unused after this commit. Keep it anyway in case it sees use in the future. Comment-out LAST definition in eval.lua to appease linter.
| * | vim-patch:8.2.0871: cannot use getmarklist() as a methodSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot use getmarklist() as a method. Solution: Make getmarklist() work as a method. Add one to the column number to match getpos(). (Yegappan Lakshmanan, closes vim/vim#6176) https://github.com/vim/vim/commit/f17e7ea67a798d0aa45ce24ea80c9e21d5164326 The rest of this patch was ported in: https://github.com/neovim/neovim/commit/a1ed941a7881122fda2fd48e71e890ed55e4d08e
| * | vim-patch:8.2.0532: cannot use simplify() as a methodSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | Problem: Cannot use simplify() as a method. Solution: Add FEARG_1. (closes vim/vim#5996) https://github.com/vim/vim/commit/7035fd9d909c49cf5105a53753c1772c193d05b8
| * | vim-patch:8.1.2166: rubyeval() not tested as a methodSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | Problem: Rubyeval() not tested as a method. Solution: Change a test case. https://github.com/vim/vim/commit/4a4981b7cd57b0b2289ed4f9d621ef4d90d767f0
| * | vim-patch:8.1.2013: more functions can be used as methodsSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: More functions can be used as methods. Solution: Make various functions usable as a method. https://github.com/vim/vim/commit/f92e58cadb03156879e9bdbf6341bf662d9c87cc Cherry-pick s:normalize_fname for tolower test from v8.1.0894 and v8.1.1417 (even though it is unused for now). Fix header for win_id2tabwin in eval.txt.
| * | vim-patch:7.4.1777Sean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Newly added features can escape the sandbox. Solution: Add checks for restricted and secure. (Yasuhiro Matsumoto) https://github.com/vim/vim/commit/3849992b16011e36a5cb5be4b127f843389b96fd timer_start is missing check_secure. The timer callback can, for example, call a function defined from outside the sandbox that does stuff that would be disallowed from inside the sandbox. This is usually not allowed. Cherry-pick eval.txt change from: https://github.com/vim/vim/commit/68e6560b84f196c82e27a72669684d5506a3a837 Required for v8.1.2013.
| * | vim-patch:8.1.2011: more functions can be used as methodsSean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: More functions can be used as methods. Solution: Make various functions usable as a method. Make the window command test faster. https://github.com/vim/vim/commit/ce90e36f5969e733a0a919f1736453332c33aad6 test_* functions in the patch are N/A as they modify internal state. Include test changes for test_ignore_error and test_feedinput (though they aren't run). Other changed tests were excluded from previous patches, except test_termcodes.vim, which hasn't been ported yet.
| * | feat(eval/method): partially port v8.1.2004Sean Dewar2021-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: More functions can be used as methods. Solution: Make various functions usable as a method. https://github.com/vim/vim/commit/f6ed61e1489e40eada55a4f1782e1ed82bcad7d9 +sound is needed for sound_* functions. Make swapinfo and swapname take exactly one argument. Previously, they could erroneously take one or more.