cleanup
authorConnor Lane Smith <cls@lubutu.com>
Sun, 15 May 2011 01:37:49 +0000 (02:37 +0100)
committerConnor Lane Smith <cls@lubutu.com>
Sun, 15 May 2011 01:37:49 +0000 (02:37 +0100)
Makefile
config.mk
dmenu.1
draw.c

index 60e53d1..5871fa7 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -3,6 +3,9 @@
 
 include config.mk
 
 
 include config.mk
 
+SRC = dmenu.c draw.c
+OBJ = ${SRC:.c=.o}
+
 all: options dmenu
 
 options:
 all: options dmenu
 
 options:
@@ -11,22 +14,24 @@ options:
        @echo "LDFLAGS  = ${LDFLAGS}"
        @echo "CC       = ${CC}"
 
        @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}
 
        @echo CC -c $<
        @${CC} -c $< ${CFLAGS}
 
+${OBJ}: config.mk
+
+dmenu: ${OBJ}
+       @echo CC -o $@
+       @${CC} -o $@ ${OBJ} ${LDFLAGS}
+
 clean:
        @echo cleaning
 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}
 
 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}
        @tar -cf dmenu-${VERSION}.tar dmenu-${VERSION}
        @gzip dmenu-${VERSION}.tar
        @rm -rf dmenu-${VERSION}
index aedd13c..126bd79 100644 (file)
--- a/config.mk
+++ b/config.mk
@@ -1,10 +1,6 @@
 # dmenu version
 VERSION = 4.3
 
 # dmenu version
 VERSION = 4.3
 
-# dmenu_path cache (absolute or relative to $HOME)
-CACHE = .dmenu_cache
-
-
 # paths
 PREFIX = /usr/local
 MANPREFIX = ${PREFIX}/share/man
 # paths
 PREFIX = /usr/local
 MANPREFIX = ${PREFIX}/share/man
@@ -21,7 +17,7 @@ INCS = -I${X11INC}
 LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
 
 # flags
 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}
 
 CFLAGS   = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
 LDFLAGS  = -s ${LIBS}
 
diff --git a/dmenu.1 b/dmenu.1
index 5f138c8..e5aa8cd 100644 (file)
--- a/dmenu.1
+++ b/dmenu.1
@@ -31,9 +31,9 @@ dmenu \- dynamic menu
 .B dmenu
 is a dynamic menu for X, originally designed for
 .BR dwm (1).
 .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
 .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
 When the user selects an item or enters any text and presses Return, their
 choice is printed to stdout and dmenu terminates.
 .P
diff --git a/draw.c b/draw.c
index f9b8957..95ff072 100644 (file)
--- a/draw.c
+++ b/draw.c
@@ -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);
 }
 
        (fill ? XFillRectangles : XDrawRectangles)(dc->dpy, dc->canvas, dc->gc, &r, 1);
 }
 
-
 void
 drawtext(DC *dc, const char *text, unsigned long col[ColLast]) {
 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 */
        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);
                if(mn == 0)
                        return;
        memcpy(buf, text, mn);
@@ -157,12 +156,11 @@ void
 resizedc(DC *dc, unsigned int w, unsigned int h) {
        if(dc->canvas)
                XFreePixmap(dc->dpy, dc->canvas);
 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->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->w = w;
        dc->h = h;
-       dc->invert = False;
 }
 
 int
 }
 
 int