From 1e2df2d46496fc025330c25fa08e83d14e62d11b Mon Sep 17 00:00:00 2001 From: nicm Date: Tue, 24 Nov 2015 21:52:06 +0000 Subject: [PATCH] Remove the -I part of show-messages which isn't really that useful; the server start time can now be accessed with a new start_time format (use: tmux display -p '#{t:start_time}') --- cmd-show-messages.c | 26 ++------------------------ format.c | 2 ++ server.c | 2 +- tmux.1 | 12 ++++++++---- tmux.c | 2 +- tmux.h | 6 +++--- 6 files changed, 17 insertions(+), 33 deletions(-) diff --git a/cmd-show-messages.c b/cmd-show-messages.c index 8cf71f41..c98c2c91 100644 --- a/cmd-show-messages.c +++ b/cmd-show-messages.c @@ -33,8 +33,8 @@ enum cmd_retval cmd_show_messages_exec(struct cmd *, struct cmd_q *); const struct cmd_entry cmd_show_messages_entry = { "show-messages", "showmsgs", - "IJTt:", 0, 0, - "[-IJT] " CMD_TARGET_CLIENT_USAGE, + "JTt:", 0, 0, + "[-JT] " CMD_TARGET_CLIENT_USAGE, 0, cmd_show_messages_exec }; @@ -47,27 +47,9 @@ const struct cmd_entry cmd_server_info_entry = { cmd_show_messages_exec }; -int cmd_show_messages_server(struct cmd_q *); int cmd_show_messages_terminals(struct cmd_q *, int); int cmd_show_messages_jobs(struct cmd_q *, int); -int -cmd_show_messages_server(struct cmd_q *cmdq) -{ - char *tim; - - tim = ctime(&start_time); - *strchr(tim, '\n') = '\0'; - - cmdq_print(cmdq, "started %s", tim); - cmdq_print(cmdq, "socket path %s", socket_path); - cmdq_print(cmdq, "protocol version %d", PROTOCOL_VERSION); - cmdq_print(cmdq, "libevent %s (%s)", event_get_version(), - event_get_method()); - - return (1); -} - int cmd_show_messages_terminals(struct cmd_q *cmdq, int blank) { @@ -118,10 +100,6 @@ cmd_show_messages_exec(struct cmd *self, struct cmd_q *cmdq) int done, blank; done = blank = 0; - if (args_has(args, 'I') || self->entry == &cmd_server_info_entry) { - blank = cmd_show_messages_server(cmdq); - done = 1; - } if (args_has(args, 'T') || self->entry == &cmd_server_info_entry) { blank = cmd_show_messages_terminals(cmdq, blank); done = 1; diff --git a/format.c b/format.c index 50fa7dea..bafd8ce6 100644 --- a/format.c +++ b/format.c @@ -488,6 +488,8 @@ format_create_flags(int flags) format_add_cb(ft, "host", format_cb_host); format_add_cb(ft, "host_short", format_cb_host_short); format_add_cb(ft, "pid", format_cb_pid); + format_add(ft, "socket_path", "%s", socket_path); + format_add_tv(ft, "start_time", &start_time); return (ft); } diff --git a/server.c b/server.c index e9159422..d950ed77 100644 --- a/server.c +++ b/server.c @@ -187,7 +187,7 @@ server_start(struct event_base *base, int lockfd, char *lockfile) mode_key_init_trees(); key_bindings_init(); - start_time = time(NULL); + gettimeofday(&start_time, NULL); server_fd = server_create_socket(); if (server_fd == -1) diff --git a/tmux.1 b/tmux.1 index 455de33b..cba38264 100644 --- a/tmux.1 +++ b/tmux.1 @@ -740,7 +740,7 @@ Kill the .Nm server and clients and destroy all sessions. .It Xo Ic kill-session -.Op Fl a +.Op Fl aC .Op Fl t Ar target-session .Xc Destroy the given session, closing any windows linked to it and no other @@ -748,6 +748,10 @@ sessions, and detaching all clients attached to it. If .Fl a is given, all sessions but the specified one is killed. +The +.Fl C +clears alerts (bell, activity, or silence) in all windows linked to the +session. .It Xo Ic list-clients .Op Fl F Ar format .Op Fl t Ar target-session @@ -887,7 +891,7 @@ is specified, only update the client's status bar. Rename the session to .Ar new-name . .It Xo Ic show-messages -.Op Fl IJT +.Op Fl JT .Op Fl t Ar target-client .Xc .D1 (alias: Ic showmsgs ) @@ -900,11 +904,10 @@ With .Fl t , display the log for .Ar target-client . -.Fl I , .Fl J and .Fl T -show debugging information about the running server, jobs and terminals. +show debugging information about jobs and terminals. .It Ic source-file Ar path .D1 (alias: Ic source ) Execute commands from @@ -3410,6 +3413,7 @@ The following variables are available, where appropriate: .It Li "session_name" Ta "#S" Ta "Name of session" .It Li "session_width" Ta "" Ta "Width of session" .It Li "session_windows" Ta "" Ta "Number of windows in session" +.It Li "start_time" Ta "" Ta "Server start time" .It Li "window_activity" Ta "" Ta "Integer time of window last activity" .It Li "window_active" Ta "" Ta "1 if window active" .It Li "window_bell_flag" Ta "" Ta "1 if window has bell" diff --git a/tmux.c b/tmux.c index f5383fcf..7e89d526 100644 --- a/tmux.c +++ b/tmux.c @@ -44,7 +44,7 @@ struct options *global_w_options; /* window options */ struct environ *global_environ; char *shell_cmd; -time_t start_time; +struct timeval start_time; char socket_path[PATH_MAX]; __dead void usage(void); diff --git a/tmux.h b/tmux.h index 5f469f92..97908d98 100644 --- a/tmux.h +++ b/tmux.h @@ -1431,9 +1431,9 @@ extern struct options *global_options; extern struct options *global_s_options; extern struct options *global_w_options; extern struct environ *global_environ; -extern char *shell_cmd; -extern time_t start_time; -extern char socket_path[PATH_MAX]; +extern char *shell_cmd; +extern struct timeval start_time; +extern char socket_path[PATH_MAX]; const char *getshell(void); int checkshell(const char *); int areshell(const char *);