aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_cmds2.c
Commit message (Collapse)AuthorAge
...
* vim-patch:8.0.0983: unnecessary check for NULL pointerJan Edmund Lazo2018-08-28
| | | | | | | Problem: Unnecessary check for NULL pointer. Solution: Remove the NULL check in dialog_changed(), it already happens in dialog_msg(). (Ken Takata) https://github.com/vim/vim/commit/3f9a1ff141412e9e85f7dff47d02946cb9be9228
* vim-patch:8.0.0900: :tab options doesn't open a new tab pageJan Edmund Lazo2018-08-24
| | | | | | Problem: :tab options doesn't open a new tab page. (Aviany) Solution: Support the :tab modifier. (closes vim/vim#1960) https://github.com/vim/vim/commit/ab6c8587ba846d08cd70e7b225c4952a468fc1e8
* vim-patch:8.0.1649: no completion for argument list commandsJan Edmund Lazo2018-08-16
| | | | | | Problem: No completion for argument list commands. Solution: Add arglist completion. (Yegappan Lakshmanan, closes vim/vim#2706) https://github.com/vim/vim/commit/cd43effecab02c6c28b1c4a3a14f91b8c3f26c0d
* vim-patch:8.0.1398: :packadd does not load packages from the "start" ↵Jan Edmund Lazo2018-07-23
| | | | | | | | | directory (#8762) Problem: :packadd does not load packages from the "start" directory. (Alejandro Hernandez) Solution: Make :packadd look in the "start" directory if those packages were not loaded on startup. https://github.com/vim/vim/commit/9e1d399e63903c6f84d7888ad8d84ebf4e29d8a1
* terminal: handle &confirm and :confirm on unloading (#8726)Marco Hinz2018-07-12
| | | | | | Show a proper confirmation dialog when trying to unload a terminal buffer while the confirm option is set or when :confirm is used. Fixes https://github.com/neovim/neovim/issues/4651
* vim-patch:8.0.0451: some macros are in lower caseJan Edmund Lazo2018-06-12
| | | | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. Avoid lower case macros use an argument twice. https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
* vim-patch:8.0.0466: still macros that should be all-caps (#8510)Jan Edmund Lazo2018-06-10
| | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps. https://github.com/vim/vim/commit/8820b48654b62472821d9b155fe03ab7ac13a05c
* api: Make nvim_set_option() update `:verbose set ...`b-r-o-c-k2018-05-03
| | | | | | Make `:verbose set ...` show when an option was last modified by an API client or Lua script/chunk. In the case of an API client, the channel ID is displayed.
* vim-patch:8.0.0858: can exit while a terminal is still running a jobJustin M. Keyes2018-02-11
| | | | | | | 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
* vim-patch:8.0.0847: :argadd without argument can't handle space in file nameJustin M. Keyes2018-02-11
| | | | | | | | Problem: :argadd without argument can't handle space in file name. (Harm te Hennepe) Solution: Escape the space. (Yasuhiro Matsumoto, closes vim/vim#1917) https://github.com/vim/vim/commit/398ee7326b78b892a5c8380dfe3f2521a64b4fa7
* vim-patch:8.0.0721: :argedit can only have one argumentJustin M. Keyes2018-02-11
| | | | | | Problem: :argedit can only have one argument. Solution: Allow for multiple arguments. (Christian Brabandt) https://github.com/vim/vim/commit/90305c66a8637ea43a6509c7ab597734dd218365
* vim-patch:8.0.0439: ":%argdel" gives an error for an empty arglistJustin M. Keyes2018-02-11
| | | | | | | | | | Problem: Using ":%argdel" while the argument list is already empty gives an error. (Pavol Juhas) Solution: Don't give an error. (closes vim/vim#1546) https://github.com/vim/vim/commit/69a92fb5aecdf2f9d5f6947790b18991b22d0e4c Also: vim-patch:8.0.0473
* *: Provide list length when allocating listsZyX2018-01-14
|
* io: retry fgets on EINTR (#7632)Matt Widmann2017-11-25
| | | | | | | | | | | | | | | | | | The calls to `fgets` in `src/nvim/if_cscope.c` (and elsewhere) can show communication errors to the user if a signal is delivered during its system calls. For plugins that proxy subprocess output into cscope requests, a `SIGCHLD` might *always* interfere with calls into `fgets`. To see this in a debugger, put a breakpoint on `cs_reading_emsg` and watch signals come in (with lldb, using `process handle --notify true --pass true`). Next, run a subcommand from neovim that calls through cscope when it returns. A tag picker plugin, like vim-picker and fzy, with `cscopetag` and `cscopetagorder=0` set, reproduced this reliably. The breakpoint will hit after a `SIGCHLD` is delivered, and `errno` will be set to 4, `EINTR`. The caller of `fgets` should retry when `NULL` is returned with `errno` set to `EINTR`.
* eval_clear: free profile dataJustin M. Keyes2017-10-30
| | | | | | | | | | | | | | | | | | | | | | Memory leak exposed by new test added in #7444. ==38771==ERROR: LeakSanitizer: detected memory leaks Direct leak of 2400 byte(s) in 1 object(s) allocated from: 0 0x51163d in realloc (/home/travis/build/neovim/neovim/build/bin/nvim+0x51163d) 1 0xfda51c in xrealloc /home/travis/build/neovim/neovim/src/nvim/memory.c:169:15 2 0xda6802 in ga_grow /home/travis/build/neovim/neovim/src/nvim/garray.c:98:14 3 0xb67ccd in script_line_start /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:3286:11 4 0xb62885 in getsourceline /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:3110:5 5 0xb5fbfd in do_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2951:15 6 0xb5c484 in cmd_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2710:14 7 0xb5c5b0 in ex_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2691:3 8 0xb950b9 in do_one_cmd /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:2242:5 9 0xb737e1 in do_cmdline /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:609:20 10 0xb79ac5 in do_cmdline_cmd /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:280:10 11 0xed8a7b in exe_commands /home/travis/build/neovim/neovim/src/nvim/main.c:1684:5 12 0xec6602 in main /home/travis/build/neovim/neovim/src/nvim/main.c:521:5 13 0x2ae968600f44 in __libc_start_main /build/eglibc-SvCtMH/eglibc-2.19/csu/libc-start.c:287
* vim-patch:8.0.1207Justin M. Keyes2017-10-29
| | | | | | | | Problem: Profiling skips the first and last script line. Solution: Check for BOM after setting script ID. (Lemonboy, closes vim/vim#2103, closes vim/vim#2112) Add a test. List the trailing script lines. https://github.com/vim/vim/commit/67435d9983965c5c77fc74f0559779ce4554dacb
* vim-patch:8.0.0680James McCoy2017-08-21
| | | | | | | | Problem: Plugins in start packages are sourced twice. (mseplowitz) Solution: Use the unmodified runtime path when loading plugins (test by Ingo Karkat, closes vim/vim#1801) https://github.com/vim/vim/commit/07ecfa64a18609a986f21d6132d04ee8934f3200
* vim-patch:8.0.0612James McCoy2017-08-21
| | | | | | | | | Problem: Package directories are added to 'runtimepath' only after loading non-package plugins. Solution: Split off the code to add package directories to 'runtimepath'. (Ingo Karkat, closes vim/vim#1680) https://github.com/vim/vim/commit/ce876aaa9a250a5a0d0e34b3a2625e51cf9bf5bb
* vim-patch:8.0.0308James McCoy2017-08-21
| | | | | | | | | Problem: When using a symbolic link, the package path will not be inserted at the right position in 'runtimepath'. (Dugan Chen, Norio Takagi) Solution: Resolve symbolic links when finding the right position in 'runtimepath'. (Hirohito Higashi) https://github.com/vim/vim/commit/2f9e575583c2ad3978ee3d0f790eeff7df56bd6c
* Merge pull request #7145 from ckelsel/vim-8.0.0174James McCoy2017-08-16
|\ | | | | vim-patch:8.0.0174
| * vim-patch:8.0.0174ckelsel2017-08-10
| | | | | | | | | | | | | | | | Problem: For completion "locale -a" is executed on MS-Windows, even though it most likely won't work. Solution: Skip executing "locale -a" on MS-Windows. (Ken Takata) https://github.com/vim/vim/commit/b8f7bd68f6fdff51ca4db5b145dcde42ee7b804b
* | ex_getln: Replace global with entry in save_cclineZyX2017-07-17
|/
* Merge branch 'master' into luaviml'/luaZyX2017-05-08
|\
| * *: Add comment to all C filesZyX2017-04-19
| |
* | Merge branch 'master' into luaviml'/luaZyX2017-04-08
|\|
| * *: Use const char * in set_one_cmd_contextZyX2017-03-29
| | | | | | Also renames functions added in master and renamed here.
| * *: Make some more things const and with lengthZyX2017-03-29
| |
| * *: Move some dictionary functions to typval.h and use char*ZyX2017-03-29
| | | | | | | | Also fixes buffer reusage in setmatches() and complete().
| * eval: Split eval.c into smaller filesZyX2017-03-29
| |
* | ex_getln: Refactor script_get()ZyX2017-03-27
|/ | | | | | | | | | | | | | 1. Use `char *` for strings. 2. Add `const` qualifiers. 3. Add attributes and documentation. 4. Handle skipping *inside*. 5. Handle non-heredoc argument also inside: deferring this to the caller is pointless because all callers need the same thing. Though new ex_lua caller may live without allocations in this case, allocating nevertheless produces cleaner code. 6. Note that all callers call script_get with `eap` and `eap->arg`. Thus second argument is useless in practice: it is one and the same always and can be reached through the first argument.
* vim-patch:7.4.2164 (#6326)Justin M. Keyes2017-03-21
| | | | | | | | | | | | | | | | | | | | | Problem: It is not possible to use plugins in an "after" directory to tune the behavior of a package. Solution: First load plugins from non-after directories, then packages and finally plugins in after directories. Reset 'loadplugins' before executing --cmd arguments. https://github.com/vim/vim/commit/66459b7c98c67f8a9d39de8f08e8e8f1fca0e359 vim-patch:7.4.2172 vim-patch:7.4.2169 vim-patch:7.4.2177 vim-patch:7.4.2178 vim-patch:7.4.2184 vim-patch:8.0.0050 vim-patch:8.0.0105 vim-patch:8.0.0400 vim-patch:8.0.0405 Closes #6034
* job-control: set CLOEXEC on pty processes. #5986Matthew Malcomson2017-03-17
| | | | | Before this change, new processes started with libuv prevented SIGHUP from reaching pty processes (by keeping the ptmx file descriptor open).
* *: Partial string handling refactoringZyX2017-02-15
| | | | | | | | Main points: - Replace `char_u` with `char` in some cases. - Remove `str[len] = NUL` hack in some cases when `str` may be considered `const`.
* vim-patch:7.4.2024Marco Hinz2017-02-04
| | | | | | | | | | Problem: More buf_valid() calls can be optimized. Solution: Use bufref_valid() instead. NOTE: Some changes related to channels and the Python and Netbeans interfaces were obviously left out. https://github.com/vim/vim/commit/7c0a2f367f2507669560b1a66423155c70d2e75b
* vim-patch:7.4.1699 (#5660)Michael Ennen2016-11-29
| | | | | | Problem: :packadd does not work the same when used early or late. Solution: Always load plugins matching "plugin/**/*.vim". https://github.com/vim/vim/commit/71fb0c146bef08dc276fc5793bd47366e6e0f32a
* refactor: eliminate misc2.cJustin M. Keyes2016-09-13
| | | | | | | | | | move `call_shell` to misc1.c Move some fns to state.c Move some fns to option.c Move some fns to memline.c Move `vim_chdir*` fns to file_search.c Move some fns to new module, bytes.c Move some fns to fileio.c
* perf: Disable clipboard in do_cmdline().Justin M. Keyes2016-08-25
| | | | | | | | | | | For any script--not just `:global` commands--there is no reason to update the system clipboard until the script is finished, so disable it during do_cmdline(). Before this change, 'clipboard=unnamedplus' causes scripted editing to be extremely slow (e.g. `:normal` in a while-loop). Closes #3534
* ops.c: Rename start_global_changes().Justin M. Keyes2016-08-25
|
* Merge #4980 'Support legacy `:ruby` commands'.Justin M. Keyes2016-07-10
|\
| * Add :ruby, :rubyfile, and :rubydo ex commandsAlex Genco2016-07-02
| |
* | lintJames McCoy2016-07-08
| |
* | vim-patch:7.4.1986James McCoy2016-07-08
| | | | | | | | | | | | | | Problem: Compiler warns for loss of data. Solution: Use size_t instead of int. (Christian Brabandt) https://github.com/vim/vim/commit/fef524bbff9aa186838c35212b2f89f61d627cf8
* | vim-patch:7.4.1973James McCoy2016-07-08
| | | | | | | | | | | | | | | | | | Problem: On MS-Windows the package directory may be added at the end because of forward/backward slash differences. (Matthew Desjardins) Solution: Ignore slash differences. https://github.com/vim/vim/commit/4c5717ed8a81f5ae9dfe4f38b17a61fc8421054b
* | vim-patch:7.4.1840James McCoy2016-07-08
| | | | | | | | | | | | | | | | Problem: When using packages an "after" directory cannot be used. Solution: Add the "after" directory of the package to 'runtimepath' if it exists. https://github.com/vim/vim/commit/a57024453115592b8847af40ddd965a33898e390
* | vim-patch:7.4.1712James McCoy2016-07-08
| | | | | | | | | | | | | | | | | | Problem: For plugins in packages, plugin authors need to take care of all dependencies. Solution: When loading "start" packages and for :packloadall, first add all directories to 'runtimepath' before sourcing plugins. https://github.com/vim/vim/commit/49b27326447d0827c59c6cd201d58f65c1163086
* | vim-patch:7.4.1596James McCoy2016-07-08
| | | | | | | | | | | | | | Problem: Memory leak. (Coverity) Solution: Free the pattern. https://github.com/vim/vim/commit/ba8cd122ef60a7c71a7723be0d635f0c2d4556ab
* | vim-patch:7.4.1553James McCoy2016-07-08
| | | | | | | | | | | | | | Problem: ":runtime" does not use 'packpath'. Solution: Add "what" argument. https://github.com/vim/vim/commit/8dcf259d904cfb965d31841dc74a5cfaf5a351d9
* | vim-patch:7.4.1552James McCoy2016-07-08
| | | | | | | | | | | | | | Problem: ":colorscheme" does not use 'packpath'. Solution: Also use in "start" and "opt" directories in 'packpath'. https://github.com/vim/vim/commit/7f8989dd8a627af2185df381195351a913f3777f
* | vim-patch:7.4.1551James McCoy2016-07-08
| | | | | | | | | | | | | | Problem: Cannot generate help tags in all doc directories. Solution: Make ":helptags ALL" work. https://github.com/vim/vim/commit/6bef5306e4f2cacb3a93667992c2312d4b293c9d
* | vim-patch:7.4.1550James McCoy2016-07-08
| | | | | | | | | | | | | | Problem: Cannot load packages early. Solution: Add the ":packloadall" command. https://github.com/vim/vim/commit/2d8f56acb32428d0f965d42dd13b27100b46fa15