summaryrefslogtreecommitdiffstats
path: root/format.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2013-03-22 10:32:36 +0000
committerNicholas Marriott <nicm@openbsd.org>2013-03-22 10:32:36 +0000
commitad760b3bf702801eaa121715f2a283526d614913 (patch)
treeada3bac5a3570879185609702b4b6e2d0d798790 /format.c
parent8d59b189cc9e83ac0049fc3108de1b822fa7b4ce (diff)
Add client_session and client_last_session formats.
Diffstat (limited to 'format.c')
-rw-r--r--format.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/format.c b/format.c
index f005c1c4..9e3bc86a 100644
--- a/format.c
+++ b/format.c
@@ -301,8 +301,9 @@ format_session(struct format_tree *ft, struct session *s)
void
format_client(struct format_tree *ft, struct client *c)
{
- char *tim;
- time_t t;
+ char *tim;
+ time_t t;
+ struct session *s;
format_add(ft, "client_cwd", "%s", c->cwd);
format_add(ft, "client_height", "%u", c->tty.sy);
@@ -333,6 +334,13 @@ format_client(struct format_tree *ft, struct client *c)
format_add(ft, "client_readonly", "%d", 1);
else
format_add(ft, "client_readonly", "%d", 0);
+
+ s = c->session;
+ if (s != NULL)
+ format_add(ft, "client_session", "%s", s->name);
+ s = c->last_session;
+ if (s != NULL && session_alive(s))
+ format_add(ft, "client_last_session", "%s", s->name);
}
/* Set default format keys for a winlink. */