From d24c9d7d3efc3be0d4ba28616c3d5e3ef494258a Mon Sep 17 00:00:00 2001 From: nicm Date: Wed, 5 Nov 2014 23:15:11 +0000 Subject: [PATCH] Do not put a space between status-left/status-right and the window list, instead move the space into the defaults for the options (so status-left now defaults to "[#S] ". From Balazs Kezes. --- options-table.c | 4 ++-- status.c | 18 +++++++----------- tmux.1 | 3 +++ 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/options-table.c b/options-table.c index d68a41c3..65b91226 100644 --- a/options-table.c +++ b/options-table.c @@ -390,7 +390,7 @@ const struct options_table_entry session_options_table[] = { { .name = "status-left", .type = OPTIONS_TABLE_STRING, - .default_str = "[#S]" + .default_str = "[#S] " }, { .name = "status-left-attr", @@ -431,7 +431,7 @@ const struct options_table_entry session_options_table[] = { { .name = "status-right", .type = OPTIONS_TABLE_STRING, - .default_str = "\"#{=22:pane_title}\" %H:%M %d-%b-%y" + .default_str = " \"#{=22:pane_title}\" %H:%M %d-%b-%y" }, { .name = "status-right-attr", diff --git a/status.c b/status.c index 287039ed..ac248ba4 100644 --- a/status.c +++ b/status.c @@ -193,9 +193,9 @@ status_redraw(struct client *c) */ needed = 0; if (llen != 0) - needed += llen + 1; + needed += llen; if (rlen != 0) - needed += rlen + 1; + needed += rlen; if (c->tty.sx == 0 || c->tty.sx <= needed) goto out; wlavailable = c->tty.sx - needed; @@ -300,10 +300,8 @@ draw: /* Draw the left string and arrow. */ screen_write_cursormove(&ctx, 0, 0); - if (llen != 0) { + if (llen != 0) screen_write_cnputs(&ctx, llen, &lgc, utf8flag, "%s", left); - screen_write_putc(&ctx, &stdgc, ' '); - } if (larrow != 0) { memcpy(&gc, &stdgc, sizeof gc); if (larrow == -1) @@ -313,21 +311,19 @@ draw: /* Draw the right string and arrow. */ if (rarrow != 0) { - screen_write_cursormove(&ctx, c->tty.sx - rlen - 2, 0); + screen_write_cursormove(&ctx, c->tty.sx - rlen - 1, 0); memcpy(&gc, &stdgc, sizeof gc); if (rarrow == -1) gc.attr ^= GRID_ATTR_REVERSE; screen_write_putc(&ctx, &gc, '>'); } else - screen_write_cursormove(&ctx, c->tty.sx - rlen - 1, 0); - if (rlen != 0) { - screen_write_putc(&ctx, &stdgc, ' '); + screen_write_cursormove(&ctx, c->tty.sx - rlen, 0); + if (rlen != 0) screen_write_cnputs(&ctx, rlen, &rgc, utf8flag, "%s", right); - } /* Figure out the offset for the window list. */ if (llen != 0) - wloffset = llen + 1; + wloffset = llen; else wloffset = 0; if (wlwidth < wlavailable) { diff --git a/tmux.1 b/tmux.1 index 9b853a1f..367536a1 100644 --- a/tmux.1 +++ b/tmux.1 @@ -2581,6 +2581,9 @@ By default, UTF-8 in is not interpreted, to enable UTF-8, use the .Ic status-utf8 option. +.Pp +The default is +.Ql "[#S] " . .It Ic status-left-length Ar length Set the maximum .Ar length