diff options
author | Jesse Luehrs <doy@tozt.net> | 2017-01-25 22:27:17 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2017-01-25 22:27:17 -0500 |
commit | da065599801b35070a83217ab79d7c22a2b5024b (patch) | |
tree | d6abf65cb810fbf4f29414d9bb82ec3273c929c0 /src/screen.c | |
parent | 32f97d8385d591ec4026f3fb5a1ab8e34e12a06d (diff) | |
download | libvt100-da065599801b35070a83217ab79d7c22a2b5024b.tar.gz libvt100-da065599801b35070a83217ab79d7c22a2b5024b.zip |
allow specifying whether or not emoji are wide
vim says yes, weechat says no ¯\_(ツ)_/¯
Diffstat (limited to 'src/screen.c')
-rw-r--r-- | src/screen.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/screen.c b/src/screen.c index b909cfb..dd1eccc 100644 --- a/src/screen.c +++ b/src/screen.c @@ -107,6 +107,11 @@ void vt100_screen_set_scrollback_length(VT100Screen *vt, int rows) vt->custom_scrollback_length = 1; } +void vt100_screen_set_wide_emoji(VT100Screen *vt, int wide_emoji) +{ + vt->wide_emoji = wide_emoji; +} + int vt100_screen_process_string(VT100Screen *vt, char *buf, size_t len) { struct vt100_parser_state *state = vt->parser_state; @@ -204,7 +209,7 @@ void vt100_screen_show_string_utf8(VT100Screen *vt, char *buf, size_t len) int width; uc = g_utf8_get_char(c); - width = vt100_char_width(uc); + width = vt100_char_width(uc, vt->wide_emoji); if (width == 0) { if (vt->grid->cur.col > 0) { |