tcleanup - dmenu - Dmenu fork with xft fonts.
 (HTM) git clone git://r-36.net/dmenu
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit d066975e78d98f368ab0e3106e00804a28697373
 (DIR) parent 26236a4900657e8e6e9c5fcf277b51ca242fa3e8
 (HTM) Author: Connor Lane Smith <cls@lubutu.com>
       Date:   Sat, 14 May 2011 22:43:42 +0100
       
       cleanup
       Diffstat:
         dmenu.c                             |       7 ++-----
         draw.c                              |      24 +++++-------------------
         draw.h                              |       9 +++------
       
       3 files changed, 10 insertions(+), 30 deletions(-)
       ---
 (DIR) diff --git a/dmenu.c b/dmenu.c
       t@@ -66,7 +66,6 @@ main(int argc, char *argv[]) {
                Bool fast = False;
                int i;
        
       -        progname = "dmenu";
                for(i = 1; i < argc; i++)
                        /* single flags */
                        if(!strcmp(argv[i], "-v")) {
       t@@ -383,10 +382,9 @@ keypress(XKeyEvent *ev) {
        
        void
        match(void) {
       -        size_t len;
       +        size_t len = strlen(text);
                Item *item, *lexact, *lprefix, *lsubstr, *exactend, *prefixend, *substrend;
        
       -        len = strlen(text);
                matches = lexact = lprefix = lsubstr = matchend = exactend = prefixend = substrend = NULL;
                for(item = items; item && item->text; item++)
                        if(!fstrncmp(text, item->text, len + 1))
       t@@ -424,9 +422,8 @@ match(void) {
        
        size_t
        nextrune(int incr) {
       -        size_t n, len;
       +        size_t n, len = strlen(text);
        
       -        len = strlen(text);
                for(n = cursor + incr; n >= 0 && n < len && (text[n] & 0xc0) == 0x80; n += incr);
                return n;
        }
 (DIR) diff --git a/draw.c b/draw.c
       t@@ -29,10 +29,9 @@ drawrect(DC *dc, int x, int y, unsigned int w, unsigned int h, Bool fill, unsign
        void
        drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
                char buf[256];
       -        size_t n, mn;
       +        size_t mn, n = strlen(text);
        
                /* shorten text if necessary */
       -        n = strlen(text);
                for(mn = MIN(n, sizeof buf); textnw(dc, text, mn) > dc->w - dc->font.height/2; mn--)
                        if(mn == 0)
                                return;
       t@@ -46,10 +45,8 @@ drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
        
        void
        drawtextn(DC *dc, const char *text, size_t n, unsigned long col[ColLast]) {
       -        int x, y;
       -
       -        x = dc->x + dc->font.height/2;
       -        y = dc->y + dc->font.ascent+1;
       +        int x = dc->x + dc->font.height/2;
       +        int y = dc->y + dc->font.ascent+1;
        
                XSetForeground(dc->dpy, dc->gc, FG(dc, col));
                if(dc->font.set)
       t@@ -64,7 +61,6 @@ void
        eprintf(const char *fmt, ...) {
                va_list ap;
        
       -        fprintf(stderr, "%s: ", progname);
                va_start(ap, fmt);
                vfprintf(stderr, fmt, ap);
                va_end(ap);
       t@@ -104,7 +100,7 @@ initdc(void) {
                DC *dc;
        
                if(!setlocale(LC_CTYPE, "") || !XSupportsLocale())
       -                weprintf("no locale support\n");
       +                fprintf(stderr, "no locale support\n");
                if(!(dc = calloc(1, sizeof *dc)))
                        eprintf("cannot malloc %u bytes:", sizeof *dc);
                if(!(dc->dpy = XOpenDisplay(NULL)))
       t@@ -119,7 +115,7 @@ void
        initfont(DC *dc, const char *fontstr) {
                if(!loadfont(dc, fontstr ? fontstr : DEFFONT)) {
                        if(fontstr != NULL)
       -                        weprintf("cannot load font '%s'\n", fontstr);
       +                        fprintf(stderr, "cannot load font '%s'\n", fontstr);
                        if(fontstr == NULL || !loadfont(dc, DEFFONT))
                                eprintf("cannot load font '%s'\n", DEFFONT);
                }
       t@@ -184,13 +180,3 @@ int
        textw(DC *dc, const char *text) {
                return textnw(dc, text, strlen(text)) + dc->font.height;
        }
       -
       -void
       -weprintf(const char *fmt, ...) {
       -        va_list ap;
       -
       -        fprintf(stderr, "%s: ", progname);
       -        va_start(ap, fmt);
       -        vfprintf(stderr, fmt, ap);
       -        va_end(ap);
       -}
 (DIR) diff --git a/draw.h b/draw.h
       t@@ -20,18 +20,15 @@ typedef struct {
                } font;
        } DC;  /* draw context */
        
       -unsigned long getcolor(DC *dc, const char *colstr);
        void drawrect(DC *dc, int x, int y, unsigned int w, unsigned int h, Bool fill, unsigned long color);
        void drawtext(DC *dc, const char *text, unsigned long col[ColLast]);
        void drawtextn(DC *dc, const char *text, size_t n, unsigned long col[ColLast]);
       -void initfont(DC *dc, const char *fontstr);
       +void eprintf(const char *fmt, ...);
        void freedc(DC *dc);
       +unsigned long getcolor(DC *dc, const char *colstr);
        DC *initdc(void);
       +void initfont(DC *dc, const char *fontstr);
        void mapdc(DC *dc, Window win, unsigned int w, unsigned int h);
        void resizedc(DC *dc, unsigned int w, unsigned int h);
        int textnw(DC *dc, const char *text, size_t len);
        int textw(DC *dc, const char *text);
       -void eprintf(const char *fmt, ...);
       -void weprintf(const char *fmt, ...);
       -
       -const char *progname;