summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ui.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ui.c b/ui.c
index e36585a..3f730d2 100644
--- a/ui.c
+++ b/ui.c
@@ -133,13 +133,15 @@ static void colorInit(void) {
}
static attr_t colorAttr(short fg) {
- return (fg >= COLORS && fg < 16 ? A_BOLD : A_NORMAL);
+ if (fg != COLOR_BLACK && fg % COLORS == COLOR_BLACK) return A_BOLD;
+ if (COLORS > 8) return A_NORMAL;
+ return (fg / COLORS & 1 ? A_BOLD : A_NORMAL);
}
static short colorPair(short fg, short bg) {
- if (bg == -1 && fg < 16) return 1 + fg;
fg %= COLORS;
bg %= COLORS;
+ if (bg == -1 && fg < 16) return 1 + fg;
for (short pair = 17; pair < colorPairs; ++pair) {
short f, b;
pair_content(pair, &f, &b);