summaryrefslogtreecommitdiffstats
path: root/tmux.h
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2023-09-01 17:06:27 +0100
committerThomas Adam <thomas@xteddy.org>2023-09-01 17:06:27 +0100
commit1aec420465eab1cf6e4666851f950621e006b26d (patch)
treebe86e9bbe9a07d46a047611542581b87b1d5e9ee /tmux.h
parentd682ef88e6eab4d256adf441d29f8e873ea292da (diff)
parent9456258ccc03a1a959cfb7d020011d751b39bb1b (diff)
Merge branch 'obsd-master'
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/tmux.h b/tmux.h
index 444373cb..3dd8e019 100644
--- a/tmux.h
+++ b/tmux.h
@@ -627,6 +627,15 @@ enum utf8_state {
UTF8_ERROR
};
+/* UTF-8 combine state. */
+enum utf8_combine_state {
+ UTF8_DISCARD_NOW, /* discard immediately */
+ UTF8_WRITE_NOW, /* do not combine, write immediately */
+ UTF8_COMBINE_NOW, /* combine immediately */
+ UTF8_WRITE_MAYBE_COMBINE, /* write but try to combine the next */
+ UTF8_DISCARD_MAYBE_COMBINE /* discard but try to combine the next */
+};
+
/* Colour flags. */
#define COLOUR_FLAG_256 0x01000000
#define COLOUR_FLAG_RGB 0x02000000
@@ -921,7 +930,7 @@ struct screen_write_ctx {
int flags;
#define SCREEN_WRITE_SYNC 0x1
-#define SCREEN_WRITE_ZWJ 0x2
+#define SCREEN_WRITE_COMBINE 0x2
screen_write_init_ctx_cb init_ctx_cb;
void *arg;
@@ -929,6 +938,7 @@ struct screen_write_ctx {
struct screen_write_citem *item;
u_int scrolled;
u_int bg;
+ struct utf8_data previous;
};
/* Box border lines option. */
@@ -3338,6 +3348,15 @@ int utf8_cstrhas(const char *, const struct utf8_data *);
char *osdep_get_name(int, char *);
char *osdep_get_cwd(int);
struct event_base *osdep_event_init(void);
+/* utf8-combined.c */
+void utf8_build_combined(void);
+int utf8_try_combined(const struct utf8_data *,
+ const struct utf8_data *, const struct utf8_data **,
+ u_int *width);
+
+/* procname.c */
+char *get_proc_name(int, char *);
+char *get_proc_cwd(int);
/* log.c */
void log_add_level(void);