version 1.59, 2015/03/31 17:45:10 |
version 1.60, 2015/03/31 17:58:36 |
|
|
|
|
int format_replace(struct format_tree *, const char *, size_t, char **, |
int format_replace(struct format_tree *, const char *, size_t, char **, |
size_t *, size_t *); |
size_t *, size_t *); |
|
char *format_time_string(time_t); |
char *format_get_command(struct window_pane *); |
char *format_get_command(struct window_pane *); |
|
|
void format_defaults_pane_tabs(struct format_tree *, struct window_pane *); |
void format_defaults_pane_tabs(struct format_tree *, struct window_pane *); |
|
|
return (out); |
return (out); |
} |
} |
|
|
|
/* Get time as a string. */ |
|
char * |
|
format_time_string(time_t t) |
|
{ |
|
char *tim; |
|
|
|
tim = ctime(&t); |
|
*strchr(tim, '\n') = '\0'; |
|
|
|
return (tim); |
|
} |
|
|
/* Set defaults for any of arguments that are not NULL. */ |
/* Set defaults for any of arguments that are not NULL. */ |
void |
void |
format_defaults(struct format_tree *ft, struct client *c, struct session *s, |
format_defaults(struct format_tree *ft, struct client *c, struct session *s, |
|
|
format_defaults_session(struct format_tree *ft, struct session *s) |
format_defaults_session(struct format_tree *ft, struct session *s) |
{ |
{ |
struct session_group *sg; |
struct session_group *sg; |
char *tim; |
|
time_t t; |
time_t t; |
|
|
ft->s = s; |
ft->s = s; |
|
|
|
|
t = s->creation_time.tv_sec; |
t = s->creation_time.tv_sec; |
format_add(ft, "session_created", "%lld", (long long) t); |
format_add(ft, "session_created", "%lld", (long long) t); |
tim = ctime(&t); |
format_add(ft, "session_created_string", "%s", format_time_string(t)); |
*strchr(tim, '\n') = '\0'; |
|
format_add(ft, "session_created_string", "%s", tim); |
|
|
|
|
t = s->activity_time.tv_sec; |
|
format_add(ft, "session_activity", "%lld", (long long) t); |
|
format_add(ft, "session_activity_string", "%s", format_time_string(t)); |
|
|
format_add(ft, "session_attached", "%u", s->attached); |
format_add(ft, "session_attached", "%u", s->attached); |
format_add(ft, "session_many_attached", "%d", s->attached > 1); |
format_add(ft, "session_many_attached", "%d", s->attached > 1); |
} |
} |
|
|
void |
void |
format_defaults_client(struct format_tree *ft, struct client *c) |
format_defaults_client(struct format_tree *ft, struct client *c) |
{ |
{ |
char *tim; |
|
time_t t; |
|
struct session *s; |
struct session *s; |
|
time_t t; |
|
|
if (ft->s == NULL) |
if (ft->s == NULL) |
ft->s = c->session; |
ft->s = c->session; |
|
|
|
|
t = c->creation_time.tv_sec; |
t = c->creation_time.tv_sec; |
format_add(ft, "client_created", "%lld", (long long) t); |
format_add(ft, "client_created", "%lld", (long long) t); |
tim = ctime(&t); |
format_add(ft, "client_created_string", "%s", format_time_string(t)); |
*strchr(tim, '\n') = '\0'; |
|
format_add(ft, "client_created_string", "%s", tim); |
|
|
|
t = c->activity_time.tv_sec; |
t = c->activity_time.tv_sec; |
format_add(ft, "client_activity", "%lld", (long long) t); |
format_add(ft, "client_activity", "%lld", (long long) t); |
tim = ctime(&t); |
format_add(ft, "client_activity_string", "%s", format_time_string(t)); |
*strchr(tim, '\n') = '\0'; |
|
format_add(ft, "client_activity_string", "%s", tim); |
|
|
|
format_add(ft, "client_prefix", "%d", !!(c->flags & CLIENT_PREFIX)); |
format_add(ft, "client_prefix", "%d", !!(c->flags & CLIENT_PREFIX)); |
|
|