# HG changeset patch # User Christian Brabandt # Date 1464444006 -7200 # Node ID d6662acfc3decb153887340e12a02737bb8365eb # Parent 443e416797f444a551da408a2a608168e6746068 commit https://github.com/vim/vim/commit/d80629cef03cd40b0bf06c402dfe0b720b3bf608 Author: Bram Moolenaar Date: Sat May 28 15:53:53 2016 +0200 patch 7.4.1854 Problem: When setting 'termguicolors' the Ignore highlighting doesn't work. (Charles Campbell) Solution: Handle the color names "fg" and "bg" when the GUI isn't running and no colors are speficied, fall back to black and white. diff --git a/src/syntax.c b/src/syntax.c --- a/src/syntax.c +++ b/src/syntax.c @@ -8486,11 +8486,11 @@ color_name2handle(char_u *name) #ifdef FEAT_GUI return gui.norm_pixel; #endif -#if defined(FEAT_TERMGUICOLORS) && defined(FEAT_GUI) - else -#endif #ifdef FEAT_TERMGUICOLORS + if (cterm_normal_fg_gui_color != (long_u)INVALCOLOR) return cterm_normal_fg_gui_color; + /* Guess that the foreground is black or white. */ + return GUI_GET_COLOR((char_u *)(*p_bg == 'l' ? "black" : "white")); #endif } if (STRICMP(name, "bg") == 0 || STRICMP(name, "background") == 0) @@ -8501,11 +8501,11 @@ color_name2handle(char_u *name) #ifdef FEAT_GUI return gui.back_pixel; #endif -#if defined(FEAT_TERMGUICOLORS) && defined(FEAT_GUI) - else -#endif #ifdef FEAT_TERMGUICOLORS + if (cterm_normal_bg_gui_color != (long_u)INVALCOLOR) return cterm_normal_bg_gui_color; + /* Guess that the background is white or black. */ + return GUI_GET_COLOR((char_u *)(*p_bg == 'l' ? "white" : "black")); #endif } @@ -8595,7 +8595,6 @@ get_attr_entry(garray_T *table, attrentr && aep->ae_u.cterm.bg_rgb == taep->ae_u.cterm.bg_rgb #endif - ))) return i + ATTR_OFF; diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1854, +/**/ 1853, /**/ 1852,