diff options
author | Thomas Adam <thomas@xteddy.org> | 2018-02-22 12:02:31 +0000 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2018-02-22 12:02:31 +0000 |
commit | c2aa40449c2d6a225451c2415b92489f71da52c6 (patch) | |
tree | 905f958cb8e0457f9e9efd258df48f3c7d3abc5c | |
parent | 5a44e18490ed9c8b556933ddbc2a68afba9827fc (diff) | |
parent | e97daead43800aedb3c1f1d50c92099d94e5ce13 (diff) | |
download | rtmux-c2aa40449c2d6a225451c2415b92489f71da52c6.tar.gz rtmux-c2aa40449c2d6a225451c2415b92489f71da52c6.tar.bz2 rtmux-c2aa40449c2d6a225451c2415b92489f71da52c6.zip |
Merge branch 'obsd-master'
-rw-r--r-- | options-table.c | 6 | ||||
-rw-r--r-- | server-client.c | 2 | ||||
-rw-r--r-- | server.c | 3 | ||||
-rw-r--r-- | tmux.1 | 5 |
4 files changed, 15 insertions, 1 deletions
diff --git a/options-table.c b/options-table.c index c9a69271..f611ba0f 100644 --- a/options-table.c +++ b/options-table.c @@ -96,6 +96,12 @@ const struct options_table_entry options_table[] = { .default_num = 500 }, + { .name = "exit-empty", + .type = OPTIONS_TABLE_FLAG, + .scope = OPTIONS_TABLE_SERVER, + .default_num = 1 + }, + { .name = "exit-unattached", .type = OPTIONS_TABLE_FLAG, .scope = OPTIONS_TABLE_SERVER, diff --git a/server-client.c b/server-client.c index 4bee7616..b7401102 100644 --- a/server-client.c +++ b/server-client.c @@ -905,6 +905,7 @@ server_client_handle_key(struct client *c, key_code key) * The prefix always takes precedence and forces a switch to the prefix * table, unless we are already there. */ +retry: key0 = (key & ~KEYC_XTERM); if ((key0 == (key_code)options_get_number(s->options, "prefix") || key0 == (key_code)options_get_number(s->options, "prefix2")) && @@ -915,7 +916,6 @@ server_client_handle_key(struct client *c, key_code key) } flags = c->flags; -retry: /* Log key table. */ if (wp == NULL) log_debug("key table %s (no pane)", table->name); @@ -254,6 +254,9 @@ server_loop(void) server_client_loop(); + if (!options_get_number(global_options, "exit-empty") && !server_exit) + return (0); + if (!options_get_number(global_options, "exit-unattached")) { if (!RB_EMPTY(&sessions)) return (0); @@ -2507,6 +2507,11 @@ Set the time in milliseconds for which waits after an escape is input to determine if it is part of a function or meta key sequences. The default is 500 milliseconds. +.It Xo Ic exit-empty +.Op Ic on | off +.Xc +If enabled (the default), the server will exit when there are no active +sessions. .It Xo Ic exit-unattached .Op Ic on | off .Xc |