{
term_T *term = in_terminal_loop;
static cursorentry_T entry;
+ int id;
+ guicolor_T term_fg, term_bg;
vim_memset(&entry, 0, sizeof(entry));
entry.shape = entry.mshape =
entry.blinkon = 400;
entry.blinkoff = 250;
}
- *fg = gui.back_pixel;
+
+ /* The "Terminal" highlight group overrules the defaults. */
+ id = syn_name2id((char_u *)"Terminal");
+ if (id != 0)
+ {
+ syn_id2colors(id, &term_fg, &term_bg);
+ *fg = term_bg;
+ }
+ else
+ *fg = gui.back_pixel;
+
if (term->tl_cursor_color == NULL)
- *bg = gui.norm_pixel;
+ {
+ if (id != 0)
+ *bg = term_fg;
+ else
+ *bg = gui.norm_pixel;
+ }
else
*bg = color_name2handle(term->tl_cursor_color);
entry.name = "n";