diff --git a/man/remind.1.in b/man/remind.1.in index 2459bba3..ac9dea41 100644 --- a/man/remind.1.in +++ b/man/remind.1.in @@ -114,7 +114,11 @@ default) and \fIb=1\fR tells \fBRemind\fR to respect SPECIAL SHADE reminders by emitting VT100 escape codes to color the background of the calendar cell. Note that SHADE does not work well unless you are using the extended 256-color palette (\fIn\fR=1) or the true -24-bit colors (\fIn\fR=2). +24-bit colors (\fIn\fR=2). Note that for calendar cells that are +shaded, the clamping mechanism described earlier for \fIm=0\fR or +\fIm=1\fR is skipped; it is assumed that if you set \fIboth\fR the +foreground color of a reminder and the background color of a cell, +then you know what you are doing. .RE .TP .B \-w\fR\fIcol\fR[,\fIpad\fR[,\fIspc\fR]]] diff --git a/src/calendar.c b/src/calendar.c index afd8f6ce..e8137bc6 100644 --- a/src/calendar.c +++ b/src/calendar.c @@ -664,11 +664,11 @@ Colorize(int r, int g, int b, int bg, int clamp) if (b > 64) b = 1; else b = 0; - if (TerminalBackground == TERMINAL_BACKGROUND_DARK && !bg) { + if (clamp && TerminalBackground == TERMINAL_BACKGROUND_DARK && !bg) { /* Convert black-on-black to grey */ if (!r && !g && !b) return VT100Colors[1][0][0][0]; } - if (TerminalBackground == TERMINAL_BACKGROUND_LIGHT && !bg) { + if (clamp && TerminalBackground == TERMINAL_BACKGROUND_LIGHT && !bg) { /* Convert white-on-white to grey */ if (r && g && b) return VT100Colors[1][0][0][0]; } diff --git a/tests/test-rem b/tests/test-rem index d7c6aaf4..ebbbb532 100644 --- a/tests/test-rem +++ b/tests/test-rem @@ -140,6 +140,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@0 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -159,6 +162,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@0,0 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -178,6 +184,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@0,1 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -197,6 +206,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@1 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -216,6 +228,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@1,0 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -235,6 +250,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@1,1 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -254,6 +272,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@2 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -273,6 +294,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@2,0 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW @@ -292,6 +316,9 @@ rem 2 SPECIAL COLOR 0 0 65 BLUE rem 3 SPECIAL COLOR 0 65 0 GREEN rem 4 SPECIAL COLOR 0 65 65 CYAN rem 5 msg -@2,1 +rem 6 SPECIAL SHADE 255 255 0 +rem 7 SPECIAL SHADE 255 0 255 +rem 8 SPECIAL SHADE 0 255 255 rem 15 SPECIAL COLOR 65 0 0 RED rem 16 SPECIAL COLOR 65 0 65 MAGENTA rem 17 SPECIAL COLOR 65 65 0 YELLOW diff --git a/tests/test.cmp b/tests/test.cmp index 227628ee..422888dc 100644 --- a/tests/test.cmp +++ b/tests/test.cmp @@ -7823,9 +7823,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7845,9 +7845,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@0,0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@0,0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7867,9 +7867,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@0,1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@0,1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7889,9 +7889,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7911,9 +7911,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@1,0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@1,0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7933,9 +7933,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@1,1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@1,1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7955,9 +7955,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@2‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@2‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7977,9 +7977,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@2,0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@2,0‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ | @@ -7999,9 +7999,9 @@ February 29 | | | |1 ‎ |2 ‎ |3 ‎ |4 ‎ | | | | |BLACK‎ |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ -|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | -|-@2,1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | -| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +|5 ‎ |6 ‎ |7 ‎ |8 ‎ |9 ‎ |10 ‎ |11 ‎ | +|-@2,1‎ | | |BLACK‎ |BRIGHT‎ |BRIGHT‎ |BRIGHT‎ | +| | | | |BLUE‎ |GREEN‎ |CYAN‎ | +----------+----------+----------+----------+----------+----------+----------+ |12 ‎ |13 ‎ |14 ‎ |15 ‎ |16 ‎ |17 ‎ |18 ‎ | | | | |RED‎ |MAGENTA‎ |YELLOW‎ |WHITE‎ |