changeset: 401:2e6ce9f498e0
tag: tip
user: Connor Lane Smith <cls_AT_lubutu.com>
date: Sun May 15 02:37:49 2011 +0100
files: Makefile config.mk dmenu.1 draw.c
description:
cleanup
diff -r d195d14d5543 -r 2e6ce9f498e0 Makefile
--- a/Makefile Sat May 14 23:26:41 2011 +0100
+++ b/Makefile Sun May 15 02:37:49 2011 +0100
@@ -3,6 +3,9 @@
include config.mk
+SRC = dmenu.c draw.c
+OBJ = ${SRC:.c=.o}
+
all: options dmenu
options:
@@ -11,22 +14,24 @@
@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}
diff -r d195d14d5543 -r 2e6ce9f498e0 config.mk
--- a/config.mk Sat May 14 23:26:41 2011 +0100
+++ b/config.mk Sun May 15 02:37:49 2011 +0100
@@ -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
@@ -21,7 +17,7 @@
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}
diff -r d195d14d5543 -r 2e6ce9f498e0 dmenu.1
--- a/dmenu.1 Sat May 14 23:26:41 2011 +0100
+++ b/dmenu.1 Sun May 15 02:37:49 2011 +0100
@@ -31,9 +31,9 @@
.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
diff -r d195d14d5543 -r 2e6ce9f498e0 draw.c
--- a/draw.c Sat May 14 23:26:41 2011 +0100
+++ b/draw.c Sun May 15 02:37:49 2011 +0100
@@ -25,14 +25,13 @@
(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);
@@ -157,12 +156,11 @@
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
Received on Sun May 15 2011 - 04:05:01 CEST
This archive was generated by hypermail 2.2.0 : Sun May 15 2011 - 04:12:05 CEST