URI: 
       Style cleanup. - st - simple terminal
  HTML git clone https://git.parazyd.org/st
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 1584956a60f7739e46c5a0cd0e0e8295aa26071c
   DIR parent d2ec39f0ef4b9d7f291aeba548a56144fce8a42f
  HTML Author: Christoph Lohmann <20h@r-36.net>
       Date:   Sat,  1 Mar 2014 11:04:03 +0100
       
       Style cleanup.
       
       Add some note about the main reason why st is still that big.
       
       Diffstat:
         M st.c                                |      19 ++++++++++++++-----
       
       1 file changed, 14 insertions(+), 5 deletions(-)
       ---
   DIR diff --git a/st.c b/st.c
       @@ -3091,6 +3091,7 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                        if(base.fg == defaultfg)
                                base.fg = defaultunderline;
                }
       +
                if(IS_TRUECOL(base.fg)) {
                        colfg.alpha = 0xffff;
                        colfg.red = TRUERED(base.fg);
       @@ -3113,8 +3114,6 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                        bg = &dc.col[base.bg];
                }
        
       -
       -
                if(base.mode & ATTR_BOLD) {
                        if(BETWEEN(base.fg, 0, 7)) {
                                /* basic system colors */
       @@ -3144,7 +3143,8 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                                colfg.green = ~fg->color.green;
                                colfg.blue = ~fg->color.blue;
                                colfg.alpha = fg->color.alpha;
       -                        XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &colfg, &revfg);
       +                        XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &colfg,
       +                                        &revfg);
                                fg = &revfg;
                        }
        
       @@ -3155,7 +3155,8 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                                colbg.green = ~bg->color.green;
                                colbg.blue = ~bg->color.blue;
                                colbg.alpha = bg->color.alpha;
       -                        XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &colbg, &revbg);
       +                        XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &colbg,
       +                                        &revbg);
                                bg = &revbg;
                        }
                }
       @@ -3235,7 +3236,7 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                                u8fblen += u8cblen;
                        }
                        if(doesexist) {
       -                        if (oneatatime)
       +                        if(oneatatime)
                                        continue;
                                break;
                        }
       @@ -3258,6 +3259,8 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                                 * Nothing was found in the cache. Now use
                                 * some dozen of Fontconfig calls to get the
                                 * font for one single character.
       +                         *
       +                         * Xft and fontconfig are design failures.
                                 */
                                fcpattern = FcPatternDuplicate(font->pattern);
                                fccharset = FcCharSetCreate();
       @@ -3302,6 +3305,12 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
                }
        
                /*
       +         * This is how the loop above actually should be. Why does the
       +         * application have to care about font details?
       +         *
       +         * I have to repeat: Xft and Fontconfig are design failures.
       +         */
       +        /*
                XftDrawStringUtf8(xw.draw, fg, font->set, winx,
                                winy + font->ascent, (FcChar8 *)s, bytelen);
                */