diff options
author | nicm <nicm> | 2016-01-31 09:57:09 +0000 |
---|---|---|
committer | nicm <nicm> | 2016-01-31 09:57:09 +0000 |
commit | 49e9f937387356a3970fdb2af6bb56818127b433 (patch) | |
tree | fc649f2dd460ec7da3792e69e110adf58e0fc5c0 /grid.c | |
parent | 8028560f8260aeea6fee1206cf8704a0a5fc25f9 (diff) | |
download | rtmux-49e9f937387356a3970fdb2af6bb56818127b433.tar.gz rtmux-49e9f937387356a3970fdb2af6bb56818127b433.tar.bz2 rtmux-49e9f937387356a3970fdb2af6bb56818127b433.zip |
Add RGB escape sequences for capture-pane -e.
Diffstat (limited to 'grid.c')
-rw-r--r-- | grid.c | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -452,6 +452,12 @@ grid_string_cells_fg(const struct grid_cell *gc, int *values) values[n++] = 38; values[n++] = 5; values[n++] = gc->fg; + } else if (gc->flags & GRID_FLAG_FGRGB) { + values[n++] = 38; + values[n++] = 2; + values[n++] = gc->fg_rgb.r; + values[n++] = gc->fg_rgb.g; + values[n++] = gc->fg_rgb.b; } else { switch (gc->fg) { case 0: @@ -493,6 +499,12 @@ grid_string_cells_bg(const struct grid_cell *gc, int *values) values[n++] = 48; values[n++] = 5; values[n++] = gc->bg; + } else if (gc->flags & GRID_FLAG_BGRGB) { + values[n++] = 48; + values[n++] = 2; + values[n++] = gc->bg_rgb.r; + values[n++] = gc->bg_rgb.g; + values[n++] = gc->bg_rgb.b; } else { switch (gc->bg) { case 0: @@ -532,7 +544,7 @@ void grid_string_cells_code(const struct grid_cell *lastgc, const struct grid_cell *gc, char *buf, size_t len, int escape_c0) { - int oldc[16], newc[16], s[32]; + int oldc[64], newc[64], s[128]; size_t noldc, nnewc, n, i; u_int attr = gc->attr; u_int lastattr = lastgc->attr; |