diff --git a/src/color.c b/src/color.c index 701dab04..1db8cdaa 100644 --- a/src/color.c +++ b/src/color.c @@ -92,6 +92,10 @@ void set_colorpairs(void) interface_color_pair[index] = A_NORMAL; else if (index == GUIDE_STRIPE) interface_color_pair[index] = A_REVERSE; + else if (index == SCROLLBAR_FG) + interface_color_pair[index] = A_REVERSE; + else if (index == SCROLLBAR_BG) + interface_color_pair[index] = A_REVERSE|A_DIM; else if (index == ERROR_MESSAGE) { init_pair(index + 1, COLOR_WHITE, COLOR_RED); interface_color_pair[index] = COLOR_PAIR(index + 1) | diff --git a/src/nano.c b/src/nano.c index 479ef0d5..1abb8b01 100644 --- a/src/nano.c +++ b/src/nano.c @@ -2270,6 +2270,8 @@ int main(int argc, char **argv) interface_color_pair[TITLE_BAR] = hilite_attribute; interface_color_pair[LINE_NUMBER] = hilite_attribute; interface_color_pair[GUIDE_STRIPE] = A_REVERSE; + interface_color_pair[SCROLLBAR_FG] = A_REVERSE; + interface_color_pair[SCROLLBAR_BG] = A_REVERSE|A_DIM; interface_color_pair[SELECTED_TEXT] = hilite_attribute; interface_color_pair[STATUS_BAR] = hilite_attribute; interface_color_pair[ERROR_MESSAGE] = hilite_attribute; diff --git a/src/nano.h b/src/nano.h index 4bebc506..ff76b2a5 100644 --- a/src/nano.h +++ b/src/nano.h @@ -483,6 +483,8 @@ enum TITLE_BAR = 0, LINE_NUMBER, GUIDE_STRIPE, + SCROLLBAR_FG, + SCROLLBAR_BG, SELECTED_TEXT, STATUS_BAR, ERROR_MESSAGE, diff --git a/src/rcfile.c b/src/rcfile.c index 5c52e78c..b1d6c5e2 100644 --- a/src/rcfile.c +++ b/src/rcfile.c @@ -124,6 +124,8 @@ static const rcoption rcopts[] = { {"titlecolor", 0}, {"numbercolor", 0}, {"stripecolor", 0}, + {"scrollbarcolor1", 0}, + {"scrollbarcolor2", 0}, {"selectedcolor", 0}, {"statuscolor", 0}, {"errorcolor", 0}, @@ -1501,6 +1503,10 @@ void parse_rcfile(FILE *rcstream, bool just_syntax, bool intros_only) color_combo[LINE_NUMBER] = parse_interface_color(argument); else if (strcmp(option, "stripecolor") == 0) color_combo[GUIDE_STRIPE] = parse_interface_color(argument); + else if (strcmp(option, "scrollbarcolor1") == 0) + color_combo[SCROLLBAR_FG] = parse_interface_color(argument); + else if (strcmp(option, "scrollbarcolor2") == 0) + color_combo[SCROLLBAR_BG] = parse_interface_color(argument); else if (strcmp(option, "selectedcolor") == 0) color_combo[SELECTED_TEXT] = parse_interface_color(argument); else if (strcmp(option, "statuscolor") == 0) diff --git a/src/winio.c b/src/winio.c index e817a928..a46a2cb6 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2386,7 +2386,7 @@ void draw_scrollbar(void) for (int current_lineno = 0; current_lineno < editwinrows; current_lineno++) { style = (current_lineno >= inf && current_lineno <= sup) ? - A_REVERSE : A_REVERSE|A_DIM; + interface_color_pair[SCROLLBAR_FG] : interface_color_pair[SCROLLBAR_BG]; wattron(scrollbarwin, style); mvwaddch(scrollbarwin, current_lineno, 0, ' '); wattroff(scrollbarwin, style);