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 1654d6cd6269bc784ee99045edd89e4bda24149f
 (DIR) parent 6cc0b0dc086feaf944b166d0b459ac407192ea5e
 (HTM) Author: Connor Lane Smith <cls@lubutu.com>
       Date:   Sun, 15 May 2011 02:37:49 +0100
       
       cleanup
       Diffstat:
         Makefile                            |      19 ++++++++++++-------
         config.mk                           |       6 +-----
         dmenu.1                             |       4 ++--
         draw.c                              |       8 +++-----
       
       4 files changed, 18 insertions(+), 19 deletions(-)
       ---
 (DIR) diff --git a/Makefile b/Makefile
       t@@ -3,6 +3,9 @@
        
        include config.mk
        
       +SRC = dmenu.c draw.c
       +OBJ = ${SRC:.c=.o}
       +
        all: options dmenu
        
        options:
       t@@ -11,22 +14,24 @@ options:
                @echo "LDFLAGS  = ${LDFLAGS}"
                @echo "CC       = ${CC}"
        
       -dmenu: dmenu.o draw.o
       -        @echo CC -o $@
       -        @${CC} -o $@ dmenu.o draw.o ${LDFLAGS}
       -
       -.c.o: config.mk
       +.c.o:
                @echo CC -c $<
                @${CC} -c $< ${CFLAGS}
        
       +${OBJ}: config.mk
       +
       +dmenu: ${OBJ}
       +        @echo CC -o $@
       +        @${CC} -o $@ ${OBJ} ${LDFLAGS}
       +
        clean:
                @echo cleaning
       -        @rm -f dmenu dmenu.o draw.o dmenu-${VERSION}.tar.gz
       +        @rm -f dmenu ${OBJ} dmenu-${VERSION}.tar.gz
        
        dist: clean
                @echo creating dist tarball
                @mkdir -p dmenu-${VERSION}
       -        @cp LICENSE Makefile README config.mk dmenu.1 dmenu.c draw.c draw.h dmenu_path dmenu_run dmenu-${VERSION}
       +        @cp LICENSE Makefile README config.mk dmenu.1 draw.h dmenu_path dmenu_run ${SRC} dmenu-${VERSION}
                @tar -cf dmenu-${VERSION}.tar dmenu-${VERSION}
                @gzip dmenu-${VERSION}.tar
                @rm -rf dmenu-${VERSION}
 (DIR) diff --git a/config.mk b/config.mk
       t@@ -1,10 +1,6 @@
        # dmenu version
        VERSION = 4.3
        
       -# dmenu_path cache (absolute or relative to $HOME)
       -CACHE = .dmenu_cache
       -
       -
        # paths
        PREFIX = /usr/local
        MANPREFIX = ${PREFIX}/share/man
       t@@ -21,7 +17,7 @@ INCS = -I${X11INC}
        LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
        
        # flags
       -CPPFLAGS = -D_BSD_SOURCE -DVERSION=\"${VERSION}\" -DCACHE=\"${CACHE}\" ${XINERAMAFLAGS}
       +CPPFLAGS = -D_BSD_SOURCE -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
        CFLAGS   = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
        LDFLAGS  = -s ${LIBS}
        
 (DIR) diff --git a/dmenu.1 b/dmenu.1
       t@@ -31,9 +31,9 @@ dmenu \- dynamic menu
        .B dmenu
        is a dynamic menu for X, originally designed for
        .BR dwm (1).
       -It manages huge numbers of user-defined menu items efficiently.
       +It manages huge numbers of user\-defined menu items efficiently.
        .P
       -dmenu reads a list of newline-separated items from stdin and creates a menu.
       +dmenu reads a list of newline\-separated items from stdin and creates a menu.
        When the user selects an item or enters any text and presses Return, their
        choice is printed to stdout and dmenu terminates.
        .P
 (DIR) diff --git a/draw.c b/draw.c
       t@@ -25,14 +25,13 @@ drawrect(DC *dc, int x, int y, unsigned int w, unsigned int h, Bool fill, unsign
                (fill ? XFillRectangles : XDrawRectangles)(dc->dpy, dc->canvas, dc->gc, &r, 1);
        }
        
       -
        void
        drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
       -        char buf[256];
       +        char buf[BUFSIZ];
                size_t mn, n = strlen(text);
        
                /* shorten text if necessary */
       -        for(mn = MIN(n, sizeof buf); textnw(dc, text, mn) > dc->w - dc->font.height/2; mn--)
       +        for(mn = MIN(n, sizeof buf); textnw(dc, text, mn) + dc->font.height/2 > dc->w; mn--)
                        if(mn == 0)
                                return;
                memcpy(buf, text, mn);
       t@@ -157,12 +156,11 @@ void
        resizedc(DC *dc, unsigned int w, unsigned int h) {
                if(dc->canvas)
                        XFreePixmap(dc->dpy, dc->canvas);
       +
                dc->canvas = XCreatePixmap(dc->dpy, DefaultRootWindow(dc->dpy), w, h,
                                           DefaultDepth(dc->dpy, DefaultScreen(dc->dpy)));
       -        dc->x = dc->y = 0;
                dc->w = w;
                dc->h = h;
       -        dc->invert = False;
        }
        
        int