color_to_short()), and parse_colors(). (DLR)
- Change color handling to save only the regex strings
constantly, and to actually compile them on an as-needed
- basis. Also, don't bother doing complete refreshes of the
- screen when color support is enabled if there's no regex
- associated with the current file. Changes to update_color()
- (renamed color_update()), thanks_for_all_the_fish(),
- do_input(), and do_output(). (Brand Huntsman and DLR)
+ basis. Also, handle unspecified foreground colors, and don't
+ bother doing complete refreshes of the screen when color
+ support is enabled if there's no regex associated with the
+ current file. Changes to update_color() (renamed
+ color_update()), thanks_for_all_the_fish(), do_input(), and
+ do_output(). (Brand Huntsman and DLR)
- files.c:
open_file()
- Assert that filename isn't NULL, and don't do anything special
for (tmpcolor = openfile->colorstrings; tmpcolor != NULL;
tmpcolor = tmpcolor->next) {
- short background = tmpcolor->bg;
+ short foreground = tmpcolor->fg, background = tmpcolor->bg;
+ if (foreground == -1) {
+#ifdef HAVE_USE_DEFAULT_COLORS
+ if (!defok)
+#endif
+ foreground = COLOR_WHITE;
+ }
if (background == -1) {
#ifdef HAVE_USE_DEFAULT_COLORS
background = COLOR_BLACK;
}
- init_pair(tmpcolor->pairnum, tmpcolor->fg, background);
+ init_pair(tmpcolor->pairnum, foreground, background);
#ifdef DEBUG
fprintf(stderr, "init_pair(): fg = %hd, bg = %hd\n",