aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
diff options
context:
space:
mode:
authorMarco Hinz <mh.codebro@gmail.com>2015-11-11 04:27:50 +0100
committerMarco Hinz <mh.codebro@gmail.com>2015-11-15 15:10:02 +0100
commit9fcd444036e687a3c5c9aa75fa29b6251b3ad431 (patch)
treea13e600a19081542277cdeb35d1de186197d9a90 /src/nvim/eval.c
parentac4db4b814dae6cd9004276d1330702663256491 (diff)
downloadrneovim-9fcd444036e687a3c5c9aa75fa29b6251b3ad431.tar.gz
rneovim-9fcd444036e687a3c5c9aa75fa29b6251b3ad431.tar.bz2
rneovim-9fcd444036e687a3c5c9aa75fa29b6251b3ad431.zip
Add TermClose event
A terminal buffer now exits with: [Process exited <return value>] You can hook into it. E.g. :au TermClose * call feedkeys('<cr>') Closes #2293.
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r--src/nvim/eval.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index e1fa76c526..9581b81456 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -21781,8 +21781,10 @@ static void on_process_exit(Process *proc, int status, void *d)
TerminalJobData *data = d;
if (data->term && !data->exited) {
data->exited = true;
- terminal_close(data->term,
- _("\r\n[Program exited, press any key to close]"));
+ char msg[22];
+ snprintf(msg, sizeof msg, "\r\n[Process exited %d]", proc->status);
+ terminal_close(data->term, msg);
+ apply_autocmds(EVENT_TERMCLOSE, NULL, NULL, false, curbuf);
}
if (data->status_ptr) {