aboutsummaryrefslogtreecommitdiff
path: root/test/functional
Commit message (Collapse)AuthorAge
* NVIM v0.2.0v0.2.0Justin M. Keyes2017-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FEATURES: bc4a2e1576c6 help, man.vim: "outline" (TOC) feature #5169 58422f17d8e7 'guicursor' works in the TUI (and sends info to UIs) #6423 129f107c0c26 api: nvim_get_mode() #6247 0b59f988f447 api/ui: externalize tabline #6583 bc6d868d00a7 'listchars': `Whitespace` highlight group #6367 6afa7d66cd63 writefile() obeys 'fsync' option #6427 c60e409471c5 eval.c refactor (also improves some error messages) #5119 9d200cd0a3ef getcompletion("cmdline") #6376 2ea7bfc627e5 terminal: Support extra arguments in 'shell'. #4504 bf5110266ca9 DirChanged autocmd #5928 #6262 1743df82f900 'cpoptions': "_" flag to toggle `cw` behaviour #6235 22337b1c0144 CTRL-R omits trailing ^M when pasting to cmdline #6137 0e44916fff88 :edit allows unescaped spaces in filename #6119 abdbfd26bc7f eval: Add id() function and make printf("%p") useful #6095 bdfa1479d296 findfile(), :find, gf work in :terminal. #6009 2f38ed11c98a providers: Disable if `g:loaded_*` exists. b5560a69b12b setpos() can set lowercase marks in other buffers #5753 7c513d646d87 Throttle :! output, pulse "..." message. #5396 d2e8c76dc224 v:exiting #5651 :terminal improvements #6185 #6142 - cursor keeps position after leaving insert-mode. - 4ceec30cd0b4 Follows output only if cursor is at end of buffer. - e7bbd35c812d new option: 'scrollback' - fedb8443d58a quasi-support for undo and 'modifiable' - b45ddf731be5 disables 'list' by default - disables 'relativenumber' by default :help now contains full API documentation at `:help api`. man.vim saw numerous improvements. Windows support: - Windows is no longer "experimental", it is fully supported. - Windows package includes a GUI, curl.exe and other utilities. "Vim 8" features: partials, lambdas. SECURITY FIXES: CVE-2017-5953 CVE-2017-6349 CVE-2017-6350 #6485 CHANGES: NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead. See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402 81525dc5c35c 'mouse=a' is no longer the default. (This will probably change again after it is improved.) #6022 0c1f7831649e defaults: 'showcmd', 'belloff', 'ruler' #6087 eb0e94f71b1f api: {get,set}_option update local options as appropriate #6405 bdcb2a38b366 "Reading from stdin..." message was removed. #6298 FIXES: 12fc1defd6a1 ops: fix i<c-r> with multi-byte text #6524 dd391bfca1f3 Windows: system() and friends #6497 13352c00f190 Windows: os_get_hostname() #6413 16babc66870b tui: Less-noisy mouse seqs #6411 3a9dd13f9e64 (vim bug) folding edge-cases #6207 f6946c68aee9 job-control: set CLOEXEC on pty processes. #5986 d1afd434f302 rplugin: Call s:LoadRemotePlugins() on startup. 1215084676f0 backtick-expansion works with `shell=fish` #6224 e32ec03d67ee tui: Improved behavior after resize. #6202 86c2adc07463 edit.c: CTRL-SPC: Insert previously-inserted text. #6090 c318d8e672a3 b:changedtick now follows VimL rules #6112 34e24cb2f734 terminal: Initialize colors in reverse order #6160 e8899178ec34 undo: Don't set b_u_curhead in ex_undojoin() #5869 d25649fa0120 undo: :earlier, g-: Set b_u_seq_cur correctly. (#6016) 043d8ba422b4 'Visual-mode put from @. register' #5782 42c922b32c0a open_buffer(): Do `BufEnter` for directories. 50d0d891299c inccommand: Preview :sub commands only after delimiter #5932 1420e1047454 CheckHealth improvements #5519 c8d5e9230ee3 jobstart(): Return -1 if cmd is not executable. #5671
* Merge pull request #6621 from jamessan/vim-7.4.2231James McCoy2017-04-30
|\ | | | | vim-patch:7.4.2231,7.4.2239,7.4.2244,7.4.2245,7.4.2246,7.4.2263,8.0.0150
| * oldfiles_spec: Add tests for ":filter ... oldfiles"James McCoy2017-04-29
| |
| * oldfiles_spec: Set the shada file in the sessionJames McCoy2017-04-29
| |
* | 'guicursor': No color/blink by defaultJustin M. Keyes2017-04-30
|/ | | | Closes #6577
* input.c: Process only safe events before blocking.Justin M. Keyes2017-04-28
| | | | | Introduce multiqueue_process_priority() to process only events at or above a certain priority.
* api: nvim_get_mode()Justin M. Keyes2017-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | Asynchronous API functions are served immediately, which means pending input could change the state of Nvim shortly after an async API function result is returned. nvim_get_mode() is different: - If RPCs are known to be blocked, it responds immediately (without flushing the input/event queue) - else it is handled just-in-time before waiting for input, after pending input was processed. This makes the result more reliable (but not perfect). Internally this is handled as a special case, but _semantically_ nothing has changed: API users never know when input flushes, so this internal special-case doesn't violate that. As far as API users are concerned, nvim_get_mode() is just another asynchronous API function. In all cases nvim_get_mode() never blocks for more than the time it takes to flush the input/event queue (~µs). Note: This doesn't address #6166; nvim_get_mode() will provoke #6166 if e.g. `d` is operator-pending. Closes #6159
* api/ext_tabline: `curtab` should be a Tabpage handle.Justin M. Keyes2017-04-28
|
* defaults_spec: Test changing :filetype/:syntax in -c, after defaultsJames McCoy2017-04-27
|
* test: inccommand_spec: Avoid indeterminism. (#6592)Justin M. Keyes2017-04-26
|
* api/ext_tabline: List of Dicts.Justin M. Keyes2017-04-26
|
* api: nvim_ui_attach(): Flatten ext_* options.Justin M. Keyes2017-04-26
|
* api/ui: externalize tablineJustin M. Keyes2017-04-26
| | | | | | - Work with a bool[] array parallel to the UIWidget enum. - Rename some functions. - Documentation.
* api/ui: externalize tablineDongdong Zhou2017-04-26
|
* api: Do not translate error messages.Justin M. Keyes2017-04-24
| | | | | | | | | | Also re-word some error messages: - "Key does not exist: %s" - "Invalid channel: %<PRIu64>" - "Request array size must be 4 (request) or 3 (notification)" - "String cannot contain newlines" References #6150
* api: Do not truncate errors <1 MB. #6237Sander Bosma2017-04-23
| | | | Closes #5984
* test: api: Do not truncate errors <1 MB.Justin M. Keyes2017-04-23
|
* Merge #6539 'More cursor shape modes'Justin M. Keyes2017-04-21
|\
| * tests: detect invalid helpers.sleepBjörn Linse2017-04-21
| |
| * ui: use an array for mode stylesBjörn Linse2017-04-21
| |
| * ui: add tests for new cursor shape modesBjörn Linse2017-04-21
| |
* | ex_cmds.c: Fix bug in ex_z (#6557)sander22017-04-21
| | | | | | | | vim-patch:8.0.0571
* | Merge #6550 from ZyX-I/pvs-check-commentJustin M. Keyes2017-04-20
|\ \
| * | *: Add comment to all C filesZyX2017-04-19
| |/
* / 'scrollback': Allow :setlocal -1 on normal buffersJustin M. Keyes2017-04-20
|/ | | | Avoids a spurious :loadview error.
* test: Cursor after `:hi clear|syntax reset`Justin M. Keyes2017-04-17
| | | | Also enable tests on Windows.
* fold: foldMoveRange(): fix :move bug #6534Matthew Malcomson2017-04-17
| | | | | | | | | | | | Closes #6540 In #6221 there was a mistake in calculating which folds need to be re-ordered. When there are no folds after those that have been adjusted, then `move_end` remains 0. This results in reverse_fold_order() swapping folds that have been adjusted with uninitialised folds in the remainder of the grow array. Add a check in foldMoveRange() to account for this case.
* ops: fix i<c-r> with multi-byte text (#6524)Björn Linse2017-04-15
|
* win: default shellxescape, shellxquote to emptyRui Abreu Ferreira2017-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling cmd.exe in Windows follows a very different pattern from Vim. The primary difference is that Vim does a nested call to cmd.exe, e.g. the following call in Vim system('echo a 2>&1') spawns the following processes "C:\Program Files (x86)\Vim\vim80\vimrun" -s C:\Windows\system32\cmd.exe /c (echo a 2^>^&1 ^>C:\Users\dummy\AppData\Local\Temp\VIoC169.tmp 2^>^&1) C:\Windows\system32\cmd.exe /c C:\Windows\system32\cmd.exe /c (echo a 2^>^&1 ^>C:\Users\dummy\AppData\Local\Temp\VIo3C6C.tmp 2^>^&1) C:\Windows\system32\cmd.exe /c (echo a 2>&1 >C:\Users\dummy\AppData\Local\Temp\VIo3C6C.tmp 2>&1) The escaping with ^ is needed because cmd.exe calls itself and needs to preserve the special metacharacters for the last call. However in nvim no nested call is made, system('') spawns a single cmd.exe process. Setting shellxescape to "" disables escaping with ^. The previous default for shellxquote=( wrapped any command in parenthesis, in Vim this is more meaningful due to the use of tempfiles to store the output and redirection (also see &shellquote). There is a slight benefit in having the default be empty because some expressions that run in console will not run within parens e.g. due to unbalanced double quotes system('echo "a b')
* win: libuv_process_spawn(): special-case cmd.exeRui Abreu Ferreira2017-04-12
| | | | | | | | | | | | | | | | | | Disable CommandLineToArgvW-standard quoting for cmd.exe. libuv assumes spawned processes follow the convention expected by CommandLineToArgvW(). But cmd.exe is non-conformant, so for cmd.exe: - With system([]), the caller has full control (and responsibility) to quote arguments correctly. - With system(''), shell* options are used. libuv quoting is disabled if argv[0] is: - cmd.exe - cmd - $COMSPEC resolving to a path with filename cmd.exe Closes #6329 References #6387
* win/test: Enable more system() testsRui Abreu Ferreira2017-04-12
|
* win: defaults: 'shellredir', 'shellxquote', 'shellxescape'Justin M. Keyes2017-04-12
|
* ci: install Turkish locale and make locale tests more reliableBjörn Linse2017-04-11
|
* test: helpers.execute() => helpers.feed_command()Justin M. Keyes2017-04-11
|
* win/test: Enable recover_spec.luaJustin M. Keyes2017-04-11
|
* test: `:file {name}`Justin M. Keyes2017-04-11
|
* test/rmdir(): fallback to Nvim delete()Justin M. Keyes2017-04-11
| | | | | | | Lua has too many pitfalls here: - os.execute() requires shell-escaping - os.execute() has breaking changes between Lua 5.1 and 5.2 - No native way in Lua to handle "readonly" etc. on Windows
* test/rmdir(): Remove `readonly` attr on Windows.Justin M. Keyes2017-04-10
|
* Merge #6479 from bfredl/tolowerJustin M. Keyes2017-04-10
|\ | | | | remove vim_tolower/etc functions with broken locale-dependent behavior
| * test: add tests for gu/gU behavior in Turkish localeBjörn Linse2017-04-10
| |
* | Merge #6488 from ZyX-I/coverity-fixesJustin M. Keyes2017-04-10
|\ \ | |/ |/|
| * coverity/56795: Fix NULL dereference in :syn keyword non-printableZyX2017-04-09
| | | | | | | | Bug was introduced 3 years earlier, in 13848aa: NULL keyword_copy was incorrectly treated as an indicator of OOM.
| * coverity/13689: Check file header with memcmpZyX2017-04-09
| | | | | | | | Not that it is actually useful (would fail in any case), but should fix coverity report.
| * coverity/13688: Check for NUL bytes in salfromZyX2017-04-09
| |
| * coverity/13687: Do not allow NUL byte in region namesZyX2017-04-09
| |
| * spellfile: Use old errorZyX2017-04-09
| | | | | | This makes first test not actually show any change in behaviour.
| * coverity/13686: Do not allow NUL byte in precondition regexZyX2017-04-09
| | | | | | | | | | | | | | Before this commit it emitted e_spell_trunc in the first case and treated file as completely valid on the second. While first is fine (both errors are actually valid, though old error is probably better), second results in incorrect regex used.
* | Merge branch 'master' into rename-executeZyX2017-04-09
|\|
| * test: retry(): Report number of retries. (#6475)Justin M. Keyes2017-04-09
| | | | | | tui_spec.lua: Retry the terminal-mode test.
* | functests: Fix linter errorsZyX2017-04-09
| |