aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/channel.c
Commit message (Collapse)AuthorAge
* UIAttach, UIDetachRui Abreu Ferreira2019-09-12
|
* :ls : show "R", "F" for terminal-jobs #10370Justin M. Keyes2019-06-29
| | | | | | | | | | | This matches Vim behavior. From `:help :ls` : R a terminal buffer with a running job F a terminal buffer with a finished job ? a terminal buffer without a job: `:terminal NONE` TODO: implement `:terminal NONE`. ref #10349
* channel: refactor events, prevent recursive invocation of eventsBjörn Linse2019-06-18
|
* api: implement object namespacesBjörn Linse2018-11-24
| | | | | | | | | Namespaces is a lightweight concept that should be used to group objects for purposes of bulk operations and introspection. This is initially used for highlights and virtual text in buffers, and is planned to also be used for extended marks. There is no plan use them for privileges or isolation, neither to introduce nanespace-level options.
* channel: avoid buffering output when only terminal and no callbacks are activeBjörn Linse2018-11-08
|
* jobstart(): Fix hang on non-executable cwd #9204Tommy Allen2018-11-07
| | | | | | | * os/fs.c: add os_isdir_executable() * eval.c: fix hang on job start caused by non-executable cwd option * channel.c: assert cwd is an executable directory * test: jobstart() produces error when using non-executable cwd
* startup: always wait for UI with --embed, unless --headless also is suppliedBjörn Linse2018-09-22
|
* replace fallthrough comment with macroJan Edmund Lazo2018-09-21
| | | | Follow-up of vim-patch:8.0.1215
* channel.c: Prevent channel_destroy_early() from freeing uninitialized rpc stuffoni-link2018-07-15
| | | | | | | | Without this patch the following commands would crash: :call rpcstart('unknown_command') :set sh=unknown_command :call jobstart('ls',{'rpc':1})
* terminal: flush vterm output buffer on pty output #8486林千里2018-06-08
| | | | | | | | | | | Fixes #4151 libvterm uses an "output buffer" for terminal reporting (e.g. \e[6n to report cursor position) Flush it in on_channel_output() not just terminal_send_key() See also this line from pangoterm: https://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/607/pangoterm.c#L2159
* api: list information about all channels/jobs.Björn Linse2018-05-23
| | | | | Fire autocmd when channel opens or its info changes. Add a way for API clients can describe themselves.
* channel: avoid references to non-rooted vimL list with outputBjörn Linse2018-05-17
| | | | | | | likely fixes #7768 #7913 If multiple internal stream callbacks were recieved before vimL callbacks got called, only invoke one vimL callback with all data.
* job-control: mitigate process-kill raceJustin M. Keyes2018-04-15
| | | | | | | | | | | | | | | children_kill_cb() is racey. One obvious problem is that process_close_handles() is *queued* by on_process_exit(), so when children_kill_cb() is invoked, the dead process might still be in the `loop->children` list. If the OS already reclaimed the dead PID, Nvim may try to SIGKILL it. Avoid that by checking `proc->status`. Vim doesn't have this problem because it doesn't attempt to kill processes that ignored SIGTERM after a timeout. closes #8269
* channels: cleanup channel freeing codeBjörn Linse2018-04-12
|
* channels: delay free so that libuv can cleanup handlesBjörn Linse2018-04-12
| | | | add test for a crash this caused
* log/channels: Formatting. Also log loopback channel. #8146Justin M. Keyes2018-03-18
|
* channel: Make empty output be represented by `['']` againZyX2018-01-14
|
* *: Provide list length when allocating listsZyX2018-01-14
|
* Merge #7708 from ZyX-I/hide-container-implJustin M. Keyes2017-12-23
|\
| * *: Start hiding list implementationZyX2017-12-10
| | | | | | | | Most of files, except for eval.c and eval/* were only processed by perl.
* | channel: check for existance before trying to set keyBjörn Linse2017-12-23
|/ | | | This avoids an error message in async context, where it is not safe.
* channels: improvements to bufferingBjörn Linse2017-11-25
|
* channels: more consistent event handlingBjörn Linse2017-11-25
| | | | | terminal: libvterm now receives data in async context. This was "almost" safe already, as redraws were queued anyway.
* channels: refactor jobwaitBjörn Linse2017-11-25
|
* channels: reimplement logging (as stub for proper event)Björn Linse2017-11-25
|
* channels: stderr channelBjörn Linse2017-11-25
|
* channels: generalize jobclose()Björn Linse2017-11-25
|
* channels: move away term code from eval.cBjörn Linse2017-11-25
|
* channels: allow bytes sockets and stdio, and buffered bytes outputBjörn Linse2017-11-24
|
* channels: refactorBjörn Linse2017-11-24