aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
diff options
context:
space:
mode:
authornicm <nicm>2014-06-06 13:21:41 +0000
committernicm <nicm>2014-06-06 13:21:41 +0000
commit21ade85f24c122ecc3148a3bfeed3044a59c3214 (patch)
treeaf128f78017d3f093d5466fd508fda3c39b5455d /tmux.h
parent74becbfd6f0f497424d32c03eb00a9bc226b8454 (diff)
downloadrtmux-21ade85f24c122ecc3148a3bfeed3044a59c3214.tar.gz
rtmux-21ade85f24c122ecc3148a3bfeed3044a59c3214.tar.bz2
rtmux-21ade85f24c122ecc3148a3bfeed3044a59c3214.zip
Properly track switching G0 and G1 modes between US-ASCII and VT100 line
drawing rather than just treating them as SO and SI.
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/tmux.h b/tmux.h
index 8a49b9d2..4f937f3a 100644
--- a/tmux.h
+++ b/tmux.h
@@ -803,14 +803,22 @@ struct screen_write_ctx {
#define screen_hsize(s) ((s)->grid->hsize)
#define screen_hlimit(s) ((s)->grid->hlimit)
+/* Input parser cell. */
+struct input_cell {
+ struct grid_cell cell;
+ int set;
+ int g0set; /* 1 if ACS */
+ int g1set; /* 1 if ACS */
+};
+
/* Input parser context. */
struct input_ctx {
struct window_pane *wp;
struct screen_write_ctx ctx;
- struct grid_cell cell;
+ struct input_cell cell;
- struct grid_cell old_cell;
+ struct input_cell old_cell;
u_int old_cx;
u_int old_cy;
@@ -822,7 +830,7 @@ struct input_ctx {
#define INPUT_BUF_START 32
#define INPUT_BUF_LIMIT 1048576
- u_char* input_buf;
+ u_char *input_buf;
size_t input_len;
size_t input_space;