tFixing the brightening on bold. For the 256 colors and greyscale I assumed a -… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit bf6cf05ba5211b35d7b10169624679428c5f4974 | |
parent 5caa46cf575a48e6421aaf8757e066f6d32263d9 | |
Author: Christoph Lohmann <[email protected]> | |
Date: Fri, 5 Oct 2012 22:51:08 +0200 | |
Fixing the brightening on bold. For the 256 colors and greyscale I assumed a | |
reasonable solution. | |
Diffstat: | |
M st.c | 19 ++++++++++++++++++- | |
1 file changed, 18 insertions(+), 1 deletion(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -2192,10 +2192,27 @@ xdraws(char *s, Glyph base, int x, int y, int charlen,… | |
if(base.mode & ATTR_REVERSE) | |
temp = fg, fg = bg, bg = temp; | |
+ | |
if(base.mode & ATTR_BOLD) { | |
- fg = &dc.xft_col[base.fg + 8]; | |
+ if(BETWEEN(base.fg, 0, 7)) { | |
+ /* basic system colors */ | |
+ fg = &dc.xft_col[base.fg + 8]; | |
+ } else if(BETWEEN(base.fg, 16, 195)) { | |
+ /* 256 colors */ | |
+ fg = &dc.xft_col[base.fg + 36]; | |
+ } else if(BETWEEN(base.fg, 232, 251)) { | |
+ /* greyscale */ | |
+ fg = &dc.xft_col[base.fg + 4]; | |
+ } | |
+ /* | |
+ * Those ranges will not be brightened: | |
+ * 8 - 15 – bright system colors | |
+ * 196 - 231 – highest 256 color cube | |
+ * 252 - 255 – brightest colors in grescale | |
+ */ | |
font = &dc.bfont; | |
} | |
+ | |
if(base.mode & ATTR_ITALIC) | |
font = &dc.ifont; | |
if(base.mode & (ATTR_ITALIC|ATTR_ITALIC)) |