Mercurial > vim
diff src/libvterm/src/state.c @ 13318:5e47c4bdf3a6 v8.0.1533
patch 8.0.1533: libterm doesn't support requesting fg and bg color
commit https://github.com/vim/vim/commit/674e482d1346aa1afddab62675f3a7d7a00a4894
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Feb 24 14:03:56 2018 +0100
patch 8.0.1533: libterm doesn't support requesting fg and bg color
Problem: Libterm doesn't support requesting fg and bg color.
Solution: Implement t_RF and t_RB.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 24 Feb 2018 14:15:06 +0100 |
parents | dc39ef257b60 |
children | a62b0bbc8834 |
line wrap: on
line diff
--- a/src/libvterm/src/state.c +++ b/src/libvterm/src/state.c @@ -1506,6 +1506,22 @@ static int on_osc(const char *command, s settermprop_string(state, VTERM_PROP_TITLE, command + 2, cmdlen - 2); return 1; } + else if(strneq(command, "10;", 3)) { + /* request foreground color: <Esc>]10;?<0x07> */ + int red = state->default_fg.red; + int blue = state->default_fg.blue; + int green = state->default_fg.green; + vterm_push_output_sprintf_ctrl(state->vt, C1_OSC, "10;rgb:%02x%02x/%02x%02x/%02x%02x\x07", red, red, green, green, blue, blue); + return 1; + } + else if(strneq(command, "11;", 3)) { + /* request background color: <Esc>]11;?<0x07> */ + int red = state->default_bg.red; + int blue = state->default_bg.blue; + int green = state->default_bg.green; + vterm_push_output_sprintf_ctrl(state->vt, C1_OSC, "11;rgb:%02x%02x/%02x%02x/%02x%02x\x07", red, red, green, green, blue, blue); + return 1; + } else if(strneq(command, "12;", 3)) { settermprop_string(state, VTERM_PROP_CURSORCOLOR, command + 3, cmdlen - 3); return 1;